366 | | [{"dpid":"00:00:0e:84:40:39:18:1b"}, |
367 | | {"dpid":"06:d6:ac:16:2d:f5:2d:00"}, |
368 | | {"dpid":"00:00:0e:84:40:39:19:96"}, |
369 | | {"dpid":"00:00:0e:84:40:39:1b:93"}, |
370 | | {"dpid":"00:00:0e:84:40:39:1a:57"}, |
371 | | {"dpid":"00:00:0e:84:40:39:18:58"}, |
372 | | {"dpid":"06:d6:00:24:a8:5d:0b:00"}, |
373 | | {"dpid":"00:01:08:17:f4:b5:2a:00"}, |
374 | | {"dpid":"00:00:00:10:10:17:50:01"}] |
375 | | }}} |
376 | | |
377 | | The InstaGENI !OpenFlow switch is "06:d6:00:24:a8:5d:0b:00", determined the flows for this DPID, note that each of the 3 hosts ("10.42.11.32", "10.42.11.33", and "10.42.11.34") are pinging each other to generate the flows below: |
378 | | {{{ |
379 | | $ curl http://localhost:9090/wm/core/switch/06:d6:00:24:a8:5d:0b:00/flow/json |
| 368 | [{"dpid":"00:00:0e:84:40:39:18:1b"}, ## Internet2 New York |
| 369 | {"dpid":"06:d6:ac:16:2d:f5:2d:00"}, ## UEN OF Switch |
| 370 | {"dpid":"00:00:0e:84:40:39:19:96"}, ## Internet2 Atlanta (VLAN 1750 to 3716) |
| 371 | {"dpid":"00:00:0e:84:40:39:1b:93"}, ## Internet2 Los Angeles OF Switch (VLAN 3716) |
| 372 | {"dpid":"00:00:06:d6:40:39:1b:93"}, ## Internet2 Los Angeles OF Switch (VLAN 1750 to 3716) |
| 373 | {"dpid":"00:00:0e:84:40:39:1a:57"}, ## Internet2 OF Houston Switch |
| 374 | {"dpid":"00:00:0e:84:40:39:18:58"}, ## Internet2 OF Washington Switch |
| 375 | {"dpid":"06:d6:00:24:a8:5d:0b:00"}, ## InstaGENI Rack OF Switch |
| 376 | {"dpid":"00:00:00:10:10:17:50:01"}] ## Rutgers OF Switch |
| 377 | |
| 378 | }}} |
| 379 | |
| 380 | For this section of the test, each of the 4 hosts ("10.42.11.32" (InstaGENI), "10.42.11.33" (InstaGENI), "10.42.11.34" (Emulab), and "10.42.11.151" (WAPG)) are pinging each other to generate flows. Following is a list of flows on the FloodLight controller: |
| 381 | {{{ |
| 382 | |
| 383 | $ curl http://localhost:9090/wm/core/switch/06:d6:00:24:a8:5d:0b:00/flow/json |
385 | | "networkTypeOfService":0,"transportDestination":0,"transportSource":0,"wildcards":3145952},"durationSeconds":1259, |
386 | | "durationNanoseconds":858000000,"packetCount":2493,"byteCount":0,"tableId":0,"actions": |
387 | | [{"maxLength":0,"port":12,"lengthU":8,"length":8,"type":"OUTPUT"}],"priority":0}, |
388 | | |
389 | | {"cookie":9007199254740992,"idleTimeout":5,"hardTimeout":0,"match":{"dataLayerDestination":"02:a5:09:f2:32:bb", |
390 | | "dataLayerSource":"02:3a:2d:fc:da:7a","dataLayerType":"0x0800","dataLayerVirtualLan":-1, |
391 | | "dataLayerVirtualLanPriorityCodePoint":0,"inputPort":10,"networkDestination":"10.42.11.34", |
392 | | "networkDestinationMaskLen":32,"networkProtocol":0,"networkSource":"10.42.11.32","networkSourceMaskLen":32, |
393 | | "networkTypeOfService":0,"transportDestination":0,"transportSource":0,"wildcards":3145952},"durationSeconds":1229, |
394 | | "durationNanoseconds":137000000,"packetCount":1222,"byteCount":0,"tableId":0,"actions": |
| 389 | "networkTypeOfService":0,"transportDestination":0,"transportSource":0,"wildcards":3145952},"durationSeconds":842, |
| 390 | "durationNanoseconds":387000000,"packetCount":836,"byteCount":0,"tableId":0,"actions": |
| 393 | {"cookie":9007199254740992,"idleTimeout":5,"hardTimeout":0,"match":{"dataLayerDestination":"00:1f:29:32:72:b5", |
| 394 | "dataLayerSource":"02:fc:91:ac:8d:d8","dataLayerType":"0x0800","dataLayerVirtualLan":-1, |
| 395 | "dataLayerVirtualLanPriorityCodePoint":0,"inputPort":12,"networkDestination":"10.42.11.151","networkDestinationMaskLen":32, |
| 396 | "networkProtocol":0,"networkSource":"10.42.11.33","networkSourceMaskLen":32,"networkTypeOfService":0,"transportDestination":0, |
| 397 | "transportSource":0,"wildcards":3145952},"durationSeconds":842,"durationNanoseconds":179000000,"packetCount":836,"byteCount":0, |
| 398 | "tableId":0,"actions":[{"maxLength":0,"port":19,"lengthU":8,"length":8,"type":"OUTPUT"}],"priority":0}, |
| 399 | |
398 | | "dataLayerSource":"02:a5:09:f2:32:bb","dataLayerType":"0x0800","dataLayerVirtualLan":-1, |
399 | | "dataLayerVirtualLanPriorityCodePoint":0,"inputPort":19,"networkDestination":"10.42.11.32", |
400 | | "networkDestinationMaskLen":32,"networkProtocol":0,"networkSource":"10.42.11.34","networkSourceMaskLen":32, |
401 | | "networkTypeOfService":0,"transportDestination":0,"transportSource":0,"wildcards":3145952}, |
402 | | "durationSeconds":1229,"durationNanoseconds":50000000,"packetCount":1221,"byteCount":0,"tableId":0, |
403 | | "actions":[{"maxLength":0,"port":10,"lengthU":8,"length":8,"type":"OUTPUT"}],"priority":0}, |
404 | | |
405 | | {"cookie":9007199254740992,"idleTimeout":5,"hardTimeout":0,"match":{"dataLayerDestination":"02:3a:2d:fc:da:7a","dataLayerSource":"02:fc:91:ac:8d:d8","dataLayerType":"0x0800", |
406 | | "dataLayerVirtualLan":-1,"dataLayerVirtualLanPriorityCodePoint":0,"inputPort":12,"networkDestination":"10.42.11.32", |
407 | | "networkDestinationMaskLen":32,"networkProtocol":0,"networkSource":"10.42.11.33","networkSourceMaskLen":32, |
408 | | "networkTypeOfService":0,"transportDestination":0,"transportSource":0,"wildcards":3145952},"durationSeconds":1259, |
409 | | "durationNanoseconds":773000000,"packetCount":2492,"byteCount":0,"tableId":0,"actions": |
410 | | [{"maxLength":0,"port":10,"lengthU":8,"length":8,"type":"OUTPUT"}],"priority":0}, |
411 | | }}} |
412 | | |
413 | | Inserted an invalid flow modification, which was rejected. Deleted flow-mod after failure, to make sure no partial flow-mod is left in place: |
| 401 | "dataLayerSource":"00:1f:29:32:72:b5","dataLayerType":"0x0800","dataLayerVirtualLan":-1, |
| 402 | "dataLayerVirtualLanPriorityCodePoint":0,"inputPort":19,"networkDestination":"10.42.11.32","networkDestinationMaskLen":32, |
| 403 | "networkProtocol":0,"networkSource":"10.42.11.151","networkSourceMaskLen":32,"networkTypeOfService":0,"transportDestination":0, |
| 404 | "transportSource":0,"wildcards":3145952},"durationSeconds":842,"durationNanoseconds":500000000,"packetCount":836,"byteCount":0, |
| 405 | "tableId":0,"actions":[{"maxLength":0,"port":10,"lengthU":8,"length":8,"type":"OUTPUT"}],"priority":0}, |
| 406 | |
| 407 | {"cookie":9007199254740992,"idleTimeout":5,"hardTimeout":0,"match":{"dataLayerDestination":"02:fc:91:ac:8d:d8", |
| 408 | "dataLayerSource":"00:1f:29:32:72:b5","dataLayerType":"0x0800","dataLayerVirtualLan":-1,"dataLayerVirtualLanPriorityCodePoint":0, |
| 409 | "inputPort":19,"networkDestination":"10.42.11.33","networkDestinationMaskLen":32,"networkProtocol":0,"networkSource":"10.42.11.151", |
| 410 | "networkSourceMaskLen":32,"networkTypeOfService":0,"transportDestination":0,"transportSource":0,"wildcards":3145952}, |
| 411 | "durationSeconds":841,"durationNanoseconds":277000000,"packetCount":837,"byteCount":0,"tableId":0,"actions": |
| 412 | [{"maxLength":0,"port":12,"lengthU":8,"length":8,"type":"OUTPUT"}],"priority":0} |
| 413 | |
| 414 | }}} |
| 415 | |
| 416 | Inserted a flow modification, which was rejected traffic to the WAPG node pg51 (10.41.11.151). |
416 | | {"success":false,"informational":false,"reasonPhrase":"Not Found","uri":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5","serverError":false,"connectorError":false,"clientError":true,"globalError":false,"redirection":false,"recoverableError":false,"name":"Not Found","error":true,"throwable":null,"description":"The server has not found anything matching the request URI","code":404}lnevers@mallorea:~$ |
| 419 | {"success":false,"informational":false,"reasonPhrase":"Not Found","uri":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5","serverError":false,"connectorError":false,"clientError":true,"globalError":false,"redirection":false,"recoverableError":false,"name":"Not Found","error":true,"throwable":null,"description":"The server has not found anything matching the request URI","code":404} |
| 420 | $ |