package openflow

  1. Overview
  2. Docs
type individualStatsReq = {
  1. is_of_match : OpenFlow0x01_Core.pattern;
  2. is_table_id : Packet.int8;
  3. is_out_port : OpenFlow0x01_Core.pseudoPort option;
}
type aggregateStatsReq = {
  1. as_of_match : OpenFlow0x01_Core.pattern;
  2. as_table_id : Packet.int8;
  3. as_out_port : OpenFlow0x01_Core.pseudoPort option;
}
type request =
  1. | DescriptionRequest
  2. | FlowTableStatsRequest
  3. | IndividualRequest of individualStatsReq
  4. | AggregateRequest of aggregateStatsReq
type descriptionStats = {
  1. manufacturer : string;
  2. hardware : string;
  3. software : string;
  4. serial_number : string;
  5. datapath : string;
}
type individualStats = {
  1. table_id : Packet.int8;
  2. of_match : OpenFlow0x01_Core.pattern;
  3. duration_sec : int32;
  4. duration_nsec : int32;
  5. priority : Packet.int16;
  6. idle_timeout : Packet.int16;
  7. hard_timeout : Packet.int16;
  8. cookie : int64;
  9. packet_count : int64;
  10. byte_count : int64;
  11. actions : OpenFlow0x01_Core.action list;
}
type aggregateStats = {
  1. total_packet_count : int64;
  2. total_byte_count : int64;
  3. flow_count : int32;
}
type reply =
  1. | DescriptionRep of descriptionStats
  2. | IndividualFlowRep of individualStats list
  3. | AggregateFlowRep of aggregateStats
val reply_to_string : reply -> string