forked from CPqD/of12softswitch
-
Notifications
You must be signed in to change notification settings - Fork 0
rrdenicol/of12softswitch
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
OpenFlow 1.2 Software Switch ---------------------------- This is an OpenFlow 1.2 [1] compatible user-space software switch implementation. The code is based on the Ericsson TrafficLab 1.1 softswitch implementation [2], with changes in the forwarding plane to support OpenFlow 1.2. The following components are available in the release: - ofdatapath: the switch implementation - ofprotocol: secure channel for connecting the switch to the controller - oflib: a library for converting to/from 1.2 wire format - dpctl: a tool for configuring the switch from the console [1] https://www.opennetworking.org/images/stories/downloads/openflow/openflow-spec-v1.2.pdf [2] https://github.com/TrafficLab/of11softswitch Getting Started --------------- Dependencies ============ In order to compile the switch your system must have the following libraries Libpcap # sudo apt-get install libpcap # sudo apt-get install libpcap-dev ---------------------------------------- Xerces-C version 2.8.0 # sudo apt-get install libxerces-c28 # sudo apt-get install libxerces-c2-dev ---------------------------------------- libpcre # sudo apt-get install libpcre3 # sudo apt-get install libpcre3-dev ---------------------------------------- A recent version of flex and bison # sudo apt-get install flex # sudo apt-get install bison Pre-Building ============ You should follow this steps before building 1 - Add the shared libraries present in netbee-dev to your /usr/local/lib directory. You should have root permission to do this. # mv libn*.so /usr/local/lib 2 - Run ldconfig # ldconfig 3 - Put the folder netbee-dev/nbee in the /usr/include # mv -r netbee-dev/nbee /usr/include Building ======== To build, run the following commands in the of11softswitch directory: ./boot.sh ./configure make Running ======= To start the datapath, run the following commands: cd udatapath sudo ./ofdatapath --datapath-id=<dpid> --interfaces=<if-list> ptcp:<port> This will start the datapath, with the given datapath id, and interace list, opening a passive tcp connection on the given port. For a complete list of options, use the --help argument. To start the secure channel, run the following commands: cd secchan ./ofprotocol tcp:<switch-host>:<switch-port> tcp:<ctrl-host>:<ctrl-port> This will open tcp connections to both the switch and the controller, relaying OpenFlow protocol messages between the two. For a complete list of options, use the --help argument. You can send requests to the switch using the dpctl utility: cd utilities ./dpctl tcp:<switch-host>:<switch-port> stats-flow table=0 For a complete list of commands and arguments, use the --help argument. Contribute ---------- Please submit your bug reports, fixes and suggestions as pull requests on github, or by contacting us directly. License ------- OpenFlow 1.2 Software Switch is released under the BSD license (BSD-like for code from the original Stanford switch). References ---------- [1] OpenFlow: http://www.openflow.org/ [2] ONF: http://www.opennetworkingfoundation.org/ Contact ------- E-mail: Eder Leao Fernandes (ederlf@cpqd.com.br)
About
OpenFlow 1.2 Softswitch
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- C 90.3%
- C++ 8.7%
- Other 1.0%