# 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.v13',
  syntax='proto3',
  serialized_pb=_b('\n\x11openflow_13.proto\x12\x0copenflow.v13\"H\n\nofp_header\x12\x0f\n\x07version\x18\x01 \x01(\r\x12\x0c\n\x04type\x18\x02 \x01(\r\x12\x0e\n\x06length\x18\x03 \x01(\r\x12\x0b\n\x03xid\x18\x04 \x01(\r\"5\n\x15ofp_hello_elem_header\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\"M\n\x1cofp_hello_elem_versionbitmap\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\x12\x0f\n\x07\x62itmaps\x18\x03 \x03(\r\"l\n\tofp_hello\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x35\n\x08\x65lements\x18\x02 \x03(\x0b\x32#.openflow.v13.ofp_hello_elem_header\"c\n\x11ofp_switch_config\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\r\n\x05\x66lags\x18\x02 \x01(\r\x12\x15\n\rmiss_send_len\x18\x03 \x01(\r\"[\n\rofp_table_mod\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\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\"\xa5\x01\n\x13ofp_switch_features\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\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\"q\n\x0fofp_port_status\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0e\n\x06reason\x18\x02 \x01(\r\x12$\n\x04\x64\x65sc\x18\x03 \x01(\x0b\x32\x16.openflow.v13.ofp_port\"\x8b\x01\n\x0cofp_port_mod\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\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\"=\n\tofp_match\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\x12\x12\n\noxm_fields\x18\x03 \x03(\r\"G\n\x1bofp_oxm_experimenter_header\x12\x12\n\noxm_header\x18\x01 \x01(\r\x12\x14\n\x0c\x65xperimenter\x18\x02 \x01(\r\".\n\x11ofp_action_header\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\"M\n\x11ofp_action_output\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x0c\n\x04port\x18\x03 \x01(\r\x12\x0f\n\x07max_len\x18\x04 \x01(\r\"B\n\x13ofp_action_mpls_ttl\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x10\n\x08mpls_ttl\x18\x03 \x01(\r\"?\n\x0fofp_action_push\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x11\n\tethertype\x18\x03 \x01(\r\"C\n\x13ofp_action_pop_mpls\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x11\n\tethertype\x18\x03 \x01(\r\"?\n\x10ofp_action_group\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x10\n\x08group_id\x18\x03 \x01(\r\">\n\x11ofp_action_nw_ttl\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x0e\n\x06nw_ttl\x18\x03 \x01(\r\"@\n\x14ofp_action_set_field\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\r\n\x05\x66ield\x18\x03 \x03(\r\"Q\n\x1eofp_action_experimenter_header\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x14\n\x0c\x65xperimenter\x18\x03 \x01(\r\",\n\x0fofp_instruction\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\"I\n\x1aofp_instruction_goto_table\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x10\n\x08table_id\x18\x03 \x01(\r\"d\n\x1eofp_instruction_write_metadata\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x10\n\x08metadata\x18\x03 \x01(\x04\x12\x15\n\rmetadata_mask\x18\x04 \x01(\x04\"f\n\x17ofp_instruction_actions\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x30\n\x07\x61\x63tions\x18\x03 \x03(\x0b\x32\x1f.openflow.v13.ofp_action_header\"D\n\x15ofp_instruction_meter\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x10\n\x08meter_id\x18\x03 \x01(\r\"O\n\x1cofp_instruction_experimenter\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x14\n\x0c\x65xperimenter\x18\x03 \x01(\r\"\xad\x02\n\x0cofp_flow_mod\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\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\x0f\n\x07\x63ommand\x18\x05 \x01(\r\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\x17.openflow.v13.ofp_match\"\x84\x01\n\nofp_bucket\x12\x0b\n\x03len\x18\x01 \x01(\r\x12\x0e\n\x06weight\x18\x02 \x01(\r\x12\x12\n\nwatch_port\x18\x03 \x01(\r\x12\x13\n\x0bwatch_group\x18\x04 \x01(\r\x12\x30\n\x07\x61\x63tions\x18\x05 \x03(\x0b\x32\x1f.openflow.v13.ofp_action_header\"\x95\x01\n\rofp_group_mod\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0f\n\x07\x63ommand\x18\x02 \x01(\r\x12\x0c\n\x04type\x18\x03 \x01(\r\x12\x10\n\x08group_id\x18\x04 \x01(\r\x12)\n\x07\x62uckets\x18\x05 \x03(\x0b\x32\x18.openflow.v13.ofp_bucket\"\xa5\x01\n\x0eofp_packet_out\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\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\x30\n\x07\x61\x63tions\x18\x05 \x03(\x0b\x32\x1f.openflow.v13.ofp_action_header\"\xb9\x01\n\rofp_packet_in\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x11\n\tbuffer_id\x18\x02 \x01(\r\x12\x11\n\ttotal_len\x18\x03 \x01(\r\x12\x0e\n\x06reason\x18\x04 \x01(\r\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\x17.openflow.v13.ofp_match\"\xab\x02\n\x10ofp_flow_removed\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0e\n\x06\x63ookie\x18\x02 \x01(\x04\x12\x10\n\x08priority\x18\x03 \x01(\r\x12\x0e\n\x06reason\x18\x04 \x01(\r\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\x17.openflow.v13.ofp_match\"T\n\x15ofp_meter_band_header\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\"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\"p\n\x1bofp_meter_band_experimenter\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\x14\n\x0c\x65xperimenter\x18\x05 \x01(\r\"\x9f\x01\n\rofp_meter_mod\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0f\n\x07\x63ommand\x18\x02 \x01(\r\x12\r\n\x05\x66lags\x18\x03 \x01(\r\x12\x10\n\x08meter_id\x18\x04 \x01(\r\x12\x32\n\x05\x62\x61nds\x18\x05 \x03(\x0b\x32#.openflow.v13.ofp_meter_band_header\"c\n\rofp_error_msg\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\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\"\x8a\x01\n\x1aofp_error_experimenter_msg\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\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\"l\n\x15ofp_multipart_request\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0c\n\x04type\x18\x02 \x01(\r\x12\r\n\x05\x66lags\x18\x03 \x01(\r\x12\x0c\n\x04\x62ody\x18\x04 \x01(\x0c\"j\n\x13ofp_multipart_reply\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0c\n\x04type\x18\x02 \x01(\r\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\"\x9c\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\x17.openflow.v13.ofp_match\"\x8e\x02\n\x0eofp_flow_stats\x12\x0e\n\x06length\x18\x01 \x01(\r\x12\x10\n\x08table_id\x18\x02 \x01(\r\x12\x14\n\x0c\x64uration_sec\x18\x03 \x01(\r\x12\x15\n\rduration_nsec\x18\x04 \x01(\r\x12\x10\n\x08priority\x18\x05 \x01(\r\x12\x14\n\x0cidle_timeout\x18\x06 \x01(\r\x12\x14\n\x0chard_timeout\x18\x07 \x01(\r\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x12\x0e\n\x06\x63ookie\x18\t \x01(\x04\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\x17.openflow.v13.ofp_match\"\xa1\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\x17.openflow.v13.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\"=\n\x1dofp_table_feature_prop_header\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\"{\n#ofp_table_feature_prop_instructions\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\x12\x36\n\x0finstruction_ids\x18\x03 \x03(\x0b\x32\x1d.openflow.v13.ofp_instruction\"Z\n\"ofp_table_feature_prop_next_tables\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\x12\x16\n\x0enext_table_ids\x18\x03 \x03(\r\"s\n\x1eofp_table_feature_prop_actions\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\x12\x33\n\naction_ids\x18\x03 \x03(\x0b\x32\x1f.openflow.v13.ofp_action_header\"K\n\x1aofp_table_feature_prop_oxm\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\x12\x0f\n\x07oxm_ids\x18\x03 \x03(\r\"\x86\x01\n#ofp_table_feature_prop_experimenter\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\x12\x14\n\x0c\x65xperimenter\x18\x03 \x01(\r\x12\x10\n\x08\x65xp_type\x18\x04 \x01(\r\x12\x19\n\x11\x65xperimenter_data\x18\x05 \x03(\r\"\xda\x01\n\x12ofp_table_features\x12\x0e\n\x06length\x18\x01 \x01(\r\x12\x10\n\x08table_id\x18\x02 \x01(\r\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x16\n\x0emetadata_match\x18\x04 \x01(\x04\x12\x16\n\x0emetadata_write\x18\x05 \x01(\x04\x12\x0e\n\x06\x63onfig\x18\x06 \x01(\r\x12\x13\n\x0bmax_entries\x18\x07 \x01(\r\x12?\n\nproperties\x18\x08 \x03(\x0b\x32+.openflow.v13.ofp_table_feature_prop_header\"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\"\xd5\x01\n\x0fofp_group_stats\x12\x0e\n\x06length\x18\x01 \x01(\r\x12\x10\n\x08group_id\x18\x02 \x01(\r\x12\x11\n\tref_count\x18\x03 \x01(\r\x12\x14\n\x0cpacket_count\x18\x04 \x01(\x04\x12\x12\n\nbyte_count\x18\x05 \x01(\x04\x12\x14\n\x0c\x64uration_sec\x18\x06 \x01(\r\x12\x15\n\rduration_nsec\x18\x07 \x01(\r\x12\x36\n\x0c\x62ucket_stats\x18\x08 \x03(\x0b\x32 .openflow.v13.ofp_bucket_counter\"x\n\x0eofp_group_desc\x12\x0e\n\x06length\x18\x01 \x01(\r\x12\x0c\n\x04type\x18\x02 \x01(\r\x12\x0b\n\x03pad\x18\x03 \x01(\r\x12\x10\n\x08group_id\x18\x04 \x01(\r\x12)\n\x07\x62uckets\x18\x05 \x03(\x0b\x32\x18.openflow.v13.ofp_bucket\"^\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\"\xd9\x01\n\x0fofp_meter_stats\x12\x10\n\x08meter_id\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \x01(\r\x12\x12\n\nflow_count\x18\x03 \x01(\r\x12\x17\n\x0fpacket_in_count\x18\x04 \x01(\x04\x12\x15\n\rbyte_in_count\x18\x05 \x01(\x04\x12\x14\n\x0c\x64uration_sec\x18\x06 \x01(\r\x12\x15\n\rduration_nsec\x18\x07 \x01(\r\x12\x36\n\nband_stats\x18\x08 \x03(\x0b\x32\".openflow.v13.ofp_meter_band_stats\"w\n\x10ofp_meter_config\x12\x0e\n\x06length\x18\x01 \x01(\r\x12\r\n\x05\x66lags\x18\x02 \x01(\r\x12\x10\n\x08meter_id\x18\x03 \x01(\r\x12\x32\n\x05\x62\x61nds\x18\x04 \x03(\x0b\x32#.openflow.v13.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\"y\n\x17ofp_experimenter_header\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_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\"a\n\x17ofp_queue_prop_min_rate\x12\x38\n\x0bprop_header\x18\x01 \x01(\x0b\x32#.openflow.v13.ofp_queue_prop_header\x12\x0c\n\x04rate\x18\x02 \x01(\r\"a\n\x17ofp_queue_prop_max_rate\x12\x38\n\x0bprop_header\x18\x01 \x01(\x0b\x32#.openflow.v13.ofp_queue_prop_header\x12\x0c\n\x04rate\x18\x02 \x01(\r\"{\n\x1bofp_queue_prop_experimenter\x12\x38\n\x0bprop_header\x18\x01 \x01(\x0b\x32#.openflow.v13.ofp_queue_prop_header\x12\x14\n\x0c\x65xperimenter\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"x\n\x10ofp_packet_queue\x12\x10\n\x08queue_id\x18\x01 \x01(\r\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x0b\n\x03len\x18\x03 \x01(\r\x12\x37\n\nproperties\x18\x04 \x03(\x0b\x32#.openflow.v13.ofp_queue_prop_header\"V\n\x1cofp_queue_get_config_request\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0c\n\x04port\x18\x02 \x01(\r\"\x84\x01\n\x1aofp_queue_get_config_reply\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0c\n\x04port\x18\x02 \x01(\r\x12.\n\x06queues\x18\x03 \x03(\x0b\x32\x1e.openflow.v13.ofp_packet_queue\"C\n\x14ofp_action_set_queue\x12\x0c\n\x04type\x18\x01 \x01(\r\x12\x0b\n\x03len\x18\x02 \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\"a\n\x10ofp_role_request\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\x12\x0c\n\x04role\x18\x02 \x01(\r\x12\x15\n\rgeneration_id\x18\x03 \x01(\x04\"\x89\x01\n\x10ofp_async_config\x12(\n\x06header\x18\x01 \x01(\x0b\x32\x18.openflow.v13.ofp_header\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*\x91\x08\n\x14oxm_ofb_match_fields\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\x8d\x05\n\x08OpenFlow\x12>\n\x08GetHello\x12\x17.openflow.v13.ofp_hello\x1a\x17.openflow.v13.ofp_hello\"\x00\x12\x43\n\x0b\x45\x63hoRequest\x12\x18.openflow.v13.ofp_header\x1a\x18.openflow.v13.ofp_header\"\x00\x12\x65\n\x13\x45xperimenterRequest\x12%.openflow.v13.ofp_experimenter_header\x1a%.openflow.v13.ofp_experimenter_header\"\x00\x12R\n\x11GetSwitchFeatures\x12\x18.openflow.v13.ofp_header\x1a!.openflow.v13.ofp_switch_features\"\x00\x12N\n\x0fGetSwitchConfig\x12\x18.openflow.v13.ofp_header\x1a\x1f.openflow.v13.ofp_switch_config\"\x00\x12H\n\tSetConfig\x12\x1f.openflow.v13.ofp_switch_config\x1a\x18.openflow.v13.ofp_header\"\x00\x12T\n\x17ReceivePacketInMessages\x12\x18.openflow.v13.ofp_header\x1a\x1b.openflow.v13.ofp_packet_in\"\x00\x30\x01\x12Q\n\x15SendPacketOutMessages\x12\x1c.openflow.v13.ofp_packet_out\x1a\x18.openflow.v13.ofp_header\"\x00\x62\x06proto3')
)
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

