.
chaincountdown v18
HZ peer network - analysisOnce the above crawler was ready, a natural next step was to make a
network graph from the collected data.
This is how it looks:
Two
nodes (green spheres) are connected with
edges (gray lines) if they call each other 'peers'.
The more peers a node has (that is called the
degree of a node), the bigger its sphere.
Strange shape, isn't it?
The network is very dense, so most nodes end up drawn into one big ball.
But those which are not, were catching my attention. Irregularities are interesting.
I tried an automatic
clustering algorithm (i.e. "color nodes equal which are similar"),
called
Louvain communities, and those nodes on the top right are clearly recognized
to be different from the all other ones:
You also see some quantitative measurements of network properties. For example:
"Path length" means how many steps a transaction needs from one node to another one.
"Diameter=4" says, it takes maximum 4 steps for a transaction to reach any other node,
and "characteristic path length" that on average only 1.769 steps.
The "Number of shared neighbors" is interesting. Many nodes are almost copies to each other.
But back to the question ... what is making those nodes at the top right so
different, that they are drawn so far out of the main bulk? Ah ... idea:
I checked for the
HZ version ("NHZ V5.4") of each node, and colored them:
And now it was all clear:
The nodes on the top right ... should be -but have not been- updated :-)The mainstream (yellow) nodes do not like nostalgic, old-fashioned nodes - and do not connect to them.
The three V5 versions are mixing well, the network graph is showing that too.
Riddle solved.By the way, here is the first picture with which I realized that I had probably hit the right reason:
The placement of the nodes is a bit artificial, it uses a "optimize inside clusters only" layouting.
But it gives immediate feedback that coloring ("NHZ versions") has something to do with graph structure.
The "NHZ 4.0e" version still has a lot of fans
(RED nodes).
... Anyways, back on track:
Now I dropped all older-than-V5 nodes from the picture - and 160 IP addresses remained:
As they are hyperconnected, with many more links between them than needed
(diameter 2, average path length 1.722, average peers 44.225 / 159 = 28% of all nodes)
it is very difficult to get a meaningful
automatic layout.
What I employed is the automatic partitioning "BlockModelling" by "Structural Equivalence"
... which identified 7 nodes (blue) to be different from all the other >150 ones.
They also seem to be the ones with the largest degree. I placed them manually.
At the bottom right you see a (log-log) histogram of degree versus number-of-such-nodes.
That's it, for now.
A typical next question of network analysis would be "resilience":
* ... against random failure: How many nodes have to fail until the network is fragmenting.
* ... against attacks: How many of the most connected nodes have to fail, until the network is fragmenting.
That can be examined in numerical simulations. Perhaps you want to try, then all network files are
here ...
That was a really enjoyable, geeky weekend. What had started as a short & simple
user question "your image server is down" ... evolved into a whole research project.
Fascinating, no?
If that was entertaining, enlightening, cool, or simply ... interesting
- then please now consider a way to give back. Thanks. You're good.