iPlane: An Information Plane for Distributed Services

iPlane is a scalable service providing accurate predictions of Internet path performance for emerging overlay services. Unlike the more common black box latency prediction techniques in use today, iPlane builds a structural model of the Internet. We construct an annotated map of the Internet and predict end-to-end performance by composing measured performance of segments of known Internet paths. This method allows us to accurately and efficiently predict latency, bandwidth, capacity and loss rates between arbitrary Internet hosts. We have studied the feasibility and utility of the iPlane service by applying it to several representative overlay services in use today: content distribution, swarming peer-to-peer filesharing, and voice-over-IP. In each case, we observe that using iPlane‘s predictions leads to a significant improvement in end user performance.

The various components we have built as part of our experimental research prototype of iPlane are:

  • Measuring the Internet: iPlane performs traceroutes from various vantage points — PlanetLab nodes and traceroute servers — to construct a router interface-level atlas of the Internet.
  • Clustering interfaces into PoPs: iPlane clusters interfaces that are in the same Point of Presence (PoP). For this, every interface in the router atlas is probed using UDP and ICMP packets. Interfaces that respond with the same source address or have similar return TTLs to all the vantage points are clustered together.
  • Measuring link attributes: Existing techniques for measuring loss rate, bandwidth capacity and available bandwidth are employed in a scalable and efficient manner to characterize the properties of all inter-cluster links in the measured topology.
  • Opportunistic measurements: iPlane participates in several Bittorrent torrents, and passively monitors TCP connections to infer properties of edge links. No traffic is uploaded by the Bittorrent clients run by iPlane; passive measurements are performed only on connections on which end-users upload content. None of the content received from other Bittorrent peers is stored by iPlane.
  • Route prediction: Finally, iPlane composes segments of observed Internet paths to predict the end-to-end path between any pair of end-hosts, and uses this predicted path to estimate end-to-end performance.

One of our primary objectives in building iPlane‘s prototype is to minimize the number of measurements performed in constructing the Internet’s PoP-level topology. For example, we issue a traceroute from each traceroute server only once every 5 minutes. Much of the software currently used in our research prototype of iPlane is still in an experimental phase, and we are constantly working on optimizing our measurements.

Datasets: Historical traceroute data is available here and at the RIPE mirror. Contact Harsha for any queries related to iPlane‘s data.

Query Interface: Here is the documentation for the query interface to iPlane. If you would like to query iPlane as part of your application, please send mail to Harsha.

Publications:

  • An Information Plane for Internet Applications. [ pdf ]
    Harsha V. Madhyastha.
    Ph.D. Thesis, University of Washington, August 2008.
  • iPlane Nano: Path Prediction for Peer-to-Peer Applications. [ pdf ] [ html ]
    Harsha V. Madhyastha, Ethan Katz-Bassett, Thomas Anderson, Arvind Krishnamurthy and Arun Venkataramani.
    NSDI 2009, April 2009.
  • iPlane: An Information Plane for Distributed Services. [ pdf ] [ html ]
    Harsha V. Madhyastha, Tomas Isdal, Michael Piatek, Colin Dixon, Thomas Anderson, Arvind Krishnamurthy and Arun Venkataramani.
    OSDI 2006, November 2006.
  • A Structural Approach to Latency Prediction. pdf ]
    Harsha V. Madhyastha, Thomas Anderson, Arvind Krishnamurthy, Neil Spring and Arun Venkataramani.
    IMC 2006, October 2006.