# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: openflow_13.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor.FileDescriptor(
  name='openflow_13.proto',
  package='openflow_13',
  syntax='proto3',
  serialized_pb=_b('\n\x11openflow_13.proto\x12\x0bopenflow_13\"O\n\nofp_header\x12\x0f\n\x07version\x18\x01 \x01(\r\x12#\n\x04type\x18\x02 \x01(\x0e\x32\x15.openflow_13.ofp_type\x12\x0b\n\x03xid\x18\x03 \x01(\r\"\x96\x01\n\x15ofp_hello_elem_header\x12.\n\x04type\x18\x01 \x01(\x0e\x32 .openflow_13.ofp_hello_elem_type\x12\x42\n\rversionbitmap\x18\x02 \x01(\x0b\x32).openflow_13.ofp_hello_elem_versionbitmapH\x00\x42\t\n\x07\x65lement\"/\n\x1cofp_hello_elem_versionbitmap\x12\x0f\n\x07\x62itmaps\x18\x02 \x03(\r\"A\n\tofp_hello\x12\x34\n\x08\x65lements\x18\x02 \x03(\x0b\x32\".openflow_13.ofp_hello_elem_header\"9\n\x11ofp_switch_config\x12\r\n\x05\x66lags\x18\x02 \x01(\r\x12\x15\n\rmiss_send_len\x18\x03 \x01(\r\"1\n\rofp_table_mod\x12\x10\n\x08table_id\x18\x02 \x01(\r\x12\x0e\n\x06\x63onfig\x18\x03 \x01(\r\"\xc3\x01\n\x08ofp_port\x12\x0f\n\x07port_no\x18\x01 \x01(\r\x12\x0f\n\x07hw_addr\x18\x02 \x03(\r\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x0e\n\x06\x63onfig\x18\x04 \x01(\r\x12\r\n\x05state\x18\x05 \x01(\r\x12\x0c\n\x04\x63urr\x18\x06 \x01(\r\x12\x12\n\nadvertised\x18\x07 \x01(\r\x12\x11\n\tsupported\x18\x08 \x01(\r\x12\x0c\n\x04peer\x18\t \x01(\r\x12\x12\n\ncurr_speed\x18\n \x01(\r\x12\x11\n\tmax_speed\x18\x0b \x01(\r\"{\n\x13ofp_switch_features\x12\x13\n\x0b\x64\x61tapath_id\x18\x02 \x01(\x04\x12\x11\n\tn_buffers\x18\x03 \x01(\r\x12\x10\n\x08n_tables\x18\x04 \x01(\r\x12\x14\n\x0c\x61uxiliary_id\x18\x05 \x01(\r\x12\x14\n\x0c\x63\x61pabilities\x18\x06 \x01(\r\"d\n\x0fofp_port_status\x12,\n\x06reason\x18\x02 \x01(\x0e\x32\x1c.openflow_13.ofp_port_reason\x12#\n\x04\x64\x65sc\x18\x03 \x01(\x0b\x32\x15.openflow_13.ofp_port\"a\n\x0cofp_port_mod\x12\x0f\n\x07port_no\x18\x02 \x01(\r\x12\x0f\n\x07hw_addr\x18\x03 \x03(\r\x12\x0e\n\x06\x63onfig\x18\x04 \x01(\r\x12\x0c\n\x04mask\x18\x05 \x01(\r\x12\x11\n\tadvertise\x18\x06 \x01(\r\"f\n\tofp_match\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openflow_13.ofp_match_type\x12.\n\noxm_fields\x18\x02 \x03(\x0b\x32\x1a.openflow_13.ofp_oxm_field\"\xc3\x01\n\rofp_oxm_field\x12-\n\toxm_class\x18\x01 \x01(\x0e\x32\x1a.openflow_13.ofp_oxm_class\x12\x33\n\tofb_field\x18\x04 \x01(\x0b\x32\x1e.openflow_13.ofp_oxm_ofb_fieldH\x00\x12\x45\n\x12\x65xperimenter_field\x18\x05 \x01(\x0b\x32\'.openflow_13.ofp_oxm_experimenter_fieldH\x00\x42\x07\n\x05\x66ield\"\x8b\n\n\x11ofp_oxm_ofb_field\x12.\n\x04type\x18\x01 \x01(\x0e\x32 .openflow_13.oxm_ofb_field_types\x12\x10\n\x08has_mask\x18\x02 \x01(\x08\x12\x0e\n\x04port\x18\x03 \x01(\rH\x00\x12\x17\n\rphysical_port\x18\x04 \x01(\rH\x00\x12\x18\n\x0etable_metadata\x18\x05 \x01(\x04H\x00\x12\x11\n\x07\x65th_dst\x18\x06 \x01(\x0cH\x00\x12\x11\n\x07\x65th_src\x18\x07 \x01(\x0cH\x00\x12\x12\n\x08\x65th_type\x18\x08 \x01(\rH\x00\x12\x12\n\x08vlan_vid\x18\t \x01(\rH\x00\x12\x12\n\x08vlan_pcp\x18\n \x01(\rH\x00\x12\x11\n\x07ip_dscp\x18\x0b \x01(\rH\x00\x12\x10\n\x06ip_ecn\x18\x0c \x01(\rH\x00\x12\x12\n\x08ip_proto\x18\r \x01(\rH\x00\x12\x12\n\x08ipv4_src\x18\x0e \x01(\rH\x00\x12\x12\n\x08ipv4_dst\x18\x0f \x01(\rH\x00\x12\x11\n\x07tcp_src\x18\x10 \x01(\rH\x00\x12\x11\n\x07tcp_dst\x18\x11 \x01(\rH\x00\x12\x11\n\x07udp_src\x18\x12 \x01(\rH\x00\x12\x11\n\x07udp_dst\x18\x13 \x01(\rH\x00\x12\x12\n\x08sctp_src\x18\x14 \x01(\rH\x00\x12\x12\n\x08sctp_dst\x18\x15 \x01(\rH\x00\x12\x15\n\x0bicmpv4_type\x18\x16 \x01(\rH\x00\x12\x15\n\x0bicmpv4_code\x18\x17 \x01(\rH\x00\x12\x10\n\x06\x61rp_op\x18\x18 \x01(\rH\x00\x12\x11\n\x07\x61rp_spa\x18\x19 \x01(\rH\x00\x12\x11\n\x07\x61rp_tpa\x18\x1a \x01(\rH\x00\x12\x11\n\x07\x61rp_sha\x18\x1b \x01(\x0cH\x00\x12\x11\n\x07\x61rp_tha\x18\x1c \x01(\x0cH\x00\x12\x12\n\x08ipv6_src\x18\x1d \x01(\x0cH\x00\x12\x12\n\x08ipv6_dst\x18\x1e \x01(\x0cH\x00\x12\x15\n\x0bipv6_flabel\x18\x1f \x01(\rH\x00\x12\x15\n\x0bicmpv6_type\x18  \x01(\rH\x00\x12\x15\n\x0bicmpv6_code\x18! \x01(\rH\x00\x12\x18\n\x0eipv6_nd_target\x18\" \x01(\x0cH\x00\x12\x15\n\x0bipv6_nd_ssl\x18# \x01(\x0cH\x00\x12\x15\n\x0bipv6_nd_tll\x18$ \x01(\x0cH\x00\x12\x14\n\nmpls_label\x18% \x01(\rH\x00\x12\x11\n\x07mpls_tc\x18& \x01(\rH\x00\x12\x12\n\x08mpls_bos\x18\' \x01(\rH\x00\x12\x12\n\x08pbb_isid\x18( \x01(\rH\x00\x12\x13\n\ttunnel_id\x18) \x01(\x04H\x00\x12\x15\n\x0bipv6_exthdr\x18* \x01(\rH\x00\x12\x1d\n\x13table_metadata_mask\x18i \x01(\x04H\x01\x12\x16\n\x0c\x65th_dst_mask\x18j \x01(\x0cH\x01\x12\x16\n\x0c\x65th_src_mask\x18k \x01(\x0cH\x01\x12\x17\n\rvlan_vid_mask\x18m \x01(\rH\x01\x12\x17\n\ripv4_src_mask\x18r \x01(\rH\x01\x12\x17\n\ripv4_dst_mask\x18s \x01(\rH\x01\x12\x16\n\x0c\x61rp_spa_mask\x18} \x01(\rH\x01\x12\x16\n\x0c\x61rp_tpa_mask\x18~ \x01(\rH\x01\x12\x18\n\ripv6_src_mask\x18\x81\x01 \x01(\x0cH\x01\x12\x18\n\ripv6_dst_mask\x18\x82\x01 \x01(\x0cH\x01\x12\x1b\n\x10ipv6_flabel_mask\x18\x83\x01 \x01(\rH\x01\x12\x18\n\rpbb_isid_mask\x18\x8c\x01 \x01(\rH\x01\x12\x19\n\x0etunnel_id_mask\x18\x8d\x01 \x01(\x04H\x01\x12\x1b\n\x10ipv6_exthdr_mask\x18\x8e\x01 \x01(\rH\x01\x42\x07\n\x05valueB\x06\n\x04mask\"F\n\x1aofp_oxm_experimenter_field\x12\x12\n\noxm_header\x18\x01 \x01(\r\x12\x14\n\x0c\x65xperimenter\x18\x02 \x01(\r\"\xe6\x03\n\nofp_action\x12*\n\x04type\x18\x01 \x01(\x0e\x32\x1c.openflow_13.ofp_action_type\x12\x30\n\x06output\x18\x02 \x01(\x0b\x32\x1e.openflow_13.ofp_action_outputH\x00\x12\x34\n\x08mpls_ttl\x18\x03 \x01(\x0b\x32 .openflow_13.ofp_action_mpls_ttlH\x00\x12,\n\x04push\x18\x04 \x01(\x0b\x32\x1c.openflow_13.ofp_action_pushH\x00\x12\x34\n\x08pop_mpls\x18\x05 \x01(\x0b\x32 .openflow_13.ofp_action_pop_mplsH\x00\x12.\n\x05group\x18\x06 \x01(\x0b\x32\x1d.openflow_13.ofp_action_groupH\x00\x12\x30\n\x06nw_ttl\x18\x07 \x01(\x0b\x32\x1e.openflow_13.ofp_action_nw_ttlH\x00\x12\x36\n\tset_field\x18\x08 \x01(\x0b\x32!.openflow_13.ofp_action_set_fieldH\x00\x12<\n\x0c\x65xperimenter\x18\t \x01(\x0b\x32$.openflow_13.ofp_action_experimenterH\x00\x42\x08\n\x06\x61\x63tion\"2\n\x11ofp_action_output\x12\x0c\n\x04port\x18\x01 \x01(\r\x12\x0f\n\x07max_len\x18\x02 \x01(\r\"\'\n\x13ofp_action_mpls_ttl\x12\x10\n\x08mpls_ttl\x18\x01 \x01(\r\"$\n\x0fofp_action_push\x12\x11\n\tethertype\x18\x01 \x01(\r\"(\n\x13ofp_action_pop_mpls\x12\x11\n\tethertype\x18\x01 \x01(\r\"$\n\x10ofp_action_group\x12\x10\n\x08group_id\x18\x01 \x01(\r\"#\n\x11ofp_action_nw_ttl\x12\x0e\n\x06nw_ttl\x18\x01 \x01(\r\"A\n\x14ofp_action_set_field\x12)\n\x05\x66ield\x18\x01 \x01(\x0b\x32\x1a.openflow_13.ofp_oxm_field\"=\n\x17ofp_action_experimenter\x12\x14\n\x0c\x65xperimenter\x18\x01 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"\xde\x02\n\x0fofp_instruction\x12\x0c\n\x04type\x18\x01 \x01(\r\x12=\n\ngoto_table\x18\x02 \x01(\x0b\x32\'.openflow_13.ofp_instruction_goto_tableH\x00\x12\x45\n\x0ewrite_metadata\x18\x03 \x01(\x0b\x32+.openflow_13.ofp_instruction_write_metadataH\x00\x12\x37\n\x07\x61\x63tions\x18\x04 \x01(\x0b\x32$.openflow_13.ofp_instruction_actionsH\x00\x12\x33\n\x05meter\x18\x05 \x01(\x0b\x32\".openflow_13.ofp_instruction_meterH\x00\x12\x41\n\x0c\x65xperimenter\x18\x06 \x01(\x0b\x32).openflow_13.ofp_instruction_experimenterH\x00\x42\x06\n\x04\x64\x61ta\".\n\x1aofp_instruction_goto_table\x12\x10\n\x08table_id\x18\x01 \x01(\r\"I\n\x1eofp_instruction_write_metadata\x12\x10\n\x08metadata\x18\x01 \x01(\x04\x12\x15\n\rmetadata_mask\x18\x02 \x01(\x04\"C\n\x17ofp_instruction_actions\x12(\n\x07\x61\x63tions\x18\x01 \x03(\x0b\x32\x17.openflow_13.ofp_action\")\n\x15ofp_instruction_meter\x12\x10\n\x08meter_id\x18\x01 \x01(\r\"B\n\x1cofp_instruction_experimenter\x12\x14\n\x0c\x65xperimenter\x18\x01 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"\xd9\x02\n\x0cofp_flow_mod\x12\x0e\n\x06\x63ookie\x18\x02 \x01(\x04\x12\x13\n\x0b\x63ookie_mask\x18\x03 \x01(\x04\x12\x10\n\x08table_id\x18\x04 \x01(\r\x12\x32\n\x07\x63ommand\x18\x05 \x01(\x0e\x32!.openflow_13.ofp_flow_mod_command\x12\x14\n\x0cidle_timeout\x18\x06 \x01(\r\x12\x14\n\x0chard_timeout\x18\x07 \x01(\r\x12\x10\n\x08priority\x18\x08 \x01(\r\x12\x11\n\tbuffer_id\x18\t \x01(\r\x12\x10\n\x08out_port\x18\n \x01(\r\x12\x11\n\tout_group\x18\x0b \x01(\r\x12\r\n\x05\x66lags\x18\x0c \x01(\r\x12%\n\x05match\x18\r \x01(\x0b\x32\x16.openflow_13.ofp_match\x12\x32\n\x0cinstructions\x18\x0e \x03(\x0b\x32\x1c.openflow_13.ofp_instruction\"o\n\nofp_bucket\x12\x0e\n\x06weight\x18\x01 \x01(\r\x12\x12\n\nwatch_port\x18\x02 \x01(\r\x12\x13\n\x0bwatch_group\x18\x03 \x01(\r\x12(\n\x07\x61\x63tions\x18\x04 \x03(\x0b\x32\x17.openflow_13.ofp_action\"\xab\x01\n\rofp_group_mod\x12\x33\n\x07\x63ommand\x18\x02 \x01(\x0e\x32\".openflow_13.ofp_group_mod_command\x12)\n\x04type\x18\x03 \x01(\x0e\x32\x1b.openflow_13.ofp_group_type\x12\x10\n\x08group_id\x18\x04 \x01(\r\x12(\n\x07\x62uckets\x18\x05 \x03(\x0b\x32\x17.openflow_13.ofp_bucket\"\x81\x01\n\x0eofp_packet_out\x12\x11\n\tbuffer_id\x18\x02 \x01(\r\x12\x0f\n\x07in_port\x18\x03 \x01(\r\x12\x13\n\x0b\x61\x63tions_len\x18\x04 \x01(\r\x12(\n\x07\x61\x63tions\x18\x05 \x03(\x0b\x32\x17.openflow_13.ofp_action\x12\x0c\n\x04\x64\x61ta\x18\x06 \x01(\x0c\"\xbf\x01\n\rofp_packet_in\x12\x11\n\tbuffer_id\x18\x02 \x01(\r\x12\x11\n\ttotal_len\x18\x03 \x01(\r\x12\x31\n\x06reason\x18\x04 \x01(\x0e\x32!.openflow_13.ofp_packet_in_reason\x12\x10\n\x08table_id\x18\x05 \x01(\r\x12\x0e\n\x06\x63ookie\x18\x06 \x01(\x04\x12%\n\x05match\x18\x07 \x01(\x0b\x32\x16.openflow_13.ofp_match\x12\x0c\n\x04\x64\x61ta\x18\x08 \x01(\x0c\"\xa6\x02\n\x10ofp_flow_removed\x12\x0e\n\x06\x63ookie\x18\x02 \x01(\x04\x12\x10\n\x08priority\x18\x03 \x01(\r\x12\x34\n\x06reason\x18\x04 \x01(\x0e\x32$.openflow_13.ofp_flow_removed_reason\x12\x10\n\x08table_id\x18\x05 \x01(\r\x12\x14\n\x0c\x64uration_sec\x18\x06 \x01(\r\x12\x15\n\rduration_nsec\x18\x07 \x01(\r\x12\x14\n\x0cidle_timeout\x18\x08 \x01(\r\x12\x14\n\x0chard_timeout\x18\t \x01(\r\x12\x14\n\x0cpacket_count\x18\n \x01(\x04\x12\x12\n\nbyte_count\x18\x0b \x01(\x04\x12%\n\x05match\x18\x0c \x01(\x0b\x32\x16.openflow_13.ofp_match\"v\n\x15ofp_meter_band_header\x12.\n\x04type\x18\x01 \x01(\x0e\x32 .openflow_13.ofp_meter_band_type\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x0c\n\x04rate\x18\x03 \x01(\r\x12\x12\n\nburst_size\x18\x04 \x01(\r\"R\n\x13ofp_meter_band_drop\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x0c\n\x04rate\x18\x03 \x01(\r\x12\x12\n\nburst_size\x18\x04 \x01(\r\"m\n\x1aofp_meter_band_dscp_remark\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x0c\n\x04rate\x18\x03 \x01(\r\x12\x12\n\nburst_size\x18\x04 \x01(\r\x12\x12\n\nprec_level\x18\x05 \x01(\r\"\x92\x01\n\x1bofp_meter_band_experimenter\x12.\n\x04type\x18\x01 \x01(\x0e\x32 .openflow_13.ofp_meter_band_type\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x0c\n\x04rate\x18\x03 \x01(\r\x12\x12\n\nburst_size\x18\x04 \x01(\r\x12\x14\n\x0c\x65xperimenter\x18\x05 \x01(\r\"\xc1\x01\n\rofp_meter_mod\x12\'\n\x06header\x18\x01 \x01(\x0b\x32\x17.openflow_13.ofp_header\x12\x33\n\x07\x63ommand\x18\x02 \x01(\x0e\x32\".openflow_13.ofp_meter_mod_command\x12\r\n\x05\x66lags\x18\x03 \x01(\r\x12\x10\n\x08meter_id\x18\x04 \x01(\r\x12\x31\n\x05\x62\x61nds\x18\x05 \x03(\x0b\x32\".openflow_13.ofp_meter_band_header\"9\n\rofp_error_msg\x12\x0c\n\x04type\x18\x02 \x01(\r\x12\x0c\n\x04\x63ode\x18\x03 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\"`\n\x1aofp_error_experimenter_msg\x12\x0c\n\x04type\x18\x02 \x01(\r\x12\x10\n\x08\x65xp_type\x18\x03 \x01(\r\x12\x14\n\x0c\x65xperimenter\x18\x04 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x05 \x01(\x0c\"c\n\x15ofp_multipart_request\x12-\n\x04type\x18\x02 \x01(\x0e\x32\x1f.openflow_13.ofp_multipart_type\x12\r\n\x05\x66lags\x18\x03 \x01(\r\x12\x0c\n\x04\x62ody\x18\x04 \x01(\x0c\"a\n\x13ofp_multipart_reply\x12-\n\x04type\x18\x02 \x01(\x0e\x32\x1f.openflow_13.ofp_multipart_type\x12\r\n\x05\x66lags\x18\x03 \x01(\r\x12\x0c\n\x04\x62ody\x18\x04 \x01(\x0c\"c\n\x08ofp_desc\x12\x10\n\x08mfr_desc\x18\x01 \x01(\t\x12\x0f\n\x07hw_desc\x18\x02 \x01(\t\x12\x0f\n\x07sw_desc\x18\x03 \x01(\t\x12\x12\n\nserial_num\x18\x04 \x01(\t\x12\x0f\n\x07\x64p_desc\x18\x05 \x01(\t\"\x9b\x01\n\x16ofp_flow_stats_request\x12\x10\n\x08table_id\x18\x01 \x01(\r\x12\x10\n\x08out_port\x18\x02 \x01(\r\x12\x11\n\tout_group\x18\x03 \x01(\r\x12\x0e\n\x06\x63ookie\x18\x04 \x01(\x04\x12\x13\n\x0b\x63ookie_mask\x18\x05 \x01(\x04\x12%\n\x05match\x18\x06 \x01(\x0b\x32\x16.openflow_13.ofp_match\"\xb1\x02\n\x0eofp_flow_stats\x12\x10\n\x08table_id\x18\x01 \x01(\r\x12\x14\n\x0c\x64uration_sec\x18\x02 \x01(\r\x12\x15\n\rduration_nsec\x18\x03 \x01(\r\x12\x10\n\x08priority\x18\x04 \x01(\r\x12\x14\n\x0cidle_timeout\x18\x05 \x01(\r\x12\x14\n\x0chard_timeout\x18\x06 \x01(\r\x12\r\n\x05\x66lags\x18\x07 \x01(\r\x12\x0e\n\x06\x63ookie\x18\x08 \x01(\x04\x12\x14\n\x0cpacket_count\x18\t \x01(\x04\x12\x12\n\nbyte_count\x18\n \x01(\x04\x12%\n\x05match\x18\x0c \x01(\x0b\x32\x16.openflow_13.ofp_match\x12\x32\n\x0cinstructions\x18\r \x03(\x0b\x32\x1c.openflow_13.ofp_instruction\"\xa0\x01\n\x1bofp_aggregate_stats_request\x12\x10\n\x08table_id\x18\x01 \x01(\r\x12\x10\n\x08out_port\x18\x02 \x01(\r\x12\x11\n\tout_group\x18\x03 \x01(\r\x12\x0e\n\x06\x63ookie\x18\x04 \x01(\x04\x12\x13\n\x0b\x63ookie_mask\x18\x05 \x01(\x04\x12%\n\x05match\x18\x06 \x01(\x0b\x32\x16.openflow_13.ofp_match\"Y\n\x19ofp_aggregate_stats_reply\x12\x14\n\x0cpacket_count\x18\x01 \x01(\x04\x12\x12\n\nbyte_count\x18\x02 \x01(\x04\x12\x12\n\nflow_count\x18\x03 \x01(\r\"\xb1\x03\n\x1aofp_table_feature_property\x12\x36\n\x04type\x18\x01 \x01(\x0e\x32(.openflow_13.ofp_table_feature_prop_type\x12H\n\x0cinstructions\x18\x02 \x01(\x0b\x32\x30.openflow_13.ofp_table_feature_prop_instructionsH\x00\x12\x46\n\x0bnext_tables\x18\x03 \x01(\x0b\x32/.openflow_13.ofp_table_feature_prop_next_tablesH\x00\x12>\n\x07\x61\x63tions\x18\x04 \x01(\x0b\x32+.openflow_13.ofp_table_feature_prop_actionsH\x00\x12\x36\n\x03oxm\x18\x05 \x01(\x0b\x32\'.openflow_13.ofp_table_feature_prop_oxmH\x00\x12H\n\x0c\x65xperimenter\x18\x06 \x01(\x0b\x32\x30.openflow_13.ofp_table_feature_prop_experimenterH\x00\x42\x07\n\x05value\"Y\n#ofp_table_feature_prop_instructions\x12\x32\n\x0cinstructions\x18\x01 \x03(\x0b\x32\x1c.openflow_13.ofp_instruction\"<\n\"ofp_table_feature_prop_next_tables\x12\x16\n\x0enext_table_ids\x18\x01 \x03(\r\"J\n\x1eofp_table_feature_prop_actions\x12(\n\x07\x61\x63tions\x18\x01 \x03(\x0b\x32\x17.openflow_13.ofp_action\"-\n\x1aofp_table_feature_prop_oxm\x12\x0f\n\x07oxm_ids\x18\x03 \x03(\r\"h\n#ofp_table_feature_prop_experimenter\x12\x14\n\x0c\x65xperimenter\x18\x02 \x01(\r\x12\x10\n\x08\x65xp_type\x18\x03 \x01(\r\x12\x19\n\x11\x65xperimenter_data\x18\x04 \x03(\r\"\xc6\x01\n\x12ofp_table_features\x12\x10\n\x08table_id\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x16\n\x0emetadata_match\x18\x03 \x01(\x04\x12\x16\n\x0emetadata_write\x18\x04 \x01(\x04\x12\x0e\n\x06\x63onfig\x18\x05 \x01(\r\x12\x13\n\x0bmax_entries\x18\x06 \x01(\r\x12;\n\nproperties\x18\x07 \x03(\x0b\x32\'.openflow_13.ofp_table_feature_property\"f\n\x0fofp_table_stats\x12\x10\n\x08table_id\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63tive_count\x18\x02 \x01(\r\x12\x14\n\x0clookup_count\x18\x03 \x01(\x04\x12\x15\n\rmatched_count\x18\x04 \x01(\x04\")\n\x16ofp_port_stats_request\x12\x0f\n\x07port_no\x18\x01 \x01(\r\"\xbb\x02\n\x0eofp_port_stats\x12\x0f\n\x07port_no\x18\x01 \x01(\r\x12\x12\n\nrx_packets\x18\x02 \x01(\x04\x12\x12\n\ntx_packets\x18\x03 \x01(\x04\x12\x10\n\x08rx_bytes\x18\x04 \x01(\x04\x12\x10\n\x08tx_bytes\x18\x05 \x01(\x04\x12\x12\n\nrx_dropped\x18\x06 \x01(\x04\x12\x12\n\ntx_dropped\x18\x07 \x01(\x04\x12\x11\n\trx_errors\x18\x08 \x01(\x04\x12\x11\n\ttx_errors\x18\t \x01(\x04\x12\x14\n\x0crx_frame_err\x18\n \x01(\x04\x12\x13\n\x0brx_over_err\x18\x0b \x01(\x04\x12\x12\n\nrx_crc_err\x18\x0c \x01(\x04\x12\x12\n\ncollisions\x18\r \x01(\x04\x12\x14\n\x0c\x64uration_sec\x18\x0e \x01(\r\x12\x15\n\rduration_nsec\x18\x0f \x01(\r\"+\n\x17ofp_group_stats_request\x12\x10\n\x08group_id\x18\x01 \x01(\r\">\n\x12ofp_bucket_counter\x12\x14\n\x0cpacket_count\x18\x01 \x01(\x04\x12\x12\n\nbyte_count\x18\x02 \x01(\x04\"\xc4\x01\n\x0fofp_group_stats\x12\x10\n\x08group_id\x18\x01 \x01(\r\x12\x11\n\tref_count\x18\x02 \x01(\r\x12\x14\n\x0cpacket_count\x18\x03 \x01(\x04\x12\x12\n\nbyte_count\x18\x04 \x01(\x04\x12\x14\n\x0c\x64uration_sec\x18\x05 \x01(\r\x12\x15\n\rduration_nsec\x18\x06 \x01(\r\x12\x35\n\x0c\x62ucket_stats\x18\x07 \x03(\x0b\x32\x1f.openflow_13.ofp_bucket_counter\"w\n\x0eofp_group_desc\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openflow_13.ofp_group_type\x12\x10\n\x08group_id\x18\x02 \x01(\r\x12(\n\x07\x62uckets\x18\x03 \x03(\x0b\x32\x17.openflow_13.ofp_bucket\"i\n\x0fofp_group_entry\x12)\n\x04\x64\x65sc\x18\x01 \x01(\x0b\x32\x1b.openflow_13.ofp_group_desc\x12+\n\x05stats\x18\x02 \x01(\x0b\x32\x1c.openflow_13.ofp_group_stats\"^\n\x12ofp_group_features\x12\r\n\x05types\x18\x01 \x01(\r\x12\x14\n\x0c\x63\x61pabilities\x18\x02 \x01(\r\x12\x12\n\nmax_groups\x18\x03 \x03(\r\x12\x0f\n\x07\x61\x63tions\x18\x04 \x03(\r\"/\n\x1bofp_meter_multipart_request\x12\x10\n\x08meter_id\x18\x01 \x01(\r\"J\n\x14ofp_meter_band_stats\x12\x19\n\x11packet_band_count\x18\x01 \x01(\x04\x12\x17\n\x0f\x62yte_band_count\x18\x02 \x01(\x04\"\xcb\x01\n\x0fofp_meter_stats\x12\x10\n\x08meter_id\x18\x01 \x01(\r\x12\x12\n\nflow_count\x18\x02 \x01(\r\x12\x17\n\x0fpacket_in_count\x18\x03 \x01(\x04\x12\x15\n\rbyte_in_count\x18\x04 \x01(\x04\x12\x14\n\x0c\x64uration_sec\x18\x05 \x01(\r\x12\x15\n\rduration_nsec\x18\x06 \x01(\r\x12\x35\n\nband_stats\x18\x07 \x03(\x0b\x32!.openflow_13.ofp_meter_band_stats\"f\n\x10ofp_meter_config\x12\r\n\x05\x66lags\x18\x01 \x01(\r\x12\x10\n\x08meter_id\x18\x02 \x01(\r\x12\x31\n\x05\x62\x61nds\x18\x03 \x03(\x0b\x32\".openflow_13.ofp_meter_band_header\"w\n\x12ofp_meter_features\x12\x11\n\tmax_meter\x18\x01 \x01(\r\x12\x12\n\nband_types\x18\x02 \x01(\r\x12\x14\n\x0c\x63\x61pabilities\x18\x03 \x01(\r\x12\x11\n\tmax_bands\x18\x04 \x01(\r\x12\x11\n\tmax_color\x18\x05 \x01(\r\"Y\n!ofp_experimenter_multipart_header\x12\x14\n\x0c\x65xperimenter\x18\x01 \x01(\r\x12\x10\n\x08\x65xp_type\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"O\n\x17ofp_experimenter_header\x12\x14\n\x0c\x65xperimenter\x18\x02 \x01(\r\x12\x10\n\x08\x65xp_type\x18\x03 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\"6\n\x15ofp_queue_prop_header\x12\x10\n\x08property\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\"`\n\x17ofp_queue_prop_min_rate\x12\x37\n\x0bprop_header\x18\x01 \x01(\x0b\x32\".openflow_13.ofp_queue_prop_header\x12\x0c\n\x04rate\x18\x02 \x01(\r\"`\n\x17ofp_queue_prop_max_rate\x12\x37\n\x0bprop_header\x18\x01 \x01(\x0b\x32\".openflow_13.ofp_queue_prop_header\x12\x0c\n\x04rate\x18\x02 \x01(\r\"z\n\x1bofp_queue_prop_experimenter\x12\x37\n\x0bprop_header\x18\x01 \x01(\x0b\x32\".openflow_13.ofp_queue_prop_header\x12\x14\n\x0c\x65xperimenter\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"j\n\x10ofp_packet_queue\x12\x10\n\x08queue_id\x18\x01 \x01(\r\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x36\n\nproperties\x18\x04 \x03(\x0b\x32\".openflow_13.ofp_queue_prop_header\",\n\x1cofp_queue_get_config_request\x12\x0c\n\x04port\x18\x02 \x01(\r\"Y\n\x1aofp_queue_get_config_reply\x12\x0c\n\x04port\x18\x02 \x01(\r\x12-\n\x06queues\x18\x03 \x03(\x0b\x32\x1d.openflow_13.ofp_packet_queue\"6\n\x14ofp_action_set_queue\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x10\n\x08queue_id\x18\x03 \x01(\r\"<\n\x17ofp_queue_stats_request\x12\x0f\n\x07port_no\x18\x01 \x01(\r\x12\x10\n\x08queue_id\x18\x02 \x01(\r\"\x9a\x01\n\x0fofp_queue_stats\x12\x0f\n\x07port_no\x18\x01 \x01(\r\x12\x10\n\x08queue_id\x18\x02 \x01(\r\x12\x10\n\x08tx_bytes\x18\x03 \x01(\x04\x12\x12\n\ntx_packets\x18\x04 \x01(\x04\x12\x11\n\ttx_errors\x18\x05 \x01(\x04\x12\x14\n\x0c\x64uration_sec\x18\x06 \x01(\r\x12\x15\n\rduration_nsec\x18\x07 \x01(\r\"Y\n\x10ofp_role_request\x12.\n\x04role\x18\x02 \x01(\x0e\x32 .openflow_13.ofp_controller_role\x12\x15\n\rgeneration_id\x18\x03 \x01(\x04\"_\n\x10ofp_async_config\x12\x16\n\x0epacket_in_mask\x18\x02 \x03(\r\x12\x18\n\x10port_status_mask\x18\x03 \x03(\r\x12\x19\n\x11\x66low_removed_mask\x18\x04 \x03(\r*\xd5\x01\n\x0bofp_port_no\x12\x10\n\x0cOFPP_INVALID\x10\x00\x12\x10\n\x08OFPP_MAX\x10\x80\xfe\xff\xff\x07\x12\x14\n\x0cOFPP_IN_PORT\x10\xf8\xff\xff\xff\x07\x12\x12\n\nOFPP_TABLE\x10\xf9\xff\xff\xff\x07\x12\x13\n\x0bOFPP_NORMAL\x10\xfa\xff\xff\xff\x07\x12\x12\n\nOFPP_FLOOD\x10\xfb\xff\xff\xff\x07\x12\x10\n\x08OFPP_ALL\x10\xfc\xff\xff\xff\x07\x12\x17\n\x0fOFPP_CONTROLLER\x10\xfd\xff\xff\xff\x07\x12\x12\n\nOFPP_LOCAL\x10\xfe\xff\xff\xff\x07\x12\x10\n\x08OFPP_ANY\x10\xff\xff\xff\xff\x07*\xc8\x05\n\x08ofp_type\x12\x0e\n\nOFPT_HELLO\x10\x00\x12\x0e\n\nOFPT_ERROR\x10\x01\x12\x15\n\x11OFPT_ECHO_REQUEST\x10\x02\x12\x13\n\x0fOFPT_ECHO_REPLY\x10\x03\x12\x15\n\x11OFPT_EXPERIMENTER\x10\x04\x12\x19\n\x15OFPT_FEATURES_REQUEST\x10\x05\x12\x17\n\x13OFPT_FEATURES_REPLY\x10\x06\x12\x1b\n\x17OFPT_GET_CONFIG_REQUEST\x10\x07\x12\x19\n\x15OFPT_GET_CONFIG_REPLY\x10\x08\x12\x13\n\x0fOFPT_SET_CONFIG\x10\t\x12\x12\n\x0eOFPT_PACKET_IN\x10\n\x12\x15\n\x11OFPT_FLOW_REMOVED\x10\x0b\x12\x14\n\x10OFPT_PORT_STATUS\x10\x0c\x12\x13\n\x0fOFPT_PACKET_OUT\x10\r\x12\x11\n\rOFPT_FLOW_MOD\x10\x0e\x12\x12\n\x0eOFPT_GROUP_MOD\x10\x0f\x12\x11\n\rOFPT_PORT_MOD\x10\x10\x12\x12\n\x0eOFPT_TABLE_MOD\x10\x11\x12\x1a\n\x16OFPT_MULTIPART_REQUEST\x10\x12\x12\x18\n\x14OFPT_MULTIPART_REPLY\x10\x13\x12\x18\n\x14OFPT_BARRIER_REQUEST\x10\x14\x12\x16\n\x12OFPT_BARRIER_REPLY\x10\x15\x12!\n\x1dOFPT_QUEUE_GET_CONFIG_REQUEST\x10\x16\x12\x1f\n\x1bOFPT_QUEUE_GET_CONFIG_REPLY\x10\x17\x12\x15\n\x11OFPT_ROLE_REQUEST\x10\x18\x12\x13\n\x0fOFPT_ROLE_REPLY\x10\x19\x12\x1a\n\x16OFPT_GET_ASYNC_REQUEST\x10\x1a\x12\x18\n\x14OFPT_GET_ASYNC_REPLY\x10\x1b\x12\x12\n\x0eOFPT_SET_ASYNC\x10\x1c\x12\x12\n\x0eOFPT_METER_MOD\x10\x1d*C\n\x13ofp_hello_elem_type\x12\x12\n\x0eOFPHET_INVALID\x10\x00\x12\x18\n\x14OFPHET_VERSIONBITMAP\x10\x01*e\n\x10ofp_config_flags\x12\x14\n\x10OFPC_FRAG_NORMAL\x10\x00\x12\x12\n\x0eOFPC_FRAG_DROP\x10\x01\x12\x13\n\x0fOFPC_FRAG_REASM\x10\x02\x12\x12\n\x0eOFPC_FRAG_MASK\x10\x03*@\n\x10ofp_table_config\x12\x11\n\rOFPTC_INVALID\x10\x00\x12\x19\n\x15OFPTC_DEPRECATED_MASK\x10\x03*>\n\tofp_table\x12\x11\n\rOFPTT_INVALID\x10\x00\x12\x0e\n\tOFPTT_MAX\x10\xfe\x01\x12\x0e\n\tOFPTT_ALL\x10\xff\x01*\xbb\x01\n\x10ofp_capabilities\x12\x10\n\x0cOFPC_INVALID\x10\x00\x12\x13\n\x0fOFPC_FLOW_STATS\x10\x01\x12\x14\n\x10OFPC_TABLE_STATS\x10\x02\x12\x13\n\x0fOFPC_PORT_STATS\x10\x04\x12\x14\n\x10OFPC_GROUP_STATS\x10\x08\x12\x11\n\rOFPC_IP_REASM\x10 \x12\x14\n\x10OFPC_QUEUE_STATS\x10@\x12\x16\n\x11OFPC_PORT_BLOCKED\x10\x80\x02*v\n\x0fofp_port_config\x12\x11\n\rOFPPC_INVALID\x10\x00\x12\x13\n\x0fOFPPC_PORT_DOWN\x10\x01\x12\x11\n\rOFPPC_NO_RECV\x10\x04\x12\x10\n\x0cOFPPC_NO_FWD\x10 \x12\x16\n\x12OFPPC_NO_PACKET_IN\x10@*[\n\x0eofp_port_state\x12\x11\n\rOFPPS_INVALID\x10\x00\x12\x13\n\x0fOFPPS_LINK_DOWN\x10\x01\x12\x11\n\rOFPPS_BLOCKED\x10\x02\x12\x0e\n\nOFPPS_LIVE\x10\x04*\xdd\x02\n\x11ofp_port_features\x12\x11\n\rOFPPF_INVALID\x10\x00\x12\x11\n\rOFPPF_10MB_HD\x10\x01\x12\x11\n\rOFPPF_10MB_FD\x10\x02\x12\x12\n\x0eOFPPF_100MB_HD\x10\x04\x12\x12\n\x0eOFPPF_100MB_FD\x10\x08\x12\x10\n\x0cOFPPF_1GB_HD\x10\x10\x12\x10\n\x0cOFPPF_1GB_FD\x10 \x12\x11\n\rOFPPF_10GB_FD\x10@\x12\x12\n\rOFPPF_40GB_FD\x10\x80\x01\x12\x13\n\x0eOFPPF_100GB_FD\x10\x80\x02\x12\x11\n\x0cOFPPF_1TB_FD\x10\x80\x04\x12\x10\n\x0bOFPPF_OTHER\x10\x80\x08\x12\x11\n\x0cOFPPF_COPPER\x10\x80\x10\x12\x10\n\x0bOFPPF_FIBER\x10\x80 \x12\x12\n\rOFPPF_AUTONEG\x10\x80@\x12\x11\n\x0bOFPPF_PAUSE\x10\x80\x80\x01\x12\x16\n\x10OFPPF_PAUSE_ASYM\x10\x80\x80\x02*D\n\x0fofp_port_reason\x12\r\n\tOFPPR_ADD\x10\x00\x12\x10\n\x0cOFPPR_DELETE\x10\x01\x12\x10\n\x0cOFPPR_MODIFY\x10\x02*3\n\x0eofp_match_type\x12\x12\n\x0eOFPMT_STANDARD\x10\x00\x12\r\n\tOFPMT_OXM\x10\x01*k\n\rofp_oxm_class\x12\x10\n\x0cOFPXMC_NXM_0\x10\x00\x12\x10\n\x0cOFPXMC_NXM_1\x10\x01\x12\x1b\n\x15OFPXMC_OPENFLOW_BASIC\x10\x80\x80\x02\x12\x19\n\x13OFPXMC_EXPERIMENTER\x10\xff\xff\x03*\x90\x08\n\x13oxm_ofb_field_types\x12\x16\n\x12OFPXMT_OFB_IN_PORT\x10\x00\x12\x1a\n\x16OFPXMT_OFB_IN_PHY_PORT\x10\x01\x12\x17\n\x13OFPXMT_OFB_METADATA\x10\x02\x12\x16\n\x12OFPXMT_OFB_ETH_DST\x10\x03\x12\x16\n\x12OFPXMT_OFB_ETH_SRC\x10\x04\x12\x17\n\x13OFPXMT_OFB_ETH_TYPE\x10\x05\x12\x17\n\x13OFPXMT_OFB_VLAN_VID\x10\x06\x12\x17\n\x13OFPXMT_OFB_VLAN_PCP\x10\x07\x12\x16\n\x12OFPXMT_OFB_IP_DSCP\x10\x08\x12\x15\n\x11OFPXMT_OFB_IP_ECN\x10\t\x12\x17\n\x13OFPXMT_OFB_IP_PROTO\x10\n\x12\x17\n\x13OFPXMT_OFB_IPV4_SRC\x10\x0b\x12\x17\n\x13OFPXMT_OFB_IPV4_DST\x10\x0c\x12\x16\n\x12OFPXMT_OFB_TCP_SRC\x10\r\x12\x16\n\x12OFPXMT_OFB_TCP_DST\x10\x0e\x12\x16\n\x12OFPXMT_OFB_UDP_SRC\x10\x0f\x12\x16\n\x12OFPXMT_OFB_UDP_DST\x10\x10\x12\x17\n\x13OFPXMT_OFB_SCTP_SRC\x10\x11\x12\x17\n\x13OFPXMT_OFB_SCTP_DST\x10\x12\x12\x1a\n\x16OFPXMT_OFB_ICMPV4_TYPE\x10\x13\x12\x1a\n\x16OFPXMT_OFB_ICMPV4_CODE\x10\x14\x12\x15\n\x11OFPXMT_OFB_ARP_OP\x10\x15\x12\x16\n\x12OFPXMT_OFB_ARP_SPA\x10\x16\x12\x16\n\x12OFPXMT_OFB_ARP_TPA\x10\x17\x12\x16\n\x12OFPXMT_OFB_ARP_SHA\x10\x18\x12\x16\n\x12OFPXMT_OFB_ARP_THA\x10\x19\x12\x17\n\x13OFPXMT_OFB_IPV6_SRC\x10\x1a\x12\x17\n\x13OFPXMT_OFB_IPV6_DST\x10\x1b\x12\x1a\n\x16OFPXMT_OFB_IPV6_FLABEL\x10\x1c\x12\x1a\n\x16OFPXMT_OFB_ICMPV6_TYPE\x10\x1d\x12\x1a\n\x16OFPXMT_OFB_ICMPV6_CODE\x10\x1e\x12\x1d\n\x19OFPXMT_OFB_IPV6_ND_TARGET\x10\x1f\x12\x1a\n\x16OFPXMT_OFB_IPV6_ND_SLL\x10 \x12\x1a\n\x16OFPXMT_OFB_IPV6_ND_TLL\x10!\x12\x19\n\x15OFPXMT_OFB_MPLS_LABEL\x10\"\x12\x16\n\x12OFPXMT_OFB_MPLS_TC\x10#\x12\x17\n\x13OFPXMT_OFB_MPLS_BOS\x10$\x12\x17\n\x13OFPXMT_OFB_PBB_ISID\x10%\x12\x18\n\x14OFPXMT_OFB_TUNNEL_ID\x10&\x12\x1a\n\x16OFPXMT_OFB_IPV6_EXTHDR\x10\'*3\n\x0bofp_vlan_id\x12\x0f\n\x0bOFPVID_NONE\x10\x00\x12\x13\n\x0eOFPVID_PRESENT\x10\x80 *\xc9\x01\n\x14ofp_ipv6exthdr_flags\x12\x12\n\x0eOFPIEH_INVALID\x10\x00\x12\x11\n\rOFPIEH_NONEXT\x10\x01\x12\x0e\n\nOFPIEH_ESP\x10\x02\x12\x0f\n\x0bOFPIEH_AUTH\x10\x04\x12\x0f\n\x0bOFPIEH_DEST\x10\x08\x12\x0f\n\x0bOFPIEH_FRAG\x10\x10\x12\x11\n\rOFPIEH_ROUTER\x10 \x12\x0e\n\nOFPIEH_HOP\x10@\x12\x11\n\x0cOFPIEH_UNREP\x10\x80\x01\x12\x11\n\x0cOFPIEH_UNSEQ\x10\x80\x02*\xfc\x02\n\x0fofp_action_type\x12\x10\n\x0cOFPAT_OUTPUT\x10\x00\x12\x16\n\x12OFPAT_COPY_TTL_OUT\x10\x0b\x12\x15\n\x11OFPAT_COPY_TTL_IN\x10\x0c\x12\x16\n\x12OFPAT_SET_MPLS_TTL\x10\x0f\x12\x16\n\x12OFPAT_DEC_MPLS_TTL\x10\x10\x12\x13\n\x0fOFPAT_PUSH_VLAN\x10\x11\x12\x12\n\x0eOFPAT_POP_VLAN\x10\x12\x12\x13\n\x0fOFPAT_PUSH_MPLS\x10\x13\x12\x12\n\x0eOFPAT_POP_MPLS\x10\x14\x12\x13\n\x0fOFPAT_SET_QUEUE\x10\x15\x12\x0f\n\x0bOFPAT_GROUP\x10\x16\x12\x14\n\x10OFPAT_SET_NW_TTL\x10\x17\x12\x14\n\x10OFPAT_DEC_NW_TTL\x10\x18\x12\x13\n\x0fOFPAT_SET_FIELD\x10\x19\x12\x12\n\x0eOFPAT_PUSH_PBB\x10\x1a\x12\x11\n\rOFPAT_POP_PBB\x10\x1b\x12\x18\n\x12OFPAT_EXPERIMENTER\x10\xff\xff\x03*V\n\x16ofp_controller_max_len\x12\x12\n\x0eOFPCML_INVALID\x10\x00\x12\x10\n\nOFPCML_MAX\x10\xe5\xff\x03\x12\x16\n\x10OFPCML_NO_BUFFER\x10\xff\xff\x03*\xcf\x01\n\x14ofp_instruction_type\x12\x11\n\rOFPIT_INVALID\x10\x00\x12\x14\n\x10OFPIT_GOTO_TABLE\x10\x01\x12\x18\n\x14OFPIT_WRITE_METADATA\x10\x02\x12\x17\n\x13OFPIT_WRITE_ACTIONS\x10\x03\x12\x17\n\x13OFPIT_APPLY_ACTIONS\x10\x04\x12\x17\n\x13OFPIT_CLEAR_ACTIONS\x10\x05\x12\x0f\n\x0bOFPIT_METER\x10\x06\x12\x18\n\x12OFPIT_EXPERIMENTER\x10\xff\xff\x03*{\n\x14ofp_flow_mod_command\x12\r\n\tOFPFC_ADD\x10\x00\x12\x10\n\x0cOFPFC_MODIFY\x10\x01\x12\x17\n\x13OFPFC_MODIFY_STRICT\x10\x02\x12\x10\n\x0cOFPFC_DELETE\x10\x03\x12\x17\n\x13OFPFC_DELETE_STRICT\x10\x04*\xa3\x01\n\x12ofp_flow_mod_flags\x12\x11\n\rOFPFF_INVALID\x10\x00\x12\x17\n\x13OFPFF_SEND_FLOW_REM\x10\x01\x12\x17\n\x13OFPFF_CHECK_OVERLAP\x10\x02\x12\x16\n\x12OFPFF_RESET_COUNTS\x10\x04\x12\x17\n\x13OFPFF_NO_PKT_COUNTS\x10\x08\x12\x17\n\x13OFPFF_NO_BYT_COUNTS\x10\x10*S\n\tofp_group\x12\x10\n\x0cOFPG_INVALID\x10\x00\x12\x10\n\x08OFPG_MAX\x10\x80\xfe\xff\xff\x07\x12\x10\n\x08OFPG_ALL\x10\xfc\xff\xff\xff\x07\x12\x10\n\x08OFPG_ANY\x10\xff\xff\xff\xff\x07*J\n\x15ofp_group_mod_command\x12\r\n\tOFPGC_ADD\x10\x00\x12\x10\n\x0cOFPGC_MODIFY\x10\x01\x12\x10\n\x0cOFPGC_DELETE\x10\x02*S\n\x0eofp_group_type\x12\r\n\tOFPGT_ALL\x10\x00\x12\x10\n\x0cOFPGT_SELECT\x10\x01\x12\x12\n\x0eOFPGT_INDIRECT\x10\x02\x12\x0c\n\x08OFPGT_FF\x10\x03*P\n\x14ofp_packet_in_reason\x12\x11\n\rOFPR_NO_MATCH\x10\x00\x12\x0f\n\x0bOFPR_ACTION\x10\x01\x12\x14\n\x10OFPR_INVALID_TTL\x10\x02*\x8b\x01\n\x17ofp_flow_removed_reason\x12\x16\n\x12OFPRR_IDLE_TIMEOUT\x10\x00\x12\x16\n\x12OFPRR_HARD_TIMEOUT\x10\x01\x12\x10\n\x0cOFPRR_DELETE\x10\x02\x12\x16\n\x12OFPRR_GROUP_DELETE\x10\x03\x12\x16\n\x12OFPRR_METER_DELETE\x10\x04*n\n\tofp_meter\x12\r\n\tOFPM_ZERO\x10\x00\x12\x10\n\x08OFPM_MAX\x10\x80\x80\xfc\xff\x07\x12\x15\n\rOFPM_SLOWPATH\x10\xfd\xff\xff\xff\x07\x12\x17\n\x0fOFPM_CONTROLLER\x10\xfe\xff\xff\xff\x07\x12\x10\n\x08OFPM_ALL\x10\xff\xff\xff\xff\x07*m\n\x13ofp_meter_band_type\x12\x12\n\x0eOFPMBT_INVALID\x10\x00\x12\x0f\n\x0bOFPMBT_DROP\x10\x01\x12\x16\n\x12OFPMBT_DSCP_REMARK\x10\x02\x12\x19\n\x13OFPMBT_EXPERIMENTER\x10\xff\xff\x03*J\n\x15ofp_meter_mod_command\x12\r\n\tOFPMC_ADD\x10\x00\x12\x10\n\x0cOFPMC_MODIFY\x10\x01\x12\x10\n\x0cOFPMC_DELETE\x10\x02*g\n\x0fofp_meter_flags\x12\x11\n\rOFPMF_INVALID\x10\x00\x12\x0e\n\nOFPMF_KBPS\x10\x01\x12\x0f\n\x0bOFPMF_PKTPS\x10\x02\x12\x0f\n\x0bOFPMF_BURST\x10\x04\x12\x0f\n\x0bOFPMF_STATS\x10\x08*\xa4\x03\n\x0eofp_error_type\x12\x16\n\x12OFPET_HELLO_FAILED\x10\x00\x12\x15\n\x11OFPET_BAD_REQUEST\x10\x01\x12\x14\n\x10OFPET_BAD_ACTION\x10\x02\x12\x19\n\x15OFPET_BAD_INSTRUCTION\x10\x03\x12\x13\n\x0fOFPET_BAD_MATCH\x10\x04\x12\x19\n\x15OFPET_FLOW_MOD_FAILED\x10\x05\x12\x1a\n\x16OFPET_GROUP_MOD_FAILED\x10\x06\x12\x19\n\x15OFPET_PORT_MOD_FAILED\x10\x07\x12\x1a\n\x16OFPET_TABLE_MOD_FAILED\x10\x08\x12\x19\n\x15OFPET_QUEUE_OP_FAILED\x10\t\x12\x1e\n\x1aOFPET_SWITCH_CONFIG_FAILED\x10\n\x12\x1d\n\x19OFPET_ROLE_REQUEST_FAILED\x10\x0b\x12\x1a\n\x16OFPET_METER_MOD_FAILED\x10\x0c\x12\x1f\n\x1bOFPET_TABLE_FEATURES_FAILED\x10\r\x12\x18\n\x12OFPET_EXPERIMENTER\x10\xff\xff\x03*B\n\x15ofp_hello_failed_code\x12\x17\n\x13OFPHFC_INCOMPATIBLE\x10\x00\x12\x10\n\x0cOFPHFC_EPERM\x10\x01*\xed\x02\n\x14ofp_bad_request_code\x12\x16\n\x12OFPBRC_BAD_VERSION\x10\x00\x12\x13\n\x0fOFPBRC_BAD_TYPE\x10\x01\x12\x18\n\x14OFPBRC_BAD_MULTIPART\x10\x02\x12\x1b\n\x17OFPBRC_BAD_EXPERIMENTER\x10\x03\x12\x17\n\x13OFPBRC_BAD_EXP_TYPE\x10\x04\x12\x10\n\x0cOFPBRC_EPERM\x10\x05\x12\x12\n\x0eOFPBRC_BAD_LEN\x10\x06\x12\x17\n\x13OFPBRC_BUFFER_EMPTY\x10\x07\x12\x19\n\x15OFPBRC_BUFFER_UNKNOWN\x10\x08\x12\x17\n\x13OFPBRC_BAD_TABLE_ID\x10\t\x12\x13\n\x0fOFPBRC_IS_SLAVE\x10\n\x12\x13\n\x0fOFPBRC_BAD_PORT\x10\x0b\x12\x15\n\x11OFPBRC_BAD_PACKET\x10\x0c\x12$\n OFPBRC_MULTIPART_BUFFER_OVERFLOW\x10\r*\x9c\x03\n\x13ofp_bad_action_code\x12\x13\n\x0fOFPBAC_BAD_TYPE\x10\x00\x12\x12\n\x0eOFPBAC_BAD_LEN\x10\x01\x12\x1b\n\x17OFPBAC_BAD_EXPERIMENTER\x10\x02\x12\x17\n\x13OFPBAC_BAD_EXP_TYPE\x10\x03\x12\x17\n\x13OFPBAC_BAD_OUT_PORT\x10\x04\x12\x17\n\x13OFPBAC_BAD_ARGUMENT\x10\x05\x12\x10\n\x0cOFPBAC_EPERM\x10\x06\x12\x13\n\x0fOFPBAC_TOO_MANY\x10\x07\x12\x14\n\x10OFPBAC_BAD_QUEUE\x10\x08\x12\x18\n\x14OFPBAC_BAD_OUT_GROUP\x10\t\x12\x1d\n\x19OFPBAC_MATCH_INCONSISTENT\x10\n\x12\x1c\n\x18OFPBAC_UNSUPPORTED_ORDER\x10\x0b\x12\x12\n\x0eOFPBAC_BAD_TAG\x10\x0c\x12\x17\n\x13OFPBAC_BAD_SET_TYPE\x10\r\x12\x16\n\x12OFPBAC_BAD_SET_LEN\x10\x0e\x12\x1b\n\x17OFPBAC_BAD_SET_ARGUMENT\x10\x0f*\xfa\x01\n\x18ofp_bad_instruction_code\x12\x17\n\x13OFPBIC_UNKNOWN_INST\x10\x00\x12\x15\n\x11OFPBIC_UNSUP_INST\x10\x01\x12\x17\n\x13OFPBIC_BAD_TABLE_ID\x10\x02\x12\x19\n\x15OFPBIC_UNSUP_METADATA\x10\x03\x12\x1e\n\x1aOFPBIC_UNSUP_METADATA_MASK\x10\x04\x12\x1b\n\x17OFPBIC_BAD_EXPERIMENTER\x10\x05\x12\x17\n\x13OFPBIC_BAD_EXP_TYPE\x10\x06\x12\x12\n\x0eOFPBIC_BAD_LEN\x10\x07\x12\x10\n\x0cOFPBIC_EPERM\x10\x08*\xa5\x02\n\x12ofp_bad_match_code\x12\x13\n\x0fOFPBMC_BAD_TYPE\x10\x00\x12\x12\n\x0eOFPBMC_BAD_LEN\x10\x01\x12\x12\n\x0eOFPBMC_BAD_TAG\x10\x02\x12\x1b\n\x17OFPBMC_BAD_DL_ADDR_MASK\x10\x03\x12\x1b\n\x17OFPBMC_BAD_NW_ADDR_MASK\x10\x04\x12\x18\n\x14OFPBMC_BAD_WILDCARDS\x10\x05\x12\x14\n\x10OFPBMC_BAD_FIELD\x10\x06\x12\x14\n\x10OFPBMC_BAD_VALUE\x10\x07\x12\x13\n\x0fOFPBMC_BAD_MASK\x10\x08\x12\x15\n\x11OFPBMC_BAD_PREREQ\x10\t\x12\x14\n\x10OFPBMC_DUP_FIELD\x10\n\x12\x10\n\x0cOFPBMC_EPERM\x10\x0b*\xd2\x01\n\x18ofp_flow_mod_failed_code\x12\x13\n\x0fOFPFMFC_UNKNOWN\x10\x00\x12\x16\n\x12OFPFMFC_TABLE_FULL\x10\x01\x12\x18\n\x14OFPFMFC_BAD_TABLE_ID\x10\x02\x12\x13\n\x0fOFPFMFC_OVERLAP\x10\x03\x12\x11\n\rOFPFMFC_EPERM\x10\x04\x12\x17\n\x13OFPFMFC_BAD_TIMEOUT\x10\x05\x12\x17\n\x13OFPFMFC_BAD_COMMAND\x10\x06\x12\x15\n\x11OFPFMFC_BAD_FLAGS\x10\x07*\xa1\x03\n\x19ofp_group_mod_failed_code\x12\x18\n\x14OFPGMFC_GROUP_EXISTS\x10\x00\x12\x19\n\x15OFPGMFC_INVALID_GROUP\x10\x01\x12\x1e\n\x1aOFPGMFC_WEIGHT_UNSUPPORTED\x10\x02\x12\x19\n\x15OFPGMFC_OUT_OF_GROUPS\x10\x03\x12\x1a\n\x16OFPGMFC_OUT_OF_BUCKETS\x10\x04\x12 \n\x1cOFPGMFC_CHAINING_UNSUPPORTED\x10\x05\x12\x1d\n\x19OFPGMFC_WATCH_UNSUPPORTED\x10\x06\x12\x10\n\x0cOFPGMFC_LOOP\x10\x07\x12\x19\n\x15OFPGMFC_UNKNOWN_GROUP\x10\x08\x12\x19\n\x15OFPGMFC_CHAINED_GROUP\x10\t\x12\x14\n\x10OFPGMFC_BAD_TYPE\x10\n\x12\x17\n\x13OFPGMFC_BAD_COMMAND\x10\x0b\x12\x16\n\x12OFPGMFC_BAD_BUCKET\x10\x0c\x12\x15\n\x11OFPGMFC_BAD_WATCH\x10\r\x12\x11\n\rOFPGMFC_EPERM\x10\x0e*\x8f\x01\n\x18ofp_port_mod_failed_code\x12\x14\n\x10OFPPMFC_BAD_PORT\x10\x00\x12\x17\n\x13OFPPMFC_BAD_HW_ADDR\x10\x01\x12\x16\n\x12OFPPMFC_BAD_CONFIG\x10\x02\x12\x19\n\x15OFPPMFC_BAD_ADVERTISE\x10\x03\x12\x11\n\rOFPPMFC_EPERM\x10\x04*]\n\x19ofp_table_mod_failed_code\x12\x15\n\x11OFPTMFC_BAD_TABLE\x10\x00\x12\x16\n\x12OFPTMFC_BAD_CONFIG\x10\x01\x12\x11\n\rOFPTMFC_EPERM\x10\x02*Z\n\x18ofp_queue_op_failed_code\x12\x14\n\x10OFPQOFC_BAD_PORT\x10\x00\x12\x15\n\x11OFPQOFC_BAD_QUEUE\x10\x01\x12\x11\n\rOFPQOFC_EPERM\x10\x02*^\n\x1dofp_switch_config_failed_code\x12\x15\n\x11OFPSCFC_BAD_FLAGS\x10\x00\x12\x13\n\x0fOFPSCFC_BAD_LEN\x10\x01\x12\x11\n\rOFPSCFC_EPERM\x10\x02*Z\n\x1cofp_role_request_failed_code\x12\x11\n\rOFPRRFC_STALE\x10\x00\x12\x11\n\rOFPRRFC_UNSUP\x10\x01\x12\x14\n\x10OFPRRFC_BAD_ROLE\x10\x02*\xc4\x02\n\x19ofp_meter_mod_failed_code\x12\x13\n\x0fOFPMMFC_UNKNOWN\x10\x00\x12\x18\n\x14OFPMMFC_METER_EXISTS\x10\x01\x12\x19\n\x15OFPMMFC_INVALID_METER\x10\x02\x12\x19\n\x15OFPMMFC_UNKNOWN_METER\x10\x03\x12\x17\n\x13OFPMMFC_BAD_COMMAND\x10\x04\x12\x15\n\x11OFPMMFC_BAD_FLAGS\x10\x05\x12\x14\n\x10OFPMMFC_BAD_RATE\x10\x06\x12\x15\n\x11OFPMMFC_BAD_BURST\x10\x07\x12\x14\n\x10OFPMMFC_BAD_BAND\x10\x08\x12\x1a\n\x16OFPMMFC_BAD_BAND_VALUE\x10\t\x12\x19\n\x15OFPMMFC_OUT_OF_METERS\x10\n\x12\x18\n\x14OFPMMFC_OUT_OF_BANDS\x10\x0b*\xa9\x01\n\x1eofp_table_features_failed_code\x12\x15\n\x11OFPTFFC_BAD_TABLE\x10\x00\x12\x18\n\x14OFPTFFC_BAD_METADATA\x10\x01\x12\x14\n\x10OFPTFFC_BAD_TYPE\x10\x02\x12\x13\n\x0fOFPTFFC_BAD_LEN\x10\x03\x12\x18\n\x14OFPTFFC_BAD_ARGUMENT\x10\x04\x12\x11\n\rOFPTFFC_EPERM\x10\x05*\xce\x02\n\x12ofp_multipart_type\x12\x0e\n\nOFPMP_DESC\x10\x00\x12\x0e\n\nOFPMP_FLOW\x10\x01\x12\x13\n\x0fOFPMP_AGGREGATE\x10\x02\x12\x0f\n\x0bOFPMP_TABLE\x10\x03\x12\x14\n\x10OFPMP_PORT_STATS\x10\x04\x12\x0f\n\x0bOFPMP_QUEUE\x10\x05\x12\x0f\n\x0bOFPMP_GROUP\x10\x06\x12\x14\n\x10OFPMP_GROUP_DESC\x10\x07\x12\x18\n\x14OFPMP_GROUP_FEATURES\x10\x08\x12\x0f\n\x0bOFPMP_METER\x10\t\x12\x16\n\x12OFPMP_METER_CONFIG\x10\n\x12\x18\n\x14OFPMP_METER_FEATURES\x10\x0b\x12\x18\n\x14OFPMP_TABLE_FEATURES\x10\x0c\x12\x13\n\x0fOFPMP_PORT_DESC\x10\r\x12\x18\n\x12OFPMP_EXPERIMENTER\x10\xff\xff\x03*J\n\x1bofp_multipart_request_flags\x12\x16\n\x12OFPMPF_REQ_INVALID\x10\x00\x12\x13\n\x0fOFPMPF_REQ_MORE\x10\x01*L\n\x19ofp_multipart_reply_flags\x12\x18\n\x14OFPMPF_REPLY_INVALID\x10\x00\x12\x15\n\x11OFPMPF_REPLY_MORE\x10\x01*\xe4\x03\n\x1bofp_table_feature_prop_type\x12\x18\n\x14OFPTFPT_INSTRUCTIONS\x10\x00\x12\x1d\n\x19OFPTFPT_INSTRUCTIONS_MISS\x10\x01\x12\x17\n\x13OFPTFPT_NEXT_TABLES\x10\x02\x12\x1c\n\x18OFPTFPT_NEXT_TABLES_MISS\x10\x03\x12\x19\n\x15OFPTFPT_WRITE_ACTIONS\x10\x04\x12\x1e\n\x1aOFPTFPT_WRITE_ACTIONS_MISS\x10\x05\x12\x19\n\x15OFPTFPT_APPLY_ACTIONS\x10\x06\x12\x1e\n\x1aOFPTFPT_APPLY_ACTIONS_MISS\x10\x07\x12\x11\n\rOFPTFPT_MATCH\x10\x08\x12\x15\n\x11OFPTFPT_WILDCARDS\x10\n\x12\x1a\n\x16OFPTFPT_WRITE_SETFIELD\x10\x0c\x12\x1f\n\x1bOFPTFPT_WRITE_SETFIELD_MISS\x10\r\x12\x1a\n\x16OFPTFPT_APPLY_SETFIELD\x10\x0e\x12\x1f\n\x1bOFPTFPT_APPLY_SETFIELD_MISS\x10\x0f\x12\x1a\n\x14OFPTFPT_EXPERIMENTER\x10\xfe\xff\x03\x12\x1f\n\x19OFPTFPT_EXPERIMENTER_MISS\x10\xff\xff\x03*\x93\x01\n\x16ofp_group_capabilities\x12\x12\n\x0eOFPGFC_INVALID\x10\x00\x12\x18\n\x14OFPGFC_SELECT_WEIGHT\x10\x01\x12\x1a\n\x16OFPGFC_SELECT_LIVENESS\x10\x02\x12\x13\n\x0fOFPGFC_CHAINING\x10\x04\x12\x1a\n\x16OFPGFC_CHAINING_CHECKS\x10\x08*k\n\x14ofp_queue_properties\x12\x11\n\rOFPQT_INVALID\x10\x00\x12\x12\n\x0eOFPQT_MIN_RATE\x10\x01\x12\x12\n\x0eOFPQT_MAX_RATE\x10\x02\x12\x18\n\x12OFPQT_EXPERIMENTER\x10\xff\xff\x03*q\n\x13ofp_controller_role\x12\x17\n\x13OFPCR_ROLE_NOCHANGE\x10\x00\x12\x14\n\x10OFPCR_ROLE_EQUAL\x10\x01\x12\x15\n\x11OFPCR_ROLE_MASTER\x10\x02\x12\x14\n\x10OFPCR_ROLE_SLAVE\x10\x03\x32\xfd\x04\n\x08OpenFlow\x12<\n\x08GetHello\x12\x16.openflow_13.ofp_hello\x1a\x16.openflow_13.ofp_hello\"\x00\x12\x41\n\x0b\x45\x63hoRequest\x12\x17.openflow_13.ofp_header\x1a\x17.openflow_13.ofp_header\"\x00\x12\x63\n\x13\x45xperimenterRequest\x12$.openflow_13.ofp_experimenter_header\x1a$.openflow_13.ofp_experimenter_header\"\x00\x12P\n\x11GetSwitchFeatures\x12\x17.openflow_13.ofp_header\x1a .openflow_13.ofp_switch_features\"\x00\x12L\n\x0fGetSwitchConfig\x12\x17.openflow_13.ofp_header\x1a\x1e.openflow_13.ofp_switch_config\"\x00\x12\x46\n\tSetConfig\x12\x1e.openflow_13.ofp_switch_config\x1a\x17.openflow_13.ofp_header\"\x00\x12R\n\x17ReceivePacketInMessages\x12\x17.openflow_13.ofp_header\x1a\x1a.openflow_13.ofp_packet_in\"\x00\x30\x01\x12O\n\x15SendPacketOutMessages\x12\x1b.openflow_13.ofp_packet_out\x1a\x17.openflow_13.ofp_header\"\x00\x62\x06proto3')
)
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

