RFC 2041 (rfc2041) - Page 2 of 27
Mobile Network Tracing
Alternative Format: Original Text Document
RFC 2041 Mobile Network Tracing October 1996
1. Introduction
How does one accurately capture and reproduce the observed behavior
of a network? This is an especially challenging problem in mobile
computing because the network quality experienced by a mobile host
can vary dramatically over time and space. Neither long-term average
measures nor simple analytical models can capture the variations in
bandwidth, latency, and signal degradation observed by such a host.
In this RFC, we describe a solution based on network tracing. Our
solution consists of two phases: trace recording and trace
modulation.
In the trace recording phase, an experimenter with an instrumented
mobile host physically traverses a path of interest to him. During
the traversal, packets from a known workload are generated from a
static host. The mobile host records observations of both packets
received from the known workload as well as the device
characteristics during the workload. At the end of the traversal,
the list of observations represents an accurate trace of the observed
network behavior for this traversal. By performing multiple
traversals of the same path, and by using different workloads, one
can obtain a trace family that collectively characterizes network
quality on that path.
In the trace modulation phase, mobile system and application software
is subjected to the network behavior observed in a recorded trace.
The mobile software is run on a LAN-attached host whose kernel is
modified to read a file containing the trace (possibly postprocessed
for efficiency,) and to delay, drop or otherwise degrade packets in
accordance with the behavior described by the trace. The mobile
software thus experiences network quality indistinguishable from that
recorded in the trace. It is important to note that trace modulation
is fully transparent to mobile software --- no source or binary
changes have to be made.
Trace-based approaches have proved to be of great value in areas such
as file system design [2, 10, 11] and computer architecture. [1, 5,
13] Similarly, we anticipate that network tracing will prove valuable
in many aspects of mobile system design and implementation. For
example, detailed analyses of traces can provide insights into the
behavior of mobile networks and validate predictive models. As
another example, it can play an important role in stress testing and
debugging by providing the opportunity to reproduce the network
conditions under which a bug was originally uncovered. As a third
example, it enables a system under development to be subjected to
network conditions observed in distant real-life environments. As a
final example, a set of traces can be used as a benchmark family for
evaluating and comparing the adaptive capabilities of alternative
Noble, et. al. Informational