You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In most easy network configurations, one would have a set of initial seeds to facilitate peer discovery. In the current state of this library, those nodes would be overwhelmed with traffic. They would have nearly as many connections as there are nodes.
Mechanism:
When a node (A) gets a new connection, and already has more than 2 * max_outgoing connections, it should:
Not send an initial handshake
Do send a peerlist
Send flags.disconnect
The flags.disconnect message tells the receiver (B) to initiate a disconnect. This would be remembered by A, and A would not react to its disconnection.
You could think of this as a slightly more complicated HTTP 303
Caveats:
This mechanism will need to be modified for the chord schema, as relative distances will begin to matter. In that schema, this will be handled by disconnect_least_efficient.
The text was updated successfully, but these errors were encountered:
Reasoning:
In most easy network configurations, one would have a set of initial seeds to facilitate peer discovery. In the current state of this library, those nodes would be overwhelmed with traffic. They would have nearly as many connections as there are nodes.
Mechanism:
When a node (A) gets a new connection, and already has more than
2 * max_outgoing
connections, it should:flags.disconnect
The
flags.disconnect
message tells the receiver (B) to initiate a disconnect. This would be remembered by A, and A would not react to its disconnection.You could think of this as a slightly more complicated HTTP 303
Caveats:
This mechanism will need to be modified for the chord schema, as relative distances will begin to matter. In that schema, this will be handled by
disconnect_least_efficient
.The text was updated successfully, but these errors were encountered: