-
Notifications
You must be signed in to change notification settings - Fork 29
Production Deployment
We deployed an experimental ATPG system in 3 buildings in Stanford University that host the Computer Science and Electrical Engineering departments. The production network consists of over 30 Ethernet switches and a Cisco router connecting to the campus backbone. For test terminals, we utilized the 53 WiFi access points (running Linux) that were already installed throughout the buildings. This allowed us to achieve high coverage on switches and links. However, we could only run ATPG on essentially a Layer 2 Network.
All code and Oct 2 data are stored in utils/deployment
.
You may run the experiment using Linux-based machines as test terminals. The only OS requirement is that you have Python 2.6+.
Before running your own experiment, you need to setup a web server (Dropbox public folder will be sufficient) that hosts a list of peers the test agent should ping
, one peer per line. You can modify the file content during the experiment, as the ping agent will periodically update the peers' list. Example:
192.168.0.1
www.google.com
www.youtube.com
Note that if you use hostname instead of IP, your ping agent will do DNS each time, which may not be optimal in many environments. Replace peer_url
in ping_agent.py
with your own URL. You can also change the experiment interval and peers file update period. Then you can run the ping test agent
./ping_agent.py
ping_agent
will store the results in a text file, one file per day. You can "harvest" the text files periodically and upload it to a database for further analysis. You can refer to utils/deployment/upload.py
as an example.
In the repository, we have uploaded the Oct 2, 2012 outage data for your information. You may reproduce the graph (and the link cover algorithm) by running
./plot.sh
You need to install gnuplot
and evince
to see the graph in PDF. Have a look at the bash script as it is quite straightforward.