_OFP_PORT_NO = _descriptor.EnumDescriptor(
  name='ofp_port_no',
  full_name='openflow.v13.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=9338,
  serialized_end=9551,
)
_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.v13.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=9554,
  serialized_end=10266,
)
_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.v13.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=10268,
  serialized_end=10335,
)
_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.v13.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=10337,
  serialized_end=10438,
)
_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.v13.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=10440,
  serialized_end=10504,
)
_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.v13.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=10506,
  serialized_end=10568,
)
_sym_db.RegisterEnumDescriptor(_OFP_TABLE)

ofp_table = enum_type_wrapper.EnumTypeWrapper(_OFP_TABLE)
_OFP_CAPABILITIES = _descriptor.EnumDescriptor(
  name='ofp_capabilities',
  full_name='openflow.v13.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=10571,
  serialized_end=10758,
)
_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.v13.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=10760,
  serialized_end=10878,
)
_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.v13.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=10880,
  serialized_end=10971,
)
_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.v13.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=10974,
  serialized_end=11323,
)
_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.v13.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=11325,
  serialized_end=11393,
)
_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.v13.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=11395,
  serialized_end=11446,
)
_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.v13.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=11448,
  serialized_end=11555,
)
_sym_db.RegisterEnumDescriptor(_OFP_OXM_CLASS)

