<PARAMS>
    <testcases>1,2,3</testcases>

    <ENV>
        <cellName>topo_perf_test</cellName>
    </ENV>

    <GIT>
        #autoPull 'on' or 'off'
        <autoPull>off</autoPull>
        <checkout>master</checkout>
    </GIT>

    <CTRL>
        <user>admin</user>
        <ip1>10.128.174.1</ip1>
        <port1>6633</port1>
        <ip2>10.128.174.2</ip2>
        <port2>6633</port2>
        <ip3>10.128.174.3</ip3>
        <port3>6633</port3>
    </CTRL>

    <MN>
        <ip1>10.128.10.90</ip1>
        <ip2>10.128.10.91</ip2>
    </MN>

    <BENCH>
        <ip>10.128.174.10</ip>
    </BENCH>

    <TEST>
        #'on' or 'off' debug mode.
        #If on, logging will be more verbose and
        #tshark pcap will be enabled
        #pcap file located at /tmp/'capture_name'
        <debugMode>off</debugMode>
        <onosLogFile>/opt/onos/log/karaf*</onosLogFile>

        <topo_config_file>
        single_topo_event_accumulator.cfg
        </topo_config_file>
        <topo_config_name>
        org.onlab.onos.net.topology.impl.DefaultTopologyProvider.cfg
        </topo_config_name>

        #Number of times to iterate each case
        <numIter>20</numIter>
        <numSwitch>2</numSwitch>
        #Number of iterations to ignore initially
        <iterIgnore>2</iterIgnore>

        <singleSwThreshold>0,1000</singleSwThreshold>
        <portUpThreshold>0,1000</portUpThreshold>
        <portDownThreshold>0,1000</portDownThreshold>
        <linkUpThreshold>0,10000</linkUpThreshold>
        <linkDownThreshold>0,10000</linkDownThreshold>
        <swDisc100Threshold>0,10000</swDisc100Threshold>
    </TEST>

    <JSON>
        <deviceTimestamp>topologyDeviceEventTimestamp</deviceTimestamp>
        <hostTimestamp>topologyHostEventTimestamp</hostTimestamp>
        <linkTimestamp>topologyLinkEventTimestamp</linkTimestamp>
        <graphTimestamp>topologyGraphEventTimestamp</graphTimestamp>
    </JSON>
</PARAMS>
