Changes between Version 5 and Version 6 of Internal/OpenFlow/OFIntro


Ignore:
Timestamp:
Jul 26, 2013, 12:37:31 AM (11 years ago)
Author:
akoshibe
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Internal/OpenFlow/OFIntro

    v5 v6  
    1818 * [http://docs.projectfloodlight.org/display/floodlightcontroller/Cbench+(New) cbench] : Controller benchmarking tool
    1919 * [http://www.openflow.org/wk/index.php/Liboftrace liboftrace] : !OpenFlow message parser/analyzer for pcap files   
     20 * [https://bitbucket.org/barnstorm/of-dissector Wireshark+OF dissector] : Wireshark with a dissector for !OpenFlow messages
    2021
    2122This makes things easy since you can image multiple nodes with the same image, and pick and choose what to run where.
     
    115116 }}}
    116117
     118=== 1.2.1 Using Wireshark ===
     119In the above example, `tcpdump` can be replaced by `wireshark`. Wireshark is "friendlier" in that it has a GUI and an !OpenFlow dissector plugin is available for it. In order to use Wireshark, you must enable X11 forwarding from your workstation to the node, with the -X or -Y flag for `ssh` e.g.:
     120{{{
     121ssh -X -l root node1-1
     122}}}
     123
    117124== Using OpenVswitch directly ==
    118125Mininet's datapaths are backed by OVS. Therefore, if you have a Mininet install, you get OVS for "free". You can use OVS directly for your data plane.
    119126
    120 = Multiple controller instances =
     127= II More complex examples =
    121128You can launch multiple instances of Floodlight on one or more nodes. If you decide to run the instances on a single host, the ports used by the Floodlight instances must not conflict i.e. each instance must be assigned a different set of ports.
    122129 
    123130----
    124 = Installation = #install
     131= III Installation = #install
    125132The following are the installation steps and basic usage for the software that are found on the image. For more information, refer to their respective pages; Floodlight and Mininet in particular have very thorough docs.
    126133
    127134Quick links: [[BR]]
    128  [#floodlight 2.1 Floodlight][[BR]]
    129  [#mn 2.2 Mininet][[BR]]
    130  [#cbench 2.3 CBench] [[BR]]
    131  [#loft 2.4 liboftrace] [[BR]]
    132 
     135 [#floodlight 3.1 Floodlight][[BR]]
     136 [#mn 3.2 Mininet][[BR]]
     137 [#cbench 3.3 CBench] [[BR]]
     138 [#loft 3.4 liboftrace] [[BR]]
     139 [#ws 3.5 Wireshark] [[BR]]
     140
     141Note, the following examples are for Ubuntu, since that's what is used at WINLAB. A quick search will often bring up hints/steps for CentOS/RHEL and OSX, but for the most part, you will have to experiment a bit.
     142 
    133143== 2.1 Floodlight == #floodlight
    134144docs: http://docs.projectfloodlight.org/display/floodlightcontroller/Floodlight+Documentation [[BR]]
     
    436446# ofstats sample.pcap 192.168.1.5 6637 > outfile
    437447}}}
     448
     449== 3.5 Wireshark == #ws
     450website(wireshark): http://www.wireshark.org [[BR]]
     451docs(plugin): https://bitbucket.org/barnstorm/of-dissector
     452
     453=== dependencies ===
     454wireshark(source):
     455{{{
     456sudo apt-get install libpcap-dev bison flex libgtk2.0-dev build-essential
     457}}}
     458plugin:
     459{{{
     460sudo apt-get install scons mercurial
     461}}}
     462
     463=== installation/build ===
     464You need the source for Wireshark to build the plugin. At the time of this writing Wireshark is at v.1.10. 
     465{{{
     466wget http://wiresharkdownloads.riverbed.com/wireshark/src/wireshark-1.10.0.tar.bz2
     467tar -xjf wireshark-1.10.0.tar.bz2
     468cd wireshark-1.10.0/
     469./configure
     470}}}
     471
     472The above is sufficient for the plugin. Installing Wireshark from source e.g. with `make;make install` can take a while, so you may choose to install the binary, i.e. do:
     473{{{
     474apt-get install wireshark
     475}}}
     476If you decide to build from source, also install `libwiretap1`.
     477
     478Next fetch and build the plugin:
     479{{{
     480hg clone https://bitbucket.org/barnstorm/of-dissector
     481cd of-dissector/
     482export WIRESHARK=${WS_ROOT}/wireshark-1.10.0/
     483cd src
     484scons install
     485cp openflow.so /usr/local/lib/wireshark/plugins/1.10.0/
     486}}}
     487Where ${WS_ROOT} is the directory you've untarred the Wireshark source to.
     488
     489=== run ===
     490Run Wireshark as root:
     491{{{
     492sudo wireshark
     493}}}
     494
     495You should see openflow.so in the list of plugins if you go to Help > About Wireshark > plugins.