示例#1
0
from config.experiment_config_lib import ControllerConfig
from sts.topology import *
from sts.control_flow.mcs_finder import EfficientMCSFinder
from sts.invariant_checker import InvariantChecker
from sts.simulation_state import SimulationConfig

simulation_config = SimulationConfig(controller_configs=[
    ControllerConfig(start_cmd='echo "no-op"',
                     label='c1',
                     address='192.168.56.1',
                     cwd='pox/',
                     controller_type='dummy')
],
                                     topology_class=MeshTopology,
                                     topology_params="num_switches=2",
                                     patch_panel_class=BufferedPatchPanel,
                                     multiplex_sockets=False,
                                     ignore_interposition=False,
                                     kill_controllers_on_exit=True)

control_flow = EfficientMCSFinder(
    simulation_config,
    "traces/trace_pox_l2_multi_fixed-MeshTopology2-steps200/events.trace",
    wait_on_deterministic_values=False,
    default_dp_permit=False,
    pass_through_whitelisted_messages=False,
    delay_flow_mods=False,
    invariant_check_name='InvariantChecker.check_liveness',
    bug_signature="")
示例#2
0
from config.experiment_config_lib import ControllerConfig
from sts.topology import *
from sts.control_flow.mcs_finder import EfficientMCSFinder
from sts.invariant_checker import InvariantChecker
from sts.simulation_state import SimulationConfig

simulation_config = SimulationConfig(controller_configs=[
    ControllerConfig(
        start_cmd=
        'java -ea -Dlogback.configurationFile=./src/main/resources/logback-trace.xml -jar ./target/floodlight.jar -cf ./src/main/resources/trace_circuitpusher.properties',
        label='c1',
        address='127.0.0.1',
        cwd='../floodlight')
],
                                     topology_class=BinaryLeafTreeTopology,
                                     topology_params="num_levels=2",
                                     patch_panel_class=BufferedPatchPanel,
                                     multiplex_sockets=False,
                                     ignore_interposition=False,
                                     kill_controllers_on_exit=True)

control_flow = EfficientMCSFinder(
    simulation_config,
    "paper/trace_floodlight_circuitpusher-BinaryLeafTreeTopology2-steps400/events.trace",
    wait_on_deterministic_values=False,
    default_dp_permit=False,
    pass_through_whitelisted_messages=False,
    delay_flow_mods=False,
    invariant_check_name='InvariantChecker.check_liveness',
    bug_signature="")
示例#3
0
                     label='c1',
                     address='192.168.56.11',
                     cwd='/home/mininet/ONOS',
                     controller_type='onos',
                     kill_cmd='./start-onos.sh stop',
                     restart_cmd='./start-onos.sh stop'),
    ControllerConfig(start_cmd='./start-onos.sh start',
                     label='c2',
                     address='192.168.56.12',
                     cwd='/home/mininet/ONOS',
                     controller_type='onos',
                     kill_cmd='./start-onos.sh stop',
                     restart_cmd='./start-onos.sh stop')
],
                                     topology_class=MeshTopology,
                                     topology_params="num_switches=2",
                                     patch_panel_class=BufferedPatchPanel,
                                     multiplex_sockets=False,
                                     ignore_interposition=False,
                                     kill_controllers_on_exit=False)

control_flow = EfficientMCSFinder(
    simulation_config,
    "experiments/onos_id_bug_fixed_ids_no_traffic/events.trace",
    wait_on_deterministic_values=False,
    default_dp_permit=False,
    pass_through_whitelisted_messages=False,
    delay_flow_mods=False,
    invariant_check_name='InvariantChecker.check_liveness',
    bug_signature="")
示例#4
0
from config.experiment_config_lib import ControllerConfig
from sts.topology import *
from sts.control_flow.mcs_finder import EfficientMCSFinder
from sts.invariant_checker import InvariantChecker
from sts.simulation_state import SimulationConfig

simulation_config = SimulationConfig(controller_configs=[
    ControllerConfig(
        start_cmd=
        './pox.py --verbose openflow.discovery forwarding.l2_multi_broken_floyd  sts.util.socket_mux.pox_monkeypatcher openflow.of_01 --address=__address__  --port=__port__',
        label='c1',
        address='127.0.0.1',
        cwd='pox')
],
                                     topology_class=MeshTopology,
                                     topology_params="num_switches=3",
                                     patch_panel_class=BufferedPatchPanel,
                                     multiplex_sockets=True,
                                     ignore_interposition=True,
                                     kill_controllers_on_exit=True)

control_flow = EfficientMCSFinder(
    simulation_config,
    "experiments/pox_broken_floyd_updated/events.trace",
    wait_on_deterministic_values=False,
    default_dp_permit=False,
    pass_through_whitelisted_messages=False,
    delay_flow_mods=False,
    invariant_check_name='InvariantChecker.python_check_loops',
    bug_signature="")
