-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
- Loading branch information
There are no files selected for viewing
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"data": [{"hovertemplate": "Agent: %{x} <br>Count: %{y:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#8c8c8c", "#8172b3", "#55a868", "#dd8452", "#c44e52", "#937860", "#c44e52", "#4c72b0"]}, "name": "Non-Validator", "text": ["45.8%", "17.2%", "13.5%", "6.4%", "3.5%", "3.4%", "3.3%", "1.2%"], "textposition": "outside", "x": ["parity polkadot", "moonbeam parachain collator", "tanssi collator", "polkadot parachain", "manta", "astar collator", "others", "acala parachain collator"], "y": [816, 307, 241, 114, 63, 60, 59, 22], "type": "bar", "visible": true}, {"hovertemplate": "Agent: %{x} (Validator)<br>Count: %{y:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#8c8c8c"]}, "name": "Validator", "text": ["5.7%"], "textposition": "outside", "x": ["parity polkadot"], "y": [101], "type": "bar", "visible": false}], "layout": {"template": {"data": {"scatter": [{"type": "scatter"}]}}, "showlegend": false, "autosize": true, "updatemenus": [{"buttons": [{"args": [{"visible": [true, false]}], "label": "Non-Validators", "method": "update"}, {"args": [{"visible": [false, true]}], "label": "Validators", "method": "update"}], "direction": "down"}], "xaxis": {"title": {"text": "Agent"}}, "yaxis": {"title": {"text": "Count"}}, "annotations": [{"font": {"size": 18}, "showarrow": false, "text": "Agent Types", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.15, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 14}, "showarrow": false, "text": "Total Count: 1,783", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.1, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 10}, "showarrow": false, "text": "Data: week ending 20 Oct 2024. Source: Nebula", "x": 0.99, "xanchor": "right", "xref": "paper", "y": -0.14, "yanchor": "top", "yref": "paper"}]}} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"data": [{"customdata": ["others", "v1.12.0 b4016902ac7", "v1.14.1 7c4cd60da6d", "v1.15.1 16b0fd09d9e", "v1.15.2 d6f482d5593", "v1.16.0 87971b3e927", "v1.16.0 87971b3e927 (validator)"], "hovertemplate": "Version: %{customdata} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#8c8c8c", "#8c8c8c", "#8c8c8c", "#8c8c8c", "#8c8c8c", "#8c8c8c", "#8c8c8c"]}, "name": "parity polkadot", "orientation": "h", "text": ["6.7%", "2.5%", "3.2%", "2.3%", "6.6%", "69.7%", "9.1%"], "textposition": "outside", "visible": true, "x": [61, 23, 29, 21, 60, 638, 83], "y": ["others", "v1.12.0<br>b4016902ac7", "v1.14.1<br>7c4cd60da6d", "v1.15.1<br>16b0fd09d9e", "v1.15.2<br>d6f482d5593", "v1.16.0<br>87971b3e927", "v1.16.0<br>87971b3e927 (validator)"], "type": "bar"}, {"customdata": ["v0.39.0 20ba7fe5809", "v0.39.1 dcb449dafaf", "v0.40.0 30e29c4c2d0", "v0.40.1 e23e6874495", "v0.41.0 168350bb67c"], "hovertemplate": "Version: %{customdata} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#8172b3", "#8172b3", "#8172b3", "#8172b3", "#8172b3"]}, "name": "moonbeam parachain collator", "orientation": "h", "text": ["4.6%", "19.7%", "13.1%", "35.4%", "27.2%"], "textposition": "outside", "visible": "legendonly", "x": [14, 60, 40, 108, 83], "y": ["v0.39.0<br>20ba7fe5809", "v0.39.1<br>dcb449dafaf", "v0.40.0<br>30e29c4c2d0", "v0.40.1<br>e23e6874495", "v0.41.0<br>168350bb67c"], "type": "bar"}, {"customdata": ["others", "v0.7.0 9aa816843d1", "v0.8.1 cd9987acb46"], "hovertemplate": "Version: %{customdata} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#55a868", "#55a868", "#55a868"]}, "name": "tanssi collator", "orientation": "h", "text": ["1.2%", "4.6%", "94.2%"], "textposition": "outside", "visible": "legendonly", "x": [3, 11, 226], "y": ["others", "v0.7.0<br>9aa816843d1", "v0.8.1<br>cd9987acb46"], "type": "bar"}, {"customdata": ["others", "v0.1.26 399a7ef7c3e", "v0.1.28 760cf7556ee", "v1.14.1 7c4cd60da6d", "v1.15.2 d6f482d5593", "v1.15.3 69c31908042", "v1.16.0 87971b3e927"], "hovertemplate": "Version: %{customdata} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#dd8452", "#dd8452", "#dd8452", "#dd8452", "#dd8452", "#dd8452", "#dd8452"]}, "name": "polkadot parachain", "orientation": "h", "text": ["0.9%", "12.5%", "14.3%", "5.4%", "9.8%", "3.6%", "53.6%"], "textposition": "outside", "visible": "legendonly", "x": [1, 14, 16, 6, 11, 4, 60], "y": ["others", "v0.1.26<br>399a7ef7c3e", "v0.1.28<br>760cf7556ee", "v1.14.1<br>7c4cd60da6d", "v1.15.2<br>d6f482d5593", "v1.15.3<br>69c31908042", "v1.16.0<br>87971b3e927"], "type": "bar"}, {"customdata": ["v5.42.2 d243148e781", "v5.43.0 3ab689e2a10", "v5.43.1 77a50ac5580", "v5.44.0 1f21fe5d2bd"], "hovertemplate": "Version: %{customdata} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#937860", "#937860", "#937860", "#937860"]}, "name": "astar collator", "orientation": "h", "text": ["17.2%", "22.4%", "25.9%", "34.5%"], "textposition": "outside", "visible": "legendonly", "x": [10, 13, 15, 20], "y": ["v5.42.2<br>d243148e781", "v5.43.0<br>3ab689e2a10", "v5.43.1<br>77a50ac5580", "v5.44.0<br>1f21fe5d2bd"], "type": "bar"}, {"customdata": ["others", "v2.25.0 eb961734875"], "hovertemplate": "Version: %{customdata} <br>Count: %{x:,}<br>Percentage: %{text}<br><extra></extra>", "marker": {"color": ["#4c72b0", "#4c72b0"]}, "name": "acala parachain collator", "orientation": "h", "text": ["47.6%", "52.4%"], "textposition": "outside", "visible": "legendonly", "x": [10, 11], "y": ["others", "v2.25.0<br>eb961734875"], "type": "bar"}], "layout": {"template": {"data": {"scatter": [{"type": "scatter"}]}}, "xaxis": {"title": {"text": "Count"}, "tickformat": ",", "range": [0, 701.8000000000001]}, "yaxis": {"title": {"text": "Version"}}, "autosize": true, "showlegend": false, "annotations": [{"font": {"size": 18}, "showarrow": false, "text": "parity polkadot Agent Versions", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.15, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 14}, "showarrow": false, "text": "Total Count: 915", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.1, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 10}, "showarrow": false, "text": "Data: week ending 20 Oct 2024. Source: Nebula", "x": 0.99, "xanchor": "right", "xref": "paper", "y": -0.14, "yanchor": "top", "yref": "paper"}], "updatemenus": [{"buttons": [{"args": [{"visible": [true, false, false, false, false, false]}, {"xaxis": {"range": [0, 701.8000000000001]}, "annotations": [{"x": 0.5, "y": 1.15, "xref": "paper", "yref": "paper", "text": "parity polkadot Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "Total Count: 915", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 20 Oct 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "parity polkadot", "method": "update"}, {"args": [{"visible": [false, true, false, false, false, false]}, {"xaxis": {"range": [0, 118.80000000000001]}, "annotations": [{"x": 0.5, "y": 1.15, "xref": "paper", "yref": "paper", "text": "moonbeam parachain collator Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "Total Count: 305", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 20 Oct 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "moonbeam parachain collator", "method": "update"}, {"args": [{"visible": [false, false, true, false, false, false]}, {"xaxis": {"range": [0, 248.60000000000002]}, "annotations": [{"x": 0.5, "y": 1.15, "xref": "paper", "yref": "paper", "text": "tanssi collator Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "Total Count: 240", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 20 Oct 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "tanssi collator", "method": "update"}, {"args": [{"visible": [false, false, false, true, false, false]}, {"xaxis": {"range": [0, 66.0]}, "annotations": [{"x": 0.5, "y": 1.15, "xref": "paper", "yref": "paper", "text": "polkadot parachain Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "Total Count: 112", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 20 Oct 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "polkadot parachain", "method": "update"}, {"args": [{"visible": [false, false, false, false, true, false]}, {"xaxis": {"range": [0, 22.0]}, "annotations": [{"x": 0.5, "y": 1.15, "xref": "paper", "yref": "paper", "text": "astar collator Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "Total Count: 58", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 20 Oct 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "astar collator", "method": "update"}, {"args": [{"visible": [false, false, false, false, false, true]}, {"xaxis": {"range": [0, 12.100000000000001]}, "annotations": [{"x": 0.5, "y": 1.15, "xref": "paper", "yref": "paper", "text": "acala parachain collator Agent Versions", "showarrow": false, "font": {"size": 18}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.5, "y": 1.1, "xref": "paper", "yref": "paper", "text": "Total Count: 21", "showarrow": false, "font": {"size": 14}, "xanchor": "center", "yanchor": "bottom"}, {"x": 0.99, "y": -0.14, "xref": "paper", "yref": "paper", "text": "Data: week ending 20 Oct 2024. Source: Nebula", "showarrow": false, "font": {"size": 10}, "xanchor": "right", "yanchor": "top"}]}], "label": "acala parachain collator", "method": "update"}], "direction": "down", "pad": {"r": 10, "t": 10}, "showactive": true, "x": 0.01, "xanchor": "left", "y": 1.15, "yanchor": "top"}]}} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"data": [{"hovertemplate": "Cloud Provider: %{x}<br>Count: %{y:,}<br>Percentage: %{text}<br><extra></extra>", "text": ["42.9%", "8.1%", "7.3%", "5.9%", "3.8%", "3.2%", "2.8%", "2.0%", "2.0%", "1.3%", "1.3%", "1.3%", "18.2%"], "textposition": "outside", "x": ["Non-Datacenter", "https://njal.la/", "https://www.grierforensics", "http://www.ovh.com/", "https://www.hetzner.com/", "https://www.amanah.com/", "https://aws.amazon.com/", "http://www.comtrance.net/", "http://www.gds.vn/", "https://cloud.google.com/", "https://www.ubiquityhostin", "http://www.manageddatasolu", "others"], "y": [935, 175, 159, 128, 82, 69, 60, 43, 42, 28, 28, 27, 397], "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.15, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 14}, "showarrow": false, "text": "Total: 2,180", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.1, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 10}, "showarrow": false, "text": "Data: week ending 20 Oct 2024. Source: Nebula", "x": 0.99, "xanchor": "right", "xref": "paper", "y": -0.14, "yanchor": "top", "yref": "paper"}]}} |
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"data": [{"hovertemplate": "Country: %{x}<br>Count: %{y:,}<br>Percentage: %{text}<br><extra></extra>", "text": ["17.7%", "15.1%", "14.6%", "12.0%", "8.4%", "6.3%", "3.1%", "3.0%", "2.7%", "2.4%", "1.5%", "1.3%", "12.1%"], "textposition": "outside", "x": ["DE", "US", "multi", "FR", "GB", "CA", "NL", "PL", "CH", "SG", "JP", "SE", "others"], "y": [383, 326, 316, 259, 183, 135, 66, 64, 58, 51, 32, 28, 262], "type": "bar"}], "layout": {"template": {"data": {"scatter": [{"type": "scatter"}]}}, "xaxis": {"title": {"text": "Country"}, "tickangle": -45}, "yaxis": {"title": {"text": "Count"}, "autorange": true, "rangemode": "tozero"}, "autosize": true, "annotations": [{"font": {"size": 18}, "showarrow": false, "text": "Country Distribution of All Nodes", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.15, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 14}, "showarrow": false, "text": "Total: 2,171", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.1, "yanchor": "bottom", "yref": "paper"}, {"font": {"size": 10}, "showarrow": false, "text": "Data: week ending 20 Oct 2024. Source: Nebula", "x": 0.99, "xanchor": "right", "xref": "paper", "y": -0.14, "yanchor": "top", "yref": "paper"}]}} |
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,108 @@ | ||
--- | ||
title: Week 2024-42 | ||
plotly: true | ||
slug: 2024-42 | ||
weight: 1045617 | ||
--- | ||
|
||
# Polkadot Report Cal. Week 42 - 2024 | ||
|
||
## General Information | ||
|
||
The following results show measurement data that were collected in calendar week 42 in 2024 from `2024-10-14` to `2024-10-21`. | ||
|
||
- Number of crawls `336` | ||
- Number of visits `7,007,797` | ||
> Visiting a peer means dialing or connecting to it. Every time the crawler or monitoring process tries to dial or connect to a peer we consider this as _visiting_ it. Regardless of errors that may occur. | ||
- Number of unique peer IDs visited `10,647` | ||
- Number of unique peer IDs discovered in the DHT `10,246` | ||
- Number of unique IP addresses found `13,115` | ||
|
||
Timestamps are in UTC if not mentioned otherwise. | ||
|
||
## Agents | ||
|
||
### Agent Distribution | ||
|
||
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. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-agents-overall.json" height="600px" >}} | ||
|
||
This stacked plot shows the distribution of various user agents over time. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-agents-overall-stacked.json" height="600px" >}} | ||
|
||
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. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-agents-versions.json" height="600px" >}} | ||
|
||
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. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-versions-distribution.json" height="600px" >}} | ||
|
||
|
||
## Churn Analysis | ||
|
||
This visualizes the uptime of peers over a specific period of time. The plot may display trends in churn rate, distribution of uptime periods, or patterns in peer activity. It helps analyze the stability and reliability of the network by identifying fluctuations in peer participation and examining potential factors influencing churn. | ||
|
||
> 💡 Due to the diversity of Polkadot agents and agent versions, we've only included agents that have more than 50 peers. | ||
{{< plotly json="/plots/2024/10/14/polkadot-plot-churn.json" height="1000px" >}} | ||
|
||
## Geolocation | ||
|
||
Geographical data is sourced from the [MaxMind database](https://www.maxmind.com), which maps IP addresses to corresponding countries. | ||
|
||
This bar plot illustrates the distribution of observed nodes across different countries. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-geo-agent-All-bars.json" height="600px" >}} | ||
|
||
This plot displays the weekly geographical distribution of nodes, categorized by country. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-geo-agent-All-lines.json" height="600px" >}} | ||
|
||
## Cloud Providers | ||
|
||
Cloud providers data is sourced from [Udger](https://udger.com/resources/datacenter-list), which maps IP addresses to known hosting providers. | ||
|
||
### Cloud Hosting Rate | ||
|
||
This line chart displays the count of nodes within the Polkadot 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. | ||
|
||
Regular analysis of this chart can reveal trends in the adoption of cloud services for nodes. Such information is crucial for understanding the network's resilience and the potential reliance on cloud infrastructure. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-cloud-rate-agent-All-lines.json" height="600px" >}} | ||
|
||
This bar chart presents the weekly distribution of Polkadot nodes among various cloud providers, including nodes not hosted within data centers (grouped under _Non-Datacenter_). | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-cloud-agent-All-bars.json" height="600px" >}} | ||
|
||
The line chart illustrates the trends in the distribution of all Polkadot nodes across cloud providers over the given time period. Note that nodes hosted outside of data centers are not included in this representation. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-cloud-agent-All-lines.json" height="600px" >}} | ||
|
||
## Crawls | ||
|
||
### Protocols | ||
|
||
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. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-crawl-protocols.json" height="1200px" >}} | ||
|
||
### Errors | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-connection-errors-single.json" height="600px" >}} | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-crawl-errors-single.json" height="600px" >}} | ||
|
||
## Stale Node Records | ||
|
||
### All Peers | ||
|
||
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. | ||
|
||
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. | ||
|
||
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. | ||
|
||
{{< plotly json="/plots/2024/10/14/polkadot-stale-records-stacked.json" height="600px" >}} |