Kurzer Überblick
Anwesend: jrand0m, nop, MrEcho, dm, dish, mihi
Sitzungsprotokoll
[22:02] <jrand0m> Tagesordnung [22:02] <jrand0m> 0) Begrüßung [22:02] <jrand0m> 1) i2p router [22:02] <jrand0m> 1.1) Status [22:02] <jrand0m> 1.2) Änderungen an der Roadmap [22:02] <jrand0m> 1.3) offene Teilprojekte [22:02] <jrand0m> 2) native modPow [22:03] <jrand0m> 2) GUI-Installer [22:03] <jrand0m> 3) IM [22:03] <jrand0m> 4) Naming Service [22:03] <jrand0m> 5) Lizenzierung [22:03] <jrand0m> 6) Sonstiges? [22:03] <jrand0m> 0) Begrüßung [22:03] <jrand0m> hi. [22:03] <nop> hi [22:03] <jrand0m> Besprechung 2^6 [22:04] <jrand0m> hast du noch Punkte für die Tagesordnung hinzuzufügen, nop? [22:04] <jrand0m> ok, 1.1) router-Status [22:04] <jrand0m> wir sind bei 0.2.0.3 und soweit ich gehört habe, ist es funktionsfähig [22:04] <MrEcho> > 0.2.0.3 [22:04] <MrEcho> richtig? [22:05] <MrEcho> ich lasse es laufen .. scheint ok [22:05] <nop> nein [22:05] <jrand0m> es gab kleine Commits nach dem 0.2.0.3-Release, nichts Release-würdiges [22:05] <nop> ich versuche nur aufzuholen [22:05] <jrand0m> cool [22:06] <jrand0m> basierend auf den Erfahrungen und dem Feedback zu 0.2.0.x wurde die Roadmap aktualisiert, um den Betrieb weniger ressourcenintensiv zu machen [22:06] <jrand0m> (sprich, damit Leute Webserver usw. betreiben können und es ihnen nicht die CPU wegfrisst) [22:06] <jrand0m> konkret (weiter zu Tagesordnungspunkt 1.2): http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap [22:07] <MrEcho> was mir aufgefallen ist, ist dass die meisten Router verwenden: TransportStyle: PHTTP [22:07] <MrEcho> geht es automatisch auf phttp oder versucht es überhaupt zuerst tcp [22:07] <jrand0m> hmm, die meisten Router sollten PHTTP unterstützen, und wenn sie eingehende Verbindungen akzeptieren können, auch TCP [22:07] <jrand0m> wenn irgend möglich, verwendet es TCP [22:07] <jrand0m> PHTTP wird als etwa 1000-mal teurer gewichtet als TCP [22:08] <jrand0m> (siehe GetBidsJob, der jeden Transport fragt, wie teuer es wäre, eine Nachricht an einen Peer zu senden) [22:08] <jrand0m> (und siehe TCPTransport.getBid und PHTTPTransport.getBid für die verwendeten Werte) [22:08] <MrEcho> ok [22:08] <jrand0m> verwendest du häufig PHTTP zum Senden und Empfangen von Nachrichten? [22:09] <jrand0m> (das könnte ein Hinweis sein, dass dein TCP-Listener nicht erreichbar ist) [22:09] <MrEcho> ich habe die URLs bei mir nicht eingetragen [22:09] <jrand0m> ah 'k. [22:09] <MrEcho> ohh ist er [22:10] <jrand0m> ok, ja, meine Router haben offene TCP-Verbindungen zu dir [22:10] <dm> wie gastfreundlich von ihnen. [22:11] <jrand0m> aber ich bin froh, dass ihr mich dazu gebracht habt, die routerConsole.html zu implementieren, damit wir nicht in den Logs nach diesem Mist wühlen müssen [22:11] <MrEcho> gibt es ein Timeout-Ding, wenn es keine TCP-Verbindung bekommt, geht es auf phttp? und wie ist das Timing [22:11] <jrand0m> wenn es ein TCP connection refused / host not found /etc. bekommt, schlägt dieser Versuch sofort fehl und es probiert den nächsten verfügbaren Bid [22:12] <MrEcho> also keine Retries [22:12] <jrand0m> PHTTP hat ein 30-Sekunden-Timeout, soweit ich mich erinnere [22:12] <jrand0m> kein Bedarf zu retryen. Entweder du hast eine offene TCP-Verbindung und kannst die Daten senden, oder nicht :) [22:13] <MrEcho> lol ok [22:13] <MrEcho> wird es danach jedes Mal wieder TCP versuchen oder das überspringen und für die nächste Verbindung direkt auf PHTTP gehen? [22:13] <jrand0m> im Moment versucht es jedes Mal TCP. [22:13] <jrand0m> die Transports führen noch keine Historie [22:13] <MrEcho> ok cool [22:14] <jrand0m> (aber wenn ein Peer 4 Mal fehlschlägt, kommt er für 8 Minuten auf die schwarze Liste) [22:14] <MrEcho> nun, sobald die Gegenseite die PHTTP-Nachricht bekommt, sollte sie sich per TCP mit dem Router verbinden, der die Nachricht geschickt hat, richtig? [22:14] <jrand0m> korrekt. Sobald irgendeine TCP-Verbindung hergestellt ist, kann sie verwendet werden. [22:14] <jrand0m> (aber wenn beide Peers nur PHTTP haben, werden sie natürlich nur PHTTP verwenden) [22:15] <MrEcho> das würde bedeuten, dass es zu nichts eine TCP-Verbindung aufbauen konnte [22:15] <MrEcho> .. aber ja [22:16] <MrEcho> ich wünschte, es gäbe einen Weg darum herum [22:16] <jrand0m> nein, einer meiner Router hat keine TCP-Adresse – nur PHTTP. Aber ich etabliere TCP-Verbindungen mit Peers, die TCP-Adressen haben. [22:16] <jrand0m> (und dann können sie mir Nachrichten über diese TCP-Verbindung zurückschicken, statt mir langsamere PHTTP-Nachrichten zu senden) [22:17] <jrand0m> oder meinst du etwas anderes? [22:17] <MrEcho> ja, ich hab’s durcheinandergebracht [22:17] <jrand0m> word, kein Problem [22:18] <jrand0m> also, siehe die aktualisierte Roadmap für aktuelle Termin-Infos (http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap) [22:18] <jrand0m> ok, 1.3) offene Teilprojekte [22:19] <jrand0m> ich habe endlich einen Haufen der To-Do-Liste meines Palmpilot ins Wiki gestellt: http://wiki.invisiblenet.net/iip-wiki?OpenSubprojects [22:19] <jrand0m> falls euch langweilig ist und ihr nach Code-Projekten sucht... :) [22:20] <MrEcho> boah [22:20] <MrEcho> hab schon 2 [22:20] <dish> Du hast einen Palmpilot, das ist elite [22:20] <MrEcho> meiner ist gestorben [22:20] <jrand0m> mihi> es gibt da einen Punkt dazu in Bezug auf den I2PTunnel, der einen Gedanken beschreibt, den ich neulich hatte [22:21] <MrEcho> weiß nicht, was damit los ist [22:21] <jrand0m> ja, ich hatte früher Palms, aber kürzlich wurde mir dieser hier für die Sache gespendet ;) [22:21] <dish> Könnte es einen Tagesordnungspunkt im Meeting geben, um zu besprechen, wann userX das letzte Mal etwas getippt hat [22:21] <MrEcho> das verdammte Ding geht nicht mal mehr an [22:21] <MrEcho> lol [22:22] <jrand0m> ich glaube nicht, dass UserX in 4 oder 5 Monaten irgendwas gesagt hat ;) [22:22] <MrEcho> ist das ein Bot oder so? [22:22] <dish> Was hat er vor 5 Monaten gesagt? [22:22] <MrEcho> ich wette, das ist ein BitchX, der auf irgendeiner Kiste läuft, auf die er mal Zugriff hatte .. und er hat’s vergessen [22:22] <jrand0m> dass sie nächste Woche mit Kommentaren zum anonCommFramework (I2Ps alter Name) zurückkommen würden ;) [22:23] <dish> haha [22:23] <jrand0m> aber ich nehme an, er ist beschäftigt. So ist das Leben [22:23] <jrand0m> ok, 2) native modPow [22:24] <MrEcho> ich hab den C-Code gesehen [22:24] <jrand0m> ich habe ein Stub-.c und eine Java-Klasse zusammengebaut, um zu zeigen, wie etwas wie GMP oder eine andere MPI-Library integriert werden könnte, aber es funktioniert natürlich nicht [22:25] <jrand0m> gut wäre, wenn wir ein kleines Paket aus C-Klassen und der trivialen zugehörigen Java-Wrapper-Klasse hätten, das wir für windows, osx, *bsd, linux bauen und unter GPL paketieren könnten [22:25] <jrand0m> (hier großen iip-Ausfall einfügen) [22:38] <MrEcho> das Letzte, was ich gesehen habe, war: [13:25] <jrand0m> ok, 2) native modPow [22:38] <jrand0m> hi MrEcho [22:38] <jrand0m> ja, sieht so aus, als wäre ein Haupt-Proxy abgestürzt [22:39] <jrand0m> ich gebe ihm noch 2 Minuten, bevor ich neu starte [22:39] <MrEcho> k [22:39] <MrEcho> für einmalig $25 kann ich volles Java auf thenidus.net bekommen ... eine meiner Sites [22:40] <jrand0m> $25? Die berechnen dir Geld, um Software zu installieren? [22:40] <MrEcho> keine Ahnung wirklich .. ist ein Paket [22:40] <MrEcho> ich rede gerade mit meinem Freund [22:40] <jrand0m> ich bin mir nicht sicher, ob der Code schon stabil genug ist, um loszuziehen und haufenweise Colo-Spots zu mieten, um Router aufzustellen. Noch nicht :) [22:41] <dm> frazaa? [22:41] <MrEcho> java - jsp [22:41] <jrand0m> ok, sende nochmal, was ich vorhin geschickt habe: [22:41] <jrand0m> ich habe ein Stub-.c und eine Java-Klasse zusammengebaut, um zu zeigen, wie etwas wie GMP oder eine andere MPI-Library integriert werden könnte, aber es funktioniert natürlich nicht [22:41] <jrand0m> gut wäre, wenn wir ein kleines Paket aus C-Klassen und der trivialen zugehörigen Java-Wrapper-Klasse hätten, das wir für windows, osx, *bsd, linux bauen und unter GPL (oder weniger restriktiver Lizenz) paketieren könnten [22:41] <jrand0m> mit der neuen Roadmap, die AES+SessionTag als meinen aktuellen Action Item setzt, ist das allerdings nicht mehr ganz so kritisch wie zuvor. [22:42] <jrand0m> wenn das allerdings jemand übernehmen will, wäre das super (und ich bin sicher, ein anderes Projekt, das wir alle kennen, wäre an so einem Paket interessiert) [22:43] <dm> z? [22:43] <jrand0m> heh, gewissermaßen ;) [22:44] <jrand0m> ok, 3) GUI-Installer [22:44] <jrand0m> MrEcho> hi [22:44] <MrEcho> :) [22:44] <MrEcho> hehe [22:44] <MrEcho> es kommt voran [22:44] <jrand0m> cool [22:44] <MrEcho> nichts Ausgefallenes [22:45] <MrEcho> ich hab ein paar echt coole Ideen, um es richtig schick zu machen .. aber das ist noch weit weg [22:45] <jrand0m> ich hab mich gefragt, ob der Installer hinzufügen sollte 1) eine Option, die Seeds automatisch von http://.../i2pdb/ zu holen 2) automatisch die http://.../i2p/squid.dest zu holen und auch ein runSquid.bat/runSquid.sh zu erstellen? [22:45] <jrand0m> word [22:46] <jrand0m> ja, wir wollen den Installer so einfach wie möglich – was für Schnickschnack hattest du im Sinn? [22:46] <MrEcho> die Frage ist .. wenn man java -jar installer macht, geht es standardmäßig auf Non-GUI wegen der Art, wie du die Dinge hast [22:46] <MrEcho> wie kriegen wir’s hin, dass ein Doppelklick auf die JAR-Datei die GUI lädt [22:47] <jrand0m> install.jar <-- nongui, installgui.jar <-- gui [22:47] <jrand0m> separater Code, separate Pakete [22:47] <MrEcho> fancy im Sinne von Dingen, die man vielleicht nicht bemerkt .. aber es wird schön und sauber [22:47] <jrand0m> cool [22:47] <MrEcho> ahh ok [22:48] <jrand0m> (oder install <-- gui installcli <-- cli. Wir schauen, wie es läuft) [22:49] <jrand0m> noch etwas zum GUI, oder springen wir zu Punkt 4)? [22:49] <jrand0m> (hast du einen Zeitrahmen im Kopf? Kein Druck, nur neugierig) [22:51] <MrEcho> keine Ahnung gerade [22:51] <jrand0m> cool [22:51] <jrand0m> ok, 4) IM [22:51] <jrand0m> thecrypto ist nicht da, also..... [22:51] <jrand0m> 5) Naming Service [22:51] <jrand0m> wiht ist auch nicht hier... [22:51] <jrand0m> ping [22:52] <dish> du liegst bei der Nummerierung der Tagesordnung daneben [22:52] <dish> 3) IM [22:52] <jrand0m> ja, ich hatte früher 2-mal Punkt 2 [22:52] <dish> 4) Naming [22:52] <dish> ;) [22:52] <jrand0m> (native modPow und GUI-Installer) [22:52] <jrand0m> siehst du, wir sind dynamisch und so [22:59] <jrand0m> ok, für die Logs mache ich dann wohl weiter [22:59] <jrand0m> 6) Lizenzierung [23:00] <jrand0m> ich denke darüber nach, weniger restriktiv als die GPL zu werden. Wir verwenden etwas MIT-Code, plus eine weitere Datei ist GPL (aber das ist nur das Base64-Encoding und kann trivial ersetzt werden). Abgesehen davon ist der gesamte Code entweder von mir oder thecrypto urheberrechtlich geschützt. [23:01] <dish> schau dir den mihi i2p tunnel Teil des Codes an [23:01] <jrand0m> oh richtig, mihi hat das als GPL veröffentlicht, aber er möchte es vielleicht auch unter etwas anderem veröffentlichen, wenn er will [23:01] <jrand0m> (aber i2ptunnel ist im Wesentlichen eine Drittanbieter-App und kann lizenzieren, wie es will) [23:02] <jrand0m> (obwohl er, da das i2p sdk GPL ist, gezwungen war, GPL zu sein) [23:02] <MrEcho> verdammt, wurde auch Zeit [23:02] <jrand0m> ich weiß nicht. Lizenzierung ist nicht meine Stärke, aber ich neige zumindest dazu, auf LGPL zu wechseln [23:03] <dish> veröffentliche die 10–20 Zeilen Änderungen am I2P HTTP Client mihi Code unter welcher Lizenz auch immer mihi hat [23:03] <jrand0m> hehe :) [23:06] <jrand0m> jedenfalls, 7) Sonstiges? [23:07] <jrand0m> hat jemand Fragen / Bedenken / Ideen bezüglich i2p? [23:07] <dish> Lass mich fragen [23:07] <dish> Hat das I2P irgendeine Gruppenname-Funktion? [23:07] <jrand0m> Gruppenname-Funktion? [23:07] <dm> team discovery channel! [23:07] <MrEcho> lol [23:08] <dish> So dass, wenn man ein privates oder separates Netzwerk haben will, aber sich einige Router irgendwie vermischen, ohne Gruppennamen die zwei Netzwerke zusammengeführt würden [23:08] <MrEcho> er denkt an WASTE [23:08] <jrand0m> ah [23:08] <dish> Ich weiß nicht, warum man das wollen würde, aber ich frage nur für den Fall [23:08] <jrand0m> ja, früh im Netzwerkdesign habe ich damit gespielt [23:09] <jrand0m> es ist fortgeschrittener, als wir es derzeit brauchen (oder in der relativ nahen Zukunft [6–12 Monate]), könnte aber später integriert werden [23:09] <dish> Oder ist das eine schlechte Idee, weil es besser ist, ein großes Netzwerk zu behalten [23:09] <dm> i2pisdead [23:09] <jrand0m> heh dm [23:10] <nop> halt die Klappe [23:10] <dm> nop: harter Kerl? [23:10] <jrand0m> nein, dish, es ist eine gute Idee [23:10] <dm> Spaßvogel? [23:10] <jrand0m> das ist im Wesentlichen das, was Release 0.2.3 ist -- eingeschränkte Routen [23:10] <jrand0m> (sprich, du hast eine kleine private (vertrauenswürdige) Menge an Peers und du willst nicht, dass jeder weiß, wer sie sind, aber du willst trotzdem mit ihnen kommunizieren können) [23:15] <jrand0m> ok, noch etwas? [23:15] <nop> nah, ich bin nur witzig [23:18] <dm> Spaßvogel? [23:20] <jrand0m> ok, nun, ein /interessantes/ Meeting, mit ein paar iip-Abstürzen in der Mitte ;) [23:21] <jrand0m> * jrand0m *baf*t das Meeting zum Abschluss