Openflow Messages
Openflow Messages
controller to interact with the network devices (switches and routers). OpenFlow messages
facilitate communication between the controller and network devices, enabling centralized
control of the network.
Here are the primary types of OpenFlow messages:
1. Controller-to-Switch Messages
These messages are initiated by the controller to manage and monitor the switch.
• Hello: Used to establish communication between the controller and the switch
during the connection phase.
• Features Request/Reply: The controller sends a features request, and the switch
replies with its capabilities and configuration.
• Configuration: The controller can configure the switch, such as setting maximum
packet sizes or other configuration parameters.
• Modify-State: These messages are used to modify the state of the switch, such as
adding or removing flow entries in flow tables.
o Flow Mod: Adds, removes, or modifies flow table entries on the switch.
o Port Mod: Modifies port behavior (e.g., enabling/disabling ports).
• Packet-Out: Sends a packet directly from the controller to the switch to be forwarded
to a specific port.
• Barrier: Ensures message dependencies are handled correctly by waiting for
outstanding messages to be processed before continuing.
2. Asynchronous (Switch-to-Controller) Messages
These messages are initiated by the switch and sent to the controller, often to notify it of
events.
• Packet-In: Sent when a packet arrives at the switch that does not match any flow
table entries. The switch forwards the packet to the controller for further decision-
making.
• Flow Removed: Notifies the controller that a flow has been removed from the
switch's flow table, either due to timeout or explicit removal.
• Port Status: Informs the controller about changes in port status (e.g., a port being up
or down).