casper-network / casper-network/roadmap
Networking 2.0
- Dominant language
- No language data
- Stars
- 12
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
- [Spike]: handshake rework
After 1.5, we could retire the handshake in its current form entirely, as it is technically no longer required. 1.6 does not make a change this breaking, because we rely a little bit on being able to block and tarpit nodes.
With 2.0, it'd also be conceivable to change the node-to-node communications port to get a "fresh start". Then, we'd implement a tiny handshake of only a few bytes, since we do not need to communicate backwards compatibility. This would allow us to get rid of msgpack for encoding things entirely (one less dependency) and since 1.5, we can straight up refuse staying connected to nodes after reading a fixed amount of bytes, closing a minor attack vector while we're at it.
- [Story]: revisit asymmetrical connectivity, tls, etc
I have some ideas here, but the tl;dr is: We should probably move to a single connection setup if we're going partially connected network, but not one without the other. As for TLS, I would like to explore QUIC in earnest, as a userspace UDP protocol it would allow port reuse, finally allowing to get rid of node IDs based on TLS keys (and we'd get to boot OpenSSL). It should also hopefully fit neatly below the new 1.6 channel structure.
- [Story]: peer rating / connection quality mechanism P2
This I consider a requirement for partially connected networks, some sort of scheme that rates peers solely on the value they provided for us. We need to cycle (i.e. disconnect) a portion of our peers constantly to withstand Sybil-attacks, a scheme dropping the lowest performers periodically is probably the best way to go about that. I hope that this turns out as a good incentive to provide incoming connectivity (instead of connection symmetry), as otherwise it lowers chance of providing value to peers, causing to be dropped.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.