genka
dr|z3d: how many tunnels do i need to reliable connection to IRC. it keeps reconnecting me periodically
genka
for reliable*
dr|z3d
genka: check the i2p+ faq for info on how to make your connection more stable. it's a client thing. tunnel-wise, you only need 1 each way.
genka
dr|z3d: got it
dr|z3d
if your system is particularly slow at building tunnels, then max 2 in each direction.
mesh
genka: I use 3 tunnels, 3 hop counts
mesh
genka: I've found it significantly better than 2 tunnels for everything
mesh
you might need to give the router more memory tho. I don't set a max memory and it can get up to 512mb
mesh
more if you're downloading lots of torrents
genka
i gave 2048mb haha
mesh
genka: you have a 2gig machine?
genka
rpi 4 with 4 gb ram
mesh
2048mb is your max mem for the router?
genka
yes
dr|z3d
3 hops for irc is a waste of resources.
dr|z3d
there is no one size fits all config for client service tunnels. really depends on what you're accessing.
mesh
you might try 3/3 then. When I moved to 3/3 I saw significantly better connectivity with irc and http
dr|z3d
you won't, not for irc.
mesh
i2psnark seems to also default to 3 hop tunnels
mesh
dr|z3d: it's what I saw. When I using 2 tunnels I was getting dropped from irc all the time
dr|z3d
with http, more tunnels means your inbound traffic can cycle between tunnels while downloading. with irc, a persistent connection to the server doesn't benefit from more than 1 tunnel, so on a fast system, if that tunnel goes down, it'll rebuild quickly. on a slower system (or a firewwalled router) a backup tunnel can help.
mesh
then again back when my router was young I think I had significantly less active peers. That probably plays a part
dr|z3d
irc clients have different default timeouts, which is why I referred genka to the i2p+ faq.
dr|z3d
that's usually the issue with an unstable connection.
dr|z3d
don't confuse hops with tunnel count, mesh. totally different.
mesh
dr|z3d: is that really how it works? I don't think there's a relationship between persistent connection and tunnel count
dr|z3d
for optimal security, 3 hops is recommended. for speed, you can reduce hop count at the expense of security.
genka
increased net_ping_timeout to 320
dr|z3d
are you asking me or telling me, mesh?
mesh
dr|z3d: I think 1 persistent irc connection still goes over multiple tunnels was my point
dr|z3d
and you'd be wrong.
dr|z3d
irc is not multiplexed.
mesh
dr|z3d: why do you say that? everything I've read and seen suggests no relationship between the connection and the tunnel count
dr|z3d
your outbound and inbound tunnels, notwithstanding, are different.
dr|z3d
1 stream = 1 tunnel. irc is 1 stream, unless you enable dcc, in which case a separate tunnel will be built. i2p does not split a single stream over multiple tunnels. period.
mesh
dr|z3d: the multiplexing happens at the router level doesn't it?
dr|z3d
I'm telling you how it is. you want a second opinion, go ask zzz.
mesh
your router turns 3 i2p tunnels into a single TCP connection that your irc client connects to right?
dr|z3d
if you read what I've just told you, you already know the answer to that question.
mesh
I dunno dude, I don't believe you hehe. Nothing in the code suggests that either github.com/i2p/i2p.i2p/blob/master/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java
mesh
I would be very surprised if there was somthing about irc that made tunnel count irrelevant unless I'm missing something big
dr|z3d
like I said, feel free to consult zzz for a second opinion.
mesh
dr|z3d: I mean I'm pretty sure you're not right, but I think I may be misunderstanding you
mesh
when I go to 127.0.0.1:7667/tunnels
mesh
I see "I2P IRC Network"
mesh
and I see 3 inbound and 3 outbound tunnels
mesh
and I see non-zero usages for all the tunnels
mesh
this tells me that all the tunnels are being used -- though not much, ~10k-30kb for each tunnel
mesh
so I dono't see why you would say IRC only uses one "persistent tunnel"
mesh
at least that's what I see on my client side
mesh
on the server side I suppose it could be using 1 tunnel
mesh
if there was only 1 tunnel that would also make the whole system vulnerable to timing attacks so maybe the system is just generating noise
mesh
zzz did mention something about "noise" to prevent timing attacks
mesh
I would just be curious to know how that works because it suggests that the router itself has some special-case knowledge of irc
dr|z3d
ok, here's the thing. you've got 3 tunnels running for irc. one of those tunnels goes down. what do you think happens? a) your connection to the irc server remains up? b) you disconnect from the server and reconnect using the next available tunnel?
mesh
when you say connection do you mean the logical connection or the physical connection?
mesh
but even still look at the expiry times
mesh
it's not like it's a round robin affair with 1 tunnel having data and others 0 until it expires
mesh
at least the router console shows me two tunnels, expiry time 6min, with 3 and 4kb
mesh
so at least according to the consle I think it's properly multiplexing the irc connection over all 6 tunnels
dr|z3d
ok, go talk to zzz. you're presenting like you actually _know_ what you're talking about, but in reality you're just guessing.
dr|z3d
if zzz tells you i2p client tunnels multiplex, then I'll eat my shorts.
mesh
dr|z3d: I'm telling you what I literally see in the router console
mesh
6 tunnels all being used to transfer data with "Usage" between 1-12KB
dr|z3d
how do you think tunnels remain up? they're built and they don't pass any traffic until they're actively used?
mesh
dr|z3d: ...
mesh
dr|z3d: anyways I'm genuninely curious why you say that so I'll ask zzz. It's possible there's something I'm missing
mesh
what I find surprising is the idea that the router would treat irc client tunnels differently from other client tunnels
dr|z3d
all about the streams.
genka
i think i'll stay with i2pd :)
genka
i think java router and forks is user-friendly but overloaded with features
genka
i like minimalism
dr|z3d
do what makes you feel good, genka
genka
dr|z3d :)
dr|z3d
if you want minimal, i2pd is certainly that. when you factor in the features that you may want, however, it becomes less minimal when you're needing to install other software to get there.
dr|z3d
if you want minimal but with a prettier face, you might be interested in building github.com/vituperative/i2pd
genka
dr|z3d: you mean modified web interface?
dr|z3d
for i2pd, genka, yeah, it's had a facelift.
genka
dr|z3d: are there any screenshots? :)
dr|z3d
genka: > skank.i2p/i2pd/i2pd.png