_OFP_PORT_NO = _descriptor.EnumDescriptor(
  name='ofp_port_no',
  full_name='openflow_13.ofp_port_no',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPP_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_MAX', index=1, number=2147483392,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_IN_PORT', index=2, number=2147483640,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_TABLE', index=3, number=2147483641,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_NORMAL', index=4, number=2147483642,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_FLOOD', index=5, number=2147483643,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_ALL', index=6, number=2147483644,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_CONTROLLER', index=7, number=2147483645,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_LOCAL', index=8, number=2147483646,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPP_ANY', index=9, number=2147483647,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=11234,
  serialized_end=11447,
)
_sym_db.RegisterEnumDescriptor(_OFP_PORT_NO)

ofp_port_no = enum_type_wrapper.EnumTypeWrapper(_OFP_PORT_NO)
_OFP_TYPE = _descriptor.EnumDescriptor(
  name='ofp_type',
  full_name='openflow_13.ofp_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPT_HELLO', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_ERROR', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_ECHO_REQUEST', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_ECHO_REPLY', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_EXPERIMENTER', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_FEATURES_REQUEST', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_FEATURES_REPLY', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_GET_CONFIG_REQUEST', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_GET_CONFIG_REPLY', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_SET_CONFIG', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_PACKET_IN', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_FLOW_REMOVED', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_PORT_STATUS', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_PACKET_OUT', index=13, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_FLOW_MOD', index=14, number=14,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_GROUP_MOD', index=15, number=15,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_PORT_MOD', index=16, number=16,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_TABLE_MOD', index=17, number=17,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_MULTIPART_REQUEST', index=18, number=18,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_MULTIPART_REPLY', index=19, number=19,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_BARRIER_REQUEST', index=20, number=20,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_BARRIER_REPLY', index=21, number=21,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_QUEUE_GET_CONFIG_REQUEST', index=22, number=22,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_QUEUE_GET_CONFIG_REPLY', index=23, number=23,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_ROLE_REQUEST', index=24, number=24,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_ROLE_REPLY', index=25, number=25,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_GET_ASYNC_REQUEST', index=26, number=26,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_GET_ASYNC_REPLY', index=27, number=27,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_SET_ASYNC', index=28, number=28,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPT_METER_MOD', index=29, number=29,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=11450,
  serialized_end=12162,
)
_sym_db.RegisterEnumDescriptor(_OFP_TYPE)

