1 %% Copyright (C) 2013 Nippon Telegraph and Telephone Corporation.
2 %% Copyright (C) 2013 YAMAMOTO Takashi <yamamoto at valinux co jp>
4 %% Licensed under the Apache License, Version 2.0 (the "License");
5 %% you may not use this file except in compliance with the License.
6 %% You may obtain a copy of the License at
8 %% http://www.apache.org/licenses/LICENSE-2.0
10 %% Unless required by applicable law or agreed to in writing, software
11 %% distributed under the License is distributed on an "AS IS" BASIS,
12 %% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
14 %% See the License for the specific language governing permissions and
15 %% limitations under the License.
20 -include_lib("of_protocol/include/of_protocol.hrl").
21 -include_lib("of_protocol/include/ofp_v5.hrl").
26 class = openflow_basic,name = in_port,
31 class = openflow_basic,name = in_phy_port,
36 class = openflow_basic,name = metadata,
38 value = <<0,1,2,3,4,5,6,7>>,
41 class = openflow_basic,name = eth_type,
46 class = openflow_basic,name = eth_dst,
47 has_mask = false,value = <<"\377\377\377\377\377\377">>,
50 class = openflow_basic,name = eth_src,
51 has_mask = false,value = <<"\362\v\244}\370\352">>,
54 class = openflow_basic,name = vlan_vid,
55 has_mask = false,value = <<999:13>>,
58 class = openflow_basic,name = ip_dscp,
59 has_mask = false,value = <<9:6>>,
62 class = openflow_basic,name = ip_ecn,
63 has_mask = false,value = <<3:2>>,
66 class = openflow_basic,name = ip_proto,
67 has_mask = false,value = <<99>>,
70 class = openflow_basic,name = ipv4_src,
71 has_mask = false,value = <<1,2,3,4>>,
74 class = openflow_basic,name = ipv4_dst,
75 has_mask = false,value = <<1,2,3,4>>,
78 class = openflow_basic,name = tcp_src,
79 has_mask = false,value = <<8080:16>>,
82 class = openflow_basic,name = tcp_dst,
83 has_mask = false,value = <<18080:16>>,
86 class = openflow_basic,name = udp_src,
87 has_mask = false,value = <<28080:16>>,
90 class = openflow_basic,name = udp_dst,
91 has_mask = false,value = <<318080:16>>,
94 class = openflow_basic,name = sctp_src,
95 has_mask = false,value = <<48080:16>>,
98 class = openflow_basic,name = sctp_dst,
99 has_mask = false,value = <<518080:16>>,
102 class = openflow_basic,name = icmpv4_type,
103 has_mask = false,value = <<100>>,
106 class = openflow_basic,name = icmpv4_code,
107 has_mask = false,value = <<101>>,
110 class = openflow_basic,name = arp_op,
115 class = openflow_basic,name = arp_spa,
117 value = <<10,0,0,1>>,
120 class = openflow_basic,name = arp_tpa,
122 value = <<10,0,0,3>>,
125 class = openflow_basic,name = arp_sha,
126 has_mask = false,value = <<"\362\v\244}\370\352">>,
129 class = openflow_basic,name = arp_tha,
131 value = <<0,0,0,0,0,0>>,
134 class = openflow_basic,name = ipv6_src,
136 % fe80::f00b:a4ff:fe48:28a5
137 value = <<16#fe80000000000000f00ba4fffe4828a5:128>>,
140 class = openflow_basic,name = ipv6_dst,
142 % fe80::f00b:a4ff:fe05:b7dc
143 value = <<16#fe80000000000000f00ba4fffe05b7dc:128>>,
146 class = openflow_basic,name = ipv6_flabel,
148 value = <<16#84321:20>>,
151 class = openflow_basic,name = icmpv6_type,
156 class = openflow_basic,name = icmpv6_code,
161 class = openflow_basic,name = ipv6_nd_target,
163 % fe80::a60:6eff:fe7f:74e7
164 value = <<16#fe800000000000000a606efffe7f74e7:128>>,
167 class = openflow_basic,name = ipv6_nd_sll,
172 class = openflow_basic,name = ipv6_nd_tll,
177 class = openflow_basic,name = mpls_label,
179 value = <<16#98765:20>>,
182 class = openflow_basic,name = mpls_tc,
187 class = openflow_basic,name = mpls_bos,
192 class = openflow_basic,name = pbb_isid,
194 value = <<16#abcdef:24>>,
197 class = openflow_basic,name = tunnel_id,
199 value = <<9,9,9,9,9,9,9,9>>,
202 class = openflow_basic,name = ipv6_exthdr,
207 class = openflow_basic,name = pbb_uca,
213 #ofp_desc_reply{flags = [], mfr_desc = <<"mfr">>,
214 hw_desc = <<"hw">>, sw_desc = <<"sw">>,
215 serial_num = <<"serial">>,
218 buffer_id = no_buffer,in_port = controller,
220 [#ofp_action_output{port = all,max_len = no_buffer}],
222 <<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0,
223 0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2,
224 8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0,
225 16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,
226 34,35,36,37,38,39,40,41,42,43,44,45,46,47,0,0,0,0,0,0,
229 cookie = <<0,0,0,0,0,0,0,0>>,
230 cookie_mask = <<0,0,0,0,0,0,0,0>>,
231 table_id = 1,command = add,idle_timeout = 0,
232 hard_timeout = 0,priority = 123,buffer_id = 65535,
233 out_port = any,out_group = any,flags = [],
238 class = openflow_basic,name = eth_dst,
240 value = <<"\362\v\244}\370\352">>,
243 [#ofp_instruction_write_actions{
245 [#ofp_action_set_field{
246 field = #ofp_field{name = vlan_vid,
247 value = <<258:13>> }},
248 #ofp_action_copy_ttl_out{},
249 #ofp_action_copy_ttl_in{},
250 #ofp_action_copy_ttl_in{},
251 #ofp_action_pop_pbb{},
252 #ofp_action_push_pbb{ethertype = 16#1234},
253 #ofp_action_pop_mpls{ethertype= 16#9876},
254 #ofp_action_push_mpls{ethertype = 16#8847},
255 #ofp_action_pop_vlan{},
256 #ofp_action_push_vlan{ethertype = 16#8100},
257 #ofp_action_dec_mpls_ttl{},
258 #ofp_action_set_mpls_ttl{mpls_ttl = 10},
259 #ofp_action_dec_nw_ttl{},
260 #ofp_action_set_nw_ttl{nw_ttl = 10},
261 #ofp_action_experimenter{
263 data = <<0,1,2,3,4,5,6,7>>},
264 #ofp_action_set_queue{queue_id = 3},
265 #ofp_action_group{group_id = 99},
266 #ofp_action_output{port = 6,max_len = no_buffer}]},
267 #ofp_instruction_apply_actions{
269 [#ofp_action_set_field{
270 field = #ofp_field{name = eth_src,
271 value = <<1,2,3,4,5,6>> }},
272 #ofp_action_set_field{
273 field = #ofp_field{name = pbb_uca,
274 value = <<1:1>> }}]}]},
276 cookie = <<0,0,0,0,0,0,0,0>>,
277 cookie_mask = <<0,0,0,0,0,0,0,0>>,
278 table_id = 0,command = add,idle_timeout = 0,
279 hard_timeout = 0,priority = 123,buffer_id = 65535,
280 out_port = any,out_group = any,flags = [],
285 class = openflow_basic,name = in_port,
290 class = openflow_basic,name = eth_src,
292 value = <<"\362\v\244}\370\352">>,
295 [#ofp_instruction_goto_table{table_id = 1}]},
297 buffer_id = 2,reason = action_set,table_id = 1,
298 cookie = <<0,1,2,3,0,0,0,0>>,
303 class = openflow_basic,name = in_port,
308 class = openflow_basic,name = eth_type,
313 class = openflow_basic,name = eth_dst,
314 has_mask = false,value = <<"\377\377\377\377\377\377">>,
317 class = openflow_basic,name = eth_src,
318 has_mask = false,value = <<"\362\v\244}\370\352">>,
321 class = openflow_basic,name = arp_op,
326 class = openflow_basic,name = arp_spa,
328 value = <<10,0,0,1>>,
331 class = openflow_basic,name = arp_tpa,
333 value = <<10,0,0,3>>,
336 class = openflow_basic,name = arp_sha,
337 has_mask = false,value = <<"\362\v\244}\370\352">>,
340 class = openflow_basic,name = arp_tha,
342 value = <<0,0,0,0,0,0>>,
345 <<255,255,255,255,255,255,242,11,164,125,248,234,8,6,0,
346 1,8,0,6,4,0,1,242,11,164,125,248,234,10,0,0,1,0,0,0,0,
348 #ofp_features_request{},
350 datapath_mac = <<8,96,110,127,116,231>>,
351 datapath_id = 0,n_buffers = 0,n_tables = 255,
354 [flow_stats,table_stats,port_stats,group_stats,queue_stats]},
355 #ofp_set_config{flags = [],miss_send_len = 128},
356 #ofp_get_config_request{},
357 #ofp_get_config_reply{flags = [],miss_send_len = 128},
358 #ofp_hello{elements = [{versionbitmap, [30, 10, 9, 3, 2, 1]}]},
359 #ofp_flow_stats_request{
360 flags = [],table_id = 0,out_port = any,out_group = any,
361 cookie = <<0,0,0,0,0,0,0,0>>,
362 cookie_mask = <<0,0,0,0,0,0,0,0>>,
363 match = #ofp_match{fields = []}},
364 #ofp_flow_stats_reply{
368 table_id = 0,duration_sec = 358,
369 duration_nsec = 115277000,priority = 65535,
370 idle_timeout = 0,hard_timeout = 0,
371 cookie = <<0,0,0,0,0,0,0,0>>,
372 packet_count = 0,byte_count = 0,
373 match = #ofp_match{fields = []},
376 table_id = 0,duration_sec = 358,
377 duration_nsec = 115055000,priority = 65534,
378 idle_timeout = 0,hard_timeout = 0,
379 cookie = <<0,0,0,0,0,0,0,0>>,
380 packet_count = 0,byte_count = 0,
385 class = openflow_basic,name = eth_type,
390 [#ofp_instruction_apply_actions{
393 port = normal,max_len = 0}]}]},
395 table_id = 0,duration_sec = 316220,
396 duration_nsec = 511582000,priority = 123,
397 idle_timeout = 0,hard_timeout = 0,
398 cookie = <<0,0,0,0,0,0,0,0>>,
399 packet_count = 3,byte_count = 238,
404 class = openflow_basic,name = in_port,
409 class = openflow_basic,name = eth_src,
411 value = <<"\362\v\244}\370\352">>,
414 [#ofp_instruction_goto_table{table_id = 1}]},
416 table_id = 0,duration_sec = 313499,
417 duration_nsec = 980901000,priority = 0,
418 idle_timeout = 0,hard_timeout = 0,
419 cookie = <<0,0,0,0,0,0,0,0>>,
420 packet_count = 1,byte_count = 98,
421 match = #ofp_match{fields = []},
423 [#ofp_instruction_write_actions{
425 [#ofp_action_set_field{
426 field = #ofp_field{name = vlan_vid,
427 value = <<258:13>> }},
428 #ofp_action_copy_ttl_out{},
429 #ofp_action_copy_ttl_in{},
430 #ofp_action_copy_ttl_in{},
431 #ofp_action_pop_pbb{},
432 #ofp_action_push_pbb{ethertype = 16#1234},
433 #ofp_action_pop_mpls{ethertype= 16#9876},
434 #ofp_action_push_mpls{ethertype = 16#8847},
435 #ofp_action_pop_vlan{},
436 #ofp_action_push_vlan{ethertype = 16#8100},
437 #ofp_action_dec_mpls_ttl{},
438 #ofp_action_set_mpls_ttl{mpls_ttl = 10},
439 #ofp_action_dec_nw_ttl{},
440 #ofp_action_set_nw_ttl{nw_ttl = 10},
441 #ofp_action_set_queue{queue_id = 3},
442 #ofp_action_group{group_id = 99},
443 #ofp_action_output{port = 6,
444 max_len = no_buffer},
445 #ofp_action_experimenter{experimenter = 98765432,
446 data = <<"exp_data">>},
447 #ofp_action_experimenter{experimenter = 8992,
448 data = <<"exp_data">>}
450 #ofp_instruction_apply_actions{
452 [#ofp_action_set_field{
453 field = #ofp_field{name = eth_src,
456 #ofp_action_set_field{
457 field = #ofp_field{name = pbb_uca,
458 value = <<1:1>> }}]},
459 #ofp_instruction_write_actions{
463 max_len = no_buffer}]}]}]},
472 code = unsupported_order,
473 data = <<"fugafuga">>
476 experimenter = 98765432,
477 exp_type = 123456789,
480 #ofp_barrier_request{},
481 #ofp_barrier_reply{},
484 generation_id = 16#f000f000f000f000},
487 generation_id = 16#f000f000f000f000},
490 command = add,type = all,group_id = 1,
493 weight = 1,watch_port = 1,watch_group = 1,
495 [#ofp_action_output{port = 2,max_len = no_buffer}]}]},
496 #ofp_port_mod{port_no = 1, hw_addr = <<0,17,0,0,17,17>>,
497 config = [],mask = [],
499 [#ofp_port_mod_prop_ethernet{advertise = [fiber]},
500 #ofp_port_mod_prop_optical{
501 configure = [rx_tune, tx_tune],
506 #ofp_port_mod_prop_experimenter{
510 #ofp_port_mod_prop_experimenter{
514 #ofp_port_mod_prop_experimenter{
517 data = <<1:32,2:32>>}]},
520 [#ofp_table_mod_prop_eviction{flags = []},
521 #ofp_table_mod_prop_vacancy{
525 #ofp_table_mod_prop_experimenter{
529 #ofp_table_mod_prop_experimenter{
533 #ofp_table_mod_prop_experimenter{
536 data = <<1:32,2:32>>}],
539 #ofp_aggregate_stats_request{
540 flags = [],table_id = all,out_port = any,out_group = any,
541 cookie = <<0,0,0,0,0,0,0,0>>,
542 cookie_mask = <<0,0,0,0,0,0,0,0>>,
543 match = #ofp_match{fields = []}},
544 #ofp_aggregate_stats_reply{flags = [],packet_count = 7,
545 byte_count = 574,flow_count = 6},
546 #ofp_table_stats_request{},
548 #ofp_table_stats_reply{
553 active_count = 4, lookup_count = 4,matched_count = 4},
556 active_count = 4, lookup_count = 4,matched_count = 4}]},
558 #ofp_port_stats_request{flags = [],port_no = any},
559 #ofp_port_stats_reply{
563 port_no = 7,rx_packets = 0,tx_packets = 4,rx_bytes = 0,
564 tx_bytes = 336,rx_dropped = 0,tx_dropped = 0,
565 rx_errors = 0, tx_errors = 0,
567 [#ofp_port_stats_prop_ethernet{
568 rx_frame_err = 0,rx_over_err = 0,
569 rx_crc_err = 0,collisions = 0},
570 #ofp_port_stats_prop_optical{
571 flags = [rx_tune,tx_tune],
582 #ofp_port_stats_prop_experimenter{
586 #ofp_port_stats_prop_experimenter{
590 #ofp_port_stats_prop_experimenter{
593 data = <<1:32,2:32>>}]},
595 port_no = 6,rx_packets = 4,tx_packets = 4,rx_bytes = 336,
596 tx_bytes = 336,rx_dropped = 0,tx_dropped = 0,
597 rx_errors = 0, tx_errors = 0,
599 [#ofp_port_stats_prop_ethernet{
600 rx_frame_err = 0,rx_over_err = 0,
601 rx_crc_err = 0,collisions = 0}]}]},
602 #ofp_group_features_request{flags = []},
603 #ofp_group_features_reply{
605 types = [all,select,indirect,ff],
606 capabilities = [select_weight,chaining],
607 max_groups = {16777216,16777216,16777216,16777216},
609 {[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],
610 [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],
611 [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],
612 [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]}},
613 #ofp_group_desc_request{},
614 #ofp_group_desc_reply{
617 [#ofp_group_desc_stats{
618 type = all,group_id = 1,
621 weight = 1,watch_port = 1,watch_group = 1,
624 port = 2, max_len = no_buffer}]}]}]},
625 #ofp_queue_stats_request{flags = [],port_no = any,
627 #ofp_queue_stats_reply{
631 port_no = 7,queue_id = 1,tx_bytes = 0,tx_packets = 0,
634 [#ofp_queue_stats_prop_experimenter{
638 #ofp_queue_stats_prop_experimenter{
642 #ofp_queue_stats_prop_experimenter{
645 data = <<1:32,2:32>>}]},
647 port_no = 6,queue_id = 1,tx_bytes = 0,tx_packets = 0,
650 port_no = 7,queue_id = 2,tx_bytes = 0,tx_packets = 0,
655 port_no = 7,hw_addr = <<"\362\v\244\320?p">>,
656 name = <<"\xe7\xa7\x81\xe3\x81\xae\xe3\x83\x9d\xe3\x83\xbc\xe3\x83\x88">>, % "my port" in japanese, utf-8
660 [#ofp_port_desc_prop_ethernet{
661 curr = ['100mb_fd',copper,autoneg],
662 advertised = [copper,autoneg],
663 supported = ['100mb_fd',copper,autoneg],
664 peer = ['100mb_fd',copper,autoneg],
665 curr_speed = 5000,max_speed = 5000},
666 #ofp_port_desc_prop_optical{
667 supported = [rx_tune],
668 tx_min_freq_lmda = 1000,
669 tx_max_freq_lmda = 2000,
670 tx_grid_freq_lmda = 1500,
671 rx_min_freq_lmda = 1000,
672 rx_max_freq_lmda = 2000,
673 rx_grid_freq_lmda = 1500,
676 #ofp_port_desc_prop_experimenter{
680 #ofp_port_desc_prop_experimenter{
684 #ofp_port_desc_prop_experimenter{
687 data = <<1:32,2:32>>}]}
690 cookie = <<0,0,0,0,0,0,0,0>>,
691 priority = 65535,reason = idle_timeout,table_id = 0,
692 duration_sec = 3,duration_nsec = 48825000,idle_timeout = 3,
693 hard_timeout = 0,packet_count = 1,byte_count = 86,
698 class = openflow_basic,name = eth_dst,
700 value = <<"\362\v\244}\370\352">>,
701 mask = undefined}]}},
702 #ofp_error_msg_experimenter{
704 experimenter = 999999,
705 data = <<"jikken data">>
707 #ofp_get_async_request{},
708 #ofp_get_async_reply{
710 [#ofp_async_config_prop_reasons{
711 type = packet_in_slave,
712 mask = [table_miss, apply_action]},
713 #ofp_async_config_prop_reasons{
714 type = packet_in_master,
715 mask = [table_miss, apply_action]},
716 #ofp_async_config_prop_reasons{
717 type = port_status_slave,
718 mask = [add, delete]},
719 #ofp_async_config_prop_reasons{
720 type = port_status_master,
721 mask = [add, delete]},
722 #ofp_async_config_prop_reasons{
723 type = flow_removed_slave,
724 mask = [idle_timeout, hard_timeout]},
725 #ofp_async_config_prop_reasons{
726 type = flow_removed_master,
727 mask = [idle_timeout, hard_timeout]},
728 #ofp_async_config_prop_reasons{
729 type = role_status_slave,
730 mask = [master_request, config]},
731 #ofp_async_config_prop_reasons{
732 type = role_status_master,
733 mask = [master_request, config]},
734 #ofp_async_config_prop_reasons{
735 type = table_status_slave,
736 mask = [vacancy_down, vacancy_up]},
737 #ofp_async_config_prop_reasons{
738 type = table_status_master,
739 mask = [vacancy_down, vacancy_up]},
740 #ofp_async_config_prop_reasons{
741 type = requestforward_slave,
742 mask = [group_mod, meter_mod]},
743 #ofp_async_config_prop_reasons{
744 type = requestforward_master,
745 mask = [group_mod, meter_mod]},
746 #ofp_async_config_prop_experimenter{
747 type = experimenter_slave,
751 #ofp_async_config_prop_experimenter{
752 type = experimenter_master,
756 #ofp_async_config_prop_experimenter{
757 type = experimenter_master,
760 data = <<1:32, 2:32>>}]},
763 [#ofp_async_config_prop_reasons{
764 type = packet_in_slave,
765 mask = [table_miss, apply_action]},
766 #ofp_async_config_prop_reasons{
767 type = packet_in_master,
768 mask = [table_miss, apply_action]},
769 #ofp_async_config_prop_reasons{
770 type = port_status_slave,
771 mask = [add, delete]},
772 #ofp_async_config_prop_reasons{
773 type = port_status_master,
774 mask = [add, delete]},
775 #ofp_async_config_prop_reasons{
776 type = flow_removed_slave,
777 mask = [idle_timeout, hard_timeout]},
778 #ofp_async_config_prop_reasons{
779 type = flow_removed_master,
780 mask = [idle_timeout, hard_timeout]},
781 #ofp_async_config_prop_reasons{
782 type = role_status_slave,
783 mask = [master_request, config]},
784 #ofp_async_config_prop_reasons{
785 type = role_status_master,
786 mask = [master_request, config]},
787 #ofp_async_config_prop_reasons{
788 type = table_status_slave,
789 mask = [vacancy_down, vacancy_up]},
790 #ofp_async_config_prop_reasons{
791 type = table_status_master,
792 mask = [vacancy_down, vacancy_up]},
793 #ofp_async_config_prop_reasons{
794 type = requestforward_slave,
795 mask = [group_mod, meter_mod]},
796 #ofp_async_config_prop_reasons{
797 type = requestforward_master,
798 mask = [group_mod, meter_mod]},
799 #ofp_async_config_prop_experimenter{
800 type = experimenter_slave,
804 #ofp_async_config_prop_experimenter{
805 type = experimenter_master,
809 #ofp_async_config_prop_experimenter{
810 type = experimenter_master,
813 data = <<1:32, 2:32>>}]},
816 flags = [pktps, burst, stats],
819 #ofp_meter_band_drop{rate = 1000, burst_size = 10},
820 #ofp_meter_band_dscp_remark{rate = 1000, burst_size = 10,
822 #ofp_meter_band_experimenter{rate = 1000, burst_size = 10,
828 cookie = <<0,0,0,0,0,0,0,0>>,
829 cookie_mask = <<0,0,0,0,0,0,0,0>>,
830 table_id = 1,command = add,idle_timeout = 0,
831 hard_timeout = 0,priority = 123,buffer_id = 65535,
832 out_port = any,out_group = any,flags = [],
837 class = openflow_basic,name = eth_dst,
839 value = <<"\362\v\244}\370\352">>,
842 [#ofp_instruction_meter{meter_id = 1},
843 #ofp_instruction_write_actions{
845 [#ofp_action_output{port = 6,max_len = no_buffer}]}]},
847 #ofp_meter_config_request{meter_id = all},
848 #ofp_meter_config_reply{
851 flags = [pktps,burst,stats],
854 [#ofp_meter_band_drop{
855 type = drop,rate = 1000,burst_size = 10}]}]},
857 #ofp_meter_stats_request{meter_id = all},
858 #ofp_meter_stats_reply{
861 meter_id = 100,flow_count = 0,packet_in_count = 0,
862 byte_in_count = 0,duration_sec = 0,duration_nsec = 480000,
864 [#ofp_meter_band_stats{
865 packet_band_count = 0,byte_band_count = 0}]}]},
867 #ofp_meter_features_request{},
868 #ofp_meter_features_reply{max_meter = 16777216,
869 band_types = [drop,dscp_remark,experimenter],
870 capabilities = [kbps,pktps,burst,stats],
871 max_bands = 255,max_color = 0},
872 #ofp_port_desc_request{flags = []},
873 #ofp_port_desc_reply{flags = [],
874 body = [#ofp_port{port_no = 7,hw_addr = <<"\362\v\244\320?p">>,
875 name = <<"Port7">>,config = [],
878 [#ofp_port_desc_prop_ethernet{
879 curr = ['100mb_fd',copper,autoneg],
880 advertised = [copper,autoneg],
881 supported = ['100mb_fd',copper,autoneg],
882 peer = ['100mb_fd',copper,autoneg],
883 curr_speed = 5000,max_speed = 5000},
884 #ofp_port_desc_prop_optical{
885 supported = [rx_tune],
886 tx_min_freq_lmda = 1000,
887 tx_max_freq_lmda = 2000,
888 tx_grid_freq_lmda = 1500,
889 rx_min_freq_lmda = 1000,
890 rx_max_freq_lmda = 2000,
891 rx_grid_freq_lmda = 1500,
894 #ofp_port_desc_prop_experimenter{
898 #ofp_port_desc_prop_experimenter{
902 #ofp_port_desc_prop_experimenter{
905 data = <<1:32,2:32>>}]},
906 #ofp_port{port_no = 6,hw_addr = <<"\362\v\244}\370\352">>,
907 name = <<"Port6">>,config = [],
910 [#ofp_port_desc_prop_ethernet{
911 curr = ['100mb_fd',copper,autoneg],
912 advertised = [copper,autoneg],
913 supported = ['100mb_fd',copper,autoneg],
914 peer = ['100mb_fd',copper,autoneg],
915 curr_speed = 5000,max_speed = 5000}]}]},
918 #ofp_table_features_request{
921 [#ofp_table_features{
922 table_id = 0,name = <<"Flow Table 0x00">>,
923 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
924 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
926 [#ofp_table_feature_prop_instructions{
928 [goto_table,write_metadata,write_actions,
929 apply_actions,clear_actions,meter]},
930 #ofp_table_feature_prop_next_tables{
932 [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,
933 18,19,20,21,22,23,24,25,26,27,28,29,30,31,
934 32,33,34,35,36,37,38,39,40,41,42,43,44,45,
935 46,47,48,49,50,51,52,53,54,55,56,57,58,59,
936 60,61,62,63,64,65,66,67,68,69,70,71,72,73,
937 74,75,76,77,78,79,80,81,82,83,84,85,86,87,
938 88,89,90,91,92,93,94,95,96,97,98,99,100,
939 101,102,103,104,105,106,107,108,109,110,
940 111,112,113,114,115,116,117,118,119,120,
941 121,122,123,124,125,126,127,128,129,130,
942 131,132,133,134,135,136,137,138,139,140,
943 141,142,143,144,145,146,147,148,149,150,
944 151,152,153,154,155,156,157,158,159,160,
945 161,162,163,164,165,166,167,168,169,170,
946 171,172,173,174,175,176,177,178,179,180,
947 181,182,183,184,185,186,187,188,189,190,
948 191,192,193,194,195,196,197,198,199,200,
949 201,202,203,204,205,206,207,208,209,210,
950 211,212,213,214,215,216,217,218,219,220,
951 221,222,223,224,225,226,227,228,229,230,
952 231,232,233,234,235,236,237,238,239,240,
953 241,242,243,244,245,246,247,248,249,250,
955 #ofp_table_feature_prop_write_actions{
957 [output,group,set_queue,set_mpls_ttl,
958 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
959 copy_ttl_out,copy_ttl_in,push_vlan,
960 pop_vlan,push_mpls,pop_mpls,push_pbb,
962 #ofp_table_feature_prop_apply_actions{
964 [output,group,set_queue,set_mpls_ttl,
965 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
966 copy_ttl_out,copy_ttl_in,push_vlan,
967 pop_vlan,push_mpls,pop_mpls,push_pbb,
969 #ofp_table_feature_prop_match{
971 [in_port,metadata,eth_dst,eth_src,eth_type,
972 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
973 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
974 udp_dst,sctp_src,sctp_dst,icmpv4_type,
975 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
976 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
977 icmpv6_type,icmpv6_code,ipv6_nd_target,
978 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
980 #ofp_table_feature_prop_wildcards{
982 [in_port,metadata,eth_dst,eth_src,eth_type,
983 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
984 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
985 udp_dst,sctp_src,sctp_dst,icmpv4_type,
986 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
987 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
988 icmpv6_type,icmpv6_code,ipv6_nd_target,
989 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
991 #ofp_table_feature_prop_write_setfield{
993 [in_port,metadata,eth_dst,eth_src,eth_type,
994 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
995 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
996 udp_dst,sctp_src,sctp_dst,icmpv4_type,
997 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
998 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
999 icmpv6_type,icmpv6_code,ipv6_nd_target,
1000 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1001 mpls_bos,pbb_isid]},
1002 #ofp_table_feature_prop_apply_setfield{
1004 [in_port,metadata,eth_dst,eth_src,eth_type,
1005 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1006 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1007 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1008 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1009 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1010 icmpv6_type,icmpv6_code,ipv6_nd_target,
1011 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1012 mpls_bos,pbb_isid]},
1013 #ofp_table_feature_prop_experimenter{
1017 #ofp_table_feature_prop_experimenter{
1021 #ofp_table_feature_prop_experimenter{
1024 data = <<1:32,2:32>>}]},
1025 #ofp_table_features{
1026 table_id = 1,name = <<"Flow Table 0x01">>,
1027 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1028 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1030 [#ofp_table_feature_prop_instructions{
1032 [goto_table,write_metadata,write_actions,
1033 apply_actions,clear_actions,meter]},
1034 #ofp_table_feature_prop_next_tables{
1036 [2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,
1037 19,20,21,22,23,24,25,26,27,28,29,30,31,32,
1038 33,34,35,36,37,38,39,40,41,42,43,44,45,46,
1039 47,48,49,50,51,52,53,54,55,56,57,58,59,60,
1040 61,62,63,64,65,66,67,68,69,70,71,72,73,74,
1041 75,76,77,78,79,80,81,82,83,84,85,86,87,88,
1042 89,90,91,92,93,94,95,96,97,98,99,100,101,
1043 102,103,104,105,106,107,108,109,110,111,
1044 112,113,114,115,116,117,118,119,120,121,
1045 122,123,124,125,126,127,128,129,130,131,
1046 132,133,134,135,136,137,138,139,140,141,
1047 142,143,144,145,146,147,148,149,150,151,
1048 152,153,154,155,156,157,158,159,160,161,
1049 162,163,164,165,166,167,168,169,170,171,
1050 172,173,174,175,176,177,178,179,180,181,
1051 182,183,184,185,186,187,188,189,190,191,
1052 192,193,194,195,196,197,198,199,200,201,
1053 202,203,204,205,206,207,208,209,210,211,
1054 212,213,214,215,216,217,218,219,220,221,
1055 222,223,224,225,226,227,228,229,230,231,
1056 232,233,234,235,236,237,238,239,240,241,
1057 242,243,244,245,246,247,248,249,250,251,
1059 #ofp_table_feature_prop_write_actions{
1061 [output,group,set_queue,set_mpls_ttl,
1062 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1063 copy_ttl_out,copy_ttl_in,push_vlan,
1064 pop_vlan,push_mpls,pop_mpls,push_pbb,
1065 pop_pbb,set_field]},
1066 #ofp_table_feature_prop_apply_actions{
1068 [output,group,set_queue,set_mpls_ttl,
1069 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1070 copy_ttl_out,copy_ttl_in,push_vlan,
1071 pop_vlan,push_mpls,pop_mpls,push_pbb,
1072 pop_pbb,set_field]},
1073 #ofp_table_feature_prop_match{
1075 [in_port,metadata,eth_dst,eth_src,eth_type,
1076 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1077 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1078 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1079 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1080 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1081 icmpv6_type,icmpv6_code,ipv6_nd_target,
1082 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1083 mpls_bos,pbb_isid]},
1084 #ofp_table_feature_prop_wildcards{
1086 [in_port,metadata,eth_dst,eth_src,eth_type,
1087 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1088 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1089 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1090 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1091 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1092 icmpv6_type,icmpv6_code,ipv6_nd_target,
1093 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1094 mpls_bos,pbb_isid]},
1095 #ofp_table_feature_prop_write_setfield{
1097 [in_port,metadata,eth_dst,eth_src,eth_type,
1098 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1099 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1100 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1101 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1102 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1103 icmpv6_type,icmpv6_code,ipv6_nd_target,
1104 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1105 mpls_bos,pbb_isid]},
1106 #ofp_table_feature_prop_apply_setfield{
1108 [in_port,metadata,eth_dst,eth_src,eth_type,
1109 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1110 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1111 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1112 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1113 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1114 icmpv6_type,icmpv6_code,ipv6_nd_target,
1115 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1116 mpls_bos,pbb_isid]}]},
1117 #ofp_table_features{
1118 table_id = 2,name = <<"Flow Table 0x02">>,
1119 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1120 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1122 [#ofp_table_feature_prop_instructions{
1124 [goto_table,write_metadata,write_actions,
1125 apply_actions,clear_actions,meter]},
1126 #ofp_table_feature_prop_next_tables{
1128 [3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,
1129 19,20,21,22,23,24,25,26,27,28,29,30,31,32,
1130 33,34,35,36,37,38,39,40,41,42,43,44,45,46,
1131 47,48,49,50,51,52,53,54,55,56,57,58,59,60,
1132 61,62,63,64,65,66,67,68,69,70,71,72,73,74,
1133 75,76,77,78,79,80,81,82,83,84,85,86,87,88,
1134 89,90,91,92,93,94,95,96,97,98,99,100,101,
1135 102,103,104,105,106,107,108,109,110,111,
1136 112,113,114,115,116,117,118,119,120,121,
1137 122,123,124,125,126,127,128,129,130,131,
1138 132,133,134,135,136,137,138,139,140,141,
1139 142,143,144,145,146,147,148,149,150,151,
1140 152,153,154,155,156,157,158,159,160,161,
1141 162,163,164,165,166,167,168,169,170,171,
1142 172,173,174,175,176,177,178,179,180,181,
1143 182,183,184,185,186,187,188,189,190,191,
1144 192,193,194,195,196,197,198,199,200,201,
1145 202,203,204,205,206,207,208,209,210,211,
1146 212,213,214,215,216,217,218,219,220,221,
1147 222,223,224,225,226,227,228,229,230,231,
1148 232,233,234,235,236,237,238,239,240,241,
1149 242,243,244,245,246,247,248,249,250,251,
1151 #ofp_table_feature_prop_write_actions{
1153 [output,group,set_queue,set_mpls_ttl,
1154 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1155 copy_ttl_out,copy_ttl_in,push_vlan,
1156 pop_vlan,push_mpls,pop_mpls,push_pbb,
1157 pop_pbb,set_field]},
1158 #ofp_table_feature_prop_apply_actions{
1160 [output,group,set_queue,set_mpls_ttl,
1161 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1162 copy_ttl_out,copy_ttl_in,push_vlan,
1163 pop_vlan,push_mpls,pop_mpls,push_pbb,
1164 pop_pbb,set_field]},
1165 #ofp_table_feature_prop_match{
1167 [in_port,metadata,eth_dst,eth_src,eth_type,
1168 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1169 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1170 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1171 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1172 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1173 icmpv6_type,icmpv6_code,ipv6_nd_target,
1174 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1175 mpls_bos,pbb_isid]},
1176 #ofp_table_feature_prop_wildcards{
1178 [in_port,metadata,eth_dst,eth_src,eth_type,
1179 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1180 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1181 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1182 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1183 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1184 icmpv6_type,icmpv6_code,ipv6_nd_target,
1185 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1186 mpls_bos,pbb_isid]},
1187 #ofp_table_feature_prop_write_setfield{
1189 [in_port,metadata,eth_dst,eth_src,eth_type,
1190 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1191 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1192 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1193 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1194 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1195 icmpv6_type,icmpv6_code,ipv6_nd_target,
1196 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1197 mpls_bos,pbb_isid]},
1198 #ofp_table_feature_prop_apply_setfield{
1200 [in_port,metadata,eth_dst,eth_src,eth_type,
1201 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1202 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1203 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1204 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1205 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1206 icmpv6_type,icmpv6_code,ipv6_nd_target,
1207 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1208 mpls_bos,pbb_isid]}]},
1209 #ofp_table_features{
1210 table_id = 3,name = <<"Flow Table 0x03">>,
1211 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1212 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1214 [#ofp_table_feature_prop_instructions{
1216 [goto_table,write_metadata,write_actions,
1217 apply_actions,clear_actions,meter]},
1218 #ofp_table_feature_prop_next_tables{
1220 [4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,
1221 20,21,22,23,24,25,26,27,28,29,30,31,32,33,
1222 34,35,36,37,38,39,40,41,42,43,44,45,46,47,
1223 48,49,50,51,52,53,54,55,56,57,58,59,60,61,
1224 62,63,64,65,66,67,68,69,70,71,72,73,74,75,
1225 76,77,78,79,80,81,82,83,84,85,86,87,88,89,
1226 90,91,92,93,94,95,96,97,98,99,100,101,102,
1227 103,104,105,106,107,108,109,110,111,112,
1228 113,114,115,116,117,118,119,120,121,122,
1229 123,124,125,126,127,128,129,130,131,132,
1230 133,134,135,136,137,138,139,140,141,142,
1231 143,144,145,146,147,148,149,150,151,152,
1232 153,154,155,156,157,158,159,160,161,162,
1233 163,164,165,166,167,168,169,170,171,172,
1234 173,174,175,176,177,178,179,180,181,182,
1235 183,184,185,186,187,188,189,190,191,192,
1236 193,194,195,196,197,198,199,200,201,202,
1237 203,204,205,206,207,208,209,210,211,212,
1238 213,214,215,216,217,218,219,220,221,222,
1239 223,224,225,226,227,228,229,230,231,232,
1240 233,234,235,236,237,238,239,240,241,242,
1241 243,244,245,246,247,248,249,250,251,252,
1243 #ofp_table_feature_prop_write_actions{
1245 [output,group,set_queue,set_mpls_ttl,
1246 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1247 copy_ttl_out,copy_ttl_in,push_vlan,
1248 pop_vlan,push_mpls,pop_mpls,push_pbb,
1249 pop_pbb,set_field]},
1250 #ofp_table_feature_prop_apply_actions{
1252 [output,group,set_queue,set_mpls_ttl,
1253 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1254 copy_ttl_out,copy_ttl_in,push_vlan,
1255 pop_vlan,push_mpls,pop_mpls,push_pbb,
1256 pop_pbb,set_field]},
1257 #ofp_table_feature_prop_match{
1259 [in_port,metadata,eth_dst,eth_src,eth_type,
1260 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1261 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1262 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1263 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1264 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1265 icmpv6_type,icmpv6_code,ipv6_nd_target,
1266 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1267 mpls_bos,pbb_isid]},
1268 #ofp_table_feature_prop_wildcards{
1270 [in_port,metadata,eth_dst,eth_src,eth_type,
1271 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1272 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1273 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1274 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1275 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1276 icmpv6_type,icmpv6_code,ipv6_nd_target,
1277 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1278 mpls_bos,pbb_isid]},
1279 #ofp_table_feature_prop_write_setfield{
1281 [in_port,metadata,eth_dst,eth_src,eth_type,
1282 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1283 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1284 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1285 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1286 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1287 icmpv6_type,icmpv6_code,ipv6_nd_target,
1288 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1289 mpls_bos,pbb_isid]},
1290 #ofp_table_feature_prop_apply_setfield{
1292 [in_port,metadata,eth_dst,eth_src,eth_type,
1293 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1294 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1295 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1296 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1297 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1298 icmpv6_type,icmpv6_code,ipv6_nd_target,
1299 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1300 mpls_bos,pbb_isid]}]},
1301 #ofp_table_features{
1302 table_id = 4,name = <<"Flow Table 0x04">>,
1303 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1304 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1306 [#ofp_table_feature_prop_instructions{
1308 [goto_table,write_metadata,write_actions,
1309 apply_actions,clear_actions,meter]},
1310 #ofp_table_feature_prop_next_tables{
1312 [5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
1313 21,22,23,24,25,26,27,28,29,30,31,32,33,34,
1314 35,36,37,38,39,40,41,42,43,44,45,46,47,48,
1315 49,50,51,52,53,54,55,56,57,58,59,60,61,62,
1316 63,64,65,66,67,68,69,70,71,72,73,74,75,76,
1317 77,78,79,80,81,82,83,84,85,86,87,88,89,90,
1318 91,92,93,94,95,96,97,98,99,100,101,102,103,
1319 104,105,106,107,108,109,110,111,112,113,
1320 114,115,116,117,118,119,120,121,122,123,
1321 124,125,126,127,128,129,130,131,132,133,
1322 134,135,136,137,138,139,140,141,142,143,
1323 144,145,146,147,148,149,150,151,152,153,
1324 154,155,156,157,158,159,160,161,162,163,
1325 164,165,166,167,168,169,170,171,172,173,
1326 174,175,176,177,178,179,180,181,182,183,
1327 184,185,186,187,188,189,190,191,192,193,
1328 194,195,196,197,198,199,200,201,202,203,
1329 204,205,206,207,208,209,210,211,212,213,
1330 214,215,216,217,218,219,220,221,222,223,
1331 224,225,226,227,228,229,230,231,232,233,
1332 234,235,236,237,238,239,240,241,242,243,
1333 244,245,246,247,248,249,250,251,252,253,
1335 #ofp_table_feature_prop_write_actions{
1337 [output,group,set_queue,set_mpls_ttl,
1338 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1339 copy_ttl_out,copy_ttl_in,push_vlan,
1340 pop_vlan,push_mpls,pop_mpls,push_pbb,
1341 pop_pbb,set_field]},
1342 #ofp_table_feature_prop_apply_actions{
1344 [output,group,set_queue,set_mpls_ttl,
1345 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1346 copy_ttl_out,copy_ttl_in,push_vlan,
1347 pop_vlan,push_mpls,pop_mpls,push_pbb,
1348 pop_pbb,set_field]},
1349 #ofp_table_feature_prop_match{
1351 [in_port,metadata,eth_dst,eth_src,eth_type,
1352 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1353 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1354 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1355 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1356 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1357 icmpv6_type,icmpv6_code,ipv6_nd_target,
1358 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1359 mpls_bos,pbb_isid]},
1360 #ofp_table_feature_prop_wildcards{
1362 [in_port,metadata,eth_dst,eth_src,eth_type,
1363 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1364 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1365 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1366 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1367 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1368 icmpv6_type,icmpv6_code,ipv6_nd_target,
1369 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1370 mpls_bos,pbb_isid]},
1371 #ofp_table_feature_prop_write_setfield{
1373 [in_port,metadata,eth_dst,eth_src,eth_type,
1374 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1375 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1376 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1377 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1378 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1379 icmpv6_type,icmpv6_code,ipv6_nd_target,
1380 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1381 mpls_bos,pbb_isid]},
1382 #ofp_table_feature_prop_apply_setfield{
1384 [in_port,metadata,eth_dst,eth_src,eth_type,
1385 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1386 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1387 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1388 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1389 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1390 icmpv6_type,icmpv6_code,ipv6_nd_target,
1391 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1392 mpls_bos,pbb_isid]}]},
1393 #ofp_table_features{
1394 table_id = 5,name = <<"Flow Table 0x05">>,
1395 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1396 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1398 [#ofp_table_feature_prop_instructions{
1400 [goto_table,write_metadata,write_actions,
1401 apply_actions,clear_actions,meter]},
1402 #ofp_table_feature_prop_next_tables{
1404 [6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
1405 21,22,23,24,25,26,27,28,29,30,31,32,33,34,
1406 35,36,37,38,39,40,41,42,43,44,45,46,47,48,
1407 49,50,51,52,53,54,55,56,57,58,59,60,61,62,
1408 63,64,65,66,67,68,69,70,71,72,73,74,75,76,
1409 77,78,79,80,81,82,83,84,85,86,87,88,89,90,
1410 91,92,93,94,95,96,97,98,99,100,101,102,103,
1411 104,105,106,107,108,109,110,111,112,113,
1412 114,115,116,117,118,119,120,121,122,123,
1413 124,125,126,127,128,129,130,131,132,133,
1414 134,135,136,137,138,139,140,141,142,143,
1415 144,145,146,147,148,149,150,151,152,153,
1416 154,155,156,157,158,159,160,161,162,163,
1417 164,165,166,167,168,169,170,171,172,173,
1418 174,175,176,177,178,179,180,181,182,183,
1419 184,185,186,187,188,189,190,191,192,193,
1420 194,195,196,197,198,199,200,201,202,203,
1421 204,205,206,207,208,209,210,211,212,213,
1422 214,215,216,217,218,219,220,221,222,223,
1423 224,225,226,227,228,229,230,231,232,233,
1424 234,235,236,237,238,239,240,241,242,243,
1425 244,245,246,247,248,249,250,251,252,253,
1427 #ofp_table_feature_prop_write_actions{
1429 [output,group,set_queue,set_mpls_ttl,
1430 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1431 copy_ttl_out,copy_ttl_in,push_vlan,
1432 pop_vlan,push_mpls,pop_mpls,push_pbb,
1433 pop_pbb,set_field]},
1434 #ofp_table_feature_prop_apply_actions{
1436 [output,group,set_queue,set_mpls_ttl,
1437 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1438 copy_ttl_out,copy_ttl_in,push_vlan,
1439 pop_vlan,push_mpls,pop_mpls,push_pbb,
1440 pop_pbb,set_field]},
1441 #ofp_table_feature_prop_match{
1443 [in_port,metadata,eth_dst,eth_src,eth_type,
1444 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1445 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1446 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1447 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1448 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1449 icmpv6_type,icmpv6_code,ipv6_nd_target,
1450 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1451 mpls_bos,pbb_isid]},
1452 #ofp_table_feature_prop_wildcards{
1454 [in_port,metadata,eth_dst,eth_src,eth_type,
1455 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1456 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1457 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1458 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1459 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1460 icmpv6_type,icmpv6_code,ipv6_nd_target,
1461 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1462 mpls_bos,pbb_isid]},
1463 #ofp_table_feature_prop_write_setfield{
1465 [in_port,metadata,eth_dst,eth_src,eth_type,
1466 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1467 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1468 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1469 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1470 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1471 icmpv6_type,icmpv6_code,ipv6_nd_target,
1472 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1473 mpls_bos,pbb_isid]},
1474 #ofp_table_feature_prop_apply_setfield{
1476 [in_port,metadata,eth_dst,eth_src,eth_type,
1477 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1478 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1479 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1480 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1481 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1482 icmpv6_type,icmpv6_code,ipv6_nd_target,
1483 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1484 mpls_bos,pbb_isid]}]},
1485 #ofp_table_features{
1486 table_id = 6,name = <<"Flow Table 0x06">>,
1487 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1488 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1490 [#ofp_table_feature_prop_instructions{
1492 [goto_table,write_metadata,write_actions,
1493 apply_actions,clear_actions,meter]},
1494 #ofp_table_feature_prop_next_tables{
1496 [7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,
1497 22,23,24,25,26,27,28,29,30,31,32,33,34,35,
1498 36,37,38,39,40,41,42,43,44,45,46,47,48,49,
1499 50,51,52,53,54,55,56,57,58,59,60,61,62,63,
1500 64,65,66,67,68,69,70,71,72,73,74,75,76,77,
1501 78,79,80,81,82,83,84,85,86,87,88,89,90,91,
1502 92,93,94,95,96,97,98,99,100,101,102,103,
1503 104,105,106,107,108,109,110,111,112,113,
1504 114,115,116,117,118,119,120,121,122,123,
1505 124,125,126,127,128,129,130,131,132,133,
1506 134,135,136,137,138,139,140,141,142,143,
1507 144,145,146,147,148,149,150,151,152,153,
1508 154,155,156,157,158,159,160,161,162,163,
1509 164,165,166,167,168,169,170,171,172,173,
1510 174,175,176,177,178,179,180,181,182,183,
1511 184,185,186,187,188,189,190,191,192,193,
1512 194,195,196,197,198,199,200,201,202,203,
1513 204,205,206,207,208,209,210,211,212,213,
1514 214,215,216,217,218,219,220,221,222,223,
1515 224,225,226,227,228,229,230,231,232,233,
1516 234,235,236,237,238,239,240,241,242,243,
1517 244,245,246,247,248,249,250,251,252,253,
1519 #ofp_table_feature_prop_write_actions{
1521 [output,group,set_queue,set_mpls_ttl,
1522 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1523 copy_ttl_out,copy_ttl_in,push_vlan,
1524 pop_vlan,push_mpls,pop_mpls,push_pbb,
1525 pop_pbb,set_field]},
1526 #ofp_table_feature_prop_apply_actions{
1528 [output,group,set_queue,set_mpls_ttl,
1529 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1530 copy_ttl_out,copy_ttl_in,push_vlan,
1531 pop_vlan,push_mpls,pop_mpls,push_pbb,
1532 pop_pbb,set_field]},
1533 #ofp_table_feature_prop_match{
1535 [in_port,metadata,eth_dst,eth_src,eth_type,
1536 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1537 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1538 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1539 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1540 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1541 icmpv6_type,icmpv6_code,ipv6_nd_target,
1542 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1543 mpls_bos,pbb_isid]},
1544 #ofp_table_feature_prop_wildcards{
1546 [in_port,metadata,eth_dst,eth_src,eth_type,
1547 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1548 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1549 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1550 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1551 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1552 icmpv6_type,icmpv6_code,ipv6_nd_target,
1553 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1554 mpls_bos,pbb_isid]},
1555 #ofp_table_feature_prop_write_setfield{
1557 [in_port,metadata,eth_dst,eth_src,eth_type,
1558 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1559 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1560 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1561 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1562 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1563 icmpv6_type,icmpv6_code,ipv6_nd_target,
1564 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1565 mpls_bos,pbb_isid]},
1566 #ofp_table_feature_prop_apply_setfield{
1568 [in_port,metadata,eth_dst,eth_src,eth_type,
1569 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1570 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1571 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1572 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1573 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1574 icmpv6_type,icmpv6_code,ipv6_nd_target,
1575 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1576 mpls_bos,pbb_isid]}]},
1577 #ofp_table_features{
1578 table_id = 7,name = <<"Flow Table 0x07">>,
1579 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1580 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1582 [#ofp_table_feature_prop_instructions{
1584 [goto_table,write_metadata,write_actions,
1585 apply_actions,clear_actions,meter]},
1586 #ofp_table_feature_prop_next_tables{
1588 [8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,
1589 23,24,25,26,27,28,29,30,31,32,33,34,35,36,
1590 37,38,39,40,41,42,43,44,45,46,47,48,49,50,
1591 51,52,53,54,55,56,57,58,59,60,61,62,63,64,
1592 65,66,67,68,69,70,71,72,73,74,75,76,77,78,
1593 79,80,81,82,83,84,85,86,87,88,89,90,91,92,
1594 93,94,95,96,97,98,99,100,101,102,103,104,
1595 105,106,107,108,109,110,111,112,113,114,
1596 115,116,117,118,119,120,121,122,123,124,
1597 125,126,127,128,129,130,131,132,133,134,
1598 135,136,137,138,139,140,141,142,143,144,
1599 145,146,147,148,149,150,151,152,153,154,
1600 155,156,157,158,159,160,161,162,163,164,
1601 165,166,167,168,169,170,171,172,173,174,
1602 175,176,177,178,179,180,181,182,183,184,
1603 185,186,187,188,189,190,191,192,193,194,
1604 195,196,197,198,199,200,201,202,203,204,
1605 205,206,207,208,209,210,211,212,213,214,
1606 215,216,217,218,219,220,221,222,223,224,
1607 225,226,227,228,229,230,231,232,233,234,
1608 235,236,237,238,239,240,241,242,243,244,
1609 245,246,247,248,249,250,251,252,253,254]},
1610 #ofp_table_feature_prop_write_actions{
1612 [output,group,set_queue,set_mpls_ttl,
1613 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1614 copy_ttl_out,copy_ttl_in,push_vlan,
1615 pop_vlan,push_mpls,pop_mpls,push_pbb,
1616 pop_pbb,set_field]},
1617 #ofp_table_feature_prop_apply_actions{
1619 [output,group,set_queue,set_mpls_ttl,
1620 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1621 copy_ttl_out,copy_ttl_in,push_vlan,
1622 pop_vlan,push_mpls,pop_mpls,push_pbb,
1623 pop_pbb,set_field]},
1624 #ofp_table_feature_prop_match{
1626 [in_port,metadata,eth_dst,eth_src,eth_type,
1627 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1628 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1629 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1630 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1631 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1632 icmpv6_type,icmpv6_code,ipv6_nd_target,
1633 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1634 mpls_bos,pbb_isid]},
1635 #ofp_table_feature_prop_wildcards{
1637 [in_port,metadata,eth_dst,eth_src,eth_type,
1638 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1639 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1640 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1641 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1642 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1643 icmpv6_type,icmpv6_code,ipv6_nd_target,
1644 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1645 mpls_bos,pbb_isid]},
1646 #ofp_table_feature_prop_write_setfield{
1648 [in_port,metadata,eth_dst,eth_src,eth_type,
1649 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1650 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1651 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1652 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1653 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1654 icmpv6_type,icmpv6_code,ipv6_nd_target,
1655 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1656 mpls_bos,pbb_isid]},
1657 #ofp_table_feature_prop_apply_setfield{
1659 [in_port,metadata,eth_dst,eth_src,eth_type,
1660 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1661 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1662 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1663 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1664 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1665 icmpv6_type,icmpv6_code,ipv6_nd_target,
1666 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1667 mpls_bos,pbb_isid]}]},
1668 #ofp_table_features{
1669 table_id = 8,name = <<"Flow Table 0x08">>,
1670 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1671 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1673 [#ofp_table_feature_prop_instructions{
1675 [goto_table,write_metadata,write_actions,
1676 apply_actions,clear_actions,meter]},
1677 #ofp_table_feature_prop_next_tables{
1679 [9,10,11,12,13,14,15,16,17,18,19,20,21,22,
1680 23,24,25,26,27,28,29,30,31,32,33,34,35,36,
1681 37,38,39,40,41,42,43,44,45,46,47,48,49,50,
1682 51,52,53,54,55,56,57,58,59,60,61,62,63,64,
1683 65,66,67,68,69,70,71,72,73,74,75,76,77,78,
1684 79,80,81,82,83,84,85,86,87,88,89,90,91,92,
1685 93,94,95,96,97,98,99,100,101,102,103,104,
1686 105,106,107,108,109,110,111,112,113,114,
1687 115,116,117,118,119,120,121,122,123,124,
1688 125,126,127,128,129,130,131,132,133,134,
1689 135,136,137,138,139,140,141,142,143,144,
1690 145,146,147,148,149,150,151,152,153,154,
1691 155,156,157,158,159,160,161,162,163,164,
1692 165,166,167,168,169,170,171,172,173,174,
1693 175,176,177,178,179,180,181,182,183,184,
1694 185,186,187,188,189,190,191,192,193,194,
1695 195,196,197,198,199,200,201,202,203,204,
1696 205,206,207,208,209,210,211,212,213,214,
1697 215,216,217,218,219,220,221,222,223,224,
1698 225,226,227,228,229,230,231,232,233,234,
1699 235,236,237,238,239,240,241,242,243,244,
1700 245,246,247,248,249,250,251,252,253,254]},
1701 #ofp_table_feature_prop_write_actions{
1703 [output,group,set_queue,set_mpls_ttl,
1704 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1705 copy_ttl_out,copy_ttl_in,push_vlan,
1706 pop_vlan,push_mpls,pop_mpls,push_pbb,
1707 pop_pbb,set_field]},
1708 #ofp_table_feature_prop_apply_actions{
1710 [output,group,set_queue,set_mpls_ttl,
1711 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1712 copy_ttl_out,copy_ttl_in,push_vlan,
1713 pop_vlan,push_mpls,pop_mpls,push_pbb,
1714 pop_pbb,set_field]},
1715 #ofp_table_feature_prop_match{
1717 [in_port,metadata,eth_dst,eth_src,eth_type,
1718 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1719 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1720 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1721 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1722 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1723 icmpv6_type,icmpv6_code,ipv6_nd_target,
1724 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1725 mpls_bos,pbb_isid]},
1726 #ofp_table_feature_prop_wildcards{
1728 [in_port,metadata,eth_dst,eth_src,eth_type,
1729 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1730 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1731 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1732 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1733 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1734 icmpv6_type,icmpv6_code,ipv6_nd_target,
1735 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1736 mpls_bos,pbb_isid]},
1737 #ofp_table_feature_prop_write_setfield{
1739 [in_port,metadata,eth_dst,eth_src,eth_type,
1740 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1741 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1742 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1743 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1744 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1745 icmpv6_type,icmpv6_code,ipv6_nd_target,
1746 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1747 mpls_bos,pbb_isid]},
1748 #ofp_table_feature_prop_apply_setfield{
1750 [in_port,metadata,eth_dst,eth_src,eth_type,
1751 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1752 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1753 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1754 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1755 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1756 icmpv6_type,icmpv6_code,ipv6_nd_target,
1757 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1758 mpls_bos,pbb_isid]}]},
1759 #ofp_table_features{
1760 table_id = 9,name = <<"Flow Table 0x09">>,
1761 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1762 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1764 [#ofp_table_feature_prop_instructions{
1766 [goto_table,write_metadata,write_actions,
1767 apply_actions,clear_actions,meter]},
1768 #ofp_table_feature_prop_next_tables{
1770 [10,11,12,13,14,15,16,17,18,19,20,21,22,23,
1771 24,25,26,27,28,29,30,31,32,33,34,35,36,37,
1772 38,39,40,41,42,43,44,45,46,47,48,49,50,51,
1773 52,53,54,55,56,57,58,59,60,61,62,63,64,65,
1774 66,67,68,69,70,71,72,73,74,75,76,77,78,79,
1775 80,81,82,83,84,85,86,87,88,89,90,91,92,93,
1776 94,95,96,97,98,99,100,101,102,103,104,105,
1777 106,107,108,109,110,111,112,113,114,115,
1778 116,117,118,119,120,121,122,123,124,125,
1779 126,127,128,129,130,131,132,133,134,135,
1780 136,137,138,139,140,141,142,143,144,145,
1781 146,147,148,149,150,151,152,153,154,155,
1782 156,157,158,159,160,161,162,163,164,165,
1783 166,167,168,169,170,171,172,173,174,175,
1784 176,177,178,179,180,181,182,183,184,185,
1785 186,187,188,189,190,191,192,193,194,195,
1786 196,197,198,199,200,201,202,203,204,205,
1787 206,207,208,209,210,211,212,213,214,215,
1788 216,217,218,219,220,221,222,223,224,225,
1789 226,227,228,229,230,231,232,233,234,235,
1790 236,237,238,239,240,241,242,243,244,245,
1791 246,247,248,249,250,251,252,253,254]},
1792 #ofp_table_feature_prop_write_actions{
1794 [output,group,set_queue,set_mpls_ttl,
1795 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1796 copy_ttl_out,copy_ttl_in,push_vlan,
1797 pop_vlan,push_mpls,pop_mpls,push_pbb,
1798 pop_pbb,set_field]},
1799 #ofp_table_feature_prop_apply_actions{
1801 [output,group,set_queue,set_mpls_ttl,
1802 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1803 copy_ttl_out,copy_ttl_in,push_vlan,
1804 pop_vlan,push_mpls,pop_mpls,push_pbb,
1805 pop_pbb,set_field]},
1806 #ofp_table_feature_prop_match{
1808 [in_port,metadata,eth_dst,eth_src,eth_type,
1809 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1810 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1811 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1812 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1813 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1814 icmpv6_type,icmpv6_code,ipv6_nd_target,
1815 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1816 mpls_bos,pbb_isid]},
1817 #ofp_table_feature_prop_wildcards{
1819 [in_port,metadata,eth_dst,eth_src,eth_type,
1820 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1821 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1822 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1823 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1824 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1825 icmpv6_type,icmpv6_code,ipv6_nd_target,
1826 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1827 mpls_bos,pbb_isid]},
1828 #ofp_table_feature_prop_write_setfield{
1830 [in_port,metadata,eth_dst,eth_src,eth_type,
1831 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1832 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1833 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1834 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1835 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1836 icmpv6_type,icmpv6_code,ipv6_nd_target,
1837 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1838 mpls_bos,pbb_isid]},
1839 #ofp_table_feature_prop_apply_setfield{
1841 [in_port,metadata,eth_dst,eth_src,eth_type,
1842 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1843 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1844 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1845 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1846 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1847 icmpv6_type,icmpv6_code,ipv6_nd_target,
1848 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1849 mpls_bos,pbb_isid]}]}]},
1850 #ofp_table_features_reply{
1853 [#ofp_table_features{
1854 table_id = 0,name = <<"\xe7\xa7\x81\xe3\x81\xae\xe3\x83\x86\xe3\x83\xbc\xe3\x83\x96\xe3\x83\xab">>, % "my table" in japanese, utf-8
1855 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1856 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1858 [#ofp_table_feature_prop_instructions{
1860 [goto_table,write_metadata,write_actions,
1861 apply_actions,clear_actions,meter]},
1862 #ofp_table_feature_prop_next_tables{
1864 [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,
1865 18,19,20,21,22,23,24,25,26,27,28,29,30,31,
1866 32,33,34,35,36,37,38,39,40,41,42,43,44,45,
1867 46,47,48,49,50,51,52,53,54,55,56,57,58,59,
1868 60,61,62,63,64,65,66,67,68,69,70,71,72,73,
1869 74,75,76,77,78,79,80,81,82,83,84,85,86,87,
1870 88,89,90,91,92,93,94,95,96,97,98,99,100,
1871 101,102,103,104,105,106,107,108,109,110,
1872 111,112,113,114,115,116,117,118,119,120,
1873 121,122,123,124,125,126,127,128,129,130,
1874 131,132,133,134,135,136,137,138,139,140,
1875 141,142,143,144,145,146,147,148,149,150,
1876 151,152,153,154,155,156,157,158,159,160,
1877 161,162,163,164,165,166,167,168,169,170,
1878 171,172,173,174,175,176,177,178,179,180,
1879 181,182,183,184,185,186,187,188,189,190,
1880 191,192,193,194,195,196,197,198,199,200,
1881 201,202,203,204,205,206,207,208,209,210,
1882 211,212,213,214,215,216,217,218,219,220,
1883 221,222,223,224,225,226,227,228,229,230,
1884 231,232,233,234,235,236,237,238,239,240,
1885 241,242,243,244,245,246,247,248,249,250,
1887 #ofp_table_feature_prop_write_actions{
1889 [output,group,set_queue,set_mpls_ttl,
1890 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1891 copy_ttl_out,copy_ttl_in,push_vlan,
1892 pop_vlan,push_mpls,pop_mpls,push_pbb,
1893 pop_pbb,set_field]},
1894 #ofp_table_feature_prop_apply_actions{
1896 [output,group,set_queue,set_mpls_ttl,
1897 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1898 copy_ttl_out,copy_ttl_in,push_vlan,
1899 pop_vlan,push_mpls,pop_mpls,push_pbb,
1900 pop_pbb,set_field]},
1901 #ofp_table_feature_prop_match{
1903 [in_port,metadata,eth_dst,eth_src,eth_type,
1904 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1905 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1906 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1907 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1908 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1909 icmpv6_type,icmpv6_code,ipv6_nd_target,
1910 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1911 mpls_bos,pbb_isid]},
1912 #ofp_table_feature_prop_wildcards{
1914 [in_port,metadata,eth_dst,eth_src,eth_type,
1915 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1916 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1917 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1918 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1919 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1920 icmpv6_type,icmpv6_code,ipv6_nd_target,
1921 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1922 mpls_bos,pbb_isid]},
1923 #ofp_table_feature_prop_write_setfield{
1925 [in_port,metadata,eth_dst,eth_src,eth_type,
1926 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1927 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1928 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1929 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1930 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1931 icmpv6_type,icmpv6_code,ipv6_nd_target,
1932 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1933 mpls_bos,pbb_isid]},
1934 #ofp_table_feature_prop_apply_setfield{
1936 [in_port,metadata,eth_dst,eth_src,eth_type,
1937 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
1938 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
1939 udp_dst,sctp_src,sctp_dst,icmpv4_type,
1940 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
1941 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
1942 icmpv6_type,icmpv6_code,ipv6_nd_target,
1943 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
1944 mpls_bos,pbb_isid]},
1945 #ofp_table_feature_prop_experimenter{
1949 #ofp_table_feature_prop_experimenter{
1953 #ofp_table_feature_prop_experimenter{
1956 data = <<1:32,2:32>>}]},
1957 #ofp_table_features{
1958 table_id = 1,name = <<"Flow Table 0x01">>,
1959 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
1960 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
1962 [#ofp_table_feature_prop_instructions{
1964 [goto_table,write_metadata,write_actions,
1965 apply_actions,clear_actions,meter]},
1966 #ofp_table_feature_prop_next_tables{
1968 [2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,
1969 19,20,21,22,23,24,25,26,27,28,29,30,31,32,
1970 33,34,35,36,37,38,39,40,41,42,43,44,45,46,
1971 47,48,49,50,51,52,53,54,55,56,57,58,59,60,
1972 61,62,63,64,65,66,67,68,69,70,71,72,73,74,
1973 75,76,77,78,79,80,81,82,83,84,85,86,87,88,
1974 89,90,91,92,93,94,95,96,97,98,99,100,101,
1975 102,103,104,105,106,107,108,109,110,111,
1976 112,113,114,115,116,117,118,119,120,121,
1977 122,123,124,125,126,127,128,129,130,131,
1978 132,133,134,135,136,137,138,139,140,141,
1979 142,143,144,145,146,147,148,149,150,151,
1980 152,153,154,155,156,157,158,159,160,161,
1981 162,163,164,165,166,167,168,169,170,171,
1982 172,173,174,175,176,177,178,179,180,181,
1983 182,183,184,185,186,187,188,189,190,191,
1984 192,193,194,195,196,197,198,199,200,201,
1985 202,203,204,205,206,207,208,209,210,211,
1986 212,213,214,215,216,217,218,219,220,221,
1987 222,223,224,225,226,227,228,229,230,231,
1988 232,233,234,235,236,237,238,239,240,241,
1989 242,243,244,245,246,247,248,249,250,251,
1991 #ofp_table_feature_prop_write_actions{
1993 [output,group,set_queue,set_mpls_ttl,
1994 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
1995 copy_ttl_out,copy_ttl_in,push_vlan,
1996 pop_vlan,push_mpls,pop_mpls,push_pbb,
1997 pop_pbb,set_field]},
1998 #ofp_table_feature_prop_apply_actions{
2000 [output,group,set_queue,set_mpls_ttl,
2001 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2002 copy_ttl_out,copy_ttl_in,push_vlan,
2003 pop_vlan,push_mpls,pop_mpls,push_pbb,
2004 pop_pbb,set_field]},
2005 #ofp_table_feature_prop_match{
2007 [in_port,metadata,eth_dst,eth_src,eth_type,
2008 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2009 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2010 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2011 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2012 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2013 icmpv6_type,icmpv6_code,ipv6_nd_target,
2014 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2015 mpls_bos,pbb_isid]},
2016 #ofp_table_feature_prop_wildcards{
2018 [in_port,metadata,eth_dst,eth_src,eth_type,
2019 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2020 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2021 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2022 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2023 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2024 icmpv6_type,icmpv6_code,ipv6_nd_target,
2025 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2026 mpls_bos,pbb_isid]},
2027 #ofp_table_feature_prop_write_setfield{
2029 [in_port,metadata,eth_dst,eth_src,eth_type,
2030 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2031 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2032 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2033 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2034 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2035 icmpv6_type,icmpv6_code,ipv6_nd_target,
2036 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2037 mpls_bos,pbb_isid]},
2038 #ofp_table_feature_prop_apply_setfield{
2040 [in_port,metadata,eth_dst,eth_src,eth_type,
2041 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2042 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2043 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2044 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2045 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2046 icmpv6_type,icmpv6_code,ipv6_nd_target,
2047 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2048 mpls_bos,pbb_isid]}]},
2049 #ofp_table_features{
2050 table_id = 2,name = <<"Flow Table 0x02">>,
2051 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
2052 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
2054 [#ofp_table_feature_prop_instructions{
2056 [goto_table,write_metadata,write_actions,
2057 apply_actions,clear_actions,meter]},
2058 #ofp_table_feature_prop_next_tables{
2060 [3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,
2061 19,20,21,22,23,24,25,26,27,28,29,30,31,32,
2062 33,34,35,36,37,38,39,40,41,42,43,44,45,46,
2063 47,48,49,50,51,52,53,54,55,56,57,58,59,60,
2064 61,62,63,64,65,66,67,68,69,70,71,72,73,74,
2065 75,76,77,78,79,80,81,82,83,84,85,86,87,88,
2066 89,90,91,92,93,94,95,96,97,98,99,100,101,
2067 102,103,104,105,106,107,108,109,110,111,
2068 112,113,114,115,116,117,118,119,120,121,
2069 122,123,124,125,126,127,128,129,130,131,
2070 132,133,134,135,136,137,138,139,140,141,
2071 142,143,144,145,146,147,148,149,150,151,
2072 152,153,154,155,156,157,158,159,160,161,
2073 162,163,164,165,166,167,168,169,170,171,
2074 172,173,174,175,176,177,178,179,180,181,
2075 182,183,184,185,186,187,188,189,190,191,
2076 192,193,194,195,196,197,198,199,200,201,
2077 202,203,204,205,206,207,208,209,210,211,
2078 212,213,214,215,216,217,218,219,220,221,
2079 222,223,224,225,226,227,228,229,230,231,
2080 232,233,234,235,236,237,238,239,240,241,
2081 242,243,244,245,246,247,248,249,250,251,
2083 #ofp_table_feature_prop_write_actions{
2085 [output,group,set_queue,set_mpls_ttl,
2086 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2087 copy_ttl_out,copy_ttl_in,push_vlan,
2088 pop_vlan,push_mpls,pop_mpls,push_pbb,
2089 pop_pbb,set_field]},
2090 #ofp_table_feature_prop_apply_actions{
2092 [output,group,set_queue,set_mpls_ttl,
2093 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2094 copy_ttl_out,copy_ttl_in,push_vlan,
2095 pop_vlan,push_mpls,pop_mpls,push_pbb,
2096 pop_pbb,set_field]},
2097 #ofp_table_feature_prop_match{
2099 [in_port,metadata,eth_dst,eth_src,eth_type,
2100 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2101 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2102 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2103 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2104 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2105 icmpv6_type,icmpv6_code,ipv6_nd_target,
2106 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2107 mpls_bos,pbb_isid]},
2108 #ofp_table_feature_prop_wildcards{
2110 [in_port,metadata,eth_dst,eth_src,eth_type,
2111 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2112 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2113 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2114 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2115 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2116 icmpv6_type,icmpv6_code,ipv6_nd_target,
2117 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2118 mpls_bos,pbb_isid]},
2119 #ofp_table_feature_prop_write_setfield{
2121 [in_port,metadata,eth_dst,eth_src,eth_type,
2122 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2123 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2124 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2125 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2126 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2127 icmpv6_type,icmpv6_code,ipv6_nd_target,
2128 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2129 mpls_bos,pbb_isid]},
2130 #ofp_table_feature_prop_apply_setfield{
2132 [in_port,metadata,eth_dst,eth_src,eth_type,
2133 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2134 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2135 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2136 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2137 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2138 icmpv6_type,icmpv6_code,ipv6_nd_target,
2139 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2140 mpls_bos,pbb_isid]}]},
2141 #ofp_table_features{
2142 table_id = 3,name = <<"Flow Table 0x03">>,
2143 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
2144 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
2146 [#ofp_table_feature_prop_instructions{
2148 [goto_table,write_metadata,write_actions,
2149 apply_actions,clear_actions,meter]},
2150 #ofp_table_feature_prop_next_tables{
2152 [4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,
2153 20,21,22,23,24,25,26,27,28,29,30,31,32,33,
2154 34,35,36,37,38,39,40,41,42,43,44,45,46,47,
2155 48,49,50,51,52,53,54,55,56,57,58,59,60,61,
2156 62,63,64,65,66,67,68,69,70,71,72,73,74,75,
2157 76,77,78,79,80,81,82,83,84,85,86,87,88,89,
2158 90,91,92,93,94,95,96,97,98,99,100,101,102,
2159 103,104,105,106,107,108,109,110,111,112,
2160 113,114,115,116,117,118,119,120,121,122,
2161 123,124,125,126,127,128,129,130,131,132,
2162 133,134,135,136,137,138,139,140,141,142,
2163 143,144,145,146,147,148,149,150,151,152,
2164 153,154,155,156,157,158,159,160,161,162,
2165 163,164,165,166,167,168,169,170,171,172,
2166 173,174,175,176,177,178,179,180,181,182,
2167 183,184,185,186,187,188,189,190,191,192,
2168 193,194,195,196,197,198,199,200,201,202,
2169 203,204,205,206,207,208,209,210,211,212,
2170 213,214,215,216,217,218,219,220,221,222,
2171 223,224,225,226,227,228,229,230,231,232,
2172 233,234,235,236,237,238,239,240,241,242,
2173 243,244,245,246,247,248,249,250,251,252,
2175 #ofp_table_feature_prop_write_actions{
2177 [output,group,set_queue,set_mpls_ttl,
2178 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2179 copy_ttl_out,copy_ttl_in,push_vlan,
2180 pop_vlan,push_mpls,pop_mpls,push_pbb,
2181 pop_pbb,set_field]},
2182 #ofp_table_feature_prop_apply_actions{
2184 [output,group,set_queue,set_mpls_ttl,
2185 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2186 copy_ttl_out,copy_ttl_in,push_vlan,
2187 pop_vlan,push_mpls,pop_mpls,push_pbb,
2188 pop_pbb,set_field]},
2189 #ofp_table_feature_prop_match{
2191 [in_port,metadata,eth_dst,eth_src,eth_type,
2192 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2193 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2194 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2195 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2196 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2197 icmpv6_type,icmpv6_code,ipv6_nd_target,
2198 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2199 mpls_bos,pbb_isid]},
2200 #ofp_table_feature_prop_wildcards{
2202 [in_port,metadata,eth_dst,eth_src,eth_type,
2203 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2204 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2205 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2206 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2207 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2208 icmpv6_type,icmpv6_code,ipv6_nd_target,
2209 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2210 mpls_bos,pbb_isid]},
2211 #ofp_table_feature_prop_write_setfield{
2213 [in_port,metadata,eth_dst,eth_src,eth_type,
2214 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2215 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2216 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2217 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2218 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2219 icmpv6_type,icmpv6_code,ipv6_nd_target,
2220 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2221 mpls_bos,pbb_isid]},
2222 #ofp_table_feature_prop_apply_setfield{
2224 [in_port,metadata,eth_dst,eth_src,eth_type,
2225 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2226 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2227 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2228 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2229 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2230 icmpv6_type,icmpv6_code,ipv6_nd_target,
2231 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2232 mpls_bos,pbb_isid]}]},
2233 #ofp_table_features{
2234 table_id = 4,name = <<"Flow Table 0x04">>,
2235 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
2236 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
2238 [#ofp_table_feature_prop_instructions{
2240 [goto_table,write_metadata,write_actions,
2241 apply_actions,clear_actions,meter]},
2242 #ofp_table_feature_prop_next_tables{
2244 [5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
2245 21,22,23,24,25,26,27,28,29,30,31,32,33,34,
2246 35,36,37,38,39,40,41,42,43,44,45,46,47,48,
2247 49,50,51,52,53,54,55,56,57,58,59,60,61,62,
2248 63,64,65,66,67,68,69,70,71,72,73,74,75,76,
2249 77,78,79,80,81,82,83,84,85,86,87,88,89,90,
2250 91,92,93,94,95,96,97,98,99,100,101,102,103,
2251 104,105,106,107,108,109,110,111,112,113,
2252 114,115,116,117,118,119,120,121,122,123,
2253 124,125,126,127,128,129,130,131,132,133,
2254 134,135,136,137,138,139,140,141,142,143,
2255 144,145,146,147,148,149,150,151,152,153,
2256 154,155,156,157,158,159,160,161,162,163,
2257 164,165,166,167,168,169,170,171,172,173,
2258 174,175,176,177,178,179,180,181,182,183,
2259 184,185,186,187,188,189,190,191,192,193,
2260 194,195,196,197,198,199,200,201,202,203,
2261 204,205,206,207,208,209,210,211,212,213,
2262 214,215,216,217,218,219,220,221,222,223,
2263 224,225,226,227,228,229,230,231,232,233,
2264 234,235,236,237,238,239,240,241,242,243,
2265 244,245,246,247,248,249,250,251,252,253,
2267 #ofp_table_feature_prop_write_actions{
2269 [output,group,set_queue,set_mpls_ttl,
2270 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2271 copy_ttl_out,copy_ttl_in,push_vlan,
2272 pop_vlan,push_mpls,pop_mpls,push_pbb,
2273 pop_pbb,set_field]},
2274 #ofp_table_feature_prop_apply_actions{
2276 [output,group,set_queue,set_mpls_ttl,
2277 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2278 copy_ttl_out,copy_ttl_in,push_vlan,
2279 pop_vlan,push_mpls,pop_mpls,push_pbb,
2280 pop_pbb,set_field]},
2281 #ofp_table_feature_prop_match{
2283 [in_port,metadata,eth_dst,eth_src,eth_type,
2284 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2285 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2286 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2287 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2288 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2289 icmpv6_type,icmpv6_code,ipv6_nd_target,
2290 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2291 mpls_bos,pbb_isid]},
2292 #ofp_table_feature_prop_wildcards{
2294 [in_port,metadata,eth_dst,eth_src,eth_type,
2295 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2296 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2297 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2298 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2299 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2300 icmpv6_type,icmpv6_code,ipv6_nd_target,
2301 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2302 mpls_bos,pbb_isid]},
2303 #ofp_table_feature_prop_write_setfield{
2305 [in_port,metadata,eth_dst,eth_src,eth_type,
2306 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2307 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2308 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2309 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2310 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2311 icmpv6_type,icmpv6_code,ipv6_nd_target,
2312 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2313 mpls_bos,pbb_isid]},
2314 #ofp_table_feature_prop_apply_setfield{
2316 [in_port,metadata,eth_dst,eth_src,eth_type,
2317 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2318 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2319 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2320 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2321 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2322 icmpv6_type,icmpv6_code,ipv6_nd_target,
2323 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2324 mpls_bos,pbb_isid]}]},
2325 #ofp_table_features{
2326 table_id = 5,name = <<"Flow Table 0x05">>,
2327 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
2328 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
2330 [#ofp_table_feature_prop_instructions{
2332 [goto_table,write_metadata,write_actions,
2333 apply_actions,clear_actions,meter]},
2334 #ofp_table_feature_prop_next_tables{
2336 [6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
2337 21,22,23,24,25,26,27,28,29,30,31,32,33,34,
2338 35,36,37,38,39,40,41,42,43,44,45,46,47,48,
2339 49,50,51,52,53,54,55,56,57,58,59,60,61,62,
2340 63,64,65,66,67,68,69,70,71,72,73,74,75,76,
2341 77,78,79,80,81,82,83,84,85,86,87,88,89,90,
2342 91,92,93,94,95,96,97,98,99,100,101,102,103,
2343 104,105,106,107,108,109,110,111,112,113,
2344 114,115,116,117,118,119,120,121,122,123,
2345 124,125,126,127,128,129,130,131,132,133,
2346 134,135,136,137,138,139,140,141,142,143,
2347 144,145,146,147,148,149,150,151,152,153,
2348 154,155,156,157,158,159,160,161,162,163,
2349 164,165,166,167,168,169,170,171,172,173,
2350 174,175,176,177,178,179,180,181,182,183,
2351 184,185,186,187,188,189,190,191,192,193,
2352 194,195,196,197,198,199,200,201,202,203,
2353 204,205,206,207,208,209,210,211,212,213,
2354 214,215,216,217,218,219,220,221,222,223,
2355 224,225,226,227,228,229,230,231,232,233,
2356 234,235,236,237,238,239,240,241,242,243,
2357 244,245,246,247,248,249,250,251,252,253,
2359 #ofp_table_feature_prop_write_actions{
2361 [output,group,set_queue,set_mpls_ttl,
2362 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2363 copy_ttl_out,copy_ttl_in,push_vlan,
2364 pop_vlan,push_mpls,pop_mpls,push_pbb,
2365 pop_pbb,set_field]},
2366 #ofp_table_feature_prop_apply_actions{
2368 [output,group,set_queue,set_mpls_ttl,
2369 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2370 copy_ttl_out,copy_ttl_in,push_vlan,
2371 pop_vlan,push_mpls,pop_mpls,push_pbb,
2372 pop_pbb,set_field]},
2373 #ofp_table_feature_prop_match{
2375 [in_port,metadata,eth_dst,eth_src,eth_type,
2376 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2377 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2378 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2379 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2380 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2381 icmpv6_type,icmpv6_code,ipv6_nd_target,
2382 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2383 mpls_bos,pbb_isid]},
2384 #ofp_table_feature_prop_wildcards{
2386 [in_port,metadata,eth_dst,eth_src,eth_type,
2387 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2388 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2389 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2390 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2391 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2392 icmpv6_type,icmpv6_code,ipv6_nd_target,
2393 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2394 mpls_bos,pbb_isid]},
2395 #ofp_table_feature_prop_write_setfield{
2397 [in_port,metadata,eth_dst,eth_src,eth_type,
2398 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2399 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2400 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2401 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2402 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2403 icmpv6_type,icmpv6_code,ipv6_nd_target,
2404 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2405 mpls_bos,pbb_isid]},
2406 #ofp_table_feature_prop_apply_setfield{
2408 [in_port,metadata,eth_dst,eth_src,eth_type,
2409 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2410 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2411 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2412 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2413 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2414 icmpv6_type,icmpv6_code,ipv6_nd_target,
2415 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2416 mpls_bos,pbb_isid]}]},
2417 #ofp_table_features{
2418 table_id = 6,name = <<"Flow Table 0x06">>,
2419 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
2420 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
2422 [#ofp_table_feature_prop_instructions{
2424 [goto_table,write_metadata,write_actions,
2425 apply_actions,clear_actions,meter]},
2426 #ofp_table_feature_prop_next_tables{
2428 [7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,
2429 22,23,24,25,26,27,28,29,30,31,32,33,34,35,
2430 36,37,38,39,40,41,42,43,44,45,46,47,48,49,
2431 50,51,52,53,54,55,56,57,58,59,60,61,62,63,
2432 64,65,66,67,68,69,70,71,72,73,74,75,76,77,
2433 78,79,80,81,82,83,84,85,86,87,88,89,90,91,
2434 92,93,94,95,96,97,98,99,100,101,102,103,
2435 104,105,106,107,108,109,110,111,112,113,
2436 114,115,116,117,118,119,120,121,122,123,
2437 124,125,126,127,128,129,130,131,132,133,
2438 134,135,136,137,138,139,140,141,142,143,
2439 144,145,146,147,148,149,150,151,152,153,
2440 154,155,156,157,158,159,160,161,162,163,
2441 164,165,166,167,168,169,170,171,172,173,
2442 174,175,176,177,178,179,180,181,182,183,
2443 184,185,186,187,188,189,190,191,192,193,
2444 194,195,196,197,198,199,200,201,202,203,
2445 204,205,206,207,208,209,210,211,212,213,
2446 214,215,216,217,218,219,220,221,222,223,
2447 224,225,226,227,228,229,230,231,232,233,
2448 234,235,236,237,238,239,240,241,242,243,
2449 244,245,246,247,248,249,250,251,252,253,
2451 #ofp_table_feature_prop_write_actions{
2453 [output,group,set_queue,set_mpls_ttl,
2454 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2455 copy_ttl_out,copy_ttl_in,push_vlan,
2456 pop_vlan,push_mpls,pop_mpls,push_pbb,
2457 pop_pbb,set_field]},
2458 #ofp_table_feature_prop_apply_actions{
2460 [output,group,set_queue,set_mpls_ttl,
2461 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2462 copy_ttl_out,copy_ttl_in,push_vlan,
2463 pop_vlan,push_mpls,pop_mpls,push_pbb,
2464 pop_pbb,set_field]},
2465 #ofp_table_feature_prop_match{
2467 [in_port,metadata,eth_dst,eth_src,eth_type,
2468 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2469 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2470 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2471 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2472 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2473 icmpv6_type,icmpv6_code,ipv6_nd_target,
2474 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2475 mpls_bos,pbb_isid]},
2476 #ofp_table_feature_prop_wildcards{
2478 [in_port,metadata,eth_dst,eth_src,eth_type,
2479 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2480 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2481 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2482 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2483 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2484 icmpv6_type,icmpv6_code,ipv6_nd_target,
2485 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2486 mpls_bos,pbb_isid]},
2487 #ofp_table_feature_prop_write_setfield{
2489 [in_port,metadata,eth_dst,eth_src,eth_type,
2490 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2491 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2492 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2493 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2494 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2495 icmpv6_type,icmpv6_code,ipv6_nd_target,
2496 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2497 mpls_bos,pbb_isid]},
2498 #ofp_table_feature_prop_apply_setfield{
2500 [in_port,metadata,eth_dst,eth_src,eth_type,
2501 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2502 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2503 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2504 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2505 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2506 icmpv6_type,icmpv6_code,ipv6_nd_target,
2507 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2508 mpls_bos,pbb_isid]}]},
2509 #ofp_table_features{
2510 table_id = 7,name = <<"Flow Table 0x07">>,
2511 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
2512 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
2514 [#ofp_table_feature_prop_instructions{
2516 [goto_table,write_metadata,write_actions,
2517 apply_actions,clear_actions,meter]},
2518 #ofp_table_feature_prop_next_tables{
2520 [8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,
2521 23,24,25,26,27,28,29,30,31,32,33,34,35,36,
2522 37,38,39,40,41,42,43,44,45,46,47,48,49,50,
2523 51,52,53,54,55,56,57,58,59,60,61,62,63,64,
2524 65,66,67,68,69,70,71,72,73,74,75,76,77,78,
2525 79,80,81,82,83,84,85,86,87,88,89,90,91,92,
2526 93,94,95,96,97,98,99,100,101,102,103,104,
2527 105,106,107,108,109,110,111,112,113,114,
2528 115,116,117,118,119,120,121,122,123,124,
2529 125,126,127,128,129,130,131,132,133,134,
2530 135,136,137,138,139,140,141,142,143,144,
2531 145,146,147,148,149,150,151,152,153,154,
2532 155,156,157,158,159,160,161,162,163,164,
2533 165,166,167,168,169,170,171,172,173,174,
2534 175,176,177,178,179,180,181,182,183,184,
2535 185,186,187,188,189,190,191,192,193,194,
2536 195,196,197,198,199,200,201,202,203,204,
2537 205,206,207,208,209,210,211,212,213,214,
2538 215,216,217,218,219,220,221,222,223,224,
2539 225,226,227,228,229,230,231,232,233,234,
2540 235,236,237,238,239,240,241,242,243,244,
2541 245,246,247,248,249,250,251,252,253,254]},
2542 #ofp_table_feature_prop_write_actions{
2544 [output,group,set_queue,set_mpls_ttl,
2545 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2546 copy_ttl_out,copy_ttl_in,push_vlan,
2547 pop_vlan,push_mpls,pop_mpls,push_pbb,
2548 pop_pbb,set_field]},
2549 #ofp_table_feature_prop_apply_actions{
2551 [output,group,set_queue,set_mpls_ttl,
2552 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2553 copy_ttl_out,copy_ttl_in,push_vlan,
2554 pop_vlan,push_mpls,pop_mpls,push_pbb,
2555 pop_pbb,set_field]},
2556 #ofp_table_feature_prop_match{
2558 [in_port,metadata,eth_dst,eth_src,eth_type,
2559 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2560 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2561 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2562 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2563 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2564 icmpv6_type,icmpv6_code,ipv6_nd_target,
2565 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2566 mpls_bos,pbb_isid]},
2567 #ofp_table_feature_prop_wildcards{
2569 [in_port,metadata,eth_dst,eth_src,eth_type,
2570 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2571 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2572 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2573 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2574 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2575 icmpv6_type,icmpv6_code,ipv6_nd_target,
2576 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2577 mpls_bos,pbb_isid]},
2578 #ofp_table_feature_prop_write_setfield{
2580 [in_port,metadata,eth_dst,eth_src,eth_type,
2581 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2582 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2583 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2584 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2585 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2586 icmpv6_type,icmpv6_code,ipv6_nd_target,
2587 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2588 mpls_bos,pbb_isid]},
2589 #ofp_table_feature_prop_apply_setfield{
2591 [in_port,metadata,eth_dst,eth_src,eth_type,
2592 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2593 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2594 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2595 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2596 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2597 icmpv6_type,icmpv6_code,ipv6_nd_target,
2598 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2599 mpls_bos,pbb_isid]}]},
2600 #ofp_table_features{
2601 table_id = 8,name = <<"Flow Table 0x08">>,
2602 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
2603 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
2605 [#ofp_table_feature_prop_instructions{
2607 [goto_table,write_metadata,write_actions,
2608 apply_actions,clear_actions,meter]},
2609 #ofp_table_feature_prop_next_tables{
2611 [9,10,11,12,13,14,15,16,17,18,19,20,21,22,
2612 23,24,25,26,27,28,29,30,31,32,33,34,35,36,
2613 37,38,39,40,41,42,43,44,45,46,47,48,49,50,
2614 51,52,53,54,55,56,57,58,59,60,61,62,63,64,
2615 65,66,67,68,69,70,71,72,73,74,75,76,77,78,
2616 79,80,81,82,83,84,85,86,87,88,89,90,91,92,
2617 93,94,95,96,97,98,99,100,101,102,103,104,
2618 105,106,107,108,109,110,111,112,113,114,
2619 115,116,117,118,119,120,121,122,123,124,
2620 125,126,127,128,129,130,131,132,133,134,
2621 135,136,137,138,139,140,141,142,143,144,
2622 145,146,147,148,149,150,151,152,153,154,
2623 155,156,157,158,159,160,161,162,163,164,
2624 165,166,167,168,169,170,171,172,173,174,
2625 175,176,177,178,179,180,181,182,183,184,
2626 185,186,187,188,189,190,191,192,193,194,
2627 195,196,197,198,199,200,201,202,203,204,
2628 205,206,207,208,209,210,211,212,213,214,
2629 215,216,217,218,219,220,221,222,223,224,
2630 225,226,227,228,229,230,231,232,233,234,
2631 235,236,237,238,239,240,241,242,243,244,
2632 245,246,247,248,249,250,251,252,253,254]},
2633 #ofp_table_feature_prop_write_actions{
2635 [output,group,set_queue,set_mpls_ttl,
2636 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2637 copy_ttl_out,copy_ttl_in,push_vlan,
2638 pop_vlan,push_mpls,pop_mpls,push_pbb,
2639 pop_pbb,set_field]},
2640 #ofp_table_feature_prop_apply_actions{
2642 [output,group,set_queue,set_mpls_ttl,
2643 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2644 copy_ttl_out,copy_ttl_in,push_vlan,
2645 pop_vlan,push_mpls,pop_mpls,push_pbb,
2646 pop_pbb,set_field]},
2647 #ofp_table_feature_prop_match{
2649 [in_port,metadata,eth_dst,eth_src,eth_type,
2650 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2651 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2652 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2653 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2654 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2655 icmpv6_type,icmpv6_code,ipv6_nd_target,
2656 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2657 mpls_bos,pbb_isid]},
2658 #ofp_table_feature_prop_wildcards{
2660 [in_port,metadata,eth_dst,eth_src,eth_type,
2661 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2662 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2663 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2664 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2665 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2666 icmpv6_type,icmpv6_code,ipv6_nd_target,
2667 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2668 mpls_bos,pbb_isid]},
2669 #ofp_table_feature_prop_write_setfield{
2671 [in_port,metadata,eth_dst,eth_src,eth_type,
2672 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2673 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2674 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2675 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2676 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2677 icmpv6_type,icmpv6_code,ipv6_nd_target,
2678 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2679 mpls_bos,pbb_isid]},
2680 #ofp_table_feature_prop_apply_setfield{
2682 [in_port,metadata,eth_dst,eth_src,eth_type,
2683 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2684 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2685 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2686 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2687 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2688 icmpv6_type,icmpv6_code,ipv6_nd_target,
2689 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2690 mpls_bos,pbb_isid]}]},
2691 #ofp_table_features{
2692 table_id = 9,name = <<"Flow Table 0x09">>,
2693 metadata_match = <<"\377\377\377\377\377\377\377\377">>,
2694 metadata_write = <<"\377\377\377\377\377\377\377\377">>,max_entries = 16777216,
2696 [#ofp_table_feature_prop_instructions{
2698 [goto_table,write_metadata,write_actions,
2699 apply_actions,clear_actions,meter]},
2700 #ofp_table_feature_prop_next_tables{
2702 [10,11,12,13,14,15,16,17,18,19,20,21,22,23,
2703 24,25,26,27,28,29,30,31,32,33,34,35,36,37,
2704 38,39,40,41,42,43,44,45,46,47,48,49,50,51,
2705 52,53,54,55,56,57,58,59,60,61,62,63,64,65,
2706 66,67,68,69,70,71,72,73,74,75,76,77,78,79,
2707 80,81,82,83,84,85,86,87,88,89,90,91,92,93,
2708 94,95,96,97,98,99,100,101,102,103,104,105,
2709 106,107,108,109,110,111,112,113,114,115,
2710 116,117,118,119,120,121,122,123,124,125,
2711 126,127,128,129,130,131,132,133,134,135,
2712 136,137,138,139,140,141,142,143,144,145,
2713 146,147,148,149,150,151,152,153,154,155,
2714 156,157,158,159,160,161,162,163,164,165,
2715 166,167,168,169,170,171,172,173,174,175,
2716 176,177,178,179,180,181,182,183,184,185,
2717 186,187,188,189,190,191,192,193,194,195,
2718 196,197,198,199,200,201,202,203,204,205,
2719 206,207,208,209,210,211,212,213,214,215,
2720 216,217,218,219,220,221,222,223,224,225,
2721 226,227,228,229,230,231,232,233,234,235,
2722 236,237,238,239,240,241,242,243,244,245,
2723 246,247,248,249,250,251,252,253,254]},
2724 #ofp_table_feature_prop_write_actions{
2726 [output,group,set_queue,set_mpls_ttl,
2727 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2728 copy_ttl_out,copy_ttl_in,push_vlan,
2729 pop_vlan,push_mpls,pop_mpls,push_pbb,
2730 pop_pbb,set_field]},
2731 #ofp_table_feature_prop_apply_actions{
2733 [output,group,set_queue,set_mpls_ttl,
2734 dec_mpls_ttl,set_nw_ttl,dec_nw_ttl,
2735 copy_ttl_out,copy_ttl_in,push_vlan,
2736 pop_vlan,push_mpls,pop_mpls,push_pbb,
2737 pop_pbb,set_field]},
2738 #ofp_table_feature_prop_match{
2740 [in_port,metadata,eth_dst,eth_src,eth_type,
2741 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2742 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2743 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2744 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2745 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2746 icmpv6_type,icmpv6_code,ipv6_nd_target,
2747 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2748 mpls_bos,pbb_isid]},
2749 #ofp_table_feature_prop_wildcards{
2751 [in_port,metadata,eth_dst,eth_src,eth_type,
2752 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2753 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2754 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2755 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2756 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2757 icmpv6_type,icmpv6_code,ipv6_nd_target,
2758 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2759 mpls_bos,pbb_isid]},
2760 #ofp_table_feature_prop_write_setfield{
2762 [in_port,metadata,eth_dst,eth_src,eth_type,
2763 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2764 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2765 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2766 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2767 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2768 icmpv6_type,icmpv6_code,ipv6_nd_target,
2769 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2770 mpls_bos,pbb_isid]},
2771 #ofp_table_feature_prop_apply_setfield{
2773 [in_port,metadata,eth_dst,eth_src,eth_type,
2774 vlan_vid,vlan_pcp,ip_dscp,ip_ecn,ip_proto,
2775 ipv4_src,ipv4_dst,tcp_src,tcp_dst,udp_src,
2776 udp_dst,sctp_src,sctp_dst,icmpv4_type,
2777 icmpv4_code,arp_op,arp_spa,arp_tpa,arp_sha,
2778 arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
2779 icmpv6_type,icmpv6_code,ipv6_nd_target,
2780 ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
2781 mpls_bos,pbb_isid]}]}]},
2782 #ofp_group_stats_request{flags = [],group_id = all},
2783 #ofp_group_stats_reply{
2787 group_id = 1,ref_count = 2,packet_count = 123,
2788 byte_count = 12345,duration_sec = 9,
2789 duration_nsec = 609036000,
2791 [#ofp_bucket_counter{
2792 packet_count = 234,byte_count = 2345}]}]},
2794 buffer_id = 16#f0000000,reason = table_miss,table_id = 200,
2795 cookie = <<0,1,2,3,0,0,0,0>>,
2796 match = #ofp_match{fields = AllFields},
2799 cookie = <<0,0,0,0,0,0,0,0>>,
2800 cookie_mask = <<0,0,0,0,0,0,0,0>>,
2801 table_id = 1,command = add,idle_timeout = 0,
2802 hard_timeout = 0,priority = 123,buffer_id = 65535,
2803 out_port = any,out_group = any,flags = [],
2804 match = #ofp_match{fields = AllFields},
2806 #ofp_experimenter_request{
2807 experimenter = 16#deadbeaf,
2808 exp_type = 16#cafe8888,
2809 data = <<"hogehoge">>
2811 #ofp_experimenter_reply{
2812 experimenter = 16#deadbeaf,
2813 exp_type = 16#cafe7777,
2814 data = <<"testdata99999999">>
2816 #ofp_table_desc_request{flags = []},
2817 #ofp_table_desc_reply{flags = [],
2823 [ #ofp_table_mod_prop_experimenter{
2831 [#ofp_table_mod_prop_eviction{flags = []},
2832 #ofp_table_mod_prop_vacancy{
2836 #ofp_table_mod_prop_experimenter{
2840 #ofp_table_mod_prop_experimenter{
2844 #ofp_table_mod_prop_experimenter{
2847 data = <<1:32,2:32>>}]}]},
2848 #ofp_queue_desc_request{
2851 #ofp_queue_desc_reply{
2856 [#ofp_queue_desc_prop_experimenter{
2864 [#ofp_queue_desc_prop_min_rate{rate = 300},
2865 #ofp_queue_desc_prop_max_rate{rate = 900},
2866 #ofp_queue_desc_prop_experimenter{
2870 #ofp_queue_desc_prop_experimenter{
2874 #ofp_queue_desc_prop_experimenter{
2877 data = <<1:32,2:32>>}],
2881 reason = master_request,
2884 [#ofp_role_prop_experimenter{
2888 #ofp_role_prop_experimenter{
2892 #ofp_role_prop_experimenter{
2895 data = <<1:32,2:32>>}]},
2896 #ofp_flow_monitor_request{
2898 monitor_id = 100000000,
2901 monitor_flags = [initial, add, removed, modify],
2908 class = openflow_basic,name = eth_dst,
2910 value = <<"\362\v\244}\370\352">>,
2911 mask = undefined}]}},
2912 #ofp_flow_monitor_reply{
2915 [#ofp_flow_update_full{
2918 reason = idle_timeout,
2922 cookie = <<0,0,0,0,0,0,0,0>>,
2927 class = openflow_basic,
2931 mask = undefined}]},
2933 [#ofp_instruction_apply_actions{
2935 [#ofp_action_output{
2938 #ofp_flow_update_abbrev{event = abbrev,xid=1234},
2939 #ofp_flow_update_paused{event = paused}]},
2941 reason = vacancy_down,
2947 [#ofp_table_mod_prop_eviction{flags = []},
2948 #ofp_table_mod_prop_vacancy{
2952 #ofp_table_mod_prop_experimenter{
2956 #ofp_table_mod_prop_experimenter{
2960 #ofp_table_mod_prop_experimenter{
2963 data = <<1:32,2:32>>}]}},
2964 #ofp_bundle_ctrl_msg{
2966 type = open_request,
2969 [#ofp_bundle_prop_experimenter{
2973 #ofp_bundle_prop_experimenter{
2977 #ofp_bundle_prop_experimenter{
2980 data = <<1:32,2:32>>}]},
2981 #ofp_bundle_add_msg{
2987 type = echo_request,
2989 body = #ofp_echo_request{}},
2991 [#ofp_bundle_prop_experimenter{
2995 #ofp_bundle_prop_experimenter{
2999 #ofp_bundle_prop_experimenter{
3002 data = <<1:32,2:32>>}]},
3003 #ofp_requestforward{
3020 [#ofp_action_output{
3022 max_len = no_buffer}]}]}}}
3024 lists:foldl(fun x:do/2, {5, 0}, List).