summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMinoru TAKAHASHI <takahashi.minoru7@gmail.com>2016-02-22 11:51:07 +0900
committerFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2016-02-27 20:39:34 +0900
commit51fcda83b5b60859d5c9a924669121839323e1e6 (patch)
treee218bd632c7c79822f74dcbf553583fb013d1538
parent31d56d0d327c6c104336b905bde2469e41f52812 (diff)
lib/ofctl: add test files for ofctl_v14
Signed-off-by: Minoru TAKAHASHI <takahashi.minoru7@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-0-ofp_desc_reply.packet.json9
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-11-ofp_flow_stats_request.packet.json11
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-12-ofp_flow_stats_reply.packet.json197
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-16-ofp_experimenter.packet.json8
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-2-ofp_flow_mod.packet.json103
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-21-ofp_group_mod.packet.json21
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-22-ofp_port_mod.packet.json50
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-25-ofp_aggregate_stats_request.packet.json11
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-26-ofp_aggregate_stats_reply.packet.json9
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-28-ofp_table_stats_reply.packet.json16
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-30-ofp_port_stats_reply.packet.json85
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-32-ofp_group_features_reply.packet.json104
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-34-ofp_group_desc_reply.packet.json24
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-36-ofp_queue_stats_reply.packet.json64
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-43-ofp_meter_mod.packet.json31
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-46-ofp_meter_config_reply.packet.json19
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-48-ofp_meter_stats_reply.packet.json19
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-50-ofp_meter_features_reply.packet.json19
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-52-ofp_port_desc_reply.packet.json83
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-54-ofp_table_features_reply.packet.json11928
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-56-ofp_group_stats_reply.packet.json19
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-63-ofp_queue_desc_request.packet.json4
-rw-r--r--ryu/tests/unit/lib/ofctl_json/of14/5-64-ofp_queue_desc_reply.packet.json65
-rw-r--r--ryu/tests/unit/lib/test_ofctl.py108
-rw-r--r--ryu/tests/unit/ofproto/json/of14/lib-ofctl-ofp_table_features_request.packet.json7
25 files changed, 13012 insertions, 2 deletions
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-0-ofp_desc_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-0-ofp_desc_reply.packet.json
new file mode 100644
index 00000000..8fc54b74
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-0-ofp_desc_reply.packet.json
@@ -0,0 +1,9 @@
+{
+ "1": {
+ "dp_desc": "dp",
+ "hw_desc": "hw",
+ "mfr_desc": "mfr",
+ "serial_num": "serial",
+ "sw_desc": "sw"
+ }
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-11-ofp_flow_stats_request.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-11-ofp_flow_stats_request.packet.json
new file mode 100644
index 00000000..a42dfef0
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-11-ofp_flow_stats_request.packet.json
@@ -0,0 +1,11 @@
+{
+ "flow": {
+ "cookie": 0,
+ "cookie_mask": 0,
+ "flags": 0,
+ "match": {},
+ "out_group": 4294967295,
+ "out_port": 4294967295,
+ "table_id": 0
+ }
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-12-ofp_flow_stats_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-12-ofp_flow_stats_reply.packet.json
new file mode 100644
index 00000000..134c3f12
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-12-ofp_flow_stats_reply.packet.json
@@ -0,0 +1,197 @@
+{
+ "1": [
+ {
+ "byte_count": 0,
+ "cookie": 0,
+ "duration_nsec": 115277000,
+ "duration_sec": 358,
+ "flags": 0,
+ "hard_timeout": 0,
+ "idle_timeout": 0,
+ "importance": 0,
+ "instructions": [],
+ "length": 0,
+ "match": {},
+ "packet_count": 0,
+ "priority": 65535,
+ "table_id": 0
+ },
+ {
+ "byte_count": 0,
+ "cookie": 0,
+ "duration_nsec": 115055000,
+ "duration_sec": 358,
+ "flags": 0,
+ "hard_timeout": 0,
+ "idle_timeout": 0,
+ "importance": 0,
+ "instructions": [
+ {
+ "actions": [
+ {
+ "max_len": 0,
+ "port": 4294967290,
+ "type": "OUTPUT"
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ }
+ ],
+ "length": 0,
+ "match": {
+ "eth_type": 2054
+ },
+ "packet_count": 0,
+ "priority": 65534,
+ "table_id": 0
+ },
+ {
+ "byte_count": 238,
+ "cookie": 0,
+ "duration_nsec": 511582000,
+ "duration_sec": 316220,
+ "flags": 0,
+ "hard_timeout": 0,
+ "idle_timeout": 0,
+ "importance": 0,
+ "instructions": [
+ {
+ "table_id": 1,
+ "type": "GOTO_TABLE"
+ }
+ ],
+ "length": 0,
+ "match": {
+ "eth_src": "f2:0b:a4:7d:f8:ea",
+ "in_port": 6
+ },
+ "packet_count": 3,
+ "priority": 123,
+ "table_id": 0
+ },
+ {
+ "byte_count": 98,
+ "cookie": 0,
+ "duration_nsec": 980901000,
+ "duration_sec": 313499,
+ "flags": 0,
+ "hard_timeout": 0,
+ "idle_timeout": 0,
+ "importance": 0,
+ "instructions": [
+ {
+ "actions": [
+ {
+ "field": "vlan_vid",
+ "mask": null,
+ "type": "SET_FIELD",
+ "value": 258
+ },
+ {
+ "type": "COPY_TTL_OUT"
+ },
+ {
+ "type": "COPY_TTL_IN"
+ },
+ {
+ "type": "COPY_TTL_IN"
+ },
+ {
+ "type": "POP_PBB"
+ },
+ {
+ "ethertype": 4660,
+ "type": "PUSH_PBB"
+ },
+ {
+ "ethertype": 39030,
+ "type": "POP_MPLS"
+ },
+ {
+ "ethertype": 34887,
+ "type": "PUSH_MPLS"
+ },
+ {
+ "type": "POP_VLAN"
+ },
+ {
+ "ethertype": 33024,
+ "type": "PUSH_VLAN"
+ },
+ {
+ "type": "DEC_MPLS_TTL"
+ },
+ {
+ "mpls_ttl": 10,
+ "type": "SET_MPLS_TTL"
+ },
+ {
+ "type": "DEC_NW_TTL"
+ },
+ {
+ "nw_ttl": 10,
+ "type": "SET_NW_TTL"
+ },
+ {
+ "queue_id": 3,
+ "type": "SET_QUEUE"
+ },
+ {
+ "group_id": 99,
+ "type": "GROUP"
+ },
+ {
+ "max_len": 65535,
+ "port": 6,
+ "type": "OUTPUT"
+ },
+ {
+ "data": "ZXhwX2RhdGE=",
+ "experimenter": 98765432,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": "cF9kYXRh",
+ "experimenter": 8992,
+ "subtype": 25976,
+ "type": "EXPERIMENTER"
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "actions": [
+ {
+ "field": "eth_src",
+ "mask": null,
+ "type": "SET_FIELD",
+ "value": "01:02:03:04:05:06"
+ },
+ {
+ "field": "pbb_uca",
+ "mask": null,
+ "type": "SET_FIELD",
+ "value": 1
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "actions": [
+ {
+ "max_len": 65535,
+ "port": 4294967293,
+ "type": "OUTPUT"
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ }
+ ],
+ "length": 0,
+ "match": {},
+ "packet_count": 1,
+ "priority": 0,
+ "table_id": 0
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-16-ofp_experimenter.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-16-ofp_experimenter.packet.json
new file mode 100644
index 00000000..c655f8f0
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-16-ofp_experimenter.packet.json
@@ -0,0 +1,8 @@
+{
+ "exp": {
+ "data": "bmF6bw==",
+ "data_type": "base64",
+ "exp_type": 123456789,
+ "experimenter": 98765432
+ }
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-2-ofp_flow_mod.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-2-ofp_flow_mod.packet.json
new file mode 100644
index 00000000..72054e33
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-2-ofp_flow_mod.packet.json
@@ -0,0 +1,103 @@
+{
+ "cmd": 0,
+ "flow": {
+ "instructions": [
+ {
+ "actions": [
+ {
+ "field": "vlan_vid",
+ "type": "SET_FIELD",
+ "value": 258
+ },
+ {
+ "type": "COPY_TTL_OUT"
+ },
+ {
+ "type": "COPY_TTL_IN"
+ },
+ {
+ "type": "COPY_TTL_IN"
+ },
+ {
+ "type": "POP_PBB"
+ },
+ {
+ "ethertype": 4660,
+ "type": "PUSH_PBB"
+ },
+ {
+ "ethertype": 39030,
+ "type": "POP_MPLS"
+ },
+ {
+ "ethertype": 34887,
+ "type": "PUSH_MPLS"
+ },
+ {
+ "type": "POP_VLAN"
+ },
+ {
+ "ethertype": 33024,
+ "type": "PUSH_VLAN"
+ },
+ {
+ "type": "DEC_MPLS_TTL"
+ },
+ {
+ "mpls_ttl": 10,
+ "type": "SET_MPLS_TTL"
+ },
+ {
+ "type": "DEC_NW_TTL"
+ },
+ {
+ "nw_ttl": 10,
+ "type": "SET_NW_TTL"
+ },
+ {
+ "data": "AAECAwQFBgc=",
+ "data_type": "base64",
+ "experimenter": 101,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "queue_id": 3,
+ "type": "SET_QUEUE"
+ },
+ {
+ "group_id": 99,
+ "type": "GROUP"
+ },
+ {
+ "max_len": 65535,
+ "port": 6,
+ "type": "OUTPUT"
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "actions": [
+ {
+ "field": "eth_src",
+ "type": "SET_FIELD",
+ "value": "01:02:03:04:05:06"
+ },
+ {
+ "field": "pbb_uca",
+ "type": "SET_FIELD",
+ "value": 1
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ }
+ ],
+ "buffer_id": 65535,
+ "importance": 0,
+ "match": {
+ "eth_dst": "f2:0b:a4:7d:f8:ea"
+ },
+ "priority": 123,
+ "table_id": 1
+ }
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-21-ofp_group_mod.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-21-ofp_group_mod.packet.json
new file mode 100644
index 00000000..fa48425a
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-21-ofp_group_mod.packet.json
@@ -0,0 +1,21 @@
+{
+ "cmd": 0,
+ "group": {
+ "buckets": [
+ {
+ "actions": [
+ {
+ "max_len": 65535,
+ "port": 2,
+ "type": "OUTPUT"
+ }
+ ],
+ "watch_group": 1,
+ "watch_port": 1,
+ "weight": 1
+ }
+ ],
+ "group_id": 1,
+ "type": "ALL"
+ }
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-22-ofp_port_mod.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-22-ofp_port_mod.packet.json
new file mode 100644
index 00000000..980456eb
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-22-ofp_port_mod.packet.json
@@ -0,0 +1,50 @@
+{
+ "port_config": {
+ "config": 0,
+ "hw_addr": "00:11:00:00:11:11",
+ "mask": 0,
+ "port_no": 1,
+ "properties": [
+ {
+ "advertise": 4096,
+ "length": 8,
+ "type": 0
+ },
+ {
+ "configure": 3,
+ "fl_offset": 2000,
+ "freq_lmda": 1500,
+ "grid_span": 3000,
+ "length": 24,
+ "tx_pwr": 300,
+ "type": 1
+ },
+ {
+ "data": [],
+ "exp_type": 0,
+ "experimenter": 101,
+ "length": 12,
+ "type": 65535
+ },
+ {
+ "data": [
+ 1
+ ],
+ "exp_type": 1,
+ "experimenter": 101,
+ "length": 16,
+ "type": 65535
+ },
+ {
+ "data": [
+ 1,
+ 2
+ ],
+ "exp_type": 2,
+ "experimenter": 101,
+ "length": 20,
+ "type": 65535
+ }
+ ]
+ }
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-25-ofp_aggregate_stats_request.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-25-ofp_aggregate_stats_request.packet.json
new file mode 100644
index 00000000..845af65b
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-25-ofp_aggregate_stats_request.packet.json
@@ -0,0 +1,11 @@
+{
+ "flow": {
+ "cookie": 0,
+ "cookie_mask": 0,
+ "flags": 0,
+ "match": {},
+ "out_group": 4294967295,
+ "out_port": 4294967295,
+ "table_id": 255
+ }
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-26-ofp_aggregate_stats_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-26-ofp_aggregate_stats_reply.packet.json
new file mode 100644
index 00000000..a4b23d12
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-26-ofp_aggregate_stats_reply.packet.json
@@ -0,0 +1,9 @@
+{
+ "1": [
+ {
+ "byte_count": 574,
+ "flow_count": 6,
+ "packet_count": 7
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-28-ofp_table_stats_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-28-ofp_table_stats_reply.packet.json
new file mode 100644
index 00000000..95b2c495
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-28-ofp_table_stats_reply.packet.json
@@ -0,0 +1,16 @@
+{
+ "1": [
+ {
+ "active_count": 4,
+ "lookup_count": 4,
+ "matched_count": 4,
+ "table_id": 0
+ },
+ {
+ "active_count": 4,
+ "lookup_count": 4,
+ "matched_count": 4,
+ "table_id": 1
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-30-ofp_port_stats_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-30-ofp_port_stats_reply.packet.json
new file mode 100644
index 00000000..f9f1d86f
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-30-ofp_port_stats_reply.packet.json
@@ -0,0 +1,85 @@
+{
+ "1": [
+ {
+ "duration_nsec": 0,
+ "duration_sec": 0,
+ "port_no": 7,
+ "properties": [
+ {
+ "collisions": 0,
+ "rx_crc_err": 0,
+ "rx_frame_err": 0,
+ "rx_over_err": 0,
+ "type": "ETHERNET"
+ },
+ {
+ "bias_current": 300,
+ "flags": 3,
+ "rx_freq_lmda": 1500,
+ "rx_grid_span": 500,
+ "rx_offset": 700,
+ "rx_pwr": 2000,
+ "temperature": 273,
+ "tx_freq_lmda": 1500,
+ "tx_grid_span": 500,
+ "tx_offset": 700,
+ "tx_pwr": 2000,
+ "type": "OPTICAL"
+ },
+ {
+ "data": [],
+ "exp_type": 0,
+ "experimenter": 101,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": [
+ 1
+ ],
+ "exp_type": 1,
+ "experimenter": 101,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": [
+ 1,
+ 2
+ ],
+ "exp_type": 2,
+ "experimenter": 101,
+ "type": "EXPERIMENTER"
+ }
+ ],
+ "rx_bytes": 0,
+ "rx_dropped": 0,
+ "rx_errors": 0,
+ "rx_packets": 0,
+ "tx_bytes": 336,
+ "tx_dropped": 0,
+ "tx_errors": 0,
+ "tx_packets": 4
+ },
+ {
+ "duration_nsec": 0,
+ "duration_sec": 0,
+ "port_no": 6,
+ "properties": [
+ {
+ "collisions": 0,
+ "rx_crc_err": 0,
+ "rx_frame_err": 0,
+ "rx_over_err": 0,
+ "type": "ETHERNET"
+ }
+ ],
+ "rx_bytes": 336,
+ "rx_dropped": 0,
+ "rx_errors": 0,
+ "rx_packets": 4,
+ "tx_bytes": 336,
+ "tx_dropped": 0,
+ "tx_errors": 0,
+ "tx_packets": 4
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-32-ofp_group_features_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-32-ofp_group_features_reply.packet.json
new file mode 100644
index 00000000..2a29ac2d
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-32-ofp_group_features_reply.packet.json
@@ -0,0 +1,104 @@
+{
+ "1": [
+ {
+ "actions": [
+ {
+ "ALL": [
+ "OUTPUT",
+ "COPY_TTL_OUT",
+ "COPY_TTL_IN",
+ "SET_MPLS_TTL",
+ "DEC_MPLS_TTL",
+ "PUSH_VLAN",
+ "POP_VLAN",
+ "PUSH_MPLS",
+ "POP_MPLS",
+ "SET_QUEUE",
+ "GROUP",
+ "SET_NW_TTL",
+ "DEC_NW_TTL",
+ "SET_FIELD"
+ ]
+ },
+ {
+ "SELECT": [
+ "OUTPUT",
+ "COPY_TTL_OUT",
+ "COPY_TTL_IN",
+ "SET_MPLS_TTL",
+ "DEC_MPLS_TTL",
+ "PUSH_VLAN",
+ "POP_VLAN",
+ "PUSH_MPLS",
+ "POP_MPLS",
+ "SET_QUEUE",
+ "GROUP",
+ "SET_NW_TTL",
+ "DEC_NW_TTL",
+ "SET_FIELD"
+ ]
+ },
+ {
+ "INDIRECT": [
+ "OUTPUT",
+ "COPY_TTL_OUT",
+ "COPY_TTL_IN",
+ "SET_MPLS_TTL",
+ "DEC_MPLS_TTL",
+ "PUSH_VLAN",
+ "POP_VLAN",
+ "PUSH_MPLS",
+ "POP_MPLS",
+ "SET_QUEUE",
+ "GROUP",
+ "SET_NW_TTL",
+ "DEC_NW_TTL",
+ "SET_FIELD"
+ ]
+ },
+ {
+ "FF": [
+ "OUTPUT",
+ "COPY_TTL_OUT",
+ "COPY_TTL_IN",
+ "SET_MPLS_TTL",
+ "DEC_MPLS_TTL",
+ "PUSH_VLAN",
+ "POP_VLAN",
+ "PUSH_MPLS",
+ "POP_MPLS",
+ "SET_QUEUE",
+ "GROUP",
+ "SET_NW_TTL",
+ "DEC_NW_TTL",
+ "SET_FIELD"
+ ]
+ }
+ ],
+ "capabilities": [
+ "SELECT_WEIGHT",
+ "CHAINING"
+ ],
+ "max_groups": [
+ {
+ "ALL": 16777216
+ },
+ {
+ "SELECT": 16777216
+ },
+ {
+ "INDIRECT": 16777216
+ },
+ {
+ "FF": 16777216
+ }
+ ],
+ "types": [
+ "ALL",
+ "SELECT",
+ "INDIRECT",
+ "FF"
+ ]
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-34-ofp_group_desc_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-34-ofp_group_desc_reply.packet.json
new file mode 100644
index 00000000..df0ef359
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-34-ofp_group_desc_reply.packet.json
@@ -0,0 +1,24 @@
+{
+ "1": [
+ {
+ "buckets": [
+ {
+ "actions": [
+ {
+ "max_len": 65535,
+ "port": 2,
+ "type": "OUTPUT"
+ }
+ ],
+ "len": 32,
+ "watch_group": 1,
+ "watch_port": 1,
+ "weight": 1
+ }
+ ],
+ "group_id": 1,
+ "length": 40,
+ "type": "ALL"
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-36-ofp_queue_stats_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-36-ofp_queue_stats_reply.packet.json
new file mode 100644
index 00000000..a6d246d0
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-36-ofp_queue_stats_reply.packet.json
@@ -0,0 +1,64 @@
+{
+ "1": [
+ {
+ "duration_nsec": 0,
+ "duration_sec": 0,
+ "length": 104,
+ "port_no": 7,
+ "properties": [
+ {
+ "data": [],
+ "exp_type": 0,
+ "experimenter": 101,
+ "length": 12,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": [
+ 1
+ ],
+ "exp_type": 1,
+ "experimenter": 101,
+ "length": 16,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": [
+ 1,
+ 2
+ ],
+ "exp_type": 2,
+ "experimenter": 101,
+ "length": 20,
+ "type": "EXPERIMENTER"
+ }
+ ],
+ "queue_id": 1,
+ "tx_bytes": 0,
+ "tx_errors": 0,
+ "tx_packets": 0
+ },
+ {
+ "duration_nsec": 0,
+ "duration_sec": 0,
+ "length": 48,
+ "port_no": 6,
+ "properties": [],
+ "queue_id": 1,
+ "tx_bytes": 0,
+ "tx_errors": 0,
+ "tx_packets": 0
+ },
+ {
+ "duration_nsec": 0,
+ "duration_sec": 0,
+ "length": 48,
+ "port_no": 7,
+ "properties": [],
+ "queue_id": 2,
+ "tx_bytes": 0,
+ "tx_errors": 0,
+ "tx_packets": 0
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-43-ofp_meter_mod.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-43-ofp_meter_mod.packet.json
new file mode 100644
index 00000000..b78ea6be
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-43-ofp_meter_mod.packet.json
@@ -0,0 +1,31 @@
+{
+ "cmd": 0,
+ "meter": {
+ "flags": [
+ "PKTPS",
+ "BURST",
+ "STATS"
+ ],
+ "meter_id": 100,
+ "bands": [
+ {
+ "burst_size": 10,
+ "rate": 1000,
+ "type": "DROP"
+ },
+ {
+ "burst_size": 10,
+ "prec_level": 1,
+ "rate": 1000,
+ "type": "DSCP_REMARK"
+ },
+ {
+ "burst_size": 10,
+ "experimenter": 999,
+ "len": 16,
+ "rate": 1000,
+ "type": "EXPERIMENTER"
+ }
+ ]
+ }
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-46-ofp_meter_config_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-46-ofp_meter_config_reply.packet.json
new file mode 100644
index 00000000..d5efcd97
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-46-ofp_meter_config_reply.packet.json
@@ -0,0 +1,19 @@
+{
+ "1": [
+ {
+ "bands": [
+ {
+ "burst_size": 10,
+ "rate": 1000,
+ "type": "DROP"
+ }
+ ],
+ "flags": [
+ "PKTPS",
+ "BURST",
+ "STATS"
+ ],
+ "meter_id": 100
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-48-ofp_meter_stats_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-48-ofp_meter_stats_reply.packet.json
new file mode 100644
index 00000000..f21ec519
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-48-ofp_meter_stats_reply.packet.json
@@ -0,0 +1,19 @@
+{
+ "1": [
+ {
+ "band_stats": [
+ {
+ "byte_band_count": 0,
+ "packet_band_count": 0
+ }
+ ],
+ "byte_in_count": 0,
+ "duration_nsec": 480000,
+ "duration_sec": 0,
+ "flow_count": 0,
+ "len": 56,
+ "meter_id": 100,
+ "packet_in_count": 0
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-50-ofp_meter_features_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-50-ofp_meter_features_reply.packet.json
new file mode 100644
index 00000000..24dac7d4
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-50-ofp_meter_features_reply.packet.json
@@ -0,0 +1,19 @@
+{
+ "1": [
+ {
+ "band_types": [
+ "DROP",
+ "DSCP_REMARK"
+ ],
+ "capabilities": [
+ "KBPS",
+ "PKTPS",
+ "BURST",
+ "STATS"
+ ],
+ "max_bands": 255,
+ "max_color": 0,
+ "max_meter": 16777216
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-52-ofp_port_desc_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-52-ofp_port_desc_reply.packet.json
new file mode 100644
index 00000000..c2f748a8
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-52-ofp_port_desc_reply.packet.json
@@ -0,0 +1,83 @@
+{
+ "1": [
+ {
+ "config": 0,
+ "hw_addr": "f2:0b:a4:d0:3f:70",
+ "length": 168,
+ "name": "Port7",
+ "port_no": 7,
+ "properties": [
+ {
+ "advertised": 10240,
+ "curr": 10248,
+ "curr_speed": 5000,
+ "length": 32,
+ "max_speed": 5000,
+ "peer": 10248,
+ "supported": 10248,
+ "type": "ETHERNET"
+ },
+ {
+ "length": 40,
+ "rx_grid_freq_lmda": 1500,
+ "rx_max_freq_lmda": 2000,
+ "rx_min_freq_lmda": 1000,
+ "supported": 1,
+ "tx_grid_freq_lmda": 1500,
+ "tx_max_freq_lmda": 2000,
+ "tx_min_freq_lmda": 1000,
+ "tx_pwr_max": 2000,
+ "tx_pwr_min": 1000,
+ "type": "OPTICAL"
+ },
+ {
+ "data": [],
+ "exp_type": 0,
+ "experimenter": 101,
+ "length": 12,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": [
+ 1
+ ],
+ "exp_type": 1,
+ "experimenter": 101,
+ "length": 16,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": [
+ 1,
+ 2
+ ],
+ "exp_type": 2,
+ "experimenter": 101,
+ "length": 20,
+ "type": "EXPERIMENTER"
+ }
+ ],
+ "state": 4
+ },
+ {
+ "config": 0,
+ "hw_addr": "f2:0b:a4:7d:f8:ea",
+ "length": 72,
+ "name": "Port6",
+ "port_no": 6,
+ "properties": [
+ {
+ "advertised": 10240,
+ "curr": 10248,
+ "curr_speed": 5000,
+ "length": 32,
+ "max_speed": 5000,
+ "peer": 10248,
+ "supported": 10248,
+ "type": "ETHERNET"
+ }
+ ],
+ "state": 4
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-54-ofp_table_features_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-54-ofp_table_features_reply.packet.json
new file mode 100644
index 00000000..ded5a996
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-54-ofp_table_features_reply.packet.json
@@ -0,0 +1,11928 @@
+{
+ "1": [
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "\u79c1\u306e\u30c6\u30fc\u30d6\u30eb",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 1,
+ 2,
+ 3,
+ 4,
+ 5,
+ 6,
+ 7,
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ },
+ {
+ "type": "EXPERIMENTER"
+ },
+ {
+ "type": "EXPERIMENTER"
+ },
+ {
+ "type": "EXPERIMENTER"
+ }
+ ],
+ "table_id": 0
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x01",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 2,
+ 3,
+ 4,
+ 5,
+ 6,
+ 7,
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 1
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x02",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 3,
+ 4,
+ 5,
+ 6,
+ 7,
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 2
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x03",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 4,
+ 5,
+ 6,
+ 7,
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 3
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x04",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 5,
+ 6,
+ 7,
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 4
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x05",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 6,
+ 7,
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 5
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x06",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 7,
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 6
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x07",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 7
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x08",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 8
+ },
+ {
+ "config": 0,
+ "max_entries": 16777216,
+ "metadata_match": 18446744073709551615,
+ "metadata_write": 18446744073709551615,
+ "name": "Flow Table 0x09",
+ "properties": [
+ {
+ "instruction_ids": [
+ {
+ "len": 4,
+ "type": 1
+ },
+ {
+ "len": 4,
+ "type": 2
+ },
+ {
+ "len": 4,
+ "type": 3
+ },
+ {
+ "len": 4,
+ "type": 4
+ },
+ {
+ "len": 4,
+ "type": 5
+ },
+ {
+ "len": 4,
+ "type": 6
+ }
+ ],
+ "type": "INSTRUCTIONS"
+ },
+ {
+ "table_ids": [
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 31,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36,
+ 37,
+ 38,
+ 39,
+ 40,
+ 41,
+ 42,
+ 43,
+ 44,
+ 45,
+ 46,
+ 47,
+ 48,
+ 49,
+ 50,
+ 51,
+ 52,
+ 53,
+ 54,
+ 55,
+ 56,
+ 57,
+ 58,
+ 59,
+ 60,
+ 61,
+ 62,
+ 63,
+ 64,
+ 65,
+ 66,
+ 67,
+ 68,
+ 69,
+ 70,
+ 71,
+ 72,
+ 73,
+ 74,
+ 75,
+ 76,
+ 77,
+ 78,
+ 79,
+ 80,
+ 81,
+ 82,
+ 83,
+ 84,
+ 85,
+ 86,
+ 87,
+ 88,
+ 89,
+ 90,
+ 91,
+ 92,
+ 93,
+ 94,
+ 95,
+ 96,
+ 97,
+ 98,
+ 99,
+ 100,
+ 101,
+ 102,
+ 103,
+ 104,
+ 105,
+ 106,
+ 107,
+ 108,
+ 109,
+ 110,
+ 111,
+ 112,
+ 113,
+ 114,
+ 115,
+ 116,
+ 117,
+ 118,
+ 119,
+ 120,
+ 121,
+ 122,
+ 123,
+ 124,
+ 125,
+ 126,
+ 127,
+ 128,
+ 129,
+ 130,
+ 131,
+ 132,
+ 133,
+ 134,
+ 135,
+ 136,
+ 137,
+ 138,
+ 139,
+ 140,
+ 141,
+ 142,
+ 143,
+ 144,
+ 145,
+ 146,
+ 147,
+ 148,
+ 149,
+ 150,
+ 151,
+ 152,
+ 153,
+ 154,
+ 155,
+ 156,
+ 157,
+ 158,
+ 159,
+ 160,
+ 161,
+ 162,
+ 163,
+ 164,
+ 165,
+ 166,
+ 167,
+ 168,
+ 169,
+ 170,
+ 171,
+ 172,
+ 173,
+ 174,
+ 175,
+ 176,
+ 177,
+ 178,
+ 179,
+ 180,
+ 181,
+ 182,
+ 183,
+ 184,
+ 185,
+ 186,
+ 187,
+ 188,
+ 189,
+ 190,
+ 191,
+ 192,
+ 193,
+ 194,
+ 195,
+ 196,
+ 197,
+ 198,
+ 199,
+ 200,
+ 201,
+ 202,
+ 203,
+ 204,
+ 205,
+ 206,
+ 207,
+ 208,
+ 209,
+ 210,
+ 211,
+ 212,
+ 213,
+ 214,
+ 215,
+ 216,
+ 217,
+ 218,
+ 219,
+ 220,
+ 221,
+ 222,
+ 223,
+ 224,
+ 225,
+ 226,
+ 227,
+ 228,
+ 229,
+ 230,
+ 231,
+ 232,
+ 233,
+ 234,
+ 235,
+ 236,
+ 237,
+ 238,
+ 239,
+ 240,
+ 241,
+ 242,
+ 243,
+ 244,
+ 245,
+ 246,
+ 247,
+ 248,
+ 249,
+ 250,
+ 251,
+ 252,
+ 253,
+ 254
+ ],
+ "type": "NEXT_TABLES"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "WRITE_ACTIONS"
+ },
+ {
+ "action_ids": [
+ {
+ "len": 4,
+ "type": 0
+ },
+ {
+ "len": 4,
+ "type": 22
+ },
+ {
+ "len": 4,
+ "type": 21
+ },
+ {
+ "len": 4,
+ "type": 15
+ },
+ {
+ "len": 4,
+ "type": 16
+ },
+ {
+ "len": 4,
+ "type": 23
+ },
+ {
+ "len": 4,
+ "type": 24
+ },
+ {
+ "len": 4,
+ "type": 11
+ },
+ {
+ "len": 4,
+ "type": 12
+ },
+ {
+ "len": 4,
+ "type": 17
+ },
+ {
+ "len": 4,
+ "type": 18
+ },
+ {
+ "len": 4,
+ "type": 19
+ },
+ {
+ "len": 4,
+ "type": 20
+ },
+ {
+ "len": 4,
+ "type": 26
+ },
+ {
+ "len": 4,
+ "type": 27
+ },
+ {
+ "len": 4,
+ "type": 25
+ }
+ ],
+ "type": "APPLY_ACTIONS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "MATCH"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WILDCARDS"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "WRITE_SETFIELD"
+ },
+ {
+ "oxm_ids": [
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "in_port"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "metadata"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "eth_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_vid"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "vlan_pcp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_dscp"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_ecn"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ip_proto"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv4_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "tcp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "udp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "sctp_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv4_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_op"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_spa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tpa"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_sha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "arp_tha"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_src"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_dst"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_flabel"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_type"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "icmpv6_code"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_target"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_sll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "ipv6_nd_tll"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_label"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_tc"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "mpls_bos"
+ },
+ {
+ "hasmask": 0,
+ "length": 0,
+ "type": "pbb_isid"
+ }
+ ],
+ "type": "APPLY_SETFIELD"
+ }
+ ],
+ "table_id": 9
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-56-ofp_group_stats_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-56-ofp_group_stats_reply.packet.json
new file mode 100644
index 00000000..1c6f9039
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-56-ofp_group_stats_reply.packet.json
@@ -0,0 +1,19 @@
+{
+ "1": [
+ {
+ "bucket_stats": [
+ {
+ "byte_count": 2345,
+ "packet_count": 234
+ }
+ ],
+ "byte_count": 12345,
+ "duration_nsec": 609036000,
+ "duration_sec": 9,
+ "group_id": 1,
+ "length": 56,
+ "packet_count": 123,
+ "ref_count": 2
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-63-ofp_queue_desc_request.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-63-ofp_queue_desc_request.packet.json
new file mode 100644
index 00000000..fc863813
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-63-ofp_queue_desc_request.packet.json
@@ -0,0 +1,4 @@
+{
+ "port_no": 7,
+ "queue_id": 4294967295
+}
diff --git a/ryu/tests/unit/lib/ofctl_json/of14/5-64-ofp_queue_desc_reply.packet.json b/ryu/tests/unit/lib/ofctl_json/of14/5-64-ofp_queue_desc_reply.packet.json
new file mode 100644
index 00000000..6b6b4400
--- /dev/null
+++ b/ryu/tests/unit/lib/ofctl_json/of14/5-64-ofp_queue_desc_reply.packet.json
@@ -0,0 +1,65 @@
+{
+ "1": [
+ {
+ "body": [
+ {
+ "len": 32,
+ "port_no": 7,
+ "properties": [
+ {
+ "data": [],
+ "exp_type": 0,
+ "experimenter": 101,
+ "length": 12,
+ "type": "EXPERIMENTER"
+ }
+ ],
+ "queue_id": 0
+ },
+ {
+ "len": 88,
+ "port_no": 8,
+ "properties": [
+ {
+ "length": 8,
+ "rate": 300,
+ "type": "MIN_RATE"
+ },
+ {
+ "length": 8,
+ "rate": 900,
+ "type": "MAX_RATE"
+ },
+ {
+ "data": [],
+ "exp_type": 0,
+ "experimenter": 101,
+ "length": 12,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": [
+ 1
+ ],
+ "exp_type": 1,
+ "experimenter": 101,
+ "length": 16,
+ "type": "EXPERIMENTER"
+ },
+ {
+ "data": [
+ 1,
+ 2
+ ],
+ "exp_type": 2,
+ "experimenter": 101,
+ "length": 20,
+ "type": "EXPERIMENTER"
+ }
+ ],
+ "queue_id": 1
+ }
+ ]
+ }
+ ]
+}
diff --git a/ryu/tests/unit/lib/test_ofctl.py b/ryu/tests/unit/lib/test_ofctl.py
index 8030dc68..8510b03d 100644
--- a/ryu/tests/unit/lib/test_ofctl.py
+++ b/ryu/tests/unit/lib/test_ofctl.py
@@ -24,6 +24,7 @@ import unittest
from ryu.lib import ofctl_v1_0
from ryu.lib import ofctl_v1_2
from ryu.lib import ofctl_v1_3
+from ryu.lib import ofctl_v1_4
from ryu.ofproto import ofproto_parser
from ryu.ofproto.ofproto_protocol import ProtocolDesc
from ryu.tests import test_lib
@@ -112,7 +113,8 @@ def _add_tests():
_ofp_vers = {
'of10': 0x01,
'of12': 0x03,
- 'of13': 0x04
+ 'of13': 0x04,
+ 'of14': 0x05,
}
_test_cases = {
@@ -303,7 +305,109 @@ def _add_tests():
'request': '4-16-ofp_experimenter.packet.json',
'reply': None
},
- ]
+ ],
+ 'of14': [
+ {
+ 'method': ofctl_v1_4.get_desc_stats,
+ 'request': '5-24-ofp_desc_request.packet.json',
+ 'reply': '5-0-ofp_desc_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_queue_stats,
+ 'request': '5-35-ofp_queue_stats_request.packet.json',
+ 'reply': '5-36-ofp_queue_stats_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_queue_desc_stats,
+ 'request': '5-63-ofp_queue_desc_request.packet.json',
+ 'reply': '5-64-ofp_queue_desc_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_flow_stats,
+ 'request': '5-11-ofp_flow_stats_request.packet.json',
+ 'reply': '5-12-ofp_flow_stats_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_aggregate_flow_stats,
+ 'request': '5-25-ofp_aggregate_stats_request.packet.json',
+ 'reply': '5-26-ofp_aggregate_stats_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_table_stats,
+ 'request': '5-27-ofp_table_stats_request.packet.json',
+ 'reply': '5-28-ofp_table_stats_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_table_features,
+ 'request': 'lib-ofctl-ofp_table_features_request.packet.json',
+ 'reply': '5-54-ofp_table_features_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_port_stats,
+ 'request': '5-29-ofp_port_stats_request.packet.json',
+ 'reply': '5-30-ofp_port_stats_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_meter_stats,
+ 'request': '5-47-ofp_meter_stats_request.packet.json',
+ 'reply': '5-48-ofp_meter_stats_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_meter_features,
+ 'request': '5-49-ofp_meter_features_request.packet.json',
+ 'reply': '5-50-ofp_meter_features_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_meter_config,
+ 'request': '5-45-ofp_meter_config_request.packet.json',
+ 'reply': '5-46-ofp_meter_config_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_group_stats,
+ 'request': '5-55-ofp_group_stats_request.packet.json',
+ 'reply': '5-56-ofp_group_stats_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_group_features,
+ 'request': '5-31-ofp_group_features_request.packet.json',
+ 'reply': '5-32-ofp_group_features_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_group_desc,
+ 'request': '5-33-ofp_group_desc_request.packet.json',
+ 'reply': '5-34-ofp_group_desc_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.get_port_desc,
+ 'request': '5-51-ofp_port_desc_request.packet.json',
+ 'reply': '5-52-ofp_port_desc_reply.packet.json'
+ },
+ {
+ 'method': ofctl_v1_4.mod_flow_entry,
+ 'request': '5-2-ofp_flow_mod.packet.json',
+ 'reply': None
+ },
+ {
+ 'method': ofctl_v1_4.mod_meter_entry,
+ 'request': '5-43-ofp_meter_mod.packet.json', # flow --> meter
+ 'reply': None
+ },
+ {
+ 'method': ofctl_v1_4.mod_group_entry,
+ 'request': '5-21-ofp_group_mod.packet.json',
+ 'reply': None
+ },
+ {
+ 'method': ofctl_v1_4.mod_port_behavior,
+ 'request': '5-22-ofp_port_mod.packet.json',
+ 'reply': None
+ },
+ {
+ 'method': ofctl_v1_4.send_experimenter,
+ 'request': '5-16-ofp_experimenter.packet.json',
+ 'reply': None
+ },
+ ],
}
def _jsonfile_to_msg(datapath, jsonfile):
diff --git a/ryu/tests/unit/ofproto/json/of14/lib-ofctl-ofp_table_features_request.packet.json b/ryu/tests/unit/ofproto/json/of14/lib-ofctl-ofp_table_features_request.packet.json
new file mode 100644
index 00000000..6501de15
--- /dev/null
+++ b/ryu/tests/unit/ofproto/json/of14/lib-ofctl-ofp_table_features_request.packet.json
@@ -0,0 +1,7 @@
+{
+ "OFPTableFeaturesStatsRequest": {
+ "body": [],
+ "flags": 0,
+ "type": 12
+ }
+}