ofp_oxm_class = enum_type_wrapper.EnumTypeWrapper(_OFP_OXM_CLASS)
_OXM_OFB_MATCH_FIELDS = _descriptor.EnumDescriptor(
  name='oxm_ofb_match_fields',
  full_name='openflow.v13.oxm_ofb_match_fields',
  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=11558,
  serialized_end=12599,
)
_sym_db.RegisterEnumDescriptor(_OXM_OFB_MATCH_FIELDS)

oxm_ofb_match_fields = enum_type_wrapper.EnumTypeWrapper(_OXM_OFB_MATCH_FIELDS)
_OFP_VLAN_ID = _descriptor.EnumDescriptor(
  name='ofp_vlan_id',
  full_name='openflow.v13.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=12601,
  serialized_end=12652,
)
_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.v13.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=12655,
  serialized_end=12856,
)
_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.v13.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=12859,
  serialized_end=13239,
)
_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.v13.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=13241,
  serialized_end=13327,
)
_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.v13.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=13330,
  serialized_end=13537,
)
_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.v13.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=13539,
  serialized_end=13662,
)
_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.v13.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=13665,
  serialized_end=13828,
)
_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.v13.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=13830,
  serialized_end=13913,
)
_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.v13.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=13915,
  serialized_end=13989,
)
_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.v13.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=13991,
  serialized_end=14074,
)
_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.v13.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=14076,
  serialized_end=14156,
)
_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.v13.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=14159,
  serialized_end=14298,
)
_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.v13.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=14300,
  serialized_end=14410,
)
_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.v13.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=14412,
  serialized_end=14521,
)
_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.v13.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=14523,
  serialized_end=14597,
)
_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.v13.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=14599,
  serialized_end=14702,
)
_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.v13.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=14705,
  serialized_end=15125,
)
_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.v13.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=15127,
  serialized_end=15193,
)
_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.v13.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=15196,
  serialized_end=15561,
)
_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.v13.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=15564,
  serialized_end=15976,
)
_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.v13.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=15979,
  serialized_end=16229,
)
_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.v13.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=16232,
  serialized_end=16525,
)
_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.v13.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=16528,
  serialized_end=16738,
)
_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.v13.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=16741,
  serialized_end=17158,
)
_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.v13.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=17161,
  serialized_end=17304,
)
_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.v13.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=17306,
  serialized_end=17399,
)
_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.v13.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=17401,
  serialized_end=17491,
)
_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.v13.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=17493,
  serialized_end=17587,
)
_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.v13.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=17589,
  serialized_end=17679,
)
_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.v13.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=17682,
  serialized_end=18006,
)
_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.v13.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=18009,
  serialized_end=18178,
)
_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.v13.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=18181,
  serialized_end=18515,
)
_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.v13.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=18517,
  serialized_end=18591,
)
_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.v13.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=18593,
  serialized_end=18669,
)
_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.v13.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=18672,
  serialized_end=19156,
)
_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.v13.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=19159,
  serialized_end=19306,
)
_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.v13.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=19308,
  serialized_end=19415,
)
_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.v13.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=19417,
  serialized_end=19530,
)
_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.v13.ofp_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='version', full_name='openflow.v13.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.v13.ofp_header.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='length', full_name='openflow.v13.ofp_header.length', 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='xid', full_name='openflow.v13.ofp_header.xid', 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=35,
  serialized_end=107,
)


_OFP_HELLO_ELEM_HEADER = _descriptor.Descriptor(
  name='ofp_hello_elem_header',
  full_name='openflow.v13.ofp_hello_elem_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_hello_elem_header.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='length', full_name='openflow.v13.ofp_hello_elem_header.length', 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=109,
  serialized_end=162,
)


_OFP_HELLO_ELEM_VERSIONBITMAP = _descriptor.Descriptor(
  name='ofp_hello_elem_versionbitmap',
  full_name='openflow.v13.ofp_hello_elem_versionbitmap',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_hello_elem_versionbitmap.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='length', full_name='openflow.v13.ofp_hello_elem_versionbitmap.length', 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='bitmaps', full_name='openflow.v13.ofp_hello_elem_versionbitmap.bitmaps', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=164,
  serialized_end=241,
)


_OFP_HELLO = _descriptor.Descriptor(
  name='ofp_hello',
  full_name='openflow.v13.ofp_hello',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_hello.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='elements', full_name='openflow.v13.ofp_hello.elements', 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=243,
  serialized_end=351,
)


_OFP_SWITCH_CONFIG = _descriptor.Descriptor(
  name='ofp_switch_config',
  full_name='openflow.v13.ofp_switch_config',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_switch_config.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='flags', full_name='openflow.v13.ofp_switch_config.flags', 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='miss_send_len', full_name='openflow.v13.ofp_switch_config.miss_send_len', 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=353,
  serialized_end=452,
)


_OFP_TABLE_MOD = _descriptor.Descriptor(
  name='ofp_table_mod',
  full_name='openflow.v13.ofp_table_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_table_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='table_id', full_name='openflow.v13.ofp_table_mod.table_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='config', full_name='openflow.v13.ofp_table_mod.config', 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=454,
  serialized_end=545,
)


_OFP_PORT = _descriptor.Descriptor(
  name='ofp_port',
  full_name='openflow.v13.ofp_port',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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=548,
  serialized_end=743,
)


_OFP_SWITCH_FEATURES = _descriptor.Descriptor(
  name='ofp_switch_features',
  full_name='openflow.v13.ofp_switch_features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_switch_features.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='datapath_id', full_name='openflow.v13.ofp_switch_features.datapath_id', 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='n_buffers', full_name='openflow.v13.ofp_switch_features.n_buffers', 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='n_tables', full_name='openflow.v13.ofp_switch_features.n_tables', 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='auxiliary_id', full_name='openflow.v13.ofp_switch_features.auxiliary_id', 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='capabilities', full_name='openflow.v13.ofp_switch_features.capabilities', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=746,
  serialized_end=911,
)


_OFP_PORT_STATUS = _descriptor.Descriptor(
  name='ofp_port_status',
  full_name='openflow.v13.ofp_port_status',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_port_status.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='reason', full_name='openflow.v13.ofp_port_status.reason', 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='desc', full_name='openflow.v13.ofp_port_status.desc', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=913,
  serialized_end=1026,
)


_OFP_PORT_MOD = _descriptor.Descriptor(
  name='ofp_port_mod',
  full_name='openflow.v13.ofp_port_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_port_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='port_no', full_name='openflow.v13.ofp_port_mod.port_no', 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='hw_addr', full_name='openflow.v13.ofp_port_mod.hw_addr', 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='config', full_name='openflow.v13.ofp_port_mod.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='mask', full_name='openflow.v13.ofp_port_mod.mask', 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='advertise', full_name='openflow.v13.ofp_port_mod.advertise', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1029,
  serialized_end=1168,
)


_OFP_MATCH = _descriptor.Descriptor(
  name='ofp_match',
  full_name='openflow.v13.ofp_match',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_match.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='length', full_name='openflow.v13.ofp_match.length', 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='oxm_fields', full_name='openflow.v13.ofp_match.oxm_fields', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1170,
  serialized_end=1231,
)


_OFP_OXM_EXPERIMENTER_HEADER = _descriptor.Descriptor(
  name='ofp_oxm_experimenter_header',
  full_name='openflow.v13.ofp_oxm_experimenter_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='oxm_header', full_name='openflow.v13.ofp_oxm_experimenter_header.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.v13.ofp_oxm_experimenter_header.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=1233,
  serialized_end=1304,
)


_OFP_ACTION_HEADER = _descriptor.Descriptor(
  name='ofp_action_header',
  full_name='openflow.v13.ofp_action_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_header.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.v13.ofp_action_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=1306,
  serialized_end=1352,
)


_OFP_ACTION_OUTPUT = _descriptor.Descriptor(
  name='ofp_action_output',
  full_name='openflow.v13.ofp_action_output',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_output.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.v13.ofp_action_output.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='port', full_name='openflow.v13.ofp_action_output.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='max_len', full_name='openflow.v13.ofp_action_output.max_len', 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=1354,
  serialized_end=1431,
)


