Skip to content

Commit

Permalink
Add bip-txrelayv2
Browse files Browse the repository at this point in the history
  • Loading branch information
ariard committed Sep 6, 2024
1 parent b4ea0a9 commit 143c993
Showing 1 changed file with 51 additions and 0 deletions.
51 changes: 51 additions & 0 deletions bip-txrelayv2.mediawiki
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
<pre>
BIP: XXX
Layer: Peer Services
Title: Transaction Relay V2
Author: Antoine Riard <[email protected]>
Comments-Summary: No comments yet.
Comments-URI: https://github.com/bitcoin/bips/wiki/Comments:BIP-0XXX
Status: Draft
Type: Standards Track
Created: 2024-09-05
License: GPLv2
</pre>

==Abstract==

This BIP proposes a new Bitcoin transaction relay protocol by introducing new
signaling support, which can be further used by nodes to negotiate new transaction
relay mechanisms and policies.

==Motivation==

Historically, upgrades to the transaction relay protocols have been down by updating
the protocol version number, and upgraded peers expecting support for new p2p messages
processing or alteration in current processing of p2p messages from equivalently upgraded
peers.

This upgrade mechanism raise issues if new processing of current p2p messages is sanctionned

Check warning on line 27 in bip-txrelayv2.mediawiki

View workflow job for this annotation

GitHub Actions / Typo Checks

"sanctionned" should be "sanctioned".
by an upgraded peer at the peering level by a disconnection of the violating non-upgraded peers.
Non-upgraded peers and clients can see their transaction broadcast silently failing for a subset
of theirs opened connections.

We can improve current upgrade mechanism of the transaction relay protocol by introducing a new
node service bit to signal support for a new v2 transaction relay protocol. Within this protocol,
nodes can negotiate new transaction relay mechanisms and policies.

==Specification==

Peers supporting the v2 transaction relay protocol signal support by adverstising
the 13th bit service flag in the addr p2p messages (`ADDR` and `ADDRV2`).

==Backward compatibility==

Older clients remain fully compatible and interoperable after this change.

==Implementation==

https://github.com/bitcoin/bitcoin/pull/30572

==Copyright==

This BIP is licensed under the GPLv2.

0 comments on commit 143c993

Please sign in to comment.