Wireless LAN Traces from ACM SIGCOMM'01

U. C. San Diego, August 2001.

SNMPWalk SNMP Traces Perl Scripts tcpdump Traces

We provide here, a link to two traces that we recorded over three days at the ACM SIGCOMM'01 conference held at U.C. San Diego in August 2001. The trace consists of two parts. The first part is a record of SNMP performance monitoring data sampled from wireless access points (APs) serving the conference. The second part is a tcpdump trace consisting of anonymized packet headers of all wireless traffic. Both parts of the trace span all three days of the conference, capturing the workload of about 300,000 flows from 195 users consuming 4.6 GB of bandwidth.

We analyzed these traces to characterize user behavior and network performance in a PAWN. Our results are reported in this paper:
Characterizing User Behavior and Network Performance in a Public Wireless LAN,
Anand Balachandran, Geoffrey M. Voelker, Paramvir Bahl, and P. Venkat Rangan, In Proc. ACM SIGMETRICS'02, Marina Del Rey, June 2002.

For other wireless traces, see the CRAWDAD community wireless data archive at Dartmouth.

Trace Collection Software

Source Code and Binary:
snmputil.zip   (3.93 KB)   April 5, 2002.
snmputil.exe   (71.32 KB)   April 5, 2002.

The snmputil tool is a command-line utility that uses the standard Win32 SNMP Management API. The source-code consists of one source file (snmputil.c) and a makefile. If you are building snmputil.exe on your own, make sure that you have the Windows SNMP libraries, snmpapi.lib and mgmtapi.lib.

The usage for snmputil is:

snmputil option[get|getnext|walk] node_address password snmp_oid

For example, to walk the entire MIB tree at the AP, the usage is:

snmputil walk AP_IP_address password .1.3.6.1.2.1

SNMP Trace

Trace Files:
Snmp_Stations.zip   (3.36 MB)   April 5, 2002.
Snmp_AP_Mibtree.zip  (56.29 MB)   April 5, 2002.

There are two zipped trace files in the SNMP trace. Both archives contain 12 individual files (one for each day of the conference at each of the four APs).

Each of the 12 trace files in Snmp_Stations.zip are named Stations_%AP_Name%_%Day%.out -- where %AP_Name% can be one of NE, NW, SE, or SW; and %Day% can be Wed, Thu, or Fri. Thus the trace file for the NE AP on Wednesday, is Stations_NE_Wed.out. The SNMP OID used to generate these trace files was .1.3.6.1.4.1, which corresponds to the MIB entry for "Associated Stations" and gives the MAC address, average received SNR, total transmitted bytes, and total transmitted packets for each mobile station associated to the AP. The trace-collection routine polled the APs at one minute intervals. Each poll entry begins with a timestamp and entries from successive polls are separated by the line "End of MIB subtree".

Each of the 12 trace files in Snmp_AP_Mibtree.zip are named AP_%AP_Name%_%Day%.out -- where %AP_Name% can be one of NE, NW, SE, or SW; and %Day% can be Wed, Thu, or Fri. Thus the trace file for the NE AP on Wednesday, is AP_NE_Wed.out. These files were generated using the SNMP OID .1.3.6.1.2.1, which walks the entire MIB tree. The APs are polled at one-minute intervals. Each poll begins with a timestamp and ends with the line "End of MIB subtree". These trace files contain all information recorded at the AP at the MAC, network, transport, and application layers. For example, the number of total unicast and multicast packets (bytes) transmitted and recevied, the number of unicast and multicast MAC-level errors and retransmissions, etc.

back to top

Trace-analysis Scripts

Scripts:
extract.pl   (first-level parsing of SNMP trace)
index.pl   (post-processing -- number of users as a function of time)
mac_addr.pl   (post-processing -- time instances of occurrence of a particular mac-addresses)
pick_mac_addr.pl   (post-processing -- listing of unique mac-addresses in the trace file)

The extract.pl script can be used to parse all SNMP output files in the trace to look for a certain pattern. The pattern may be a phrase representing all or part of an SNMP OID, or simply text that appears in the trace file. The script has detailed comments on how to use it. Since we collected the SNMP data using snmputil, the scripts are written specifically to parse that output. The traces contain the SNMP data collected at one-minute intervals, and extract.pl uses these timestamps in the trace file to parse the data. Since each SNMP OID has a unique entry in the trace, extract.pl can be used to extract the values of all the SNMP variables over the entire duration of the trace.

Once the SNMP traces have been processed using extract.pl, the other scripts might be used as needed for post-processing. Some example files that we used are provided above (e.g., index.pl, mac_addr.pl and pick_mac_addr.pl).

back to top

Packet Header Trace

Anonymized tcpdump Trace:
sigcomm01_Trace.pcap.gz   (255 MB)   April 23, 2002.

This is a link to the tcpdump trace. We anonymized the trace using tcpdpriv to remove all sensitive information including, packet payloads and IP addresses in packet headers. The trace represents a collection of all the wireless IP traffic over the entire period of the conference.

The pcap trace can be parsed using the tools in the popular CoralReef measurement suite.

For more information, please contact Anand Balachandran

back to top