Changes between Version 5 and Version 6 of Internal/OpenFlow/OFIntro
- Timestamp:
- Jul 26, 2013, 12:37:31 AM (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Internal/OpenFlow/OFIntro
v5 v6 18 18 * [http://docs.projectfloodlight.org/display/floodlightcontroller/Cbench+(New) cbench] : Controller benchmarking tool 19 19 * [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 20 21 21 22 This makes things easy since you can image multiple nodes with the same image, and pick and choose what to run where. … … 115 116 }}} 116 117 118 === 1.2.1 Using Wireshark === 119 In 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 {{{ 121 ssh -X -l root node1-1 122 }}} 123 117 124 == Using OpenVswitch directly == 118 125 Mininet'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. 119 126 120 = Multiple controller instances =127 = II More complex examples = 121 128 You 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. 122 129 123 130 ---- 124 = I nstallation = #install131 = III Installation = #install 125 132 The 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. 126 133 127 134 Quick 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 141 Note, 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 133 143 == 2.1 Floodlight == #floodlight 134 144 docs: http://docs.projectfloodlight.org/display/floodlightcontroller/Floodlight+Documentation [[BR]] … … 436 446 # ofstats sample.pcap 192.168.1.5 6637 > outfile 437 447 }}} 448 449 == 3.5 Wireshark == #ws 450 website(wireshark): http://www.wireshark.org [[BR]] 451 docs(plugin): https://bitbucket.org/barnstorm/of-dissector 452 453 === dependencies === 454 wireshark(source): 455 {{{ 456 sudo apt-get install libpcap-dev bison flex libgtk2.0-dev build-essential 457 }}} 458 plugin: 459 {{{ 460 sudo apt-get install scons mercurial 461 }}} 462 463 === installation/build === 464 You need the source for Wireshark to build the plugin. At the time of this writing Wireshark is at v.1.10. 465 {{{ 466 wget http://wiresharkdownloads.riverbed.com/wireshark/src/wireshark-1.10.0.tar.bz2 467 tar -xjf wireshark-1.10.0.tar.bz2 468 cd wireshark-1.10.0/ 469 ./configure 470 }}} 471 472 The 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 {{{ 474 apt-get install wireshark 475 }}} 476 If you decide to build from source, also install `libwiretap1`. 477 478 Next fetch and build the plugin: 479 {{{ 480 hg clone https://bitbucket.org/barnstorm/of-dissector 481 cd of-dissector/ 482 export WIRESHARK=${WS_ROOT}/wireshark-1.10.0/ 483 cd src 484 scons install 485 cp openflow.so /usr/local/lib/wireshark/plugins/1.10.0/ 486 }}} 487 Where ${WS_ROOT} is the directory you've untarred the Wireshark source to. 488 489 === run === 490 Run Wireshark as root: 491 {{{ 492 sudo wireshark 493 }}} 494 495 You should see openflow.so in the list of plugins if you go to Help > About Wireshark > plugins.