📄️ Networking
Everscale uses its own peer-to-peer network protocols.
📄️ TL
TL (Type Language) is used for describing data structures. To structure data, TL schemes are used. TL operates with 32-bit blocks. Accordingly, the size of the data in TL should be a multiple of 4 bytes. If the size of the object is not a multiple of 4, we need to add the required number of zero bytes to achieve multiplicity. The Little Endian order is always used to encode numbers.
📄️ ADNL
The key element of Eversale is the Abstract Datagram Network Layer (ADNL).It allows all nodes to assume certain network identities, represented by 256-bit abstract network addresses. They communicate via sending datagrams to each other using only these 256-bit network addresses to identify both the sender and the receiver. In particular, one does not need to worry about IPv4 or IPv6 addresses, UDP port numbers, and the like. They are hidden by the Abstract Network Layer.Each datagram is signed and encrypted by the sender. Only the recipient has the possibility to decrypt the message and verify its integrity via signatures.
📄️ DHT - Distributed Hash Table
In fact, it is a distributed key-value database, where each network participant can save something. In Everscale, it is used to locate nodes in the network.
📄️ RLDP
Reliable Large Datagram Protocol runs on top of ADNL UDP. It is designed for transmitting big data and includes Forward Error Correction (FEC) algorithms. They are used to replace packet receipt confirmations by the other party. This opens the possibility to transfer data between network components more efficiently. Although, with high traffic consumption.
📄️ Overlay
Everscale is a multi-blockchain platform. That is, its architecture is built in such a way that a lot of chains can exist simultaneously and even independently. With this, there is a constant need for updates on the network. For instance, full nodes could require updates for new blocks of some chains. All chains in the network, including the masterchain, communicate via their own overlay. To join it, it is needed to find the nodes that are already in it, and start exchanging data with them.
📄️ REMP
Introduction