An M-Lab Overview
A Presentation given at the FCC Broadband Performance Measurement Workshop 2010-07-07
»
M-Lab Goals An Open Platform Measurement Lab (M-Lab) is an open, distributed server platform for researchers to deploy Internet measurement tools. The goal of M-Lab is to advance network research and empower the public with useful information about their broadband connections. By enhancing Internet transparency, M-Lab helps sustain a healthy, innovative Internet. M-Lab's Mission Partners People Are Using M-Lab http://measurementlab.net/news/2010/jul/07/m-lab-overview-prezi Municipalities States & Territories National Governments Research & Academic Institutions The Curious General Public Why Are They Using It? More than 100,000 people a day! In other words, this is an excellent testing tool and infrastructure. Analyzing the publically available data from this test [M-Lab's NDT] has been very helpful in advancing our own understanding of the performance bottlenecks on today’s broadband networks. Understanding Broadband Speed Measurement Clark, Bauer, and Lehr (June 2010) Massachusetts Institute of Technology http://mitas.csail.mit.edu/papers/Bauer_Clark_Lehr_Broadband_Speed_Measurements.pdf Open Platform Open Source Tools Publicly Available Open Data The M-Lab platform makes available to tool developers a large number of purpose-built and well-connected measurement servers in strategic locations around the globe. MLab 1 Nodes mlab1.sea01.measurement-lab.org mlab1.nuq01.measurement-lab.org mlab1.lax01.measurement-lab.org mlab1.dfw01.measurement-lab.org mlab1.ord01.measurement-lab.org mlab1.lga01.measurement-lab.org mlab1.lga02.measurement-lab.org mlab1.atl01.measurement-lab.org mlab1.mia01.measurement-lab.org mlab1.lhr01.measurement-lab.org mlab1.ams01.measurement-lab.org mlab1.ams02.measurement-lab.org mlab1.par01.measurement-lab.org mlab1.ath01.measurement-lab.org mlab1.ham01.measurement-lab.org mlab1.syd01.measurement-lab.org MLab 2 Nodes mlab2.sea01.measurement-lab.org mlab2.nuq01.measurement-lab.org mlab2.lax01.measurement-lab.org mlab2.dfw01.measurement-lab.org mlab2.ord01.measurement-lab.org mlab2.lga01.measurement-lab.org mlab2.lga02.measurement-lab.org mlab2.atl01.measurement-lab.org mlab2.mia01.measurement-lab.org mlab2.lhr01.measurement-lab.org mlab2.ams01.measurement-lab.org mlab2.ams02.measurement-lab.org mlab2.par01.measurement-lab.org mlab2.ath01.measurement-lab.org mlab2.ham01.measurement-lab.org mlab2.syd01.measurement-lab.org MLab 3 Nodes mlab3.sea01.measurement-lab.org mlab3.nuq01.measurement-lab.org mlab3.lax01.measurement-lab.org mlab3.dfw01.measurement-lab.org mlab3.ord01.measurement-lab.org mlab3.lga01.measurement-lab.org mlab3.lga02.measurement-lab.org mlab3.atl01.measurement-lab.org mlab3.mia01.measurement-lab.org mlab3.lhr01.measurement-lab.org mlab3.ams01.measurement-lab.org mlab3.ams02.measurement-lab.org mlab3.par01.measurement-lab.org mlab3.ath01.measurement-lab.org mlab3.ham01.measurement-lab.org mlab3.syd01.measurement-lab.org Measurement Lab: Overview and an Invitation to the Research Community C. Dovrolis, K. Gummadi, A. Kuzmanovic, S. D. Meinrath (June 2010) http://ccr.sigcomm.org/online/files/p53-3v40n3m-dovrolisPS.pdf U.S. 8 National Traffic Exchange Points, 9 sites, 27 Nodes Seattle Mountain View Los Angeles Chicago Dallas Miami Atlanta New York E.U. 4 Locations, 6 sites, 18 Nodes London Paris Amsterdam Hamburg Athens S.E. Asia, S. Pacific 1 Location, 1 Site, 3 Nodes Sydney Current Node List What's at a Site? Each Site is composed of 3 identical servers (Nodes) for redundancy and load balancing. Nodes are all "server-class" and well provisioned for conducting high-bandwidth measurements at large scale. Hardware At least three enterprise-class servers - 8x CPU Cores - 8GB RAM (or 8GB for 64-bit systems) - dual 100+GB Disks - 1 Gbps Ethernet Network Adapter - Built-in remote diagnostic, configuration, & power reset interface (such as Dell DRAC, HP iLO or OpenIPMI, Intel AMT, etc) IP Addresses A /26 of IPv4 address space is required to support a site with three servers. IPv6 connectivity is a plus. Network connectivity The minimum requirement is 1 Gbps to an upstream provider with no filtering or firewall. Collect information and data on how the Internet is operating today Stimulate research activities to collect and analyze data to improve the understanding of the Internet Assist consumers to better understand their broadband connection with publicly accesible tools and data Support public debates about policy and regulation by supplying unbiased measurement data Inside an M-Lab Node Each node's base is a custom Open Source Linux Operating System maintained by PlanetLab. This system makes use of the Web100 instruments in the Linux TCP/IP stack to expose over a 150 network related variables for hosted measurement tests. c2sspd, s2cspd, CurRwinRcvd, MaxRwinRcvd, loss, Ping, MaxRTT, avgrtt, jitter, CurRTO, WaitSec, SACKsRcvd, host, osVer, osName, osArch, javaVer, mismatch, Bad_cable, congestion, cwndtime, AccessTech, pctRcvrLimited, optimalRcvrBuffer, clientIP A current list of variables: http://web100.org/download/kernel/2.5.28/tcp-kis.txt PlanetLab is the primary node maintainer - Core node operations - Assists in creating new measurement environments - M-Lab nodes are not available to all PlanetLab Researchers Slices are created on each node to allocate specific resources for each tool. Implemented as Linux-Vservers, which implements both namespace and performance isolation among slices on a single machine Network virtualization is implemented using VNET Tests show insignificant virtualization overhead (about 1-2%) PlanetLab Architecture Overview: https://www.planet-lab.org/doc/guides/user We Need You! M-Lab depends on the contribution of servers and connectivity from academic and industrial partners Develop a unique tool that can run on the M-Lab platform Data storage partners Visualization/Infographic developers A collaborative effort: we welcome suport from researchers, institutions, and companies that share M-Lab’s goals http://www.measurementlab.org/getinvolved Virtualization Open Source Measurement Tools NDT Advanced Network Diagnostic Tool Report measured upload & download speeds Determine what problems are limiting speed i.e. client computer, home network, provider network, or testing server Identify if the network connection is behind a NAT Detect Firewall and possible end-to-end network settings All tools are created by individual researchers, not M-Lab itself All researchers are required to publish client and server software source code to allow for 3rd party review All researchers' tools must be operated and licensed in such a way as to allow 3rd parties to develop client-side software for measurements User Results Researcher Results NPAD Advanced Diagnostic tester Analyze host configuration and network path Identify if routers/switches would impact WAN performance Web-based output simplifies problem reporting http://www.psc.edu/networking/projects/pathdiag/ Glasnost Determine if an ISP is blocking email, HTTP or SSH transfer, Flash video, and P2P apps including BitTorrent, eMule and Gnutella. http://broadband.mpi-sws.org/transparency/bttest-mlab.php Pathload2 Measures available bandwidth Reports “Raw” bps capacity independent of transport or application protocol http://www.cc.gatech.edu/fac/Constantinos.Dovrolis/Papers/NetDov0248.pdf Sidestream Collect TCP details (web100 variables) from regular web traffic on a client computer Collects information as a byproduct of general client network usage No special test stream required A way to evaluate, compare, and validate other active test results http://www.measurementlab.net/news/2010/jan/19/side-stream-experiment Windrider Attempts to detect whether your mobile broadband provider is performing application or service specific differentiation, i.e. prioritizing or slowing traffic to certain websites, applications, or content. http://www.cs.northwestern.edu/~ict992/mobile.htm ShaperProbe Detects whether your ISP performs "traffic shaping" in either the upload or download directions. In the even of shapping, ShaperProbe reports the shaping rate and the "maximum burst size" before shaping begins. http://www.cc.gatech.edu/~partha/diffprobe/shaperprobe.html Test Client Interfaces For Users In Web Browser Mobile Devices Open Data All data collected through M-Lab is intended to be made publicly available and placed in the public domain either immediately or after an optional 1 year embargo Collecting over 60TB of Data Raw measurement data (web100 and TCPdump logs) is created when a user runs a tool hosted on M-Lab Raw data is stored locally on each M-Lab node Seperate data collecting servers regularly collect all raw data M-Lab tools consolidate raw data and re-format for 3rd party services Formated test records are pushed to Amazon's EC2 and Google BigQuery http://measurementlab.org/news/2009/dec/10/calling-all-researchers-m-lab-data-now-available-amazon-ec2 http://www.measurementlab.org/news/2010/jun/18/more-good-thing-analyze-and-access-m-lab-data-using-google-bigquery-and-google-stor Next? Closest Node M-Lab tools have access to DONAR. A distributed system that provides name resolution and server selection for replication services. Dynamic mapping policies direct users based on geographic location and platform load distribution. http://donardns.org Measurement Lab (M-Lab) What Makes M-Lab Unique? http://e2epi.internet2.edu/ndt An overprovisioned, extensible, scalable, robust open platform for open measurement tools The M-Lab Platform Using only 1% of total resources Operational Tools Coming Soon! Where is M-Lab M-Lab Hosted Tools Enabling deep critcal data analysis with transparent and open source tools and methodologies