I2P dev meeting, November 11, 2003 @ 21:02 UTC

Quick recap

  • Present:

dish, dm, jrand0m, MrEcho, nop,

(meeting log edited to cover up the fact that iip crashed midway through the meeting and there were lots of ping timeouts, so don't try to read this as a plain narrative)

تمام وقایع IRC

[22:02] <jrand0m> agenda 
[22:02] <jrand0m> 0) welcome 
[22:02] <jrand0m> 1) i2p router  
[22:02] <jrand0m> 1.1) status 
[22:02] <jrand0m> 1.2) roadmap changes 
[22:02] <jrand0m> 1.3) open subprojects 
[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] <MrEcho> i saw that .c code
[22:03] <jrand0m> 5) licensing 
[22:03] <jrand0m> 6) other? 
[22:03] <jrand0m> 0) welcome 
[22:03] <jrand0m> hi. 
[22:03] <nop> hi
[22:03] <jrand0m> meeting 2^6 
[22:04] <jrand0m> got any agenda items to add to there nop? 
[22:04] <jrand0m> ok, 1.1) router status 
[22:04] <jrand0m> we're and last I heard, its functional 
[22:04] <MrEcho> >
[22:04] <MrEcho> right?
[22:05] <MrEcho> im running it .. seems fine
[22:05] <nop> no
[22:05] <jrand0m> there have been minor commits after the release, nothing release worthy 
[22:05] <nop> I am jus trying to catch up
[22:05] <jrand0m> coo' 
[22:06] <jrand0m> given the experiences and feedback of 0.2.0.x, the roadmap has been updated to get things less resource intensive to run 
[22:06] <jrand0m> (aka so people can run webservers / etc and it won't eat up their CPU) 
[22:06] <jrand0m> specifically (moving to agenda 1.2): http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap 
[22:06] <MrEcho> what ive noticed is that most routers use: TransportStyle: PHTTP   
[22:07] <MrEcho> does it auto go to phttp or does it even try tcp first
[22:07] <jrand0m> hmm, most routers should support PHTTP, and if they can accept incomming connections, should support TCP as well 
[22:07] <jrand0m> if at all possible it uses TCP 
[22:07] <jrand0m> PHTTP is weighted about 1000 times more expensive than TCP 
[22:08] <jrand0m> (see GetBidsJob, which asks each transport how much it thinks it'd cost to send a message to a peer) 
[22:08] <jrand0m> (and see TCPTransport.getBid and PHTTPTransport.getBid for the values used) 
[22:08] <MrEcho> ok
[22:08] <jrand0m> are you using PHTTP often to send and receive messages? 
[22:09] <jrand0m> (that might be a sign that your TCP listener isn't reachable) 
[22:09] <MrEcho> i didnt put in the urls on my side
[22:09] <jrand0m> ah 'k.  
[22:09] <MrEcho> ohh it is
[22:10] <jrand0m> ok, yeah, my routers have open TCP connections to you 
[22:10] <dm> how hospitable of them.
[22:10] * jrand0m is glad y'all made me implement routerConsole.html so we don't have to dig through the logs for this crap
[22:11] <MrEcho> is there a timeout thing if it doesnt connect to the tcp it goes phttp? and whatz the timing on it
[22:11] <jrand0m> but anyway, the big change to the roadmap is that 0.2.1 will implement the AES+SessionTag stuff 
[22:11] <MrEcho> or could we have that in a setting?
[22:11] <jrand0m> if it gets a TCP connection refused / host not found /etc, it fails that attempt immediately, and tries the next available bid 
[22:12] <MrEcho> so no retrys
[22:12] <jrand0m> phttp has a 30 sec timeout iirc 
[22:12] <jrand0m> no need to retry.  you either have an open TCP connection and can send the data or you don't :) 
[22:12] <MrEcho> lol ok
[22:13] <MrEcho> will it try tcp everytime after that or skip that and just go phttp for the next connection?
[22:13] <jrand0m> it'll try tcp each time at the moment. 
[22:13] <jrand0m> the transports don't keep histories yet 
[22:13] <MrEcho> ok cool
[22:14] <jrand0m> (but if a peer fails 4 times they get shitlisted for 8 minutes) 
[22:14] <MrEcho> well once the otherside gets the phttp msg it should connect to the router that sent the msg via tcp right?
[22:14] <jrand0m> correct.  once any tcp connection is established, it can use it. 
[22:14] <jrand0m> (but if both peers only have phttp, they'll obviously only use phttp) 
[22:15] <MrEcho> that would mean that it couldnt est. a tcp connection to anything
[22:15] <MrEcho> .. but ya
[22:16] <MrEcho> i wish there was a way around that
[22:16] <jrand0m> no, one of my routers doesn't have a TCP address - only PHTTP.  but I establish TCP connections with peers who have TCP addresses. 
[22:16] <jrand0m> (and then they can send back messages along that TCP connection instead of sending me slower PHTTP messages) 
[22:17] <jrand0m> or is that not what you mean? 
[22:17] <MrEcho> ya i got mixed up
[22:17] <jrand0m> word, np 
[22:18] <jrand0m> so, see the updated roadmap for updated schedule information ((Link: http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap)http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap) 
[22:18] <jrand0m> ok, 1.3) open subprojects 
[22:19] <jrand0m> I finally put a bunch of my palmpilot's todo list into the wiki at (Link: http://wiki.invisiblenet.net/iip-wiki?OpenSubprojects)http://wiki.invisiblenet.net/iip-wiki?OpenSubprojects 
[22:19] <jrand0m> so if you're bored and looking for code projects... :) 
[22:19] <MrEcho> gezz
[22:20] <MrEcho> already got 2
[22:20] <dish> You have a palmpilot this is elite
[22:20] <MrEcho> mine died
[22:20] <jrand0m> mihi> there's a line item in there wrt the I2PTunnel describing a thought I had a lil while ago 
[22:20] <MrEcho> dont know whatz up wit hit
[22:21] <jrand0m> yeah, I used to have palms but just recently had this one donated to the cause ;) 
[22:21] <dish> Could there be an agenda item at the meeting to discuss when the last time userX typed something was
[22:21] <MrEcho> damm thing doesnt even turn on anymore
[22:21] <MrEcho> lol
[22:22] <jrand0m> I don't think UserX has said anything in 4 or 5 months ;) 
[22:22] <MrEcho> is that a bot or something?
[22:22] <dish> What did they say 5 months ago?
[22:22] <MrEcho> i bet its a bitchx running on some box he use to have access to .. and forgot about it
[22:22] <jrand0m> that they'd get back with comments about the anonCommFramework (i2p's old name) next week ;) 
[22:23] <dish> haha
[22:23] <jrand0m> but I suppose he's busy.  so is life 
[22:23] <jrand0m> ok, 2) native modPow 
[22:23] <MrEcho> i saw that c code
[22:24] <jrand0m> i put together a stub .c and java class to show how something like GMP or another MPI library could be integrated, but it obviously doesn't work 
[22:25] <jrand0m> what would be good would be if we had a small package of C classes and that trivial associated Java wrapper class that we could build for windows, osx, *bsd, linux, and package up under GPL  

