Cisco Etherchannel Overview

EtherChannel Feature Overview

An EtherChannel bundles individual Ethernet links into a single logical link that provides the aggregate bandwidth of up to eight physical links.

Cisco IOS Release 12.2SX supports a maximum of 128 EtherChannels. You can form an EtherChannel with up to eight compatibly configured LAN ports on any switching module. All LAN ports in each EtherChannel must be the same speed and must all be configured as either Layer 2 or Layer 3 LAN ports.

 

Note The network device to which a switch is connected may impose its own limits on the number of ports in an EtherChannel.


If a segment within an EtherChannel fails, traffic previously carried over the failed link switches to the remaining segments within the EtherChannel. When a failure occurs, the EtherChannel feature sends a trap that identifies the switch, the EtherChannel, and the failed link. Inbound broadcast and multicast packets on one segment in an EtherChannel are blocked from returning on any other segment of the EtherChannel.

Note Make sure that the LAN ports are configured correctly (see the “EtherChannel Feature Configuration Guidelines and Restrictions” section).


Configuring Port Channel Logical Interfaces for Layer 3 EtherChannels


NoteWhen configuring Layer 2 EtherChannels, you cannot put Layer 2 LAN ports into manually created port channel logical interfaces. If you are configuring a Layer 2 EtherChannel, do not perform the procedures in this section (see the “Configuring Channel Groups” section).

When configuring Layer 3 EtherChannels, you must manually create the port channel logical interface as described in this section, and then put the Layer 3 LAN ports into the channel group (see the “Configuring Channel Groups” section).

To move an IP address from a Layer 3 LAN port to an EtherChannel, you must delete the IP address from the Layer 3 LAN port before configuring it on the port channel logical interface.


To create a port channel interface for a Layer 3 EtherChannel, perform this task:

 
 

Command

Purpose

Step 1

Router(config)# interface port-channel group_number

Creates the port channel interface.

Step 2

Router(config-if)# ip address ip_address mask

Assigns an IP address and subnet mask to the EtherChannel.

Step 3

Router(config-if)# end

Exits configuration mode.

Step 4

Router# show running-config interface port-channel group_number

Verifies the configuration.

The group_number can be 1 through 256, up to a maximum of 128 port-channel interfaces. This example shows how to create port channel interface 1:

Router# configure terminal 
Router(config)# interface port-channel 1 
Router(config-if)# ip address 172.32.52.10 255.255.255.0 
Router(config-if)# end 

This example shows how to verify the configuration of port channel interface 1:

Router# show running-config interface port-channel 1 
Building configuration...
Current configuration:
!
interface Port-channel1
 ip address 172.32.52.10 255.255.255.0
 no ip directed-broadcast
end
Router#

Configuring Channel Groups

NoteWhen configuring Layer 3 EtherChannels, you must manually create the port channel logical interface first (see the “Configuring Port Channel Logical Interfaces for Layer 3 EtherChannels” section), and then put the Layer 3 LAN ports into the channel group as described in this section.

When configuring Layer 2 EtherChannels, configure the LAN ports with the channel-group command as described in this section, which automatically creates the port channel logical interface. You cannot put Layer 2 LAN ports into a manually created port channel interface.

For Cisco IOS to create port channel interfaces for Layer 2 EtherChannels, the Layer 2 LAN ports must be connected and functioning.


To configure channel groups, perform this task for each LAN port:

 
 
Command

Purpose

Step 1

Router(config)# interface type1  slot/port

Selects a LAN port to configure.

Step 2

Router(config-if)# no ip address

Ensures that there is no IP address assigned to the LAN port.

Step 3

Router(config-if)# channel-protocol (lacp |pagp}

(Optional) On the selected LAN port, restricts the channel-group command to the EtherChannel protocol configured with the channel-protocol command.

Step 4

Router(config-if)# channel-group group_numbermode {active | auto | desirable | on | passive}

