From 77131e8f248d0cd956011e62ee68f584a93177d7 Mon Sep 17 00:00:00 2001
From: Bob Lantz <rlantz@cs.stanford.edu>
Date: Mon, 14 Dec 2009 22:13:53 -0800
Subject: [PATCH] OK, now we run 'routing' for the nox configurations with
 loops.

Unfortunately, I can't test this at the moment since nox seems not to
be able to find the routing module.

Added/renamed examples: grid.py, tree1024.py

Added -v flag to nox arguments, so we have some chance of figuring
out why nox is dying, as it generally is.
---
 cleanup                 |  1 +
 examples/grid.py        | 17 +++++++++++++++++
 examples/ripcordtest.py |  8 ++++----
 examples/tree1024.py    | 15 +++++++++++++++
 4 files changed, 37 insertions(+), 4 deletions(-)
 create mode 100755 examples/grid.py
 create mode 100755 examples/tree1024.py

diff --git a/cleanup b/cleanup
index a93a208d..bee88ea7 100755
--- a/cleanup
+++ b/cleanup
@@ -26,6 +26,7 @@ rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
 
 echo "Killing nox"
 killall lt-nox_core
+killall nox_core
 
 echo "Removing old screen sessions"
 screen -ls | egrep -o '[0-9]+\.[hsc][0-9]+' | sed 's/\.[hsc][0-9]*//g' | kill -9
diff --git a/examples/grid.py b/examples/grid.py
new file mode 100755
index 00000000..fea7d6ce
--- /dev/null
+++ b/examples/grid.py
@@ -0,0 +1,17 @@
+#!/usr/bin/python
+
+"Instantiate a Grid network and use NOX as the controller."
+
+from mininet import init, Controller, GridNet, Cli
+
+class NoxController( Controller ):
+   def __init__( self, name, **kwargs ):
+      Controller.__init__( self, name, 
+         controller='nox_core', 
+         cargs='-v --libdir=/usr/local/lib -i ptcp: routing', 
+         cdir='/usr/local/bin', **kwargs)
+   
+if __name__ == '__main__':
+   init()   
+   network = GridNet( 2, 2, kernel=True, Controller=NoxController)
+   network.run( Cli )
diff --git a/examples/ripcordtest.py b/examples/ripcordtest.py
index 719ec6d6..84a64ac3 100755
--- a/examples/ripcordtest.py
+++ b/examples/ripcordtest.py
@@ -9,10 +9,10 @@
 from mininet import createLink, flush
 
 class NoxController( Controller ):
-   "A customized Controller that uses NOX."
-   def __init__( self, name, **kwargs ):
-      Controller.__init__( self, name, 
-         controller='nox_core', cargs='-i ptcp pyswitch', 
+   def __init__( self, name, kernel=False **kwargs ):
+      Controller.__init__( self, name, kernel=kernel,
+         controller='nox_core', 
+         cargs='-v --libdir=/usr/local/lib -i ptcp: routing', 
          cdir='/usr/local/bin', **kwargs)
    
 class FatTree( Network ):
diff --git a/examples/tree1024.py b/examples/tree1024.py
new file mode 100755
index 00000000..3c96770e
--- /dev/null
+++ b/examples/tree1024.py
@@ -0,0 +1,15 @@
+#!/usr/bin/python
+
+"""
+Create a 1024-host network, and run the CLI on it.
+If this fails because of kernel limits, you may have
+to adjust them, e.g. by adding entries to /etc/sysctl.conf
+and running sysctl -p.
+"""
+   
+from mininet import init, TreeNet
+
+if __name__ == '__main__':
+   init()
+   network = TreeNet( depth=2, fanout=32, kernel=True )
+   network.run( Cli )
-- 
GitLab