Measuring User-Perceived Internet Performance in Multiple Locations
Liston, John Richard
MetadataShow full item record
Measurement studies of Internet performance are critical for validating or refuting widely held beliefs about Web behavior, and for shedding light on unknown behaviors. Results from these studies can guide Internet architects in making decisions that affect Internet Service Providers (ISPs), content providers and end-users. Examples of decisions that can benefit from measurement information include provisioning network capacity, placing Domain Name System (DNS) and Web servers, and tuning parameters of transport layer protocols. Internet protocols and services may exhibit different performance characteristics when observed from different locations in the Internet topology; to date, however, there has been little work investigating the differences in these characteristics from multiple vantage points. Typically, performance studies present results of measurements taken in only one or two locations. Some of the reasons for the lack of work in this area are the following. First, performance measurement was not a high priority of Internet design and was not built into the network architecture. Second, it is difficult to obtain the necessary level of privilege at many different locations in the Internet topology to perform measurement studies. Finally, high expectations for real-time Internet performance is a relatively recent phenomenon. In this thesis we develop several methods for gathering Internet performance data from multiple locations throughout the world, and to analyze data gathered. Our focus is on the protocols and services that support the World Wide Web. In the first method we utilize a modified Web proxy. Our proxy captures and logs fine-grained performance information on a per-user basis. Our second method is to create and deploy a measurement package for examining DNS performance. We modified the BIND DNS server and packaged it with a script to drive the data collection. Our final method is to create and distribute an application to be run at user sites worldwide. One of the primary tasks of the application is to provide performance data from each instance of the application executing at locations throughout Internet topology. We can use the information provided by this application to examine user-perceived Internet performance throughout the globe.