Generalizing feature negotiation when new p2p connections are setup



Summary:

In a recent post to the bitcoin-dev mailing list, Suhas Daftuar suggested codifying an idea in a BIP that Bitcoin network clients should ignore unknown messages received before a VERACK. Anthony Towns responded, suggesting that instead of allowing arbitrary messages, it would make sense to have a specific feature negotiation message. This could take the form of a sequence diagram where all messages are redundant with verack. The proposed message would be valid only between VERSION and VERACK, and if the feature name isn't recognized, the message is ignored. It might be easier to implement a "polite disconnect" feature for a generic FEATURE message rather than reimplementing it for each new feature.


Updated on: 2023-06-14T15:06:08.275028+00:00