Replies: 2 comments 2 replies
-
I think this is something that can/should be built entirely on top of iroh :)
... Kind of. First I'd like to say that I think there's a lot of related concerns with applications where you essentially want to "keep one connection open while both ends are alive":
Some of these problems were solved independently, but I'm still collecting all the requirements and ideas for how to fix all of these (and also find the time) to build a general "ConnectionManager" thing. As for existing code, there's
I do think doing the deduplication right & re-connection behavior are both related concerns. You need them every time you care about keeping connections open. I've also heard some folks would be interested in kind of the opposite: Auto-closing connections once it's been idle for long enough, and then having fast re-connects using QUIC's 0-RTT. But maybe that goes too far for now.
Good question. I don't think QUIC is meant to do exponential backoff when it retransmits. So yeah I think you'd constantly be sending probes around (not a lot of data, probably, but still wasteful). |
Beta Was this translation helpful? Give feedback.
-
My understanding is that on the QUIC this should work, but it's rather sketchy territory that you should explore. QUIC closes the connection either when:
But I'm not entirely sure if iroh internals will deal with this gracefully. I think it is reasonable to ask us to support this. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hey Iroh peeps! <3
For Ethersync, we'd like to be able to say: "Here's your peer's Node ID, please connect to it and stay connected unless we tell you otherwise!" For example, when we want to keep a laptop connected to a smartphone, but the laptop is occasionally turned off, it would be neat to have Iroh attempt occasional reconnects, maybe with exponential backoff.
max_idle_timeout
toNone
achieve what we want? 🤔 [Narrator voice: "But at what cost?!"]Beta Was this translation helpful? Give feedback.
All reactions