TracNav menu
-
How To
- Setup An Experiment
-
GUI
- Overview
- Options
- Controls
- Topology
-
Agents and Variables
- Overview
- Functions
- Scripting
- Topology
- Traffic
- Attacks
- Analysis
-
Development/Extending
- Overview
- Adding GUI Panels
- Adding Agent Types
Extending SEER
There are two communication methods used in an experiment with SEER, just as there can be in regular experiments.
- XMLRPC calls from outside the experiment
- Event system messages within the experiment
XMLRPC
XMLRPC is used to communicate with DETER from outside. The core Emulab code already exports a series of functions that can be called via XMLRPC. SEER uses:
- experiment.state
- experiment.virtual_topology
- experiment.getviz
- experiment.startexp
- experiment.swapexp
SEER exports several other functions from the control node under local. These are:
- local.sendevent
- local.runscript
- local.getfile
- local.getgraph
- local.getseerdata
Events
The Emulab event system is used to send event between nodes in an experiment in addition to boss and users. SEER makes extensive use of the event system to send commands from the control node to the agent daemon on each node as well as receive log and counter information from each node.
SEER events use object type and group to determine which agent processes the event. Each agent type has its own corresponding object type. The group name is used to distinguish between different agent groups or instances. The current object types are:
- CBR
- DNS
- FLOODER
- FTP
- GUI
- HARPOON
- HTTP
- IRC
- MARKER
- PERF
- PING
- REPLAY
- ROUTES
- SERVERCTL
- SOAP
- SSH
- SYSCTL
- TCPDUMP
- VIDEO