ofp_type = enum_type_wrapper.EnumTypeWrapper(_OFP_TYPE)
_OFP_HELLO_ELEM_TYPE = _descriptor.EnumDescriptor(
  name='ofp_hello_elem_type',
  full_name='openflow_13.ofp_hello_elem_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPHET_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPHET_VERSIONBITMAP', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=12164,
  serialized_end=12231,
)
_sym_db.RegisterEnumDescriptor(_OFP_HELLO_ELEM_TYPE)

ofp_hello_elem_type = enum_type_wrapper.EnumTypeWrapper(_OFP_HELLO_ELEM_TYPE)
_OFP_CONFIG_FLAGS = _descriptor.EnumDescriptor(
  name='ofp_config_flags',
  full_name='openflow_13.ofp_config_flags',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPC_FRAG_NORMAL', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_FRAG_DROP', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_FRAG_REASM', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_FRAG_MASK', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=12233,
  serialized_end=12334,
)
_sym_db.RegisterEnumDescriptor(_OFP_CONFIG_FLAGS)

ofp_config_flags = enum_type_wrapper.EnumTypeWrapper(_OFP_CONFIG_FLAGS)
_OFP_TABLE_CONFIG = _descriptor.EnumDescriptor(
  name='ofp_table_config',
  full_name='openflow_13.ofp_table_config',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPTC_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTC_DEPRECATED_MASK', index=1, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=12336,
  serialized_end=12400,
)
_sym_db.RegisterEnumDescriptor(_OFP_TABLE_CONFIG)

ofp_table_config = enum_type_wrapper.EnumTypeWrapper(_OFP_TABLE_CONFIG)
_OFP_TABLE = _descriptor.EnumDescriptor(
  name='ofp_table',
  full_name='openflow_13.ofp_table',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPTT_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTT_MAX', index=1, number=254,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTT_ALL', index=2, number=255,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=12402,
  serialized_end=12464,
)
_sym_db.RegisterEnumDescriptor(_OFP_TABLE)

ofp_table = enum_type_wrapper.EnumTypeWrapper(_OFP_TABLE)
_OFP_CAPABILITIES = _descriptor.EnumDescriptor(
  name='ofp_capabilities',
  full_name='openflow_13.ofp_capabilities',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPC_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_FLOW_STATS', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_TABLE_STATS', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_PORT_STATS', index=3, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_GROUP_STATS', index=4, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_IP_REASM', index=5, number=32,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_QUEUE_STATS', index=6, number=64,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPC_PORT_BLOCKED', index=7, number=256,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=12467,
  serialized_end=12654,
)
_sym_db.RegisterEnumDescriptor(_OFP_CAPABILITIES)

ofp_capabilities = enum_type_wrapper.EnumTypeWrapper(_OFP_CAPABILITIES)
_OFP_PORT_CONFIG = _descriptor.EnumDescriptor(
  name='ofp_port_config',
  full_name='openflow_13.ofp_port_config',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPPC_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPC_PORT_DOWN', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPC_NO_RECV', index=2, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPC_NO_FWD', index=3, number=32,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPC_NO_PACKET_IN', index=4, number=64,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=12656,
  serialized_end=12774,
)
_sym_db.RegisterEnumDescriptor(_OFP_PORT_CONFIG)

ofp_port_config = enum_type_wrapper.EnumTypeWrapper(_OFP_PORT_CONFIG)
_OFP_PORT_STATE = _descriptor.EnumDescriptor(
  name='ofp_port_state',
  full_name='openflow_13.ofp_port_state',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPPS_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPS_LINK_DOWN', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPS_BLOCKED', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPS_LIVE', index=3, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=12776,
  serialized_end=12867,
)
_sym_db.RegisterEnumDescriptor(_OFP_PORT_STATE)

ofp_port_state = enum_type_wrapper.EnumTypeWrapper(_OFP_PORT_STATE)
_OFP_PORT_FEATURES = _descriptor.EnumDescriptor(
  name='ofp_port_features',
  full_name='openflow_13.ofp_port_features',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPPF_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_10MB_HD', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_10MB_FD', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_100MB_HD', index=3, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_100MB_FD', index=4, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_1GB_HD', index=5, number=16,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_1GB_FD', index=6, number=32,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_10GB_FD', index=7, number=64,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_40GB_FD', index=8, number=128,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_100GB_FD', index=9, number=256,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_1TB_FD', index=10, number=512,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_OTHER', index=11, number=1024,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_COPPER', index=12, number=2048,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_FIBER', index=13, number=4096,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_AUTONEG', index=14, number=8192,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_PAUSE', index=15, number=16384,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPF_PAUSE_ASYM', index=16, number=32768,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=12870,
  serialized_end=13219,
)
_sym_db.RegisterEnumDescriptor(_OFP_PORT_FEATURES)

ofp_port_features = enum_type_wrapper.EnumTypeWrapper(_OFP_PORT_FEATURES)
_OFP_PORT_REASON = _descriptor.EnumDescriptor(
  name='ofp_port_reason',
  full_name='openflow_13.ofp_port_reason',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPPR_ADD', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPR_DELETE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPR_MODIFY', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=13221,
  serialized_end=13289,
)
_sym_db.RegisterEnumDescriptor(_OFP_PORT_REASON)

ofp_port_reason = enum_type_wrapper.EnumTypeWrapper(_OFP_PORT_REASON)
_OFP_MATCH_TYPE = _descriptor.EnumDescriptor(
  name='ofp_match_type',
  full_name='openflow_13.ofp_match_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPMT_STANDARD', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMT_OXM', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=13291,
  serialized_end=13342,
)
_sym_db.RegisterEnumDescriptor(_OFP_MATCH_TYPE)

ofp_match_type = enum_type_wrapper.EnumTypeWrapper(_OFP_MATCH_TYPE)
_OFP_OXM_CLASS = _descriptor.EnumDescriptor(
  name='ofp_oxm_class',
  full_name='openflow_13.ofp_oxm_class',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPXMC_NXM_0', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMC_NXM_1', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMC_OPENFLOW_BASIC', index=2, number=32768,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMC_EXPERIMENTER', index=3, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=13344,
  serialized_end=13451,
)
_sym_db.RegisterEnumDescriptor(_OFP_OXM_CLASS)

ofp_oxm_class = enum_type_wrapper.EnumTypeWrapper(_OFP_OXM_CLASS)
_OXM_OFB_FIELD_TYPES = _descriptor.EnumDescriptor(
  name='oxm_ofb_field_types',
  full_name='openflow_13.oxm_ofb_field_types',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IN_PORT', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IN_PHY_PORT', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_METADATA', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ETH_DST', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ETH_SRC', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ETH_TYPE', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_VLAN_VID', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_VLAN_PCP', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IP_DSCP', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IP_ECN', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IP_PROTO', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV4_SRC', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV4_DST', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_TCP_SRC', index=13, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_TCP_DST', index=14, number=14,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_UDP_SRC', index=15, number=15,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_UDP_DST', index=16, number=16,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_SCTP_SRC', index=17, number=17,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_SCTP_DST', index=18, number=18,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ICMPV4_TYPE', index=19, number=19,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ICMPV4_CODE', index=20, number=20,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ARP_OP', index=21, number=21,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ARP_SPA', index=22, number=22,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ARP_TPA', index=23, number=23,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ARP_SHA', index=24, number=24,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ARP_THA', index=25, number=25,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV6_SRC', index=26, number=26,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV6_DST', index=27, number=27,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV6_FLABEL', index=28, number=28,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ICMPV6_TYPE', index=29, number=29,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_ICMPV6_CODE', index=30, number=30,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV6_ND_TARGET', index=31, number=31,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV6_ND_SLL', index=32, number=32,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV6_ND_TLL', index=33, number=33,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_MPLS_LABEL', index=34, number=34,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_MPLS_TC', index=35, number=35,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_MPLS_BOS', index=36, number=36,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_PBB_ISID', index=37, number=37,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_TUNNEL_ID', index=38, number=38,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPXMT_OFB_IPV6_EXTHDR', index=39, number=39,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=13454,
  serialized_end=14494,
)
_sym_db.RegisterEnumDescriptor(_OXM_OFB_FIELD_TYPES)

oxm_ofb_field_types = enum_type_wrapper.EnumTypeWrapper(_OXM_OFB_FIELD_TYPES)
_OFP_VLAN_ID = _descriptor.EnumDescriptor(
  name='ofp_vlan_id',
  full_name='openflow_13.ofp_vlan_id',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPVID_NONE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPVID_PRESENT', index=1, number=4096,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=14496,
  serialized_end=14547,
)
_sym_db.RegisterEnumDescriptor(_OFP_VLAN_ID)

ofp_vlan_id = enum_type_wrapper.EnumTypeWrapper(_OFP_VLAN_ID)
_OFP_IPV6EXTHDR_FLAGS = _descriptor.EnumDescriptor(
  name='ofp_ipv6exthdr_flags',
  full_name='openflow_13.ofp_ipv6exthdr_flags',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_NONEXT', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_ESP', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_AUTH', index=3, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_DEST', index=4, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_FRAG', index=5, number=16,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_ROUTER', index=6, number=32,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_HOP', index=7, number=64,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_UNREP', index=8, number=128,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIEH_UNSEQ', index=9, number=256,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=14550,
  serialized_end=14751,
)
_sym_db.RegisterEnumDescriptor(_OFP_IPV6EXTHDR_FLAGS)

ofp_ipv6exthdr_flags = enum_type_wrapper.EnumTypeWrapper(_OFP_IPV6EXTHDR_FLAGS)
_OFP_ACTION_TYPE = _descriptor.EnumDescriptor(
  name='ofp_action_type',
  full_name='openflow_13.ofp_action_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPAT_OUTPUT', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_COPY_TTL_OUT', index=1, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_COPY_TTL_IN', index=2, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_SET_MPLS_TTL', index=3, number=15,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_DEC_MPLS_TTL', index=4, number=16,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_PUSH_VLAN', index=5, number=17,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_POP_VLAN', index=6, number=18,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_PUSH_MPLS', index=7, number=19,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_POP_MPLS', index=8, number=20,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_SET_QUEUE', index=9, number=21,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_GROUP', index=10, number=22,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_SET_NW_TTL', index=11, number=23,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_DEC_NW_TTL', index=12, number=24,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_SET_FIELD', index=13, number=25,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_PUSH_PBB', index=14, number=26,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_POP_PBB', index=15, number=27,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPAT_EXPERIMENTER', index=16, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=14754,
  serialized_end=15134,
)
_sym_db.RegisterEnumDescriptor(_OFP_ACTION_TYPE)

ofp_action_type = enum_type_wrapper.EnumTypeWrapper(_OFP_ACTION_TYPE)
_OFP_CONTROLLER_MAX_LEN = _descriptor.EnumDescriptor(
  name='ofp_controller_max_len',
  full_name='openflow_13.ofp_controller_max_len',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPCML_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPCML_MAX', index=1, number=65509,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPCML_NO_BUFFER', index=2, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=15136,
  serialized_end=15222,
)
_sym_db.RegisterEnumDescriptor(_OFP_CONTROLLER_MAX_LEN)

ofp_controller_max_len = enum_type_wrapper.EnumTypeWrapper(_OFP_CONTROLLER_MAX_LEN)
_OFP_INSTRUCTION_TYPE = _descriptor.EnumDescriptor(
  name='ofp_instruction_type',
  full_name='openflow_13.ofp_instruction_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPIT_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIT_GOTO_TABLE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIT_WRITE_METADATA', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIT_WRITE_ACTIONS', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIT_APPLY_ACTIONS', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIT_CLEAR_ACTIONS', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIT_METER', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPIT_EXPERIMENTER', index=7, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=15225,
  serialized_end=15432,
)
_sym_db.RegisterEnumDescriptor(_OFP_INSTRUCTION_TYPE)

ofp_instruction_type = enum_type_wrapper.EnumTypeWrapper(_OFP_INSTRUCTION_TYPE)
_OFP_FLOW_MOD_COMMAND = _descriptor.EnumDescriptor(
  name='ofp_flow_mod_command',
  full_name='openflow_13.ofp_flow_mod_command',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPFC_ADD', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFC_MODIFY', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFC_MODIFY_STRICT', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFC_DELETE', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFC_DELETE_STRICT', index=4, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=15434,
  serialized_end=15557,
)
_sym_db.RegisterEnumDescriptor(_OFP_FLOW_MOD_COMMAND)

ofp_flow_mod_command = enum_type_wrapper.EnumTypeWrapper(_OFP_FLOW_MOD_COMMAND)
_OFP_FLOW_MOD_FLAGS = _descriptor.EnumDescriptor(
  name='ofp_flow_mod_flags',
  full_name='openflow_13.ofp_flow_mod_flags',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPFF_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFF_SEND_FLOW_REM', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFF_CHECK_OVERLAP', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFF_RESET_COUNTS', index=3, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFF_NO_PKT_COUNTS', index=4, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFF_NO_BYT_COUNTS', index=5, number=16,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=15560,
  serialized_end=15723,
)
_sym_db.RegisterEnumDescriptor(_OFP_FLOW_MOD_FLAGS)

ofp_flow_mod_flags = enum_type_wrapper.EnumTypeWrapper(_OFP_FLOW_MOD_FLAGS)
_OFP_GROUP = _descriptor.EnumDescriptor(
  name='ofp_group',
  full_name='openflow_13.ofp_group',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPG_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPG_MAX', index=1, number=2147483392,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPG_ALL', index=2, number=2147483644,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPG_ANY', index=3, number=2147483647,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=15725,
  serialized_end=15808,
)
_sym_db.RegisterEnumDescriptor(_OFP_GROUP)

ofp_group = enum_type_wrapper.EnumTypeWrapper(_OFP_GROUP)
_OFP_GROUP_MOD_COMMAND = _descriptor.EnumDescriptor(
  name='ofp_group_mod_command',
  full_name='openflow_13.ofp_group_mod_command',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPGC_ADD', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGC_MODIFY', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGC_DELETE', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=15810,
  serialized_end=15884,
)
_sym_db.RegisterEnumDescriptor(_OFP_GROUP_MOD_COMMAND)

ofp_group_mod_command = enum_type_wrapper.EnumTypeWrapper(_OFP_GROUP_MOD_COMMAND)
_OFP_GROUP_TYPE = _descriptor.EnumDescriptor(
  name='ofp_group_type',
  full_name='openflow_13.ofp_group_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPGT_ALL', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGT_SELECT', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGT_INDIRECT', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGT_FF', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=15886,
  serialized_end=15969,
)
_sym_db.RegisterEnumDescriptor(_OFP_GROUP_TYPE)

ofp_group_type = enum_type_wrapper.EnumTypeWrapper(_OFP_GROUP_TYPE)
_OFP_PACKET_IN_REASON = _descriptor.EnumDescriptor(
  name='ofp_packet_in_reason',
  full_name='openflow_13.ofp_packet_in_reason',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPR_NO_MATCH', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPR_ACTION', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPR_INVALID_TTL', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=15971,
  serialized_end=16051,
)
_sym_db.RegisterEnumDescriptor(_OFP_PACKET_IN_REASON)

ofp_packet_in_reason = enum_type_wrapper.EnumTypeWrapper(_OFP_PACKET_IN_REASON)
_OFP_FLOW_REMOVED_REASON = _descriptor.EnumDescriptor(
  name='ofp_flow_removed_reason',
  full_name='openflow_13.ofp_flow_removed_reason',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPRR_IDLE_TIMEOUT', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPRR_HARD_TIMEOUT', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPRR_DELETE', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPRR_GROUP_DELETE', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPRR_METER_DELETE', index=4, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=16054,
  serialized_end=16193,
)
_sym_db.RegisterEnumDescriptor(_OFP_FLOW_REMOVED_REASON)

ofp_flow_removed_reason = enum_type_wrapper.EnumTypeWrapper(_OFP_FLOW_REMOVED_REASON)
_OFP_METER = _descriptor.EnumDescriptor(
  name='ofp_meter',
  full_name='openflow_13.ofp_meter',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPM_ZERO', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPM_MAX', index=1, number=2147418112,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPM_SLOWPATH', index=2, number=2147483645,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPM_CONTROLLER', index=3, number=2147483646,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPM_ALL', index=4, number=2147483647,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=16195,
  serialized_end=16305,
)
_sym_db.RegisterEnumDescriptor(_OFP_METER)

ofp_meter = enum_type_wrapper.EnumTypeWrapper(_OFP_METER)
_OFP_METER_BAND_TYPE = _descriptor.EnumDescriptor(
  name='ofp_meter_band_type',
  full_name='openflow_13.ofp_meter_band_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPMBT_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMBT_DROP', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMBT_DSCP_REMARK', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMBT_EXPERIMENTER', index=3, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=16307,
  serialized_end=16416,
)
_sym_db.RegisterEnumDescriptor(_OFP_METER_BAND_TYPE)

ofp_meter_band_type = enum_type_wrapper.EnumTypeWrapper(_OFP_METER_BAND_TYPE)
_OFP_METER_MOD_COMMAND = _descriptor.EnumDescriptor(
  name='ofp_meter_mod_command',
  full_name='openflow_13.ofp_meter_mod_command',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPMC_ADD', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMC_MODIFY', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMC_DELETE', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=16418,
  serialized_end=16492,
)
_sym_db.RegisterEnumDescriptor(_OFP_METER_MOD_COMMAND)