示例#5
0
from config.experiment_config_lib import ControllerConfig
from sts.topology import *
from sts.control_flow.mcs_finder import EfficientMCSFinder
from sts.invariant_checker import InvariantChecker
from sts.simulation_state import SimulationConfig

simulation_config = SimulationConfig(controller_configs=[ControllerConfig(start_cmd='./pox.py --verbose sts.syncproto.pox_syncer --blocking=False openflow.discovery forwarding.l2_multi sts.util.socket_mux.pox_monkeypatcher openflow.of_01 --address=__address__ --port=__port__', label='c1', address='127.0.0.1', cwd='old_pox', sync='tcp:localhost:18899')],
                 topology_class=MeshTopology,
                 topology_params="num_switches=2",
                 patch_panel_class=BufferedPatchPanel,
                 multiplex_sockets=True,
                 ignore_interposition=False,
                 kill_controllers_on_exit=True)

control_flow = EfficientMCSFinder(simulation_config, "experiments/retrigger_debug_branch_loop/events.trace",
                                  wait_on_deterministic_values=False,
                                  default_dp_permit=False,
                                  pass_through_whitelisted_messages=False,
                                  delay_flow_mods=False,
                                  invariant_check_name='check_for_blackholes_or_connectivity',
                                  bug_signature="")
示例#6
0
                     label='c1',
                     address='192.168.56.11',
                     cwd='/home/mininet/ONOS',
                     controller_type='onos',
                     kill_cmd='./start-onos.sh stop',
                     restart_cmd='./start-onos.sh stop'),
    ControllerConfig(start_cmd='./start-onos.sh start',
                     label='c2',
                     address='192.168.56.12',
                     cwd='/home/mininet/ONOS',
                     controller_type='onos',
                     kill_cmd='./start-onos.sh stop',
                     restart_cmd='./start-onos.sh stop')
],
                                     topology_class=MeshTopology,
                                     topology_params="num_switches=2",
                                     patch_panel_class=BufferedPatchPanel,
                                     multiplex_sockets=False,
                                     ignore_interposition=False,
                                     kill_controllers_on_exit=False)

control_flow = EfficientMCSFinder(
    simulation_config,
    "experiments/onos_controller_id_replay_2014_05_30_10_46_45/events.trace",
    wait_on_deterministic_values=False,
    default_dp_permit=False,
    pass_through_whitelisted_messages=False,
    delay_flow_mods=False,
    invariant_check_name='None',
    bug_signature="")
示例#7
0
from config.experiment_config_lib import ControllerConfig
from sts.topology import *
from sts.control_flow.mcs_finder import EfficientMCSFinder
from sts.invariant_checker import InvariantChecker
from sts.simulation_state import SimulationConfig

simulation_config = SimulationConfig(controller_configs=[ControllerConfig(start_cmd='./pox.py --verbose forwarding.l2_learning openflow.of_01 --address=__address__ --port=__port__ ', label='c1', address='127.0.0.1', cwd='../pox/')],
                 topology_class=BinaryLeafTreeTopology,
                 topology_params="num_levels=1",
                 patch_panel_class=BufferedPatchPanel,
                 multiplex_sockets=False,
                 ignore_interposition=False,
                 kill_controllers_on_exit=True)

control_flow = EfficientMCSFinder(simulation_config, "traces/trace_pox_eel_learningswitch-BinaryLeafTreeTopology1-steps200/events.trace",
                                  wait_on_deterministic_values=False,
                                  default_dp_permit=False,
                                  pass_through_whitelisted_messages=False,
                                  delay_flow_mods=False,
                                  invariant_check_name='InvariantChecker.check_liveness',
                                  bug_signature="")
示例#8
0
from config.experiment_config_lib import ControllerConfig
from sts.topology import *
from sts.control_flow.mcs_finder import EfficientMCSFinder
from sts.invariant_checker import InvariantChecker
from sts.simulation_state import SimulationConfig

simulation_config = SimulationConfig(controller_configs=[
    ControllerConfig(
        start_cmd=
        'java -ea -Dlogback.configurationFile=./src/main/resources/logback-test-trace.xml -jar ./target/floodlight.jar -cf ./src/main/resources/trace_loadbalancer.properties',
        label='c1',
        address='127.0.0.1',
        cwd='../floodlight')
],
                                     topology_class=StarTopology,
                                     topology_params="num_hosts=4",
                                     patch_panel_class=BufferedPatchPanel,
                                     multiplex_sockets=False,
                                     ignore_interposition=False,
                                     kill_controllers_on_exit=True)

control_flow = EfficientMCSFinder(
    simulation_config,
    "paper/trace_floodlight_loadbalancer-fixed-StarTopology4-steps200/events.trace",
    wait_on_deterministic_values=False,
    default_dp_permit=False,
    pass_through_whitelisted_messages=False,
    delay_flow_mods=False,
    invariant_check_name='InvariantChecker.check_liveness',
    bug_signature="")
示例#9
0
  #cmd_exec.execute_command("echo 'sleeping for 10sec'; sleep 10")
  cmd_exec.execute_command("./scripts/conf_setup.sh 2;")
  cmd_exec.execute_command("zk start")
  cmd_exec.execute_command("cassandra  start")
  cmd_exec.execute_command("echo 'sleeping for 10sec'; sleep 10")
  cmd_exec.execute_command("cassandra cleandb;")
  cmd_exec.execute_command("echo 'sleeping for 10sec'; sleep 10")
  #cmd_exec.execute_command("onos start")
  #cmd_exec.execute_command("echo 'sleeping for 40sec'; sleep 40")

setup()

simulation_config = SimulationConfig(controller_configs=[ControllerConfig(start_cmd='./start-onos.sh start', label='c1', address='192.168.56.11', cwd='/home/mininet/ONOS', controller_type='onos', kill_cmd='./start-onos.sh stop', restart_cmd='./start-onos.sh stop'), ControllerConfig(start_cmd='./start-onos.sh start', label='c2', address='192.168.56.12', cwd='/home/mininet/ONOS', controller_type='onos', kill_cmd='./start-onos.sh stop', restart_cmd='./start-onos.sh stop')],
                 topology_class=MeshTopology,
                 topology_params="num_switches=2",
                 patch_panel_class=BufferedPatchPanel,
                 multiplex_sockets=False,
                 ignore_interposition=False,
                 bug_file="/mnt/ahassany/vagrant_onosdev/ONOS/BUG_TRIGGERED",
                 kill_controllers_on_exit=False)

control_flow = EfficientMCSFinder(simulation_config, "experiments/onos_id_bug_fixed_ids_file/events.trace",
                                  wait_on_deterministic_values=False,
                                  default_dp_permit=True,
                                  pass_through_whitelisted_messages=True,
                                  delay_flow_mods=False,
                                  check_interval=5,
                                  fail_fast=True,
                                  invariant_check_name='check_for_file',
                                  bug_signature="")
示例#10
0
from config.experiment_config_lib import ControllerConfig
from sts.topology import *
from sts.control_flow.mcs_finder import EfficientMCSFinder
from sts.invariant_checker import InvariantChecker
from sts.simulation_state import SimulationConfig

simulation_config = SimulationConfig(controller_configs=[
    ControllerConfig(
        start_cmd=
        'java -ea -Dlogback.configurationFile=./src/main/resources/logback-trace.xml -jar ./target/floodlight.jar -cf ./src/main/resources/hb_learningswitch.properties',
        label='c1',
        address='127.0.0.1',
        cwd='../floodlight')
],
                                     topology_class=BinaryLeafTreeTopology,
                                     topology_params="num_levels=3",
                                     patch_panel_class=BufferedPatchPanel,
                                     multiplex_sockets=False,
                                     ignore_interposition=False,
                                     kill_controllers_on_exit=True)

control_flow = EfficientMCSFinder(
    simulation_config,
    "traces/floodlight_hb_circuitpusher-bintree3-traffic/events.trace",
    wait_on_deterministic_values=False,
    default_dp_permit=False,
    pass_through_whitelisted_messages=False,
    delay_flow_mods=False,
    invariant_check_name='InvariantChecker.check_liveness',
    bug_signature="")
示例#11
0
from sts.control_flow.peeker import SnapshotPeeker

# Use POX as our controller
start_cmd = (
    '''./pox.py --verbose '''
    '''openflow.discovery forwarding.l2_multi '''
    '''sts.util.socket_mux.pox_monkeypatcher --snapshot_address=../snapshot_socket'''
    '''openflow.of_01 --address=__address__ --port=__port__''')

controllers = [
    ControllerConfig(start_cmd,
                     cwd="pox",
                     snapshot_address="./snapshot_socket")
]
topology_class = MeshTopology
topology_params = "num_switches=2"

simulation_config = SimulationConfig(controller_configs=controllers,
                                     topology_class=topology_class,
                                     topology_params=topology_params,
                                     multiplex_sockets=True)

peeker = SnapshotPeeker(simulation_config)
control_flow = EfficientMCSFinder(
    simulation_config,
    "/PATH/TO/EVENT.TRACE",
    wait_on_deterministic_values=False,
    delay_flow_mods=False,
    invariant_check_name="InvariantChecker.python_check_loops",
    transform_dag=peeker.peek)