Multi-chassis link aggregation group

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

A multi-chassis link aggregation group (MLAG or MC-LAG) is a type of link aggregation group (LAG) with constituent ports that terminate on separate chassis, primarily for the purpose of providing redundancy in the event one of the chassis fails. The IEEE 802.1AX-2008 industry standard for link aggregation does not mention MC-LAG, but does not preclude it. Its implementation varies by vendor; notably, the protocol existing between the chassis is proprietary.

Background[edit]

A LAG is a method of inverse multiplexing over multiple Ethernet links, thereby increasing bandwidth and providing redundancy. It is defined by the IEEE 802.1AX-2008 standard, which states, "Link Aggregation allows one or more links to be aggregated together to form a Link Aggregation Group, such that a MAC client can treat the Link Aggregation Group as if it were a single link."[1] This layer 2 transparency is achieved by the LAG using a single MAC address for all the device’s ports in the LAG group. LAG can be configured as either static or dynamic. Dynamic LAG uses a peer-to-peer protocol for control, called Link Aggregation Control Protocol (LACP). This LACP protocol is also defined within the 802.1AX-2008 standard.

LAG can be implemented in two ways. LAG N and LAG N+N. LAG N is the load sharing mode of LAG and LAG N+N provides the worker standby flavour.

The LAG N protocol automatically distributes and load balances the traffic across the working links within a LAG, thus maximising the use of the group if Ethernet links go down or come back up, providing improved resilience and throughput.

For a different style of resilience between 2 nodes, a complete implementation of the LACP protocol supports separate worker/standby LAG subgroups. For LAG N+N, the worker links as a group will failover to the standby links if any one or more or all of the links in the worker group fail. Note, LACP marks links as in standby mode using an "out of sync" flag.

Multi-chassis[edit]

MC-LAG adds node-level redundancy to the normal link-level redundancy that a LAG provides. This allows two or more nodes to share a common LAG endpoint. The multiple nodes present a single logical LAG to the remote end. Note that MC-LAG implementations are vendor-specific, but cooperating chassis remain externally compliant to the IEEE 802.1AX-2008 standard.[2] Nodes in an MC-LAG cluster communicate to synchronize and negotiate automatic switchovers (failover). Some implementations may support administrator-initiated (manual) switchovers.

The diagram here shows four configurations:

Illustration comparing LAG to high-availability MLAG
  1. Switches A and B are each configured to group four discrete links (as indicated in green) into a single logical link with four times the bandwidth. Standard LACP protocol ensures that if any of the links go down, traffic will be distributed among the remaining three.
  2. Switch A is replaced by two chassis, switches A1 and A2. They communicate between themselves using a proprietary protocol and are thereby able to masquerade as a single "virtual" switch A running a shared instance of LACP. Switch B is not aware that it is connected to more than one chassis.
  3. Switch B is also replaced by two chassis B1 and B2. If these switches are from a different vendor, they may use a different proprietary protocol between themselves. But "virtual" switches A and B still communicate using LACP.
  4. Crossing two links to form an X makes no difference logically, any more than crossing links in a normal LAG would. However, physically it provides much improved fault tolerance (high availability). If any of the switches fail, LACP reconfigures paths in as little as a few seconds. Operation continues with paths existing between all sources and destinations, albeit with degraded bandwidth.

The HA configuration is superior to spanning tree. Load can be shared across all links during normal operation, whereas spanning tree must disable some links to prevent loops.

Implementations[edit]

The following table lists known vendor implementations of MC-LAG, all of which are proprietary.

Vendor Implementation Name
ADVA MC-LAG
Arista MLAG
Aruba (formerly HP ProCurve) Distributed Trunking under Intelligent Resilient Framework switch clustering technology
Avaya Distributed Split Multi-Link Trunking
Ruckus (formerly Brocade) Multi-Chassis Trunking
Ciena MC-LAG
Cisco Catalyst 6500 - VSS Multichassis Etherchannel (MEC)
Cisco Catalyst 3750 (and similar) Cross-Stack EtherChannel
Cisco Catalyst 9000 StackWise Virtual
Cisco Nexus Virtual PortChannel (vPC), where a PortChannel is a regular LAG
Cisco IOS-XR mLACP
Cumulus Networks MLAG (formerly CLAG)
Dell Networking (formerly Force10 Networks, formerly nCore) DNOS6.x Virtual Port Channel (vPC) or Virtual Link Trunking
EdgeCore Networks MLAG
Extreme Networks MLAG (Multi Switch Link Aggregation Group)
Ericsson MC-LAG (Multi Chassis Link Aggregation Group)
Fortinet MC-LAG (Multi Chassis Link Aggregation Group)
H3C Distributed Resilient Network Interconnect
HPE/Aruba Distributed trunking
Huawei M-LAG
Juniper MC-LAG
Lenovo Networking (formerly IBM) vLAG
Mellanox MLAG
NEC MC-LAG (Openflow to traditional network)
Nocsys MLAG
NETGEAR MLAG
Nokia (Formerly Alcatel-Lucent) MC-LAG
Nortel Split multi-link trunking
Nuage Networks / Nokia MC-LAG ; including MCS (Multi-chassis Sync)
Plexxi MLAG
Pluribus Networks vLAG
ZTE MC-LAG

Alternatives[edit]

IEEE 802.1aq (Shortest Path Bridging) is an alternative to MC-LAG that can be used for complex networks.[3]

References[edit]

  1. ^ IEEE. IEEE 802.1AX-2008. IEEE.
  2. ^ Bhagat, Amit N. "Multichassis Link Aggregation Group". Google Knowledge Base. Retrieved 15 March 2012.
  3. ^ Mike Fratto (2011-03-07). "When MLAG Is Good Enough". Network Computing.