-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathREADME
29 lines (25 loc) · 1.62 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
We use python as our DSL for specifying experiment configuration
The module must define one attribute:
control_flow => a sts.control_flow.*.ControlModule object.
This class takes a SimulationConfig objects as its first parameter.
SimulationConfigs can optionally take the following contructor parameters:
topology_class => a sts.topology.Topology class (not object!)
defining the switches and links
topology_params => Comma-delimited list of arguments to pass into the FatTree
constructor, specified just as you would type them within
the parens.
patch_panel_class => a sts.topology.PatchPanel class (not object!)
dataplane_trace => a path to a dataplane trace file
(e.g. dataplane_traces/ping_pong_same_subnet.trace)
violation_persistence_threshold => number of logical time units to observe a
violation before we declare that it is
persistent
switch_init_sleep_seconds => number of seconds to wait for switches to
connect to controllers before starting the
simulation. Defaults to False (no wait).
monkey_patch_select => whether to use STS's custom deterministic
select. Requires that the controller is
monkey-patched too
Config files may also optionally define a function `get_additional_metadata`,
that takes no arguments and returns a dictionary storing metadata about the
experiment (e.g. the current commit hash of the controller under test).