-
Notifications
You must be signed in to change notification settings - Fork 999
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
protocols/dcutr: Don't retry when incoming direct connection succeeded #2607
Comments
I have skimmed: https://pdos.csail.mit.edu/papers/p2pnat.pdf Implement direct_connections check: Code reading questions: Is this just a single code branch? |
Just inefficient.
Probably relevant, though we will be collecting more data soon to back up this point. See https://github.com/dennis-tra/punchr.
Yes, that sounds right.
There is a single task running all
For now, one connection would eventually idle and thus be closed. In the long run we would need libp2p/specs#328.
Unfortunately I don't have data on this. Based on intuition and past experience I would guess it is negligible given that network latencies are an order of magnitude higher. |
Actually, the
|
No need to access it from the outside. The behaviour gets notified about new incoming connections! |
Looking back I am beguiled by how to debug multi-node issues like this in libp2p or an app where the network infrastructure like routers is involved. I probably should have asked about it sooner. Are there docs on how to set up automated testing or is it necessary to recruit machines? |
@esotericbyte unfortunately we don't have automated testing in place here today. You can follow progress here libp2p/test-plans#21. |
Update: We now have automated tests for hole-punching! |
As of today we retry the DCUtR process when the outgoing direct connection upgrade failed.
In the case where the incoming direction connection upgraded succeeded, there is no need for retrying the process.
We should check
direct_connections
to see whether an (incoming) direct connection succeeded in the meantime.rust-libp2p/protocols/dcutr/src/behaviour.rs
Lines 152 to 180 in 7a11478
The text was updated successfully, but these errors were encountered: