官术网_书友最值得收藏!

Peer discovery

For a node to be part of the network, it needs to connect to some other nodes in the network so that it can broadcast transactions/blocks and listen to new transactions/blocks. A node doesn't need to connect to every node in the network; instead, a node connects to a few other nodes. And these nodes connect to a few other nodes. In this way, the whole network is connected to each other.

But how does a node find some other nodes in the network as there is no central server that everyone can connect to so as to exchange their information? Ethereum has its own node discovery protocol to solve this problem, which is based on the Kadelima protocol. In the node discovery protocol, we have special kind of nodes called Bootstrap nodes. Bootstrap nodes maintain a list of all nodes that are connected to them over a period of time. They don't hold the blockchain itself. When peers connect to the Ethereum network, they first connect to the Bootstrap nodes ,which share the lists of peers that have connected to them in the last predefined time period. The connecting peers then connect and synchronize with the peers.

There can be various Ethereum instances, that is, various networks, each having its own network ID. The two major Ethereum networks are mainnet and testnet. The mainnet one is the one whose ether is traded on exchanges, whereas testnet is used by developers to test. Until now, we have learned everything with regards to the mainnet blockchain.

Bootnode is the most popular implementation of an Ethereum Bootstrap node. If you want to host your own Bootstrap node, you can use bootnode.

主站蜘蛛池模板: 长治市| 江达县| 嵊泗县| 北川| 喀喇| 芜湖市| 古丈县| 翁牛特旗| 兴文县| 翼城县| 姜堰市| 湄潭县| 潍坊市| 新蔡县| 宜宾市| 河源市| 峨眉山市| 无为县| 乌审旗| 额济纳旗| 合肥市| 通化县| 侯马市| 平罗县| 航空| 吴旗县| 四平市| 乡宁县| 遵义市| 绍兴市| 奈曼旗| 开远市| 泰宁县| 潍坊市| 沁阳市| 宿迁市| 正宁县| 宁乡县| 额济纳旗| 万宁市| 勃利县|