Files
i2p.www/www.i2p2/pages/meeting158.html
2008-02-04 18:22:36 +00:00

228 lines
19 KiB
HTML

{% extends "_layout.html" %}
{% block title %}I2P Development Meeting 158{% endblock %}
{% block content %}<h3>I2P dev meeting, November 29, 2005</h3>
<div class="irclog">
<p>15:25 &lt; jrandom&gt; 0) hi</p>
<p>15:25 &lt; jrandom&gt; 1) Net status and 0.6.1.6</p>
<p>15:25 &lt; jrandom&gt; 2) Syndie</p>
<p>15:25 &lt; jrandom&gt; 3) I2P Rufus 0.0.4</p>
<p>15:25 &lt; jrandom&gt; 4) ???</p>
<p>15:25 &lt; jrandom&gt; 0) hi</p>
<p>15:25 * jrandom waves</p>
<p>15:25 &lt; jrandom&gt; weekly status notes up @ http://dev.i2p.net/pipermail/i2p/2005-November/001234.html</p>
<p>15:26 * bar hands jrandom a baf</p>
<p>15:26 &lt; c3rvantes&gt; not yet!</p>
<p>15:26 * jrandom winds up</p>
<p>15:26 &lt; jrandom&gt; er...</p>
<p>15:26 &lt; jrandom&gt; lets hit the first few agenda items first :) 1) Net status and 0.6.1.6</p>
<p>15:27 &lt; jrandom&gt; lots of things have been updated in the last few releases, but the network still seems reasonably stable. </p>
<p>15:28 &lt; jrandom&gt; we've had some serious spikes in router participation on a few routers, though thats pretty harmless</p>
<p>15:28 &lt;+legion&gt; cool, I agree net status is getting better. Also yeah why not drop tcp for 0.6.1.7</p>
<p>15:28 &lt; jrandom&gt; (er, spikes in tunnel participation, that is)</p>
<p>15:29 &lt;@cervantes&gt; you're not kidding</p>
<p>15:29 &lt; jrandom&gt; not sure legion. there may be some users out there limited to tcp only, but i seem to recall that there was only one or maybe two of those</p>
<p>15:29 &lt;+legion&gt; well I've noticed with 0.6.1.5 the router would sometimes restart on its own.</p>
<p>15:29 &lt;+Complication&gt; Mine's been swinging withint reasonable limits, 100 to 250 participating tunnels</p>
<p>15:29 &lt; jrandom&gt; I can't think of any great reason to keep it, and I can think of a few to drop it</p>
<p>15:30 &lt; jrandom&gt; cool Complication</p>
<p>15:30 &lt; jrandom&gt; (those numbers are fairly average, according to stats.i2p/, but remember, numbers like that can damage anonymity, so shouldn't really be given out, especially not in logged meetings ;)</p>
<p>15:30 &lt;+Complication&gt; My old Celeron is still auto-restarting every 10 hours or so</p>
<p>15:30 &lt;+Complication&gt; Otherwise it's better connected than ever before</p>
<p>15:30 &lt; Pseudonym&gt; what are the reasons to drop it?</p>
<p>15:31 &lt;+Complication&gt; TCP is expensive</p>
<p>15:31 &lt;@cervantes&gt; my router is shagged out</p>
<p>15:31 &lt;+Complication&gt; In terms of threads per connections</p>
<p>15:31 &lt;@cervantes&gt; Complication: multiply that by 10 and you get my router's current range ;-)</p>
<p>15:31 &lt;+legion&gt; Mines been swinging within 200-400 participating tunnels, so it seems better than ever.</p>
<p>15:32 &lt;+Complication&gt; cervantes: ouchie ouchie</p>
<p>15:32 &lt;+Complication&gt; I've seen a freak accident which caused 2000 participating tunnels, but that was in Summer</p>
<p>15:32 &lt; jrandom&gt; Pseudonym: performance (cpu/memory, better scheduling due to our semireliable requirements), maintainability, more effective shitlisting</p>
<p>15:32 &lt;+Complication&gt; A single spike which never repeated again</p>
<p>15:32 &lt;+legion&gt; yeah, with some past versions there were such spikes</p>
<p>15:32 &lt; jrandom&gt; Complication: we've had &gt; 2000 tunnel spikes with this last rev</p>
<p>15:33 &lt; jrandom&gt; but hopefully 0.6.1.7 will take care of that</p>
<p>15:33 &lt;+legion&gt; Well those are some good reasons to drop tcp :)</p>
<p>15:33 &lt; jrandom&gt; but, again, the spikes in tunnel participation is fine, as most of them aren't used</p>
<p>15:34 &lt;@cervantes&gt; Pseudonym: there only seems to be one or two routers still using tcp on the network</p>
<p>15:34 &lt; jrandom&gt; it may also be a good idea to drop tcp in this rev too, since it doesn't have other major changes. that way we can see how it affects things pretty clearly</p>
<p>15:34 &lt; jrandom&gt; (and can reenable it if necessary)</p>
<p>15:35 &lt; Pseudonym&gt; if there are only two routers using it, I can't imagine it would have much effect either way</p>
<p>15:35 &lt; Pseudonym&gt; (except for there being two less routers on the network)</p>
<p>15:35 &lt;@cervantes&gt; 2 disgruntled customers</p>
<p>15:35 &lt; jrandom&gt; well, the transport does show up in some odd situations, which is one of the reasons i want to disable it :)</p>
<p>15:35 &lt;+Complication&gt; I hope they won't take it very personally</p>
<p>15:36 &lt;+Complication&gt; It's really nasty of certain ISP's to filter UDP.</p>
<p>15:36 &lt;+Complication&gt; Nasty, and completely senseless.</p>
<p>15:36 &lt; jrandom&gt; (e.g. when a router is hosed, people mark their SSU transport as failing, and as such, they fall back on the tcp transport)</p>
<p>15:36 * Pseudonym loves his ISP. no restrictions</p>
<p>15:37 &lt;+Complication&gt; So without TCP, one would see how UDP handles it alone?</p>
<p>15:37 &lt;+Complication&gt; "with no auxiliary wheels" :P</p>
<p>15:37 &lt;+legion&gt; huh so how do we get around such nasty filtering without tcp?</p>
<p>15:38 &lt; jrandom&gt; exactly Complication :)</p>
<p>15:38 &lt; jrandom&gt; legion: we don't</p>
<p>15:38 &lt; jrandom&gt; (restricted routes)</p>
<p>15:38 &lt;+Complication&gt; Well, aren't there a number of useful apps besides file-sharing programs, which also use UDP packets sized above DNS packets?</p>
<p>15:39 &lt;+legion&gt; :( doesn't sound good</p>
<p>15:39 &lt;+Complication&gt; Sized similarly to the smallest packet size I2P uses?</p>
<p>15:39 &lt; jrandom&gt; eh legion, its not a problem</p>
<p>15:39 &lt; jrandom&gt; Complication: streaming protocols</p>
<p>15:39 &lt;+Complication&gt; One cannot block UDP directly, ever, without crippling DNS.</p>
<p>15:39 &lt;+Complication&gt; One can limit the packet size.</p>
<p>15:40 &lt;+legion&gt; ok, it did sound like it could be</p>
<p>15:40 &lt;+Complication&gt; VoIP?</p>
<p>15:40 &lt; jrandom&gt; it'd be a problem if it were widespread - if the internet community in general banned udp</p>
<p>15:40 &lt;+Complication&gt; Hmm, does VoIP use big or small packets?</p>
<p>15:40 &lt; jrandom&gt; but if its just a few isps, we can treat them like restricted routes</p>
<p>15:40 &lt;+Complication&gt; Or did you mean more like... video spreaming?</p>
<p>15:40 &lt;+legion&gt; I'd think it'd use a mix of both</p>
<p>15:41 &lt; jrandom&gt; both Complication, RTSP runs over UDP, and real runs over RTSP iirc</p>
<p>15:41 &lt;+Complication&gt; s/p/s</p>
<p>15:42 &lt;+legion&gt; So on to the next item?</p>
<p>15:42 &lt;+Complication&gt; cat /etc/services | grep -c udp</p>
<p>15:42 &lt;+Complication&gt; 227</p>
<p>15:43 &lt; jrandom&gt; I'm still not sure if we'll drop tcp in 0.6.1.7, but probably. </p>
<p>15:43 &lt; jrandom&gt; aye, anyone have anything else on 1)? if not, lets jump on to 2) Syndie</p>
<p>15:43 &lt;+Complication&gt; Meaning, there are at least 227 apps (some possibly obsolete or LAN apps) which use UDP</p>
<p>15:44 &lt; jrandom&gt; bah, this is the intarweb. all you need is proxied HTTP access</p>
<p>15:44 &lt; jrandom&gt; I don't have much to add to 2) beyond whats in the mail (and whats on Syndie)</p>
<p>15:44 &lt;+legion&gt; I'm convinced, yeah drop it. :)</p>
<p>15:44 &lt; jrandom&gt; anyone have anything re: syndie they want to bring up?</p>
<p>15:45 &lt;+legion&gt; I've nothing to say about 2) either.</p>
<p>15:45 * Complication is reading "how Syndie works"</p>
<p>15:46 &lt;+Complication&gt; One little UI effect, keeps surprising me. :D</p>
<p>15:46 &lt;+Complication&gt; When I expand a thread of messages, it always gets me by surprise that the active message moves to become the topmost in the list. :P</p>
<p>15:47 &lt;+Complication&gt; But you can proabably safely ignore that. I'm just very picky, and a creature of habit. :P</p>
<p>15:47 &lt;@cervantes&gt; the threading model is something that's being discussed at length</p>
<p>15:47 &lt;@cervantes&gt; ;-)</p>
<p>15:47 &lt;+Complication&gt; I'll get used to it. :)</p>
<p>15:48 &lt;+Complication&gt; cervantes: in Syndie? I gotta find that thread. :)</p>
<p>15:48 &lt;@cervantes&gt; I don't like that either - but it could well change</p>
<p>15:48 &lt; jrandom&gt; yeah, thats kind of kooky I suppose</p>
<p>15:48 &lt;+legion&gt; yeah</p>
<p>15:48 &lt;@cervantes&gt; "subject: syndie threading"</p>
<p>15:49 &lt;+Complication&gt; Besides, if the expanded message were the bottom-most, it *would* have to move anyway.</p>
<p>15:49 &lt;+Complication&gt; 'Cause otherwise it'd be stuck there.</p>
<p>15:50 &lt; jrandom&gt; well, the nav at the bottom shows 10 *threads* at a time, not 10 messages. so it could expand the bottom thread</p>
<p>15:50 * cervantes is testing some different threading UI style implementations atm</p>
<p>15:51 &lt; jrandom&gt; wikked</p>
<p>15:51 &lt; jrandom&gt; yeah, ideally we'll be able to switch them around in css, or if not, on the server side</p>
<p>15:52 &lt;@cervantes&gt; or rather "threading navigation styles"</p>
<p>15:53 &lt;@cervantes&gt; hmm my tests use pure html nested unnordered lists by default</p>
<p>15:53 &lt;@cervantes&gt; you can layer on as much css and javascript as your need or want</p>
<p>15:53 &lt; jrandom&gt; any eta on when we can see some mockups?</p>
<p>15:53 &lt;@cervantes&gt; (however it's only a proof of concept, not an actual ui implementation)</p>
<p>15:54 &lt;@cervantes&gt; I do most of my coding during I2P meetings ;-)</p>
<p>15:54 &lt; jrandom&gt; heh</p>
<p>15:54 &lt;@cervantes&gt; perhaps the first mockup will be ready this evening</p>
<p>15:54 * jrandom schedules daily meetings</p>
<p>15:54 &lt; jrandom&gt; wikked</p>
<p>15:54 &lt;@cervantes&gt; curses :)</p>
<p>15:55 &lt; jrandom&gt; ok, anyone have anything else for 2) syndie?</p>
<p>15:55 &lt; jrandom&gt; if not, lets move on to 3) I2P Rufus 0.0.4</p>
<p>15:56 &lt; jrandom&gt; I don't have much to add beyond whats in the mail - Rawn/defnax, y'all around?</p>
<p>15:56 &lt;+legion&gt; so how good is 0.0.4? What problems remain if any?</p>
<p>15:57 * jrandom hasn't a clue</p>
<p>15:58 &lt;+legion&gt; Maybe one of its users can answer. Does it seem good and stable?</p>
<p>15:58 &lt; jrandom&gt; ok, seems Rawn and defnax are away atm. if anyone has any questions/comments/concerns regarding I2P Rufus, swing on by the forum and post 'em away</p>
<p>15:58 &lt;+legion&gt; darn, guess we'll have to.</p>
<p>15:59 &lt;+legion&gt; on to 4)?</p>
<p>15:59 &lt; jrandom&gt; aye, so it seems. ok, 4) ??? </p>
<p>15:59 &lt;+Complication&gt; I haven't tried I2P Rufus, unfortunately.</p>
<p>16:00 &lt; jrandom&gt; anyone have anything else they want to bring up?</p>
<p>16:00 &lt; jrandom&gt; (c'mon, we've got to drag this out so cervantes can do some more work!)</p>
<p>16:00 &lt;+legion&gt; yeah, what sort of interesting stuff is coming down the pipe?</p>
<p>16:00 &lt;+bar&gt; is there anywhere i could read more about "restricted routes"?</p>
<p>16:00 &lt;+bar&gt; (i *have* searched)</p>
<p>16:01 &lt;+legion&gt; Maybe we could even discuss i2phex?</p>
<p>16:01 &lt; jrandom&gt; http://dev.i2p.net/cgi-bin/cvsweb.cgi/i2p/router/doc/techintro.html?rev=HEAD</p>
<p>16:01 * cervantes poises his mouse over the close button</p>
<p>16:01 &lt; jrandom&gt; er, #future.restricted</p>
<p>16:02 &lt; jrandom&gt; plus the how_* pages & todo</p>
<p>16:02 &lt; jrandom&gt; (on the web)</p>
<p>16:02 &lt;+Complication&gt; Heh, I2P seems to have skipped a build :D</p>
<p>16:02 &lt;+Complication&gt; :D</p>
<p>16:02 &lt;+bar&gt; thanks</p>
<p>16:02 &lt;+Complication&gt; - public final static long BUILD = 1;</p>
<p>16:02 &lt;+Complication&gt; + public final static long BUILD = 3;</p>
<p>16:03 &lt; jrandom&gt; legion: some hacking on the netDb, performance mods, restricted routes, streaming improvements, eepproxy improvements, tunnel improvements, etc. lots of stuff, but nothing ready yet</p>
<p>16:03 &lt;+legion&gt; huh, odd</p>
<p>16:03 &lt; jrandom&gt; anything to bring up re: i2phex legion?</p>
<p>16:03 &lt; jrandom&gt; Complication: yeah, intended. I forgot to increase it for BUILD = 2</p>
<p>16:03 &lt;+Complication&gt; (not that it matters for anything, just wondering if I've seen this rare occasion before :)</p>
<p>16:04 &lt;+legion&gt; sweet, sounds great, thanks!</p>
<p>16:04 &lt; jrandom&gt; oh, that reminds me... it'd be cool if someone wanted to dig into looking at revamping our webpage</p>
<p>16:05 * jrandom doesnt want to think about it, but its got to be done sooner or later</p>
<p>16:05 &lt;+legion&gt; yeah, there is</p>
<p>16:05 &lt;+legion&gt; would it be worthwhile to update i2phex at this point to the latest phex cvs code?</p>
<p>16:06 &lt;+Complication&gt; Not sure, I haven't heard from Redzara recently</p>
<p>16:06 &lt; jrandom&gt; last I recall, redzara was waiting on gregorz's updates to phex</p>
<p>16:06 &lt; jrandom&gt; (so we could have a fairly clean update/extension)</p>
<p>16:08 &lt;+legion&gt; huh, then why have i2phex?</p>
<p>16:08 &lt;+Complication&gt; Just in case?</p>
<p>16:08 &lt; jrandom&gt; hmm?</p>
<p>16:08 &lt; jrandom&gt; i2phex is an extension to phex</p>
<p>16:08 &lt;+legion&gt; Seems like they wanted there to just be phex with a i2p extension</p>
<p>16:09 &lt; jrandom&gt; extension, as in, modification to a very small number of bits</p>
<p>16:09 &lt; jrandom&gt; er, s/bits/components/. so we can easily update the code whenever the phex devs fix things</p>
<p>16:10 &lt;+legion&gt; if so then it shouldn't take much work for me to update it to the latest cvs code, though I know it will.</p>
<p>16:10 &lt; jrandom&gt; last I heard in the forum was that the plan is to have I2Phex and Phex be separate applications, but they'd share a majority of code</p>
<p>16:10 &lt; jrandom&gt; aye legion, that'd be great, but last I heard, Gregor hadn't finished the modifications to Phex yet</p>
<p>16:11 &lt; jrandom&gt; (which is what redzara was waiting on)</p>
<p>16:11 &lt;+legion&gt; ah I see</p>
<p>16:11 &lt; jrandom&gt; so, the alternative is to either help Gregor out or continue modifying the existing I2Phex codebase</p>
<p>16:12 &lt;+legion&gt; well then if I don't wait and just update i2phex with new code, there would be no need for redzara continue</p>
<p>16:12 &lt; jrandom&gt; well, not really. </p>
<p>16:12 &lt; jrandom&gt; updating I2Phex to the current Phex code would be great, yes</p>
<p>16:13 &lt; jrandom&gt; but as soon as the Phex developers update their Phex code, we're out of sync again</p>
<p>16:13 &lt;+legion&gt; ok, I'll probably get to it sometime tonight or within a couple days.</p>
<p>16:13 &lt; jrandom&gt; wikked</p>
<p>16:13 &lt;+legion&gt; That is fine.</p>
<p>16:14 &lt;+legion&gt; Really I'm not looking to have i2phex remain in sync with phex code, it's just that it sounds like the cvs contains fixes which i2phex could certainly use.</p>
<p>16:15 &lt;+legion&gt; Also I'm really looking to drop out any phex code and features which i2phex doesn't need.</p>
<p>16:15 &lt; jrandom&gt; cool</p>
<p>16:16 &lt;+legion&gt; As to any new features and fixing anything that is still not working like the upload queues... Well I've already looked into getting the webcaches working, but have much more to do.</p>
<p>16:17 &lt; jrandom&gt; word. yeah, phex used to have working gwebcache support, but sirup disabled it, as it wasn't necessary at first</p>
<p>16:17 &lt;+legion&gt; I do plan on adding jeti to i2phex eventually.</p>
<p>16:17 &lt; jrandom&gt; neat</p>
<p>16:18 * jrandom has never used jeti, and I hope it stays an optional component, but supporting more things is cool</p>
<p>16:18 &lt;+legion&gt; Yeah it can be optionally, users will be able to download a jeti2phex ;)</p>
<p>16:19 &lt; jrandom&gt; word</p>
<p>16:19 &lt;+legion&gt; There still is much we can do with i2phex, though it is working great as it is.</p>
<p>16:20 &lt;+legion&gt; So far keeping a client connected, up and running for 24/7 is possible and easy.</p>
<p>16:21 &lt; jrandom&gt; yeah, I've had some good success with it... "backing up my licensed recordings"</p>
<p>16:21 &lt;+legion&gt; heh :)</p>
<p>16:22 &lt; jrandom&gt; ok, anyone else have anything for the meeting?</p>
<p>16:23 * cervantes wheels in the chinese gong</p>
<p>16:23 &lt;+legion&gt; Seems like I'm forgetting something... hmm</p>
<p>16:24 &lt;+legion&gt; Oh yeah, any ideas on how we can reduce the amount of memory i2p and i2phex consumes?</p>
<p>16:25 &lt;+Complication&gt; Well, the TCP transport takes a bit</p>
<p>16:25 &lt; jrandom&gt; one could run both in the same jvm</p>
<p>16:25 &lt;+Complication&gt; If that is going, it will free a bit</p>
<p>16:26 &lt;@cervantes&gt; take some ramsticks out of your machine</p>
<p>16:26 &lt; cat-a-puss&gt; anyone with any experence with javolution know if it would help? http://javolution.org/</p>
<p>16:26 &lt; jrandom&gt; (clients.config in the i2p install dir defines the main class and arguments to launch clients)</p>
<p>16:26 &lt;+legion&gt; So if we ran both in the same jvm and when tcp goes, could we bring it down to under 50mb?</p>
<p>16:27 &lt; jrandom&gt; no idea legion. depends on what you mean by 50MB as well. RSS/VSS/etc</p>
<p>16:27 &lt; jrandom&gt; I really wouldn't recommend running both in one JVM though, unless you keep both running all the time, since shutting down one would kill the other</p>
<p>16:27 &lt;@cervantes&gt; legion: limiting bandwith and capping participants might also help</p>
<p>16:27 &lt; jrandom&gt; aye, what cervantes said</p>
<p>16:28 &lt; cat-a-puss&gt; it would seem to me that if we know exactly how many of some type of object we are eventually likely to use, it would help prevent overzellous jvm allocation</p>
<p>16:28 &lt;+Complication&gt; Right, it makes those different allocations, which I've never really managed to make sense of</p>
<p>16:28 &lt; jrandom&gt; aye, we do some of that cat-a-puss (see net.i2p.util.ByteCache)</p>
<p>16:29 &lt;+Complication&gt; (but as said, Java is a very new thing to me)</p>
<p>16:29 &lt; jrandom&gt; I've glanced at javolution before, but it seems to have made a lot of progress. i'll give 'er another look</p>
<p>16:30 &lt; cat-a-puss&gt; jrandom:I know some people at my work use it and are happy with it, though they don't care about memory allocation</p>
<p>16:31 &lt; jrandom&gt; well, it really wouldn't save any memory, but would help cut down on GC churn</p>
<p>16:31 &lt;+legion&gt; Well I personally don't care much about memory allocation, however many people do.</p>
<p>16:31 &lt; jrandom&gt; ooh, and its BSD licensed too</p>
<p>16:31 &lt; cat-a-puss&gt; right</p>
<p>16:31 &lt; jrandom&gt; legion: memory allocation means performance</p>
<p>16:32 &lt;+legion&gt; er, oh, memory consumption then</p>
<p>16:33 &lt;+legion&gt; Many people are so very happy with utorrent because of it's very small memory footprint.</p>
<p>16:33 &lt; jrandom&gt; ah, oh, yeah. we can tweak it down the line, but since i2p runs within the default jvm sizes, i'm not too worried (as we've got lots of room for tweaking)</p>
<p>16:34 &lt; jrandom&gt; ok, anyone have anything else for the meeting?</p>
<p>16:35 &lt;+legion&gt; nah I'm good...</p>
<p>16:37 * jrandom winds up</p>
<p>16:37 * jrandom *baf*s the meeting closed</p>
</div>
{% endblock %}