Test your connection speed and receive sophisticated diagnosis of problems limiting speed.
Test whether BitTorrent is being blocked or throttled.
Diagnose common problems that impact last-mile broadband networks.
Test your available bandwidth.
Determine whether an ISP is performing traffic shaping.
Determine whether an ISP is degrading the performance of a certain subset of users, applications, or destinations.
M-Lab is at the beginning of its development. As M-Lab develops and more researchers participate, the suite of tests will grow.
The tools aim to be as accurate as possible, but because they are in development and attempting to measure complex issues, there may be bugs or errors. There may also be other limitations in the tools; for instance, a slower than expected speed might be the result of the testing server being located geographically far from your computer, rather than a problem with your ISP. If you have questions about the tools themselves, you should direct them to the researcher responsible for the tool. As M-Lab develops, researchers will be able build tools with increasing accuracy and functionality.
You may experience delays in running the tools, as they only allow a limited number of simultaneous users at this stage.
In order to advance Internet research, all data collected through M-Lab may be made publicly accessible. By using one of the tools, you will generate and send some data back-and-forth with an M-Lab server. The tools collect data related to the particular communication "flows" generated by the tool. These client-server tests do not collect information about your other Internet traffic such as your emails, Web searches or any personally identifiable information, unless you affirmatively provide it in response to a specific request (such as a form that asks you to provide your email address as well).
Some researchers may offer client-server tests that use M-Lab, combined with separate components that measure other Internet traffic and do not rely on M-Lab. These tools will only report the client-server test data back to M-lab and will not report any data about your other Internet traffic back to the M-Lab servers. That data will go directly to the researcher responsible for the tool. Additionally, researchers may employ
Additionally, the M-Lab nodes themselves measure the performance of any network transactions between an end-user computer and the nodes as part of the Side Stream Experiment . This "Side-Stream" measurement data is also made available for researchers and analysts.
The tools are all created by individual researchers, not M-Lab itself. The M-Lab servers are currently provided by Google Inc., Voxel.net, Hellenic Telecommunications and Post Commission (EETT), and the Greek Research and Technology Network (GRnet).
What it does:
Network Diagnostic Tool (NDT) provides a sophisticated speed and diagnostic test. An NDT test reports more than just the upload and download speeds -- it also attempts to determine what, if any, problems limited these speeds, differentiating between computer configuration and network infrastructure problems. While the diagnostic messages are most useful for expert users, they can also help novice users by allowing them to provide detailed trouble reports to their network administrator.
Data collected:
The server collects test results, records the user's IP address, upload/download speed, packet headers and TCP variables of the test.
Archived results are publicly available on Amazon's EC2, and details on the structure of the data can be found here.
How to use:
NDT works best when using a server that is geographically close to you.
Click here to automatically choose a server (beta). Or, manually choose one from the list below. Note that your browser must have Java enabled in order to use NDT.
Mountain View, California
Los Angeles, California
Seattle, Washington
Dallas, Texas
Chicago, Illinois
Atlanta, Georgia
Miami, Florida
New York City, New York #1
New York City, New York #2
London, United Kingdom
Paris, France
Athens, Greece
Amsterdam, Netherlands #1
Amsterdam, Netherlands #2
Hamburg, Germany
You can also use a list of servers provided by other entities, here:
Static List
When choosing a server, scroll past the "Internet2 IP Network" list and select from among "Other Available Servers."
Note that NDT currently relies on a queuing system in which tests are conducted on a first come, first served basis. Users accessing these tests will receive a message, indicating their place in the queue, if one exists.
Audience:
Experts and Novices
Researcher:
Rich Carlson
More information:
http://e2epi.internet2.edu/ndt/
What it does:
Glasnost attempts to detect whether your Internet access provider is performing application-specific traffic shaping. Currently, you can test if your ISP is throttling or blocking BitTorrent. Tests for other applications will follow soon.
Data collected:
The measurement server records the user's IP address, and all data packets received by the server from your computer or sent by the server to your computer. In addition, it monitors errors in the communication with the server and the throughput of the transfers for those communication "flows," and sends them to the server.
How to use:
Visit the Glasnost site for M-Lab and click the "Start Testing" button.
This tool is configured to serve multiple users at the same time. However, if too many users try to access the tool at once, some will receive a message asking them to try the test later.
Audience:
Novices
Researcher:
Krishna Gummadi
Marcel Dischinger
More information:
http://broadband.mpi-sws.org/transparency/bttest-mlab.php
What it does:
NPAD diagnoses some of the common problems effecting the last network mile and end-users' systems. These are the most common causes of all performance problems on wide area network paths.
Data collected:
As NPAD transfers bulk data between the server and your computer it gathers detailed statistics about what mechanisms actually regulate performance. In doing so, the server collects test results and records the IP addresses, upload/download speed, packet headers and TCP variables of the test.
Archived results are publicly available on Amazon's EC2, and details on the structure of the data can be found here.
How to use:
*Experimental*
Allow NPAD to select the server closest to you.
NPAD relies on your using an M-Lab server near to you. If the auto-select option doesn't work for you, choose from the following list:
Mountain View, California
Los Angeles, California
Seattle, Washington
Dallas, Texas
Chicago, Illinois
Atlanta, Georgia
Miami, Florida
New York City, New York #1
New York City, New York #2
London, United Kingdom
Paris, France
Amsterdam, Netherlands #1
Amsterdam, Netherlands #2
Hamburg, Germany
Athens, Greece
You can also use a list of servers provided by other entities, here:
Static List
Note that NPAD currently relies on a queuing system in which tests are conducted on a first come, first served basis. Users accessing these tests will receive a message, indicating their place in the queue, if one exists.
Audience:
Experts and Network Administrators. This is still an experimental service.
Researcher:
More information:
http://www.psc.edu/networking/projects/pathdiag/
What it does:
Pathload2 measures the "available bandwidth" of your Internet connection. The available bandwidth is the maximum bit rate you can send to a network link before it gets congested.
For example, if your ISP provides you with a DSL 6 Mbps downstream link, but you currently use 1 Mbps in that direction, the available bandwidth will be about 5Mbps.
Pathload2 reports two results: one for the upstream direction (from your network to the Internet) and another for the downstream direction (from the Internet to your network).
Pathload2 differs from other "network speed tests" that simply measure the throughput of a single large TCP data transfer. Those measurements are largely affected by the inefficiencies of the TCP protocol. Besides, most applications today use multiple parallel TCP transfers, often limited by socket buffers at the end-hosts. Pathload2, on the other hand, measures the amount of "raw" bits per second that your network connection can provide, independent of which protocol or application you use.
Data collected:
For every measurement, Pathload2 collects a user's IP address, the time of measurement, the measured available bandwidth in the downstream and upstream directions, and other related statistics.
How to use:
To run Pathload2, you need to download and run the Pathload2 client. So far we have tested the code on most versions of Windows, Mac OS X, and all major Linux and BSD platforms.
Download Windows client
Download Mac client (cross-platform x86/PPC)
You can also download Linux/Mac source code and Windows source code.
Server source code (currently runs on 13 M-Lab servers)
Audience:
Novices and Experts.
Researchers:
The original version of Pathload was developed by Manish Jain & Constantine Dovrolis.
Pathload2 is a client-server version of Pathload in which the server runs at M-lab. Pathload2 was developed by Nachiket Deo, Partha Kanuparthy and Constantine Dovrolis.
Constantine Dovrolis
Manish Jain
Partha Kanuparthy
Nachiket Deo
More information:
For additional information about Pathload and bandwidth estimation methods please read this article.
What it does:
ShaperProbe is a part of the larger DiffProbe project. ShaperProbe detects whether your ISP performs "traffic shaping". Traffic shaping means that your ISP automatically drops your access rate after you have downloaded or uploaded a certain number of bytes. ShaperProbe detects whether traffic shaping is used in either the upload or download directions, and in that case that it is used, ShaperProbe reports the shaping rate and the "maximum burst size" before shaping begins.
Data collected:
ShaperProbe records the user's IP address, per-packet timestamps and delay/loss measurements as packets traverse the path from the client to the M-Lab server and back.
How to use:
Download links:
Microsoft Windows (binary): http://www.cc.gatech.edu/~partha/diffprobe/ShaperProbe.exe
MAC OS X (binary): http://www.cc.gatech.edu/~partha/diffprobe/ShaperProbe.dmg
Linux (source): http://www.cc.gatech.edu/~partha/diffprobe/shaperprobe.tgz
On Windows, double-click the executable.
On OS X, double-click the disk-image to mount, and then double-click the binary.
On Linux, the client needs the following library to compile: glibc (on Ubuntu and Debian, the package is libc6-dev). You probably already have this package if you have compiled source code before. After extracting the archive, compile and run ShaperProbe:
$ make
$ ./prober
In order to compile on MAC OS X: make -f Makefile.osx
Audience:
Novices.
Researcher:
Constantine Dovrolis
Partha Kanuparthy
More information:
http://www.cc.gatech.edu/~partha/diffprobe/shaperprobe.html
What it does:
NANO attempts to detect whether an ISP is degrading the performance of a certain subset of users, applications, or destinations.
Data collected:
To use NANO, users will download and install software on their computers. NANO will perform two functions and collect two sets of data:
A full explanation of NANO's data collection and anonymization will be listed when the tool is made public.
How to use:
Users will download and install software on their computers. The tool is not yet available, but is coming soon.
Audience:
Novices.
Researcher:
Nick Feamster
Mukarram bin Tariq
Murtaza Motiwala
Mostafa Ammar
More information:
http://www.cc.gatech.edu/~feamster/papers/nano-hotnets2008.pdf