About NDT
[simple explanation of how it works]
What NDT Collects
When you run NDT, the IP address provided by your Internet Service Provider will be collected along with your measurement results. M-Lab conducts the test and publishes all test results to promote Internet research. NDT does not collect any information about you as an Internet user.
Please review M-Lab’s Privacy Policy to understand what data is collected and how data is used before initiating a test.
History
Originally developed at Internet2, M-Lab has hosted NDT since our founding in 2009, and helped maintain and develop NDT for most of its history on the M-Lab platform. Over the last decade, there are three primary themes that have driven the evolution of NDT: standard kernel instrumentation, advances in TCP congestion control, and protocols and ports to support more clients. For more information, please see our blog post discussing the Evolution of NDT.
Protocols
As a part of our transition from the web100 version of NDT server to the new platform, M-Lab named specific protocol versions for the original server and the new one we are now using. We now refer to these as “datatypes” for the NDT test.
- web100 is the protocol referring to data collected by the original NDT server
- Relied on the web100 kernel module for TCP statistics
- Collected using the original version of NDT server
- Used the Reno TCP congestion control algorithm
- Ran from 2009-02-18 to 2019-11-20
- ndt5 is an NDT protocol designed to be backward compatible with legacy NDT clients
- Relies on tcp-info for TCP statistics
- Collected using ndt-server, which follows the legacy NDT protocol to support existing NDT clients that use it
- Uses the Cubic TCP congestion control algorithm
- Started 2019-07-18 and continues to present. The evolution to ndt7 is driven by client upgrades and is expected to have a very long tail
- ndt7 is an NDT protocol that uses TCP BBR where available, operates on standard HTTP(S) ports (80, 443)
- Relies on tcp-info for TCP statistics
- Collected using ndt-server
- Uses the BBR TCP congestion control algorithm, falling back to Cubic when BBR is not available on the client side
- Started 2020-02-18 and continues to present
Take an NDT Test
You can take an NDT test using a variety of places, from M-Lab’s official site and Chrome Extension, or via many third-party integrations of NDT within apps or websites.
Supported
Supported tools are those which have been developed and are maintained by the core M-Lab staff.
- speed.measurementlab.net - speed.measurementlab.net is a standalone M-Lab NDT test site that supports multiple languages.
- M-Lab Measure Chrome App - M-Lab Measure is an extension for the Google Chrome browser that lets users schedule NDT to run at regular intervals to track the performance of and Internet connection over time.
Third Party Integrations of NDT
- Broadband Now.com
- Canadian Internet Registration Authority - Internet Performance Test
- Domotz
- Fing
- Google Search Results
- Google Stadia
- High Speed Internet.com
- OONI
- Speedup America - Speed Up America’s project vision is an open source nation-wide map that pulls individual internet speed test data from M-Lab and breaking down the results on maps and charts by points, census blocks, ISP, date range, and speed. Census block data and FCC 477 data will used to supplement both the analysis and maps.
- TestIT from NACo
- West London Business
- WhistleOut connectivity search engine
Have we missed something?
If you have an M-Lab integration that isn’t featured here, please let us know!
Collect NDT Data
[info on ndt clients], [info about piecewise], info on running your own NDT server, blog post about running your own ndt server
- Murakami - Murakami is a tool for creating an automatic M-Lab testing platform with as little effort as possible. Once running, Murakami runs an NDT test roughly every twelve hours and stores the results for your analysis.
- Piecewise - Piecewise is a tool for digesting and aggregating user-volunteered Internet performance test results data from Measurement Lab, and visualizing aggregate data on the web.
Source Code
NDT Server
NDT Reference Clients