ofp_meter_mod_command = enum_type_wrapper.EnumTypeWrapper(_OFP_METER_MOD_COMMAND)
_OFP_METER_FLAGS = _descriptor.EnumDescriptor(
  name='ofp_meter_flags',
  full_name='openflow_13.ofp_meter_flags',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPMF_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMF_KBPS', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMF_PKTPS', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMF_BURST', index=3, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMF_STATS', index=4, number=8,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=16494,
  serialized_end=16597,
)
_sym_db.RegisterEnumDescriptor(_OFP_METER_FLAGS)

ofp_meter_flags = enum_type_wrapper.EnumTypeWrapper(_OFP_METER_FLAGS)
_OFP_ERROR_TYPE = _descriptor.EnumDescriptor(
  name='ofp_error_type',
  full_name='openflow_13.ofp_error_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPET_HELLO_FAILED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_BAD_REQUEST', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_BAD_ACTION', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_BAD_INSTRUCTION', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_BAD_MATCH', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_FLOW_MOD_FAILED', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_GROUP_MOD_FAILED', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_PORT_MOD_FAILED', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_TABLE_MOD_FAILED', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_QUEUE_OP_FAILED', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_SWITCH_CONFIG_FAILED', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_ROLE_REQUEST_FAILED', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_METER_MOD_FAILED', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_TABLE_FEATURES_FAILED', index=13, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPET_EXPERIMENTER', index=14, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=16600,
  serialized_end=17020,
)
_sym_db.RegisterEnumDescriptor(_OFP_ERROR_TYPE)

ofp_error_type = enum_type_wrapper.EnumTypeWrapper(_OFP_ERROR_TYPE)
_OFP_HELLO_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_hello_failed_code',
  full_name='openflow_13.ofp_hello_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPHFC_INCOMPATIBLE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPHFC_EPERM', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=17022,
  serialized_end=17088,
)
_sym_db.RegisterEnumDescriptor(_OFP_HELLO_FAILED_CODE)

ofp_hello_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_HELLO_FAILED_CODE)
_OFP_BAD_REQUEST_CODE = _descriptor.EnumDescriptor(
  name='ofp_bad_request_code',
  full_name='openflow_13.ofp_bad_request_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_VERSION', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_TYPE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_MULTIPART', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_EXPERIMENTER', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_EXP_TYPE', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_EPERM', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_LEN', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BUFFER_EMPTY', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BUFFER_UNKNOWN', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_TABLE_ID', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_IS_SLAVE', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_PORT', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_BAD_PACKET', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBRC_MULTIPART_BUFFER_OVERFLOW', index=13, number=13,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=17091,
  serialized_end=17456,
)
_sym_db.RegisterEnumDescriptor(_OFP_BAD_REQUEST_CODE)

ofp_bad_request_code = enum_type_wrapper.EnumTypeWrapper(_OFP_BAD_REQUEST_CODE)
_OFP_BAD_ACTION_CODE = _descriptor.EnumDescriptor(
  name='ofp_bad_action_code',
  full_name='openflow_13.ofp_bad_action_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_TYPE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_LEN', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_EXPERIMENTER', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_EXP_TYPE', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_OUT_PORT', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_ARGUMENT', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_EPERM', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_TOO_MANY', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_QUEUE', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_OUT_GROUP', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_MATCH_INCONSISTENT', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_UNSUPPORTED_ORDER', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_TAG', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_SET_TYPE', index=13, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_SET_LEN', index=14, number=14,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBAC_BAD_SET_ARGUMENT', index=15, number=15,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=17459,
  serialized_end=17871,
)
_sym_db.RegisterEnumDescriptor(_OFP_BAD_ACTION_CODE)

ofp_bad_action_code = enum_type_wrapper.EnumTypeWrapper(_OFP_BAD_ACTION_CODE)
_OFP_BAD_INSTRUCTION_CODE = _descriptor.EnumDescriptor(
  name='ofp_bad_instruction_code',
  full_name='openflow_13.ofp_bad_instruction_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_UNKNOWN_INST', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_UNSUP_INST', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_BAD_TABLE_ID', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_UNSUP_METADATA', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_UNSUP_METADATA_MASK', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_BAD_EXPERIMENTER', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_BAD_EXP_TYPE', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_BAD_LEN', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBIC_EPERM', index=8, number=8,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=17874,
  serialized_end=18124,
)
_sym_db.RegisterEnumDescriptor(_OFP_BAD_INSTRUCTION_CODE)

ofp_bad_instruction_code = enum_type_wrapper.EnumTypeWrapper(_OFP_BAD_INSTRUCTION_CODE)
_OFP_BAD_MATCH_CODE = _descriptor.EnumDescriptor(
  name='ofp_bad_match_code',
  full_name='openflow_13.ofp_bad_match_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_TYPE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_LEN', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_TAG', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_DL_ADDR_MASK', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_NW_ADDR_MASK', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_WILDCARDS', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_FIELD', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_VALUE', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_MASK', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_BAD_PREREQ', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_DUP_FIELD', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPBMC_EPERM', index=11, number=11,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=18127,
  serialized_end=18420,
)
_sym_db.RegisterEnumDescriptor(_OFP_BAD_MATCH_CODE)

ofp_bad_match_code = enum_type_wrapper.EnumTypeWrapper(_OFP_BAD_MATCH_CODE)
_OFP_FLOW_MOD_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_flow_mod_failed_code',
  full_name='openflow_13.ofp_flow_mod_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPFMFC_UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFMFC_TABLE_FULL', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFMFC_BAD_TABLE_ID', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFMFC_OVERLAP', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFMFC_EPERM', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFMFC_BAD_TIMEOUT', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFMFC_BAD_COMMAND', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPFMFC_BAD_FLAGS', index=7, number=7,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=18423,
  serialized_end=18633,
)
_sym_db.RegisterEnumDescriptor(_OFP_FLOW_MOD_FAILED_CODE)

ofp_flow_mod_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_FLOW_MOD_FAILED_CODE)
_OFP_GROUP_MOD_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_group_mod_failed_code',
  full_name='openflow_13.ofp_group_mod_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_GROUP_EXISTS', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_INVALID_GROUP', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_WEIGHT_UNSUPPORTED', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_OUT_OF_GROUPS', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_OUT_OF_BUCKETS', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_CHAINING_UNSUPPORTED', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_WATCH_UNSUPPORTED', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_LOOP', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_UNKNOWN_GROUP', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_CHAINED_GROUP', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_BAD_TYPE', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_BAD_COMMAND', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_BAD_BUCKET', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_BAD_WATCH', index=13, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGMFC_EPERM', index=14, number=14,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=18636,
  serialized_end=19053,
)
_sym_db.RegisterEnumDescriptor(_OFP_GROUP_MOD_FAILED_CODE)

ofp_group_mod_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_GROUP_MOD_FAILED_CODE)
_OFP_PORT_MOD_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_port_mod_failed_code',
  full_name='openflow_13.ofp_port_mod_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPPMFC_BAD_PORT', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPMFC_BAD_HW_ADDR', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPMFC_BAD_CONFIG', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPMFC_BAD_ADVERTISE', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPPMFC_EPERM', index=4, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=19056,
  serialized_end=19199,
)
_sym_db.RegisterEnumDescriptor(_OFP_PORT_MOD_FAILED_CODE)

ofp_port_mod_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_PORT_MOD_FAILED_CODE)
_OFP_TABLE_MOD_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_table_mod_failed_code',
  full_name='openflow_13.ofp_table_mod_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPTMFC_BAD_TABLE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTMFC_BAD_CONFIG', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTMFC_EPERM', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=19201,
  serialized_end=19294,
)
_sym_db.RegisterEnumDescriptor(_OFP_TABLE_MOD_FAILED_CODE)

ofp_table_mod_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_TABLE_MOD_FAILED_CODE)
_OFP_QUEUE_OP_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_queue_op_failed_code',
  full_name='openflow_13.ofp_queue_op_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPQOFC_BAD_PORT', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPQOFC_BAD_QUEUE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPQOFC_EPERM', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=19296,
  serialized_end=19386,
)
_sym_db.RegisterEnumDescriptor(_OFP_QUEUE_OP_FAILED_CODE)

ofp_queue_op_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_QUEUE_OP_FAILED_CODE)
_OFP_SWITCH_CONFIG_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_switch_config_failed_code',
  full_name='openflow_13.ofp_switch_config_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPSCFC_BAD_FLAGS', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPSCFC_BAD_LEN', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPSCFC_EPERM', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=19388,
  serialized_end=19482,
)
_sym_db.RegisterEnumDescriptor(_OFP_SWITCH_CONFIG_FAILED_CODE)

ofp_switch_config_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_SWITCH_CONFIG_FAILED_CODE)
_OFP_ROLE_REQUEST_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_role_request_failed_code',
  full_name='openflow_13.ofp_role_request_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPRRFC_STALE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPRRFC_UNSUP', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPRRFC_BAD_ROLE', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=19484,
  serialized_end=19574,
)
_sym_db.RegisterEnumDescriptor(_OFP_ROLE_REQUEST_FAILED_CODE)

ofp_role_request_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_ROLE_REQUEST_FAILED_CODE)
_OFP_METER_MOD_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_meter_mod_failed_code',
  full_name='openflow_13.ofp_meter_mod_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_METER_EXISTS', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_INVALID_METER', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_UNKNOWN_METER', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_BAD_COMMAND', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_BAD_FLAGS', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_BAD_RATE', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_BAD_BURST', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_BAD_BAND', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_BAD_BAND_VALUE', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_OUT_OF_METERS', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMMFC_OUT_OF_BANDS', index=11, number=11,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=19577,
  serialized_end=19901,
)
_sym_db.RegisterEnumDescriptor(_OFP_METER_MOD_FAILED_CODE)

ofp_meter_mod_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_METER_MOD_FAILED_CODE)
_OFP_TABLE_FEATURES_FAILED_CODE = _descriptor.EnumDescriptor(
  name='ofp_table_features_failed_code',
  full_name='openflow_13.ofp_table_features_failed_code',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPTFFC_BAD_TABLE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFFC_BAD_METADATA', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFFC_BAD_TYPE', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFFC_BAD_LEN', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFFC_BAD_ARGUMENT', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFFC_EPERM', index=5, number=5,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=19904,
  serialized_end=20073,
)
_sym_db.RegisterEnumDescriptor(_OFP_TABLE_FEATURES_FAILED_CODE)

ofp_table_features_failed_code = enum_type_wrapper.EnumTypeWrapper(_OFP_TABLE_FEATURES_FAILED_CODE)
_OFP_MULTIPART_TYPE = _descriptor.EnumDescriptor(
  name='ofp_multipart_type',
  full_name='openflow_13.ofp_multipart_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPMP_DESC', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_FLOW', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_AGGREGATE', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_TABLE', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_PORT_STATS', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_QUEUE', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_GROUP', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_GROUP_DESC', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_GROUP_FEATURES', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_METER', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_METER_CONFIG', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_METER_FEATURES', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_TABLE_FEATURES', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_PORT_DESC', index=13, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMP_EXPERIMENTER', index=14, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=20076,
  serialized_end=20410,
)
_sym_db.RegisterEnumDescriptor(_OFP_MULTIPART_TYPE)

ofp_multipart_type = enum_type_wrapper.EnumTypeWrapper(_OFP_MULTIPART_TYPE)
_OFP_MULTIPART_REQUEST_FLAGS = _descriptor.EnumDescriptor(
  name='ofp_multipart_request_flags',
  full_name='openflow_13.ofp_multipart_request_flags',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPMPF_REQ_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMPF_REQ_MORE', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=20412,
  serialized_end=20486,
)
_sym_db.RegisterEnumDescriptor(_OFP_MULTIPART_REQUEST_FLAGS)

ofp_multipart_request_flags = enum_type_wrapper.EnumTypeWrapper(_OFP_MULTIPART_REQUEST_FLAGS)
_OFP_MULTIPART_REPLY_FLAGS = _descriptor.EnumDescriptor(
  name='ofp_multipart_reply_flags',
  full_name='openflow_13.ofp_multipart_reply_flags',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPMPF_REPLY_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPMPF_REPLY_MORE', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=20488,
  serialized_end=20564,
)
_sym_db.RegisterEnumDescriptor(_OFP_MULTIPART_REPLY_FLAGS)

ofp_multipart_reply_flags = enum_type_wrapper.EnumTypeWrapper(_OFP_MULTIPART_REPLY_FLAGS)
_OFP_TABLE_FEATURE_PROP_TYPE = _descriptor.EnumDescriptor(
  name='ofp_table_feature_prop_type',
  full_name='openflow_13.ofp_table_feature_prop_type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_INSTRUCTIONS', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_INSTRUCTIONS_MISS', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_NEXT_TABLES', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_NEXT_TABLES_MISS', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_WRITE_ACTIONS', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_WRITE_ACTIONS_MISS', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_APPLY_ACTIONS', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_APPLY_ACTIONS_MISS', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_MATCH', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_WILDCARDS', index=9, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_WRITE_SETFIELD', index=10, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_WRITE_SETFIELD_MISS', index=11, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_APPLY_SETFIELD', index=12, number=14,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_APPLY_SETFIELD_MISS', index=13, number=15,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_EXPERIMENTER', index=14, number=65534,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPTFPT_EXPERIMENTER_MISS', index=15, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=20567,
  serialized_end=21051,
)
_sym_db.RegisterEnumDescriptor(_OFP_TABLE_FEATURE_PROP_TYPE)

ofp_table_feature_prop_type = enum_type_wrapper.EnumTypeWrapper(_OFP_TABLE_FEATURE_PROP_TYPE)
_OFP_GROUP_CAPABILITIES = _descriptor.EnumDescriptor(
  name='ofp_group_capabilities',
  full_name='openflow_13.ofp_group_capabilities',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPGFC_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGFC_SELECT_WEIGHT', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGFC_SELECT_LIVENESS', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGFC_CHAINING', index=3, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPGFC_CHAINING_CHECKS', index=4, number=8,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=21054,
  serialized_end=21201,
)
_sym_db.RegisterEnumDescriptor(_OFP_GROUP_CAPABILITIES)

ofp_group_capabilities = enum_type_wrapper.EnumTypeWrapper(_OFP_GROUP_CAPABILITIES)
_OFP_QUEUE_PROPERTIES = _descriptor.EnumDescriptor(
  name='ofp_queue_properties',
  full_name='openflow_13.ofp_queue_properties',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPQT_INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPQT_MIN_RATE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPQT_MAX_RATE', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPQT_EXPERIMENTER', index=3, number=65535,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=21203,
  serialized_end=21310,
)
_sym_db.RegisterEnumDescriptor(_OFP_QUEUE_PROPERTIES)

ofp_queue_properties = enum_type_wrapper.EnumTypeWrapper(_OFP_QUEUE_PROPERTIES)
_OFP_CONTROLLER_ROLE = _descriptor.EnumDescriptor(
  name='ofp_controller_role',
  full_name='openflow_13.ofp_controller_role',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OFPCR_ROLE_NOCHANGE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPCR_ROLE_EQUAL', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPCR_ROLE_MASTER', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OFPCR_ROLE_SLAVE', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=21312,
  serialized_end=21425,
)
_sym_db.RegisterEnumDescriptor(_OFP_CONTROLLER_ROLE)

ofp_controller_role = enum_type_wrapper.EnumTypeWrapper(_OFP_CONTROLLER_ROLE)
OFPP_INVALID = 0
OFPP_MAX = 2147483392
OFPP_IN_PORT = 2147483640
OFPP_TABLE = 2147483641
OFPP_NORMAL = 2147483642
OFPP_FLOOD = 2147483643
OFPP_ALL = 2147483644
OFPP_CONTROLLER = 2147483645
OFPP_LOCAL = 2147483646
OFPP_ANY = 2147483647
OFPT_HELLO = 0
OFPT_ERROR = 1
OFPT_ECHO_REQUEST = 2
OFPT_ECHO_REPLY = 3
OFPT_EXPERIMENTER = 4
OFPT_FEATURES_REQUEST = 5
OFPT_FEATURES_REPLY = 6
OFPT_GET_CONFIG_REQUEST = 7
OFPT_GET_CONFIG_REPLY = 8
OFPT_SET_CONFIG = 9
OFPT_PACKET_IN = 10
OFPT_FLOW_REMOVED = 11
OFPT_PORT_STATUS = 12
OFPT_PACKET_OUT = 13
OFPT_FLOW_MOD = 14
OFPT_GROUP_MOD = 15
OFPT_PORT_MOD = 16
OFPT_TABLE_MOD = 17
OFPT_MULTIPART_REQUEST = 18
OFPT_MULTIPART_REPLY = 19
OFPT_BARRIER_REQUEST = 20
OFPT_BARRIER_REPLY = 21
OFPT_QUEUE_GET_CONFIG_REQUEST = 22
OFPT_QUEUE_GET_CONFIG_REPLY = 23
OFPT_ROLE_REQUEST = 24
OFPT_ROLE_REPLY = 25
OFPT_GET_ASYNC_REQUEST = 26
OFPT_GET_ASYNC_REPLY = 27
OFPT_SET_ASYNC = 28
OFPT_METER_MOD = 29
OFPHET_INVALID = 0
OFPHET_VERSIONBITMAP = 1
OFPC_FRAG_NORMAL = 0
OFPC_FRAG_DROP = 1
OFPC_FRAG_REASM = 2
OFPC_FRAG_MASK = 3
OFPTC_INVALID = 0
OFPTC_DEPRECATED_MASK = 3
OFPTT_INVALID = 0
OFPTT_MAX = 254
OFPTT_ALL = 255
OFPC_INVALID = 0
OFPC_FLOW_STATS = 1
OFPC_TABLE_STATS = 2
OFPC_PORT_STATS = 4
OFPC_GROUP_STATS = 8
OFPC_IP_REASM = 32
OFPC_QUEUE_STATS = 64
OFPC_PORT_BLOCKED = 256
OFPPC_INVALID = 0
OFPPC_PORT_DOWN = 1
OFPPC_NO_RECV = 4
OFPPC_NO_FWD = 32
OFPPC_NO_PACKET_IN = 64
OFPPS_INVALID = 0
OFPPS_LINK_DOWN = 1
OFPPS_BLOCKED = 2
OFPPS_LIVE = 4
OFPPF_INVALID = 0
OFPPF_10MB_HD = 1
OFPPF_10MB_FD = 2
OFPPF_100MB_HD = 4
OFPPF_100MB_FD = 8
OFPPF_1GB_HD = 16
OFPPF_1GB_FD = 32
OFPPF_10GB_FD = 64
OFPPF_40GB_FD = 128
OFPPF_100GB_FD = 256
OFPPF_1TB_FD = 512
OFPPF_OTHER = 1024
OFPPF_COPPER = 2048
OFPPF_FIBER = 4096
OFPPF_AUTONEG = 8192
OFPPF_PAUSE = 16384
OFPPF_PAUSE_ASYM = 32768
OFPPR_ADD = 0
OFPPR_DELETE = 1
OFPPR_MODIFY = 2
OFPMT_STANDARD = 0
OFPMT_OXM = 1
OFPXMC_NXM_0 = 0
OFPXMC_NXM_1 = 1
OFPXMC_OPENFLOW_BASIC = 32768
OFPXMC_EXPERIMENTER = 65535
OFPXMT_OFB_IN_PORT = 0
OFPXMT_OFB_IN_PHY_PORT = 1
OFPXMT_OFB_METADATA = 2
OFPXMT_OFB_ETH_DST = 3
OFPXMT_OFB_ETH_SRC = 4
OFPXMT_OFB_ETH_TYPE = 5
OFPXMT_OFB_VLAN_VID = 6
OFPXMT_OFB_VLAN_PCP = 7
OFPXMT_OFB_IP_DSCP = 8
OFPXMT_OFB_IP_ECN = 9
OFPXMT_OFB_IP_PROTO = 10
OFPXMT_OFB_IPV4_SRC = 11
OFPXMT_OFB_IPV4_DST = 12
OFPXMT_OFB_TCP_SRC = 13
OFPXMT_OFB_TCP_DST = 14
OFPXMT_OFB_UDP_SRC = 15
OFPXMT_OFB_UDP_DST = 16
OFPXMT_OFB_SCTP_SRC = 17
OFPXMT_OFB_SCTP_DST = 18
OFPXMT_OFB_ICMPV4_TYPE = 19
OFPXMT_OFB_ICMPV4_CODE = 20
OFPXMT_OFB_ARP_OP = 21
OFPXMT_OFB_ARP_SPA = 22
OFPXMT_OFB_ARP_TPA = 23
OFPXMT_OFB_ARP_SHA = 24
OFPXMT_OFB_ARP_THA = 25
OFPXMT_OFB_IPV6_SRC = 26
OFPXMT_OFB_IPV6_DST = 27
OFPXMT_OFB_IPV6_FLABEL = 28
OFPXMT_OFB_ICMPV6_TYPE = 29
OFPXMT_OFB_ICMPV6_CODE = 30
OFPXMT_OFB_IPV6_ND_TARGET = 31
OFPXMT_OFB_IPV6_ND_SLL = 32
OFPXMT_OFB_IPV6_ND_TLL = 33
OFPXMT_OFB_MPLS_LABEL = 34
OFPXMT_OFB_MPLS_TC = 35
OFPXMT_OFB_MPLS_BOS = 36
OFPXMT_OFB_PBB_ISID = 37
OFPXMT_OFB_TUNNEL_ID = 38
OFPXMT_OFB_IPV6_EXTHDR = 39
OFPVID_NONE = 0
OFPVID_PRESENT = 4096
OFPIEH_INVALID = 0
OFPIEH_NONEXT = 1
OFPIEH_ESP = 2
OFPIEH_AUTH = 4
OFPIEH_DEST = 8
OFPIEH_FRAG = 16
OFPIEH_ROUTER = 32
OFPIEH_HOP = 64
OFPIEH_UNREP = 128
OFPIEH_UNSEQ = 256
OFPAT_OUTPUT = 0
OFPAT_COPY_TTL_OUT = 11
OFPAT_COPY_TTL_IN = 12
OFPAT_SET_MPLS_TTL = 15
OFPAT_DEC_MPLS_TTL = 16
OFPAT_PUSH_VLAN = 17
OFPAT_POP_VLAN = 18
OFPAT_PUSH_MPLS = 19
OFPAT_POP_MPLS = 20
OFPAT_SET_QUEUE = 21
OFPAT_GROUP = 22
OFPAT_SET_NW_TTL = 23
OFPAT_DEC_NW_TTL = 24
OFPAT_SET_FIELD = 25
OFPAT_PUSH_PBB = 26
OFPAT_POP_PBB = 27
OFPAT_EXPERIMENTER = 65535
OFPCML_INVALID = 0
OFPCML_MAX = 65509
OFPCML_NO_BUFFER = 65535
OFPIT_INVALID = 0
OFPIT_GOTO_TABLE = 1
OFPIT_WRITE_METADATA = 2
OFPIT_WRITE_ACTIONS = 3
OFPIT_APPLY_ACTIONS = 4
OFPIT_CLEAR_ACTIONS = 5
OFPIT_METER = 6
OFPIT_EXPERIMENTER = 65535
OFPFC_ADD = 0
OFPFC_MODIFY = 1
OFPFC_MODIFY_STRICT = 2
OFPFC_DELETE = 3
OFPFC_DELETE_STRICT = 4
OFPFF_INVALID = 0
OFPFF_SEND_FLOW_REM = 1
OFPFF_CHECK_OVERLAP = 2
OFPFF_RESET_COUNTS = 4
OFPFF_NO_PKT_COUNTS = 8
OFPFF_NO_BYT_COUNTS = 16
OFPG_INVALID = 0
OFPG_MAX = 2147483392
OFPG_ALL = 2147483644
OFPG_ANY = 2147483647
OFPGC_ADD = 0
OFPGC_MODIFY = 1
OFPGC_DELETE = 2
OFPGT_ALL = 0
OFPGT_SELECT = 1
OFPGT_INDIRECT = 2
OFPGT_FF = 3
OFPR_NO_MATCH = 0
OFPR_ACTION = 1
OFPR_INVALID_TTL = 2
OFPRR_IDLE_TIMEOUT = 0
OFPRR_HARD_TIMEOUT = 1
OFPRR_DELETE = 2
OFPRR_GROUP_DELETE = 3
OFPRR_METER_DELETE = 4
OFPM_ZERO = 0
OFPM_MAX = 2147418112
OFPM_SLOWPATH = 2147483645
OFPM_CONTROLLER = 2147483646
OFPM_ALL = 2147483647
OFPMBT_INVALID = 0
OFPMBT_DROP = 1
OFPMBT_DSCP_REMARK = 2
OFPMBT_EXPERIMENTER = 65535
OFPMC_ADD = 0
OFPMC_MODIFY = 1
OFPMC_DELETE = 2
OFPMF_INVALID = 0
OFPMF_KBPS = 1
OFPMF_PKTPS = 2
OFPMF_BURST = 4
OFPMF_STATS = 8
OFPET_HELLO_FAILED = 0
OFPET_BAD_REQUEST = 1
OFPET_BAD_ACTION = 2
OFPET_BAD_INSTRUCTION = 3
OFPET_BAD_MATCH = 4
OFPET_FLOW_MOD_FAILED = 5
OFPET_GROUP_MOD_FAILED = 6
OFPET_PORT_MOD_FAILED = 7
OFPET_TABLE_MOD_FAILED = 8
OFPET_QUEUE_OP_FAILED = 9
OFPET_SWITCH_CONFIG_FAILED = 10
OFPET_ROLE_REQUEST_FAILED = 11
OFPET_METER_MOD_FAILED = 12
OFPET_TABLE_FEATURES_FAILED = 13
OFPET_EXPERIMENTER = 65535
OFPHFC_INCOMPATIBLE = 0
OFPHFC_EPERM = 1
OFPBRC_BAD_VERSION = 0
OFPBRC_BAD_TYPE = 1
OFPBRC_BAD_MULTIPART = 2
OFPBRC_BAD_EXPERIMENTER = 3
OFPBRC_BAD_EXP_TYPE = 4
OFPBRC_EPERM = 5
OFPBRC_BAD_LEN = 6
OFPBRC_BUFFER_EMPTY = 7
OFPBRC_BUFFER_UNKNOWN = 8
OFPBRC_BAD_TABLE_ID = 9
OFPBRC_IS_SLAVE = 10
OFPBRC_BAD_PORT = 11
OFPBRC_BAD_PACKET = 12
OFPBRC_MULTIPART_BUFFER_OVERFLOW = 13
OFPBAC_BAD_TYPE = 0
OFPBAC_BAD_LEN = 1
OFPBAC_BAD_EXPERIMENTER = 2
OFPBAC_BAD_EXP_TYPE = 3
OFPBAC_BAD_OUT_PORT = 4
OFPBAC_BAD_ARGUMENT = 5
OFPBAC_EPERM = 6
OFPBAC_TOO_MANY = 7
OFPBAC_BAD_QUEUE = 8
OFPBAC_BAD_OUT_GROUP = 9
OFPBAC_MATCH_INCONSISTENT = 10
OFPBAC_UNSUPPORTED_ORDER = 11
OFPBAC_BAD_TAG = 12
OFPBAC_BAD_SET_TYPE = 13
OFPBAC_BAD_SET_LEN = 14
OFPBAC_BAD_SET_ARGUMENT = 15
OFPBIC_UNKNOWN_INST = 0
OFPBIC_UNSUP_INST = 1
OFPBIC_BAD_TABLE_ID = 2
OFPBIC_UNSUP_METADATA = 3
OFPBIC_UNSUP_METADATA_MASK = 4
OFPBIC_BAD_EXPERIMENTER = 5
OFPBIC_BAD_EXP_TYPE = 6
OFPBIC_BAD_LEN = 7
OFPBIC_EPERM = 8
OFPBMC_BAD_TYPE = 0
OFPBMC_BAD_LEN = 1
OFPBMC_BAD_TAG = 2
OFPBMC_BAD_DL_ADDR_MASK = 3
OFPBMC_BAD_NW_ADDR_MASK = 4
OFPBMC_BAD_WILDCARDS = 5
OFPBMC_BAD_FIELD = 6
OFPBMC_BAD_VALUE = 7
OFPBMC_BAD_MASK = 8
OFPBMC_BAD_PREREQ = 9
OFPBMC_DUP_FIELD = 10
OFPBMC_EPERM = 11
OFPFMFC_UNKNOWN = 0
OFPFMFC_TABLE_FULL = 1
OFPFMFC_BAD_TABLE_ID = 2
OFPFMFC_OVERLAP = 3
OFPFMFC_EPERM = 4
OFPFMFC_BAD_TIMEOUT = 5
OFPFMFC_BAD_COMMAND = 6
OFPFMFC_BAD_FLAGS = 7
OFPGMFC_GROUP_EXISTS = 0
OFPGMFC_INVALID_GROUP = 1
OFPGMFC_WEIGHT_UNSUPPORTED = 2
OFPGMFC_OUT_OF_GROUPS = 3
OFPGMFC_OUT_OF_BUCKETS = 4
OFPGMFC_CHAINING_UNSUPPORTED = 5
OFPGMFC_WATCH_UNSUPPORTED = 6
OFPGMFC_LOOP = 7
OFPGMFC_UNKNOWN_GROUP = 8
OFPGMFC_CHAINED_GROUP = 9
OFPGMFC_BAD_TYPE = 10
OFPGMFC_BAD_COMMAND = 11
OFPGMFC_BAD_BUCKET = 12
OFPGMFC_BAD_WATCH = 13
OFPGMFC_EPERM = 14
OFPPMFC_BAD_PORT = 0
OFPPMFC_BAD_HW_ADDR = 1
OFPPMFC_BAD_CONFIG = 2
OFPPMFC_BAD_ADVERTISE = 3
OFPPMFC_EPERM = 4
OFPTMFC_BAD_TABLE = 0
OFPTMFC_BAD_CONFIG = 1
OFPTMFC_EPERM = 2
OFPQOFC_BAD_PORT = 0
OFPQOFC_BAD_QUEUE = 1
OFPQOFC_EPERM = 2
OFPSCFC_BAD_FLAGS = 0
OFPSCFC_BAD_LEN = 1
OFPSCFC_EPERM = 2
OFPRRFC_STALE = 0
OFPRRFC_UNSUP = 1
OFPRRFC_BAD_ROLE = 2
OFPMMFC_UNKNOWN = 0
OFPMMFC_METER_EXISTS = 1
OFPMMFC_INVALID_METER = 2
OFPMMFC_UNKNOWN_METER = 3
OFPMMFC_BAD_COMMAND = 4
OFPMMFC_BAD_FLAGS = 5
OFPMMFC_BAD_RATE = 6
OFPMMFC_BAD_BURST = 7
OFPMMFC_BAD_BAND = 8
OFPMMFC_BAD_BAND_VALUE = 9
OFPMMFC_OUT_OF_METERS = 10
OFPMMFC_OUT_OF_BANDS = 11
OFPTFFC_BAD_TABLE = 0
OFPTFFC_BAD_METADATA = 1
OFPTFFC_BAD_TYPE = 2
OFPTFFC_BAD_LEN = 3
OFPTFFC_BAD_ARGUMENT = 4
OFPTFFC_EPERM = 5
OFPMP_DESC = 0
OFPMP_FLOW = 1
OFPMP_AGGREGATE = 2
OFPMP_TABLE = 3
OFPMP_PORT_STATS = 4
OFPMP_QUEUE = 5
OFPMP_GROUP = 6
OFPMP_GROUP_DESC = 7
OFPMP_GROUP_FEATURES = 8
OFPMP_METER = 9
OFPMP_METER_CONFIG = 10
OFPMP_METER_FEATURES = 11
OFPMP_TABLE_FEATURES = 12
OFPMP_PORT_DESC = 13
OFPMP_EXPERIMENTER = 65535
OFPMPF_REQ_INVALID = 0
OFPMPF_REQ_MORE = 1
OFPMPF_REPLY_INVALID = 0
OFPMPF_REPLY_MORE = 1
OFPTFPT_INSTRUCTIONS = 0
OFPTFPT_INSTRUCTIONS_MISS = 1
OFPTFPT_NEXT_TABLES = 2
OFPTFPT_NEXT_TABLES_MISS = 3
OFPTFPT_WRITE_ACTIONS = 4
OFPTFPT_WRITE_ACTIONS_MISS = 5
OFPTFPT_APPLY_ACTIONS = 6
OFPTFPT_APPLY_ACTIONS_MISS = 7
OFPTFPT_MATCH = 8
OFPTFPT_WILDCARDS = 10
OFPTFPT_WRITE_SETFIELD = 12
OFPTFPT_WRITE_SETFIELD_MISS = 13
OFPTFPT_APPLY_SETFIELD = 14
OFPTFPT_APPLY_SETFIELD_MISS = 15
OFPTFPT_EXPERIMENTER = 65534
OFPTFPT_EXPERIMENTER_MISS = 65535
OFPGFC_INVALID = 0
OFPGFC_SELECT_WEIGHT = 1
OFPGFC_SELECT_LIVENESS = 2
OFPGFC_CHAINING = 4
OFPGFC_CHAINING_CHECKS = 8
OFPQT_INVALID = 0
OFPQT_MIN_RATE = 1
OFPQT_MAX_RATE = 2
OFPQT_EXPERIMENTER = 65535
OFPCR_ROLE_NOCHANGE = 0
OFPCR_ROLE_EQUAL = 1
OFPCR_ROLE_MASTER = 2
OFPCR_ROLE_SLAVE = 3



