OpenFlow Flow Table Lookup Animation

OpenFlow Flow Table Lookup Animation

Trace packet matching, priority, table miss handling, and actions in an OpenFlow switch

animation
openflow
sdn
flow-table
packet-processing
architecture
A guided OpenFlow lookup workbench that lets learners step through priority-ordered flow tables, multi-table processing, Packet-In behavior, actions, and counters.
Animation OpenFlow Beginner ramp

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.

P420 Modbus controller routeSelected flow entry
Output port 2Final action
Table 0 hitLookup path
Switch-local hitExpected delay

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.

Scenario Presets

A specific Modbus controller rule and a broader IoT subnet rule both match. Priority decides which one wins.

Playback

Packet Fields

Working Packet

No field modifications have been applied yet.

Ingress parser extracts fields such as in_port, VLAN, IP addresses, protocol, and TCP or UDP port.
Table 0Current table
Scanning rulesDecision state
0 packetsCounter update
P420 Modbus controller routeWinning rule
Output port 2Applied actions
More specific rule has higher priority.Reason

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.

Related Study

Technical boundaries. The lookup depicts one idealized table and omits pipeline metadata, TCAM capacity, controller races, groups, meters, packet buffering, timeout convergence, and vendor extensions.