Changes between Version 4 and Version 5 of GENIExperimenter/Tutorials/OpenFlowOVS/Execute
- Timestamp:
- 06/22/13 19:53:52 (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GENIExperimenter/Tutorials/OpenFlowOVS/Execute
v4 v5 23 23 In order to configure our switch, we first need to login to the host that will be used as an OpenFlow switch. 24 24 25 === 2a. Login to OVS host ===25 === 2a. Login to OVS host === 26 26 {{{ 27 27 #!html … … 51 51 }}} 52 52 53 == 2b. Configure the Software Switch==53 === 2b. Configure the Software Switch === 54 54 Now that you are logged in, we need first to configure OVS. To save time in the tutorial we have already started OVS and we have added an ethernet bridge that will act as our software switch. Try: 55 55 {{{ … … 94 94 }}} 95 95 96 === `standalone` vs `secure` mode===96 ==== `standalone` vs `secure` mode ==== 97 97 The OpenFlow controller is responsible for setting up all flows on the switch, which means that when the controller is not running there should be no packet switching at all. Depending on the setup of your network, such a behavior might not be desired. It might be best that when the controller is down, the switch should default back in being a learning layer 2 switch. In other circumstances however this might be undesirable. In OVS this is a tunable parameter, called `fail-safe-mode` which can be set to the following parameters: 98 98 * `standalone` [default] : in which case OVS will take responsibility for forwarding the packets if the controller fails … … 167 167 Can you tell now why there were packets flowing even after you killed your controller? 168 168 169 == Useful Tips for writing your controller==169 === Useful Tips for writing your controller === 170 170 In order to make this first experience of writing controller easier, we wrote some helpful functions that will abstract some of the particularities of PoX away. 171 171 These functions are locates at `/local/pox/ext/utils.py`, so while you write your controller consult this file for details. … … 223 223 If your controller is working you the packets registering in both terminals that you run tcpdump. 224 224 225 == Run a port forward Controller==225 === 3d. Run a port forward Controller === 226 226 Now let's do a slightly more complicated controller. OpenFlow gives you the power to overwrite fields of your packets at the switch, for example the TCP source or destination port and do port forwarding. You can have clients trying to contact a server at port 5000, and the OpenFlow switch can redirect your traffic to a service listening on port 6000. 227 227 … … 257 257 Start your controller and do the same, now your text should appear on the other terminal of host2. 258 258 259 == Run a server proxy Controller==259 === 3e. Run a server proxy Controller === 260 260 As our last exercise, instead of diverging the traffic to a different server running on the same host, we will diverge the traffic to a server running on a different host and on a different port. 261 261