Skip to content

Commit 6a8413a

Browse files
author
probelab-cmi
committed
Website daily update for 2024-07-01T09-36-23
1 parent a0af09c commit 6a8413a

35 files changed

+144
-17
lines changed
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
---
2+
title: Week 2024-26
3+
plotly: true
4+
slug: 2024-26
5+
weight: 1045633
6+
---
7+
8+
# Ethereum discv5 weekly report 2024-26
9+
10+
The following results show measurement data that were collected in **calendar week** 26 **of** 2024 from `2024-06-24` to `2024-07-01`.
11+
12+
Our methodology is available [here](../methodology). Note we are only able to display information about dialable nodes, hence nodes operating behind a NAT aren't accounted for, even though they may be connected.
13+
14+
## Agents
15+
16+
### Agent Distribution
17+
18+
This bar chart represents the distribution of various user agents within the Ethereum `discv5` DHT. Each bar corresponds to a different user agent or client type and indicates its relative prevalence within the network for the given reporting period. The chart provides a snapshot of how different Ethereum clients are being utilized in the network's decentralized infrastructure.
19+
20+
{{< plotly json="../../../plots/2024/06/24/discv5-agents-overall.json" height="600px" >}}
21+
22+
This stacked plot shows the distribution of various user agents over time.
23+
24+
{{< plotly json="../../../plots/2024/06/24/discv5-agents-overall-stacked.json" height="600px" >}}
25+
26+
This chart presents the version distribution for all major user agents, with each bar representing the average number of online peers over the course of a week.
27+
28+
{{< plotly json="../../../plots/2024/06/24/discv5-agents-versions.json" height="600px" >}}
29+
30+
This stacked chart illustrates how the distribution of agent versions for all key user agents evolves over time. It offers insights into the uptake of newer versions among these agents.
31+
32+
{{< plotly json="../../../plots/2024/06/24/discv5-versions-distribution.json" height="600px" >}}
33+
34+
## Geolocation
35+
36+
Geographical data is sourced from the [MaxMind database](https://www.maxmind.com), which maps IP addresses to corresponding countries.
37+
38+
This bar plot illustrates the distribution of observed beacon nodes across different countries.
39+
40+
{{< plotly json="../../../plots/2024/06/24/discv5-geo-agent-All-bars.json" height="600px" >}}
41+
42+
This bar plot illustrates the distribution of observed beacon nodes across different countries, broken down for each major user agent.
43+
44+
{{< plotly json="../../../plots/2024/06/24/discv5-geo-agents-bars.json" height="600px" >}}
45+
46+
This plot displays the weekly geographical distribution of beacon nodes, categorized by country.
47+
48+
{{< plotly json="../../../plots/2024/06/24/discv5-geo-agent-All-lines.json" height="600px" >}}
49+
50+
This plot displays the weekly geographical distribution categorized by country, for each major user agent.
51+
52+
{{< plotly json="../../../plots/2024/06/24/discv5-geo-agents-lines.json" height="600px" >}}
53+
54+
## Cloud Providers
55+
56+
Cloud providers data is sourced from [Udger](https://udger.com/resources/datacenter-list), which maps IP addresses to known hosting providers.
57+
58+
### Cloud Hosting Rate
59+
60+
This line chart displays the count of beacon nodes within the Ethereum discv5 network that are hosted on known commercial cloud providers, compared to those that are not. It tracks the distribution over a specified period, offering insights into the infrastructure preferences for node hosting.
61+
62+
Regular analysis of this chart can reveal trends in the adoption of cloud services for beacon nodes. Such information is crucial for understanding the network's resilience and the potential reliance on cloud infrastructure.
63+
64+
{{< plotly json="../../../plots/2024/06/24/discv5-cloud-rate-agent-All-lines.json" height="600px" >}}
65+
66+
This line chart illustrates the number of beacon nodes within the Ethereum discv5 network, hosted by recognized commercial cloud providers, broken down by each major user agent. It provides a user agent-specific view, mirroring the approach of the previously mentioned analysis, to highlight hosting preferences across different user agents.
67+
68+
{{< plotly json="../../../plots/2024/06/24/discv5-cloud-rate-agents.json" height="600px" >}}
69+
70+
This bar chart presents the weekly distribution of Ethereum beacon nodes among various cloud providers, including nodes not hosted within data centers (grouped under _Non-Datacenter_).
71+
72+
{{< plotly json="../../../plots/2024/06/24/discv5-cloud-agent-All-bars.json" height="600px" >}}
73+
74+
This bar chart showcases the weekly distribution of Ethereum beacon nodes across different cloud providers, broken down for each major user agent.
75+
76+
{{< plotly json="../../../plots/2024/06/24/discv5-cloud-agents-bars.json" height="600px" >}}
77+
78+
The line chart illustrates the trends in the distribution of all Ethereum beacon nodes across cloud providers over the given time period. Note that nodes hosted outside of data centers are not included in this representation.
79+
80+
{{< plotly json="../../../plots/2024/06/24/discv5-cloud-agent-All-lines.json" height="600px" >}}
81+
82+
The line chart illustrates the trends in the distribution of Ethereum beacon nodes by agent across cloud providers over the given time period. Note that nodes hosted outside of data centers are not included in this representation.
83+
84+
{{< plotly json="../../../plots/2024/06/24/discv5-cloud-agents-lines.json" height="600px" >}}
85+
86+
## Stale Node Records
87+
88+
### All `discv5` peers
89+
90+
This stacked plot depicts the count of node records stored within each node's routing table and made accessible through the DHT. These node records serve as a mechanism through which nodes discover new remote nodes in the network.
91+
92+
Ensuring the reachability of referenced nodes shared within the network holds paramount importance. The plot delineates the occurrences of reachable and non-reachable (stale) node records. Note that nodes running behind a NAT are counted as unreachable even though they may be online.
93+
94+
For instance, if a node's record is present in the routing tables of 100 other nodes and the node is reachable, the plot will reflect an increase of 100 in the _online_ category.
95+
96+
This plot displays data about all nodes participating in `discv5` and isn't limited to Ethereum mainnet nodes.
97+
98+
{{< plotly json="../../../plots/2024/06/24/discv5-stale-records-stacked.json" height="600px" >}}
99+
100+
### Ethereum mainnet
101+
102+
This plot is similar to the above but only displays the number of Ethereum mainnet (Deneb) records found in the routing table of other Ethereum mainnet (Deneb) nodes.
103+
104+
{{< plotly json="../../../plots/2024/06/24/discv5-stale-records-mainnet-stacked.json" height="600px" >}}
105+
106+
## Protocols
107+
108+
This plot illustrates the evolving count of nodes supporting each of the listed protocols over time. It exclusively presents data gathered from nodes accessible through a libp2p connection via our crawler. The identification of supported protocols relies on the [libp2p identify protocol](https://github.com/libp2p/specs/tree/master/identify), hence necessitating a libp2p connection for discovery.
109+
110+
{{< plotly json="../../../plots/2024/06/24/discv5-crawl-protocols.json" height="1200px" >}}

content.en/plots/2024/06/24/discv5-agents-overall-stacked.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"data": [{"hovertemplate": "Agent: %{x} <br>Count: %{y:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#4c72b0", "#dd8452", "#55a868", "#937860", "#c44e52", "#64b5cd"]}, "text": ["40.3%", "35.0%", "17.8%", "3.0%", "2.7%", "1.2%"], "textposition": "outside", "x": ["Lighthouse", "Prysm", "teku", "lodestar", "nimbus", "others"], "y": [3462, 3001, 1529, 260, 229, 99], "type": "bar"}], "layout": {"template": {"data": {"scatter": [{"type": "scatter"}]}}, "xaxis": {"title": {"text": "Agent"}, "tickangle": -45}, "yaxis": {"title": {"text": "Count"}, "tickformat": ","}, "autosize": true, "annotations": [{"font": {"size": 18}, "showarrow": false, "text": "Agent Types", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.1, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 14}, "showarrow": false, "text": "Total Count: 8,580", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.04, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 10}, "showarrow": false, "text": "Data: week ending 30 Jun 2024. Source: Nebula", "x": 0.99, "xanchor": "right", "xref": "paper", "y": -0.14, "yanchor": "top", "yref": "paper"}]}}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"data": [{"hovertemplate": "Version: %{y} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#4c72b0", "#4c72b0", "#4c72b0", "#4c72b0"]}, "name": "Lighthouse", "orientation": "h", "text": ["0.0%", "5.2%", "60.3%", "34.5%"], "textposition": "outside", "visible": true, "x": [0, 179, 2088, 1194], "y": ["others", "v5.0", "v5.1", "v5.2"], "type": "bar"}, {"hovertemplate": "Version: %{y} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#dd8452", "#dd8452"]}, "name": "Prysm", "orientation": "h", "text": ["1.3%", "98.7%"], "textposition": "outside", "visible": "legendonly", "x": [40, 2960], "y": ["others", "v5.0"], "type": "bar"}, {"hovertemplate": "Version: %{y} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#55a868", "#55a868", "#55a868", "#55a868", "#55a868"]}, "name": "teku", "orientation": "h", "text": ["0.5%", "29.9%", "17.0%", "27.6%", "24.9%"], "textposition": "outside", "visible": "legendonly", "x": [8, 457, 260, 422, 380], "y": ["others", "v24.2", "v24.3", "v24.4", "v24.6"], "type": "bar"}, {"hovertemplate": "Version: %{y} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#937860", "#937860", "#937860", "#937860"]}, "name": "lodestar", "orientation": "h", "text": ["2.7%", "15.9%", "24.0%", "57.4%"], "textposition": "outside", "visible": "legendonly", "x": [7, 41, 62, 148], "y": ["v1.16", "v1.17", "v1.18", "v1.19"], "type": "bar"}], "layout": {"template": {"data": {"scatter": [{"type": "scatter"}]}}, "xaxis": {"title": {"text": "Count"}, "tickformat": ",", "range": [0, 2296.8]}, "yaxis": {"title": {"text": "Version"}}, "updatemenus": [{"buttons": [{"args": [{"visible": [true, false, false, false]}, {"xaxis": {"range": [0, 2296.8]}, "annotations": [{"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "Lighthouse Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.04, "xref": "paper", "yref": "paper", "text": "Total Count: 3,461", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 30 Jun 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "Lighthouse", "method": "update"}, {"args": [{"visible": [false, true, false, false]}, {"xaxis": {"range": [0, 3256.0000000000005]}, "annotations": [{"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "Prysm Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.04, "xref": "paper", "yref": "paper", "text": "Total Count: 3,000", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 30 Jun 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "Prysm", "method": "update"}, {"args": [{"visible": [false, false, true, false]}, {"xaxis": {"range": [0, 502.70000000000005]}, "annotations": [{"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "teku Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.04, "xref": "paper", "yref": "paper", "text": "Total Count: 1,527", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 30 Jun 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "teku", "method": "update"}, {"args": [{"visible": [false, false, false, true]}, {"xaxis": {"range": [0, 162.8]}, "annotations": [{"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "lodestar Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.04, "xref": "paper", "yref": "paper", "text": "Total Count: 258", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 30 Jun 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "lodestar", "method": "update"}], "direction": "down", "pad": {"r": 10, "t": 10}, "showactive": true, "x": 0.01, "xanchor": "left", "y": 1.15, "yanchor": "top"}], "autosize": true, "showlegend": false, "annotations": [{"font": {"size": 18}, "showarrow": false, "text": "Lighthouse Agent Versions", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.1, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 14}, "showarrow": false, "text": "Total Count: 3,461", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.04, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 10}, "showarrow": false, "text": "Data: week ending 30 Jun 2024. Source: Nebula", "x": 0.99, "xanchor": "right", "xref": "paper", "y": -0.14, "yanchor": "top", "yref": "paper"}]}}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"data": [{"hovertemplate": "Cloud Provider: %{x}<br>Count: %{y:,}<br>Percentage: %{text}<br><extra></extra>", "text": ["51.1%", "11.6%", "11.2%", "5.4%", "2.9%", "2.6%", "1.6%", "1.3%", "1.3%", "0.8%", "0.6%", "0.6%", "9.1%"], "textposition": "outside", "x": ["Non-Datacenter", "Amazon AWS", "Grier Forensics", "Amanah Tech Inc", "Hetzner Online", "Njalla (1337 Services LLC)", "OVH", "Global Data Service JSC", "nine.ch", "Google Cloud", "Microsoft Corporation", "Devel.cz Lab s.r.o.", "others"], "y": [4449, 1011, 974, 473, 248, 228, 136, 112, 111, 66, 51, 51, 788], "type": "bar"}], "layout": {"template": {"data": {"scatter": [{"type": "scatter"}]}}, "xaxis": {"title": {"text": "Cloud Provider"}, "tickangle": -20}, "yaxis": {"title": {"text": "Count"}, "rangemode": "tozero"}, "annotations": [{"font": {"size": 18}, "showarrow": false, "text": "Cloud Distribution of All Nodes", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.1, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 14}, "showarrow": false, "text": "Total: 8,705", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.04, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 10}, "showarrow": false, "text": "Data: week ending 30 Jun 2024. Source: Nebula", "x": 0.99, "xanchor": "right", "xref": "paper", "y": -0.14, "yanchor": "top", "yref": "paper"}]}}

content.en/plots/2024/06/24/discv5-cloud-agent-All-lines.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)