7

I have my Core 0.13.1 node configured to connect to 16 nodes, and invariably I see it connected only to other 0.13.1 nodes, even though, according to bitnodes leaderboard, these nodes form a minority.

Why is the selection logic this restrictive?

I am also noticing my 0.13.1 node that accepts incoming connecting as relatively overloaded I/O-wise since it upgraded.

I can understand this selection logic being necessary once SegWit activates, but why already, given we don't know yet whether SegWit will activate?

Related: https://github.com/bitcoin/bitcoin/issues/9072

  • I think I've had a few other nodes connected to mine yesterday, but I've also had the impression that it takes much longer to get incoming connections and when my node starts up, it almost immediately only has 0.13.1 and 0.13.99 nodes connected to it. – So, it seems likely that there is a strong preferential connecting, but not an exclusive connecting to 0.13.X clients. – Murch Nov 4 '16 at 13:19
3

Bitcoin Core 0.13.1 preferentially maintains at least 4 outgoing peers that advertise NODE_WITNESS support to avoid being partitioned. You are not only connecting to these nodes, more than 4 outgoing peers is coincidental or caused by those being other peers you recently connected to.

even though, according to bitnodes leaderboard, these nodes form a minority.

Bitnodes only shows peers with listening sockets available. There is an unknown, greater number of nodes in existence which do not listen on a public port and will not be part of that leaderboard, but will connect to you. The preferential peering is exacerbating that effect, but is completely necessary.

  • Pull 8949 might give the impression in the wording or in the code that it is only 4, but in reality it is 100% as the 4 connections that are not forced to be 0.13.1 are eventually dropped and replaced with forced 0.13.1 nodes since the logic is such that once 4 connections are reached - it can connect only to other 0.13.1 nodes. – Edmund Broadley Dec 1 '16 at 15:58
  • That's not what the logic does. – Anonymous Dec 27 '16 at 21:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.