Etherchannel on Cisco IOS Catalyst Switch

Hello Emmanuel

Link aggregation or Etherchannel as it is called in a Cisco environment, is the bundling of multiple physical links into a single logical link. The switches that are configured with etherchannel perceive the multiple links as a single link with the total capacity of all physical links.

Now you can configure link aggregation statically. This means you can force specific ports on a switch to function as part of an aggregated link. This means that even if the other end of the link is not configured correctly, the ports will still attempt to function in this way. You don’t need PAgP or LACP to create a static etherchannel.

PAgP and LACP are two protocols that are used to allow switches to negotiate a link aggregation. By enabling these protocols, you can cause a switch to have its ports function as normal physical ports UNLESS they detect that the switch on the other end is also configured with PAgP or LACP. If the switches configured like that, then there will be an exchange of information between the switches to determine if an etherchannel can be established, and if so, which physical links will function in the link. It’s similar to Dynamic Trunking Protocol (DTP) where the access or trunk mode of a port will be negotiated.

Take a look at this lesson for more details:

I hope this has been helpful!

Laz

Thank you very much Laz for this intuitive explanation

1 Like

Hello Rene and team

I’ve noticed a little typo. Maybe it means “on the left side”:

Hello Boris

Rene probably means “we have four computers on the left side, and one router on the right side.” I’ll let @ReneMolenaar know so he can make the statement clearer.

Thanks for pointing that out!

Laz

Hi Boris,

I agree, this should be improved. Just fixed this.

Rene

Hello team.

I’ve read a question about “default LACP channel-mode, when the LACP channel is configured between two Cisco switches”. I need help for understanding what does it mean.

Thanks

Hello Boris

When you configure Etherchannel, the mode options are those seen below:

SW1(config)#interface fa0/13
SW2(config-if)#channel-group 1 mode ?
  active     Enable LACP unconditionally
  auto       Enable PAgP only if a PAgP device is detected
  desirable  Enable PAgP unconditionally
  on         Enable Etherchannel only
  passive    Enable LACP only if a LACP device is detected

The mode you choose will determine which protocol is being used (LACP/PAgP). When configuring portchannel, you are required to specify a mode, so you are required to choose a protocol, so there is no default channel mode.

However, for Nexus devices, it is possible to create a port channel without specifying the mode. The default mode is “on”. Remember, this is the only mode that is neither LACP or PAgP, but is simply hardwired as an etherchannel. In this mode, no LACP or PAgP negotiation will be taken into account, but will be ignored.

If this does not clarify your question, please share the question with us in more detail so we can clarify further.

I hope this has been helpful!

Laz

1 Like

Hello Laz,

You are right. The question doesn’t so clarify. I’m confusing a bit. Here it is and possible answers for choosing:

Which statement about the connection of two switches with several links using LACP link aggregation on IOS is true?

  1. By default, when an LACP channel is configured, the LACP channel mode is off.
  2. By default, when an LACP channel is configured, the LACP channel mode is on
  3. By default, when an LACP channel is configured, the LACP channel mode is active.
  4. By default, when an LACP channel is configured, the LACP channel mode is passive.

Thanks

Hi Laz & Rene,
Can a physical interface be a part of,

  1. 2 etherchannels connecting to different switch ?
  2. 2 etherchannels connecting to a same switch ?

Hello Boris

This is a strange question, because when you configure a channel group, you are obligated to configure the mode. Take a look at these commands I have put into a Cisco 2950 switch:

Switch(config-if)#channel-group 1 
% Incomplete command.
Switch(config-if)#channel-group 1 ?
  mode  Etherchannel Mode of the interface
Switch(config-if)#channel-group 1 mode ?
  active     Enable LACP unconditionally
  auto       Enable PAgP only if a PAgP device is detected
  desirable  Enable PAgP unconditionally
  on         Enable Etherchannel only
  passive    Enable LACP only if a LACP device is detected
Switch(config-if)#channel-group 1 mode 

Notice that I cannot create a channel group unless I specify the mode, and if I specify a mode, only then will LACP be enabled. So based on these commands, there should be no default mode for LACP.

However, after doing a little more research, I have found that other devices (not Cisco) can be enabled with LACP without specifying the mode. According to the IEEE specification, the default mode for LACP in such cases is indeed the passive state. This is a specification of the LACP protocol however, and does not seem to apply for the way in which LACP is implemented in Cisco switches. (Even though the question does specify that we are talking about switches running IOS!)

