[bitcoin-dev] Planned Obsolescence

jg at 112bit.com jg at 112bit.com
Thu Dec 15 03:38:09 UTC 2016


Today according to the stats at https://bitnodes.21.co/nodes/ the top 10 
Bitcoin running node versions are:

1.
_Version Satoshi:0.13.1
_Nodes 2071
_38.97%


2.
_Version Satoshi:0.12.1
_Nodes 1022
_19.23%


3.
Satoshi:0.13.0
_Nodes 604
_11.36%


4.
Bitcoin Unlimited:0.12.1
_Nodes 373
_7.02%


5.
Satoshi:0.11.2
_Nodes 183
_3.44%


6.
Satoshi:0.12.0
_Nodes 131
_2.46%


7. Satoshi:0.13.99
_Nodes 122
_2.30%


8.
Satoshi:0.11.0
_Nodes 87
_1.64%


9.
BTCC:0.13.1
_Nodes 53
_1.00%


10.
Satoshi:0.10.2
_Nodes 52
_0.98%


Other
_Nodes 617
_11.61%


There are 75 different versions of visible nodes on the network.

More than 30% of the nodes running Bitcoin Core are running versions 
older than 0.13.0.

For reasons I am unable to determine a significant number of node 
operators do not upgrade their clients.

I also know newer versions require the same or fewer hardware resources 
to run than the same network requirements as older versions of the 
client.

Older node versions may generate issues because some upgrades will make 
several of the nodes running older protocol versions obsolete and or 
incompatible. There may be other hard to predict behaviors on older 
versions of the client.

In order to avoid such wide fragmentation of "Bitcoin Core” node 
versions and to help there be a more predictable protocol improvement 
process, I consider it worth it to analyze introducing some planned 
obsolescence in each new version. In the last year we had 4 new versions 
so if each version is valid for about 1 year (52560 blocks) this may be 
a reasonable time frame for node operators to upgrade. If a node does 
not upgrade it will stop working instead of participating in the network 
with an outdated protocol version.

These changes may also simplify the developer's jobs in some cases by 
avoiding them having to deal with ancient versions of the client.

Regards
Juan Garavaglia


More information about the bitcoin-dev mailing list