Welcome to wiki of the the peer-to-peer layer of Pocket Network 1.0!
In this Wiki all information relative to the Gemini specification and implementation, respecting the following order:
-
Routing Structure and Algorithms
In the first part of this Wiki, we attend in detail to the backbone data-structure of the routing for Hydrate as well as the algorithm and give detailed insight into scalability and performance.
-
In the second part, we lay down the mechanisms and strategies for peer discovery, join and leave and overall network maintenance
-
Node Identification & Security
In the third, we describe the the requirements the node identification and security requirements the network has to meet to support the other parts.
-
Transport Protocols & Security
Fourthly but not lastly, we touch on the transport layer of Hydrate and its maintenance and management.
-
On the fifth, we describe the smarter part of the network that enables the chain, primarily dealing with how to classify peers per role, enforcing bans, and sending specific message types using specific communication models as well as handling stateful communication, such as neighboring chain heights and what not.
-
In this section, we specify the currently known and allowed message types in the peer-to-peer layer.
-
Usability Interface / Interfacing with Other Modules
[...]
💡: indicates an implementation avenue or suggestion
✍🏻: A new term we chose to use for convenience purposes
🗝: Key concept that should be paid attention to