Skip to content
Snippets Groups Projects
Commit 63214ea2 authored by Bob Lantz's avatar Bob Lantz
Browse files

Merge branch 'customtopos' into bl-dev

parents e0cfcdd5 28ab4a33
No related branches found
No related tags found
No related merge requests found
NOX Install on deb testing:
Install deps:
sudo apt-get install autoconf automake g++ libtool python python-twisted swig libxerces-c2-dev libssl-dev make python-dev libboost-filesystem1.38-dev libboost1.38-dev libboost-test1.38-dev
Get NOX repo:
git clone git://noxrepo.org/nox
cd nox
If you don't need all the libraries, just the coreapps (faster build):
./boot.sh --apps-core
If you do need all the libraries:
./boot.sh
Build
mkdir build/
cd build/
../configure --with-python=yes
Run w/pyswitch:
cd src
./nox_core -i ptcp: pyswitch
Kill (not name to kill is different than name to load):
sudo killall lt-nox_core
\ No newline at end of file
......@@ -2,8 +2,5 @@ This directory should hold configuration files for custom mininets.
See custom_example.py, which loads the default minimal topology. The advantage of defining a mininet in a separate file is that you then use the --custom option in mn to run the CLI or specific tests with it.
Each custom file must define a Mininet object for an 'mn' variable.
To start up a mininet with this custom topology, do:
sudo mn --custom custom_example.py
To start up a mininet with the provided custom topology, do:
sudo mn --custom custom_example.py --topo mytopo
File moved
......@@ -462,9 +462,11 @@ def __init__( self, name, inNamespace=False, noxArgs=None, **kwargs ):
noxArgs = [ noxArgs ]
if not noxArgs:
noxArgs = [ 'packetdump' ]
if 'NOX_CORE_DIR' not in os.environ:
exit( 'exiting; please set missing NOX_CORE_DIR env var' )
noxCoreDir = os.environ[ 'NOX_CORE_DIR' ]
if not noxCoreDir:
raise Exception( 'please set NOX_CORE_DIR env var\n' )
Controller.__init__( self, name,
controller=noxCoreDir + '/nox_core',
cargs='--libdir=/usr/local/lib -v -i ptcp: ' +
......
#!/bin/sh
#Brandon Heller (brandonh@stanford.edu)
#Install custom kernel on Debian Lenny
#The easy approach: download pre-built linux-image and linux-headers packages:
wget http://www.stanford.edu/~brandonh/linux-headers-2.6.29.6-custom_2.6.29.6-custom-10.00.Custom_i386.deb
wget http://www.stanford.edu/~brandonh/linux-image-2.6.29.6-custom_2.6.29.6-custom-10.00.Custom_i386.deb
#Install custom linux headers and image:
sudo dpkg -i linux-image-2.6.29.6-custom_2.6.29.6-custom-10.00.Custom_i386.deb linux-headers-2.6.29.6-custom_2.6.29.6-custom-10.00.Custom_i386.deb
#The default should be the new kernel. Otherwise, you may need to modify /boot/grub/menu.lst to set the default to the entry corresponding to the kernel you just installed.
#Reduce boot screen opt-out delay. Modify timeout in /boot/grub/menu.lst to 1:
sudo sed -i -e 's/^timeout.*$/timeout 1/' /boot/grub/menu.lst"
\ No newline at end of file
#!/bin/sh
#Brandon Heller (brandonh@stanford.edu)
#Clean up custom kernel on Debian Lenny (part 2)
#To save disk space, remove previous kernel
sudo apt-get -y remove linux-image-2.6.26-2-686
#Also remove downloaded packages:
rm linux-headers-2.6.29.6-custom_2.6.29.6-custom-10.00.Custom_i386.deb linux-image-2.6.29.6-custom_2.6.29.6-custom-10.00.Custom_i386.deb
\ No newline at end of file
#!/bin/sh
#Brandon Heller (brandonh@stanford.edu)
#Install Mininet deps on Debian Lenny
#Install dependencies:
sudo apt-get install -y screen psmisc xterm ssh iperf iproute python-setuptools
#Get the source, with the customtopos branch (for now, this should be removed shortly):
git clone git@yuba.stanford.edu:mininet.git
cd ~/mininet
git checkout -b customtopos origin/customtopos
#Add sysctl parameters as noted in the INSTALL file to increase kernel limits to support larger setups:
sudo su -c "cat /home/mininet/mininet/sysctl_addon >> /etc/sysctl.conf"
#Load sysctl settings:
sudo sysctl -p
#Reboot to ensure you start with higher limits and verify that the IPv6 module is not loaded, plus there's an unknown issue where you need to reboot before the kernel datapath will get added (sorry).
sudo reboot
#!/bin/sh
#Brandon Heller (brandonh@stanford.edu)
#Install NOX on Debian Lenny
#Install NOX deps:
sudo apt-get -y install autoconf automake g++ libtool python python-twisted swig libboost1.35-dev libxerces-c2-dev libssl-dev make
#Install NOX optional deps:
sudo apt-get install -y libsqlite3-dev python-simplejson
#Install NOX:
git clone git://noxrepo.org/noxcore
cd noxcore
./boot.sh
mkdir build
cd build
../configure --with-python=yes
make
#make check
#Add NOX_CORE_DIR env var;; modify ~/.bashrc:
sudo sed -i -e 's|# for examples$|&\ncomplete -cf sudo|' ~/.bashrc
\ No newline at end of file
#!/bin/sh
#Brandon Heller (brandonh@stanford.edu)
#Install OpenFlow and tools on Debian Lenny
#The following will cause a full OF install, with both user and kernel switch, dissector, tests, and everything.
#The instructions below are an abbreviated version from [[http://www.openflowswitch.org/wk/index.php/Debian_Install][ !OpenFlow Debian install instructions]], modified to use Debian Lenny rather than unstable.
sudo apt-get install -y git-core automake m4 pkg-config libtool make libc6-dev autoconf autotools-dev gcc
git clone git://openflowswitch.org/openflow.git
cd ~/openflow
#Switch to a temporary branch that should work on Debian Lenny.
git checkout -b debianfix origin/debianfix
#Install deps:
sudo regress/scripts/install_deps.pl
#Resume the install:
git fetch
git checkout -b release/0.8.9 origin/release/0.8.9
./boot.sh
./configure --with-l26=/lib/modules/`uname -r`
make
sudo make install
#Modify /etc/rc.local to auto-add the ofdatapath kmod on boot, as well as auto-add the tun module (used by user-space datapath to create a local switch port):
sudo sed -i -e 's|# By default this script does nothing.|&\nmodprobe tun\ninsmod /home/mininet/openflow/datapath/linux-2.6/ofdatapath.ko|' /etc/rc.local
#Run both commands now, before trying mininet:
sudo modprobe tun
sudo insmod /home/mininet/openflow/datapath/linux-2.6/ofdatapath.ko
#Install dissector:
sudo apt-get install -y wireshark libgtk2.0-dev
cd ~/openflow/utilities/wireshark_dissectors/openflow
make
sudo make install
#Remove avahi-daemon, which may cause unwanted discovery packets to be sent during tests, near link status changes:
sudo apt-get remove -y avahi-daemon
#Disable IPv6. Add to /etc/modprobe.d/blacklist.conf:
sudo sh -c "echo -e 'blacklist net-pf-10\nblacklist ipv6' > /etc/modprobe.d/blacklist.conf"
#Enable command auto completion using sudo; modify ~/.bashrc:
sudo sed -i -e 's|# for examples$|&\ncomplete -cf sudo|' ~/.bashrc
#!/bin/sh
#Brandon Heller (brandonh@stanford.edu)
#Install OVS on Debian Lenny
#The following files were useful for the install process:
#OVS INSTALL file:
#http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob_plain;f=INSTALL.Linux;hb=HEAD
#OVS OpenFlow INSTALL file:
#http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob_plain;f=INSTALL.OpenFlow;hb=HEAD
#OVS README file:
#http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob_plain;f=README;hb=HEAD
#Install Autoconf 2.63 from source (a more recent version than that in the Deb repositories is required). This should be the only extra dependency.
cd ~/
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.63.tar.bz2
tar xjf autoconf-2.63.tar.bz2
cd autoconf-2.63/
./configure
make
sudo make install
cd ~/
rm -rf autoconf*
#Install OVS:
git clone git://openvswitch.org/openvswitch
cd openvswitch
./boot.sh
./configure --with-l26=/lib/modules/`uname -r`/build
make
sudo make install
\ No newline at end of file
#!/bin/sh
#Brandon Heller (brandonh@stanford.edu)
#Install extra tools on Debian Lenny
#Install tcpdump and tshark, cmd-line packet dump tools. Also install gitk,
#a graphical git history viewer.
sudo apt-get install -y tcpdump tshark gitk
File moved
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment