~dr|z3d
@RN
@RN_
@StormyCloud
@eyedeekay
@postman
@zzz
%Liorar
+FreefallHeavens
+Xeha
+bak83_
+cumlord
+hk
+poriori
+profetikla
+uop23ip
Arch
DeltaOreo
FreeRider
Irc2PGuest10850
Irc2PGuest19353
Irc2PGuest23854
Irc2PGuest46029
Irc2PGuest48064
Meow
Nausicaa
Onn4l7h
Onn4|7h
Over
T3s|4__
acetone_
anon4
anu
boonst
enoxa
glowie
mareki2pb
mittwerk
orignal
plap
shiver_
simprelay
solidx66
u5657_1
weko_
darius
must go 4 now
RN
I'm going to have to watch closer, but I do believe I've seen connections quit (read error) on ilita, same as they do here or any other I2P facing irc, just different frequenies
zzz
I have no cosmic expertise, sorry
orignal
RN I'm talking about myself
zzz
re: dup tags, you'd have to find some birthday paradox calculator. I don't know if we did that or documented it in the proposal
orignal
I never get dsiconnected from there
orignal
so can we have duplicate tags?
zzz
sure
orignal
and how do you resolve it?
zzz
it's just some HKDF of something
zzz
in your mapping of tag->key, you either keep the old one or take the new one, I don't know if we recommend one or the other in the spec
orignal
I use tag and immeditely remove
orignal
for incoming
orignal
let me see what I do when generate
dr|z3d
you're off the hook for now, zzz, he's afk :)
zzz
but if you pick one or the other, and you pick wrong, that's only one lost packet, no big deal
zzz
that's part of the protocol design, I just don't recall if it's implicit or explicitly documented
orignal
btw, what you max num of generated tags
orignal
you generate forward
orignal
I have 320 for now
zzz
same here
zzz
e.g. ID: 4/11539 expires in: 9 min with 320+64496 tags remaining
zzz
we've generated 320 and there's another 64496 remaining after that
orignal
trying to understand what happened
orignal
definitly unknown tags on my side
zzz
yeah but I'm only sending acks, 10% of what you're sending me, all in the same tagset
zzz
tags are 8 bytes so maybe you can find a birthday calculator for 320 / 2^64 but my guess is that's extremely rare
orignal
what if a tunnel started malfuctioning and massive loss
orignal
more than 320
orignal
it's pretty possible
zzz
again, I'm only sending acks
zzz
ID: 0/10625 acked created: Aug 16, 2024 4:08 PM last used: Aug 16, 2024 4:34 PM expires in: 7 min with 62669 tags remaining
orignal
yes but how often?
zzz
so in 26 minutes I sent... 2866 acks
zzz
110/minute
zzz
so 320 is ~3 minutes
zzz
but I request a ratchet ack once a minute
zzz
and would have switched tunnels if I didn't get an ack
orignal
is it possible that you were not abble to decryot mine?
zzz
sure, I'm not doing any logging
orignal
say what if I pumped 320 messages to nowhere
zzz
but you said you were getting lots of decrypt errors
orignal
yes, but it's not necesary about your stream
orignal
there were few connections
orignal
and I have them often
orignal
most likely duplicated packets
orignal
zzz seems I have identified the issue
orignal
moreTags = ECIESX25519_MIN_NUM_GENERATED_TAGS + (index >> 2); // N/4
orignal
where ECIESX25519_MIN_NUM_GENERATED_TAG = 24
orignal
simply spekaing I generate too small number of tags at start of a new tagset
orignal
how do you calculate number of tags to generate?
darius
I'm back and still the same issues, as expressed amid the work ya'll good folk where doing earlier.
darius
ihope we can get to the bottom of all these issues, but patience, we'll get there :)
Anomaly
i want to change my nick to "Shrek"
darius
spare a thought for the ppl being slaughtered in gaza i guess, they really dont have time on there side :((((((
Anomaly
oh yea
Anomaly
yea that stuff is not good
Anomaly
i am cautious of discussing topics like that because it can become political, and i dont think its a good idea to talk about politics.
darius
yeah its psychotic, the way they are going about flattening the place, anyone here knnow the latest in the numbered slaughtered and injured, its
Anomaly
are you in that area ?
darius
you might imply not
Anomaly
ok
darius
its last i heard the ALL? the twenty something hostipals and clinic were destoryed, terrible drimes
darius
crimse
darius
have you tried clicking on your name? or right clicking?
Anomaly
no, why do you ask ?
darius
"Shrek"
Anomaly
*** scratches head ***
Anomaly
oh like i can just change my name ?
darius
is it as psychotic and genocidal as nteanyahoo? theyve only been oppressed, treated as lesser ppls and had their land stolen for decades, but dunno.
darius
oh and that was about to be normalized last year
dr|z3d
Read the full article, enlighten yourself. It's a good article, dispassionate.
Anomaly
wtf
Anomaly
shrek: is that u ?
Anomaly
this is my swamp!
Anomaly
imagine we have shrek and "Donkey" as a nick
cumlord
what are you doing in my swamp??
Anomaly
Donkey!
darius
the lancet (uk journal) have put out an estimate a few weeks ago that the number of ppl killed at the direction of israel is 186,000 so i was just wondering how that number has changed about a month later.
Anomaly
ummm
darius
thats not including injured and ppl whove been able to get out, btw, terrible.
darius
well done, shrek
darius
your transitioning, wonderfully
cumlord
like a butterfly
Anomaly
lol
Anomaly
you guys are very funny
darius
it needs a kiss clearly
dr|z3d
you didn't read that article, darius. instead of telling us what we already know, inform yourself on what you don't.
Anomaly
i think we should fulfill the book of revelation and drop a nuke on isreal
Anomaly
im joking btw
Anomaly
dont do that
darius
its on the reading list, i just wanted to know if numbers had updated, i didnt know everyone knew
snex
Nuke em all
darius
enuf nihalism its not funny
dr|z3d
that is, if you're actually interested in a educating yourself about Gaza.
darius
identities are identities, i don't believe all the ppl massacred are/were following that identity, the ppl ive heard from dont say there are many different factions and people in leadership
darius
Blinded message
darius
also that hamas was ELEVATED by israel
darius
the PLO was there and cast aside
darius
the UN are pretty clear that israel is conducting crimes against humanity, and need/needed to return stolen land
darius
bbl
RN
does darius not know they are here?
RN
*** checks self and takes drunk elsewhere ***
T3s|4
dr|z3d: thanks for the heads up, I read the entire outstanding piece in The New Yorker :)
zzz
orignal, 12 for NSR, 24 for ES #0, 320 for ES > 0
orignal
I'm asking the algorithm
orignal
so, tagset 0 is range 24-320
orignal
tagset 1+ alsways 320. right?
zzz
correct
orignal
how do you calculate for tagset 0? based on index like I do?
orignal
higher index more tags
zzz
if (_maxSize > _originalSize) {
zzz
// grow from originalSize at N = 0 to
zzz
// maxSize at N = 2 * (maxSize - originalSize)
zzz
// for typical loss rates, this keeps us at about maxSize,
zzz
// but worst case about maxSize * 2
zzz
lookAhead = Math.min(_maxSize, _originalSize + (usedTagNumber / 2));
orignal
usedTagNumber is index I guess
orignal
and you divide by 2 rather than by 4
orignal
so you number fo gerenrated tags grow faster
zzz
yeah lookahead is how many tags ahead of the tag we just got
zzz
so we could have 320 ahead and 320 behind
zzz
but if no loss, then just 320 ahead and zero behind
orignal
thanks. will fix it
orignal
and for next tagset it's 320 from index 0
zzz
right. of course these are all just implementation choices, not specified, but I've forgotten so much it would take a lot of time to get my head back in it
zzz
I'm lucky I can find the code at all ))
orignal
great
orignal
anyway it seems it solves that problem with big files
orignal
I have forgotten too
orignal
it worked well while everything was slow
orignal
but new speed enlights old bugs
zzz
yes when things are working well it's easier to find bugs
zzz
when everything is broken it's very hard
orignal
nobody tried to download files of few hndreds megs before
zzz
happens in bittorrent all the time
zzz
re: collisions, we did talk about it in prop. 144:
zzz
A target of 1 in a million (1e-6) session tag collisions is probably sufficient. The probability of dropping a message along the way due to congestion is far higher than that.
orignal
and what's the colculsion? new or old?
zzz
With 8 byte session tags (64 bits) the session tag space is 1.8e19. The probability of a collision with probability 1e-18 requires 6.1 entries. The probability of a collision with probability 1e-6 requires 6.1e6 (6,100,000) entries. 1.8 million tags of 8 bytes each is about 15 MB total.
zzz
6.1 million active tags is over 3x more than our worst-case estimate of 1.8 million tags. So the probability of collision would be less than one in a million. We therefore conclude that 8 byte session tags are sufficient. This results in a 4x reduction of storage space, in addition to the 2x reduction because transmit tags are not stored. So we will have a 8x reduction in session tag memory usage compared to
zzz
ElGamal/AES+SessionTags.
zzz
Implementations should, at a minimum, recognize session tag collisions, handle them gracefully, and log or count the number of collisions. While still extremely unlikely, they will be much more likely than they were for ElGamal/AES+SessionTags, and could actually happen.
orignal
so print to the log
orignal
I use old tag for now
zzz
it's going to be extremely rare. The proposal does not make a recommendation on old vs. new:
zzz
Therefore, the only concern is session tag collision. It is assumed that implementations will not attempt to handle collisions by trying to decrypt with both sessions; implementations will simply associate the tag with either the previous or new session, and any message received with that tag on the other session will be dropped after the decryption fails.
orignal
yes, but still should write to the log
dr|z3d
glad you enjoyed it, T3s|4, long read, but worth the effort :)
dr|z3d
zzz: can we make publishing a version a hard requirement for RIs? with all the no-version RIs out there right now, it smells like an attack.
dr|z3d
also, re specs, if we have something relating to max participating tunnels before throttling in the specs, orignal says he'll implement it. long shot, I know, but I figured I might as well ask :)
zzz
re: RI, impls don't need a spec to drop any RI they want. You collaborated with eyedeekay on his recent MR? Please comment there, I nacked it but maybe it can be salvaged
zzz
re: throttling,that's also up to the impls, not really appropriate for a spec
dr|z3d
re no-version RIs, no collaboration with eyedeekay, I just brought the fact that I was seeing a huge number lately to his attention and he then saw the same behavior on one of his routers.
dr|z3d
currently I'm banning them in the participating throttler.
dr|z3d
private void handleNoVersion(boolean shouldDisconnect, Hash h, boolean isBanned, String caps, int bantime) {
dr|z3d
if (shouldDisconnect) {context.simpleTimer2().addEvent(new Disconnector(h), 60 * 1000);}
dr|z3d
if (!isBanned && _log.shouldWarn()) {
dr|z3d
_log.warn("Banning Router [" + h.toBase64().substring(0, 6) + "] for " + (bantime / 60000) + "m -> No router version in RouterInfo");
dr|z3d
}
dr|z3d
context.banlist().banlistRouter(h, " <b>➜</b> No version in RouterInfo", null, null, context.clock().now() + bantime);
dr|z3d
}
zzz
but are they also missing netid, or is it a mix&match of what's present and not out of {version, netid, caps}? eyedeekay didn't provide any data or analysis in his MR
zzz
I'm in the dark because I'm not seeing any of it, perhaps due to local changes
dr|z3d
all good questions, not sure since they're all banned and the RIs purged, but give me a moment or 2 and I'll have a list for you to cross reference.
dr|z3d
pm'd
dr|z3d
regarding transit throttling, perhaps some recommendations/suggestions with an explanatory note on why throttling is good would suffice.. distributing the traffic across the network, better network health in the event a router crashes, that sort of thing? maybe that would nudge orignal in the right direction.
orignal
1 hour cpntiniously. no disconnects
orignal
zzz, so trottling is not a requirement
orignal
like dr|z3d claims
dr|z3d
I never claimed it was a hard requirement, orignal
orignal
you meant that non-trottling makes a trouble to whole network
orignal
not only my router
orignal
it means it must be in the specs
orignal
if not it means it's only my business
dr|z3d
this is what we're currently discussing :)
orignal
fixing ratchets is more important for me
dr|z3d
once upon a time I recall zzz suggesting that excessive hosting of transit tunnels was bad for the network, at a time when 13K was deemed to be excessive.
dr|z3d
if there were some suggestions in the spec relating to throttling, would you pay any attention to them?
orignal
as I said. Once it's in specs we will implement
orignal
otherwise it's only our business
dr|z3d
so I'm asking, if there were some guidelines/recommendations in the spec instead of a hard requirement, would you heed them?
orignal
again all recoomendation must be in specs
orignal
to point guys to the source
orignal
like that's not my inbvention "to slow down I2P" etc.
dr|z3d
ok, so if there were recommendations _in the spec_ you'd take them into consideration. ok, smells like we're getting somewhere :)
zzz
I'm saying we have 20+ years of innovation in congestion control and active queue management (AQM), both in I2P and in academia; why constain ourselves to a particular impl in the specs?
dr|z3d
I'm not suggesting a specific implementation, I'm suggesting some general recommendations.
orignal
because dr|z3d claims it negatively affect the whole network
zzz
I don't think convincing me to document something so it will convince i2pd to do what you want makes any sense
orignal
if you believe it makes bad impact to the network you should document it
dr|z3d
I respectfully disagree. orignal is telling us that in order to keep his users happy, he needs to be able to refer them to the spec if he decides to implement it.
zzz
we're all learning together, it's not efficient for me to document everything in canon impl.
zzz
and drz changes every single knob and line of code he can find, it's not like he thinks canon impl is perfect either
dr|z3d
true that, can't disagree there.
dr|z3d
*** chuckles. ***
orignal
it's not about implemntation
orignal
it's about limits
zzz
y'all are well familiar with my recommendations: everything has limits, dropping is good, AQM is good, Westwood+, RFCs for RTT/RTO calcs, etc.
dr|z3d
let's try a simple question. 1 router, 40K transit tunnels. good or bad for the network?
orignal
we have 100K transit tunnels limit
orignal
but dr|z3d is not happy with it ))
dr|z3d
*** shakes his fist at orignal, obligingly. ***
orignal
my point, if it cvan handle 40K no problem
zzz
then you two have a debate, don't make me be the referee or give me work to do ))
dr|z3d
we've done the debate. orignal will only consider a different throttling strategy if there's something in the specs.
orignal
correct. I don't see any reason to reject a tunnel if I have rources to handle it
dr|z3d
something, anything. some basic guidelines..
orignal
if you don't like me don't build through me
dr|z3d
that's a straw man argument. no relevant to the discussion.
orignal
and rememeber
orignal
an abversary can do it wotjout trottling
dr|z3d
sure they can, and we can limit the percentage of client tunnels a single router can appear in, so we have some mitigations.
zzz
drz, if you have recommendations on best practices, write up a white paper. AQM, bufferbloat, the whole shebang
dr|z3d
you've obviously forgotten the time you balked at a router with 13K transit tunnels and stated that you might have to implement some sort of stats-based limits, zzz. it was a while back, so you're excused :)
zzz
I never said I disagreed with any of your points, maybe I do, maybe not
orignal
I always have like 15K transit tunnels at FF
snex
You guys need to host webinars for this stuff. Open to the public. We can’t keep doing this thing where only 5 people know how i2p works
orignal
ofc much more
dr|z3d
if you're content to sit on the fence, zzz, nothing I can do about it.
orignal
on the fence? )) I though on the ass ))
zzz
if you can't convince somebody by yourself, perhaps you haven't made a compelling argument. I don't feel qualified to make low-level recommendations to i2pd, and when I have, it's often mixed results
dr|z3d
there is no convincing orignal unless he sees something in the specs, regardless of the merits of said arguments.
dr|z3d
regardless, you could, in general terms, outline your thoughts on why routers hosting a large number of transit tunnels might be bad for the network, or, conversely, state why you think it's a non-issue.
zzz
dr|z3d, re: no-version RIs, I sampled some from the list you gave me, every one was fine, with version/caps/netid. Either your detection is buggy, or it's a transient issue, perhaps at i2pd startup
dr|z3d
ok, thanks, will take a look at the detection code.
orignal
i2pd always sets version
zzz
but if eyedeekay saw it too, that would rule out a plus bug
orignal
before creting and signing RI
dr|z3d
private String getRouterVersion(RouterInfo ri) {
dr|z3d
return (ri != null && ri.getVersion() != null) ? ri.getVersion() : "0.0.0";
dr|z3d
}
zzz
then perhaps a bug in some hack/fork/attack version, not saying a bug in i2pd proper
zzz
^^^ that code is all unnecessary add-on hackery, sorry, RouterInfo.getVersion() already does all that for you and returns non-null always, as documented in the javadocs
dr|z3d
ok, thx, will modificate.
darius
sounds like i've popped on here at just the right lull in the debate, im pro-distrution and pro-limits and importantly pro-getting back to ppl, bout stuff. i said i would research the swap vs ram space thing with tmpfs...
darius
well i;m embarrassed to say there was a man page page for that
darius
lol
darius
the swap space is used when ram space is exceeded
darius
pretty simple idea really
darius
Blinded message
darius
now on the topic of blocking font hinting in the browser for the rss button svg alterative
darius
i descided to take a completely different tack
darius
div borders....
darius
i think ppl will love this
darius
cake.i2p/file/lhjzncGzPh_GVJvgj4cAaPUnUvVHqhpEy6TZHP3hb_h81QYwOcIS/rss-using-div-corners.html
darius
i think especially dr|z3d will find this fun, and i half expect him to runaway with the little /* TODO */ in the css :P but maybe not
zzz
re: thoughts on high part. tunnel count, I'm not going to write your whitepaper for you, but you may wish to explore issues with failure points / consequences if the router goes down, and other possible threat models/attacks/deanon ideas
darius
^
dr|z3d
don't expect anything, throstle, you'll avoid disappointment that way :)
zzz
the specs are things we agree on, they aren't a mechanism to convince somebody of something, that turns everything upside down
darius
yes, I will enjoy doing to todo when i'm less about to acktwolly die
darius
sounds bout right zzz
darius
anyway dont be scared to offer feedback to the button, i already know that snex will think its a waste of time, but yea. must go and less die
not_bob
Mail continues to not work all the time. But, at least it is working some of the time now!
snex
i should make something that fwds i2pmail to my regular email
snex
like maybe encrypt the entire message first then send it? dunno