CIP No. | Title | Author | Status | Type | Created | Required CIPs |
---|---|---|---|---|---|---|
11 |
Distinguish Status and Heartbeat Messages |
Ming Wu <ming@confluxnetwork.org> |
Final |
P2P Protocol Breaking |
2020-07-25 |
4 |
This CIP proposes to separate the Status message and Heartbeat message.
Currently, Status message is also used for heartbeat. However, in the message, not all the fields should be sent periodically as heartbeat. This causes unnecessary data transfer and network bandwidth consumption. Separating Status message and Heartbeat message will avoid such redundant data transfer.
The current Status message has the following fields:
pub chain_id: ChainIdParams,
pub genesis_hash: H256,
pub best_epoch: u64,
pub node_Type: NodeType,
pub terminal_block_hashes: Vec<H256>,
The field chain_id, genesis_hash, and node_type do not need to be sent periodically, since we assume these values would not change during the running time of a node. Therefore, we may have a Status message containing these fields and a Heartbeat message containing the rest fields.
TBD
TBD
We use message versioning to address the backwards compatibility.
TBD
See conflux-rust pull request #1715.
TBD
Copyright and related rights waived via CC0.