OpenFlow v1.3.0 Actions
Each flow has a set of instructions that
are executed when the packet matches the flow according to OpenFlow v1.3.0 specifications.
Each flow can have only one instruction of each type.
A switch can reject a flow entry if it is unable to execute the instructions associated with the flow entry. In this case, the switch returns an unsupported flow error. Flow tables may not support every match, every instruction, or every action.
Instructions for OpenFlow Actions
| Instruction | Description |
|---|---|
| actions | Adds specified actions to the action set. |
| next-table-id | Indicates the next table in pipeline processing (one table is supported). |
| meter-id | Directs the packet to the specified meter. |
| apply-actions | Applies the specified actions immediately. The packet is modified and subsequent matching in the pipeline is done on the modified packet. |
| clear-actions | Clears all the actions in the action set. |
| write-metadata | Writes the metadata field from the mask. |
RUCKUS ICX devices may support the actions listed in the following table.
Supported OpenFlow Actions
| OpenFlow Action | Supported on ICX |
|---|---|
| Process the packet through the specified group | Yes |
| Add and remove tag | Yes |
| Add newly inserted tags always as the outermost tags | Yes |
| No explicit drop action (packet with empty action set should be dropped.) | Yes |
| Modify the values of the packet header based on the field type | Yes |
| Modify the TTL value | No |
| Set the queue ID for the packet | Yes |
| Normal Action mode | Yes |
Prerequisites for OpenFlow Actions
The following prerequisites apply to the OpenFlow actions:
- Decrement TTL
- Destination MAC address (DMAC) action is required; otherwise an error is sent to the controller.
- The DMAC in the packet should be the router MAC address of the device. This is not enforced because the DMAC of the forwarding packet is unknown.
- The Source MAC address (SMAC) is modified to the router MAC address.
- The VLAN header is stripped after the action.
- VLAN modification is supported (Push VLAN is not supported for tagged packets).