_OFP_ACTION_MPLS_TTL = _descriptor.Descriptor(
  name='ofp_action_mpls_ttl',
  full_name='openflow.v13.ofp_action_mpls_ttl',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_mpls_ttl.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.v13.ofp_action_mpls_ttl.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='mpls_ttl', full_name='openflow.v13.ofp_action_mpls_ttl.mpls_ttl', 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=1433,
  serialized_end=1499,
)


_OFP_ACTION_PUSH = _descriptor.Descriptor(
  name='ofp_action_push',
  full_name='openflow.v13.ofp_action_push',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_push.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.v13.ofp_action_push.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='ethertype', full_name='openflow.v13.ofp_action_push.ethertype', 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=1501,
  serialized_end=1564,
)


_OFP_ACTION_POP_MPLS = _descriptor.Descriptor(
  name='ofp_action_pop_mpls',
  full_name='openflow.v13.ofp_action_pop_mpls',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_pop_mpls.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.v13.ofp_action_pop_mpls.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='ethertype', full_name='openflow.v13.ofp_action_pop_mpls.ethertype', 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=1566,
  serialized_end=1633,
)


_OFP_ACTION_GROUP = _descriptor.Descriptor(
  name='ofp_action_group',
  full_name='openflow.v13.ofp_action_group',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_group.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.v13.ofp_action_group.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='group_id', full_name='openflow.v13.ofp_action_group.group_id', 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=1635,
  serialized_end=1698,
)


_OFP_ACTION_NW_TTL = _descriptor.Descriptor(
  name='ofp_action_nw_ttl',
  full_name='openflow.v13.ofp_action_nw_ttl',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_nw_ttl.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.v13.ofp_action_nw_ttl.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='nw_ttl', full_name='openflow.v13.ofp_action_nw_ttl.nw_ttl', 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=1700,
  serialized_end=1762,
)


_OFP_ACTION_SET_FIELD = _descriptor.Descriptor(
  name='ofp_action_set_field',
  full_name='openflow.v13.ofp_action_set_field',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_set_field.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.v13.ofp_action_set_field.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='field', full_name='openflow.v13.ofp_action_set_field.field', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1764,
  serialized_end=1828,
)


_OFP_ACTION_EXPERIMENTER_HEADER = _descriptor.Descriptor(
  name='ofp_action_experimenter_header',
  full_name='openflow.v13.ofp_action_experimenter_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_action_experimenter_header.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.v13.ofp_action_experimenter_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='experimenter', full_name='openflow.v13.ofp_action_experimenter_header.experimenter', 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=1830,
  serialized_end=1911,
)


_OFP_INSTRUCTION = _descriptor.Descriptor(
  name='ofp_instruction',
  full_name='openflow.v13.ofp_instruction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.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='len', full_name='openflow.v13.ofp_instruction.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=1913,
  serialized_end=1957,
)


_OFP_INSTRUCTION_GOTO_TABLE = _descriptor.Descriptor(
  name='ofp_instruction_goto_table',
  full_name='openflow.v13.ofp_instruction_goto_table',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_instruction_goto_table.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.v13.ofp_instruction_goto_table.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='table_id', full_name='openflow.v13.ofp_instruction_goto_table.table_id', 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=1959,
  serialized_end=2032,
)


_OFP_INSTRUCTION_WRITE_METADATA = _descriptor.Descriptor(
  name='ofp_instruction_write_metadata',
  full_name='openflow.v13.ofp_instruction_write_metadata',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_instruction_write_metadata.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.v13.ofp_instruction_write_metadata.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='metadata', full_name='openflow.v13.ofp_instruction_write_metadata.metadata', 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_mask', full_name='openflow.v13.ofp_instruction_write_metadata.metadata_mask', 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=2034,
  serialized_end=2134,
)


_OFP_INSTRUCTION_ACTIONS = _descriptor.Descriptor(
  name='ofp_instruction_actions',
  full_name='openflow.v13.ofp_instruction_actions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_instruction_actions.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.v13.ofp_instruction_actions.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='actions', full_name='openflow.v13.ofp_instruction_actions.actions', 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=2136,
  serialized_end=2238,
)


_OFP_INSTRUCTION_METER = _descriptor.Descriptor(
  name='ofp_instruction_meter',
  full_name='openflow.v13.ofp_instruction_meter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_instruction_meter.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.v13.ofp_instruction_meter.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='meter_id', full_name='openflow.v13.ofp_instruction_meter.meter_id', 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=2240,
  serialized_end=2308,
)


_OFP_INSTRUCTION_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_instruction_experimenter',
  full_name='openflow.v13.ofp_instruction_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_instruction_experimenter.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.v13.ofp_instruction_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='experimenter', full_name='openflow.v13.ofp_instruction_experimenter.experimenter', 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=2310,
  serialized_end=2389,
)


_OFP_FLOW_MOD = _descriptor.Descriptor(
  name='ofp_flow_mod',
  full_name='openflow.v13.ofp_flow_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_flow_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='cookie', full_name='openflow.v13.ofp_flow_mod.cookie', 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='cookie_mask', full_name='openflow.v13.ofp_flow_mod.cookie_mask', 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='table_id', full_name='openflow.v13.ofp_flow_mod.table_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='command', full_name='openflow.v13.ofp_flow_mod.command', 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='idle_timeout', full_name='openflow.v13.ofp_flow_mod.idle_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='hard_timeout', full_name='openflow.v13.ofp_flow_mod.hard_timeout', 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='priority', full_name='openflow.v13.ofp_flow_mod.priority', 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='buffer_id', full_name='openflow.v13.ofp_flow_mod.buffer_id', 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='out_port', full_name='openflow.v13.ofp_flow_mod.out_port', 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='out_group', full_name='openflow.v13.ofp_flow_mod.out_group', 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='flags', full_name='openflow.v13.ofp_flow_mod.flags', 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='match', full_name='openflow.v13.ofp_flow_mod.match', index=12,
      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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2392,
  serialized_end=2693,
)


_OFP_BUCKET = _descriptor.Descriptor(
  name='ofp_bucket',
  full_name='openflow.v13.ofp_bucket',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='len', full_name='openflow.v13.ofp_bucket.len', 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='weight', full_name='openflow.v13.ofp_bucket.weight', 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_port', full_name='openflow.v13.ofp_bucket.watch_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='watch_group', full_name='openflow.v13.ofp_bucket.watch_group', 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='actions', full_name='openflow.v13.ofp_bucket.actions', 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=2696,
  serialized_end=2828,
)


_OFP_GROUP_MOD = _descriptor.Descriptor(
  name='ofp_group_mod',
  full_name='openflow.v13.ofp_group_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_group_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.v13.ofp_group_mod.command', 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='type', full_name='openflow.v13.ofp_group_mod.type', 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='group_id', full_name='openflow.v13.ofp_group_mod.group_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='buckets', full_name='openflow.v13.ofp_group_mod.buckets', 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=2831,
  serialized_end=2980,
)


_OFP_PACKET_OUT = _descriptor.Descriptor(
  name='ofp_packet_out',
  full_name='openflow.v13.ofp_packet_out',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_packet_out.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='buffer_id', full_name='openflow.v13.ofp_packet_out.buffer_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='in_port', full_name='openflow.v13.ofp_packet_out.in_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='actions_len', full_name='openflow.v13.ofp_packet_out.actions_len', 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='actions', full_name='openflow.v13.ofp_packet_out.actions', 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=2983,
  serialized_end=3148,
)


_OFP_PACKET_IN = _descriptor.Descriptor(
  name='ofp_packet_in',
  full_name='openflow.v13.ofp_packet_in',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_packet_in.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='buffer_id', full_name='openflow.v13.ofp_packet_in.buffer_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='total_len', full_name='openflow.v13.ofp_packet_in.total_len', 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='reason', full_name='openflow.v13.ofp_packet_in.reason', 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_id', full_name='openflow.v13.ofp_packet_in.table_id', 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='cookie', full_name='openflow.v13.ofp_packet_in.cookie', 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='match', full_name='openflow.v13.ofp_packet_in.match', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3151,
  serialized_end=3336,
)


