diff --git a/examples/nox.py b/examples/nox.py new file mode 100755 index 0000000000000000000000000000000000000000..493714b6bd2fc35d5918a703dfa9c891798949f1 --- /dev/null +++ b/examples/nox.py @@ -0,0 +1,39 @@ +#!/usr/bin/python + +"Create a network from scratch and use NOX as the controller." + +from mininet import init, Controller, Switch, Host, createLink + +def scratchNet( cname='controller', cargs='ptcp:'): + # Create Network + controller = Node( 'c0', inNamespace=False ) + switch = Node( 's0', inNamespace=False ) + h0 = Node( 'h0' ) + h1 = Node( 'h1' ) + createLink( h0, switch ) + createLink( h1, switch ) + # Configure hosts + h0.setIP( h0.intfs[ 0 ], '192.168.123.1', '/24' ) + h1.setIP( h1.intfs[ 0 ], '192.168.123.2', '/24' ) + # Start network using kernel datapath + controller.cmdPrint( cname + ' ' + cargs + '&' ) + switch.cmdPrint( 'dpctl deldp nl:0' ) + switch.cmdPrint( 'dpctl adddp nl:0' ) + for intf in switch.intfs: + switch.cmdPrint( 'dpctl addif nl:0 ' + intf ) + switch.cmdPrint( 'ofprotocol nl:0 tcp:localhost &') + # Run test + h0.cmdPrint( 'ping -c1 ' + h1.IP() ) + # Stop network + controller.cmdPrint( 'kill %' + cname) + switch.cmdPrint( 'dpctl deldp nl:0' ) + switch.cmdPrint( 'kill %ofprotocol' ) + switch.stop() + controller.stop() + +if __name__ == '__main__': + init() + scratchNet( cname='nox_core', cargs='-i ptcp:' ) + + + diff --git a/examples/scratchnet.py b/examples/scratchnet.py new file mode 100755 index 0000000000000000000000000000000000000000..e3fde16c88ce0937d955c7b17901959c54d2a9e6 --- /dev/null +++ b/examples/scratchnet.py @@ -0,0 +1,40 @@ +#!/usr/bin/python + +""" +Build a simple network from scratch, using mininet primitives. +This is more complicated than using the higher-level classes, +but it exposes the configuration details and allows cusomization. +""" + +from mininet import init, Node, createLink + +def scratchNet( cname='controller', cargs='ptcp:'): + # Create Network + controller = Node( 'c0', inNamespace=False ) + switch = Node( 's0', inNamespace=False ) + h0 = Node( 'h0' ) + h1 = Node( 'h1' ) + createLink( h0, switch ) + createLink( h1, switch ) + # Configure hosts + h0.setIP( h0.intfs[ 0 ], '192.168.123.1', '/24' ) + h1.setIP( h1.intfs[ 0 ], '192.168.123.2', '/24' ) + # Start network using kernel datapath + controller.cmdPrint( cname + ' ' + cargs + '&' ) + switch.cmdPrint( 'dpctl deldp nl:0' ) + switch.cmdPrint( 'dpctl adddp nl:0' ) + for intf in switch.intfs: + switch.cmdPrint( 'dpctl addif nl:0 ' + intf ) + switch.cmdPrint( 'ofprotocol nl:0 tcp:localhost &') + # Run test + h0.cmdPrint( 'ping -c1 ' + h1.IP() ) + # Stop network + controller.cmdPrint( 'kill %' + cname) + switch.cmdPrint( 'dpctl deldp nl:0' ) + switch.cmdPrint( 'kill %ofprotocol' ) + switch.stop() + controller.stop() + +if __name__ == '__main__': + init() + scratchNet()