| | 1 | = NOX - Network OS = |
| | 2 | NOX is an !OpenFlow controller/ controller development platform. Here we'll use the "destiny" (v0.8) branch of NOX from the Git repository. |
| | 3 | == 1. installation == |
| | 4 | 1. Install git, build-essential, doxygen (for up-to-date NOX docs) |
| | 5 | {{{ |
| | 6 | apt-get install git-core build-essential doxygen |
| | 7 | }}} |
| | 8 | 2. Pull NOX from git repo |
| | 9 | {{{ |
| | 10 | git clone git://noxrepo.org/nox |
| | 11 | }}} |
| | 12 | 3. Install dependencies |
| | 13 | {{{ |
| | 14 | sudo apt-get install autoconf automake g++ libtool python python-twisted swig libboost-dev libxerces-c2-dev libssl-dev make libboost-filesystem-dev libboost-test-dev python-dev |
| | 15 | }}} |
| | 16 | 4. Switch to the proper branch and build |
| | 17 | {{{ |
| | 18 | git checkout -b destiny origin/destiny |
| | 19 | ./boot.sh |
| | 20 | mkdir build |
| | 21 | cd build |
| | 22 | ../configure |
| | 23 | make |
| | 24 | }}} |
| | 25 | 5. generate documentation |
| | 26 | {{{ |
| | 27 | cd doc/doxygen <<--from build directory, not ~/nox |
| | 28 | make html |
| | 29 | }}} |
| | 30 | == 2. using NOX == |
| | 31 | == 2.1. starting up NOX == |
| | 32 | nox_core is used to start the controller and to load any scripts. It is located under ~/nox/build/src . For example |
| | 33 | {{{ |
| | 34 | ./nox_core -v -i ptcp:6633 switch packetdump |
| | 35 | }}} |
| | 36 | Will load the "learning switch" script. It will show up as "lt-nox_core" under `ps -ef`. |
| | 37 | |