_OFP_FLOW_REMOVED = _descriptor.Descriptor(
  name='ofp_flow_removed',
  full_name='openflow.v13.ofp_flow_removed',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_flow_removed.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='cookie', full_name='openflow.v13.ofp_flow_removed.cookie', 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='priority', full_name='openflow.v13.ofp_flow_removed.priority', 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='reason', full_name='openflow.v13.ofp_flow_removed.reason', 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_id', full_name='openflow.v13.ofp_flow_removed.table_id', 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_sec', full_name='openflow.v13.ofp_flow_removed.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.v13.ofp_flow_removed.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),
    _descriptor.FieldDescriptor(
      name='idle_timeout', full_name='openflow.v13.ofp_flow_removed.idle_timeout', 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='hard_timeout', full_name='openflow.v13.ofp_flow_removed.hard_timeout', 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='packet_count', full_name='openflow.v13.ofp_flow_removed.packet_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='byte_count', full_name='openflow.v13.ofp_flow_removed.byte_count', 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='match', full_name='openflow.v13.ofp_flow_removed.match', index=11,
      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=3339,
  serialized_end=3638,
)


_OFP_METER_BAND_HEADER = _descriptor.Descriptor(
  name='ofp_meter_band_header',
  full_name='openflow.v13.ofp_meter_band_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_meter_band_header.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.v13.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.v13.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.v13.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=3640,
  serialized_end=3724,
)


_OFP_METER_BAND_DROP = _descriptor.Descriptor(
  name='ofp_meter_band_drop',
  full_name='openflow.v13.ofp_meter_band_drop',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.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.v13.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.v13.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.v13.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=3726,
  serialized_end=3808,
)


_OFP_METER_BAND_DSCP_REMARK = _descriptor.Descriptor(
  name='ofp_meter_band_dscp_remark',
  full_name='openflow.v13.ofp_meter_band_dscp_remark',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.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.v13.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.v13.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.v13.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.v13.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=3810,
  serialized_end=3919,
)


_OFP_METER_BAND_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_meter_band_experimenter',
  full_name='openflow.v13.ofp_meter_band_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_meter_band_experimenter.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.v13.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.v13.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.v13.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.v13.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=3921,
  serialized_end=4033,
)


_OFP_METER_MOD = _descriptor.Descriptor(
  name='ofp_meter_mod',
  full_name='openflow.v13.ofp_meter_mod',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.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.v13.ofp_meter_mod.command', 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='flags', full_name='openflow.v13.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.v13.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.v13.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=4036,
  serialized_end=4195,
)


_OFP_ERROR_MSG = _descriptor.Descriptor(
  name='ofp_error_msg',
  full_name='openflow.v13.ofp_error_msg',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_error_msg.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='type', full_name='openflow.v13.ofp_error_msg.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='code', full_name='openflow.v13.ofp_error_msg.code', 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='data', full_name='openflow.v13.ofp_error_msg.data', index=3,
      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=4197,
  serialized_end=4296,
)


_OFP_ERROR_EXPERIMENTER_MSG = _descriptor.Descriptor(
  name='ofp_error_experimenter_msg',
  full_name='openflow.v13.ofp_error_experimenter_msg',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_error_experimenter_msg.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='type', full_name='openflow.v13.ofp_error_experimenter_msg.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='exp_type', full_name='openflow.v13.ofp_error_experimenter_msg.exp_type', 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='experimenter', full_name='openflow.v13.ofp_error_experimenter_msg.experimenter', 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='data', full_name='openflow.v13.ofp_error_experimenter_msg.data', index=4,
      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=4299,
  serialized_end=4437,
)


_OFP_MULTIPART_REQUEST = _descriptor.Descriptor(
  name='ofp_multipart_request',
  full_name='openflow.v13.ofp_multipart_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_multipart_request.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='type', full_name='openflow.v13.ofp_multipart_request.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='flags', full_name='openflow.v13.ofp_multipart_request.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='body', full_name='openflow.v13.ofp_multipart_request.body', index=3,
      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=4439,
  serialized_end=4547,
)


_OFP_MULTIPART_REPLY = _descriptor.Descriptor(
  name='ofp_multipart_reply',
  full_name='openflow.v13.ofp_multipart_reply',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_multipart_reply.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='type', full_name='openflow.v13.ofp_multipart_reply.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='flags', full_name='openflow.v13.ofp_multipart_reply.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='body', full_name='openflow.v13.ofp_multipart_reply.body', index=3,
      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=4549,
  serialized_end=4655,
)


_OFP_DESC = _descriptor.Descriptor(
  name='ofp_desc',
  full_name='openflow.v13.ofp_desc',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='mfr_desc', full_name='openflow.v13.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.v13.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.v13.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.v13.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.v13.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=4657,
  serialized_end=4756,
)


_OFP_FLOW_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_flow_stats_request',
  full_name='openflow.v13.ofp_flow_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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=4759,
  serialized_end=4915,
)


_OFP_FLOW_STATS = _descriptor.Descriptor(
  name='ofp_flow_stats',
  full_name='openflow.v13.ofp_flow_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='length', full_name='openflow.v13.ofp_flow_stats.length', 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='table_id', full_name='openflow.v13.ofp_flow_stats.table_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='duration_sec', full_name='openflow.v13.ofp_flow_stats.duration_sec', 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='duration_nsec', full_name='openflow.v13.ofp_flow_stats.duration_nsec', 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='priority', full_name='openflow.v13.ofp_flow_stats.priority', 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='idle_timeout', full_name='openflow.v13.ofp_flow_stats.idle_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='hard_timeout', full_name='openflow.v13.ofp_flow_stats.hard_timeout', 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='flags', full_name='openflow.v13.ofp_flow_stats.flags', 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='cookie', full_name='openflow.v13.ofp_flow_stats.cookie', 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='packet_count', full_name='openflow.v13.ofp_flow_stats.packet_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='byte_count', full_name='openflow.v13.ofp_flow_stats.byte_count', 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='match', full_name='openflow.v13.ofp_flow_stats.match', index=11,
      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=4918,
  serialized_end=5188,
)


_OFP_AGGREGATE_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_aggregate_stats_request',
  full_name='openflow.v13.ofp_aggregate_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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=5191,
  serialized_end=5352,
)


_OFP_AGGREGATE_STATS_REPLY = _descriptor.Descriptor(
  name='ofp_aggregate_stats_reply',
  full_name='openflow.v13.ofp_aggregate_stats_reply',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='packet_count', full_name='openflow.v13.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.v13.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.v13.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=5354,
  serialized_end=5443,
)


_OFP_TABLE_FEATURE_PROP_HEADER = _descriptor.Descriptor(
  name='ofp_table_feature_prop_header',
  full_name='openflow.v13.ofp_table_feature_prop_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_table_feature_prop_header.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='length', full_name='openflow.v13.ofp_table_feature_prop_header.length', 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=5445,
  serialized_end=5506,
)


_OFP_TABLE_FEATURE_PROP_INSTRUCTIONS = _descriptor.Descriptor(
  name='ofp_table_feature_prop_instructions',
  full_name='openflow.v13.ofp_table_feature_prop_instructions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_table_feature_prop_instructions.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='length', full_name='openflow.v13.ofp_table_feature_prop_instructions.length', 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='instruction_ids', full_name='openflow.v13.ofp_table_feature_prop_instructions.instruction_ids', 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=5508,
  serialized_end=5631,
)


