Changes between Version 5 and Version 6 of Internal/OpenFlow/Controllers/Nox


Ignore:
Timestamp:
Nov 6, 2010, 4:30:09 AM (14 years ago)
Author:
akoshibe
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Internal/OpenFlow/Controllers/Nox

    v5 v6  
    11= NOX - Network OS =
    22NOX is an !OpenFlow controller/ controller development platform. Here we'll use the "destiny" (v0.8) branch of NOX from the Git repository.
    3 As of now, a copy of the docs for v0.6 can be found under ./html in my home directory on external2. I shall move this to another, more appropriate place. 
     3As of now, a copy of the docs for v0.6 can be found under ./html in my home directory on external2. I shall move this to another, more appropriate place.
    44
    5 == 1. installation ==
     5Note: in this documentation, ${NOXPATH} is the arbitrary path to your working nox directory. No such variable actually exists.   
     6
     7== 1 installation ==
    681. Install git, build-essential, doxygen (for up-to-date NOX docs)
    79{{{
     
    10122. Pull NOX from git repo
    1113{{{
     14cd ${noxpath}
    1215git clone git://noxrepo.org/nox
    1316}}}
     
    27305. generate documentation
    2831{{{
    29 cd doc/doxygen            <<--from build directory, not ~/nox
     32cd doc/doxygen            <<--from build directory, not ${NOXPATH}/nox
    3033make html
    3134}}}
    32 == 2. using NOX ==
     35
     36= 2. using NOX =
    3337== 2.1. starting up NOX ==
    34 nox_core is used to start the controller and to load any scripts. It is located under ~/nox/build/src . For example
     38nox_core is used to start the controller and to load any scripts. It is located under ${NOXPATH}/nox/build/src . For example
    3539{{{
    3640./nox_core -v -i ptcp:6633 switch packetdump
     
    4145The information on how to do this can be found in /html/Howto.html under the doxygen generated docs for nox. As the steps require file creation, compilation, ect, you may need root privelages on the machine. The rough steps are as follows:
    4246
    43 1. Run nox-new-c-app.py from coreapps, netapps, or webapps (all three directories are found in ${NOXPATH}/nox/src/nox), where ${NOXPATH} is the place with your working nox directory).
     471. Run nox-new-c-app.py from coreapps, netapps, or webapps (all three directories are found in ${NOXPATH}/nox/src/nox ).
    4448{{{
    4549cd nox/src/nox/coreapps
     
    8084}}}
    8185
     86== 3. Customizing your component ==
     87All applications under nox are found in either netapps., coreapps, or webapps. Each app is contained in a directory that includes code for the applications' modules (e.g. routing modules implementing specific algorithms), and a list, named meta.json, used by nox to find and load modules at startup.
     88
     89By itself, your new component only knows how to initiate a channel with an !OpenFlow switch, and to start up the "liveness check" echo requests. This section is a compilation of information on the nox libraries that can be used to define your own controller.
     90
     91== 3.1 Adding flags. ==
     92The `configure` function allows you to define options for your application. When starting nox_core, flags can be specified by the application name, followed by an '=', then your flag(s):
     93{{{
     94./nox_core -v -i ptcp:6633 switch="noflow"
     95}}}
     96I'm guessing if it can take multiple options, you can string multiple flags by delimiting each option with a comma or another '='.
     97
     98 
     99
     100 
     101