Skip to content

Latest commit

 

History

History
49 lines (38 loc) · 4.91 KB

cip-4.md

File metadata and controls

49 lines (38 loc) · 4.91 KB
CIP No. Title Author Status Type Created
4
Add Node Type in Status Message
Ming Wu <ming@confluxnetwork.org> and Peilun Li <peilun.li@confluxnetwork.org>
Final
P2P Protocol Breaking
2020-07-22

Simple Summary

Add node type information in Status message to let its peers know whether it is an Archive, Full, or Light node.

Abstract

Currently, there is no way for a Conflux node to let its peers know what type it is, in the sense of Archive, Full, or Light. This CIP fix this issue by adding field of node type in Status message.

Motivation

Conflux nodes need a way to convey what types they are to their peers, so that nodes can maintain the node type information of their peers and can decide how to choose peers to connect or send messages accordingly. For example, when light nodes want to retrieve old-era receipts or full nodes are in catch-up phase, they might need to query an archive node.

Specification

TBD

Rationale

TBD

Backwards Compatibility

The proposed fix is protocol-breaking since it involves message format changing. It should use protocol versioning mechanism to implement, but at current stage in phase 2 mainnet, I prefer a direct in-place update in current message version.

Test Cases

TBD

Implementation

See conflux-rust pull request #1701.

Security Considerations

There is no obvious way to verify whether a node tells the truth about its type. But this would not introduce serious security issue. The node which uses this information of its peers will eventually observe the inconsistency between their behaviors and claims, and can demote their reputations accordingly.

Copyright

Copyright and related rights waived via CC0.