Link aggregation control protocol (LACP) is one way in which we can group switch interfaces together as one, this group of interfaces is called a port-channel. The main advantages of this are redundancy and increased bandwidth. For my example we have 2 switches these are layer 2 switches, you can in fact have a layer 3 etherchannel I’ll cover this in a future blog.


With your 2 switches cabled up as they are, the usual spanning-tree rules apply, so some of the ports will be blocked and the root bridge will be elected etc. Here’s how you make them into a single link.

switch1(config)#interface range fa 1/0/1 – 4
switch1(config-if)#switchport trunk encapsulation dot1q
switch1(config-if)#switchport mode trunk
switch1(config-if)#channel-protocol lacp
switch1(config-if)#channel-group 1 mode active

Once you’ve put in the last command your switch will create the port-channel interface, any changes you want to make to the config should be made under the port-channel and not the individual interfaces.

Now do the same on the other switch exactly the same commands, something worth mentioning here is if both sides are set to active they will both attempt to form the etherchannel, you could set one side to passive and have only one switch negotiate, but I’d recommend both set to active. Cisco recommend that the Access layer switch be set to passive and the Distribution layer switch be set to active.

Confirm your configs by using the commands below

sh int trunk
sh etherchannel summary
sh etherchannel port-channel
sh etherchannel protocol
sh etherchannel detail

Next you will want to test the redundancy so what you can do is set up IP address’ on VLAN 1 and send a continuous ping across to the other switch, then pull the cable’s out one by one, the pings wont fail until all the cables are pulled.

The bandwidth of this port-channel is 4 x 100mbps so with full-duplex this amounts to 800mbps.

Another topic that should be mentioned here is load-balancing, this is done by an algorithm based on source MAC address, if you use the command “sh etherchannel load-balance” you will see the default is “src-mac” so what happens is the etherchannel load balances traffic based on source MAC. This can be changed, just use the command “port-channel load-balance ?” To see the options and choose what best suits your environment.