beautypg.com

Flow-based learning overview, The benefits of flow-based learning, How flow-based learning works – Brocade FastIron Ethernet Switch Platform and Layer 2 Switching Configuration Guide User Manual

Page 26

background image

Flow-based learning overview

With regular MAC address learning, when a new MAC address is learned, it is programmed in the
same location (hardware index) in all packet processors in a FastIron Layer 2 or Layer 3 switch. There
are multiple packet processors (one per port region) in a compact switch, and in each module in a
chassis-based switch. With regular MAC address learning, MAC addresses are global , meaning the
hardware MAC table is identical across all packet processors.

With the introduction of flow-based MAC address learning , when a new source MAC address is
learned, it is programmed only in the source packet processor (the processor that received the
packet). The destination MAC address gets added to other packet processors on demand, whenever a
traffic flow that needs it is detected. With flow-based MAC address learning, the MAC address is
programmed in different hardware locations and the hardware MAC table is different across all packet
processors.

The benefits of flow-based learning

With global MAC address learning, all MAC addresses are programmed in all packet processors, even
though they may not be required and are never used by all packet processors. Global MAC address
learning wastes some space in the hardware MAC table and limits the number of supported MAC
addresses to 16K.

With flow-based MAC address learning, MAC addresses are learned and programmed selectively,
only in the packet processors that need them. Since the MAC addresses are distributed across several
packet processors, flow-based learning frees up space in the hardware MAC table and increases the
number of supported MAC addresses from 16K to 32K.

How flow-based learning works

When a packet processor, for example, PP 1 , receives an incoming packet with source MAC address
X
, it sends a new address message to the CPU. The system learns MAC address X by adding it to
the software MAC table in the CPU, then programming it in the hardware MAC table in the source
packet processor, in this case PP 1 . If the MAC address is learned on a trunk port, the MAC address
is also programmed on all of the packet processors that have ports in the same trunk group.

When another packet processor, let call it PP 2 , receives an incoming packet and the packet
destination MAC address matches source MAC address X , it floods the packet in hardware as an
unknown unicast packet and copies the packet to the CPU. The system locates the MAC address in
the software MAC table, then programs the MAC address in the hardware MAC table in PP 2 . If the
MAC address is learned on a trunk port, the MAC address is also programmed on all of the packet
processors that have ports in the same trunk group. Once the MAC address is programmed in
hardware, subsequent packets with this destination MAC are forwarded as known unicast packets and
are not copied to the CPU.

Flow-based MAC addresses are aged out by the source packet processor according to the MAC age
time learned on the local port. Furthermore, when a flow-based MAC address is aged out from the
source packet processor, it is also aged out from all other packet processors on which the address is
programmed. In the above example, when MAC address X is aged out from PP 1, it is also aged out
from PP2.

NOTE
Even when flow-based MAC address learning is enabled, some MAC addresses, including but not
limited to control MACs, static MACs, multicast MACs, and MAC addresses resolved through ARP, will
continue to be global MAC addresses. These MAC addresses are always programmed in all packet
processors in a Layer 2 or Layer 3 switch.

Flow-based learning overview

26

FastIron Ethernet Switch Platform and Layer 2 Switching Configuration Guide

53-1003086-04