Configures the LAN port in a port channel and specifies the mode (see Table 19-1). PAgP supports only the auto and desirable modes. LACP supports only the active and passive modes.

Step 5

Router(config-if)# lacp port-prioritypriority_value

(Optional for LACP) Valid values are 1 through 65535. Higher numbers have lower priority. The default is 32768.

Step 6

Router(config-if)# shutdown

Disables the interface.

Step 7

Router(config-if)# no shutdown

Enables the interface.

Step 8

Router(config-if)# end

Exits configuration mode.

Step 9

Router# show running-config interface type1slot/port

Router# show interfaces type1 slot/portetherchannel

Verifies the configuration.

1 type = fastethernet, gigabitethernet, or tengigabitethernet

This example shows how to configure Fast Ethernet ports 5/6 and 5/7 into port channel 2 with PAgP mode desirable:

Router# configure terminal 

Router(config)# interface range fastethernet 5/6 -7 

Router(config-if)# channel-group 2 mode desirable 

Router(config-if)# shutdown

Router(config-if)# no shutdown

Router(config-if)# end 

Note See the “Configuring a Range of Interfaces” section for information about the range keyword.


This example shows how to verify the configuration of port channel interface 2:

Router# show running-config interface port-channel 2 

Building configuration...

Current configuration:

!

interface Port-channel2

 no ip address

 switchport

 switchport access vlan 10

 switchport mode access

end

Router# 

This example shows how to verify the configuration of Fast Ethernet port 5/6:

Router# show running-config interface fastethernet 5/6 

Building configuration...

Current configuration:

!

interface FastEthernet5/6

 no ip address

 switchport

 switchport access vlan 10

 switchport mode access

 channel-group 2 mode desirable

end

Router# show interfaces fastethernet 5/6 etherchannel 

Port state    = Down Not-in-Bndl 

Channel group = 12          Mode = Desirable-Sl     Gcchange = 0

Port-channel  = null        GC   = 0x00000000          Pseudo port-channel = Po1

2

Port index    = 0           Load = 0x00        Protocol =   PAgP

Flags:  S - Device is sending Slow hello.  C - Device is in Consistent state.

        A - Device is in Auto mode.        P - Device learns on physical port.

        d - PAgP is down.

Timers: H - Hello timer is running.        Q - Quit timer is running.

        S - Switching timer is running.    I - Interface timer is running.

Local information:

                                Hello    Partner  PAgP     Learning  Group

Port      Flags State   Timers  Interval Count   Priority   Method  Ifindex

Fa5/2     d     U1/S1           1s       0        128        Any      0

Age of the port in the current state: 04d:18h:57m:19s

This example shows how to verify the configuration of port channel interface 2 after the LAN ports have been configured:

Router# show etherchannel 12 port-channel 

                Port-channels in the group: 

                ----------------------

Port-channel: Po12

------------

Age of the Port-channel   = 04d:18h:58m:50s

Logical slot/port   = 14/1          Number of ports = 0

GC                  = 0x00000000      HotStandBy port = null

Port state          = Port-channel Ag-Not-Inuse 

Protocol            =   PAgP

Router# 

Configuring the LACP System Priority and System ID

The LACP system ID is the combination of the LACP system priority value and the MAC address of the switch.

To configure the LACP system priority and system ID, perform this task:

 
 

Command

Purpose

Step 1

Router(config)# lacp system-prioritypriority_value

(Optional for LACP) Valid values are 1 through 65535. Higher numbers have lower priority. The default is 32768.

Step 2

Router(config)# end

Exits configuration mode.

Step 3

Router# show lacp sys-id

Verifies the configuration.

This example shows how to configure the LACP system priority:

Router# configure terminal 

Router(config)# lacp system-priority 23456

Router(config)# end 

Router(config)# 

This example shows how to verify the configuration:

Router# show lacp sys-id 

23456,0050.3e8d.6400

Router# 

The system priority is displayed first, followed by the MAC address of the switch.