Remember that LACP is a protocol that can be used by switches as well as servers that have multiple network cards.

I hope this has been helpful!

Laz

2 Likes

Hello Abilash

A physical interface can belong only to a single portchannel. For example, you can’t include GigabitEthernet 0/5 in two different channel groups. If you attempt to do so, then the channel group will simply change.

However, it is possible to create what is known as a vPC, a virtual port channel, which will allow you to have multiple links in a single etherchannel span across two or more switches. The following image shows an example of this:
image

The switch at the bottom has portchannel 30 created that connect to two separate switches. However, from the switch’s point of view, this is a single portchannel to a single device. This provides additional redundancy as well as increased bandwidth and more flexible load balancing. However, this feature is only available in Cisco Nexus switches. Cisco IOS switches are not capable of this topology.

I hope this has been helpful!

Laz

1 Like

Hi Laz,
Thanks a lot for your explanation. I wish if I had a teacher like you in start of my career.
I think VPC (NX-OS) is similar to VSS what we have in IOS switches.
Regards,
Abilaosh TS

1 Like

Hello Laz,

Great! Thank you very much. I couldn’t found out this information myself.

1 Like

Hello Laz,

I’ve read a question and confused about received “right” answer. The question is below:
Which type of load balancing is most appropriate for an EtherChannel that passes traffic from multiple sources to a single end device?

And the answer is “destination MAC address forwarding”.

I suppose the traffic should be load balanced based on source MAC instead destination MAC.
Let me know please if I’m wrong.

Thanks

Hello Boris

For Etherchannel, you should always load balance based on where you have more hosts. If the source has more hosts than the destination, then you load balance based on source addresses (MAC or IP). If the destination has more hosts, then the destination address should be used to load balance.

In this case, for traffic going from many hosts to a single host, traffic should be load balanced based on the source addresses, so yes, you are correct.

If we used the destination address, then all traffic would go over a single link, and the rest of the links would remain idle.

I hope this has been helpful!

Laz

2 Likes

Hello Laz,

Thank you very much.

1 Like

Hello team,

I need help.

  1. According a topology below a single server is connected via EtherChannel to a single Layer 2 switch. A router is the default gateway to the server. I think in this case on the switch traffic flow from the router should be load balanced based on the destination addresses (MAC or IP). Let me know please if I’m wrong.
    image

  2. Another scenario. We have multiple computers. Which EtherChannel load balancing methods on the Layer 2 switch make optimal use of the redundant links? I suppose traffic should be load balanced based on src-dst adresses.
    image

Thanks

Hello Boris

These are excellent examples that very appropriately show the distinction between the various load balancing methods and the scenarios for which they are useful.

Remember first of all that load balancing must be employed on a per direction basis. This means that if you have a topology like this: SW1===SW2, then you must configure the load balancing that will be employed for each direction. For traffic from SW1 to SW2, you configure the load balancing on SW1. For traffic from SW2 to SW1, you configure the load balancing on SW2. The same goes for connections to servers, as you have in your first scenario.

For this first scenario, for traffic that flows from the router to the server, you shouldn’t balance based on either source or destination MAC. Since there is only one MAC on each end (the server and the router) only one of the links will be used. So IP addresses must be used. So which end of the communication will have multiple IP addresses? Not the server side, but the clients themselves (which are assumed to be somewhere behind the router) are assumed to be many.

  • So for traffic from the Switch to the Server, source IP address should be used for load balancing.
  • For traffic from the server to the router, destination IP address should be used for load balancing.

For your second scenario, the server end of the etherchannel still has a single MAC and a single IP address, but now you have multiple MACs and multiple IP addresses on the switch side. Here you will also have to evaluate how much traffic to and from the server you expect to come from the computers, and the router. If we assume an even distribution between all the PCs and the router, then their MAC or IP addresses can be used. If the router will have a disproportionally larger amount of traffic, then you should use only IP addresses.

  • So for traffic from the Switch to the Server, source IP address or source MAC address should be used for load balancing.
  • For traffic from the server to the router, destination IP address or MAC address should be used for load balancing.

Note that since there is only one single server on one end of the Etherchannel, the use of src-dst-ip and src-dst-mac will not make a difference, since on one end you only have a single IP/MAC. These algorithms are useful in randomizing traffic balancing when you have multiple hosts on both ends.

I hope this has been helpful!

Laz

3 Likes

Hello Laz.

Thank you very much!

1 Like

Hi guys,

Can you explain me the difference between LAG and LACP?

Thanks