_OFP_HEADER = _descriptor.Descriptor(
  name='ofp_header',
  full_name='openflow_13.ofp_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='version', full_name='openflow_13.ofp_header.version', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_header.type', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='xid', full_name='openflow_13.ofp_header.xid', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=34,
  serialized_end=113,
)


_OFP_HELLO_ELEM_HEADER = _descriptor.Descriptor(
  name='ofp_hello_elem_header',
  full_name='openflow_13.ofp_hello_elem_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_hello_elem_header.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='versionbitmap', full_name='openflow_13.ofp_hello_elem_header.versionbitmap', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='element', full_name='openflow_13.ofp_hello_elem_header.element',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=116,
  serialized_end=266,
)


_OFP_HELLO_ELEM_VERSIONBITMAP = _descriptor.Descriptor(
  name='ofp_hello_elem_versionbitmap',
  full_name='openflow_13.ofp_hello_elem_versionbitmap',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='bitmaps', full_name='openflow_13.ofp_hello_elem_versionbitmap.bitmaps', index=0,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=268,
  serialized_end=315,
)


_OFP_HELLO = _descriptor.Descriptor(
  name='ofp_hello',
  full_name='openflow_13.ofp_hello',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='elements', full_name='openflow_13.ofp_hello.elements', index=0,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=317,
  serialized_end=382,
)


_OFP_SWITCH_CONFIG = _descriptor.Descriptor(
  name='ofp_switch_config',
  full_name='openflow_13.ofp_switch_config',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='flags', full_name='openflow_13.ofp_switch_config.flags', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='miss_send_len', full_name='openflow_13.ofp_switch_config.miss_send_len', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=384,
  serialized_end=441,
)


_OFP_TABLE_MOD = _descriptor.Descriptor(
  name='ofp_table_mod',
  full_name='openflow_13.ofp_table_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_table_mod.table_id', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='config', full_name='openflow_13.ofp_table_mod.config', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=443,
  serialized_end=492,
)


_OFP_PORT = _descriptor.Descriptor(
  name='ofp_port',
  full_name='openflow_13.ofp_port',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow_13.ofp_port.port_no', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='hw_addr', full_name='openflow_13.ofp_port.hw_addr', index=1,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='name', full_name='openflow_13.ofp_port.name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='config', full_name='openflow_13.ofp_port.config', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='state', full_name='openflow_13.ofp_port.state', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='curr', full_name='openflow_13.ofp_port.curr', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='advertised', full_name='openflow_13.ofp_port.advertised', index=6,
      number=7, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='supported', full_name='openflow_13.ofp_port.supported', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='peer', full_name='openflow_13.ofp_port.peer', index=8,
      number=9, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='curr_speed', full_name='openflow_13.ofp_port.curr_speed', index=9,
      number=10, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_speed', full_name='openflow_13.ofp_port.max_speed', index=10,
      number=11, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=495,
  serialized_end=690,
)


_OFP_SWITCH_FEATURES = _descriptor.Descriptor(
  name='ofp_switch_features',
  full_name='openflow_13.ofp_switch_features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='datapath_id', full_name='openflow_13.ofp_switch_features.datapath_id', index=0,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='n_buffers', full_name='openflow_13.ofp_switch_features.n_buffers', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='n_tables', full_name='openflow_13.ofp_switch_features.n_tables', index=2,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='auxiliary_id', full_name='openflow_13.ofp_switch_features.auxiliary_id', index=3,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='capabilities', full_name='openflow_13.ofp_switch_features.capabilities', index=4,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=692,
  serialized_end=815,
)


_OFP_PORT_STATUS = _descriptor.Descriptor(
  name='ofp_port_status',
  full_name='openflow_13.ofp_port_status',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='reason', full_name='openflow_13.ofp_port_status.reason', index=0,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='desc', full_name='openflow_13.ofp_port_status.desc', index=1,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=817,
  serialized_end=917,
)


_OFP_PORT_MOD = _descriptor.Descriptor(
  name='ofp_port_mod',
  full_name='openflow_13.ofp_port_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow_13.ofp_port_mod.port_no', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='hw_addr', full_name='openflow_13.ofp_port_mod.hw_addr', index=1,
      number=3, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='config', full_name='openflow_13.ofp_port_mod.config', index=2,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='mask', full_name='openflow_13.ofp_port_mod.mask', index=3,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='advertise', full_name='openflow_13.ofp_port_mod.advertise', index=4,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=919,
  serialized_end=1016,
)


_OFP_MATCH = _descriptor.Descriptor(
  name='ofp_match',
  full_name='openflow_13.ofp_match',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_match.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='oxm_fields', full_name='openflow_13.ofp_match.oxm_fields', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1018,
  serialized_end=1120,
)


_OFP_OXM_FIELD = _descriptor.Descriptor(
  name='ofp_oxm_field',
  full_name='openflow_13.ofp_oxm_field',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='oxm_class', full_name='openflow_13.ofp_oxm_field.oxm_class', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ofb_field', full_name='openflow_13.ofp_oxm_field.ofb_field', index=1,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter_field', full_name='openflow_13.ofp_oxm_field.experimenter_field', index=2,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='field', full_name='openflow_13.ofp_oxm_field.field',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=1123,
  serialized_end=1318,
)


_OFP_OXM_OFB_FIELD = _descriptor.Descriptor(
  name='ofp_oxm_ofb_field',
  full_name='openflow_13.ofp_oxm_ofb_field',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_oxm_ofb_field.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='has_mask', full_name='openflow_13.ofp_oxm_ofb_field.has_mask', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='port', full_name='openflow_13.ofp_oxm_ofb_field.port', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='physical_port', full_name='openflow_13.ofp_oxm_ofb_field.physical_port', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='table_metadata', full_name='openflow_13.ofp_oxm_ofb_field.table_metadata', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='eth_dst', full_name='openflow_13.ofp_oxm_ofb_field.eth_dst', index=5,
      number=6, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='eth_src', full_name='openflow_13.ofp_oxm_ofb_field.eth_src', index=6,
      number=7, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='eth_type', full_name='openflow_13.ofp_oxm_ofb_field.eth_type', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='vlan_vid', full_name='openflow_13.ofp_oxm_ofb_field.vlan_vid', index=8,
      number=9, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='vlan_pcp', full_name='openflow_13.ofp_oxm_ofb_field.vlan_pcp', index=9,
      number=10, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ip_dscp', full_name='openflow_13.ofp_oxm_ofb_field.ip_dscp', index=10,
      number=11, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ip_ecn', full_name='openflow_13.ofp_oxm_ofb_field.ip_ecn', index=11,
      number=12, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ip_proto', full_name='openflow_13.ofp_oxm_ofb_field.ip_proto', index=12,
      number=13, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv4_src', full_name='openflow_13.ofp_oxm_ofb_field.ipv4_src', index=13,
      number=14, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv4_dst', full_name='openflow_13.ofp_oxm_ofb_field.ipv4_dst', index=14,
      number=15, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tcp_src', full_name='openflow_13.ofp_oxm_ofb_field.tcp_src', index=15,
      number=16, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tcp_dst', full_name='openflow_13.ofp_oxm_ofb_field.tcp_dst', index=16,
      number=17, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='udp_src', full_name='openflow_13.ofp_oxm_ofb_field.udp_src', index=17,
      number=18, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='udp_dst', full_name='openflow_13.ofp_oxm_ofb_field.udp_dst', index=18,
      number=19, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='sctp_src', full_name='openflow_13.ofp_oxm_ofb_field.sctp_src', index=19,
      number=20, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='sctp_dst', full_name='openflow_13.ofp_oxm_ofb_field.sctp_dst', index=20,
      number=21, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='icmpv4_type', full_name='openflow_13.ofp_oxm_ofb_field.icmpv4_type', index=21,
      number=22, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='icmpv4_code', full_name='openflow_13.ofp_oxm_ofb_field.icmpv4_code', index=22,
      number=23, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='arp_op', full_name='openflow_13.ofp_oxm_ofb_field.arp_op', index=23,
      number=24, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='arp_spa', full_name='openflow_13.ofp_oxm_ofb_field.arp_spa', index=24,
      number=25, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='arp_tpa', full_name='openflow_13.ofp_oxm_ofb_field.arp_tpa', index=25,
      number=26, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='arp_sha', full_name='openflow_13.ofp_oxm_ofb_field.arp_sha', index=26,
      number=27, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='arp_tha', full_name='openflow_13.ofp_oxm_ofb_field.arp_tha', index=27,
      number=28, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_src', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_src', index=28,
      number=29, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_dst', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_dst', index=29,
      number=30, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_flabel', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_flabel', index=30,
      number=31, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='icmpv6_type', full_name='openflow_13.ofp_oxm_ofb_field.icmpv6_type', index=31,
      number=32, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='icmpv6_code', full_name='openflow_13.ofp_oxm_ofb_field.icmpv6_code', index=32,
      number=33, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_nd_target', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_nd_target', index=33,
      number=34, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_nd_ssl', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_nd_ssl', index=34,
      number=35, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_nd_tll', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_nd_tll', index=35,
      number=36, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='mpls_label', full_name='openflow_13.ofp_oxm_ofb_field.mpls_label', index=36,
      number=37, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='mpls_tc', full_name='openflow_13.ofp_oxm_ofb_field.mpls_tc', index=37,
      number=38, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='mpls_bos', full_name='openflow_13.ofp_oxm_ofb_field.mpls_bos', index=38,
      number=39, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='pbb_isid', full_name='openflow_13.ofp_oxm_ofb_field.pbb_isid', index=39,
      number=40, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tunnel_id', full_name='openflow_13.ofp_oxm_ofb_field.tunnel_id', index=40,
      number=41, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_exthdr', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_exthdr', index=41,
      number=42, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='table_metadata_mask', full_name='openflow_13.ofp_oxm_ofb_field.table_metadata_mask', index=42,
      number=105, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='eth_dst_mask', full_name='openflow_13.ofp_oxm_ofb_field.eth_dst_mask', index=43,
      number=106, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='eth_src_mask', full_name='openflow_13.ofp_oxm_ofb_field.eth_src_mask', index=44,
      number=107, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='vlan_vid_mask', full_name='openflow_13.ofp_oxm_ofb_field.vlan_vid_mask', index=45,
      number=109, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv4_src_mask', full_name='openflow_13.ofp_oxm_ofb_field.ipv4_src_mask', index=46,
      number=114, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv4_dst_mask', full_name='openflow_13.ofp_oxm_ofb_field.ipv4_dst_mask', index=47,
      number=115, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='arp_spa_mask', full_name='openflow_13.ofp_oxm_ofb_field.arp_spa_mask', index=48,
      number=125, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='arp_tpa_mask', full_name='openflow_13.ofp_oxm_ofb_field.arp_tpa_mask', index=49,
      number=126, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_src_mask', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_src_mask', index=50,
      number=129, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_dst_mask', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_dst_mask', index=51,
      number=130, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_flabel_mask', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_flabel_mask', index=52,
      number=131, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='pbb_isid_mask', full_name='openflow_13.ofp_oxm_ofb_field.pbb_isid_mask', index=53,
      number=140, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tunnel_id_mask', full_name='openflow_13.ofp_oxm_ofb_field.tunnel_id_mask', index=54,
      number=141, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ipv6_exthdr_mask', full_name='openflow_13.ofp_oxm_ofb_field.ipv6_exthdr_mask', index=55,
      number=142, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='value', full_name='openflow_13.ofp_oxm_ofb_field.value',
      index=0, containing_type=None, fields=[]),
    _descriptor.OneofDescriptor(
      name='mask', full_name='openflow_13.ofp_oxm_ofb_field.mask',
      index=1, containing_type=None, fields=[]),
  ],
  serialized_start=1321,
  serialized_end=2612,
)


_OFP_OXM_EXPERIMENTER_FIELD = _descriptor.Descriptor(
  name='ofp_oxm_experimenter_field',
  full_name='openflow_13.ofp_oxm_experimenter_field',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='oxm_header', full_name='openflow_13.ofp_oxm_experimenter_field.oxm_header', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_oxm_experimenter_field.experimenter', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2614,
  serialized_end=2684,
)


_OFP_ACTION = _descriptor.Descriptor(
  name='ofp_action',
  full_name='openflow_13.ofp_action',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_action.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='output', full_name='openflow_13.ofp_action.output', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='mpls_ttl', full_name='openflow_13.ofp_action.mpls_ttl', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='push', full_name='openflow_13.ofp_action.push', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='pop_mpls', full_name='openflow_13.ofp_action.pop_mpls', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='group', full_name='openflow_13.ofp_action.group', index=5,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='nw_ttl', full_name='openflow_13.ofp_action.nw_ttl', index=6,
      number=7, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='set_field', full_name='openflow_13.ofp_action.set_field', index=7,
      number=8, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_action.experimenter', index=8,
      number=9, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='action', full_name='openflow_13.ofp_action.action',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=2687,
  serialized_end=3173,
)


_OFP_ACTION_OUTPUT = _descriptor.Descriptor(
  name='ofp_action_output',
  full_name='openflow_13.ofp_action_output',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port', full_name='openflow_13.ofp_action_output.port', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_len', full_name='openflow_13.ofp_action_output.max_len', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3175,
  serialized_end=3225,
)


_OFP_ACTION_MPLS_TTL = _descriptor.Descriptor(
  name='ofp_action_mpls_ttl',
  full_name='openflow_13.ofp_action_mpls_ttl',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='mpls_ttl', full_name='openflow_13.ofp_action_mpls_ttl.mpls_ttl', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3227,
  serialized_end=3266,
)


_OFP_ACTION_PUSH = _descriptor.Descriptor(
  name='ofp_action_push',
  full_name='openflow_13.ofp_action_push',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='ethertype', full_name='openflow_13.ofp_action_push.ethertype', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3268,
  serialized_end=3304,
)


_OFP_ACTION_POP_MPLS = _descriptor.Descriptor(
  name='ofp_action_pop_mpls',
  full_name='openflow_13.ofp_action_pop_mpls',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='ethertype', full_name='openflow_13.ofp_action_pop_mpls.ethertype', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3306,
  serialized_end=3346,
)


_OFP_ACTION_GROUP = _descriptor.Descriptor(
  name='ofp_action_group',
  full_name='openflow_13.ofp_action_group',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='group_id', full_name='openflow_13.ofp_action_group.group_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3348,
  serialized_end=3384,
)


_OFP_ACTION_NW_TTL = _descriptor.Descriptor(
  name='ofp_action_nw_ttl',
  full_name='openflow_13.ofp_action_nw_ttl',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='nw_ttl', full_name='openflow_13.ofp_action_nw_ttl.nw_ttl', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3386,
  serialized_end=3421,
)


_OFP_ACTION_SET_FIELD = _descriptor.Descriptor(
  name='ofp_action_set_field',
  full_name='openflow_13.ofp_action_set_field',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='field', full_name='openflow_13.ofp_action_set_field.field', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3423,
  serialized_end=3488,
)


_OFP_ACTION_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_action_experimenter',
  full_name='openflow_13.ofp_action_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_action_experimenter.experimenter', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_action_experimenter.data', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3490,
  serialized_end=3551,
)


_OFP_INSTRUCTION = _descriptor.Descriptor(
  name='ofp_instruction',
  full_name='openflow_13.ofp_instruction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_instruction.type', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='goto_table', full_name='openflow_13.ofp_instruction.goto_table', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='write_metadata', full_name='openflow_13.ofp_instruction.write_metadata', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='actions', full_name='openflow_13.ofp_instruction.actions', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='meter', full_name='openflow_13.ofp_instruction.meter', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_instruction.experimenter', index=5,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='data', full_name='openflow_13.ofp_instruction.data',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=3554,
  serialized_end=3904,
)


_OFP_INSTRUCTION_GOTO_TABLE = _descriptor.Descriptor(
  name='ofp_instruction_goto_table',
  full_name='openflow_13.ofp_instruction_goto_table',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_instruction_goto_table.table_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3906,
  serialized_end=3952,
)


_OFP_INSTRUCTION_WRITE_METADATA = _descriptor.Descriptor(
  name='ofp_instruction_write_metadata',
  full_name='openflow_13.ofp_instruction_write_metadata',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='metadata', full_name='openflow_13.ofp_instruction_write_metadata.metadata', index=0,
      number=1, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='metadata_mask', full_name='openflow_13.ofp_instruction_write_metadata.metadata_mask', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3954,
  serialized_end=4027,
)


_OFP_INSTRUCTION_ACTIONS = _descriptor.Descriptor(
  name='ofp_instruction_actions',
  full_name='openflow_13.ofp_instruction_actions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='actions', full_name='openflow_13.ofp_instruction_actions.actions', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4029,
  serialized_end=4096,
)


_OFP_INSTRUCTION_METER = _descriptor.Descriptor(
  name='ofp_instruction_meter',
  full_name='openflow_13.ofp_instruction_meter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='meter_id', full_name='openflow_13.ofp_instruction_meter.meter_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4098,
  serialized_end=4139,
)


_OFP_INSTRUCTION_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_instruction_experimenter',
  full_name='openflow_13.ofp_instruction_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_instruction_experimenter.experimenter', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_instruction_experimenter.data', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4141,
  serialized_end=4207,
)


_OFP_FLOW_MOD = _descriptor.Descriptor(
  name='ofp_flow_mod',
  full_name='openflow_13.ofp_flow_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='cookie', full_name='openflow_13.ofp_flow_mod.cookie', index=0,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cookie_mask', full_name='openflow_13.ofp_flow_mod.cookie_mask', index=1,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_flow_mod.table_id', index=2,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='command', full_name='openflow_13.ofp_flow_mod.command', index=3,
      number=5, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='idle_timeout', full_name='openflow_13.ofp_flow_mod.idle_timeout', index=4,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='hard_timeout', full_name='openflow_13.ofp_flow_mod.hard_timeout', index=5,
      number=7, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='priority', full_name='openflow_13.ofp_flow_mod.priority', index=6,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='buffer_id', full_name='openflow_13.ofp_flow_mod.buffer_id', index=7,
      number=9, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='out_port', full_name='openflow_13.ofp_flow_mod.out_port', index=8,
      number=10, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='out_group', full_name='openflow_13.ofp_flow_mod.out_group', index=9,
      number=11, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flags', full_name='openflow_13.ofp_flow_mod.flags', index=10,
      number=12, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='match', full_name='openflow_13.ofp_flow_mod.match', index=11,
      number=13, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='instructions', full_name='openflow_13.ofp_flow_mod.instructions', index=12,
      number=14, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4210,
  serialized_end=4555,
)


_OFP_BUCKET = _descriptor.Descriptor(
  name='ofp_bucket',
  full_name='openflow_13.ofp_bucket',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='weight', full_name='openflow_13.ofp_bucket.weight', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='watch_port', full_name='openflow_13.ofp_bucket.watch_port', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='watch_group', full_name='openflow_13.ofp_bucket.watch_group', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='actions', full_name='openflow_13.ofp_bucket.actions', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4557,
  serialized_end=4668,
)


_OFP_GROUP_MOD = _descriptor.Descriptor(
  name='ofp_group_mod',
  full_name='openflow_13.ofp_group_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='command', full_name='openflow_13.ofp_group_mod.command', index=0,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_group_mod.type', index=1,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='group_id', full_name='openflow_13.ofp_group_mod.group_id', index=2,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='buckets', full_name='openflow_13.ofp_group_mod.buckets', index=3,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4671,
  serialized_end=4842,
)


_OFP_PACKET_OUT = _descriptor.Descriptor(
  name='ofp_packet_out',
  full_name='openflow_13.ofp_packet_out',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='buffer_id', full_name='openflow_13.ofp_packet_out.buffer_id', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='in_port', full_name='openflow_13.ofp_packet_out.in_port', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='actions_len', full_name='openflow_13.ofp_packet_out.actions_len', index=2,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='actions', full_name='openflow_13.ofp_packet_out.actions', index=3,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_packet_out.data', index=4,
      number=6, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4845,
  serialized_end=4974,
)


_OFP_PACKET_IN = _descriptor.Descriptor(
  name='ofp_packet_in',
  full_name='openflow_13.ofp_packet_in',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='buffer_id', full_name='openflow_13.ofp_packet_in.buffer_id', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='total_len', full_name='openflow_13.ofp_packet_in.total_len', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='reason', full_name='openflow_13.ofp_packet_in.reason', index=2,
      number=4, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_packet_in.table_id', index=3,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cookie', full_name='openflow_13.ofp_packet_in.cookie', index=4,
      number=6, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='match', full_name='openflow_13.ofp_packet_in.match', index=5,
      number=7, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_packet_in.data', index=6,
      number=8, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4977,
  serialized_end=5168,
)


_OFP_FLOW_REMOVED = _descriptor.Descriptor(
  name='ofp_flow_removed',
  full_name='openflow_13.ofp_flow_removed',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='cookie', full_name='openflow_13.ofp_flow_removed.cookie', index=0,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='priority', full_name='openflow_13.ofp_flow_removed.priority', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='reason', full_name='openflow_13.ofp_flow_removed.reason', index=2,
      number=4, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_flow_removed.table_id', index=3,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_sec', full_name='openflow_13.ofp_flow_removed.duration_sec', index=4,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_nsec', full_name='openflow_13.ofp_flow_removed.duration_nsec', index=5,
      number=7, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='idle_timeout', full_name='openflow_13.ofp_flow_removed.idle_timeout', index=6,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='hard_timeout', full_name='openflow_13.ofp_flow_removed.hard_timeout', index=7,
      number=9, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='packet_count', full_name='openflow_13.ofp_flow_removed.packet_count', index=8,
      number=10, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='byte_count', full_name='openflow_13.ofp_flow_removed.byte_count', index=9,
      number=11, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='match', full_name='openflow_13.ofp_flow_removed.match', index=10,
      number=12, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5171,
  serialized_end=5465,
)


_OFP_METER_BAND_HEADER = _descriptor.Descriptor(
  name='ofp_meter_band_header',
  full_name='openflow_13.ofp_meter_band_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_meter_band_header.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='len', full_name='openflow_13.ofp_meter_band_header.len', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rate', full_name='openflow_13.ofp_meter_band_header.rate', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='burst_size', full_name='openflow_13.ofp_meter_band_header.burst_size', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5467,
  serialized_end=5585,
)


_OFP_METER_BAND_DROP = _descriptor.Descriptor(
  name='ofp_meter_band_drop',
  full_name='openflow_13.ofp_meter_band_drop',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_meter_band_drop.type', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='len', full_name='openflow_13.ofp_meter_band_drop.len', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rate', full_name='openflow_13.ofp_meter_band_drop.rate', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='burst_size', full_name='openflow_13.ofp_meter_band_drop.burst_size', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5587,
  serialized_end=5669,
)


_OFP_METER_BAND_DSCP_REMARK = _descriptor.Descriptor(
  name='ofp_meter_band_dscp_remark',
  full_name='openflow_13.ofp_meter_band_dscp_remark',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_meter_band_dscp_remark.type', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='len', full_name='openflow_13.ofp_meter_band_dscp_remark.len', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rate', full_name='openflow_13.ofp_meter_band_dscp_remark.rate', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='burst_size', full_name='openflow_13.ofp_meter_band_dscp_remark.burst_size', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='prec_level', full_name='openflow_13.ofp_meter_band_dscp_remark.prec_level', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5671,
  serialized_end=5780,
)


_OFP_METER_BAND_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_meter_band_experimenter',
  full_name='openflow_13.ofp_meter_band_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_meter_band_experimenter.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='len', full_name='openflow_13.ofp_meter_band_experimenter.len', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rate', full_name='openflow_13.ofp_meter_band_experimenter.rate', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='burst_size', full_name='openflow_13.ofp_meter_band_experimenter.burst_size', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_meter_band_experimenter.experimenter', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5783,
  serialized_end=5929,
)


_OFP_METER_MOD = _descriptor.Descriptor(
  name='ofp_meter_mod',
  full_name='openflow_13.ofp_meter_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow_13.ofp_meter_mod.header', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='command', full_name='openflow_13.ofp_meter_mod.command', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flags', full_name='openflow_13.ofp_meter_mod.flags', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='meter_id', full_name='openflow_13.ofp_meter_mod.meter_id', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bands', full_name='openflow_13.ofp_meter_mod.bands', index=4,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5932,
  serialized_end=6125,
)


_OFP_ERROR_MSG = _descriptor.Descriptor(
  name='ofp_error_msg',
  full_name='openflow_13.ofp_error_msg',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_error_msg.type', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='code', full_name='openflow_13.ofp_error_msg.code', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_error_msg.data', index=2,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6127,
  serialized_end=6184,
)


_OFP_ERROR_EXPERIMENTER_MSG = _descriptor.Descriptor(
  name='ofp_error_experimenter_msg',
  full_name='openflow_13.ofp_error_experimenter_msg',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_error_experimenter_msg.type', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='exp_type', full_name='openflow_13.ofp_error_experimenter_msg.exp_type', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_error_experimenter_msg.experimenter', index=2,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_error_experimenter_msg.data', index=3,
      number=5, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6186,
  serialized_end=6282,
)


_OFP_MULTIPART_REQUEST = _descriptor.Descriptor(
  name='ofp_multipart_request',
  full_name='openflow_13.ofp_multipart_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_multipart_request.type', index=0,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flags', full_name='openflow_13.ofp_multipart_request.flags', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='body', full_name='openflow_13.ofp_multipart_request.body', index=2,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6284,
  serialized_end=6383,
)


