Internet Society Pulse¶
Internet Society Pulse is a platform that monitors the health, availability, and evolution of the Internet, providing metrics on key technologies that contribute to its security, resilience, and trustworthiness.
omniload supports Internet Society Pulse as a source.
URI format¶
The URI format for Internet Society Pulse is as follows:
isoc-pulse://?token=<your-token>
URI parameters:
token: The API token used for authentication with the Internet Society Pulse API.
Setting up an Internet Society Pulse Integration¶
To use the Internet Society Pulse source, you need to obtain an API token from the Internet Society.
Once you have the token, you can access various metrics from the Pulse platform. Here’s a sample command that will copy data from the ISOC Pulse API into a DuckDB database:
omniload ingest \
--source-uri 'isoc-pulse://?token=your_token_here' \
--source-table 'https' \
--dest-uri 'duckdb:///pulse_data.duckdb' \
--dest-table 'dest.https_adoption' \
--interval-start '2023-01-01' \
--interval-end '2023-12-31'
This will retrieve HTTPS adoption metrics for the specified date range and store them in your database.
Tables¶
Internet Society Pulse source allows ingesting the following metrics as separate tables:
Metric |
Description |
Country Support |
Additional Options |
PK |
Inc Key |
Inc Strategy |
|---|---|---|---|---|---|---|
|
DNSSEC adoption metrics for specific domains |
No |
Domain name |
date |
date |
merge |
|
DNSSEC adoption metrics for top-level domains |
Yes |
Country code |
date |
date |
merge |
|
DNSSEC validation metrics |
Yes |
Country code |
date |
date |
merge |
|
HTTP protocol metrics |
No |
None |
date |
date |
merge |
|
HTTP/3 protocol metrics |
No |
None |
date |
date |
merge |
|
HTTPS adoption metrics |
Yes |
topsites, Country code |
date |
date |
merge |
|
IPv6 adoption metrics |
Yes |
topsites, Country code |
date |
date |
merge |
|
Internet disconnection metrics |
Yes |
Shutdown type, Country code |
date |
date |
merge |
|
Internet resilience metrics |
Yes |
Country code |
date |
date |
merge |
|
Route Origin Authorization metrics |
Yes |
IP version (4/6), Country code |
date |
date |
merge |
|
Route Origin Validation metrics |
No |
None |
date |
date |
merge |
|
TLS protocol metrics |
No |
None |
date |
date |
merge |
|
TLS 1.3 protocol metrics |
No |
None |
date |
date |
merge |
Use these as --source-table parameter in the omniload ingest command.
Parameter Syntax¶
Many metrics support additional parameters, including country-specific data. These parameters are specified using colons in the source table name. The general format is:
metric[:option][:country]
Where the options and parameters vary by metric type.
General Parameter Rules¶
Country codes should follow the ISO 3166-1 alpha-2 format (e.g., US, GB, DE)
The parameters are position-specific – the order matters
Metric-Specific Parameters¶
HTTPS Metrics¶
Global data:
httpsCountry-specific:
https:USTop sites data:
https:topsitesTop sites for a specific country:
https:topsites:US
IPv6 Metrics¶
Global data:
ipv6Country-specific:
ipv6:DETop sites data:
ipv6:topsites
DNSSEC Metrics¶
Global validation:
dnssec_validationCountry-specific validation:
dnssec_validation:SEGlobal TLD adoption:
dnssec_tld_adoptionCountry-specific TLD adoption:
dnssec_tld_adoption:JP
Net Loss Metrics (Internet Disconnections)¶
Country-specific with shutdown type:
net_loss:shutdown_type:country_codeExample for shutdowns in India:
net_loss:shutdown:INExample for internet blocking in Japan:
net_loss:blocking:JP
Resilience Metrics¶
Global resilience:
resilienceCountry-specific resilience:
resilience::FR
Examples¶
Country-specific HTTPS Adoption¶
omniload ingest \
--source-uri 'isoc-pulse://?token=your_token_here' \
--source-table 'https::US' \
--dest-uri 'duckdb:///pulse_data.duckdb' \
--dest-table 'dest.us_https_adoption' \
--interval-start '2023-01-01'
IPv6 Top Sites Data¶
omniload ingest \
--source-uri 'isoc-pulse://?token=your_token_here' \
--source-table 'ipv6:topsites' \
--dest-uri 'duckdb:///pulse_data.duckdb' \
--dest-table 'dest.ipv6_topsites' \
--interval-start '2023-01-01'
ROA IPv4 Data by Country¶
omniload ingest \
--source-uri 'isoc-pulse://?token=your_token_here' \
--source-table 'roa:4:US' \
--dest-uri 'duckdb:///pulse_data.duckdb' \
--dest-table 'dest.us_roa_ipv4' \
--interval-start '2023-01-01'