examples(iroh): allow to configure the receive window in the transfer example#4082
examples(iroh): allow to configure the receive window in the transfer example#4082
Conversation
|
Documentation for this PR has been generated and is available at: https://n0-computer.github.io/iroh/pr/4082/docs/iroh/ Last updated: 2026-04-08T08:19:38Z |
44bcd0a to
c18dfad
Compare
|
We probably need to limit the number of features we throw into this example. Yes, it's a tool for our testing but also is this going to be generally useful enough to clutter the CLI? Perhaps this is better off as a one-off thing to play with? Or perhaps the code needs to be structured differently so that it is easy to do this kind of tweaks locally if you need them? Another concern is that tweaking the receive window without also tweaking the send window is also going to hurt at some point. |
flub
left a comment
There was a problem hiding this comment.
Apparently github didn't think that counted as a review 🤷
Anyway, I need more convincing that we want to add this complexity to the transfer example :)
My reasoning is:
So I think that this argument makes sense here.
Good point. The default is |
|
Do we no longer send folks to doctor? Anyway, you've done more maintaining of transfer than me, so your call. Though I do think it keeps getting more and more complex. Do you plan on doing the send window as well or do you want an lgtm now? |
This allows to configure the receive window in the transfer example. It can either be set by value, or by setting the expected RTT and then calculating the receive window for a desired max throughput of 12.5 MB/s (like in noq's default calculation).
For a relay-only transfer (with
--relay-only) and the relay pinned to use1 (~100ms one-way latency from my laptop, so 400ms RTT between two endpoints on my laptop), increasing this from the default to 5MB (i.e.--receive-window 5Mor--receive-window-rtt 400) lets the transfer throughput go from ~600 KB/s to ~1.8 MB/s.Description
Breaking Changes
Notes & open questions
Change checklist
quic-rpciroh-gossipiroh-blobsdumbpipesendme