Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
The POX Controller
Python C++ Other
Branch: debugger
Pull request Compare This branch is 190 commits ahead, 828 commits behind carp.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
doc
ext
pox
tests
tools
.gitignore
.pylint
COPYING
README
debug-pox.py
pox.py
setup.cfg

README

POX is a network controller written in Python.

POX officially requires Python 2.7 (though much of it will work fine
fine with Python 2.6), and should run under Linux, Mac OS, and Windows.
You can place a pypy distribution alongside pox.py (in a directory
named "pypy"), and POX will run with pypy (this can be a significant
performance boost!).

POX currently communicates with OpenFlow 1.0 switches.

pox.py boots up POX. It takes a list of module names on the command line,
locates the modules, calls their launch() function (if it exists), and
then opens up a Python commandline for interactive use.

Modules are looked for everywhere that Python normally looks, plus the
"pox" and "ext" directories.  Thus, you can do the following:

  ./pox.py forwarding.l2_learning

You can pass options to the modules by specifying options after the module
name.  These are passed to the module's launch() funcion.  For example,
to set the address or port of the controller, invoke as follows:

  ./pox.py openflow.of_01 --address=10.1.1.1 --port=6634

pox.py also supports a few command line options of its own which should
be given first:
 --verbose      print stack traces for initialization exceptions
 --no-cli       don't bring up a Python interpreter
 --no-openflow  don't start the openflow module automatically
Something went wrong with that request. Please try again.