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

    <SCALE>1,3,5,7</SCALE>
    <max>7</max>

    <ENV>
        <cellName>topo_perf_test</cellName>
        <cellApps>drivers,metrics,openflow</cellApps>
    </ENV>

    <DEPENDENCY>
        <path>/tests/SCPF/SCPFswitchLat/dependencies/</path>
        <topology>topo-perf-1sw.py</topology>
        <function>switchFunc</function>
    </DEPENDENCY>

    <GIT>
        <pull>False</pull>
        <branch>master</branch>
    </GIT>

    <CTRL>
        <user>sdn</user>
        <ip1>OC1</ip1>
        <ip2>OC2</ip2>
        <ip3>OC3</ip3>
        <ip4>OC4</ip4>
        <ip5>OC5</ip5>
        <ip6>OC6</ip6>
        <ip7>OC7</ip7>
    </CTRL>

    <MN>
        <ip1>OCN</ip1>
    </MN>

    <TIMEOUT>
        <timeout>60</timeout>
    </TIMEOUT>

    <BENCH>
        <ip>localhost</ip>
    </BENCH>

    <TSHARK>
        <up>
            <TCP>openflow\ \[SYN\]</TCP>  #1
            <RQ>OF 1.3 90 of_role_request</RQ> #2
            <RR>OF 1.3 90 of_role_reply</RR> #3
            <Feature>OF 1.3 98 of_features_reply</Feature>#4
        </up>

        <down>
            <FA>\[FIN,\ ACK\]</FA>
            <ACK>openflow\ \[ACK\]</ACK>
        </down>
    </TSHARK>
    <CFG>
        <defaultTopo>org.onosproject.net.topology.impl.DefaultTopologyProvider</defaultTopo>
    </CFG>
    <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>
        <mci>off</mci>

        <MaxWrong>20</MaxWrong>

        <ResultRange>
            <Min>0</Min>
            <Max>500</Max>
        </ResultRange>

        <SearchTerm>
            <up>DEVICE_ADDED</up>
            <down>DEVICE_AVAILABILITY_CHANGED</down>
        </SearchTerm>

        <topoConfigFile>
        single_topo_event_accumulator.cfg
        </topoConfigFile>
        <topoConfigName>
        org.onlab.onos.net.topology.impl.DefaultTopologyProvider.cfg
        </topoConfigName>

        #Number of iterations to ignore initially
        <warmUp>5</warmUp>

        #Number of times to iterate each case
        <sampleSize>20</sampleSize>
        <device>s3</device>
        <tsharkResultPath>
            <up>
                <ALL>/tmp/Tshark_ALL</ALL>
                <TCP>/tmp/Tshark_TCP</TCP>
                <RQ>/tmp/Tshark_RQ</RQ> #role request
                <RR>/tmp/Tshark_RR</RR> #role reply OF output
                <Feature>/tmp/Tshark_Feature</Feature>
            </up>

            <down>
                <ALL>/tmp/Tshark_ALL</ALL> #Fin_ack and Ack
                <FA>/tmp/Tshark_FA</FA>#Fin_ack
                <ACK>/tmp/Tshark_ACK</ACK>
            </down>
        </tsharkResultPath>

        <singleSwThreshold>0,1000</singleSwThreshold>

        <tabletFile>tablets_3node.json</tabletFile>
   </TEST>

    <SLEEP>
        <startup>5</startup>
        <measure>5</measure>
        <mininet>5</mininet>
        <deleteSW>10</deleteSW>
    </SLEEP>

    <DATABASE>
        <dbName>/tmp/switchEventResultDb</dbName>
    </DATABASE>

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