Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 1 | #version 4 |
| 2 | |
| 3 | struct of_calient_flow_stats_request : of_calient_stats_request { |
| 4 | uint8_t version; |
| 5 | uint8_t type == 18; |
| 6 | uint16_t length; |
| 7 | uint32_t xid; |
| 8 | uint16_t stats_type == 0xffff; |
| 9 | enum ofp_stats_request_flags flags; |
| 10 | pad(4); |
| 11 | uint32_t experimenter == 0x0080F958; |
| 12 | uint32_t subtype == 2; /* OFPEMPFS = 2 */ |
| 13 | uint8_t table_id; /* Recommended to be set to 0. Ignored */ |
| 14 | pad(3); |
Marc De Leenheer | 88c0bcb | 2015-07-24 15:49:19 -0700 | [diff] [blame] | 15 | of_port_no_t out_port; /* Require matching entries to include this as an output port. |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 16 | A value of OFPP_ANY indicates no restriction. Ignored */ |
| 17 | uint32_t out_group; /* Require matching entries to include this as an output group. |
| 18 | A value of OFPP_ANY indicates no restriction. Ignored */ |
| 19 | pad(4); /* Align to 64 bits */ |
| 20 | uint64_t cookie; /* Ignored */ |
| 21 | uint64_t cookie_mask; /* Ignored */ |
| 22 | of_match_t match; /* Fields to match. Variable size */ |
| 23 | }; |
| 24 | |
| 25 | enum ofp_calient_cflow_admin_state(wire_type=uint8_t, bitmask=True){ |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 26 | OFPCAS_InService = 0, // Enabled to provide service |
| 27 | OFPCAS_Outofservice = 1, //Not enabled to provide service |
| 28 | OFPCAS_OOS_NP = 2, //Not yet added to system by operator |
| 29 | OFPCAS_UnderManagement = 3,//Configured to provide service, but suspended for maintanance |
| 30 | OFPCAS_Ready = 4 // awaiting activation, IS but not monitored |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 31 | }; |
| 32 | |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 33 | |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 34 | enum ofp_calient_cflow_operational_state(wire_type=uint8_t, bitmask=True){ |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 35 | OFPCOS_InService = 0, //Functioning normally & providing service |
| 36 | OFPCOS_OutOfService = 1,//Not providing service |
| 37 | OFPOS_Initializing = 2, //Initializing |
| 38 | OFPCOS_Ready = 3, //awaiting activation |
| 39 | OFPCOS_Degraded = 4, //component failure causing reduced level of support |
| 40 | OFPCOS_Diagnostics=5 //performing diagnostics |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 41 | }; |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 42 | |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 43 | enum ofp_calient_cflow_Capability(wire_type=uint8_t, bitmask=True){ |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 44 | OFPCS_NoHardware = 0, /* when port is not in connection */ |
| 45 | OFPCCS_Ok = 1, /* port is in Connection which is made successfully */ |
| 46 | OFPCCS_Failed = 2, /* when port is in Connection which is Failed */ |
| 47 | OFPCCS_Initializing = 3,/* when port is in Connection which is being made */ |
| 48 | OFPCS_Diagnostics=4, // performing diagnostics |
| 49 | OFPCS_Synchronizing=5 // Synchronizing |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 50 | }; |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 51 | |
| 52 | |
Marc De Leenheer | 88c0bcb | 2015-07-24 15:49:19 -0700 | [diff] [blame] | 53 | /*oper_capability,alarm,cflow_name not present in the backend */ |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 54 | struct of_calient_flow_stats_entry { |
| 55 | uint16_t length; |
| 56 | uint8_t table_id; /* Ignored */ |
| 57 | pad(1); |
| 58 | uint32_t duration_sec; /* Not supported for now */ |
| 59 | uint32_t duration_nsec; /* Not supported for now */ |
| 60 | uint16_t priority; /* Not supported */ |
| 61 | uint16_t idle_timeout; /* Set to 0 as entries must be explicitly removed */ |
| 62 | uint16_t hard_timeout; /* Set to 0 as entries must be explicitly removed */ |
| 63 | enum ofp_flow_mod_flags flags; |
| 64 | pad(4); |
| 65 | uint64_t cookie; /* Ignored */ |
| 66 | enum ofp_calient_cflow_admin_state admin_status; /* AS = IS(Activated)/UMA */ |
| 67 | enum ofp_calient_cflow_operational_state oper_status; /* OS = UMA/OOS */ |
| 68 | enum ofp_calient_cflow_Capability oper_capability; /* OC = FAIL/OK/INIT */ |
| 69 | enum ofp_calient_ocs_alarm alarm; /* Alarm = NA/MJ/MN/CR */ |
Marc De Leenheer | 88c0bcb | 2015-07-24 15:49:19 -0700 | [diff] [blame] | 70 | of_port_no_t out_port; |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 71 | of_str6_t port_power; |
| 72 | pad(2); |
| 73 | of_str6_t connected_port_power; |
| 74 | pad(2); |
| 75 | of_str64_t cflow_name; /* Connection name */ |
| 76 | of_match_t match; |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 77 | list(of_instruction_t)instructions; |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 78 | }; |
| 79 | |
| 80 | |
| 81 | struct of_calient_flow_stats_reply : of_calient_stats_reply { |
| 82 | uint8_t version; |
| 83 | uint8_t type == 19; |
| 84 | uint16_t length; |
| 85 | uint32_t xid; |
| 86 | uint16_t stats_type == 0xffff; |
| 87 | enum ofp_stats_reply_flags flags; |
| 88 | pad(4); |
| 89 | uint32_t experimenter == 0x0080F958; |
| 90 | uint32_t subtype == 2; |
Marc De Leenheer | 88c0bcb | 2015-07-24 15:49:19 -0700 | [diff] [blame] | 91 | list(of_calient_flow_stats_entry_t)entries; |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 92 | }; |
| 93 | |
| 94 | |