_OFP_MULTIPART_REPLY = _descriptor.Descriptor(
  name='ofp_multipart_reply',
  full_name='openflow_13.ofp_multipart_reply',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_multipart_reply.type', index=0,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flags', full_name='openflow_13.ofp_multipart_reply.flags', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='body', full_name='openflow_13.ofp_multipart_reply.body', index=2,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6385,
  serialized_end=6482,
)


_OFP_DESC = _descriptor.Descriptor(
  name='ofp_desc',
  full_name='openflow_13.ofp_desc',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='mfr_desc', full_name='openflow_13.ofp_desc.mfr_desc', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='hw_desc', full_name='openflow_13.ofp_desc.hw_desc', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='sw_desc', full_name='openflow_13.ofp_desc.sw_desc', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='serial_num', full_name='openflow_13.ofp_desc.serial_num', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='dp_desc', full_name='openflow_13.ofp_desc.dp_desc', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6484,
  serialized_end=6583,
)


_OFP_FLOW_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_flow_stats_request',
  full_name='openflow_13.ofp_flow_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_flow_stats_request.table_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='out_port', full_name='openflow_13.ofp_flow_stats_request.out_port', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='out_group', full_name='openflow_13.ofp_flow_stats_request.out_group', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cookie', full_name='openflow_13.ofp_flow_stats_request.cookie', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cookie_mask', full_name='openflow_13.ofp_flow_stats_request.cookie_mask', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='match', full_name='openflow_13.ofp_flow_stats_request.match', index=5,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6586,
  serialized_end=6741,
)


_OFP_FLOW_STATS = _descriptor.Descriptor(
  name='ofp_flow_stats',
  full_name='openflow_13.ofp_flow_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_flow_stats.table_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_sec', full_name='openflow_13.ofp_flow_stats.duration_sec', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_nsec', full_name='openflow_13.ofp_flow_stats.duration_nsec', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='priority', full_name='openflow_13.ofp_flow_stats.priority', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='idle_timeout', full_name='openflow_13.ofp_flow_stats.idle_timeout', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='hard_timeout', full_name='openflow_13.ofp_flow_stats.hard_timeout', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flags', full_name='openflow_13.ofp_flow_stats.flags', index=6,
      number=7, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cookie', full_name='openflow_13.ofp_flow_stats.cookie', index=7,
      number=8, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='packet_count', full_name='openflow_13.ofp_flow_stats.packet_count', index=8,
      number=9, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='byte_count', full_name='openflow_13.ofp_flow_stats.byte_count', index=9,
      number=10, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='match', full_name='openflow_13.ofp_flow_stats.match', index=10,
      number=12, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='instructions', full_name='openflow_13.ofp_flow_stats.instructions', index=11,
      number=13, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6744,
  serialized_end=7049,
)


_OFP_AGGREGATE_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_aggregate_stats_request',
  full_name='openflow_13.ofp_aggregate_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_aggregate_stats_request.table_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='out_port', full_name='openflow_13.ofp_aggregate_stats_request.out_port', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='out_group', full_name='openflow_13.ofp_aggregate_stats_request.out_group', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cookie', full_name='openflow_13.ofp_aggregate_stats_request.cookie', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cookie_mask', full_name='openflow_13.ofp_aggregate_stats_request.cookie_mask', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='match', full_name='openflow_13.ofp_aggregate_stats_request.match', index=5,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7052,
  serialized_end=7212,
)


_OFP_AGGREGATE_STATS_REPLY = _descriptor.Descriptor(
  name='ofp_aggregate_stats_reply',
  full_name='openflow_13.ofp_aggregate_stats_reply',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='packet_count', full_name='openflow_13.ofp_aggregate_stats_reply.packet_count', index=0,
      number=1, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='byte_count', full_name='openflow_13.ofp_aggregate_stats_reply.byte_count', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flow_count', full_name='openflow_13.ofp_aggregate_stats_reply.flow_count', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7214,
  serialized_end=7303,
)


_OFP_TABLE_FEATURE_PROPERTY = _descriptor.Descriptor(
  name='ofp_table_feature_property',
  full_name='openflow_13.ofp_table_feature_property',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_table_feature_property.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='instructions', full_name='openflow_13.ofp_table_feature_property.instructions', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='next_tables', full_name='openflow_13.ofp_table_feature_property.next_tables', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='actions', full_name='openflow_13.ofp_table_feature_property.actions', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='oxm', full_name='openflow_13.ofp_table_feature_property.oxm', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_table_feature_property.experimenter', index=5,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='value', full_name='openflow_13.ofp_table_feature_property.value',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=7306,
  serialized_end=7739,
)


_OFP_TABLE_FEATURE_PROP_INSTRUCTIONS = _descriptor.Descriptor(
  name='ofp_table_feature_prop_instructions',
  full_name='openflow_13.ofp_table_feature_prop_instructions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='instructions', full_name='openflow_13.ofp_table_feature_prop_instructions.instructions', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7741,
  serialized_end=7830,
)


_OFP_TABLE_FEATURE_PROP_NEXT_TABLES = _descriptor.Descriptor(
  name='ofp_table_feature_prop_next_tables',
  full_name='openflow_13.ofp_table_feature_prop_next_tables',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='next_table_ids', full_name='openflow_13.ofp_table_feature_prop_next_tables.next_table_ids', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7832,
  serialized_end=7892,
)


_OFP_TABLE_FEATURE_PROP_ACTIONS = _descriptor.Descriptor(
  name='ofp_table_feature_prop_actions',
  full_name='openflow_13.ofp_table_feature_prop_actions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='actions', full_name='openflow_13.ofp_table_feature_prop_actions.actions', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7894,
  serialized_end=7968,
)


_OFP_TABLE_FEATURE_PROP_OXM = _descriptor.Descriptor(
  name='ofp_table_feature_prop_oxm',
  full_name='openflow_13.ofp_table_feature_prop_oxm',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='oxm_ids', full_name='openflow_13.ofp_table_feature_prop_oxm.oxm_ids', index=0,
      number=3, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7970,
  serialized_end=8015,
)


_OFP_TABLE_FEATURE_PROP_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_table_feature_prop_experimenter',
  full_name='openflow_13.ofp_table_feature_prop_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_table_feature_prop_experimenter.experimenter', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='exp_type', full_name='openflow_13.ofp_table_feature_prop_experimenter.exp_type', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter_data', full_name='openflow_13.ofp_table_feature_prop_experimenter.experimenter_data', index=2,
      number=4, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8017,
  serialized_end=8121,
)


_OFP_TABLE_FEATURES = _descriptor.Descriptor(
  name='ofp_table_features',
  full_name='openflow_13.ofp_table_features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_table_features.table_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='name', full_name='openflow_13.ofp_table_features.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='metadata_match', full_name='openflow_13.ofp_table_features.metadata_match', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='metadata_write', full_name='openflow_13.ofp_table_features.metadata_write', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='config', full_name='openflow_13.ofp_table_features.config', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_entries', full_name='openflow_13.ofp_table_features.max_entries', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='properties', full_name='openflow_13.ofp_table_features.properties', index=6,
      number=7, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8124,
  serialized_end=8322,
)


_OFP_TABLE_STATS = _descriptor.Descriptor(
  name='ofp_table_stats',
  full_name='openflow_13.ofp_table_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow_13.ofp_table_stats.table_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='active_count', full_name='openflow_13.ofp_table_stats.active_count', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='lookup_count', full_name='openflow_13.ofp_table_stats.lookup_count', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='matched_count', full_name='openflow_13.ofp_table_stats.matched_count', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8324,
  serialized_end=8426,
)


_OFP_PORT_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_port_stats_request',
  full_name='openflow_13.ofp_port_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow_13.ofp_port_stats_request.port_no', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8428,
  serialized_end=8469,
)


_OFP_PORT_STATS = _descriptor.Descriptor(
  name='ofp_port_stats',
  full_name='openflow_13.ofp_port_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow_13.ofp_port_stats.port_no', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rx_packets', full_name='openflow_13.ofp_port_stats.rx_packets', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_packets', full_name='openflow_13.ofp_port_stats.tx_packets', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rx_bytes', full_name='openflow_13.ofp_port_stats.rx_bytes', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_bytes', full_name='openflow_13.ofp_port_stats.tx_bytes', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rx_dropped', full_name='openflow_13.ofp_port_stats.rx_dropped', index=5,
      number=6, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_dropped', full_name='openflow_13.ofp_port_stats.tx_dropped', index=6,
      number=7, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rx_errors', full_name='openflow_13.ofp_port_stats.rx_errors', index=7,
      number=8, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_errors', full_name='openflow_13.ofp_port_stats.tx_errors', index=8,
      number=9, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rx_frame_err', full_name='openflow_13.ofp_port_stats.rx_frame_err', index=9,
      number=10, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rx_over_err', full_name='openflow_13.ofp_port_stats.rx_over_err', index=10,
      number=11, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rx_crc_err', full_name='openflow_13.ofp_port_stats.rx_crc_err', index=11,
      number=12, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='collisions', full_name='openflow_13.ofp_port_stats.collisions', index=12,
      number=13, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_sec', full_name='openflow_13.ofp_port_stats.duration_sec', index=13,
      number=14, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_nsec', full_name='openflow_13.ofp_port_stats.duration_nsec', index=14,
      number=15, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8472,
  serialized_end=8787,
)


_OFP_GROUP_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_group_stats_request',
  full_name='openflow_13.ofp_group_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='group_id', full_name='openflow_13.ofp_group_stats_request.group_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8789,
  serialized_end=8832,
)


_OFP_BUCKET_COUNTER = _descriptor.Descriptor(
  name='ofp_bucket_counter',
  full_name='openflow_13.ofp_bucket_counter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='packet_count', full_name='openflow_13.ofp_bucket_counter.packet_count', index=0,
      number=1, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='byte_count', full_name='openflow_13.ofp_bucket_counter.byte_count', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8834,
  serialized_end=8896,
)


_OFP_GROUP_STATS = _descriptor.Descriptor(
  name='ofp_group_stats',
  full_name='openflow_13.ofp_group_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='group_id', full_name='openflow_13.ofp_group_stats.group_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ref_count', full_name='openflow_13.ofp_group_stats.ref_count', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='packet_count', full_name='openflow_13.ofp_group_stats.packet_count', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='byte_count', full_name='openflow_13.ofp_group_stats.byte_count', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_sec', full_name='openflow_13.ofp_group_stats.duration_sec', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_nsec', full_name='openflow_13.ofp_group_stats.duration_nsec', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bucket_stats', full_name='openflow_13.ofp_group_stats.bucket_stats', index=6,
      number=7, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8899,
  serialized_end=9095,
)


_OFP_GROUP_DESC = _descriptor.Descriptor(
  name='ofp_group_desc',
  full_name='openflow_13.ofp_group_desc',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_group_desc.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='group_id', full_name='openflow_13.ofp_group_desc.group_id', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='buckets', full_name='openflow_13.ofp_group_desc.buckets', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9097,
  serialized_end=9216,
)


_OFP_GROUP_ENTRY = _descriptor.Descriptor(
  name='ofp_group_entry',
  full_name='openflow_13.ofp_group_entry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='desc', full_name='openflow_13.ofp_group_entry.desc', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='stats', full_name='openflow_13.ofp_group_entry.stats', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9218,
  serialized_end=9323,
)


_OFP_GROUP_FEATURES = _descriptor.Descriptor(
  name='ofp_group_features',
  full_name='openflow_13.ofp_group_features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='types', full_name='openflow_13.ofp_group_features.types', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='capabilities', full_name='openflow_13.ofp_group_features.capabilities', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_groups', full_name='openflow_13.ofp_group_features.max_groups', index=2,
      number=3, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='actions', full_name='openflow_13.ofp_group_features.actions', index=3,
      number=4, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9325,
  serialized_end=9419,
)


_OFP_METER_MULTIPART_REQUEST = _descriptor.Descriptor(
  name='ofp_meter_multipart_request',
  full_name='openflow_13.ofp_meter_multipart_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='meter_id', full_name='openflow_13.ofp_meter_multipart_request.meter_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9421,
  serialized_end=9468,
)


_OFP_METER_BAND_STATS = _descriptor.Descriptor(
  name='ofp_meter_band_stats',
  full_name='openflow_13.ofp_meter_band_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='packet_band_count', full_name='openflow_13.ofp_meter_band_stats.packet_band_count', index=0,
      number=1, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='byte_band_count', full_name='openflow_13.ofp_meter_band_stats.byte_band_count', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9470,
  serialized_end=9544,
)


_OFP_METER_STATS = _descriptor.Descriptor(
  name='ofp_meter_stats',
  full_name='openflow_13.ofp_meter_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='meter_id', full_name='openflow_13.ofp_meter_stats.meter_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flow_count', full_name='openflow_13.ofp_meter_stats.flow_count', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='packet_in_count', full_name='openflow_13.ofp_meter_stats.packet_in_count', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='byte_in_count', full_name='openflow_13.ofp_meter_stats.byte_in_count', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_sec', full_name='openflow_13.ofp_meter_stats.duration_sec', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_nsec', full_name='openflow_13.ofp_meter_stats.duration_nsec', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='band_stats', full_name='openflow_13.ofp_meter_stats.band_stats', index=6,
      number=7, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9547,
  serialized_end=9750,
)


_OFP_METER_CONFIG = _descriptor.Descriptor(
  name='ofp_meter_config',
  full_name='openflow_13.ofp_meter_config',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='flags', full_name='openflow_13.ofp_meter_config.flags', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='meter_id', full_name='openflow_13.ofp_meter_config.meter_id', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bands', full_name='openflow_13.ofp_meter_config.bands', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9752,
  serialized_end=9854,
)


_OFP_METER_FEATURES = _descriptor.Descriptor(
  name='ofp_meter_features',
  full_name='openflow_13.ofp_meter_features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='max_meter', full_name='openflow_13.ofp_meter_features.max_meter', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='band_types', full_name='openflow_13.ofp_meter_features.band_types', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='capabilities', full_name='openflow_13.ofp_meter_features.capabilities', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_bands', full_name='openflow_13.ofp_meter_features.max_bands', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_color', full_name='openflow_13.ofp_meter_features.max_color', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9856,
  serialized_end=9975,
)


_OFP_EXPERIMENTER_MULTIPART_HEADER = _descriptor.Descriptor(
  name='ofp_experimenter_multipart_header',
  full_name='openflow_13.ofp_experimenter_multipart_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_experimenter_multipart_header.experimenter', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='exp_type', full_name='openflow_13.ofp_experimenter_multipart_header.exp_type', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_experimenter_multipart_header.data', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9977,
  serialized_end=10066,
)


_OFP_EXPERIMENTER_HEADER = _descriptor.Descriptor(
  name='ofp_experimenter_header',
  full_name='openflow_13.ofp_experimenter_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_experimenter_header.experimenter', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='exp_type', full_name='openflow_13.ofp_experimenter_header.exp_type', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_experimenter_header.data', index=2,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10068,
  serialized_end=10147,
)


_OFP_QUEUE_PROP_HEADER = _descriptor.Descriptor(
  name='ofp_queue_prop_header',
  full_name='openflow_13.ofp_queue_prop_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='property', full_name='openflow_13.ofp_queue_prop_header.property', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='len', full_name='openflow_13.ofp_queue_prop_header.len', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10149,
  serialized_end=10203,
)


_OFP_QUEUE_PROP_MIN_RATE = _descriptor.Descriptor(
  name='ofp_queue_prop_min_rate',
  full_name='openflow_13.ofp_queue_prop_min_rate',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prop_header', full_name='openflow_13.ofp_queue_prop_min_rate.prop_header', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rate', full_name='openflow_13.ofp_queue_prop_min_rate.rate', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10205,
  serialized_end=10301,
)


_OFP_QUEUE_PROP_MAX_RATE = _descriptor.Descriptor(
  name='ofp_queue_prop_max_rate',
  full_name='openflow_13.ofp_queue_prop_max_rate',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prop_header', full_name='openflow_13.ofp_queue_prop_max_rate.prop_header', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rate', full_name='openflow_13.ofp_queue_prop_max_rate.rate', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10303,
  serialized_end=10399,
)


_OFP_QUEUE_PROP_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_queue_prop_experimenter',
  full_name='openflow_13.ofp_queue_prop_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prop_header', full_name='openflow_13.ofp_queue_prop_experimenter.prop_header', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow_13.ofp_queue_prop_experimenter.experimenter', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='openflow_13.ofp_queue_prop_experimenter.data', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10401,
  serialized_end=10523,
)


_OFP_PACKET_QUEUE = _descriptor.Descriptor(
  name='ofp_packet_queue',
  full_name='openflow_13.ofp_packet_queue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='queue_id', full_name='openflow_13.ofp_packet_queue.queue_id', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='port', full_name='openflow_13.ofp_packet_queue.port', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='properties', full_name='openflow_13.ofp_packet_queue.properties', index=2,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10525,
  serialized_end=10631,
)


_OFP_QUEUE_GET_CONFIG_REQUEST = _descriptor.Descriptor(
  name='ofp_queue_get_config_request',
  full_name='openflow_13.ofp_queue_get_config_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port', full_name='openflow_13.ofp_queue_get_config_request.port', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10633,
  serialized_end=10677,
)


_OFP_QUEUE_GET_CONFIG_REPLY = _descriptor.Descriptor(
  name='ofp_queue_get_config_reply',
  full_name='openflow_13.ofp_queue_get_config_reply',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port', full_name='openflow_13.ofp_queue_get_config_reply.port', index=0,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='queues', full_name='openflow_13.ofp_queue_get_config_reply.queues', index=1,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10679,
  serialized_end=10768,
)


_OFP_ACTION_SET_QUEUE = _descriptor.Descriptor(
  name='ofp_action_set_queue',
  full_name='openflow_13.ofp_action_set_queue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow_13.ofp_action_set_queue.type', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='queue_id', full_name='openflow_13.ofp_action_set_queue.queue_id', index=1,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10770,
  serialized_end=10824,
)


_OFP_QUEUE_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_queue_stats_request',
  full_name='openflow_13.ofp_queue_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow_13.ofp_queue_stats_request.port_no', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='queue_id', full_name='openflow_13.ofp_queue_stats_request.queue_id', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10826,
  serialized_end=10886,
)


_OFP_QUEUE_STATS = _descriptor.Descriptor(
  name='ofp_queue_stats',
  full_name='openflow_13.ofp_queue_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow_13.ofp_queue_stats.port_no', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='queue_id', full_name='openflow_13.ofp_queue_stats.queue_id', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_bytes', full_name='openflow_13.ofp_queue_stats.tx_bytes', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_packets', full_name='openflow_13.ofp_queue_stats.tx_packets', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_errors', full_name='openflow_13.ofp_queue_stats.tx_errors', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_sec', full_name='openflow_13.ofp_queue_stats.duration_sec', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duration_nsec', full_name='openflow_13.ofp_queue_stats.duration_nsec', index=6,
      number=7, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=10889,
  serialized_end=11043,
)


_OFP_ROLE_REQUEST = _descriptor.Descriptor(
  name='ofp_role_request',
  full_name='openflow_13.ofp_role_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='role', full_name='openflow_13.ofp_role_request.role', index=0,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='generation_id', full_name='openflow_13.ofp_role_request.generation_id', index=1,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=11045,
  serialized_end=11134,
)


_OFP_ASYNC_CONFIG = _descriptor.Descriptor(
  name='ofp_async_config',
  full_name='openflow_13.ofp_async_config',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='packet_in_mask', full_name='openflow_13.ofp_async_config.packet_in_mask', index=0,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='port_status_mask', full_name='openflow_13.ofp_async_config.port_status_mask', index=1,
      number=3, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flow_removed_mask', full_name='openflow_13.ofp_async_config.flow_removed_mask', index=2,
      number=4, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=11136,
  serialized_end=11231,
)

_OFP_HEADER.fields_by_name['type'].enum_type = _OFP_TYPE
_OFP_HELLO_ELEM_HEADER.fields_by_name['type'].enum_type = _OFP_HELLO_ELEM_TYPE
_OFP_HELLO_ELEM_HEADER.fields_by_name['versionbitmap'].message_type = _OFP_HELLO_ELEM_VERSIONBITMAP
_OFP_HELLO_ELEM_HEADER.oneofs_by_name['element'].fields.append(
  _OFP_HELLO_ELEM_HEADER.fields_by_name['versionbitmap'])
_OFP_HELLO_ELEM_HEADER.fields_by_name['versionbitmap'].containing_oneof = _OFP_HELLO_ELEM_HEADER.oneofs_by_name['element']
_OFP_HELLO.fields_by_name['elements'].message_type = _OFP_HELLO_ELEM_HEADER
_OFP_PORT_STATUS.fields_by_name['reason'].enum_type = _OFP_PORT_REASON
_OFP_PORT_STATUS.fields_by_name['desc'].message_type = _OFP_PORT
_OFP_MATCH.fields_by_name['type'].enum_type = _OFP_MATCH_TYPE
_OFP_MATCH.fields_by_name['oxm_fields'].message_type = _OFP_OXM_FIELD
_OFP_OXM_FIELD.fields_by_name['oxm_class'].enum_type = _OFP_OXM_CLASS
_OFP_OXM_FIELD.fields_by_name['ofb_field'].message_type = _OFP_OXM_OFB_FIELD
_OFP_OXM_FIELD.fields_by_name['experimenter_field'].message_type = _OFP_OXM_EXPERIMENTER_FIELD
_OFP_OXM_FIELD.oneofs_by_name['field'].fields.append(
  _OFP_OXM_FIELD.fields_by_name['ofb_field'])
_OFP_OXM_FIELD.fields_by_name['ofb_field'].containing_oneof = _OFP_OXM_FIELD.oneofs_by_name['field']
_OFP_OXM_FIELD.oneofs_by_name['field'].fields.append(
  _OFP_OXM_FIELD.fields_by_name['experimenter_field'])