Configuring EtherChannel Load Balancing

To configure EtherChannel load balancing, perform this task:

 
 

Command

Purpose

Step 1

Router(config)# port-channel per-module load-balance

(Optional) Enables the ability to specify the load-balancing method on a per-module basis.

Step 2

Router(config)# port-channel load-balance {src-mac | dst-mac | src-dst-mac | src-ip | dst-ip | src-dst-ip | src-port| dst-port | src-dst-port} [module slot]

Configures the EtherChannel load-balancing method. The method is globally applied to all port channels. Optionally, you can configure the load-balancing method for a specific module. The default method is src-dst-ip.

Router(config)# no port-channel load-balance

Reverts to default EtherChannel load balancing.

Step 3

Router(config)# end

Exits configuration mode.

Step 4

Router# show etherchannel load-balance

Verifies the configuration.

The load-balancing method keywords indicate the following information:

dst-ip—Destination IP addresses

dst-mac—Destination MAC addresses

dst-port—Destination Layer 4 port

mpls—Load balancing for MPLS packets

src-dst-ip—(Default) Source and destination IP addresses

src-dst-mac—Source and destination MAC addresses

src-dst-port—Source and destination Layer 4 port

src-ip—Source IP addresses

src-mac—Source MAC addresses

src-port—Source Layer 4 port

The optional module keyword allows you to specify the load-balancing method for a specific module. This capability is supported only on DFC-equipped switching modules. You must enable per-module load balancing globally before configuring the feature on a module.

This example shows how to configure EtherChannel to use source and destination IP addresses:

Router# configure terminal 

Router(config)# port-channel load-balance src-dst-ip 

Router(config)# end 

Router(config)# 

This example shows how to verify the configuration:

Router# show etherchannel load-balance 

EtherChannel Load-Balancing Configuration:

        src-dst-ip enhanced

        mpls label-ip

EtherChannel Load-Balancing Addresses Used Per-Protocol:

Non-IP: Source XOR Destination MAC address

  IPv4: Source XOR Destination IP address

  IPv6: Source XOR Destination IP address

  MPLS: Label or IP

Router# 

Note In this example, the enhanced keyword indicates that PFC3C/CXL hardware is installed and, as a result, VLAN information will also be included in the load-balancing method.


Configuring EtherChannel Hash-Distribution Algorithm

Releases earlier than 12.2(33)SXH support a load-distribution algorithm called the fixed algorithm. When you add a port to the EtherChannel or delete a port from the EtherChannel, the switch updates the port ASIC for each port in the EtherChannel, which causes a short outage on each port.

Release 12.2(33)SXH and later releases support an additional algorithm called the adaptive algorithm. The adaptive algorithm does not need to update the port ASIC for existing member ports.

The fixed algorithm is the default algorithm. You can configure a global value for the adaptive algorithm. You can also specify the algorithm for individual port channels.

When you change the algorithm, the change is applied at the next member link event (link down, link up, addition, deletion, no shutdown, and shutdown). When you enter the command to change the algorithm, the command console issues a warning that the command does not take effect until the next member link event.


Note Some external devices require the fixed algorithm. For example, the service control engine (SCE) requires incoming and outgoing packets to use the same port.



Note If you change the load-balancing method, EtherChannel ports on DFC-equipped switching modules or on an active supervisor engine in a dual supervisor engine configuration will flap.


Configuring the Hash-Distribution Algorithm Globally

To configure the load-sharing algorithm globally, perform this task:

 
 

Command

Purpose

Step 1

Router(config)# port-channel hash-distribution {adaptive | fixed}

Sets the hash distribution algorithm to adaptive or fixed.

Step 2

Router(config)# end

Exits configuration mode.

This example shows how to globally set the hash distribution to adaptive:

Router(config)# port-channel hash-distribution adaptive

Configuring the Hash-Distribution Algorithm for a Port Channel

To configure the hash-distribution algorithm for a specific port channel, perform this task:

 
 

