Changes between Version 144 and Version 145 of GENIExperimenter/Tutorials/OpenFlowOVS/Execute
- Timestamp:
- 11/19/15 23:16:54 (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GENIExperimenter/Tutorials/OpenFlowOVS/Execute
v144 v145 182 182 Can you tell now why there were packets flowing even after you killed your controller? 183 183 184 === Useful Tips for writing your controller === 184 === 3d. Download the pox apps === 185 To help you get started with your controller writing, we will provide: 186 * skeleton files for the controllers where you only need to complete some missing functionality 187 * the solution: fully implemented controllers 188 * a utility library that makes some of the pox messages easier to write 189 190 '''In the controller terminal execute''': 191 {{{ 192 cd /tmp/pox/ext 193 wget http://www.gpolab.bbn.com/experiment-support/NFVApps/pox-intro-ctrlapps.tar.gz 194 tar xvfz pox-intro-ctrlapps.tar.gz 195 }}} 196 ==== Useful Tips for writing your controller ==== 185 197 186 198 In order to make this first experience of writing a controller easier, we wrote some helpful functions that will abstract some of the particularities of POX away. … … 205 217 * createArpReply : Create an Arp Reply for a different source IP 206 218 207 === 3 d. Debugging your Controller ===219 === 3e. Debugging your Controller === 208 220 While you are developing your controller, some useful debugging tools are: 209 221 … … 242 254 listening on. And once you have lines, you can choose one of the lines and choose "Decode as ...." and choose the ''OFP protocol''. 243 255 244 === 3 e. Run a traffic duplication controller ===256 === 3f. Run a traffic duplication controller === 245 257 246 258 In the above example we ran a very simple learning switch controller. [[BR]] … … 292 304 }}} 293 305 294 === 3 d. Run a port forward Controller ===306 === 3g. Run a port forward Controller === 295 307 296 308 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. … … 347 359 }}} 348 360 349 === 3 e. Run a Server Proxy Controller ===361 === 3h. Run a Server Proxy Controller === 350 362 351 363 As our last exercise, instead of diverting the traffic to a different server running on the same host, we will divert the traffic to a server running on a different host and on a different port.