Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Ubuntu 10.04 (Natty) or higher.  (Has been run with Ubuntu 10.04 with Ant versions 1.8.1 or lower).
  • Install JDK and Ant. You can optionally choose to install eclipse but it is not required.
Code Block
xml
xml

sudo apt-get install build-essential default-jdk ant python-dev eclipse

...

Floodlight is simple to download from Github and build.

Code Block
xml
xml

$ git clone git://github.com/floodlight/floodlight.git
$ cd floodlight
$ ant

$ sudo mkdir /var/lib/floodlight
$ sudo chmod 777 /var/lib/floodlight

...

Assuming java is in your path, you can directly run the floodlight.jar file produced by ant.

Code Block
xml
xml

$ java -jar target/floodlight.jar

...

Its also possible to setup, develop and run Floodlight through Eclipse. Rather than setting up projects manually, its easily to use the Eclipse ant target.

Code Block
xml
xml

$ ant eclipse

This creates several files: Floodlight.launch, Floodlight_junit.launch, .classpath, and .project. From these you can setup a new Eclipse project.

...

  • Download the Floodlight VM. It includes floodlight running by default and Mininet.
  • Start it in VMware Fusion (set up new VM with provided vmdk) or VirtualBox (run floodlightcontroller.vbox.sh, click "Network tab" in VirtualBox GUI and OK before powering up - avoid running script from path with space in name, like "../VirtualBox VMs/..")
  • Login (username is floodlight and no password is required)
  • Its possible to run Mininet against the locally running Floodlight (just type "sudo mn") but you can also run it against a remote controller you built as well.  To do that, type:
Code Block
xml
xml

$ sudo mn --controller=remote,ip=<controller ip>,port=6653 --switch ovsk,protocols=OpenFlow13

Optionally run wireshark over ssh. Listen on "eth0? and filter for packets with "of" names.

Code Block
xml
xml

$ ssh -X floodlight@<vm-ip>
$ sudo wireshark

...

If you are finished the getting started guide, you may want to check out Developing Floodlight where you will find a few simple coding examples.