_OFP_TABLE_FEATURE_PROP_NEXT_TABLES = _descriptor.Descriptor(
  name='ofp_table_feature_prop_next_tables',
  full_name='openflow.v13.ofp_table_feature_prop_next_tables',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_table_feature_prop_next_tables.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='length', full_name='openflow.v13.ofp_table_feature_prop_next_tables.length', 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='next_table_ids', full_name='openflow.v13.ofp_table_feature_prop_next_tables.next_table_ids', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5633,
  serialized_end=5723,
)


_OFP_TABLE_FEATURE_PROP_ACTIONS = _descriptor.Descriptor(
  name='ofp_table_feature_prop_actions',
  full_name='openflow.v13.ofp_table_feature_prop_actions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_table_feature_prop_actions.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='length', full_name='openflow.v13.ofp_table_feature_prop_actions.length', 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='action_ids', full_name='openflow.v13.ofp_table_feature_prop_actions.action_ids', 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=5725,
  serialized_end=5840,
)


_OFP_TABLE_FEATURE_PROP_OXM = _descriptor.Descriptor(
  name='ofp_table_feature_prop_oxm',
  full_name='openflow.v13.ofp_table_feature_prop_oxm',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_table_feature_prop_oxm.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='length', full_name='openflow.v13.ofp_table_feature_prop_oxm.length', 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='oxm_ids', full_name='openflow.v13.ofp_table_feature_prop_oxm.oxm_ids', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5842,
  serialized_end=5917,
)


_OFP_TABLE_FEATURE_PROP_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_table_feature_prop_experimenter',
  full_name='openflow.v13.ofp_table_feature_prop_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.ofp_table_feature_prop_experimenter.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='length', full_name='openflow.v13.ofp_table_feature_prop_experimenter.length', 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='experimenter', full_name='openflow.v13.ofp_table_feature_prop_experimenter.experimenter', 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='exp_type', full_name='openflow.v13.ofp_table_feature_prop_experimenter.exp_type', 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_data', full_name='openflow.v13.ofp_table_feature_prop_experimenter.experimenter_data', index=4,
      number=5, 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=5920,
  serialized_end=6054,
)


_OFP_TABLE_FEATURES = _descriptor.Descriptor(
  name='ofp_table_features',
  full_name='openflow.v13.ofp_table_features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='length', full_name='openflow.v13.ofp_table_features.length', 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='table_id', full_name='openflow.v13.ofp_table_features.table_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='name', full_name='openflow.v13.ofp_table_features.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='metadata_match', full_name='openflow.v13.ofp_table_features.metadata_match', 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='metadata_write', full_name='openflow.v13.ofp_table_features.metadata_write', 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='config', full_name='openflow.v13.ofp_table_features.config', 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='max_entries', full_name='openflow.v13.ofp_table_features.max_entries', 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='properties', full_name='openflow.v13.ofp_table_features.properties', index=7,
      number=8, 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=6057,
  serialized_end=6275,
)


_OFP_TABLE_STATS = _descriptor.Descriptor(
  name='ofp_table_stats',
  full_name='openflow.v13.ofp_table_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table_id', full_name='openflow.v13.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.v13.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.v13.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.v13.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=6277,
  serialized_end=6379,
)


_OFP_PORT_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_port_stats_request',
  full_name='openflow.v13.ofp_port_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow.v13.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=6381,
  serialized_end=6422,
)


_OFP_PORT_STATS = _descriptor.Descriptor(
  name='ofp_port_stats',
  full_name='openflow.v13.ofp_port_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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=6425,
  serialized_end=6740,
)


_OFP_GROUP_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_group_stats_request',
  full_name='openflow.v13.ofp_group_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='group_id', full_name='openflow.v13.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=6742,
  serialized_end=6785,
)


_OFP_BUCKET_COUNTER = _descriptor.Descriptor(
  name='ofp_bucket_counter',
  full_name='openflow.v13.ofp_bucket_counter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='packet_count', full_name='openflow.v13.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.v13.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=6787,
  serialized_end=6849,
)


