OpenFlow Flow Table Lookup Animation
OpenFlow Flow Table Lookup Animation
Trace packet matching, priority, table miss handling, and actions in an OpenFlow switch
OpenFlow Flow Lookup Workbench
Step through how an SDN switch parses a packet, checks priority-ordered flow entries, updates counters, and applies actions such as output, drop, set-field, GoTo table, or Packet-In to the controller.
OpenFlow lookup controls and learning support
Try
Choose Overlapping Rules and press Step until every candidate has been tested; then compare the winning row's priority and action.
Observe
After Step tests the packet fields, only the highest-priority matching row becomes selected and exposes its output instruction.
Explain
OpenFlow first evaluates match fields, resolves simultaneous matches by priority, and applies the instruction set attached to the winning flow entry.
Boundary
The lookup depicts one idealized table and omits pipeline metadata, TCAM capacity, controller races, groups, meters, packet buffering, timeout convergence, and vendor extensions.
Flow Entry
A flow entry combines match fields, priority, counters, timeouts, and instructions or actions. The switch can apply it without asking the controller each time.
Priority
If two entries match the same packet, the highest priority entry wins. Equal-priority overlaps should be avoided because behavior can be ambiguous.
Table Miss
A table-miss entry is the low-priority fallback. It can drop, continue to another table, or send a Packet-In message to the controller.
Match Fields
- Ingress port, MAC, VLAN, EtherType
- IP source and destination prefixes
- TCP or UDP source and destination ports
Actions
- Output to a switch port
- Drop the packet
- Set fields such as VLAN, DSCP, or metadata
- Send Packet-In to the controller
Pipeline
- Processing starts at Table 0
- GoTo can continue to a higher-numbered table
- Counters update on the matched entry
Practice 1
Choose Overlapping Rules. Which row also matches but is ignored, and why?
Practice 2
Choose Unknown Device. Follow the Packet-In path and explain why the controller is involved.
Practice 3
Choose VLAN Tagging. Watch Table 0 modify the working packet before Table 1 makes the output decision.