Command

Purpose

Step 1

Router(config)# interface port-channel channel-num

Enters interface configuration mode for the port channel.

Step 2

Router(config-if)# port-channel port hash-distribution {adaptive | fixed}

Sets the hash distribution algorithm for this interface

Step 3

Router(config-if)# end

Exits interface configuration mode.

This example shows how to set the hash distribution algorithm to adaptive on port channel 10:

Router (config)# interface port-channel 10

Router (config-if)# port-channel port hash-distribution adaptive

Configuring the EtherChannel Min-Links Feature

The EtherChannel min-links feature is supported on LACP EtherChannels. This feature allows you to configure the minimum number of member ports that must be in the link-up state and bundled in the EtherChannel for the port channel interface to transition to the link-up state. You can use the EtherChannel min-links feature to prevent low-bandwidth LACP EtherChannels from becoming active. This feature also causes LACP EtherChannels to become inactive if they have too few active member ports to supply your required minimum bandwidth. In addition, when LACP max-bundle values are specified in conjunction with min-links, the configuration is verified and an error message is returned if the min-links value is not compatible with (equal to or less than) the max-bundle value.

To configure the EtherChannel min-links feature, perform this task:

 
 

Command

Purpose

Step 1

Router(config)# interface port-channelgroup_number

Selects an LACP port channel interface.

Step 2

Router(config-if)# port-channel min-links number

Configures the minimum number of member ports that must be in the link-up state and bundled in the EtherChannel for the port channel interface to transition to the link-up state.

Step 3

Router(config-if)# end

Exits configuration mode.

Step 4

Router# show running-config interfaceport-channel group_number

Router# show interfaces type1 slot/portetherchannel

Verifies the configuration.

1 type = fastethernet, gigabitethernet, or tengigabitethernet


Note Although the EtherChannel min-links feature works correctly when configured only on one end of an EtherChannel, for best results, configure the same number of minimum links on both ends of the EtherChannel.


This example shows how to configure port channel interface 1 to be inactive if fewer than two member ports are active in the EtherChannel:

Router# configure terminal 

Router(config)# interface port-channel 1 

Router(config-if)# port-channel min-links 2 

Router(config-if)# end 

Configuring LACP 1:1 Redundancy

For the LACP 1:1 redundancy feature, the LACP EtherChannel must contain exactly two links, of which only one is active. The link with the lower port priority number (and therefore a higher priority) will be the active link, and the other link will be in a hot standby state. The LACP max-bundle must be set to 1.

To configure the LACP 1:1 redundancy feature, perform this task:

 
 

Command

Purpose

Step 1

Router(config)# interface port-channel group_number

Selects an LACP port channel interface.

Step 1

Router(config-if)# lacp fast-switchover

Enables the fast switchover feature for this EtherChannel.

Step 2

Router(config-if)# lacp max-bundle 1

Sets the maximum number of active member ports to be one.

Step 3

Router(config-if)# end

Exits configuration mode.

Step 4

Router# show running-config interface port-channel group_number

Router# show interfaces type1 slot/port etherchannel

Verifies the configuration.

1 type = fastethernet, gigabitethernet, or tengigabitethernet


Note For the LACP 1:1 redundancy feature to work correctly, especially the fast switchover capability, the feature needs to be enabled at both ends of the EtherChannel.


This example shows how to configure an LACP EtherChannel with 1:1 redundancy. Because Fast Ethernet port 5/6 is configured with a higher port priority number (and therefore a lower priority) than the default of 32768, it will be the standby port.

Router# configure terminal 

Router(config)# lacp system-priority 33000

Router(config)# interface range fastethernet 5/6 -7 

Router(config-if)# channel-protocol lacp

Router(config-if)# channel-group 1 mode active 

Router(config)# interface fastethernet 5/6 

Router(config-if)# lacp port-priority 33000

Router(config)# interface port-channel 1 

Router(config-if)# lacp fast-switchover 

