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
Panel Descriptions
Creating a new panel type can be done by providing a simple text description file. Each 'line' in the file is a type, followed by a colon, followed by a set of comma separated values and finally ending with a semicolon. Newlines are ignored. There are 5 types that must be included in the file.
- group: <groupname> - specifies the group in the controls tree that this control will sit under
- type: <type> - specifies the object type for this type of agent
- nicename: <name> - a human readable name to describe the type of agent
- descrip: <text> - some text to describe the agent type that will show up when the agent type node is selected
- events: <e1>,<e2>… - these are the events that can be sent and will show up as the buttons at the bottom of a group panel
The types are:
| title | A title line that separates two sections of controls |
| node(s) | A node selection button that allows a single node or multiple nodes (with the s) to be selected |
| ip(s) | An IP address selection button that allows a single IP or multiple IPs (with the s) to be selected |
| dist | A distribution selection button |
| string | A string value entry |
| double | A double value entry |
| integer | An integer value entry |
| strings | Multiple string value entries on one line |
| doubles | Multiple double value entries on one line |
| integers | Multiple integer value entries on one line |
| checks | A series of check box boolean values on one line |
| menu | A drop down menu selection of items |
The formats of the comma separated values are:
title: <title>;
node, nodes, ip, ips, dist, string, double, integer:
<label>, <variable>, <help string>;
strings, doubles, integers, checks:
<main label>, [<sublabel>, <variable>, <help string> ];
menu:
<label>, <variable>, <help string>, [<options> ];
An example
The following panel description:
group: Defense;
type: FLOODWATCH;
nicename: FloodWatch;
descrip: FloodWatch is a statistical DDoS detector and defense that using both entropy and chisq statistics;
events: Set, Start, Stop;
title: Participating Nodes and Mode;
nodes: Nodes, NODES, Select the nodes that will become part of the defense;
menu: Mode, MODE, Select the mode of opertaion, TRAIN, DETECT, RESPOND;
title: Active Modules;
checks: Chisq,
IPLen, CHISQIPLEN, turn the Chisq IP length detector on,
SrcAddr, CHISQSRCADDR, turn the Chisq Src address detector on,
SrcPort, CHISQSRCPORT, turn the Chisq Src port detector on,
DstAddr, CHISQDSTADDR, turn the Chisq Dst address detector on,
DstPort, CHISQDSTPORT, turn the Chisq DSt port detector on;
checks: Entropy,
IPLen, ENTROPYIPLEN, turn the Entropy IP length detector on,
SrcAddr, ENTROPYSRCADDR, turn the Entropy Src address detector on,
SrcPort, ENTROPYSRCPORT, turn the Entropy Src port detector on,
DstAddr, ENTROPYDSTADDR, turn the Entropy Dst address detector on,
DstPort, ENTROPYDSTPORT, turn the Entropy Dst port detector on;
produces the panel:
Attachments
-
fwpanel.PNG
(15.7 kB) - added by bwilson
12 months ago.
picture of blank floodwatch panel
