Mellanox MLNX-OS User Manual for SX1018HP Ethernet Managed Blade Switch

Rev 2.10
Mellanox Technologies
453
Mellanox Technologies Confidential
5.6 OpenFlow
MLNX-OS supports OpenFlow 1.0. OpenFlow is a network protocol that facilitates direct com-
munication between network systems via Ethernet. Software
Defined Networks (SDN) allows a
centralist management of network equipment. OpenFlow allows the SDN controller to manage
SDN equipment. The OpenFlow protocol allows communication between the OpenFlow control-
ler and OpenFlow agent.
OpenFlow is useful to manage switches and allow app
lications running on the OpenFlow con-
troller to have access to the switch’s datapath
and provide functionality such as flow steering,
security enhancement, traffic monitoring and more.
The OpenFlow controller communicates with the OpenFlow sw
itch over secured channel using
OpenFlow protocol.
An OpenFlow switch contains a flow table which contains flows
inserted by the OpenFlow con-
troller. And the OpenFlow switch performs packet
lookup and forwarding according to those
rules.
Mellanox OpenFlow switch implementati
on is based on the hybrid model, allowing the coexis-
tence of an OpenFlow pipeline and a normal pipeline. In this model, a packet is forwarded
acc
ording to OpenFlow configuration, if such configuration is matched with the packet parame-
ters. Otherwise, the packet is hand
led by the normal (regular forwarding/routing) pipeline.
The OpenFlow specification defines:
“OpenFlow-hybrid switches support both OpenFlow operation and normal Ethernet switching operation, i.e.
traditional L2 Ethernet switching, VLAN isolation, L3 routing (IPv4 routing, IPv6 routing...), ACL and QoS
processing. Those switches must provide a classification mechanism outside of OpenFlow that routes traffic to
either the OpenFlow pipeline or the normal pipeline. For example, a switch may use the VLAN tag or input port
of the packet to decide whether to process the packet using one pipeline or the other, or it may direct all packets
to the OpenFlow pipeline.”
Utilizing the built-in capabilities of the hybrid switch/router is the main benefit of the hybrid
mode. It increases network performance and efficiency – faster processing of new flows as well
as lower load on the controllers. The hybrid switch processes non-OpenFlow data through its
local management plane and achieve better efficiency and use of resources, compared to the pure
OpenFlow switch.
5.6.1 Flow Table
The flow table contains flows which are used to perform packet lookup, modification and for-
warding. Each flow has a 12 tuple key. The key is used in order
to classify a packet into a certain
flow. The key contains the flowing fields: ingress port, source MAC, destination MAC,
EtherType, VLAN ID, PCP, source IP, destination IP, IP protocol, IP ToS bits, TCP/UDP source
port and TCP/UDP destination port.
The flow key can have a specific value for each field
or wildcard which signals to the switch to
ignore this part of the key.
Each packet passes through the flow table once a ma
tch is found; the switch performs the actions
configured to the specific flow by the OpenFlow controller.
Upkeeping a flow table enables the sw
itch to forward incoming traffic with a simple lookup on
its flow table entries. OpenFlow switches perform a check for matching entries on, or ignore
using a wildcard, specific fields of the ingress traffic. If the entry exists, the switch performs the
action associated with that flow entry. Packets without a flow entry match are forwarded accord-
ing to the normal pipeline (hybrid switch).