_OFP_GROUP_STATS = _descriptor.Descriptor(
  name='ofp_group_stats',
  full_name='openflow.v13.ofp_group_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='length', full_name='openflow.v13.ofp_group_stats.length', 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='group_id', full_name='openflow.v13.ofp_group_stats.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='ref_count', full_name='openflow.v13.ofp_group_stats.ref_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),
    _descriptor.FieldDescriptor(
      name='packet_count', full_name='openflow.v13.ofp_group_stats.packet_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='byte_count', full_name='openflow.v13.ofp_group_stats.byte_count', 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.v13.ofp_group_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.v13.ofp_group_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),
    _descriptor.FieldDescriptor(
      name='bucket_stats', full_name='openflow.v13.ofp_group_stats.bucket_stats', index=7,
      number=8, 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=6852,
  serialized_end=7065,
)


_OFP_GROUP_DESC = _descriptor.Descriptor(
  name='ofp_group_desc',
  full_name='openflow.v13.ofp_group_desc',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='length', full_name='openflow.v13.ofp_group_desc.length', 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.v13.ofp_group_desc.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='pad', full_name='openflow.v13.ofp_group_desc.pad', 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='group_id', full_name='openflow.v13.ofp_group_desc.group_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='buckets', full_name='openflow.v13.ofp_group_desc.buckets', 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=7067,
  serialized_end=7187,
)


_OFP_GROUP_FEATURES = _descriptor.Descriptor(
  name='ofp_group_features',
  full_name='openflow.v13.ofp_group_features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='types', full_name='openflow.v13.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.v13.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.v13.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.v13.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=7189,
  serialized_end=7283,
)


_OFP_METER_MULTIPART_REQUEST = _descriptor.Descriptor(
  name='ofp_meter_multipart_request',
  full_name='openflow.v13.ofp_meter_multipart_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='meter_id', full_name='openflow.v13.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=7285,
  serialized_end=7332,
)


_OFP_METER_BAND_STATS = _descriptor.Descriptor(
  name='ofp_meter_band_stats',
  full_name='openflow.v13.ofp_meter_band_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='packet_band_count', full_name='openflow.v13.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.v13.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=7334,
  serialized_end=7408,
)


_OFP_METER_STATS = _descriptor.Descriptor(
  name='ofp_meter_stats',
  full_name='openflow.v13.ofp_meter_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='meter_id', full_name='openflow.v13.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='len', full_name='openflow.v13.ofp_meter_stats.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='flow_count', full_name='openflow.v13.ofp_meter_stats.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),
    _descriptor.FieldDescriptor(
      name='packet_in_count', full_name='openflow.v13.ofp_meter_stats.packet_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='byte_in_count', full_name='openflow.v13.ofp_meter_stats.byte_in_count', 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.v13.ofp_meter_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.v13.ofp_meter_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),
    _descriptor.FieldDescriptor(
      name='band_stats', full_name='openflow.v13.ofp_meter_stats.band_stats', index=7,
      number=8, 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=7411,
  serialized_end=7628,
)


_OFP_METER_CONFIG = _descriptor.Descriptor(
  name='ofp_meter_config',
  full_name='openflow.v13.ofp_meter_config',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='length', full_name='openflow.v13.ofp_meter_config.length', 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='flags', full_name='openflow.v13.ofp_meter_config.flags', 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='meter_id', full_name='openflow.v13.ofp_meter_config.meter_id', 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='bands', full_name='openflow.v13.ofp_meter_config.bands', 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=7630,
  serialized_end=7749,
)


_OFP_METER_FEATURES = _descriptor.Descriptor(
  name='ofp_meter_features',
  full_name='openflow.v13.ofp_meter_features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='max_meter', full_name='openflow.v13.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.v13.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.v13.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.v13.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.v13.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=7751,
  serialized_end=7870,
)


_OFP_EXPERIMENTER_MULTIPART_HEADER = _descriptor.Descriptor(
  name='ofp_experimenter_multipart_header',
  full_name='openflow.v13.ofp_experimenter_multipart_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='experimenter', full_name='openflow.v13.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.v13.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.v13.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=7872,
  serialized_end=7961,
)


_OFP_EXPERIMENTER_HEADER = _descriptor.Descriptor(
  name='ofp_experimenter_header',
  full_name='openflow.v13.ofp_experimenter_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_experimenter_header.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.v13.ofp_experimenter_header.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='exp_type', full_name='openflow.v13.ofp_experimenter_header.exp_type', 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='data', full_name='openflow.v13.ofp_experimenter_header.data', index=3,
      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=7963,
  serialized_end=8084,
)


_OFP_QUEUE_PROP_HEADER = _descriptor.Descriptor(
  name='ofp_queue_prop_header',
  full_name='openflow.v13.ofp_queue_prop_header',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='property', full_name='openflow.v13.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.v13.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=8086,
  serialized_end=8140,
)


_OFP_QUEUE_PROP_MIN_RATE = _descriptor.Descriptor(
  name='ofp_queue_prop_min_rate',
  full_name='openflow.v13.ofp_queue_prop_min_rate',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prop_header', full_name='openflow.v13.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.v13.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=8142,
  serialized_end=8239,
)


_OFP_QUEUE_PROP_MAX_RATE = _descriptor.Descriptor(
  name='ofp_queue_prop_max_rate',
  full_name='openflow.v13.ofp_queue_prop_max_rate',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prop_header', full_name='openflow.v13.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.v13.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=8241,
  serialized_end=8338,
)


_OFP_QUEUE_PROP_EXPERIMENTER = _descriptor.Descriptor(
  name='ofp_queue_prop_experimenter',
  full_name='openflow.v13.ofp_queue_prop_experimenter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prop_header', full_name='openflow.v13.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.v13.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.v13.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=8340,
  serialized_end=8463,
)


_OFP_PACKET_QUEUE = _descriptor.Descriptor(
  name='ofp_packet_queue',
  full_name='openflow.v13.ofp_packet_queue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='queue_id', full_name='openflow.v13.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.v13.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='len', full_name='openflow.v13.ofp_packet_queue.len', 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='properties', full_name='openflow.v13.ofp_packet_queue.properties', 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=8465,
  serialized_end=8585,
)


_OFP_QUEUE_GET_CONFIG_REQUEST = _descriptor.Descriptor(
  name='ofp_queue_get_config_request',
  full_name='openflow.v13.ofp_queue_get_config_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_queue_get_config_request.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='port', full_name='openflow.v13.ofp_queue_get_config_request.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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8587,
  serialized_end=8673,
)


_OFP_QUEUE_GET_CONFIG_REPLY = _descriptor.Descriptor(
  name='ofp_queue_get_config_reply',
  full_name='openflow.v13.ofp_queue_get_config_reply',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_queue_get_config_reply.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='port', full_name='openflow.v13.ofp_queue_get_config_reply.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='queues', full_name='openflow.v13.ofp_queue_get_config_reply.queues', 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=8676,
  serialized_end=8808,
)


_OFP_ACTION_SET_QUEUE = _descriptor.Descriptor(
  name='ofp_action_set_queue',
  full_name='openflow.v13.ofp_action_set_queue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='openflow.v13.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='len', full_name='openflow.v13.ofp_action_set_queue.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='queue_id', full_name='openflow.v13.ofp_action_set_queue.queue_id', 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=8810,
  serialized_end=8877,
)


_OFP_QUEUE_STATS_REQUEST = _descriptor.Descriptor(
  name='ofp_queue_stats_request',
  full_name='openflow.v13.ofp_queue_stats_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow.v13.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.v13.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=8879,
  serialized_end=8939,
)


_OFP_QUEUE_STATS = _descriptor.Descriptor(
  name='ofp_queue_stats',
  full_name='openflow.v13.ofp_queue_stats',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='port_no', full_name='openflow.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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=8942,
  serialized_end=9096,
)


_OFP_ROLE_REQUEST = _descriptor.Descriptor(
  name='ofp_role_request',
  full_name='openflow.v13.ofp_role_request',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_role_request.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='role', full_name='openflow.v13.ofp_role_request.role', 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='generation_id', full_name='openflow.v13.ofp_role_request.generation_id', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9098,
  serialized_end=9195,
)


_OFP_ASYNC_CONFIG = _descriptor.Descriptor(
  name='ofp_async_config',
  full_name='openflow.v13.ofp_async_config',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='openflow.v13.ofp_async_config.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='packet_in_mask', full_name='openflow.v13.ofp_async_config.packet_in_mask', 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='port_status_mask', full_name='openflow.v13.ofp_async_config.port_status_mask', 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='flow_removed_mask', full_name='openflow.v13.ofp_async_config.flow_removed_mask', 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=9198,
  serialized_end=9335,
)

_OFP_HELLO.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_HELLO.fields_by_name['elements'].message_type = _OFP_HELLO_ELEM_HEADER
_OFP_SWITCH_CONFIG.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_TABLE_MOD.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_SWITCH_FEATURES.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_PORT_STATUS.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_PORT_STATUS.fields_by_name['desc'].message_type = _OFP_PORT
_OFP_PORT_MOD.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_INSTRUCTION_ACTIONS.fields_by_name['actions'].message_type = _OFP_ACTION_HEADER
_OFP_FLOW_MOD.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_FLOW_MOD.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_BUCKET.fields_by_name['actions'].message_type = _OFP_ACTION_HEADER
_OFP_GROUP_MOD.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_GROUP_MOD.fields_by_name['buckets'].message_type = _OFP_BUCKET
_OFP_PACKET_OUT.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_PACKET_OUT.fields_by_name['actions'].message_type = _OFP_ACTION_HEADER
_OFP_PACKET_IN.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_PACKET_IN.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_FLOW_REMOVED.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_FLOW_REMOVED.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_METER_MOD.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_METER_MOD.fields_by_name['bands'].message_type = _OFP_METER_BAND_HEADER
_OFP_ERROR_MSG.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_ERROR_EXPERIMENTER_MSG.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_MULTIPART_REQUEST.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_MULTIPART_REPLY.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_FLOW_STATS_REQUEST.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_FLOW_STATS.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_AGGREGATE_STATS_REQUEST.fields_by_name['match'].message_type = _OFP_MATCH
_OFP_TABLE_FEATURE_PROP_INSTRUCTIONS.fields_by_name['instruction_ids'].message_type = _OFP_INSTRUCTION
_OFP_TABLE_FEATURE_PROP_ACTIONS.fields_by_name['action_ids'].message_type = _OFP_ACTION_HEADER
_OFP_TABLE_FEATURES.fields_by_name['properties'].message_type = _OFP_TABLE_FEATURE_PROP_HEADER
_OFP_GROUP_STATS.fields_by_name['bucket_stats'].message_type = _OFP_BUCKET_COUNTER
_OFP_GROUP_DESC.fields_by_name['buckets'].message_type = _OFP_BUCKET
_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_EXPERIMENTER_HEADER.fields_by_name['header'].message_type = _OFP_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_REQUEST.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_QUEUE_GET_CONFIG_REPLY.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_QUEUE_GET_CONFIG_REPLY.fields_by_name['queues'].message_type = _OFP_PACKET_QUEUE
_OFP_ROLE_REQUEST.fields_by_name['header'].message_type = _OFP_HEADER
_OFP_ASYNC_CONFIG.fields_by_name['header'].message_type = _OFP_HEADER
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_experimenter_header'] = _OFP_OXM_EXPERIMENTER_HEADER
DESCRIPTOR.message_types_by_name['ofp_action_header'] = _OFP_ACTION_HEADER
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_header'] = _OFP_ACTION_EXPERIMENTER_HEADER
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_prop_header'] = _OFP_TABLE_FEATURE_PROP_HEADER
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_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_match_fields'] = _OXM_OFB_MATCH_FIELDS
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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.ofp_match)
  ))
_sym_db.RegisterMessage(ofp_match)

ofp_oxm_experimenter_header = _reflection.GeneratedProtocolMessageType('ofp_oxm_experimenter_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_OXM_EXPERIMENTER_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow.v13.ofp_oxm_experimenter_header)
  ))
