|   | 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 |  |