<TOPOLOGY>
    <COMPONENT>
        <ONOScell>
            <host>localhost</host>  # ONOS "bench" machine
            <user>sdn</user>
            <password>rocks</password>
            <type>OnosClusterDriver</type>
            <connect_order>1</connect_order>
            <home></home>   # defines where onos home is on the build machine. Defaults to "~/onos/" if empty.
            <COMPONENTS>
                <useDocker>True</useDocker>  # Whether to use docker for ONOS nodes
                <docker_prompt>~/onos#</docker_prompt>
                <cluster_name></cluster_name>  # Used as a prefix for cluster components. Defaults to 'ONOS'
                <diff_clihost>True</diff_clihost> # if it has different host other than localhost for CLI. True or empty. OC# will be used if True.
                <karaf_username></karaf_username>
                <karaf_password></karaf_password>
                <web_user>sdn</web_user>
                <web_pass>rocks</web_pass>
                <rest_port></rest_port>
                <prompt></prompt>  # TODO: we technically need a few of these, one per component
                <onos_home></onos_home>  # defines where onos home is on the target cell machine. Defaults to entry in "home" if empty.
                <nodes>3</nodes>  # number of nodes in the cluster
            </COMPONENTS>
        </ONOScell>

        <SwitchLeaf1>
            <host>10.128.13.232</host>
            <user>root</user>
            <password>onl</password>
            <type>StratumOSSwitchDriver</type>
            <connect_order>2</connect_order>
            <COMPONENTS>
                <shortName>leaf1</shortName>
                <port1>1</port1>
                <link1>Host1</link1>
                <port2>2</port2>
                <link2>Host2</link2>
                <onosConfigPath>~/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/json/</onosConfigPath>
                <onosConfigFile>tofino-onos-netcfg.json</onosConfigFile>
            </COMPONENTS>
        </SwitchLeaf1>

        <Host1>
            <host>10.128.13.253</host>
            <user>sdn</user>
            <password>rocks</password>
            <type>HostDriver</type>
            <connect_order>6</connect_order>
            <COMPONENTS>
                <mac>3c:fd:fe:a8:ea:31</mac>
                <inband>false</inband>
                <ip>10.0.2.1</ip>
                <shortName>h1</shortName>
                <port1>0</port1>
                <link1>SwitchLeaf1</link1>
                <interfaceName>ens6f1</interfaceName>
                <routes>
                    <route1>
                        <network>10.0.2.0</network>
                        <netmask>24</netmask>
                        <gw></gw>
                        <interface></interface>
                    </route1>
                </routes>
            </COMPONENTS>
        </Host1>

        <Host2>
            <host>10.128.13.253</host>
            <user>sdn</user>
            <password>rocks</password>
            <type>HostDriver</type>
            <connect_order>7</connect_order>
            <COMPONENTS>
                <mac>3c:fd:fe:a8:ea:30</mac>
                <inband>false</inband>
                <ip>10.0.2.2</ip>
                <shortName>h2</shortName>
                <port1>0</port1>
                <link1>SwitchLeaf1</link1>
                <interfaceName>ens6f0</interfaceName>
                <routes>
                    <route1>
                        <network>10.0.2.0</network>
                        <netmask>24</netmask>
                        <gw></gw>
                        <interface></interface>
                    </route1>
                </routes>
            </COMPONENTS>
        </Host2>

        <NetworkBench>
            <host>10.128.13.253</host>
            <user>sdn</user>
            <password>rocks</password>
            <type>NetworkDriver</type>
            <connect_order>10</connect_order>
            <COMPONENTS>
            </COMPONENTS>
        </NetworkBench>

    </COMPONENT>
</TOPOLOGY>
