Bitcoin Forum
April 24, 2024, 10:23:16 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: BIP 35 - mempool command  (Read 815 times)
jgarzik (OP)
Legendary
*
qt
Offline Offline

Activity: 1596
Merit: 1091


View Profile
August 16, 2012, 05:51:05 PM
 #1

URL: https://en.bitcoin.it/wiki/BIP_0035

    

Abstract

Make a network node's transaction memory pool accessible via a new "mempool" message. Extend the existing "getdata" message behavior to permit accessing the transaction memory pool.

Motivation

Several use cases make it desireable to expose a network node's transaction memory pool:

  • SPV clients, wishing to obtain zero-confirmation transactions sent or received.
  • Miners, to avoid missing lucrative fees, downloading existing network transactions after a restart.
  • Remote network diagnostics.

Specification

  • The mempool message is defined as an empty message where pchCommand == "mempool"
  • Upon receipt of a "mempool" message, the node will respond with an "inv" message containing MSG_TX hashes of all the transactions in the node's transaction memory pool. An "inv" message is always returned, even if empty.
  • The typical node behavior in response to an "inv" is "getdata". However, the reference Satoshi implementation ignores requests for transaction hashes outside that which is recently relayed. To support "mempool", an implementation must extend its "getdata" message support to querying the memory pool.
  • Feature discovery is enabled by checking two "version" message attributes:
    • Protocol version >= 60002
    • NODE_NETWORK bit set in nServices

Note that existing implementations drop "inv" messages with a vector size > 50000.

Backward compatibility

Older clients remain 100% compatible and interoperable after this change.

Implementation

URL: https://github.com/bitcoin/bitcoin/pull/1641

Discussion

See the bitcoin-development list on sourceforge.



Jeff Garzik, Bloq CEO, former bitcoin core dev team; opinions are my own.
Visit bloq.com / metronome.io
Donations / tip jar: 1BrufViLKnSWtuWGkryPsKsxonV2NQ7Tcj
1713954196
Hero Member
*
Offline Offline

Posts: 1713954196

View Profile Personal Message (Offline)

Ignore
1713954196
Reply with quote  #2

1713954196
Report to moderator
1713954196
Hero Member
*
Offline Offline

Posts: 1713954196

View Profile Personal Message (Offline)

Ignore
1713954196
Reply with quote  #2

1713954196
Report to moderator
1713954196
Hero Member
*
Offline Offline

Posts: 1713954196

View Profile Personal Message (Offline)

Ignore
1713954196
Reply with quote  #2

1713954196
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713954196
Hero Member
*
Offline Offline

Posts: 1713954196

View Profile Personal Message (Offline)

Ignore
1713954196
Reply with quote  #2

1713954196
Report to moderator
Pieter Wuille
Legendary
*
qt
Offline Offline

Activity: 1072
Merit: 1174


View Profile WWW
August 16, 2012, 06:59:51 PM
 #2

In particular, see http://sourceforge.net/mailarchive/forum.php?thread_name=1345141255.96175.YahooMailNeo%40web121001.mail.ne1.yahoo.com&forum_name=bitcoin-development for the discussion on the mailing list.

I do Bitcoin stuff.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!