Modeling and Emulation of Internet Paths

Pramod Sanaga, Jonathon Duerig, Robert Ricci, and Jay Lepreau
{pramod, duerig, ricci, lepreau}@cs.utah.edu

University of Utah, School of Computing

Abstract

Network emulation subjects real applications and protocols to controlled network conditions. Most existing network emulators are fundamentally link emulators, not path emulators: they concentrate on faithful emulation of the transmission and queuing behavior of individual network hops in isolation, rather than a path as a whole. This presents an obstacle to constructing emulations of observed Internet paths, for which detailed parameters are difficult or impossible to obtain on a hop-by-hop basis. For many experiments, however, the experimenter's primary concern is the end-to-end behavior of paths, not the details of queues in the interior of the network.

End-to-end measurements of many networks, including the Internet, are readily available and potentially provide a good data source from which to construct realistic emulations. Directly using such measurements to drive a link emulator, however, exposes a fundamental disconnect: link emulators model the capacity of resources such as link bandwidth and router queues, but when reproducing Internet paths, we generally wish to emulate the measured availability of these resources.

In this paper, we identify a set of four principles for emulating entire paths. We use these principles to design and implement a path emulator. All parameters to our model can be measured or derived from end-to-end observations of the Internet. We demonstrate our emulator's ability to accurately recreate conditions observed on Internet paths.

Appeared in Proceedings of the Sixth USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 199–212, Boston, MA, Apr. 2009.

The slides from the NSDI 2009 presentation are also available.


Eric Eide <eeide@cs.utah.edu>
Last modified: Mon Apr 27 11:26:56 MDT 2009