EtherChannels

Additional LACP/PAgP Features

Sections:

Overview:

  • In addition to the basic functionality of LACP, there are several advanced features and capabilities offered by Cisco to enhance LACP's performance, reliability, and flexibility
  • These features can help optimize traffic distribution and make link aggregation more efficient in dynamic network environments
  • In this section, lets dive further into some of the LACP advanced features that are configurable on Cisco devices

Load Balancing Methods

EtherChannel utilizes load balancing methods to allow for more efficient and optimized use of the available bandwidth for the distribution of traffic across multiple physical links in an EtherChannel group.

When traffic is forwarded through a channel, the switch uses a hashing algorithm to decide which of the available physical links of the group will be responsible for carrying each packet.

The goal of load balancing methods is to help evenly distribute the traffic load and maximize the available throughput, ensuring all links are utilized.

The load balancing method in either LACP or PAgP is configured in global configuration mode of a Cisco switch or router.

Available Load Balancing Methods (Hashing Methods)

  • Source MAC address
    • Destination MAC address
      • Source and Destination MAC address
        • Provides a more balanced approach when traffic is directed to multiple destinations
      • Source IP address
      • Destination IP address
      • Source and Destination IP address
        • Useful method in environments with a lot of inter-device communication or multiple applications generating traffic
      • Source Port number
      • Destination Port number
      • Source and Destination Port number
        • Useful method when dealing with protocols that rely heavily on port numbers such as TCP/UDP applications

      Command to configure Load Balancing method: 'port-channel load-balance'

      Key Load Balancing Points for EtherChannels

      Once a packet is assigned to a particular link, it will follow the same link for the duration of the flow/session.

      • This ensures that all packets in the flow (example: TCP connection) are forwarded consistently over the same link, preventing packet re-ordering and retransmissions between the source and destination

      It's important to note that some traffic patterns might not be well distributed if the hashing algorithm doesn't account for the specific distribution of traffic.

      The hashing algorithms typically work best in diverse environments and not concentrated on a small sample of addresses. 

      Load Balancing Method Best Practices

      • General IP Traffic
        • Source/Destination IP address or Port number methods
      • Ethernet-based Traffic
        • Source/Destination MAC address methods
      • TCP/UDP focused Traffic
        • Source/Destination Port number methods

      LACP - LACPDUs

      The LACP protocol uses LACPDUs as a keepalive protocol mechanism to maintain both sides of a logical link

      • By default, Slow LACPDUs are sent every 30sec by default 
      • Fast LACPDUs is an optional configuration feature that allows the protocol to send keepalives every second
      • Fast LACPDU support varies by switch models as it's a high end LACP feature 
        • Commonly for Cisco Nexus Devices

      Lab Topology

      Scenario: Lets analyze the LACPDUs sent and received by HQ-Distro-SW1

      Cisco command to view the LACPDU counters: 'show lacp counters'

      Example of the Fast LACPDU Interface Configuration

      LACP - System Priority

      LACP uses a concept of System Priorities to represent the master switch of an LACP configuration

      • The Lowest System Priority take precedence to become elected as the master switch
      • By default, the system priorities for all LACP configured switches are set to the value of '32768'
      • The system priority consists of the System Priority and the MAC address to generate the systemID 
      • The master switch is allowed to make decisions about what physical ports actively participate in an EtherChannel

      Cisco command to view the system priority: 'show lacp sys-id'

      LACP - Interface Priority

      Similar to the System Priority feature, the master switch uses the concept of interface priorities to consider which link/port will be in the EtherChannel bundle

      • This can be beneficial to set and designate hot standby links in case active links in the bundle fail 
      • Lower port priorities are preferred to be included in the LACP EtherChannel bundle and are configured in the value range 0-65535
      • Used in conjunction with Maximum & Minimum Links, higher port priority interface links serving as hot standby links can take over if the primary bundled links fail
      • LACP port priorities are configured on the individual physical ports on a switch or router

      Cisco command to configure the LACP interface priority: 'lacp port-priority' 

      LACP - Hot Standby Example

      LACP Hot Standby Lab Topology

      Scenario: In this lab exercise, let's configure Hot standby links by implementing the Maximum & Minimum Links, System Priority, & Interface Priority advanced features simultaneously. In my GNS3 lab topology, DistroSW1 and CoreSW1 will consist of 3 redundant links in which 1 out of 3 will serve as a Hot standby state link.

      System Priority

      Notes:

      • HQ-Core-SW1 will be configured with a lower LACP system priority to become the master switch
      • The master switch will be the decision maker for Distro-SW1 and itself to determine which physical ports get to participate in the EtherChannel bundle
      • The default System Priority for all Cisco switches configured with LACP is '32768' therefore it is not needed to configure a system priority for Distro-SW1 in this lab scenario

      Port Priority 

      Notes:

      • In this example, I've issued the 'show cdp neighbors' command to identify which interfaces are connected to Distro-SW 
      • The goal of what I'm trying to accomplish is to figure out which interfaces to configure LACP and port priorities on. LACP is already configured on the distribution switch. As a result, I will configure interfaces Gi3/0 and Gi3/1 of the core switch a lower priority to designate them as an active link in the EtherChannel bundle and designating interface Gi3/2 as a Hot Standby port
      • Interfaces Gi3/0 and Gi3/1 have been given a more preferred priority value of 100 whereas interface Gi3/2 has been given a value of 200
      • I have verified the port priorities of the interfaces by Issuing the 'show etherchannel 1 port' command

      LACP EtherChannel Configuration

      Core Switch

      Next step is to configure and assign the EtherChannel group number to the interfaces of the core switch to bring up the logical bundle.

      Maximum Links

      Core Switch

      Notes:

      • In this example, I have set the Maximum links of the core switch to a value of 2 therefore forcing one out of three links that are already included in the EtherChannel bundle to transition into the Hot standby state
      • Interface port Gi3/2 was set to a least preferred priority prior and hence it transitioned into a Hot Standby port
      • As for the remote switch side of the LACP bundle, switch HQ-DistroSW1 will label the Standby port as 'waiting to be aggregated' by the master switch HQ-CoreSW1 

      Testing Hot Standby Failover

      Notes:

      • To test the Hot Standby failover scenario, I have shutdown the interface Gi3/0 of HQ-Core-SW1 
      • Issuing the 'show etherchannel summary' command, we can see that the Hot Standby port of Gi3/2 has transitioned over to an active LACP port and is now a member of the active EtherChannel bundle
      • On the other side of the logical link of HQ-DistroSW1, the port that was waiting to be aggregated has also transitioned over to an active LACP port during failover