--- /dev/null
+[
+ "group: 00_ALL",
+ {
+ "description":"2Mbps(ethernet/ipv4/tcp)-->'in_port=1,actions=group:all(actions=output:2/actions=output:3)'",
+ "prerequisite":[
+ {
+ "OFPGroupMod":{
+ "group_id":0,
+ "buckets":[
+ {
+ "OFPBucket":{
+ "actions":[
+ {
+ "OFPActionOutput":{
+ "port":2
+ }
+ }
+ ]
+ }
+ },
+ {
+ "OFPBucket":{
+ "actions":[
+ {
+ "OFPActionOutput":{
+ "port":3
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ {
+ "OFPFlowMod":{
+ "match":{
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":1
+ }
+ }
+ ]
+ }
+ },
+ "instructions":[
+ {
+ "OFPInstructionActions":{
+ "actions":[
+ {
+ "OFPActionGroup":{
+ "group_id":0
+ }
+ }
+ ],
+ "type":4
+ }
+ }
+ ]
+ }
+ }
+ ],
+ "tests":[
+ {
+ "ingress":{
+ "packets":{
+ "data":[
+ "ethernet(dst='22:22:22:22:22:22', src='12:11:11:11:11:11', ethertype=2048)",
+ "ipv4(proto=6)",
+ "tcp()",
+ "bytes(b'\\x11' * (1500 - 54))"
+ ],
+ "pktps":175,
+ "duration_time":30
+ }
+ },
+ "egress":{
+ "throughput":[
+ {
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":2
+ }
+ }
+ ]
+ },
+ "kbps":2000
+ },
+ {
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":3
+ }
+ }
+ ]
+ },
+ "kbps":2000
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "description":"2Mbps(ethernet/ipv6/tcp)-->'in_port=1,actions=group:all(actions=output:2/actions=output:3)'",
+ "prerequisite":[
+ {
+ "OFPGroupMod":{
+ "group_id":0,
+ "buckets":[
+ {
+ "OFPBucket":{
+ "actions":[
+ {
+ "OFPActionOutput":{
+ "port":2
+ }
+ }
+ ]
+ }
+ },
+ {
+ "OFPBucket":{
+ "actions":[
+ {
+ "OFPActionOutput":{
+ "port":3
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ {
+ "OFPFlowMod":{
+ "match":{
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":1
+ }
+ }
+ ]
+ }
+ },
+ "instructions":[
+ {
+ "OFPInstructionActions":{
+ "actions":[
+ {
+ "OFPActionGroup":{
+ "group_id":0
+ }
+ }
+ ],
+ "type":4
+ }
+ }
+ ]
+ }
+ }
+ ],
+ "tests":[
+ {
+ "ingress":{
+ "packets":{
+ "data":[
+ "ethernet(dst='22:22:22:22:22:22', src='12:11:11:11:11:11', ethertype=34525)",
+ "ipv6(nxt=6)",
+ "tcp()",
+ "bytes(b'\\x11' * (1500 - 74))"
+ ],
+ "pktps":175,
+ "duration_time":30
+ }
+ },
+ "egress":{
+ "throughput":[
+ {
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":2
+ }
+ }
+ ]
+ },
+ "kbps":2000
+ },
+ {
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":3
+ }
+ }
+ ]
+ },
+ "kbps":2000
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "description":"2Mbps(ethernet/arp)-->'in_port=1,actions=group:all(actions=output:2/actions=output:3)'",
+ "prerequisite":[
+ {
+ "OFPGroupMod":{
+ "group_id":0,
+ "buckets":[
+ {
+ "OFPBucket":{
+ "actions":[
+ {
+ "OFPActionOutput":{
+ "port":2
+ }
+ }
+ ]
+ }
+ },
+ {
+ "OFPBucket":{
+ "actions":[
+ {
+ "OFPActionOutput":{
+ "port":3
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ {
+ "OFPFlowMod":{
+ "match":{
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":1
+ }
+ }
+ ]
+ }
+ },
+ "instructions":[
+ {
+ "OFPInstructionActions":{
+ "actions":[
+ {
+ "OFPActionGroup":{
+ "group_id":0
+ }
+ }
+ ],
+ "type":4
+ }
+ }
+ ]
+ }
+ }
+ ],
+ "tests":[
+ {
+ "ingress":{
+ "packets":{
+ "data":[
+ "ethernet(dst='22:22:22:22:22:22', src='12:11:11:11:11:11', ethertype=2054)",
+ "arp(dst_mac='22:22:22:22:22:22', src_mac='12:11:11:11:11:11')",
+ "bytes(b'\\x11' * (1500 - 42))"
+ ],
+ "pktps":175,
+ "duration_time":30
+ }
+ },
+ "egress":{
+ "throughput":[
+ {
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":2
+ }
+ }
+ ]
+ },
+ "kbps":2000
+ },
+ {
+ "OFPMatch":{
+ "oxm_fields":[
+ {
+ "OXMTlv":{
+ "field":"in_port",
+ "value":3
+ }
+ }
+ ]
+ },
+ "kbps":2000
+ }
+ ]
+ }
+ }
+ ]
+ }
+]