_OFP_OXM_FIELD.fields_by_name['experimenter_field'].containing_oneof = _OFP_OXM_FIELD.oneofs_by_name['field']
_OFP_OXM_OFB_FIELD.fields_by_name['type'].enum_type = _OXM_OFB_FIELD_TYPES
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['port'])
_OFP_OXM_OFB_FIELD.fields_by_name['port'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['physical_port'])
_OFP_OXM_OFB_FIELD.fields_by_name['physical_port'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['table_metadata'])
_OFP_OXM_OFB_FIELD.fields_by_name['table_metadata'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['eth_dst'])
_OFP_OXM_OFB_FIELD.fields_by_name['eth_dst'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['eth_src'])
_OFP_OXM_OFB_FIELD.fields_by_name['eth_src'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['eth_type'])
_OFP_OXM_OFB_FIELD.fields_by_name['eth_type'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['vlan_vid'])
_OFP_OXM_OFB_FIELD.fields_by_name['vlan_vid'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['vlan_pcp'])
_OFP_OXM_OFB_FIELD.fields_by_name['vlan_pcp'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ip_dscp'])
_OFP_OXM_OFB_FIELD.fields_by_name['ip_dscp'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ip_ecn'])
_OFP_OXM_OFB_FIELD.fields_by_name['ip_ecn'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ip_proto'])
_OFP_OXM_OFB_FIELD.fields_by_name['ip_proto'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv4_src'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv4_src'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv4_dst'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv4_dst'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['tcp_src'])
_OFP_OXM_OFB_FIELD.fields_by_name['tcp_src'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['tcp_dst'])
_OFP_OXM_OFB_FIELD.fields_by_name['tcp_dst'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['udp_src'])
_OFP_OXM_OFB_FIELD.fields_by_name['udp_src'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['udp_dst'])
_OFP_OXM_OFB_FIELD.fields_by_name['udp_dst'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['sctp_src'])
_OFP_OXM_OFB_FIELD.fields_by_name['sctp_src'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['sctp_dst'])
_OFP_OXM_OFB_FIELD.fields_by_name['sctp_dst'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['icmpv4_type'])
_OFP_OXM_OFB_FIELD.fields_by_name['icmpv4_type'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['icmpv4_code'])
_OFP_OXM_OFB_FIELD.fields_by_name['icmpv4_code'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['arp_op'])
_OFP_OXM_OFB_FIELD.fields_by_name['arp_op'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['arp_spa'])
_OFP_OXM_OFB_FIELD.fields_by_name['arp_spa'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['arp_tpa'])
_OFP_OXM_OFB_FIELD.fields_by_name['arp_tpa'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['arp_sha'])
_OFP_OXM_OFB_FIELD.fields_by_name['arp_sha'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['arp_tha'])
_OFP_OXM_OFB_FIELD.fields_by_name['arp_tha'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_src'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_src'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_dst'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_dst'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_flabel'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_flabel'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['icmpv6_type'])
_OFP_OXM_OFB_FIELD.fields_by_name['icmpv6_type'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['icmpv6_code'])
_OFP_OXM_OFB_FIELD.fields_by_name['icmpv6_code'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_nd_target'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_nd_target'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_nd_ssl'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_nd_ssl'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_nd_tll'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_nd_tll'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['mpls_label'])
_OFP_OXM_OFB_FIELD.fields_by_name['mpls_label'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['mpls_tc'])
_OFP_OXM_OFB_FIELD.fields_by_name['mpls_tc'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['mpls_bos'])
_OFP_OXM_OFB_FIELD.fields_by_name['mpls_bos'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['pbb_isid'])
_OFP_OXM_OFB_FIELD.fields_by_name['pbb_isid'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['tunnel_id'])
_OFP_OXM_OFB_FIELD.fields_by_name['tunnel_id'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['value'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_exthdr'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_exthdr'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['value']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['table_metadata_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['table_metadata_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['eth_dst_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['eth_dst_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['eth_src_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['eth_src_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['vlan_vid_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['vlan_vid_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv4_src_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv4_src_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv4_dst_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv4_dst_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['arp_spa_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['arp_spa_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['arp_tpa_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['arp_tpa_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_src_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_src_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_dst_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_dst_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_flabel_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_flabel_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['pbb_isid_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['pbb_isid_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['tunnel_id_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['tunnel_id_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_OXM_OFB_FIELD.oneofs_by_name['mask'].fields.append(
  _OFP_OXM_OFB_FIELD.fields_by_name['ipv6_exthdr_mask'])
_OFP_OXM_OFB_FIELD.fields_by_name['ipv6_exthdr_mask'].containing_oneof = _OFP_OXM_OFB_FIELD.oneofs_by_name['mask']
_OFP_ACTION.fields_by_name['type'].enum_type = _OFP_ACTION_TYPE
_OFP_ACTION.fields_by_name['output'].message_type = _OFP_ACTION_OUTPUT
_OFP_ACTION.fields_by_name['mpls_ttl'].message_type = _OFP_ACTION_MPLS_TTL
_OFP_ACTION.fields_by_name['push'].message_type = _OFP_ACTION_PUSH
_OFP_ACTION.fields_by_name['pop_mpls'].message_type = _OFP_ACTION_POP_MPLS
_OFP_ACTION.fields_by_name['group'].message_type = _OFP_ACTION_GROUP
_OFP_ACTION.fields_by_name['nw_ttl'].message_type = _OFP_ACTION_NW_TTL
_OFP_ACTION.fields_by_name['set_field'].message_type = _OFP_ACTION_SET_FIELD
_OFP_ACTION.fields_by_name['experimenter'].message_type = _OFP_ACTION_EXPERIMENTER
_OFP_ACTION.oneofs_by_name['action'].fields.append(
  _OFP_ACTION.fields_by_name['output'])
_OFP_ACTION.fields_by_name['output'].containing_oneof = _OFP_ACTION.oneofs_by_name['action']
_OFP_ACTION.oneofs_by_name['action'].fields.append(
  _OFP_ACTION.fields_by_name['mpls_ttl'])
_OFP_ACTION.fields_by_name['mpls_ttl'].containing_oneof = _OFP_ACTION.oneofs_by_name['action']
_OFP_ACTION.oneofs_by_name['action'].fields.append(
  _OFP_ACTION.fields_by_name['push'])
_OFP_ACTION.fields_by_name['push'].containing_oneof = _OFP_ACTION.oneofs_by_name['action']
_OFP_ACTION.oneofs_by_name['action'].fields.append(
  _OFP_ACTION.fields_by_name['pop_mpls'])
_OFP_ACTION.fields_by_name['pop_mpls'].containing_oneof = _OFP_ACTION.oneofs_by_name['action']
_OFP_ACTION.oneofs_by_name['action'].fields.append(
  _OFP_ACTION.fields_by_name['group'])
_OFP_ACTION.fields_by_name['group'].containing_oneof = _OFP_ACTION.oneofs_by_name['action']
_OFP_ACTION.oneofs_by_name['action'].fields.append(
  _OFP_ACTION.fields_by_name['nw_ttl'])
_OFP_ACTION.fields_by_name['nw_ttl'].containing_oneof = _OFP_ACTION.oneofs_by_name['action']
_OFP_ACTION.oneofs_by_name['action'].fields.append(
  _OFP_ACTION.fields_by_name['set_field'])
_OFP_ACTION.fields_by_name['set_field'].containing_oneof = _OFP_ACTION.oneofs_by_name['action']
_OFP_ACTION.oneofs_by_name['action'].fields.append(
  _OFP_ACTION.fields_by_name['experimenter'])
_OFP_ACTION.fields_by_name['experimenter'].containing_oneof = _OFP_ACTION.oneofs_by_name['action']
_OFP_ACTION_SET_FIELD.fields_by_name['field'].message_type = _OFP_OXM_FIELD
_OFP_INSTRUCTION.fields_by_name['goto_table'].message_type = _OFP_INSTRUCTION_GOTO_TABLE
_OFP_INSTRUCTION.fields_by_name['write_metadata'].message_type = _OFP_INSTRUCTION_WRITE_METADATA
_OFP_INSTRUCTION.fields_by_name['actions'].message_type = _OFP_INSTRUCTION_ACTIONS
_OFP_INSTRUCTION.fields_by_name['meter'].message_type = _OFP_INSTRUCTION_METER
_OFP_INSTRUCTION.fields_by_name['experimenter'].message_type = _OFP_INSTRUCTION_EXPERIMENTER
_OFP_INSTRUCTION.oneofs_by_name['data'].fields.append(
  _OFP_INSTRUCTION.fields_by_name['goto_table'])
_OFP_INSTRUCTION.fields_by_name['goto_table'].containing_oneof = _OFP_INSTRUCTION.oneofs_by_name['data']
_OFP_INSTRUCTION.oneofs_by_name['data'].fields.append(
  _OFP_INSTRUCTION.fields_by_name['write_metadata'])
_OFP_INSTRUCTION.fields_by_name['write_metadata'].containing_oneof = _OFP_INSTRUCTION.oneofs_by_name['data']
_OFP_INSTRUCTION.oneofs_by_name['data'].fields.append(
  _OFP_INSTRUCTION.fields_by_name['actions'])
_OFP_INSTRUCTION.fields_by_name['actions'].containing_oneof = _OFP_INSTRUCTION.oneofs_by_name['data']
_OFP_INSTRUCTION.oneofs_by_name['data'].fields.append(
  _OFP_INSTRUCTION.fields_by_name['meter'])
_OFP_INSTRUCTION.fields_by_name['meter'].containing_oneof = _OFP_INSTRUCTION.oneofs_by_name['data']
_OFP_INSTRUCTION.oneofs_by_name['data'].fields.append(
  _OFP_INSTRUCTION.fields_by_name['experimenter'])
_OFP_INSTRUCTION.fields_by_name['experimenter'].containing_oneof = _OFP_INSTRUCTION.oneofs_by_name['data']
_OFP_INSTRUCTION_ACTIONS.fields_by_name['actions'].message_type = _OFP_ACTION
_OFP_FLOW_MOD.fields_by_name['command'].enum_type = _OFP_FLOW_MOD_COMMAND
_OFP_FLOW_MOD.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_FLOW_MOD.fields_by_name['instructions'].message_type = _OFP_INSTRUCTION
_OFP_BUCKET.fields_by_name['actions'].message_type = _OFP_ACTION
_OFP_GROUP_MOD.fields_by_name['command'].enum_type = _OFP_GROUP_MOD_COMMAND
_OFP_GROUP_MOD.fields_by_name['type'].enum_type = _OFP_GROUP_TYPE
_OFP_GROUP_MOD.fields_by_name['buckets'].message_type = _OFP_BUCKET
_OFP_PACKET_OUT.fields_by_name['actions'].message_type = _OFP_ACTION
_OFP_PACKET_IN.fields_by_name['reason'].enum_type = _OFP_PACKET_IN_REASON
_OFP_PACKET_IN.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_FLOW_REMOVED.fields_by_name['reason'].enum_type = _OFP_FLOW_REMOVED_REASON
_OFP_FLOW_REMOVED.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_METER_BAND_HEADER.fields_by_name['type'].enum_type = _OFP_METER_BAND_TYPE
_OFP_METER_BAND_EXPERIMENTER.fields_by_name['type'].enum_type = _OFP_METER_BAND_TYPE
_OFP_METER_MOD.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_METER_MOD.fields_by_name['command'].enum_type = _OFP_METER_MOD_COMMAND
_OFP_METER_MOD.fields_by_name['bands'].message_type = _OFP_METER_BAND_HEADER
_OFP_MULTIPART_REQUEST.fields_by_name['type'].enum_type = _OFP_MULTIPART_TYPE
_OFP_MULTIPART_REPLY.fields_by_name['type'].enum_type = _OFP_MULTIPART_TYPE
_OFP_FLOW_STATS_REQUEST.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_FLOW_STATS.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_FLOW_STATS.fields_by_name['instructions'].message_type = _OFP_INSTRUCTION
_OFP_AGGREGATE_STATS_REQUEST.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['type'].enum_type = _OFP_TABLE_FEATURE_PROP_TYPE
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['instructions'].message_type = _OFP_TABLE_FEATURE_PROP_INSTRUCTIONS
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['next_tables'].message_type = _OFP_TABLE_FEATURE_PROP_NEXT_TABLES
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['actions'].message_type = _OFP_TABLE_FEATURE_PROP_ACTIONS
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['oxm'].message_type = _OFP_TABLE_FEATURE_PROP_OXM
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['experimenter'].message_type = _OFP_TABLE_FEATURE_PROP_EXPERIMENTER
_OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value'].fields.append(
  _OFP_TABLE_FEATURE_PROPERTY.fields_by_name['instructions'])
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['instructions'].containing_oneof = _OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value']
_OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value'].fields.append(
  _OFP_TABLE_FEATURE_PROPERTY.fields_by_name['next_tables'])
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['next_tables'].containing_oneof = _OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value']
_OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value'].fields.append(
  _OFP_TABLE_FEATURE_PROPERTY.fields_by_name['actions'])
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['actions'].containing_oneof = _OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value']
_OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value'].fields.append(
  _OFP_TABLE_FEATURE_PROPERTY.fields_by_name['oxm'])
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['oxm'].containing_oneof = _OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value']
_OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value'].fields.append(
  _OFP_TABLE_FEATURE_PROPERTY.fields_by_name['experimenter'])
_OFP_TABLE_FEATURE_PROPERTY.fields_by_name['experimenter'].containing_oneof = _OFP_TABLE_FEATURE_PROPERTY.oneofs_by_name['value']
_OFP_TABLE_FEATURE_PROP_INSTRUCTIONS.fields_by_name['instructions'].message_type = _OFP_INSTRUCTION
_OFP_TABLE_FEATURE_PROP_ACTIONS.fields_by_name['actions'].message_type = _OFP_ACTION
_OFP_TABLE_FEATURES.fields_by_name['properties'].message_type = _OFP_TABLE_FEATURE_PROPERTY
_OFP_GROUP_STATS.fields_by_name['bucket_stats'].message_type = _OFP_BUCKET_COUNTER
_OFP_GROUP_DESC.fields_by_name['type'].enum_type = _OFP_GROUP_TYPE
_OFP_GROUP_DESC.fields_by_name['buckets'].message_type = _OFP_BUCKET
_OFP_GROUP_ENTRY.fields_by_name['desc'].message_type = _OFP_GROUP_DESC
_OFP_GROUP_ENTRY.fields_by_name['stats'].message_type = _OFP_GROUP_STATS
_OFP_METER_STATS.fields_by_name['band_stats'].message_type = _OFP_METER_BAND_STATS
_OFP_METER_CONFIG.fields_by_name['bands'].message_type = _OFP_METER_BAND_HEADER
_OFP_QUEUE_PROP_MIN_RATE.fields_by_name['prop_header'].message_type = _OFP_QUEUE_PROP_HEADER
_OFP_QUEUE_PROP_MAX_RATE.fields_by_name['prop_header'].message_type = _OFP_QUEUE_PROP_HEADER
_OFP_QUEUE_PROP_EXPERIMENTER.fields_by_name['prop_header'].message_type = _OFP_QUEUE_PROP_HEADER
_OFP_PACKET_QUEUE.fields_by_name['properties'].message_type = _OFP_QUEUE_PROP_HEADER
_OFP_QUEUE_GET_CONFIG_REPLY.fields_by_name['queues'].message_type = _OFP_PACKET_QUEUE
_OFP_ROLE_REQUEST.fields_by_name['role'].enum_type = _OFP_CONTROLLER_ROLE
DESCRIPTOR.message_types_by_name['ofp_header'] = _OFP_HEADER
DESCRIPTOR.message_types_by_name['ofp_hello_elem_header'] = _OFP_HELLO_ELEM_HEADER
DESCRIPTOR.message_types_by_name['ofp_hello_elem_versionbitmap'] = _OFP_HELLO_ELEM_VERSIONBITMAP
DESCRIPTOR.message_types_by_name['ofp_hello'] = _OFP_HELLO
DESCRIPTOR.message_types_by_name['ofp_switch_config'] = _OFP_SWITCH_CONFIG
DESCRIPTOR.message_types_by_name['ofp_table_mod'] = _OFP_TABLE_MOD
DESCRIPTOR.message_types_by_name['ofp_port'] = _OFP_PORT
DESCRIPTOR.message_types_by_name['ofp_switch_features'] = _OFP_SWITCH_FEATURES
DESCRIPTOR.message_types_by_name['ofp_port_status'] = _OFP_PORT_STATUS
DESCRIPTOR.message_types_by_name['ofp_port_mod'] = _OFP_PORT_MOD
DESCRIPTOR.message_types_by_name['ofp_match'] = _OFP_MATCH
DESCRIPTOR.message_types_by_name['ofp_oxm_field'] = _OFP_OXM_FIELD
DESCRIPTOR.message_types_by_name['ofp_oxm_ofb_field'] = _OFP_OXM_OFB_FIELD
DESCRIPTOR.message_types_by_name['ofp_oxm_experimenter_field'] = _OFP_OXM_EXPERIMENTER_FIELD
DESCRIPTOR.message_types_by_name['ofp_action'] = _OFP_ACTION
DESCRIPTOR.message_types_by_name['ofp_action_output'] = _OFP_ACTION_OUTPUT
DESCRIPTOR.message_types_by_name['ofp_action_mpls_ttl'] = _OFP_ACTION_MPLS_TTL
DESCRIPTOR.message_types_by_name['ofp_action_push'] = _OFP_ACTION_PUSH
DESCRIPTOR.message_types_by_name['ofp_action_pop_mpls'] = _OFP_ACTION_POP_MPLS
DESCRIPTOR.message_types_by_name['ofp_action_group'] = _OFP_ACTION_GROUP
DESCRIPTOR.message_types_by_name['ofp_action_nw_ttl'] = _OFP_ACTION_NW_TTL
DESCRIPTOR.message_types_by_name['ofp_action_set_field'] = _OFP_ACTION_SET_FIELD
DESCRIPTOR.message_types_by_name['ofp_action_experimenter'] = _OFP_ACTION_EXPERIMENTER
DESCRIPTOR.message_types_by_name['ofp_instruction'] = _OFP_INSTRUCTION
DESCRIPTOR.message_types_by_name['ofp_instruction_goto_table'] = _OFP_INSTRUCTION_GOTO_TABLE
DESCRIPTOR.message_types_by_name['ofp_instruction_write_metadata'] = _OFP_INSTRUCTION_WRITE_METADATA
DESCRIPTOR.message_types_by_name['ofp_instruction_actions'] = _OFP_INSTRUCTION_ACTIONS
DESCRIPTOR.message_types_by_name['ofp_instruction_meter'] = _OFP_INSTRUCTION_METER
DESCRIPTOR.message_types_by_name['ofp_instruction_experimenter'] = _OFP_INSTRUCTION_EXPERIMENTER
DESCRIPTOR.message_types_by_name['ofp_flow_mod'] = _OFP_FLOW_MOD
DESCRIPTOR.message_types_by_name['ofp_bucket'] = _OFP_BUCKET
DESCRIPTOR.message_types_by_name['ofp_group_mod'] = _OFP_GROUP_MOD
DESCRIPTOR.message_types_by_name['ofp_packet_out'] = _OFP_PACKET_OUT
DESCRIPTOR.message_types_by_name['ofp_packet_in'] = _OFP_PACKET_IN
DESCRIPTOR.message_types_by_name['ofp_flow_removed'] = _OFP_FLOW_REMOVED
DESCRIPTOR.message_types_by_name['ofp_meter_band_header'] = _OFP_METER_BAND_HEADER
DESCRIPTOR.message_types_by_name['ofp_meter_band_drop'] = _OFP_METER_BAND_DROP
DESCRIPTOR.message_types_by_name['ofp_meter_band_dscp_remark'] = _OFP_METER_BAND_DSCP_REMARK
DESCRIPTOR.message_types_by_name['ofp_meter_band_experimenter'] = _OFP_METER_BAND_EXPERIMENTER
DESCRIPTOR.message_types_by_name['ofp_meter_mod'] = _OFP_METER_MOD
DESCRIPTOR.message_types_by_name['ofp_error_msg'] = _OFP_ERROR_MSG
DESCRIPTOR.message_types_by_name['ofp_error_experimenter_msg'] = _OFP_ERROR_EXPERIMENTER_MSG
DESCRIPTOR.message_types_by_name['ofp_multipart_request'] = _OFP_MULTIPART_REQUEST
DESCRIPTOR.message_types_by_name['ofp_multipart_reply'] = _OFP_MULTIPART_REPLY
DESCRIPTOR.message_types_by_name['ofp_desc'] = _OFP_DESC
DESCRIPTOR.message_types_by_name['ofp_flow_stats_request'] = _OFP_FLOW_STATS_REQUEST
DESCRIPTOR.message_types_by_name['ofp_flow_stats'] = _OFP_FLOW_STATS
DESCRIPTOR.message_types_by_name['ofp_aggregate_stats_request'] = _OFP_AGGREGATE_STATS_REQUEST
DESCRIPTOR.message_types_by_name['ofp_aggregate_stats_reply'] = _OFP_AGGREGATE_STATS_REPLY
DESCRIPTOR.message_types_by_name['ofp_table_feature_property'] = _OFP_TABLE_FEATURE_PROPERTY
DESCRIPTOR.message_types_by_name['ofp_table_feature_prop_instructions'] = _OFP_TABLE_FEATURE_PROP_INSTRUCTIONS
DESCRIPTOR.message_types_by_name['ofp_table_feature_prop_next_tables'] = _OFP_TABLE_FEATURE_PROP_NEXT_TABLES
DESCRIPTOR.message_types_by_name['ofp_table_feature_prop_actions'] = _OFP_TABLE_FEATURE_PROP_ACTIONS
DESCRIPTOR.message_types_by_name['ofp_table_feature_prop_oxm'] = _OFP_TABLE_FEATURE_PROP_OXM
DESCRIPTOR.message_types_by_name['ofp_table_feature_prop_experimenter'] = _OFP_TABLE_FEATURE_PROP_EXPERIMENTER
DESCRIPTOR.message_types_by_name['ofp_table_features'] = _OFP_TABLE_FEATURES
DESCRIPTOR.message_types_by_name['ofp_table_stats'] = _OFP_TABLE_STATS
DESCRIPTOR.message_types_by_name['ofp_port_stats_request'] = _OFP_PORT_STATS_REQUEST
DESCRIPTOR.message_types_by_name['ofp_port_stats'] = _OFP_PORT_STATS
DESCRIPTOR.message_types_by_name['ofp_group_stats_request'] = _OFP_GROUP_STATS_REQUEST
DESCRIPTOR.message_types_by_name['ofp_bucket_counter'] = _OFP_BUCKET_COUNTER
DESCRIPTOR.message_types_by_name['ofp_group_stats'] = _OFP_GROUP_STATS
DESCRIPTOR.message_types_by_name['ofp_group_desc'] = _OFP_GROUP_DESC
DESCRIPTOR.message_types_by_name['ofp_group_entry'] = _OFP_GROUP_ENTRY
DESCRIPTOR.message_types_by_name['ofp_group_features'] = _OFP_GROUP_FEATURES
DESCRIPTOR.message_types_by_name['ofp_meter_multipart_request'] = _OFP_METER_MULTIPART_REQUEST
DESCRIPTOR.message_types_by_name['ofp_meter_band_stats'] = _OFP_METER_BAND_STATS
DESCRIPTOR.message_types_by_name['ofp_meter_stats'] = _OFP_METER_STATS
DESCRIPTOR.message_types_by_name['ofp_meter_config'] = _OFP_METER_CONFIG
DESCRIPTOR.message_types_by_name['ofp_meter_features'] = _OFP_METER_FEATURES
DESCRIPTOR.message_types_by_name['ofp_experimenter_multipart_header'] = _OFP_EXPERIMENTER_MULTIPART_HEADER
DESCRIPTOR.message_types_by_name['ofp_experimenter_header'] = _OFP_EXPERIMENTER_HEADER
DESCRIPTOR.message_types_by_name['ofp_queue_prop_header'] = _OFP_QUEUE_PROP_HEADER
DESCRIPTOR.message_types_by_name['ofp_queue_prop_min_rate'] = _OFP_QUEUE_PROP_MIN_RATE
DESCRIPTOR.message_types_by_name['ofp_queue_prop_max_rate'] = _OFP_QUEUE_PROP_MAX_RATE
DESCRIPTOR.message_types_by_name['ofp_queue_prop_experimenter'] = _OFP_QUEUE_PROP_EXPERIMENTER
DESCRIPTOR.message_types_by_name['ofp_packet_queue'] = _OFP_PACKET_QUEUE
DESCRIPTOR.message_types_by_name['ofp_queue_get_config_request'] = _OFP_QUEUE_GET_CONFIG_REQUEST
DESCRIPTOR.message_types_by_name['ofp_queue_get_config_reply'] = _OFP_QUEUE_GET_CONFIG_REPLY
DESCRIPTOR.message_types_by_name['ofp_action_set_queue'] = _OFP_ACTION_SET_QUEUE
DESCRIPTOR.message_types_by_name['ofp_queue_stats_request'] = _OFP_QUEUE_STATS_REQUEST
DESCRIPTOR.message_types_by_name['ofp_queue_stats'] = _OFP_QUEUE_STATS
DESCRIPTOR.message_types_by_name['ofp_role_request'] = _OFP_ROLE_REQUEST
DESCRIPTOR.message_types_by_name['ofp_async_config'] = _OFP_ASYNC_CONFIG
DESCRIPTOR.enum_types_by_name['ofp_port_no'] = _OFP_PORT_NO
DESCRIPTOR.enum_types_by_name['ofp_type'] = _OFP_TYPE
DESCRIPTOR.enum_types_by_name['ofp_hello_elem_type'] = _OFP_HELLO_ELEM_TYPE
DESCRIPTOR.enum_types_by_name['ofp_config_flags'] = _OFP_CONFIG_FLAGS
DESCRIPTOR.enum_types_by_name['ofp_table_config'] = _OFP_TABLE_CONFIG
DESCRIPTOR.enum_types_by_name['ofp_table'] = _OFP_TABLE
DESCRIPTOR.enum_types_by_name['ofp_capabilities'] = _OFP_CAPABILITIES
DESCRIPTOR.enum_types_by_name['ofp_port_config'] = _OFP_PORT_CONFIG
DESCRIPTOR.enum_types_by_name['ofp_port_state'] = _OFP_PORT_STATE
DESCRIPTOR.enum_types_by_name['ofp_port_features'] = _OFP_PORT_FEATURES
DESCRIPTOR.enum_types_by_name['ofp_port_reason'] = _OFP_PORT_REASON
DESCRIPTOR.enum_types_by_name['ofp_match_type'] = _OFP_MATCH_TYPE
DESCRIPTOR.enum_types_by_name['ofp_oxm_class'] = _OFP_OXM_CLASS
DESCRIPTOR.enum_types_by_name['oxm_ofb_field_types'] = _OXM_OFB_FIELD_TYPES
DESCRIPTOR.enum_types_by_name['ofp_vlan_id'] = _OFP_VLAN_ID
DESCRIPTOR.enum_types_by_name['ofp_ipv6exthdr_flags'] = _OFP_IPV6EXTHDR_FLAGS
DESCRIPTOR.enum_types_by_name['ofp_action_type'] = _OFP_ACTION_TYPE
DESCRIPTOR.enum_types_by_name['ofp_controller_max_len'] = _OFP_CONTROLLER_MAX_LEN
DESCRIPTOR.enum_types_by_name['ofp_instruction_type'] = _OFP_INSTRUCTION_TYPE
DESCRIPTOR.enum_types_by_name['ofp_flow_mod_command'] = _OFP_FLOW_MOD_COMMAND
DESCRIPTOR.enum_types_by_name['ofp_flow_mod_flags'] = _OFP_FLOW_MOD_FLAGS
DESCRIPTOR.enum_types_by_name['ofp_group'] = _OFP_GROUP
DESCRIPTOR.enum_types_by_name['ofp_group_mod_command'] = _OFP_GROUP_MOD_COMMAND
DESCRIPTOR.enum_types_by_name['ofp_group_type'] = _OFP_GROUP_TYPE
DESCRIPTOR.enum_types_by_name['ofp_packet_in_reason'] = _OFP_PACKET_IN_REASON
DESCRIPTOR.enum_types_by_name['ofp_flow_removed_reason'] = _OFP_FLOW_REMOVED_REASON
DESCRIPTOR.enum_types_by_name['ofp_meter'] = _OFP_METER
DESCRIPTOR.enum_types_by_name['ofp_meter_band_type'] = _OFP_METER_BAND_TYPE
DESCRIPTOR.enum_types_by_name['ofp_meter_mod_command'] = _OFP_METER_MOD_COMMAND
DESCRIPTOR.enum_types_by_name['ofp_meter_flags'] = _OFP_METER_FLAGS
DESCRIPTOR.enum_types_by_name['ofp_error_type'] = _OFP_ERROR_TYPE
DESCRIPTOR.enum_types_by_name['ofp_hello_failed_code'] = _OFP_HELLO_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_bad_request_code'] = _OFP_BAD_REQUEST_CODE
DESCRIPTOR.enum_types_by_name['ofp_bad_action_code'] = _OFP_BAD_ACTION_CODE
DESCRIPTOR.enum_types_by_name['ofp_bad_instruction_code'] = _OFP_BAD_INSTRUCTION_CODE
DESCRIPTOR.enum_types_by_name['ofp_bad_match_code'] = _OFP_BAD_MATCH_CODE
DESCRIPTOR.enum_types_by_name['ofp_flow_mod_failed_code'] = _OFP_FLOW_MOD_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_group_mod_failed_code'] = _OFP_GROUP_MOD_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_port_mod_failed_code'] = _OFP_PORT_MOD_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_table_mod_failed_code'] = _OFP_TABLE_MOD_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_queue_op_failed_code'] = _OFP_QUEUE_OP_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_switch_config_failed_code'] = _OFP_SWITCH_CONFIG_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_role_request_failed_code'] = _OFP_ROLE_REQUEST_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_meter_mod_failed_code'] = _OFP_METER_MOD_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_table_features_failed_code'] = _OFP_TABLE_FEATURES_FAILED_CODE
DESCRIPTOR.enum_types_by_name['ofp_multipart_type'] = _OFP_MULTIPART_TYPE
DESCRIPTOR.enum_types_by_name['ofp_multipart_request_flags'] = _OFP_MULTIPART_REQUEST_FLAGS
DESCRIPTOR.enum_types_by_name['ofp_multipart_reply_flags'] = _OFP_MULTIPART_REPLY_FLAGS
DESCRIPTOR.enum_types_by_name['ofp_table_feature_prop_type'] = _OFP_TABLE_FEATURE_PROP_TYPE
DESCRIPTOR.enum_types_by_name['ofp_group_capabilities'] = _OFP_GROUP_CAPABILITIES
DESCRIPTOR.enum_types_by_name['ofp_queue_properties'] = _OFP_QUEUE_PROPERTIES
DESCRIPTOR.enum_types_by_name['ofp_controller_role'] = _OFP_CONTROLLER_ROLE

ofp_header = _reflection.GeneratedProtocolMessageType('ofp_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_header)
  ))
_sym_db.RegisterMessage(ofp_header)

ofp_hello_elem_header = _reflection.GeneratedProtocolMessageType('ofp_hello_elem_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_HELLO_ELEM_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_hello_elem_header)
  ))
_sym_db.RegisterMessage(ofp_hello_elem_header)

ofp_hello_elem_versionbitmap = _reflection.GeneratedProtocolMessageType('ofp_hello_elem_versionbitmap', (_message.Message,), dict(
  DESCRIPTOR = _OFP_HELLO_ELEM_VERSIONBITMAP,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_hello_elem_versionbitmap)
  ))
_sym_db.RegisterMessage(ofp_hello_elem_versionbitmap)

ofp_hello = _reflection.GeneratedProtocolMessageType('ofp_hello', (_message.Message,), dict(
  DESCRIPTOR = _OFP_HELLO,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_hello)
  ))
_sym_db.RegisterMessage(ofp_hello)

ofp_switch_config = _reflection.GeneratedProtocolMessageType('ofp_switch_config', (_message.Message,), dict(
  DESCRIPTOR = _OFP_SWITCH_CONFIG,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_switch_config)
  ))
_sym_db.RegisterMessage(ofp_switch_config)

ofp_table_mod = _reflection.GeneratedProtocolMessageType('ofp_table_mod', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_MOD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_mod)
  ))
_sym_db.RegisterMessage(ofp_table_mod)

ofp_port = _reflection.GeneratedProtocolMessageType('ofp_port', (_message.Message,), dict(
  DESCRIPTOR = _OFP_PORT,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_port)
  ))
_sym_db.RegisterMessage(ofp_port)

ofp_switch_features = _reflection.GeneratedProtocolMessageType('ofp_switch_features', (_message.Message,), dict(
  DESCRIPTOR = _OFP_SWITCH_FEATURES,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_switch_features)
  ))
_sym_db.RegisterMessage(ofp_switch_features)

ofp_port_status = _reflection.GeneratedProtocolMessageType('ofp_port_status', (_message.Message,), dict(
  DESCRIPTOR = _OFP_PORT_STATUS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_port_status)
  ))
_sym_db.RegisterMessage(ofp_port_status)

ofp_port_mod = _reflection.GeneratedProtocolMessageType('ofp_port_mod', (_message.Message,), dict(
  DESCRIPTOR = _OFP_PORT_MOD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_port_mod)
  ))
_sym_db.RegisterMessage(ofp_port_mod)

ofp_match = _reflection.GeneratedProtocolMessageType('ofp_match', (_message.Message,), dict(
  DESCRIPTOR = _OFP_MATCH,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_match)
  ))
_sym_db.RegisterMessage(ofp_match)

ofp_oxm_field = _reflection.GeneratedProtocolMessageType('ofp_oxm_field', (_message.Message,), dict(
  DESCRIPTOR = _OFP_OXM_FIELD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_oxm_field)
  ))
_sym_db.RegisterMessage(ofp_oxm_field)

ofp_oxm_ofb_field = _reflection.GeneratedProtocolMessageType('ofp_oxm_ofb_field', (_message.Message,), dict(
  DESCRIPTOR = _OFP_OXM_OFB_FIELD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_oxm_ofb_field)
  ))
_sym_db.RegisterMessage(ofp_oxm_ofb_field)

ofp_oxm_experimenter_field = _reflection.GeneratedProtocolMessageType('ofp_oxm_experimenter_field', (_message.Message,), dict(
  DESCRIPTOR = _OFP_OXM_EXPERIMENTER_FIELD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_oxm_experimenter_field)
  ))
_sym_db.RegisterMessage(ofp_oxm_experimenter_field)

ofp_action = _reflection.GeneratedProtocolMessageType('ofp_action', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action)
  ))
_sym_db.RegisterMessage(ofp_action)

ofp_action_output = _reflection.GeneratedProtocolMessageType('ofp_action_output', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_OUTPUT,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_output)
  ))
_sym_db.RegisterMessage(ofp_action_output)

ofp_action_mpls_ttl = _reflection.GeneratedProtocolMessageType('ofp_action_mpls_ttl', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_MPLS_TTL,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_mpls_ttl)
  ))
_sym_db.RegisterMessage(ofp_action_mpls_ttl)

ofp_action_push = _reflection.GeneratedProtocolMessageType('ofp_action_push', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_PUSH,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_push)
  ))
_sym_db.RegisterMessage(ofp_action_push)

ofp_action_pop_mpls = _reflection.GeneratedProtocolMessageType('ofp_action_pop_mpls', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_POP_MPLS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_pop_mpls)
  ))
_sym_db.RegisterMessage(ofp_action_pop_mpls)

ofp_action_group = _reflection.GeneratedProtocolMessageType('ofp_action_group', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_GROUP,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_group)
  ))
_sym_db.RegisterMessage(ofp_action_group)

ofp_action_nw_ttl = _reflection.GeneratedProtocolMessageType('ofp_action_nw_ttl', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_NW_TTL,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_nw_ttl)
  ))
_sym_db.RegisterMessage(ofp_action_nw_ttl)

ofp_action_set_field = _reflection.GeneratedProtocolMessageType('ofp_action_set_field', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_SET_FIELD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_set_field)
  ))
_sym_db.RegisterMessage(ofp_action_set_field)

ofp_action_experimenter = _reflection.GeneratedProtocolMessageType('ofp_action_experimenter', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_EXPERIMENTER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_experimenter)
  ))
_sym_db.RegisterMessage(ofp_action_experimenter)

ofp_instruction = _reflection.GeneratedProtocolMessageType('ofp_instruction', (_message.Message,), dict(
  DESCRIPTOR = _OFP_INSTRUCTION,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_instruction)
  ))
_sym_db.RegisterMessage(ofp_instruction)

