Presentation on theme: "GIMS Tutorial - GEC 12 Packet Capture for GENI Charles Thomas & Dongchan Kim University of Wisconsin - Madison"— Presentation transcript:
GIMS Tutorial - GEC 12 Packet Capture for GENI Charles Thomas & Dongchan Kim University of Wisconsin - Madison
GIMS Tutorial Follow along (cut and paste commands): Start your VirtualBox Tutorial image.
Tutorial Outline Introduction to GIMS. Setting up for using GIMS. Creating a capture filter. Creating an RSpec. Creating a slice and starting the experiment
Tutorial Outline (Cont.) Tour of the monitoring GUI tools. Pause/Restart traffic capture. Stop and teardown the experiment. Post-experiment data analysis. System capabilities. Future directions / Q&A
What is GIMS? GENI Instrumentation and Measurement Systems Collaboration between University of Wisconsin (Barford), Colgate University (Sommers) and Boston University (Crovella) High-speed packet capture system integrated with ProtoGENI. Infrastructure could be modified to support other types of instrumentation.
GIMS Architecture ProtoGENI Scripts –Allow us to control the capture system. GIMS Backend –Coordinates communication. MySQL Database Capture Device –Daemon & hardware Web-based GUIs –Device and configuration control, real-time monitoring, experiment results.
GIMS Database MySQL Stores information about: –Experiments –Capture Devices –Experiment/Device pairings –Device Configurations –Experiment Results –Device Statistics
capd, the GIMS Capture Daemon XML/RPC control structures Supports a wide variety of hardware. libpcap support Flow aggregation based on IPFIX CryptoPan anonymization Sampling (every N, randomized) Remote storage (SSH, Amazon S3)
Current Functionality CreateSliver –Create new experiment –Load config into device –Start capture StopSliver –Pause capture StartSliver –Restart capture after pause DeleteSlice –Shutdown capture activities and cleanup.
gimsd - The GIMS Hardware Monitoring Daemon Sits in a loop looking for running experiments. If it finds any, queries the capture device via SNMP to get information on the device status (Only queries each device once.), storing results in DB. Calls GetExperimentStats for each running experiment and stores the results in the database. Runs every 15 seconds (configurable).
Stopping and Tearing Down the Experiment./deleteslice.py -m https://gims.wail.wisc.edu/protogeni/xmlrpc/cm -d -n
Accessing Captured Data As configured by GEC12 config, captured data is at: Host: ops.schooner.wail.wisc.edu Username: gimsusr Password: genigec12 Directory: /proj/GEC12/data/[exp ID]/
Packet analyzer Display packet in fields Selective view of packets by filters WireShark
Experimental Traffic Packet generator: Iperf Protocol: UDP Source IP address: Source port number: Destnation IP address: Destination port number: 5001
System Capabilities Current system is fairly low-end Dell 2650 PowerEdge server Onboard e1000 network card
System Capabilities In metadata file, … …
Stress Test – Capture Daemon 1000Mbps w/o Samp. 1000Mbps w/ Samp. 100Mbps w/o Samp. 100Mbps w/ Samp. 1Mbps w/o Samp. 1Mbps w/ Samp. Pkt received Pkt dropped Ratio ** Sampled every 5 th packet
Stress Test – NIC 1000Mbps w/o Samp. 1000Mbps w/ Samp. 100Mbps w/o Samp. 100Mbps w/ Samp. 1Mbps w/o Samp. 1Mbps w/ Samp. Pkt received Pkt dropped Ratio ** Sampled every 5 th packet
Future Directions Wide variety of feature requests, bug fixes, security improvements. Integration with other frameworks. Deployment of 5 more GIMS capture systems across the US to make capture more widely available.