+Start Mininet Multiple Hosts
+ [Arguments] ${hosts} ${mininet}=${TOOLS_SYSTEM_IP} ${controller}=${ODL_SYSTEM_IP} ${ofversion}=13 ${ofport}=${ODL_OF_PORT} ${mininet_timeout}=${DEFAULT_TIMEOUT}
+ [Documentation] Start mininet 1 switch with ${hosts} hosts attached.
+ Log Start Mininet Linear
+ MininetKeywords.StartMininet Single Controller options=--topo single,${hosts} --mac ofversion=${ofversion} ofport=${ofport} timeout=${mininet_timeout}
+
+Start Mininet Linear
+ [Arguments] ${switches} ${mininet}=${TOOLS_SYSTEM_IP} ${controller}=${ODL_SYSTEM_IP} ${ofversion}=13 ${ofport}=${ODL_OF_PORT} ${mininet_timeout}=${DEFAULT_TIMEOUT}
+ [Documentation] Start mininet linear topology with ${switches} nodes.
+ Log Start Mininet Linear
+ MininetKeywords.StartMininet Single Controller options=--topo linear,${switches} ofversion=${ofversion} ofport=${ofport} timeout=${mininet_timeout}
+
+Start Mininet Full Mesh
+ [Arguments] ${switches} ${mininet}=${TOOLS_SYSTEM_IP} ${controller}=${ODL_SYSTEM_IP} ${ofversion}=13 ${ofport}=${ODL_OF_PORT} ${hosts}=0
+ ... ${mininet_timeout}=${DEFAULT_TIMEOUT}
+ [Documentation] Start a custom mininet topology.
+ ${mininet_conn_id}= SSHLibrary.Open Connection ${mininet} prompt=${TOOLS_SYSTEM_PROMPT} timeout=${mininet_timeout}
+ Set Suite Variable ${mininet_conn_id}
+ SSHKeywords.Flexible_Mininet_Login
+ Log Copying ${topology_file_path} file to Mininet VM and Creating Full Mesh topology
+ SSHLibrary.Put File ${CURDIR}/${topology_file_path}
+ SSHLibrary.Write python ${topology_file} ${switches} ${hosts} 00:00:00:00:00:00 10.0.0.0
+ SSHLibrary.Read Until ${TOOLS_SYSTEM_PROMPT}
+ Log Start Mininet Full Mesh
+ SSHLibrary.Write sudo mn --controller=remote,ip=${controller},port=${ofport} --custom switch.py --topo demotopo --switch ovsk,protocols=OpenFlow${ofversion}
+ SSHLibrary.Read Until mininet>
+ Log Check OVS configuratiom
+ SSHLibrary.Write sh ovs-vsctl show
+ ${output}= Read Until mininet>
+ # Ovsdb connection is sometimes lost after mininet is started. Checking if the connection is alive before proceeding.
+ Should Not Contain ${output} database connection failed
+