Accurecny (a play on accuracy and ECN) is a tool designed to measure the adoption of Accurate ECN on the Internet.
Latest Results:
As of March 24, 2025, at least some of the hosts serving 4 sites appear to support Accurate ECN in TCP: aliyun.com, cisco.com, rubiconproject.com, and yximgs.com. See The Data Dictionary for more information on new information included in the results that resolves the open question from previous results (see The Data Dictionary - Discussion) for more information about “regressing” sites.
No sites appear to support QUIC Accurate ECN. See below for more information on how to access all the data.
What is Accurate ECN?
Far be it from me to answer this question. I’ll let the experts describe it:
Explicit Congestion Notification (ECN) is a mechanism where network nodes can mark IP packets instead of dropping them to indicate incipient congestion to the endpoints. … ECN was originally specified for TCP in such a way that only one feedback signal can be transmitted per Round-Trip Time (RTT). Recent new TCP mechanisms like Congestion Exposure (ConEx), Data Center TCP (DCTCP) or Low Latency, Low Loss, and Scalable Throughput (L4S) need more accurate ECN feedback information whenever more than one marking is received in one RTT. This document updates the original ECN specification in RFC 3168 to specify a scheme that provides more than one feedback signal per RTT in the TCP header. 1
QUIC is a transport protocol that takes a different approach to connection establishment, congestion control, etc than TCP. QUIC is still a relatively new transport protocol. That said, researchers active in its development have already proposed the inclusion of a mechanism where peers can share granular information about “incipient congestion”. Again, I will quote from the experts:
Some congestion control algorithms would benefit from not only knowing that some packets were marked with Congestion Experienced (CE) bit, but exactly which ones. In the general case, this is not possible with the standard [QUIC] ACK frame, since it only contains cumulative ECN counts. … [T]he ACCURATE_ACK_ECN frame … encodes the corresponding ECN codepoint alongside the ACK range. 2
Why Measure Its Deployment?
Even if applications are (re)designed to leverage the soon-to-be-widespread adoption of low-latency connection-oriented protocols, they will not achieve the best possible performance unless the networking software on servers can provide more than one ECN marking per RTT. In other words, an application that could benefit from low-latency connections will require Accurate ECN deployment on the client and server operating systems. Having data on the availability of the deployment of Accurate ECN will build awareness about the importance of support for the protocol.
The Data
The data available on this website provide a perspective on the deployment of Accurate ECN on the most popular websites on the Internet. Determination of what constitutes the most popular websites on the Internet is made using data from Tranco.
The Files
The data is available at https://accurecny-data.pages.dev/. The names of the files indicate the date the data were collected: YYYYMMDD
. The .csv
file contains the results of determining whether each of the top 500 most popular websites support Accurate ECN. The .log
file contains the logging output generated by the tool when collecting the data. See below for more information about the tool used to collect the data.
The Data Dictionary
This data dictionary applies to all data and log files generated after 2025-01-19.
The data now contain information about the status of Accurate ECN deployment for all the hosts serving each of the popular websites. Earlier versions of the data contained information about the status of Accurate ECN deployment for only one of the hosts serving each of the popular websites.
As a result, the data files may contain multiple rows for the same host in the case where a query for the domain name returned multiple A
(or AAAA
) resource records in the answers.
Otherwise, there is no change to the meaning of the individual fields in each row of the results.
The Data Dictionary - Discussion
The tool was updated to capture information about the status of Accurate ECN support for all the hosts because of inconsistent results between different data collections.
In particular, on January 13, 2025, 3 sites appeared to support Accurate ECN in TCP: cisco.com, rubiconproject.com, and yximgs.com. However, in the data set from December 30, 2024, 4 such sites seemed to support Accurate ECN in TCP. The discrepancy could be explained by the “regressing” site’s use of distributed architecture where some of their hosting providers support Accurate ECN and others do not. Now that all hosts are checked, such regressions should be more transparent.
The (Deprecated) Data Dictionary
This data dictionary applies to all data and log files generated after 2024-10-01.
Each of the data files is formatted as a CSV file. Each row in the file contains data on the status of Accurate ECN support for one of the top 500 most popular sites on the Internet.
From left to right, the fields are:
Field Number | Field Description | Field Type |
---|---|---|
1 | The public IP address of the host taking the measurement. | String |
2 | The popularity rank of the site. | Unsigned Integer (in base 10) |
3 | The URL of the site. | String |
4 | The IP used to determine the status of the site’s support for Accurate ECN in TCP. | String |
5 | Whether or not the tool successfully made a determination about the site’s support for Accurate ECN in TCP. | Boolean |
6 | Whether the site supports Accurate ECN in TCP.3 | Boolean |
7 | The 16 bit value of the TCP flags in the SYN/ACK packet captured when measuring whether the site supports Accurate ECN in TCP. | Unsigned 16-bit Number (in hexadecimal) |
8 | The IP used to determine the status of the site’s support for Accurate ECN in QUIC. | String |
9 | Whether or not the tool successfully made a determination about the site’s support for Accurate ECN in QUIC. | Boolean |
10 | Whether the site supports Accurate ECN in QUIC.3 | Boolean |
The (Really Deprecated) Data Dictionary
This data dictionary applies to the single pair of data and log file generated during a measurement on 2024-09-27.
Each of the data files is formatted as a CSV file. Each row in the file contains data on the status of Accurate ECN support for one of the top 500 most popular sites on the Internet.
From left to right, the fields are:
Field Number | Field Description | Field Type |
---|---|---|
1 | The popularity rank of the site. | Unsigned Integer (in base 10) |
2 | The URL of the site. | String |
3 | The IP used to determine the status of the site’s support for Accurate ECN. | String |
4 | Whether or not the tool successfully made a determination about the site’s support for Accurate ECN. | Boolean |
5 | Whether the site supports Accurate ECN.3 | Boolean |
6 | The 16 bit value of the TCP flags in the SYN/ACK packet. | Unsigned 16-bit Number (in hexadecimal) |
The Tool
The tool used to collect this data is open source (licensed GPLv3) and available at http://www.github.com/cerfcast/accurecny. We would love to have you contribute patches and/or data you collected. Please contact us or submit an issue.
Information about how to compile and use the tool is available at the Github repository.
Contact Us
If you have any questions about Accurecny, please contact Will Hawkins by email or on X.
-
More Accurate Explicit Congestion Notification (ECN) Feedback in TCP ↩
-
The value of this field will be false if the tool could not successfully make a determination about the site’s support. ↩ ↩2 ↩3