Pieter Wuille [ARCHIVE] on Nostr: 📅 Original date posted:2012-08-16 📝 Original message:On Thu, Aug 16, 2012 at ...
📅 Original date posted:2012-08-16
📝 Original message:On Thu, Aug 16, 2012 at 01:32:04PM -0400, Jeff Garzik wrote:
> Consensus was we should do a BIP for all P2P changes, so here it is...
> feedback requested.
>
> https://en.bitcoin.it/wiki/BIP_0035
I like the idea of being able to query the memory pool of a node; the
implementation is straightforward, which is good. Maybe effectively using the
command can be added? I suppose it is interesting in general for nodes to
get a memory pool refill at startup anyway.
> 1) 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.
I'm not sure about this last. What is it good for? inv packets can always be
sent, even not in response to others, so it is not that this gives you an
acknowledgement the mempool is updated?
> 3) Feature discovery is enabled by checking two "version" message attributes:
>
> a) Protocol version >= 60002
> b) NODE_NETWORK bit set in nServices
This seems safe, although it forces other full implementations that want to
expose protocol version 60002 (or later) to also implement this. What do they
think about this?
I would like to suggest to allocate an extra service bit for this. We still
have 63 left, and this is a well-defined and useful extra service that was
not yet provided by any earlier node. Doing that would also mean that
mempool-providing survices may be discovered before connecting to them, as
the service bits are carried around in addr messages. Any opinions about that?
--
Pieter
📝 Original message:On Thu, Aug 16, 2012 at 01:32:04PM -0400, Jeff Garzik wrote:
> Consensus was we should do a BIP for all P2P changes, so here it is...
> feedback requested.
>
> https://en.bitcoin.it/wiki/BIP_0035
I like the idea of being able to query the memory pool of a node; the
implementation is straightforward, which is good. Maybe effectively using the
command can be added? I suppose it is interesting in general for nodes to
get a memory pool refill at startup anyway.
> 1) 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.
I'm not sure about this last. What is it good for? inv packets can always be
sent, even not in response to others, so it is not that this gives you an
acknowledgement the mempool is updated?
> 3) Feature discovery is enabled by checking two "version" message attributes:
>
> a) Protocol version >= 60002
> b) NODE_NETWORK bit set in nServices
This seems safe, although it forces other full implementations that want to
expose protocol version 60002 (or later) to also implement this. What do they
think about this?
I would like to suggest to allocate an extra service bit for this. We still
have 63 left, and this is a well-defined and useful extra service that was
not yet provided by any earlier node. Doing that would also mean that
mempool-providing survices may be discovered before connecting to them, as
the service bits are carried around in addr messages. Any opinions about that?
--
Pieter