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.