Modeling and Emulation of Internet Paths
Proceedings of the Sixth USENIX Symposium on Networked Systems Design and Implementation (NSDI) 2009.
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 difﬁcult 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.