| Classes | |
| struct | Action | 
| Class for handling flow table actions.  More... | |
| class | Controller | 
| An interface for a Controller of OpenFlowSwitchNetDevices.  More... | |
| class | DropController | 
| Demonstration of a Drop controller.  More... | |
| struct | EricssonAction | 
| Class for handling Ericsson Vendor-defined actions.  More... | |
| class | LearningController | 
| Demonstration of a Learning controller.  More... | |
| struct | Port | 
| Port and its metadata.  More... | |
| class | Stats | 
| OpenFlow statistics.  More... | |
| struct | StatsDumpCallback | 
| Callback for a stats dump request.  More... | |
| struct | SwitchPacketMetadata | 
| Packet Metadata, allows us to track the packet's metadata as it passes through the switch.  More... | |
| struct | VPortAction | 
| Class for handling virtual port table actions.  More... | |
| Functions | |
| void | ExecuteActions (Ptr< OpenFlowSwitchNetDevice > swtch, uint64_t packet_uid, ofpbuf *buffer, sw_flow_key *key, const ofp_action_header *actions, size_t actions_len, int ignore_no_fwd) | 
| Executes a list of flow table actions. | |
| void | ExecuteVendor (ofpbuf *buffer, const sw_flow_key *key, const ofp_action_header *ah) | 
| Executes a vendor-defined action. | |
| void | ExecuteVPortActions (Ptr< OpenFlowSwitchNetDevice > swtch, uint64_t packet_uid, ofpbuf *buffer, sw_flow_key *key, const ofp_action_header *actions, size_t actions_len) | 
| Executes a list of virtual port table entry actions. | |
| int | Stats_AggregateDumpCallback (sw_flow *flow, void *state) | 
| int | Stats_FlowDumpCallback (sw_flow *flow, void *state) | 
| uint16_t | ValidateActions (const sw_flow_key *key, const ofp_action_header *actions, size_t actions_len) | 
| Validates a list of flow table actions. | |
| uint16_t | ValidateVendor (const sw_flow_key *key, const ofp_action_header *ah, uint16_t len) | 
| Validates a vendor-defined action. | |
| uint16_t | ValidateVPortActions (const ofp_action_header *actions, size_t actions_len) | 
| Validates a list of virtual port table entry actions. | |
| void ns3::ofi::ExecuteActions | ( | Ptr< OpenFlowSwitchNetDevice > | swtch, | 
| uint64_t | packet_uid, | ||
| ofpbuf * | buffer, | ||
| sw_flow_key * | key, | ||
| const ofp_action_header * | actions, | ||
| size_t | actions_len, | ||
| int | ignore_no_fwd ) | 
Executes a list of flow table actions.
| swtch | OpenFlowSwitchNetDevice these actions are being executed on. | 
| packet_uid | Packet UID; used to fetch the packet and its metadata. | 
| buffer | The Packet OpenFlow buffer. | 
| key | The matching key for the flow tied to this list of actions. | 
| actions | A buffer of actions. | 
| actions_len | Length of actions buffer. | 
| ignore_no_fwd | If true, during port forwarding actions, ports that are set to not forward are forced to forward. | 
Definition at line 939 of file openflow-interface.cc.
References ns3::ofi::Action::Execute(), ExecuteVendor(), ns3::ofi::Action::IsValidType(), NS_LOG_FUNCTION_NOARGS, and NS_LOG_INFO.
Referenced by ns3::OpenFlowSwitchNetDevice::AddFlow(), ns3::OpenFlowSwitchNetDevice::FlowTableLookup(), ns3::OpenFlowSwitchNetDevice::ModFlow(), and ns3::OpenFlowSwitchNetDevice::ReceivePacketOut().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| void ns3::ofi::ExecuteVendor | ( | ofpbuf * | buffer, | 
| const sw_flow_key * | key, | ||
| const ofp_action_header * | ah ) | 
Executes a vendor-defined action.
| buffer | The Packet OpenFlow buffer. | 
| key | The matching key for the flow tied to this list of actions. | 
| ah | Header of the action. | 
Definition at line 1167 of file openflow-interface.cc.
References ns3::ofi::EricssonAction::Execute(), and NS_LOG_INFO.
Referenced by ExecuteActions().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| void ns3::ofi::ExecuteVPortActions | ( | Ptr< OpenFlowSwitchNetDevice > | swtch, | 
| uint64_t | packet_uid, | ||
| ofpbuf * | buffer, | ||
| sw_flow_key * | key, | ||
| const ofp_action_header * | actions, | ||
| size_t | actions_len ) | 
Executes a list of virtual port table entry actions.
| swtch | OpenFlowSwitchNetDevice these actions are being executed on. | 
| packet_uid | Packet UID; used to fetch the packet and its metadata. | 
| buffer | The Packet OpenFlow buffer. | 
| key | The matching key for the flow tied to this list of actions. | 
| actions | A buffer of actions. | 
| actions_len | Length of actions buffer. | 
Definition at line 1066 of file openflow-interface.cc.
References ns3::ofi::VPortAction::Execute().
Referenced by ns3::OpenFlowSwitchNetDevice::RunThroughVPortTable().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| int ns3::ofi::Stats_AggregateDumpCallback | ( | sw_flow * | flow, | 
| void * | state ) | 
Definition at line 231 of file openflow-interface.cc.
| int ns3::ofi::Stats_FlowDumpCallback | ( | sw_flow * | flow, | 
| void * | state ) | 
Definition at line 160 of file openflow-interface.cc.
References MAX_FLOW_STATS_BYTES.
| uint16_t ns3::ofi::ValidateActions | ( | const sw_flow_key * | key, | 
| const ofp_action_header * | actions, | ||
| size_t | actions_len ) | 
Validates a list of flow table actions.
| key | The matching key for the flow tied to this list of actions. | 
| actions | A buffer of actions. | 
| actions_len | Length of actions buffer. | 
Definition at line 1012 of file openflow-interface.cc.
References ns3::ofi::Action::IsValidType(), ns3::ofi::Action::Validate(), and ValidateVendor().
Referenced by ns3::OpenFlowSwitchNetDevice::AddFlow(), ns3::OpenFlowSwitchNetDevice::ModFlow(), and ns3::OpenFlowSwitchNetDevice::ReceivePacketOut().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| uint16_t ns3::ofi::ValidateVendor | ( | const sw_flow_key * | key, | 
| const ofp_action_header * | ah, | ||
| uint16_t | len ) | 
Validates a vendor-defined action.
| key | The matching key for the flow tied to this list of actions. | 
| ah | Header of the action. | 
| len | Length of the action. | 
Definition at line 1189 of file openflow-interface.cc.
References ns3::ofi::EricssonAction::Validate().
Referenced by ValidateActions().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| uint16_t ns3::ofi::ValidateVPortActions | ( | const ofp_action_header * | actions, | 
| size_t | actions_len ) | 
Validates a list of virtual port table entry actions.
| actions | A buffer of actions. | 
| actions_len | Length of actions buffer. | 
Definition at line 1120 of file openflow-interface.cc.
References ns3::ofi::VPortAction::IsValidType(), and ns3::ofi::VPortAction::Validate().
Referenced by ns3::OpenFlowSwitchNetDevice::AddVPort().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function: