Skip to content

Latest commit

 

History

History
58 lines (47 loc) · 4.61 KB

cip-11.md

File metadata and controls

58 lines (47 loc) · 4.61 KB
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

Simple Summary

This CIP proposes to separate the Status message and Heartbeat message.

Abstract

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.

Motivation

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.

Specification

TBD

Rationale

TBD

Backwards Compatibility

We use message versioning to address the backwards compatibility.

Test Cases

TBD

Implementation

See conflux-rust pull request #1715.

Security Considerations

TBD

Copyright

Copyright and related rights waived via CC0.