ofp_instruction_goto_table = _reflection.GeneratedProtocolMessageType('ofp_instruction_goto_table', (_message.Message,), dict(
  DESCRIPTOR = _OFP_INSTRUCTION_GOTO_TABLE,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_instruction_goto_table)
  ))
_sym_db.RegisterMessage(ofp_instruction_goto_table)

ofp_instruction_write_metadata = _reflection.GeneratedProtocolMessageType('ofp_instruction_write_metadata', (_message.Message,), dict(
  DESCRIPTOR = _OFP_INSTRUCTION_WRITE_METADATA,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_instruction_write_metadata)
  ))
_sym_db.RegisterMessage(ofp_instruction_write_metadata)

ofp_instruction_actions = _reflection.GeneratedProtocolMessageType('ofp_instruction_actions', (_message.Message,), dict(
  DESCRIPTOR = _OFP_INSTRUCTION_ACTIONS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_instruction_actions)
  ))
_sym_db.RegisterMessage(ofp_instruction_actions)

ofp_instruction_meter = _reflection.GeneratedProtocolMessageType('ofp_instruction_meter', (_message.Message,), dict(
  DESCRIPTOR = _OFP_INSTRUCTION_METER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_instruction_meter)
  ))
_sym_db.RegisterMessage(ofp_instruction_meter)

ofp_instruction_experimenter = _reflection.GeneratedProtocolMessageType('ofp_instruction_experimenter', (_message.Message,), dict(
  DESCRIPTOR = _OFP_INSTRUCTION_EXPERIMENTER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_instruction_experimenter)
  ))
_sym_db.RegisterMessage(ofp_instruction_experimenter)

ofp_flow_mod = _reflection.GeneratedProtocolMessageType('ofp_flow_mod', (_message.Message,), dict(
  DESCRIPTOR = _OFP_FLOW_MOD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_flow_mod)
  ))
_sym_db.RegisterMessage(ofp_flow_mod)

ofp_bucket = _reflection.GeneratedProtocolMessageType('ofp_bucket', (_message.Message,), dict(
  DESCRIPTOR = _OFP_BUCKET,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_bucket)
  ))
_sym_db.RegisterMessage(ofp_bucket)

ofp_group_mod = _reflection.GeneratedProtocolMessageType('ofp_group_mod', (_message.Message,), dict(
  DESCRIPTOR = _OFP_GROUP_MOD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_group_mod)
  ))
_sym_db.RegisterMessage(ofp_group_mod)

ofp_packet_out = _reflection.GeneratedProtocolMessageType('ofp_packet_out', (_message.Message,), dict(
  DESCRIPTOR = _OFP_PACKET_OUT,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_packet_out)
  ))
_sym_db.RegisterMessage(ofp_packet_out)

ofp_packet_in = _reflection.GeneratedProtocolMessageType('ofp_packet_in', (_message.Message,), dict(
  DESCRIPTOR = _OFP_PACKET_IN,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_packet_in)
  ))
_sym_db.RegisterMessage(ofp_packet_in)

ofp_flow_removed = _reflection.GeneratedProtocolMessageType('ofp_flow_removed', (_message.Message,), dict(
  DESCRIPTOR = _OFP_FLOW_REMOVED,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_flow_removed)
  ))
_sym_db.RegisterMessage(ofp_flow_removed)

ofp_meter_band_header = _reflection.GeneratedProtocolMessageType('ofp_meter_band_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_BAND_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_band_header)
  ))
_sym_db.RegisterMessage(ofp_meter_band_header)

ofp_meter_band_drop = _reflection.GeneratedProtocolMessageType('ofp_meter_band_drop', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_BAND_DROP,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_band_drop)
  ))
_sym_db.RegisterMessage(ofp_meter_band_drop)

ofp_meter_band_dscp_remark = _reflection.GeneratedProtocolMessageType('ofp_meter_band_dscp_remark', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_BAND_DSCP_REMARK,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_band_dscp_remark)
  ))
_sym_db.RegisterMessage(ofp_meter_band_dscp_remark)

ofp_meter_band_experimenter = _reflection.GeneratedProtocolMessageType('ofp_meter_band_experimenter', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_BAND_EXPERIMENTER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_band_experimenter)
  ))
_sym_db.RegisterMessage(ofp_meter_band_experimenter)

ofp_meter_mod = _reflection.GeneratedProtocolMessageType('ofp_meter_mod', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_MOD,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_mod)
  ))
_sym_db.RegisterMessage(ofp_meter_mod)

ofp_error_msg = _reflection.GeneratedProtocolMessageType('ofp_error_msg', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ERROR_MSG,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_error_msg)
  ))
_sym_db.RegisterMessage(ofp_error_msg)

ofp_error_experimenter_msg = _reflection.GeneratedProtocolMessageType('ofp_error_experimenter_msg', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ERROR_EXPERIMENTER_MSG,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_error_experimenter_msg)
  ))
_sym_db.RegisterMessage(ofp_error_experimenter_msg)

ofp_multipart_request = _reflection.GeneratedProtocolMessageType('ofp_multipart_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_MULTIPART_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_multipart_request)
  ))
_sym_db.RegisterMessage(ofp_multipart_request)

ofp_multipart_reply = _reflection.GeneratedProtocolMessageType('ofp_multipart_reply', (_message.Message,), dict(
  DESCRIPTOR = _OFP_MULTIPART_REPLY,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_multipart_reply)
  ))
_sym_db.RegisterMessage(ofp_multipart_reply)

ofp_desc = _reflection.GeneratedProtocolMessageType('ofp_desc', (_message.Message,), dict(
  DESCRIPTOR = _OFP_DESC,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_desc)
  ))
_sym_db.RegisterMessage(ofp_desc)

ofp_flow_stats_request = _reflection.GeneratedProtocolMessageType('ofp_flow_stats_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_FLOW_STATS_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_flow_stats_request)
  ))
_sym_db.RegisterMessage(ofp_flow_stats_request)

ofp_flow_stats = _reflection.GeneratedProtocolMessageType('ofp_flow_stats', (_message.Message,), dict(
  DESCRIPTOR = _OFP_FLOW_STATS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_flow_stats)
  ))
_sym_db.RegisterMessage(ofp_flow_stats)

ofp_aggregate_stats_request = _reflection.GeneratedProtocolMessageType('ofp_aggregate_stats_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_AGGREGATE_STATS_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_aggregate_stats_request)
  ))
_sym_db.RegisterMessage(ofp_aggregate_stats_request)

ofp_aggregate_stats_reply = _reflection.GeneratedProtocolMessageType('ofp_aggregate_stats_reply', (_message.Message,), dict(
  DESCRIPTOR = _OFP_AGGREGATE_STATS_REPLY,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_aggregate_stats_reply)
  ))
_sym_db.RegisterMessage(ofp_aggregate_stats_reply)

ofp_table_feature_property = _reflection.GeneratedProtocolMessageType('ofp_table_feature_property', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_FEATURE_PROPERTY,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_feature_property)
  ))
_sym_db.RegisterMessage(ofp_table_feature_property)

ofp_table_feature_prop_instructions = _reflection.GeneratedProtocolMessageType('ofp_table_feature_prop_instructions', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_FEATURE_PROP_INSTRUCTIONS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_feature_prop_instructions)
  ))
_sym_db.RegisterMessage(ofp_table_feature_prop_instructions)

ofp_table_feature_prop_next_tables = _reflection.GeneratedProtocolMessageType('ofp_table_feature_prop_next_tables', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_FEATURE_PROP_NEXT_TABLES,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_feature_prop_next_tables)
  ))
_sym_db.RegisterMessage(ofp_table_feature_prop_next_tables)

ofp_table_feature_prop_actions = _reflection.GeneratedProtocolMessageType('ofp_table_feature_prop_actions', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_FEATURE_PROP_ACTIONS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_feature_prop_actions)
  ))
_sym_db.RegisterMessage(ofp_table_feature_prop_actions)

ofp_table_feature_prop_oxm = _reflection.GeneratedProtocolMessageType('ofp_table_feature_prop_oxm', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_FEATURE_PROP_OXM,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_feature_prop_oxm)
  ))
_sym_db.RegisterMessage(ofp_table_feature_prop_oxm)

ofp_table_feature_prop_experimenter = _reflection.GeneratedProtocolMessageType('ofp_table_feature_prop_experimenter', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_FEATURE_PROP_EXPERIMENTER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_feature_prop_experimenter)
  ))
_sym_db.RegisterMessage(ofp_table_feature_prop_experimenter)

ofp_table_features = _reflection.GeneratedProtocolMessageType('ofp_table_features', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_FEATURES,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_features)
  ))
_sym_db.RegisterMessage(ofp_table_features)

ofp_table_stats = _reflection.GeneratedProtocolMessageType('ofp_table_stats', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_STATS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_table_stats)
  ))
_sym_db.RegisterMessage(ofp_table_stats)

ofp_port_stats_request = _reflection.GeneratedProtocolMessageType('ofp_port_stats_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_PORT_STATS_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_port_stats_request)
  ))
_sym_db.RegisterMessage(ofp_port_stats_request)

ofp_port_stats = _reflection.GeneratedProtocolMessageType('ofp_port_stats', (_message.Message,), dict(
  DESCRIPTOR = _OFP_PORT_STATS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_port_stats)
  ))
_sym_db.RegisterMessage(ofp_port_stats)

ofp_group_stats_request = _reflection.GeneratedProtocolMessageType('ofp_group_stats_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_GROUP_STATS_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_group_stats_request)
  ))
_sym_db.RegisterMessage(ofp_group_stats_request)

ofp_bucket_counter = _reflection.GeneratedProtocolMessageType('ofp_bucket_counter', (_message.Message,), dict(
  DESCRIPTOR = _OFP_BUCKET_COUNTER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_bucket_counter)
  ))
_sym_db.RegisterMessage(ofp_bucket_counter)

ofp_group_stats = _reflection.GeneratedProtocolMessageType('ofp_group_stats', (_message.Message,), dict(
  DESCRIPTOR = _OFP_GROUP_STATS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_group_stats)
  ))
_sym_db.RegisterMessage(ofp_group_stats)

ofp_group_desc = _reflection.GeneratedProtocolMessageType('ofp_group_desc', (_message.Message,), dict(
  DESCRIPTOR = _OFP_GROUP_DESC,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_group_desc)
  ))
_sym_db.RegisterMessage(ofp_group_desc)

ofp_group_entry = _reflection.GeneratedProtocolMessageType('ofp_group_entry', (_message.Message,), dict(
  DESCRIPTOR = _OFP_GROUP_ENTRY,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_group_entry)
  ))
_sym_db.RegisterMessage(ofp_group_entry)

ofp_group_features = _reflection.GeneratedProtocolMessageType('ofp_group_features', (_message.Message,), dict(
  DESCRIPTOR = _OFP_GROUP_FEATURES,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_group_features)
  ))
_sym_db.RegisterMessage(ofp_group_features)

ofp_meter_multipart_request = _reflection.GeneratedProtocolMessageType('ofp_meter_multipart_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_MULTIPART_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_multipart_request)
  ))
_sym_db.RegisterMessage(ofp_meter_multipart_request)

ofp_meter_band_stats = _reflection.GeneratedProtocolMessageType('ofp_meter_band_stats', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_BAND_STATS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_band_stats)
  ))
_sym_db.RegisterMessage(ofp_meter_band_stats)

ofp_meter_stats = _reflection.GeneratedProtocolMessageType('ofp_meter_stats', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_STATS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_stats)
  ))
_sym_db.RegisterMessage(ofp_meter_stats)

ofp_meter_config = _reflection.GeneratedProtocolMessageType('ofp_meter_config', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_CONFIG,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_config)
  ))
_sym_db.RegisterMessage(ofp_meter_config)

ofp_meter_features = _reflection.GeneratedProtocolMessageType('ofp_meter_features', (_message.Message,), dict(
  DESCRIPTOR = _OFP_METER_FEATURES,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_meter_features)
  ))
_sym_db.RegisterMessage(ofp_meter_features)

ofp_experimenter_multipart_header = _reflection.GeneratedProtocolMessageType('ofp_experimenter_multipart_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_EXPERIMENTER_MULTIPART_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_experimenter_multipart_header)
  ))
_sym_db.RegisterMessage(ofp_experimenter_multipart_header)

ofp_experimenter_header = _reflection.GeneratedProtocolMessageType('ofp_experimenter_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_EXPERIMENTER_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_experimenter_header)
  ))
_sym_db.RegisterMessage(ofp_experimenter_header)

ofp_queue_prop_header = _reflection.GeneratedProtocolMessageType('ofp_queue_prop_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_QUEUE_PROP_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_queue_prop_header)
  ))
_sym_db.RegisterMessage(ofp_queue_prop_header)

ofp_queue_prop_min_rate = _reflection.GeneratedProtocolMessageType('ofp_queue_prop_min_rate', (_message.Message,), dict(
  DESCRIPTOR = _OFP_QUEUE_PROP_MIN_RATE,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_queue_prop_min_rate)
  ))
_sym_db.RegisterMessage(ofp_queue_prop_min_rate)

ofp_queue_prop_max_rate = _reflection.GeneratedProtocolMessageType('ofp_queue_prop_max_rate', (_message.Message,), dict(
  DESCRIPTOR = _OFP_QUEUE_PROP_MAX_RATE,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_queue_prop_max_rate)
  ))
_sym_db.RegisterMessage(ofp_queue_prop_max_rate)

ofp_queue_prop_experimenter = _reflection.GeneratedProtocolMessageType('ofp_queue_prop_experimenter', (_message.Message,), dict(
  DESCRIPTOR = _OFP_QUEUE_PROP_EXPERIMENTER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_queue_prop_experimenter)
  ))
_sym_db.RegisterMessage(ofp_queue_prop_experimenter)

ofp_packet_queue = _reflection.GeneratedProtocolMessageType('ofp_packet_queue', (_message.Message,), dict(
  DESCRIPTOR = _OFP_PACKET_QUEUE,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_packet_queue)
  ))
_sym_db.RegisterMessage(ofp_packet_queue)

ofp_queue_get_config_request = _reflection.GeneratedProtocolMessageType('ofp_queue_get_config_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_QUEUE_GET_CONFIG_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_queue_get_config_request)
  ))
_sym_db.RegisterMessage(ofp_queue_get_config_request)

ofp_queue_get_config_reply = _reflection.GeneratedProtocolMessageType('ofp_queue_get_config_reply', (_message.Message,), dict(
  DESCRIPTOR = _OFP_QUEUE_GET_CONFIG_REPLY,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_queue_get_config_reply)
  ))
_sym_db.RegisterMessage(ofp_queue_get_config_reply)

ofp_action_set_queue = _reflection.GeneratedProtocolMessageType('ofp_action_set_queue', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_SET_QUEUE,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_action_set_queue)
  ))
_sym_db.RegisterMessage(ofp_action_set_queue)

ofp_queue_stats_request = _reflection.GeneratedProtocolMessageType('ofp_queue_stats_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_QUEUE_STATS_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_queue_stats_request)
  ))
_sym_db.RegisterMessage(ofp_queue_stats_request)

ofp_queue_stats = _reflection.GeneratedProtocolMessageType('ofp_queue_stats', (_message.Message,), dict(
  DESCRIPTOR = _OFP_QUEUE_STATS,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_queue_stats)
  ))
_sym_db.RegisterMessage(ofp_queue_stats)

ofp_role_request = _reflection.GeneratedProtocolMessageType('ofp_role_request', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ROLE_REQUEST,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_role_request)
  ))
_sym_db.RegisterMessage(ofp_role_request)

ofp_async_config = _reflection.GeneratedProtocolMessageType('ofp_async_config', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ASYNC_CONFIG,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow_13.ofp_async_config)
  ))
_sym_db.RegisterMessage(ofp_async_config)


import grpc
from grpc.beta import implementations as beta_implementations
from grpc.beta import interfaces as beta_interfaces
from grpc.framework.common import cardinality
from grpc.framework.interfaces.face import utilities as face_utilities


class OpenFlowStub(object):
  """
  Service API definitions and additional message types needed for it

  """

  def __init__(self, channel):
    """Constructor.

    Args:
      channel: A grpc.Channel.
    """
    self.GetHello = channel.unary_unary(
        '/openflow_13.OpenFlow/GetHello',
        request_serializer=ofp_hello.SerializeToString,
        response_deserializer=ofp_hello.FromString,
        )
    self.EchoRequest = channel.unary_unary(
        '/openflow_13.OpenFlow/EchoRequest',
        request_serializer=ofp_header.SerializeToString,
        response_deserializer=ofp_header.FromString,
        )
    self.ExperimenterRequest = channel.unary_unary(
        '/openflow_13.OpenFlow/ExperimenterRequest',
        request_serializer=ofp_experimenter_header.SerializeToString,
        response_deserializer=ofp_experimenter_header.FromString,
        )
    self.GetSwitchFeatures = channel.unary_unary(
        '/openflow_13.OpenFlow/GetSwitchFeatures',
        request_serializer=ofp_header.SerializeToString,
        response_deserializer=ofp_switch_features.FromString,
        )
    self.GetSwitchConfig = channel.unary_unary(
        '/openflow_13.OpenFlow/GetSwitchConfig',
        request_serializer=ofp_header.SerializeToString,
        response_deserializer=ofp_switch_config.FromString,
        )
    self.SetConfig = channel.unary_unary(
        '/openflow_13.OpenFlow/SetConfig',
        request_serializer=ofp_switch_config.SerializeToString,
        response_deserializer=ofp_header.FromString,
        )
    self.ReceivePacketInMessages = channel.unary_stream(
        '/openflow_13.OpenFlow/ReceivePacketInMessages',
        request_serializer=ofp_header.SerializeToString,
        response_deserializer=ofp_packet_in.FromString,
        )
    self.SendPacketOutMessages = channel.unary_unary(
        '/openflow_13.OpenFlow/SendPacketOutMessages',
        request_serializer=ofp_packet_out.SerializeToString,
        response_deserializer=ofp_header.FromString,
        )


class OpenFlowServicer(object):
  """
  Service API definitions and additional message types needed for it

  """

  def GetHello(self, request, context):
    """
    Hello message handshake, initiated by the client (controller)
    TODO http option
    """
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def EchoRequest(self, request, context):
    """
    Echo request / reply, initiated by the client (controller)
    TODO http option
    """
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def ExperimenterRequest(self, request, context):
    """
    Experimental (extension) RPC
    TODO http option
    """
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def GetSwitchFeatures(self, request, context):
    """
    Get Switch Features
    TODO http option
    """
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def GetSwitchConfig(self, request, context):
    """
    Get Switch Config
    TODO http option
    """
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def SetConfig(self, request, context):
    """
    Set Config
    TODO http option
    """
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def ReceivePacketInMessages(self, request, context):
    """
    Receive Packet-In messages
    TODO http option
    """
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def SendPacketOutMessages(self, request, context):
    """
    Send Packet-Out messages
    TODO http option
    """
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')


def add_OpenFlowServicer_to_server(servicer, server):
  rpc_method_handlers = {
      'GetHello': grpc.unary_unary_rpc_method_handler(
          servicer.GetHello,
          request_deserializer=ofp_hello.FromString,
          response_serializer=ofp_hello.SerializeToString,
      ),
      'EchoRequest': grpc.unary_unary_rpc_method_handler(
          servicer.EchoRequest,
          request_deserializer=ofp_header.FromString,
          response_serializer=ofp_header.SerializeToString,
      ),
      'ExperimenterRequest': grpc.unary_unary_rpc_method_handler(
          servicer.ExperimenterRequest,
          request_deserializer=ofp_experimenter_header.FromString,
          response_serializer=ofp_experimenter_header.SerializeToString,
      ),
      'GetSwitchFeatures': grpc.unary_unary_rpc_method_handler(
          servicer.GetSwitchFeatures,
          request_deserializer=ofp_header.FromString,
          response_serializer=ofp_switch_features.SerializeToString,
      ),
      'GetSwitchConfig': grpc.unary_unary_rpc_method_handler(
          servicer.GetSwitchConfig,
          request_deserializer=ofp_header.FromString,
          response_serializer=ofp_switch_config.SerializeToString,
      ),
      'SetConfig': grpc.unary_unary_rpc_method_handler(
          servicer.SetConfig,
          request_deserializer=ofp_switch_config.FromString,
          response_serializer=ofp_header.SerializeToString,
      ),
      'ReceivePacketInMessages': grpc.unary_stream_rpc_method_handler(
          servicer.ReceivePacketInMessages,
          request_deserializer=ofp_header.FromString,
          response_serializer=ofp_packet_in.SerializeToString,
      ),
      'SendPacketOutMessages': grpc.unary_unary_rpc_method_handler(
          servicer.SendPacketOutMessages,
          request_deserializer=ofp_packet_out.FromString,
          response_serializer=ofp_header.SerializeToString,
      ),
  }
  generic_handler = grpc.method_handlers_generic_handler(
      'openflow_13.OpenFlow', rpc_method_handlers)
  server.add_generic_rpc_handlers((generic_handler,))


class BetaOpenFlowServicer(object):
  """
  Service API definitions and additional message types needed for it

  """
  def GetHello(self, request, context):
    """
    Hello message handshake, initiated by the client (controller)
    TODO http option
    """
    context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
  def EchoRequest(self, request, context):
    """
    Echo request / reply, initiated by the client (controller)
    TODO http option
    """
    context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
  def ExperimenterRequest(self, request, context):
    """
    Experimental (extension) RPC
    TODO http option
    """
    context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
  def GetSwitchFeatures(self, request, context):
    """
    Get Switch Features
    TODO http option
    """
    context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
  def GetSwitchConfig(self, request, context):
    """
    Get Switch Config
    TODO http option
    """
    context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
  def SetConfig(self, request, context):
    """
    Set Config
    TODO http option
    """
    context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
  def ReceivePacketInMessages(self, request, context):
    """
    Receive Packet-In messages
    TODO http option
    """
    context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
  def SendPacketOutMessages(self, request, context):
    """
    Send Packet-Out messages
    TODO http option
    """
    context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)


class BetaOpenFlowStub(object):
  """
  Service API definitions and additional message types needed for it

  """
  def GetHello(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
    """
    Hello message handshake, initiated by the client (controller)
    TODO http option
    """
    raise NotImplementedError()
  GetHello.future = None
  def EchoRequest(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
    """
    Echo request / reply, initiated by the client (controller)
    TODO http option
    """
    raise NotImplementedError()
  EchoRequest.future = None
  def ExperimenterRequest(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
    """
    Experimental (extension) RPC
    TODO http option
    """
    raise NotImplementedError()
  ExperimenterRequest.future = None
  def GetSwitchFeatures(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
    """
    Get Switch Features
    TODO http option
    """
    raise NotImplementedError()
  GetSwitchFeatures.future = None
  def GetSwitchConfig(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
    """
    Get Switch Config
    TODO http option
    """
    raise NotImplementedError()
  GetSwitchConfig.future = None
  def SetConfig(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
    """
    Set Config
    TODO http option
    """
    raise NotImplementedError()
  SetConfig.future = None
  def ReceivePacketInMessages(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
    """
    Receive Packet-In messages
    TODO http option
    """
    raise NotImplementedError()
  def SendPacketOutMessages(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
    """
    Send Packet-Out messages
    TODO http option
    """
    raise NotImplementedError()
  SendPacketOutMessages.future = None


def beta_create_OpenFlow_server(servicer, pool=None, pool_size=None, default_timeout=None, maximum_timeout=None):
  request_deserializers = {
    ('openflow_13.OpenFlow', 'EchoRequest'): ofp_header.FromString,
    ('openflow_13.OpenFlow', 'ExperimenterRequest'): ofp_experimenter_header.FromString,
    ('openflow_13.OpenFlow', 'GetHello'): ofp_hello.FromString,
    ('openflow_13.OpenFlow', 'GetSwitchConfig'): ofp_header.FromString,
    ('openflow_13.OpenFlow', 'GetSwitchFeatures'): ofp_header.FromString,
    ('openflow_13.OpenFlow', 'ReceivePacketInMessages'): ofp_header.FromString,
    ('openflow_13.OpenFlow', 'SendPacketOutMessages'): ofp_packet_out.FromString,
    ('openflow_13.OpenFlow', 'SetConfig'): ofp_switch_config.FromString,
  }
  response_serializers = {
    ('openflow_13.OpenFlow', 'EchoRequest'): ofp_header.SerializeToString,
    ('openflow_13.OpenFlow', 'ExperimenterRequest'): ofp_experimenter_header.SerializeToString,
    ('openflow_13.OpenFlow', 'GetHello'): ofp_hello.SerializeToString,
    ('openflow_13.OpenFlow', 'GetSwitchConfig'): ofp_switch_config.SerializeToString,
    ('openflow_13.OpenFlow', 'GetSwitchFeatures'): ofp_switch_features.SerializeToString,
    ('openflow_13.OpenFlow', 'ReceivePacketInMessages'): ofp_packet_in.SerializeToString,
    ('openflow_13.OpenFlow', 'SendPacketOutMessages'): ofp_header.SerializeToString,
    ('openflow_13.OpenFlow', 'SetConfig'): ofp_header.SerializeToString,
  }
  method_implementations = {
    ('openflow_13.OpenFlow', 'EchoRequest'): face_utilities.unary_unary_inline(servicer.EchoRequest),
    ('openflow_13.OpenFlow', 'ExperimenterRequest'): face_utilities.unary_unary_inline(servicer.ExperimenterRequest),
    ('openflow_13.OpenFlow', 'GetHello'): face_utilities.unary_unary_inline(servicer.GetHello),
    ('openflow_13.OpenFlow', 'GetSwitchConfig'): face_utilities.unary_unary_inline(servicer.GetSwitchConfig),
    ('openflow_13.OpenFlow', 'GetSwitchFeatures'): face_utilities.unary_unary_inline(servicer.GetSwitchFeatures),
    ('openflow_13.OpenFlow', 'ReceivePacketInMessages'): face_utilities.unary_stream_inline(servicer.ReceivePacketInMessages),
    ('openflow_13.OpenFlow', 'SendPacketOutMessages'): face_utilities.unary_unary_inline(servicer.SendPacketOutMessages),
    ('openflow_13.OpenFlow', 'SetConfig'): face_utilities.unary_unary_inline(servicer.SetConfig),
  }
  server_options = beta_implementations.server_options(request_deserializers=request_deserializers, response_serializers=response_serializers, thread_pool=pool, thread_pool_size=pool_size, default_timeout=default_timeout, maximum_timeout=maximum_timeout)
  return beta_implementations.server(method_implementations, options=server_options)


def beta_create_OpenFlow_stub(channel, host=None, metadata_transformer=None, pool=None, pool_size=None):
  request_serializers = {
    ('openflow_13.OpenFlow', 'EchoRequest'): ofp_header.SerializeToString,
    ('openflow_13.OpenFlow', 'ExperimenterRequest'): ofp_experimenter_header.SerializeToString,
    ('openflow_13.OpenFlow', 'GetHello'): ofp_hello.SerializeToString,
    ('openflow_13.OpenFlow', 'GetSwitchConfig'): ofp_header.SerializeToString,
    ('openflow_13.OpenFlow', 'GetSwitchFeatures'): ofp_header.SerializeToString,
    ('openflow_13.OpenFlow', 'ReceivePacketInMessages'): ofp_header.SerializeToString,
    ('openflow_13.OpenFlow', 'SendPacketOutMessages'): ofp_packet_out.SerializeToString,
    ('openflow_13.OpenFlow', 'SetConfig'): ofp_switch_config.SerializeToString,
  }
  response_deserializers = {
    ('openflow_13.OpenFlow', 'EchoRequest'): ofp_header.FromString,
    ('openflow_13.OpenFlow', 'ExperimenterRequest'): ofp_experimenter_header.FromString,
    ('openflow_13.OpenFlow', 'GetHello'): ofp_hello.FromString,
    ('openflow_13.OpenFlow', 'GetSwitchConfig'): ofp_switch_config.FromString,
    ('openflow_13.OpenFlow', 'GetSwitchFeatures'): ofp_switch_features.FromString,
    ('openflow_13.OpenFlow', 'ReceivePacketInMessages'): ofp_packet_in.FromString,
    ('openflow_13.OpenFlow', 'SendPacketOutMessages'): ofp_header.FromString,
    ('openflow_13.OpenFlow', 'SetConfig'): ofp_header.FromString,
  }
  cardinalities = {
    'EchoRequest': cardinality.Cardinality.UNARY_UNARY,
    'ExperimenterRequest': cardinality.Cardinality.UNARY_UNARY,
    'GetHello': cardinality.Cardinality.UNARY_UNARY,
    'GetSwitchConfig': cardinality.Cardinality.UNARY_UNARY,
    'GetSwitchFeatures': cardinality.Cardinality.UNARY_UNARY,
    'ReceivePacketInMessages': cardinality.Cardinality.UNARY_STREAM,
    'SendPacketOutMessages': cardinality.Cardinality.UNARY_UNARY,
    'SetConfig': cardinality.Cardinality.UNARY_UNARY,
  }
  stub_options = beta_implementations.stub_options(host=host, metadata_transformer=metadata_transformer, request_serializers=request_serializers, response_deserializers=response_deserializers, thread_pool=pool, thread_pool_size=pool_size)
  return beta_implementations.dynamic_stub(channel, 'openflow_13.OpenFlow', cardinalities, options=stub_options)
# @@protoc_insertion_point(module_scope)
