Update api docs
Change-Id: I44f59a4b066929dcbd5d8f07df87d0d600a4aca8
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html
index 3955b60..9b08309 100644
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html
+++ b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html
@@ -30,7 +30,12 @@
<th> <a
href="help.html">Help</a> </th>
- <th class="navbar" width="100%"></th>
+ <!-- Project homepage -->
+ <th class="navbar" align="right" width="100%">
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr><th class="navbar" align="center"
+ >TestON</th>
+ </tr></table></th>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
@@ -61,18 +66,16 @@
</table>
<!-- ==================== CLASS DESCRIPTION ==================== -->
<h1 class="epydoc">Class MininetCliDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver">source code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-<a href="TestON.drivers.component.Component-class.html">component.Component</a> --+
- |
- <a href="TestON.drivers.common.clidriver.CLI-class.html">clidriver.CLI</a> --+
- |
- <a href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html">emulatordriver.Emulator</a> --+
- |
- <strong class="uidshort">MininetCliDriver</strong>
-</pre>
-
+<center>
+<center> <map id="class_hierarchy_for_mininetcli" name="class_hierarchy_for_mininetcli">
+<area shape="rect" id="node1" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html" title="MininetCliDriver" alt="" coords="5,6,120,31"/>
+<area shape="rect" id="node2" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html" title="emulatordriver.Emulator" alt="" coords="144,6,303,31"/>
+<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="329,6,420,31"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="445,6,603,31"/>
+</map>
+ <img src="class_hierarchy_for_mininetcli.gif" alt='' usemap="#class_hierarchy_for_mininetcli" ismap="ismap" class="graph-without-title" />
+</center>
+</center>
<hr />
<p>MininetCliDriver is the basic driver which will handle the Mininet
functions</p>
@@ -101,7 +104,7 @@
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
+ x.__init__(...) initializes x; see help(type(x)) for signature</td>
<td align="right" valign="top">
<span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.__init__">source code</a></span>
@@ -119,7 +122,8 @@
<tr>
<td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
+ Here the main is the TestON instance after creating all the log
+ handles.</td>
<td align="right" valign="top">
<span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.connect">source code</a></span>
@@ -135,7 +139,69 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="pingall"></a><span class="summary-sig-name">pingall</span>(<span class="summary-sig-arg">self</span>)</span><br />
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet" class="summary-sig-name">startNet</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">topoFile</span>=<span class="summary-sig-default">''</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">''</span>,
+ <span class="summary-sig-arg">mnCmd</span>=<span class="summary-sig-default">''</span>,
+ <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">120</span>)</span><br />
+ Description:
+ Starts Mininet accepts a topology(.py) file and/or an optional
+ argument, to start the mininet, as a parameter.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.startNet">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="numSwitchesNlinks"></a><span class="summary-sig-name">numSwitchesNlinks</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">topoType</span>,
+ <span class="summary-sig-arg">depth</span>,
+ <span class="summary-sig-arg">fanout</span>)</span></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.numSwitchesNlinks">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="calculateSwAndLinks"></a><span class="summary-sig-name">calculateSwAndLinks</span>(<span class="summary-sig-arg">self</span>)</span><br />
+ Calculate the number of switches and links in a topo.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.calculateSwAndLinks">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall" class="summary-sig-name">pingall</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">300</span>,
+ <span class="summary-sig-arg">shortCircuit</span>=<span class="summary-sig-default">False</span>,
+ <span class="summary-sig-arg">acceptableFailed</span>=<span class="summary-sig-default">0</span>)</span><br />
Verifies the reachability of the hosts using pingall command.</td>
<td align="right" valign="top">
<span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingall">source code</a></span>
@@ -152,8 +218,65 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#fpingHost" class="summary-sig-name">fpingHost</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">**pingParams</span>)</span><br />
+ Uses the fping package for faster pinging...</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.fpingHost">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingallHosts" class="summary-sig-name">pingallHosts</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">hostList</span>)</span><br />
+ Ping all specified IPv4 hosts</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingallHosts">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingIpv6Hosts" class="summary-sig-name">pingIpv6Hosts</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">hostList</span>,
+ <span class="summary-sig-arg">prefix</span>=<span class="summary-sig-default">'1000::'</span>)</span><br />
+ IPv6 ping all hosts in hostList.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingIpv6Hosts">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="pingHost"></a><span class="summary-sig-name">pingHost</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**pingParams</span>)</span></td>
+ <span class="summary-sig-arg">**pingParams</span>)</span><br />
+ Ping from one mininet host to another Currently the only supported
+ Params: SRC and TARGET</td>
<td align="right" valign="top">
<span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingHost">source code</a></span>
@@ -187,6 +310,236 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="verifySSH"></a><span class="summary-sig-name">verifySSH</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">**connectargs</span>)</span></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.verifySSH">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="moveHost"></a><span class="summary-sig-name">moveHost</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>,
+ <span class="summary-sig-arg">oldSw</span>,
+ <span class="summary-sig-arg">newSw</span>)</span><br />
+ Moves a host from one switch to another on the fly
+Note: The intf between host and oldSw when detached
+ using detach(), will still show up in the 'net'
+ cmd, because switch.detach() doesn't affect switch.intfs[]
+ ( which is correct behavior since the interfaces
+ haven't moved ).</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.moveHost">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="changeIP"></a><span class="summary-sig-name">changeIP</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>,
+ <span class="summary-sig-arg">intf</span>,
+ <span class="summary-sig-arg">newIP</span>,
+ <span class="summary-sig-arg">newNetmask</span>)</span><br />
+ Changes the ip address of a host on the fly Ex: h2 ifconfig h2-eth0
+ 10.0.1.2 netmask 255.255.255.0</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.changeIP">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="changeDefaultGateway"></a><span class="summary-sig-name">changeDefaultGateway</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>,
+ <span class="summary-sig-arg">newGW</span>)</span><br />
+ Changes the default gateway of a host Ex: h1 route add default gw
+ 10.0.1.2</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.changeDefaultGateway">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="addStaticMACAddress"></a><span class="summary-sig-name">addStaticMACAddress</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>,
+ <span class="summary-sig-arg">GW</span>,
+ <span class="summary-sig-arg">macaddr</span>)</span><br />
+ Changes the mac address of a gateway host</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addStaticMACAddress">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="verifyStaticGWandMAC"></a><span class="summary-sig-name">verifyStaticGWandMAC</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>)</span><br />
+ Verify if the static gateway and mac address assignment</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.verifyStaticGWandMAC">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getMacAddress"></a><span class="summary-sig-name">getMacAddress</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>)</span><br />
+ Verifies the host's ip configured or not.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getMacAddress">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getInterfaceMACAddress"></a><span class="summary-sig-name">getInterfaceMACAddress</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>,
+ <span class="summary-sig-arg">interface</span>)</span><br />
+ Return the IP address of the interface on the given host</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getInterfaceMACAddress">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getIPAddress"></a><span class="summary-sig-name">getIPAddress</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>)</span><br />
+ Verifies the host's ip configured or not.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getIPAddress">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getSwitchDPID"></a><span class="summary-sig-name">getSwitchDPID</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">switch</span>)</span><br />
+ return the datapath ID of the switch</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitchDPID">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getDPID"></a><span class="summary-sig-name">getDPID</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">switch</span>)</span></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getDPID">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getInterfaces"></a><span class="summary-sig-name">getInterfaces</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">node</span>)</span><br />
+ return information dict about interfaces connected to the node</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getInterfaces">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="dump"></a><span class="summary-sig-name">dump</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
<span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.dump">source code</a></span>
@@ -235,9 +588,9 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="iperf"></a><span class="summary-sig-name">iperf</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="links"></a><span class="summary-sig-name">links</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperf">source code</a></span>
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.links">source code</a></span>
</td>
</tr>
@@ -251,7 +604,70 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="iperfudp"></a><span class="summary-sig-name">iperfudp</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcpAll" class="summary-sig-name">iperftcpAll</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">hosts</span>,
+ <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">6</span>)</span><br />
+ Runs the iperftcp function with a given set of hosts and specified timeout.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperftcpAll">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcp" class="summary-sig-name">iperftcp</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host1</span>=<span class="summary-sig-default">"h1"</span>,
+ <span class="summary-sig-arg">host2</span>=<span class="summary-sig-default">"h2"</span>,
+ <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">6</span>)</span><br />
+ Creates an iperf TCP test between two hosts.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperftcp">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="iperfudpAll"></a><span class="summary-sig-name">iperfudpAll</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">hosts</span>,
+ <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">"10M"</span>)</span><br />
+ Runs the iperfudp function with a given set of hosts and specified
+ bandwidth</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperfudpAll">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudp" class="summary-sig-name">iperfudp</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">"10M"</span>,
+ <span class="summary-sig-arg">host1</span>=<span class="summary-sig-default">"h1"</span>,
+ <span class="summary-sig-arg">host2</span>=<span class="summary-sig-default">"h2"</span>)</span><br />
+ Creates an iperf UDP test with a specific bandwidth.</td>
<td align="right" valign="top">
<span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperfudp">source code</a></span>
@@ -301,7 +717,7 @@
<tr>
<td><span class="summary-sig"><a name="link"></a><span class="summary-sig-name">link</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">**linkargs</span>)</span><br />
- Bring link(s) between two nodes up or down</td>
+ Bring link( s ) between two nodes up or down</td>
<td align="right" valign="top">
<span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.link">source code</a></span>
@@ -317,6 +733,42 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="yank"></a><span class="summary-sig-name">yank</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">**yankargs</span>)</span><br />
+ yank a mininet switch interface to a host</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.yank">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="plug"></a><span class="summary-sig-name">plug</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">**plugargs</span>)</span><br />
+ plug the yanked mininet switch interface to a switch</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.plug">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="dpctl"></a><span class="summary-sig-name">dpctl</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">**dpctlargs</span>)</span><br />
Run dpctl command on all switches.</td>
@@ -335,9 +787,9 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#get_version" class="summary-sig-name">get_version</a>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getVersion"></a><span class="summary-sig-name">getVersion</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.get_version">source code</a></span>
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getVersion">source code</a></span>
</td>
</tr>
@@ -351,8 +803,188 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>)</span></td>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController" class="summary-sig-name">getSwController</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">sw</span>)</span><br />
+ Parameters:
+ sw: The name of an OVS switch.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwController">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController" class="summary-sig-name">assignSwController</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">sw</span>,
+ <span class="summary-sig-arg">ip</span>,
+ <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"6633"</span>,
+ <span class="summary-sig-arg">ptcp</span>=<span class="summary-sig-default">""</span>)</span><br />
+ Description:
+ Assign switches to the controllers ( for ovs use only )
+Required:
+ sw - Name of the switch.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.assignSwController">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="deleteSwController"></a><span class="summary-sig-name">deleteSwController</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">sw</span>)</span><br />
+ Removes the controller target from sw</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.deleteSwController">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch" class="summary-sig-name">addSwitch</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">sw</span>,
+ <span class="summary-sig-arg">**kwargs</span>)</span><br />
+ adds a switch to the mininet topology
+NOTE: This uses a custom mn function.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addSwitch">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch" class="summary-sig-name">delSwitch</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">sw</span>)</span><br />
+ delete a switch from the mininet topology
+NOTE: This uses a custom mn function.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delSwitch">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink" class="summary-sig-name">addLink</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">node1</span>,
+ <span class="summary-sig-arg">node2</span>)</span><br />
+ add a link to the mininet topology
+NOTE: This uses a custom mn function.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addLink">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delLink" class="summary-sig-name">delLink</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">node1</span>,
+ <span class="summary-sig-arg">node2</span>)</span><br />
+ delete a link from the mininet topology
+NOTE: This uses a custom mn function.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delLink">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost" class="summary-sig-name">addHost</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">hostname</span>,
+ <span class="summary-sig-arg">**kwargs</span>)</span><br />
+ Add a host to the mininet topology
+NOTE: This uses a custom mn function.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addHost">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delHost" class="summary-sig-name">delHost</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">hostname</span>)</span><br />
+ delete a host from the mininet topology
+NOTE: This uses a custom mn function.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delHost">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span><br />
+ Called at the end of the test to stop the mininet and disconnect the
+ handle.</td>
<td align="right" valign="top">
<span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.disconnect">source code</a></span>
@@ -362,21 +994,491 @@
</td>
</tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet" class="summary-sig-name">stopNet</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">fileName</span>=<span class="summary-sig-default">""</span>,
+ <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">5</span>)</span><br />
+ Stops mininet.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.stopNet">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="arping"></a><span class="summary-sig-name">arping</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>=<span class="summary-sig-default">""</span>,
+ <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"10.128.20.211"</span>,
+ <span class="summary-sig-arg">ethDevice</span>=<span class="summary-sig-default">""</span>)</span><br />
+ Description:
+ Sends arp message from mininet host for hosts discovery
+Required:
+ host - hosts name
+Optional:
+ ip - ip address that does not exist in the network so there would
+ be no reply.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.arping">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="decToHex"></a><span class="summary-sig-name">decToHex</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">num</span>)</span></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.decToHex">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getSwitchFlowCount"></a><span class="summary-sig-name">getSwitchFlowCount</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">switch</span>)</span><br />
+ return the Flow Count of the switch</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitchFlowCount">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="checkFlows"></a><span class="summary-sig-name">checkFlows</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">sw</span>,
+ <span class="summary-sig-arg">dumpFormat</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.checkFlows">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable" class="summary-sig-name">getFlowTable</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">protoVersion</span>,
+ <span class="summary-sig-arg">sw</span>)</span><br />
+ Returns certain fields of an OVS flow table.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getFlowTable">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="flowComp"></a><span class="summary-sig-name">flowComp</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">flow1</span>,
+ <span class="summary-sig-arg">flow2</span>)</span></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.flowComp">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="startTcpdump"></a><span class="summary-sig-name">startTcpdump</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">filename</span>,
+ <span class="summary-sig-arg">intf</span>=<span class="summary-sig-default">"eth0"</span>,
+ <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"port 6633"</span>)</span><br />
+ Runs tpdump on an interface and saves the file intf can be specified,
+ or the default eth0 is used</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.startTcpdump">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="stopTcpdump"></a><span class="summary-sig-name">stopTcpdump</span>(<span class="summary-sig-arg">self</span>)</span><br />
+ pkills tcpdump</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.stopTcpdump">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getPorts" class="summary-sig-name">getPorts</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">nodeName</span>,
+ <span class="summary-sig-arg">verbose</span>=<span class="summary-sig-default">False</span>)</span><br />
+ Read ports from a Mininet switch.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getPorts">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches" class="summary-sig-name">getSwitches</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">verbose</span>=<span class="summary-sig-default">False</span>)</span><br />
+ Read switches from Mininet.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitches">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts" class="summary-sig-name">getHosts</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">verbose</span>=<span class="summary-sig-default">False</span>)</span><br />
+ Read hosts from Mininet.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getHosts">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks" class="summary-sig-name">getLinks</a>(<span class="summary-sig-arg">self</span>)</span><br />
+ Gathers information about current Mininet links.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getLinks">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches" class="summary-sig-name">compareSwitches</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">switches</span>,
+ <span class="summary-sig-arg">switchesJson</span>,
+ <span class="summary-sig-arg">portsJson</span>)</span><br />
+ Compare mn and onos switches
+ switchesJson: parsed json object from the onos devices api</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareSwitches">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="compareLinks"></a><span class="summary-sig-name">compareLinks</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">switches</span>,
+ <span class="summary-sig-arg">links</span>,
+ <span class="summary-sig-arg">linksJson</span>)</span><br />
+ Compare mn and onos links linksJson: parsed json object from the onos
+ links api</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareLinks">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts" class="summary-sig-name">compareHosts</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">hosts</span>,
+ <span class="summary-sig-arg">hostsJson</span>)</span><br />
+ Compare mn and onos Hosts.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareHosts">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getHostsOld"></a><span class="summary-sig-name">getHostsOld</span>(<span class="summary-sig-arg">self</span>)</span><br />
+ Returns a list of all hosts Don't ask questions just use it</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getHostsOld">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getSwitch"></a><span class="summary-sig-name">getSwitch</span>(<span class="summary-sig-arg">self</span>)</span><br />
+ Returns a list of all switches Again, don't ask question just use
+ it...</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitch">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="update"></a><span class="summary-sig-name">update</span>(<span class="summary-sig-arg">self</span>)</span><br />
+ updates the port address and status information for each port in mn</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.update">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignVLAN" class="summary-sig-name">assignVLAN</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">host</span>,
+ <span class="summary-sig-arg">intf</span>,
+ <span class="summary-sig-arg">vlan</span>)</span><br />
+ Add vlan tag to a host.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.assignVLAN">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">**execparams</span>)</span><br />
+ It facilitates the command line execution of a given command.
+ <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
+ <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">response</span>)</span>
+ <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">handle</span>,
+ <span class="summary-sig-arg">pwd</span>,
+ <span class="summary-sig-arg">default</span>)</span>
+ <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">user_name</span>,
+ <span class="summary-sig-arg">ip_address</span>,
+ <span class="summary-sig-arg">filepath</span>,
+ <span class="summary-sig-arg">pwd</span>,
+ <span class="summary-sig-arg">dst_path</span>)</span><br />
+ Connection will establish to the remote host using ssh.
+ <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
<tr>
<td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="TestON.drivers.common.clidriver.CLI-class.html">clidriver.CLI</a></code></b>:
- <code><a href="TestON.drivers.common.clidriver.CLI-class.html#execute">execute</a></code>,
- <code><a href="TestON.drivers.common.clidriver.CLI-class.html#onfail">onfail</a></code>,
- <code><a href="TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser">runAsSudoUser</a></code>,
- <code><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy">secureCopy</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="TestON.drivers.component.Component-class.html">component.Component</a></code></b>:
- <code><a href="TestON.drivers.component.Component-class.html#__getattr__">__getattr__</a></code>,
- <code><a href="TestON.drivers.component.Component-class.html#cleanup">cleanup</a></code>,
- <code><a href="TestON.drivers.component.Component-class.html#close_log_handles">close_log_handles</a></code>,
- <code><a href="TestON.drivers.component.Component-class.html#config">config</a></code>,
- <code><a href="TestON.drivers.component.Component-class.html#experimentRun">experimentRun</a></code>,
- <code><a href="TestON.drivers.component.Component-class.html#log">log</a></code>
+ <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
+ <code>__getattr__</code>,
+ <code>cleanup</code>,
+ <code>close_log_handles</code>,
+ <code>config</code>,
+ <code>experimentRun</code>,
+ <code>get_version</code>,
+ <code>log</code>
</p>
<p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
<code>__delattr__</code>,
@@ -453,8 +1555,7 @@
</td>
</tr></table>
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
+ <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
<dl class="fields">
<dt>Overrides:
object.__init__
@@ -478,35 +1579,509 @@
</td>
</tr></table>
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
+ <p>Here the main is the TestON instance after creating all the log
+ handles.</p>
<dl class="fields">
<dt>Overrides:
- <a href="TestON.drivers.component.Component-class.html#connect">component.Component.connect</a>
+ component.Component.connect
</dt>
</dl>
</td></tr></table>
</div>
-<a name="get_version"></a>
+<a name="startNet"></a>
<div>
<table class="details" border="1" cellpadding="3"
cellspacing="0" width="100%" bgcolor="white">
<tr><td>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_version</span>(<span class="sig-arg">self</span>)</span>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">startNet</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">topoFile</span>=<span class="sig-default">''</span>,
+ <span class="sig-arg">args</span>=<span class="sig-default">''</span>,
+ <span class="sig-arg">mnCmd</span>=<span class="sig-default">''</span>,
+ <span class="sig-arg">timeout</span>=<span class="sig-default">120</span>)</span>
</h3>
</td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.get_version">source code</a></span>
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.startNet">source code</a></span>
</td>
</tr></table>
-
+ <pre class="literalblock">
+
+Description:
+ Starts Mininet accepts a topology(.py) file and/or an optional
+ argument, to start the mininet, as a parameter.
+ Can also send regular mininet command to load up desired topology.
+ Eg. Pass in a string 'sudo mn --topo=tree,3,3' to mnCmd
+Options:
+ topoFile = file path for topology file (.py)
+ args = extra option added when starting the topology from the file
+ mnCmd = Mininet command use to start topology
+Returns:
+ main.TRUE if the mininet starts successfully, main.FALSE
+ otherwise
+
+</pre>
<dl class="fields">
- <dt>Overrides:
- <a href="TestON.drivers.component.Component-class.html#get_version">component.Component.get_version</a>
- </dt>
+ </dl>
+</td></tr></table>
+</div>
+<a name="pingall"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">pingall</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">timeout</span>=<span class="sig-default">300</span>,
+ <span class="sig-arg">shortCircuit</span>=<span class="sig-default">False</span>,
+ <span class="sig-arg">acceptableFailed</span>=<span class="sig-default">0</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingall">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Verifies the reachability of the hosts using pingall command.
+Optional parameter timeout allows you to specify how long to
+wait for pingall to complete
+Optional:
+timeout( seconds ) - How long to wait before breaking the pingall
+shortCircuit - Break the pingall based on the number of failed hosts
+ ping
+acceptableFailed - Set the number of acceptable failed pings for the
+ function to still return main.TRUE
+Returns:
+main.TRUE if pingall completes with no pings dropped
+otherwise main.FALSE
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="fpingHost"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">fpingHost</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">**pingParams</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.fpingHost">source code</a></span>
+ </td>
+ </tr></table>
+
+ <p>Uses the fping package for faster pinging... *requires fping to be
+ installed on machine running mininet</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="pingallHosts"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">pingallHosts</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">hostList</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingallHosts">source code</a></span>
+ </td>
+ </tr></table>
+
+ <p>Ping all specified IPv4 hosts</p>
+ <p>Acceptable hostList:</p>
+ <ul>
+ <li>
+ [ 'h1','h2','h3','h4' ]
+ </li>
+ </ul>
+ <p>Returns main.TRUE if all hosts specified can reach each other</p>
+ <p>Returns main.FALSE if one or more of hosts specified cannot reach each
+ other</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="pingIpv6Hosts"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">pingIpv6Hosts</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">hostList</span>,
+ <span class="sig-arg">prefix</span>=<span class="sig-default">'1000::'</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingIpv6Hosts">source code</a></span>
+ </td>
+ </tr></table>
+
+ <p>IPv6 ping all hosts in hostList. If no prefix passed this will use
+ default prefix of 1000:</p>
+<pre class="literalblock">
+
+</pre>
+ <p>Returns main.TRUE if all hosts specified can reach each other</p>
+ <p>Returns main.FALSE if one or more of hosts specified cannot reach each
+ other</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="iperftcpAll"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">iperftcpAll</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">hosts</span>,
+ <span class="sig-arg">timeout</span>=<span class="sig-default">6</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperftcpAll">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Runs the iperftcp function with a given set of hosts and specified timeout.
+
+@parm:
+ timeout: The defualt timeout is 6 sec to allow enough time for a successful test to complete,
+ and short enough to stop an unsuccessful test from quiting and cleaning up mininet.
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="iperftcp"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">iperftcp</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">host1</span>=<span class="sig-default">"h1"</span>,
+ <span class="sig-arg">host2</span>=<span class="sig-default">"h2"</span>,
+ <span class="sig-arg">timeout</span>=<span class="sig-default">6</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperftcp">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Creates an iperf TCP test between two hosts. Returns main.TRUE if test results
+are valid.
+
+@parm:
+ timeout: The defualt timeout is 6 sec to allow enough time for a successful test to complete,
+ and short enough to stop an unsuccessful test from quiting and cleaning up mininet.
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="iperfudp"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">iperfudp</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">bandwidth</span>=<span class="sig-default">"10M"</span>,
+ <span class="sig-arg">host1</span>=<span class="sig-default">"h1"</span>,
+ <span class="sig-arg">host2</span>=<span class="sig-default">"h2"</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperfudp">source code</a></span>
+ </td>
+ </tr></table>
+
+ <p>Creates an iperf UDP test with a specific bandwidth. Returns true if
+ results are valid.</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="getSwController"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">getSwController</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">sw</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwController">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Parameters:
+ sw: The name of an OVS switch. Example "s1"
+Return:
+ The output of the command from the mininet cli
+ or main.FALSE on timeout
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="assignSwController"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">assignSwController</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">sw</span>,
+ <span class="sig-arg">ip</span>,
+ <span class="sig-arg">port</span>=<span class="sig-default">"6633"</span>,
+ <span class="sig-arg">ptcp</span>=<span class="sig-default">""</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.assignSwController">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Description:
+ Assign switches to the controllers ( for ovs use only )
+Required:
+ sw - Name of the switch. This can be a list or a string.
+ ip - Ip addresses of controllers. This can be a list or a string.
+Optional:
+ port - ONOS use port 6633, if no list of ports is passed, then
+ the all the controller will use 6633 as their port number
+ ptcp - ptcp number, This can be a string or a list that has
+ the same length as switch. This is optional and not required
+ when using ovs switches.
+NOTE: If switches and ptcp are given in a list type they should have the
+ same length and should be in the same order, Eg. sw=[ 's1' ... n ]
+ ptcp=[ '6637' ... n ], s1 has ptcp number 6637 and so on.
+
+Return:
+ Returns main.TRUE if mininet correctly assigned switches to
+ controllers, otherwise it will return main.FALSE or an appropriate
+ exception(s)
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="addSwitch"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">addSwitch</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">sw</span>,
+ <span class="sig-arg">**kwargs</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addSwitch">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+adds a switch to the mininet topology
+NOTE: This uses a custom mn function. MN repo should be on
+ dynamic_topo branch
+NOTE: cannot currently specify what type of switch
+required params:
+ sw = name of the new switch as a string
+optional keywords:
+ dpid = "dpid"
+returns: main.FALSE on an error, else main.TRUE
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="delSwitch"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">delSwitch</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">sw</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delSwitch">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+delete a switch from the mininet topology
+NOTE: This uses a custom mn function. MN repo should be on
+ dynamic_topo branch
+required params:
+ sw = name of the switch as a string
+returns: main.FALSE on an error, else main.TRUE
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="addLink"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">addLink</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">node1</span>,
+ <span class="sig-arg">node2</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addLink">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+add a link to the mininet topology
+NOTE: This uses a custom mn function. MN repo should be on
+ dynamic_topo branch
+NOTE: cannot currently specify what type of link
+required params:
+node1 = the string node name of the first endpoint of the link
+node2 = the string node name of the second endpoint of the link
+returns: main.FALSE on an error, else main.TRUE
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="delLink"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">delLink</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">node1</span>,
+ <span class="sig-arg">node2</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delLink">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+delete a link from the mininet topology
+NOTE: This uses a custom mn function. MN repo should be on
+ dynamic_topo branch
+required params:
+node1 = the string node name of the first endpoint of the link
+node2 = the string node name of the second endpoint of the link
+returns: main.FALSE on an error, else main.TRUE
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="addHost"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">addHost</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">hostname</span>,
+ <span class="sig-arg">**kwargs</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addHost">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Add a host to the mininet topology
+NOTE: This uses a custom mn function. MN repo should be on
+ dynamic_topo branch
+NOTE: cannot currently specify what type of host
+required params:
+ hostname = the string hostname
+optional key-value params
+ switch = "switch name"
+ returns: main.FALSE on an error, else main.TRUE
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="delHost"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">delHost</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">hostname</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delHost">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+delete a host from the mininet topology
+NOTE: This uses a custom mn function. MN repo should be on
+ dynamic_topo branch
+NOTE: this uses a custom mn function
+required params:
+hostname = the string hostname
+returns: main.FALSE on an error, else main.TRUE
+
+</pre>
+ <dl class="fields">
</dl>
</td></tr></table>
</div>
@@ -517,22 +2092,281 @@
<tr><td>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">handle</span>)</span>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
</h3>
</td><td align="right" valign="top"
><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.disconnect">source code</a></span>
</td>
</tr></table>
-
+ <p>Called at the end of the test to stop the mininet and disconnect the
+ handle.</p>
<dl class="fields">
<dt>Overrides:
- <a href="TestON.drivers.component.Component-class.html#disconnect">component.Component.disconnect</a>
+ component.Component.disconnect
</dt>
</dl>
</td></tr></table>
</div>
+<a name="stopNet"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">stopNet</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">fileName</span>=<span class="sig-default">""</span>,
+ <span class="sig-arg">timeout</span>=<span class="sig-default">5</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.stopNet">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Stops mininet.
+Returns main.TRUE if the mininet successfully stops and
+ main.FALSE if the pexpect handle does not exist.
+
+Will cleanup and exit the test if mininet fails to stop
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="getFlowTable"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">getFlowTable</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">protoVersion</span>,
+ <span class="sig-arg">sw</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getFlowTable">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Returns certain fields of an OVS flow table. Will force output to
+either OF 1.0 or 1.3 format for consistency.
+
+TODO add option to look at cookies. ignoring them for now
+
+ NOTE: Use format to force consistent flow table output across
+ versions
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="getPorts"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">getPorts</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">nodeName</span>,
+ <span class="sig-arg">verbose</span>=<span class="sig-default">False</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getPorts">source code</a></span>
+ </td>
+ </tr></table>
+
+ <p>Read ports from a Mininet switch.</p>
+ <p>Returns a json structure containing information about the ports of the
+ given switch.</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="getSwitches"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">getSwitches</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">verbose</span>=<span class="sig-default">False</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitches">source code</a></span>
+ </td>
+ </tr></table>
+
+ <p>Read switches from Mininet.</p>
+ <p>Returns a dictionary whose keys are the switch names and the value is
+ a dictionary containing information about the switch.</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="getHosts"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">getHosts</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">verbose</span>=<span class="sig-default">False</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getHosts">source code</a></span>
+ </td>
+ </tr></table>
+
+ <p>Read hosts from Mininet.</p>
+ <p>Returns a dictionary whose keys are the host names and the value is a
+ dictionary containing information about the host.</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="getLinks"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">getLinks</span>(<span class="sig-arg">self</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getLinks">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Gathers information about current Mininet links. These links may not
+be up if one of the ports is down.
+
+Returns a list of dictionaries with link endpoints.
+
+The dictionary structure is:
+ { 'node1': str( node1 name )
+ 'node2': str( node2 name )
+ 'port1': str( port1 of_port )
+ 'port2': str( port2 of_port ) }
+Note: The port number returned is the eth#, not necessarily the of_port
+ number. In Mininet, for OVS switch, these should be the same. For
+ hosts, this is just the eth#.
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="compareSwitches"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">compareSwitches</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">switches</span>,
+ <span class="sig-arg">switchesJson</span>,
+ <span class="sig-arg">portsJson</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareSwitches">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+ Compare mn and onos switches
+ switchesJson: parsed json object from the onos devices api
+
+Dependencies:
+ 1. numpy - "sudo pip install numpy"
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="compareHosts"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">compareHosts</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">hosts</span>,
+ <span class="sig-arg">hostsJson</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareHosts">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Compare mn and onos Hosts.
+Since Mininet hosts are quiet, ONOS will only know of them when they
+speak. For this reason, we will only check that the hosts in ONOS
+stores are in Mininet, and not vice versa.
+
+Arguments:
+ hostsJson: parsed json object from the onos hosts api
+Returns:
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="assignVLAN"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">assignVLAN</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">host</span>,
+ <span class="sig-arg">intf</span>,
+ <span class="sig-arg">vlan</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.assignVLAN">source code</a></span>
+ </td>
+ </tr></table>
+
+ <pre class="literalblock">
+
+Add vlan tag to a host.
+Dependencies:
+ This class depends on the "vlan" package
+ $ sudo apt-get install vlan
+Configuration:
+ Load the 8021q module into the kernel
+ $sudo modprobe 8021q
+
+ To make this setup permanent:
+ $ sudo su -c 'echo "8021q" >> /etc/modules'
+
+</pre>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
<br />
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
@@ -554,13 +2388,18 @@
<th> <a
href="help.html">Help</a> </th>
- <th class="navbar" width="100%"></th>
+ <!-- Project homepage -->
+ <th class="navbar" align="right" width="100%">
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr><th class="navbar" align="center"
+ >TestON</th>
+ </tr></table></th>
</tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Mar 11 12:56:26 2013
+ Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"