(insert major iip breakage here)

[22:38] <MrEcho> last thing i saw was: [13:25] <jrand0m> ok, 2) native modPow
[22:38] <jrand0m> hi MrEcho 
[22:38] <jrand0m> yeah, looks like a main proxy crashed 
[22:39] <jrand0m> I'm giving it another 2 mins before restarting 
[22:39] <MrEcho> k
[22:39] <MrEcho> for $25 1 time i can get full on java on thenidus.net ... one of my sites
[22:40] <jrand0m> $25?  they charge you to install software? 
[22:40] <MrEcho> no idea really .. its a package
[22:40] <MrEcho> talking to my friend right now
[22:40] <jrand0m> I'm not sure the code is quite stable enough to go out and rent a bunch of colo spots to put up routers though.  yet :) 
[22:41] <dm> package of what?
[22:41] <MrEcho> java - jsp
[22:41] <jrand0m> ok, resending what I sent before: 
[22:41] <jrand0m> i put together a stub .c and java class to show how something like GMP or another MPI library could be integrated, but it obviously doesn't work  
[22:41] <jrand0m> what would be good would be if we had a small package of C classes and that trivial associated Java wrapper class that we could build for windows, osx, *bsd, linux, and package up under GPL (or less restrictive license) 
[22:41] <jrand0m> however with the new roadmap placing AES+SessionTag as my current action item, this isn't quite as critical as it was. 
[22:42] <jrand0m> if anyone wants to run with this though, that'd be great (and I'm sure another project we're all familiar with would be interested in such a packaging) 
[22:43] <dm> frazaa?
[22:43] <jrand0m> heh, in a way ;) 
[22:44] <jrand0m> ok, 3) gui installer 
[22:44] <jrand0m> MrEcho> hi 
[22:44] <MrEcho> :)
[22:44] <MrEcho> hehe
[22:44] <MrEcho> its comming alog
[22:44] <jrand0m> cool 
[22:44] <MrEcho> nothing fancy
[22:45] <MrEcho> ive got some really cool ideas to make it really fancy .. but thatz a way off
[22:45] <jrand0m> I was wondering if the installer should add 1) an option to auto-get the seeds from http://.../i2pdb/ 2) auto-get the http://.../i2p/squid.dest and create a runSquid.bat/runSquid.sh too? 
[22:45] <jrand0m> word 
[22:46] <jrand0m> yeah, we want the installer to be as simple as possible - what fancy stuff were you thinking of? 
[22:46] <MrEcho> question is .. when you do java -jar installer   it goes to the non gui by default because of the way u have things
[22:46] <MrEcho> how are we going to make it to were you dbl click the jar file and it loads the gui
[22:47] <jrand0m> install.jar <-- nongui,  installgui.jar <-- gui 
[22:47] <jrand0m> seperate code, seperate packages 
[22:47] <MrEcho> fancy as in things you might not notice .. but its goingto be nice and clean
[22:47] <jrand0m> cool 
[22:47] <MrEcho> aww ok
[22:48] <jrand0m> (or install <-- gui installcli <-- cli.  we'll see how things progress) 
[22:49] <jrand0m> anything else on the gui, or do we jump off to item 4)? 
[22:49] <jrand0m> (any time frame you're thinking?  no pressure, just wondering) 
[22:51] <MrEcho> no idea right now
[22:51] <jrand0m> coo' 
[22:51] <jrand0m> ok, 4) IM 
[22:51] <jrand0m> thecrypto aint here, so..... 
[22:51] <jrand0m> 5) naming service 
[22:51] <jrand0m> wiht isn't here either... 
[22:51] <jrand0m> ping 
[22:52] <dish> you're off on the number agenda count
[22:52] <dish> 3) IM
[22:52] <jrand0m> yeah, I used to have 2 agenda item 2's 
[22:52] <dish> 4) Naming
[22:52] <dish> ;)
[22:52] <jrand0m> (native modPow and gui installer) 
[22:52] <jrand0m> see, we're dynamic and stuff 
[22:59] <jrand0m> ok, for the logs I suppose I'll continue 
[22:59] <jrand0m> 6) licensing 
[23:00] <jrand0m> I'm thinking about going less restrictive than GPL.  we are using some MIT code, plus one other file is GPL (but thats just the base64 encoding and can be replaced trivially).  other than that, all of the code is either copyright by either myself or thecrypto. 
[23:00] * dish look at mihi i2p tunnel part of code
[23:01] <jrand0m> oh right, mihi has released that as gpl but he may want to release it as something else if he wants, as well 
[23:01] <jrand0m> (but i2ptunnel is essentially a third party app and can license how it wants) 
[23:02] <jrand0m> (though since the i2p sdk is gpl, he's been forced to be gpl) 
[23:02] <MrEcho> damm about time
[23:02] <jrand0m> I don't know.  licensing is not my forte, but I'm inclined at least to move to lgpl 
[23:02] * dish release the 10-20 line of change to I2P HTTP Client mihi code as whatever mihi license is
[23:03] <jrand0m> hehe :) 
[23:06] <jrand0m> anyway, 7) other?   
[23:07] <jrand0m> anyone have any questions / concerns / ideas wrt i2p? 
[23:07] <dish> Let me ask
[23:07] <dish> Does the I2P have any group name feature?
[23:07] <jrand0m> group name feature? 
[23:07] <dm> team discovery channel!
[23:07] <MrEcho> lol
[23:08] <dish> So that if you want to have private or seperate network, but some router get intermixed somehow without group name the two network would merge
[23:08] <MrEcho> hes thinking of waste
[23:08] <jrand0m> ah 
[23:08] <dish> I don't know why you would want that, but I am just ask in case
[23:08] <jrand0m> yes, early on in the network design I was playing with that 
[23:09] <jrand0m> its more advanced than we need for now (or for the relatively near future [6-12 months]) but may be integrated later  
[23:09] <dish> Or is that a bad idea because it is better to keep it one large network
[23:09] <dm> i2pisdead
[23:09] <jrand0m> heh dm 
[23:10] <nop> shad up
[23:10] <jrand0m> no dish, its a good idea 
[23:10] <dm> nop: tough guy?
[23:10] <jrand0m> its essentially what release 0.2.3 is -- restricted routes 
[23:10] <jrand0m> (aka you've got a small private (trusted) set of peers and you don't want everyone to know who they are, but you still want to be able to communicate with them) 
[23:15] <jrand0m> ok, anything else? 
[23:15] <nop> nah, I'm just being funny
[23:18] <dm> funny guy?
[23:20] <jrand0m> ok, well, /interesting/ meeting, with a few iip crashes in the middle ;) 
[23:21] * jrand0m *baf*s the meeting to a close