(Courtesy of the wayback machine http://www.archive.org/)

Kurzer Überblick

Anwesend: dish, dm, jrand0m, MrEcho, nop

(Meeting-Protokoll bearbeitet, um zu verbergen, dass iip mitten im Meeting abgestürzt ist und es viele Ping-Timeouts gab; daher versucht nicht, dies als zusammenhängende Erzählung zu lesen)

Sitzungsprotokoll

[22:02] <jrand0m> Tagesordnung [22:02] <jrand0m> 0) willkommen [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) Namensdienst [22:03] <MrEcho> ich habe diesen .c-Code gesehen [22:03] <jrand0m> 5) Lizenzierung [22:03] <jrand0m> 6) sonstiges? [22:03] <jrand0m> 0) willkommen [22:03] <jrand0m> hi. [22:03] <nop> hi [22:03] <jrand0m> Meeting 2^6 [22:04] <jrand0m> hast du noch Punkte für die Tagesordnung, 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> oder? [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, was ein Release rechtfertigt [22:05] <nop> ich versuche nur, aufzuholen [22:05] <jrand0m> cool [22:06] <jrand0m> angesichts der Erfahrungen und Rückmeldungen zu 0.2.0.x wurde die Roadmap aktualisiert, damit der Betrieb weniger ressourcenintensiv ist [22:06] <jrand0m> (sprich, damit Leute Webserver / etc. betreiben können und es nicht ihre CPU frisst) [22:06] <jrand0m> konkret (weiter zu Punkt 1.2): http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap [22:06] <MrEcho> was mir aufgefallen ist: die meisten router verwenden: TransportStyle: PHTTP [22:07] <MrEcho> schaltet es automatisch auf phttp oder versucht es zuerst tcp [22:07] <jrand0m> hmm, die meisten router sollten PHTTP unterstützen, und wenn sie eingehende Verbindungen akzeptieren können, sollten sie auch TCP unterstützen [22:07] <jrand0m> wenn irgend möglich, verwendet es TCP [22:07] <jrand0m> PHTTP wird etwa 1000-mal teurer gewichtet als TCP [22:08] <jrand0m> (siehe GetBidsJob, das jeden Transport fragt, wie viel es kosten würde, 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 PHTTP häufig zum Senden und Empfangen von Nachrichten? [22:09] <jrand0m> (das könnte ein Zeichen sein, dass dein TCP-Listener nicht erreichbar ist) [22:09] <MrEcho> ich habe die URLs auf meiner Seite nicht eingetragen [22:09] <jrand0m> ah 'k. [22:09] <MrEcho> ohh ist es [22:10] <jrand0m> ok, ja, meine router haben offene TCP-Verbindungen zu dir [22:10] <dm> wie gastfreundlich von ihnen. [22:10] * jrand0m ist froh, dass ihr mich dazu gebracht habt, 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, sodass es, wenn es nicht mit tcp verbindet, auf phttp geht? und wie ist das Timing dafür [22:11] <jrand0m> aber wie auch immer, die große Änderung an der Roadmap ist, dass 0.2.1 das AES+SessionTag-Zeug implementieren wird [22:11] <MrEcho> oder könnten wir das als Einstellung haben? [22:11] <jrand0m> wenn es ein TCP connection refused / host not found / etc. bekommt, schlägt dieser Versuch sofort fehl und es probiert das nächste verfügbare Bid [22:12] <MrEcho> also keine Retries [22:12] <jrand0m> phttp hat ein Timeout von 30 Sekunden, iirc [22:12] <jrand0m> kein Grund zum erneuten Versuch. Entweder du hast eine offene TCP-Verbindung und kannst die Daten senden, oder eben nicht :) [22:12] <MrEcho> lol ok [22:13] <MrEcho> wird es danach jedes Mal tcp versuchen oder das überspringen und einfach phttp für die nächste Verbindung nehmen? [22:13] <jrand0m> im Moment versucht es jedes Mal tcp. [22:13] <jrand0m> die Transports speichern noch keine Historien [22:13] <MrEcho> ok, cool [22:14] <jrand0m> (aber wenn ein Peer 4-mal fehlschlägt, wird er für 8 Minuten auf die schwarze Liste gesetzt) [22:14] <MrEcho> sobald die Gegenseite die phttp-Nachricht bekommt, sollte sie sich per tcp mit dem router verbinden, der die Nachricht gesendet hat, richtig? [22:14] <jrand0m> korrekt. Sobald irgendeine tcp-Verbindung aufgebaut 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 herstellen 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 baue TCP-Verbindungen zu Peers auf, die TCP-Adressen haben. [22:16] <jrand0m> (und dann können sie Nachrichten über diese TCP-Verbindung zurückschicken, statt mir langsamere PHTTP-Nachrichten zu senden) [22:17] <jrand0m> oder meinst du das nicht? [22:17] <MrEcho> ja, ich habe mich verwechselt [22:17] <jrand0m> alles klar, kein Problem [22:18] <jrand0m> siehe die aktualisierte Roadmap für aktualisierte Zeitplan-Informationen ((Link: http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap)http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap) [22:18] <jrand0m> ok, 1.3) offene Teilprojekte [22:19] <jrand0m> ich habe endlich einen Haufen aus der To-do-Liste meines PalmPilots ins Wiki gestellt unter (Link: http://wiki.invisiblenet.net/iip-wiki?OpenSubprojects)http://wiki.invisiblenet.net/iip-wiki?OpenSubprojects [22:19] <jrand0m> also wenn dir langweilig ist und du nach Code-Projekten suchst... :) [22:19] <MrEcho> boah [22:20] <MrEcho> hab schon 2 [22:20] <dish> Du hast einen Palmpilot, das ist elitär [22:20] <MrEcho> meiner ist gestorben [22:20] <jrand0m> mihi> da ist ein Punkt drin bzgl. des I2PTunnel, der einen Gedanken beschreibt, den ich vor einer Weile hatte [22:20] <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 geschrieben hat [22:21] <MrEcho> das verdammte Ding geht nicht mal mehr an [22:21] <MrEcho> lol [22:22] <jrand0m> Ich glaube, UserX hat seit 4 oder 5 Monaten nichts gesagt ;) [22:22] <MrEcho> ist das ein Bot oder so etwas? [22:22] <dish> Was haben sie vor 5 Monaten gesagt? [22:22] <MrEcho> ich wette, das ist ein bitchx, der auf irgendeiner Kiste läuft, auf die er früher Zugriff hatte .. und den er vergessen hat [22:22] <jrand0m> dass sie nächste Woche mit Kommentaren zum anonCommFramework (alter Name von i2p) zurückkommen würden ;) [22:23] <dish> haha [22:23] <jrand0m> aber ich vermute, er ist beschäftigt. So ist das Leben [22:23] <jrand0m> ok, 2) native modPow [22:23] <MrEcho> ich habe diesen c-code gesehen [22:24] <jrand0m> ich habe eine Stub-.c- und eine Java-Klasse zusammengebastelt, um zu zeigen, wie etwas wie GMP oder eine andere MPI-Bibliothek integriert werden könnte, aber es funktioniert offensichtlich nicht [22:25] <jrand0m> gut wäre, wenn wir ein kleines Paket aus C-Klassen und der dazugehörigen trivialen Java-Wrapper-Klasse hätten, das wir für windows, osx, *bsd, linux bauen und unter der GPL paketieren könnten

(hier schwerwiegende iip-Fehlfunktion 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 $25 einmalig kann ich vollständiges Java auf thenidus.net bekommen … eine meiner Sites [22:40] <jrand0m> $25? Die verlangen Geld dafür, Software zu installieren? [22:40] <MrEcho> Keine Ahnung eigentlich .. es ist ein Paket [22:40] <MrEcho> rede gerade mit meinem Freund [22:40] <jrand0m> Ich bin mir nicht sicher, ob der Code schon stabil genug ist, um loszugehen und eine Menge Colo-Plätze zu mieten, um dort routers aufzustellen. Noch nicht :) [22:41] <dm> Paket wovon? [22:41] <MrEcho> java - jsp [22:41] <jrand0m> ok, ich sende noch mal, was ich vorher geschickt habe: [22:41] <jrand0m> Ich habe ein Stub-.c und eine Java-Klasse zusammengestellt, um zu zeigen, wie etwas wie GMP oder eine andere MPI-Bibliothek integriert werden könnte, aber es funktioniert offensichtlich nicht [22:41] <jrand0m> Gut wäre, wenn wir ein kleines Paket aus C-Klassen und der zugehörigen trivialen 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 jedoch nicht mehr ganz so kritisch wie zuvor. [22:42] <jrand0m> Wenn aber jemand damit loslegen möchte, wäre das großartig (und ich bin sicher, ein weiteres Projekt, das wir alle kennen, wäre an so einer Paketierung interessiert) [22:43] <dm> frazaa? [22:43] <jrand0m> heh, auf gewisse Weise ;) [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 Besonderes [22:45] <MrEcho> Ich habe ein paar richtig coole Ideen, um es richtig schick zu machen .. aber das ist noch ein gutes Stück hin [22:45] <jrand0m> Ich habe 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 eine runSquid.bat/runSquid.sh zu erstellen? [22:45] <jrand0m> word [22:46] <jrand0m> Ja, wir wollen den Installer so einfach wie möglich halten – an welchen Schnickschnack hast du gedacht? [22:46] <MrEcho> Frage ist .. wenn man java -jar installer ausführt, geht es standardmäßig in den Non-GUI-Modus, wegen der Art, wie du die Dinge eingerichtet hast [22:46] <MrEcho> Wie bekommen wir es hin, dass, wenn man die JAR-Datei doppelklickt, die GUI geladen wird? [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 gar nicht bemerkt .. aber es wird schön und aufgeräumt [22:47] <jrand0m> cool [22:47] <MrEcho> ah ok [22:48] <jrand0m> (oder install <– gui installcli <– cli. Wir werden sehen, wie sich die Dinge entwickeln) [22:49] <jrand0m> Noch etwas zur GUI, oder springen wir zu Punkt 4)? [22:49] <jrand0m> (Hast du einen groben Zeitrahmen im Kopf? Kein Druck, nur neugierig) [22:51] <MrEcho> Im Moment keine Ahnung [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 zwei Tagesordnungspunkte mit der Nummer 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ürs Protokoll mache ich wohl weiter [22:59] <jrand0m> 6) Lizenzierung [23:00] <jrand0m> Ich denke darüber nach, weniger restriktiv als die GPL zu sein. Wir verwenden etwas MIT-Code, plus eine weitere Datei ist GPL (aber das ist nur das Base64-Encoding und kann trivial ersetzt werden). Ansonsten liegt das gesamte übrige Copyright entweder bei mir oder bei thecrypto. [23:00] * dish schaut sich den I2P tunnel-Teil des Codes von mihi an [23:01] <jrand0m> Ach stimmt, mihi hat das als GPL veröffentlicht, aber er kann es auch als etwas anderes veröffentlichen, wenn er möchte [23:01] <jrand0m> (aber I2PTunnel ist im Grunde eine Drittanbieter-App und kann sich 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> Weiß ich nicht. Lizenzierung ist nicht meine Stärke, aber ich tendiere zumindest dazu, auf die LGPL zu wechseln [23:02] * dish veröffentlicht die 10–20 Zeilen Änderung am I2P HTTP Client mihi-Code unter welcher Lizenz auch immer mihi hat [23:03] <jrand0m> hehe :) [23:06] <jrand0m> Wie auch immer, 7) Sonstiges? [23:07] <jrand0m> Hat jemand Fragen / Bedenken / Ideen bzgl. i2p? [23:07] <dish> Lass mich fragen [23:07] <dish> Hat das I2P irgendeine Gruppennamen-Funktion? [23:07] <jrand0m> Gruppennamen-Funktion? [23:07] <dm> Team Discovery Channel! [23:07] <MrEcho> lol [23:08] <dish> Also, wenn man ein privates oder separates Netzwerk haben möchte, aber sich einige router irgendwie vermischen, würden ohne Gruppennamen die beiden Netzwerke zusammenwachsen [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, ganz am Anfang beim Netzwerkdesign habe ich damit gespielt [23:09] <jrand0m> Das ist fortgeschrittener, als wir es jetzt 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] <jrand0m> Nein, dish, das ist eine gute Idee [23:10] <dm> nop: harter Kerl? [23:10] <jrand0m> Das ist im Wesentlichen das, was Release 0.2.3 ist – restricted routes (eingeschränkte Routen) [23:10] <jrand0m> (aka du hast eine kleine private (vertrauenswürdige) Menge an Peers und willst nicht, dass jeder weiß, wer sie sind, willst aber trotzdem mit ihnen kommunizieren können) [23:15] <jrand0m> Ok, noch etwas? [23:15] <nop> Nee, ich bin nur witzig [23:18] <dm> Witzbold? [23:20] <jrand0m> Ok, nun, /interessantes/ Meeting, mit ein paar iip-Abstürzen mittendrin ;) [23:21] * jrand0m bafs das Meeting zu Ende