Package Relay transmet entre nœuds des transactions non confirmées liées, permettant d’évaluer ensemble parent et enfant pour leur admission dans le mempool. Transport, politique locale d’admission et sélection du mineur sont des étapes distinctes ; le paquet ne change pas la validité de consensus des transactions individuelles.
Un parent au taux de frais faible peut être rejeté avant que le nœud voie l’enfant aux frais plus élevés. CPFP n’offre une incitation économique que si les transactions nécessaires atteignent le mineur. Package Relay aide à combler cette lacune de transmission ; il ne remplace ni les signatures ni la validation des entrées. [BIP 331 — Ancestor Package Relay]
Un parent illustratif fait 200 vB et paie 200 sat ; l’enfant fait 100 vB et paie 1300 sat. Ensemble, ils paient 1500 / 300 = 5 sat/vB, pas la moyenne des taux individuels de 1 et 13. L’exemple suppose exactement ces deux transactions non confirmées sans autre ancêtre ; l’admission réelle dépend aussi de la politique du nœud et des conflits. [BIP 331 — Ancestor Package Relay]
L’enfant dépense une sortie du parent. Dans une liste triée topologiquement, les parents doivent précéder les enfants ; des frais élevés ne corrigent ni les ancêtres manquants ni les dépenses incompatibles. Les limites de taille, de nombre et de forme du paquet protègent les ressources du nœud et ne sont pas des paramètres universels de consensus. [Bitcoin Core 28.0 — submitpackage]
BIP 331 décrit la négociation du support et des messages spécifiques pour les informations sur les ancêtres et le téléchargement des transactions. Bitcoin Core 28.0 a, lui, documenté un appariement opportuniste limité d’un parent et d’un enfant via le protocole de relais existant. Plusieurs parents autorisés par le RPC local n’impliquent pas le même support P2P ; ces précisions décrivent la version 28.0, sans promesse pour chaque version ou pair. [BIP 331 — Ancestor Package Relay] [Bitcoin Core 28.0 — release notes]
submitpackage 28.0 valide et soumet les transactions au nœud local. Examinez package_msg et chaque tx-results : l’opération peut accepter une partie du paquet, sans tout annuler atomiquement en cas d’échec. Même un succès complet ne prouve pas que les voisins l’ont accepté ou qu’un mineur l’inclura à temps. [Bitcoin Core 28.0 — submitpackage]
Dans un environnement de test séparé, notez version, réglages du mempool, ordre des dépendances, tailles et frais. testmempoolaccept vérifie sans diffuser ; son résultat n’est pas une garantie pour submitpackage. Observez aussi l’admission sur un autre nœud. Les transactions Lightning urgentes nécessitent toujours une marge : le support des paquets n’élimine à lui seul ni le pinning, ni la congestion, ni les retards de blocs. [Bitcoin Core 28.0 — testmempoolaccept] [Bitcoin Core 28.0 — release notes]
Pour une vision complète, lisez aussi Mempool, CPFP (Child Pays for Parent), Fee Rate, Replace-by-Fee (RBF), Lightning Network. Cette entrée est également citée par CPFP (Child Pays for Parent), Gloria Zhao.