Router(config-if)# lacp max-bundle 1 

Router(config-if)# end 

Tip For additional information about Cisco Catalyst 6500 Series Switches (including configuration examples and troubleshooting information), see the documents listed on this page:

http://www.cisco.com/en/US/products/hw/switches/ps708/tsd_products_support_series_home.html


Configuring Auto Interleaved Port Priority For LACP Port Channels

To configure auto interleaved port priority for LACP on a port channel, perform this task on the port channel interface:

 
 

Command

Purpose

Step 1

Router(config)# interface port-channel channel-group

Selects a port channel interface to configure.

Step 2

Router(config-if)# lacp active-port distribution automatic

Configures the port channel to use interleaved port priority.


Note You need to perform a shutdown and no shutdown for interleaved port priority to be enabled.


Step 3

Router(config-if)# shutdown

Disables the interface.

Step 4

Router(config-if)# no shutdown

Enables the interface.

Step 5

Router(config-if)# end

Exits configuration mode.

Step 6

Router# show etherchannel channel-group port-channel

Router# show etherchannel channel-group summary

Verifies the configuration.

This example shows how to configure auto interleaved port priority on a port channel:

Router(config)# interface port-channel23 

Router(config-if)# lacp active-port distribution automatic

Please shut/no shut the port-channel for configuration to take effect immediately.

Router(config-if)# shutdown 

Router(config-if)# no shutdown 

Router(config-if)# end 

This example shows how to verify the configuration of port channel interface 23:

Router# show running interfaces port-channel23 

Building configuration... 

Current configuration : 81 bytes 

!

interface Port-channel23 

 no switchport 

 no ip address 

 lacp max-bundle 4 

 lacp active-port distribution automatic 

end 

This example shows how to verify the configuration of EtherChannel 23:

Router# show etherchannel 23 summary 

Flags:  D - down        P - bundled in port-channel 

        I - stand-alone s - suspended 

        H - Hot-standby (LACP only) 

        R - Layer3      S - Layer2 

        U - in use      N - not in use, no aggregation 

        f - failed to allocate aggregator 

        M - not in use, no aggregation due to minimum links not met 

        m - not in use, port not aggregated due to minimum links not met 

        u - unsuitable for bundling 

        d - default port 

        w - waiting to be aggregated 

Number of channel-groups in use: 9 

Number of aggregators:           9 

Group  Port-channel  Protocol    Ports 

------+-------------+-----------+--------------------------------------- 

23     Po23(RU)        LACP      Gi1/1/21(P)    Gi1/1/22(P)    Gi1/1/23(H) 

                                 Gi1/1/24(H)    Gi2/1/17(P)    Gi2/1/18(P) 

                                 Gi2/1/19(H)    Gi2/1/20(H) 

Last applied Hash Distribution Algorithm: Fixed


Note The above example shows that the four bundled ports are distributed 2 per chassis and slot.


Configuring LACP Port-Channel Standalone Disable

To disable the standalone EtherChannel member port state on a port channel (see Table 19-2), perform this task on the port channel interface:

 
 

Command

Purpose

Step 1

Router(config)# interface port-channel channel-group

Selects a port channel interface to configure.

Step 2

Router(config-if)# port-channel standalone-disable

Disables the standalone mode on the port-channel interface.

Step 3

Router(config-if)# end

Exits configuration mode.

Step 4

Router# show etherchannel channel-group port-channel

Router# show etherchannel channel-group detail

Verifies the configuration.

This example shows how to disable the standalone EtherChannel member port state on port channel 42:

Router(config)# interface port-channel channel-group 

Router(config-if)# port-channel standalone-disable 

This example shows how to verify the configuration:

Router# show etherchannel 42 port-channel | include Standalone 

Standalone Disable  = enabled 

Router# show etherchannel 42 detail | include Standalone 

Standalone Disable  = enabled

http://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst6500/ios/12-2SX/configuration/guide/book/channel.html#wp1061808