user1221: 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

user24925: 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. 

1221: <p>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.</p>

<p>Why is the selection logic this restrictive?</p>

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

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

<p>Related: <a href="https://github.com/bitcoin/bitcoin/issues/9072" rel="nofollow noreferrer">https://github.com/bitcoin/bitcoin/issues/9072</a></p>
 24925: <p>Bitcoin Core 0.13.1 <a href="https://github.com/bitcoin/bitcoin/pull/8949" rel="nofollow noreferrer">preferentially maintains at least 4 outgoing peers</a> that advertise <code>NODE_WITNESS</code> 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.</p>

<blockquote>
  <p>even though, according to bitnodes leaderboard, these nodes form a minority.</p>
</blockquote>

<p>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. </p>
