Laboratories and Roadmaps for Network Testing
Today, the New America Foundation, PlanetLab and Google announced the launch of the Measurement Lab project, an initiative to provide server resources for researchers interested in network neutrality and performance testing. This is good news for the community of academics and activists who are trying to map, measure and record the state of network management by ISPs as well as many other aspects of Internet performance.
The Measurement Lab is an alternative version of a pre-existing network called PlanetLab, which is run by a consortium headquartered at Princeton. Essentially, PlanetLab is a large network of computers that researchers can run experiments on. Until now, it has been hard to use PlanetLab for network neutrality tests because the system wasn't designed for it: all the code runs in virtual machines and might be starved of CPU time right in the middle of an attempt to take high-precision network latency measurements. M-Lab is a version of PlanetLab that is designed to ensure that when a test is running, it has near-exclusive use of a CPU core and network interface.
M-Lab is not a testing tool in and of itself; rather, it is a platform that will save researchers from having to deploy their own servers in order to run "active" network tests. Active tests are those in which the clients send synthetic traffic that is made up simply for the purposes of the test (M-Lab only works with active tests initiated by clients run on users' computers). M-Lab won't be useful for "passive" network tests which examine the way the network carries traffic that your computer was sending independently of the test. You can see a list of active and passive network testing tools here; EFF's Switzerland software is an example of the passive testing approach, although M-Lab will be useful if we add synthetic traffic generation features to Switzerland in the future.
M-Lab gets good marks for openness and privacy by design. The active-testing paradigm ensures that the network's servers will never receive real user traffic, which would need very high levels of privacy protection. Essentially, the servers may record traffic sent to their IP addresses, but the only software that will be sending such traffic will be clients that generate synthetic messages.
The code for the servers will be free/open sourced, and all of the experimental data it collects will be published. The most noteworthy disadvantage of the project is that use of M-Lab is currently limited to PlanetLab members, so testing projects that are not affiliated with research institutions will need to find academics to collaborate with if they want to use M-Lab servers.
And speaking of Switzerland: development on EFF's network testing project was slow in the past few months, but coding has started again, and we have a roadmap and release schedule for new Switzerland versions. We'll be posting to announce a new release (and reporting on some of the interesting network phenomena Switzerland has detected to date) in the next few weeks.