zzz
I'll research
orignal
seems we never send status message back
zzz
yes we should set a nonce on SYN (first packet) for an outbound connection. But that's it. Not "never" but almost never.
orignal
in real stream of data I mean
orignal
maybe it come rarely
orignal
but why?
orignal
you don't need router's "feedback"?
orignal
like if it can handle traffic or not
zzz
It's so we can get the failure code and present a good error message page in the browser in HTTP client proxy
zzz
otherwise, we don't really care why
orignal
say if you receive status message you can reduce window size, etc.
orignal
and sure I'm only care about snark
zzz
this is implemented in streaming so it's the same for everything
zzz
in streaming we don't need ratchet acks or failure codes. streaming has its own acks, and we don't care "why"
orignal
for streaming no
orignal
but not for snark
zzz
so we only need the failure code for SYN. streaming passes the code to i2ptunnel or SAM. i2ptunnel/SAM picks the error message based on the failure code and gives it to the user. correct, snark doesn't care
zzz
remember when people got "Неподдерживаемые настройки шифрования" in SAM? that's how it happened.
orignal
it's about 0 to 4 only
orignal
but still don't undertand how snark slows down
zzz
me either. Maybe speed you are getting is normal, maybe not. You can try setting log level to WARN as I said the other day, or try ?p=2 to see streaming info, or compare to XD or qbittorrent
orignal
no I mean how snark decides how much data to send
orignal
streaming calculates RTT
orignal
but why snark doesn't flood the network
orignal
AFAIK it sends datagrams
zzz
no, connections are sockets (streaming), datagrams are only for DHT
orignal
it's the main problem of any UDP traffic
orignal
then it's clear
orignal
so the trafic is always by-directional
orignal
*bi
zzz
speed = RTT * window size, try ?p=2
zzz
*window size / RTT
orignal
since it's streaming it's clear now
orignal
I though you send datagrams like most modern torrent clients do
zzz
no, there are no clients that support uTP over i2p
zzz
but maybe if I can get Datagram2 proposal reviewed :)
orignal
clients?
orignal
how about implement it in snark?
zzz
snark/XD/qbittorrent/bitlybt/vuze
orignal
while most clearnet torrents do
zzz
1) get Datagram2 reviewed and approved; 2) document/propose/implement UDP announces with Datagram2 3) uTP over Datagram2
zzz
remember, snark is over 20 years old
orignal
will test
orignal
anyway since it's streaming download speed depends how fast I send message containing acks
zzz
streaming or uTP, there is still congestion control and windowing. uTP doesn't mean "flood the network"
zzz
every protocol has to have acks and windowing and congestion control
not_bob
I did a test today with the latest version of i2pd and snark+, I was able to get 500k/s
orignal
how many peers?
not_bob
24 peers.
not_bob
I only get speeds like that when there are a lot of peers that have a lot of the file.
not_bob
They each only need to push about 20k/s for me to get the 500.
cumlord
not_bob same as what I saw yesterday, more peers but same speed
not_bob
I'm content with speeds like that, but more would be better.
dr|z3d
lol
dr|z3d
some people want less. *chuckle*
dr|z3d
darius, for example.
not_bob
I read :)
dr|z3d
well done. top marks for you.
not_bob
Amusing.
not_bob
I get a cookie?
dr|z3d
no. you get a forehead tattoo.
not_bob
Oh, that was unexpected.
dr|z3d
it says "I iz literate, try me"
not_bob
;)
not_bob
I love you too.
dr|z3d
*** chuckles some more. ***
snex
When did /me start working
not_bob
*** puts on his cone of shame and sits in the corner. ***
dr|z3d
forever, snex.
snex
No, it used to be blocked by the server
snex
Because it uses the same codes as ctcp
dr|z3d
never been an issue here.
dr|z3d
zzz might have tweaked something recently, however.
dr|z3d
from zero to a complete console/webapp translation in ~24h for hindi.
dr|z3d
timeframe, not time taken.
dr|z3d
will land on the + /dev update path in a minute or 4.
dr|z3d
eyedeekay: I think it's a mistake to iframe {min-height: 100vh} in the css.
dr|z3d
just setting {height: 100vh} should be sufficient to cover the no-js scenario. min-height will probably interfere with iframeresizer.
dr|z3d
if your iframes are taller than the viewport with js enabled, you won't notice the issue. only when they're not, like, say, when snark is embedded with no torrents loaded.
dr|z3d
if iframeresizer is also setting min-height on the iframe id, then nevermind.
T3s|4
dr|z3d: thanks - good stuff; and even better on Jason for not backing down :)
zzz
*** fixed the /me recently, accidentally broken a couple years ago, nobody reported it until kytv reappeared ***
cumlord
hola todos
cumlord
question, if I wanted to do some basic things from a cli to several routers, would i2p control be a reasonable way to do that?
not_bob
What basic things do you want to do?
cumlord
Get bw up/down, errors, uptime, graceful shutdown/restart, that kind of thing
not_bob
With java i2p from what I know the only thing you can do is start/stop/restart
not_bob
You can pull the stats by grabbing the console page, doing some regex and having it display the output.
not_bob
Using curl or the like.
not_bob
I don;'t know any other way to do it.
not_bob
If I were to do that, I'd write something up in perl to wrap it all together.
not_bob
But, I'm not aware of an easy way to do it right now.
not_bob
It might be worth writing something to do that.
not_bob
Anyway, time to drive for me!
not_bob
Later!
zzz
look at the i2pcontrol API spec and see if it matches what you need
cumlord
Yeah I have a half hacked together thing to get info from the page but only tried on i2p+, wasn’t sure if there was a better way
cumlord
similarly for snark, just wanted bw
cumlord
thanks, i haven’t looked at it more than skimming it at the moment lol
zzz
for snark you can use the transmission API w/ the snark RPC plugin
dr|z3d
you can crib together a bunch of stats and graphs on a web page, cumlord.
dr|z3d
for snark, you could just use curl and grep to get the current bw.
snex
I2P modernization project - redo the web stuff in modern languages with modern front end frameworks. Offer REST or some other acceptable API
dr|z3d
enable the in/out snark tunnel stats, then graph the data you want from /stats
cumlord
zzz you’re right I keep forgetting to try that, I think that’d do what I need it to do
cumlord
Ha I was messing with doing something like that earlier
cumlord
My motivation at the moment is to make a semi load balancer for snark
zzz
the plugin provides both the JSON API and an alternate UI, which is interesting but not for everybody
dr|z3d
run ~/i2p/i2prouter for a list of things you can do, including a graecful restart.
cumlord
If I have 4 running at >1MBs, start 1 more snark, assign it to the least loaded router
dr|z3d
multi-destinations in snark could potentially increase throughput. it's not more than an idea right now, however.
cumlord
zzz the apis are useful, does that mean it’s like a MySpace page
cumlord
dr|z3d ah that’s probably the easiest way to do that
zzz
heh. never tried prowlarr and it's been years since I tested sonarr with the plugin
dr|z3d
I'm done with reddit, I can't even log into that now using what used to work before.
dr|z3d
"Try disabling all browser extensions".
cumlord
multi-destinations sounds complicated
dr|z3d
non-trivial.
dr|z3d
biglybt uses multiple destinations afaik, as an option.
cumlord
Going to have to try that. Was able to get biglybt running with prowlarr forgot I did that
dr|z3d
biglybt is also a bit of a memory hog. I've heard people reporting >2GB usage.
cumlord
I thought bigly did, explains some differences I’m seeing
zzz
it's also on my list to take another pass thru the snark rpc plugin and add support for missing/stubbed RPC calls, if anybody finds any please report
cumlord
Memory’s the reason I’m switching
dr|z3d
snex: we already have an api, just needs embracing and extending. see jsonrpc webapp on /configwebapps (needs to be started).
dr|z3d
sounds like your sort of project, given how you love json and stuff.. :)
snex
Yeah if i had time
dr|z3d
so you're essentially volunteering some else to "redo the web stuff in modern languages with modern front end frameworks. Offer REST or some other acceptable API" ?
snex
Why don’t we just make a “foundation” and solicit donations and then pay college kids to do it
dr|z3d
the one thing I've learnt around here is that if you REALLY want something done and it doesn't appear to be on anyone else's TODO list, the best way to get it done is to do it yourself. there's no foundation, there's no queue of college kids waiting to get paid, but there are plenty of people that expect other people to do their bidding :)
snex
Yes I volunteer mesh to do it since he’s a Java expert
dr|z3d
so he claims.
dr|z3d
and yet we've yet to see any actual code from mesh. I'm not holding my breath.
snex
For real though the bar to entry for contributing seems extremely high. We need a massive refactoring project and it needs to be coordinated because one person is just never gonna be able to do it
RN
so you are leading the charge. how do you plan to recruit helpers?
snex
Hey I’m promoting i2p on a podcast
snex
I’ve onboarded at least one user I know of for sure
RN
Σ:Đ