_sym_db.RegisterMessage(ofp_oxm_experimenter_header)

ofp_action_header = _reflection.GeneratedProtocolMessageType('ofp_action_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow.v13.ofp_action_header)
  ))
_sym_db.RegisterMessage(ofp_action_header)

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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.ofp_action_set_field)
  ))
_sym_db.RegisterMessage(ofp_action_set_field)

ofp_action_experimenter_header = _reflection.GeneratedProtocolMessageType('ofp_action_experimenter_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_ACTION_EXPERIMENTER_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow.v13.ofp_action_experimenter_header)
  ))
_sym_db.RegisterMessage(ofp_action_experimenter_header)

ofp_instruction = _reflection.GeneratedProtocolMessageType('ofp_instruction', (_message.Message,), dict(
  DESCRIPTOR = _OFP_INSTRUCTION,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.ofp_aggregate_stats_reply)
  ))
_sym_db.RegisterMessage(ofp_aggregate_stats_reply)

ofp_table_feature_prop_header = _reflection.GeneratedProtocolMessageType('ofp_table_feature_prop_header', (_message.Message,), dict(
  DESCRIPTOR = _OFP_TABLE_FEATURE_PROP_HEADER,
  __module__ = 'openflow_13_pb2'
  # @@protoc_insertion_point(class_scope:openflow.v13.ofp_table_feature_prop_header)
  ))
_sym_db.RegisterMessage(ofp_table_feature_prop_header)

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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.ofp_group_desc)
  ))
_sym_db.RegisterMessage(ofp_group_desc)

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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.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.v13.OpenFlow/GetHello',
        request_serializer=ofp_hello.SerializeToString,
        response_deserializer=ofp_hello.FromString,
        )
    self.EchoRequest = channel.unary_unary(
        '/openflow.v13.OpenFlow/EchoRequest',
        request_serializer=ofp_header.SerializeToString,
        response_deserializer=ofp_header.FromString,
        )
    self.ExperimenterRequest = channel.unary_unary(
        '/openflow.v13.OpenFlow/ExperimenterRequest',
        request_serializer=ofp_experimenter_header.SerializeToString,
        response_deserializer=ofp_experimenter_header.FromString,
        )
    self.GetSwitchFeatures = channel.unary_unary(
        '/openflow.v13.OpenFlow/GetSwitchFeatures',
        request_serializer=ofp_header.SerializeToString,
        response_deserializer=ofp_switch_features.FromString,
        )
    self.GetSwitchConfig = channel.unary_unary(
        '/openflow.v13.OpenFlow/GetSwitchConfig',
        request_serializer=ofp_header.SerializeToString,
        response_deserializer=ofp_switch_config.FromString,
        )
    self.SetConfig = channel.unary_unary(
        '/openflow.v13.OpenFlow/SetConfig',
        request_serializer=ofp_switch_config.SerializeToString,
        response_deserializer=ofp_header.FromString,
        )
    self.ReceivePacketInMessages = channel.unary_stream(
        '/openflow.v13.OpenFlow/ReceivePacketInMessages',
        request_serializer=ofp_header.SerializeToString,
        response_deserializer=ofp_packet_in.FromString,
        )
    self.SendPacketOutMessages = channel.unary_unary(
        '/openflow.v13.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.v13.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.v13.OpenFlow', 'EchoRequest'): ofp_header.FromString,
    ('openflow.v13.OpenFlow', 'ExperimenterRequest'): ofp_experimenter_header.FromString,
    ('openflow.v13.OpenFlow', 'GetHello'): ofp_hello.FromString,
    ('openflow.v13.OpenFlow', 'GetSwitchConfig'): ofp_header.FromString,
    ('openflow.v13.OpenFlow', 'GetSwitchFeatures'): ofp_header.FromString,
    ('openflow.v13.OpenFlow', 'ReceivePacketInMessages'): ofp_header.FromString,
    ('openflow.v13.OpenFlow', 'SendPacketOutMessages'): ofp_packet_out.FromString,
    ('openflow.v13.OpenFlow', 'SetConfig'): ofp_switch_config.FromString,
  }
  response_serializers = {
    ('openflow.v13.OpenFlow', 'EchoRequest'): ofp_header.SerializeToString,
    ('openflow.v13.OpenFlow', 'ExperimenterRequest'): ofp_experimenter_header.SerializeToString,
    ('openflow.v13.OpenFlow', 'GetHello'): ofp_hello.SerializeToString,
    ('openflow.v13.OpenFlow', 'GetSwitchConfig'): ofp_switch_config.SerializeToString,
    ('openflow.v13.OpenFlow', 'GetSwitchFeatures'): ofp_switch_features.SerializeToString,
    ('openflow.v13.OpenFlow', 'ReceivePacketInMessages'): ofp_packet_in.SerializeToString,
    ('openflow.v13.OpenFlow', 'SendPacketOutMessages'): ofp_header.SerializeToString,
    ('openflow.v13.OpenFlow', 'SetConfig'): ofp_header.SerializeToString,
  }
  method_implementations = {
    ('openflow.v13.OpenFlow', 'EchoRequest'): face_utilities.unary_unary_inline(servicer.EchoRequest),
    ('openflow.v13.OpenFlow', 'ExperimenterRequest'): face_utilities.unary_unary_inline(servicer.ExperimenterRequest),
    ('openflow.v13.OpenFlow', 'GetHello'): face_utilities.unary_unary_inline(servicer.GetHello),
    ('openflow.v13.OpenFlow', 'GetSwitchConfig'): face_utilities.unary_unary_inline(servicer.GetSwitchConfig),
    ('openflow.v13.OpenFlow', 'GetSwitchFeatures'): face_utilities.unary_unary_inline(servicer.GetSwitchFeatures),
    ('openflow.v13.OpenFlow', 'ReceivePacketInMessages'): face_utilities.unary_stream_inline(servicer.ReceivePacketInMessages),
    ('openflow.v13.OpenFlow', 'SendPacketOutMessages'): face_utilities.unary_unary_inline(servicer.SendPacketOutMessages),
    ('openflow.v13.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.v13.OpenFlow', 'EchoRequest'): ofp_header.SerializeToString,
    ('openflow.v13.OpenFlow', 'ExperimenterRequest'): ofp_experimenter_header.SerializeToString,
    ('openflow.v13.OpenFlow', 'GetHello'): ofp_hello.SerializeToString,
    ('openflow.v13.OpenFlow', 'GetSwitchConfig'): ofp_header.SerializeToString,
    ('openflow.v13.OpenFlow', 'GetSwitchFeatures'): ofp_header.SerializeToString,
    ('openflow.v13.OpenFlow', 'ReceivePacketInMessages'): ofp_header.SerializeToString,
    ('openflow.v13.OpenFlow', 'SendPacketOutMessages'): ofp_packet_out.SerializeToString,
    ('openflow.v13.OpenFlow', 'SetConfig'): ofp_switch_config.SerializeToString,
  }
  response_deserializers = {
    ('openflow.v13.OpenFlow', 'EchoRequest'): ofp_header.FromString,
    ('openflow.v13.OpenFlow', 'ExperimenterRequest'): ofp_experimenter_header.FromString,
    ('openflow.v13.OpenFlow', 'GetHello'): ofp_hello.FromString,
    ('openflow.v13.OpenFlow', 'GetSwitchConfig'): ofp_switch_config.FromString,
    ('openflow.v13.OpenFlow', 'GetSwitchFeatures'): ofp_switch_features.FromString,
    ('openflow.v13.OpenFlow', 'ReceivePacketInMessages'): ofp_packet_in.FromString,
    ('openflow.v13.OpenFlow', 'SendPacketOutMessages'): ofp_header.FromString,
    ('openflow.v13.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.v13.OpenFlow', cardinalities, options=stub_options)
# @@protoc_insertion_point(module_scope)
