Table Of Contents
Understanding and Configuring EtherChannel
Overview of EtherChannel
Understanding Port-Channel Interfaces
Understanding the Port Aggregation Protocol
Understanding Load Balancing
EtherChannel Configuration Guidelines and Restrictions
Configuring EtherChannel
Configuring Layer 3 EtherChannels
Creating Port-Channel Logical Interfaces
Configuring Physical Interfaces as Layer 3 EtherChannels
Configuring Layer 2 EtherChannel
Configuring EtherChannel Load Balancing
Removing an Interface from an EtherChannel
Removing an EtherChannel
Understanding and Configuring EtherChannel
This chapter describes how to use the command-line interface (CLI) to configure EtherChannel on the Catalyst 4500 series switch Layer 2 or Layer 3 interfaces. It also provides guidelines, procedures, and configuration examples.
This chapter includes the following major sections:
•
Overview of EtherChannel
•
EtherChannel Configuration Guidelines and Restrictions
•
Configuring EtherChannel
Note
The commands in the following sections can be used on all Ethernet interfaces on a Catalyst 4500 series, including the uplink ports on the supervisor engine.
Note
For complete syntax and usage information for the switch commands used in this chapter, refer to the Catalyst 4500 Series Switch Cisco IOS Command Reference and the publications at
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121cgcr/index.htm
Overview of EtherChannel
EtherChannel bundles individual Ethernet links into a single logical link that provides bandwidth up to 1600 Mbps (Fast EtherChannel full duplex) or 16 Gbps (Gigabit EtherChannel) between a Catalyst 4500 series and another switch or host.
A Catalyst 4500 series supports a maximum of 64 EtherChannels. You can form an EtherChannel with up to eight compatibly configured Ethernet interfaces on any module and across modules in a Catalyst 4500 series. All interfaces in each EtherChannel must be the same speed and must all be configured as either Layer 2 or Layer 3 interfaces.
Note
The network device to which a Catalyst 4500 series is connected may impose its own limits on the number of interfaces 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. Once the segment fails, an SNMP trap is sent, identifying 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.
The following sections describe how EtherChannel works:
•
Understanding Port-Channel Interfaces
•
Understanding the Port Aggregation Protocol
•
Understanding Load Balancing
Understanding Port-Channel Interfaces
Each EtherChannel has a numbered port-channel interface. A configuration applied to the port-channel interface affects all physical interfaces assigned to that interface.
After you configure an EtherChannel, the configuration that you apply to the port-channel interface affects the EtherChannel; the configuration that you apply to the physical interfaces affects only the interface where you apply the configuration. To change the parameters of all ports in an EtherChannel, apply configuration commands to the port-channel interface (such commands can be STP commands or commands to configure a Layer 2 EtherChannel as a trunk).
Understanding the Port Aggregation Protocol
The Port Aggregation Protocol (PAgP) expedites the automatic creation of EtherChannels by exchanging packets between Ethernet interfaces. PAgP packets are exchanged only between interfaces in auto and desirable modes. Interfaces configured in the on mode do not exchange PAgP packets.
The protocol learns the capabilities of interface groups dynamically and informs the other interfaces. When PAgP identifies correctly matched Ethernet links, it groups the links into an EtherChannel. The EtherChannel is then added to the spanning tree as a single bridge port.
EtherChannel includes three user-configurable modes: on, auto, and desirable (see Table 15-1Table 15-1). Only auto and desirable are PAgP modes.
Table 15-1 EtherChannel Modes
Mode
|
Description
|
on
|
Mode that forces the interface to channel without PAgP. In the on mode, a usable EtherChannel exists only when an interface group in the on mode is connected to another interface group in the on mode.
|
auto
|
PAgP mode that places an interface in a passive negotiating state in which the interface responds to PAgP packets it receives but does not initiate PAgP negotiation.
|
desirable
|
PAgP mode that places an interface in an active negotiating state in which the interface initiates negotiations with other interfaces by sending PAgP packets.
|
Both the auto and desirable modes allow interfaces to negotiate with partner interfaces to determine whether they can form an EtherChannel, based on criteria such as interface speed and, for Layer 2 EtherChannels, trunking state and VLAN numbers.
Interfaces between two connected switches can form an EtherChannel when they are in different PAgP modes as long as the modes are compatible. This compatibility of the modes is shown in Table 15-2Table 15-2.
Table 15-2 Compatibility of EtherChannel Modes
| |
desirable
|
auto
|
on
|
desirable
|
Yes
|
Yes
|
No
|
auto
|
Yes
|
No
|
No
|
on
|
No
|
No
|
Yes
|
Understanding Load Balancing
EtherChannel balances traffic load across the links in a channel by reducing part of the binary pattern formed from the addresses in the frame to a numerical value that selects one of the links in the channel.
EtherChannel load balancing can use MAC addresses, IP addresses, or Layer 4 port numbers; either source or destination or both source and destination.
Use the option that provides the greatest variety in your configuration. For example, if the traffic on a channel is going only to a single MAC address, using the destination MAC address always chooses the same link in the channel; using source addresses or IP addresses might result in better load balancing.
Note
Load balancing operates at the switch level rather than per-channel, applying globally for all channels on the switch.
For additional information on load balancing, see the "Configuring EtherChannel Load Balancing" section.
EtherChannel Configuration Guidelines and Restrictions
If improperly configured, some EtherChannel interfaces are disabled automatically to avoid network loops and other problems. Follow these guidelines and restrictions to avoid configuration problems:
•
All Ethernet interfaces on all modules support EtherChannel (maximum of eight interfaces) with no requirement that interfaces be physically contiguous or on the same module.
•
Configure all interfaces in an EtherChannel to operate at the same speed and duplex mode.
•
Enable all interfaces in an EtherChannel. If you shut down an interface in an EtherChannel, it is treated as a link failure and its traffic is transferred to one of the remaining interfaces in the EtherChannel.
•
An EtherChannel will not form if one of the interfaces is a Switched Port Analyzer (SPAN) destination port.
•
For Layer 3 EtherChannels:
–
Assign Layer 3 addresses to the port-channel logical interface, not to the physical interfaces in the channel.
•
For Layer 2 EtherChannels:
–
Assign all interfaces in the EtherChannel to the same VLAN, or configure them as trunks.
–
If you configure an EtherChannel from trunk interfaces, verify that the trunking mode is the same on all the trunks. Interfaces in an EtherChannel with different trunk modes can have unexpected results.
–
An EtherChannel supports the same allowed range of VLANs on all the interfaces in a trunking Layer 2 EtherChannel. If the allowed range of VLANs is not the same, the interfaces do not form an EtherChannel even when set to the auto or desirable mode.
–
Interfaces with different Spanning Tree Protocol (STP) port path costs can form an EtherChannel as long they are otherwise compatibly configured. Setting different STP port path costs does not, by itself, make interfaces incompatible for the formation of an EtherChannel.
•
After you configure an EtherChannel, any configuration that you apply to the port-channel interface affects the EtherChannel; any configuration that you apply to the physical interfaces affects only the interface where you apply the configuration.
Configuring EtherChannel
These sections describe how to configure EtherChannel:
•
Configuring Layer 3 EtherChannels
•
Configuring Layer 2 EtherChannel
•
Configuring EtherChannel Load Balancing
•
Removing an Interface from an EtherChannel
•
Removing an EtherChannel
Note
Ensure that the interfaces are configured correctly (see the "EtherChannel Configuration Guidelines and Restrictions" section).
Configuring Layer 3 EtherChannels
To configure Layer 3 EtherChannels, create the port-channel logical interface and then put the Ethernet interfaces into the port-channel.
These sections describe Layer 3 EtherChannel configuration:
•
Creating Port-Channel Logical Interfaces
•
Configuring Physical Interfaces as Layer 3 EtherChannels
Creating Port-Channel Logical Interfaces
Note
To move an IP address from a physical interface to an EtherChannel, you must delete the IP address from the physical interface before configuring it on the port-channel interface.
To create a port-channel interface for a Layer 3 EtherChannel, perform this procedure:
| |
Task
|
Command
|
Step 1
|
Create the port-channel interface. The value for port_channel_number can range from 1 to 64
|
Switch(config)# interface port-channel
port_channel_number
|
Step 2
|
Assign an IP address and subnet mask to the EtherChannel.
|
Switch(config-if)# ip address ip_address mask
|
Step 3
|
Exit configuration mode.
|
|
Step 4
|
Verify the configuration.
|
Switch# show running-config interface
port-channel port_channel_number
|
This example shows how to create port-channel interface 1:
Switch# configure terminal
Switch(config)# interface port-channel 1
Switch(config-if)# ip address 172.32.52.10 255.255.255.0
This example shows how to verify the configuration of port-channel interface 1:
Switch# show running-config interface port-channel 1
Building configuration...
ip address 172.32.52.10 255.255.255.0
Configuring Physical Interfaces as Layer 3 EtherChannels
To configure physical interfaces as Layer 3 EtherChannels, perform this procedure for each interface:
| |
Task
|
Command
|
Step 1
|
Select a physical interface to configure.
|
Switch(config)# interface {fastethernet |
gigabitethernet} slot/port
|
Step 2
|
Make this a Layer 3 routed port.
|
Switch(config-if)# no switchport
|
Step 3
|
Ensure that there is no IP address assigned to the physical interface.
|
Switch(config-if)# no ip address
|
Step 4
|
Configure the interface in a port-channel and specify the PAgP mode.
|
Switch(config-if)# channel-group port_channel_number
mode {auto | desirable | on}
|
Step 5
|
Exit configuration mode.
|
|
Step 6
|
Verify the configuration.
|
Switch# show running-config interface port-channel
port_channel_number
Switch# show running-config interface {fastethernet
| gigabitethernet} slot/port
Switch# show interfaces {fastethernet |
gigabitethernet} slot/port etherchannel
Switch# show etherchannel 1 port-channel
|
This example shows how to configure Fast Ethernet interfaces 5/4 and 5/5 into port-channel 1 with PAgP mode desirable:
Switch# configure terminal
Switch(config)# interface range fastethernet 5/4 - 5 (Note: Space is mandatory.)
Switch(config-if)# no switchport
Switch(config-if)# no ip address
Switch(config-if)# channel-group 1 mode desirable
Note
See the "Configuring a Range of Interfaces" section for information about the range keyword.
The following two examples shows how to verify the configuration of Fast Ethernet interface 5/4:
Switch# show running-config interface fastethernet 5/4
Building configuration...
interface FastEthernet5/4
channel-group 1 mode desirable
Switch# show interfaces fastethernet 5/4 etherchannel
Port state = EC-Enbld Up In-Bndl Usr-Config
Channel group = 1 Mode = Desirable Gcchange = 0
Port-channel = Po1 GC = 0x00010001 Pseudo-port-channel = Po1
Port indx = 0 Load = 0x55
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.
Timers: H - Hello timer is running. Q - Quit timer is running.
S - Switching timer is running. I - Interface timer is running.
Hello Partner PAgP Learning Group
Port Flags State Timers Interval Count Priority Method Ifindex
Fa5/4 SC U6/S7 30s 1 128 Any 55
Partner Partner Partner Partner Group
Port Name Device ID Port Age Flags Cap.
Fa5/4 JAB031301 0050.0f10.230c 2/45 1s SAC 2D
Age of the port in the current state: 00h:54m:52s
This example shows how to verify the configuration of port-channel interface 1 after the interfaces have been configured:
Switch# show etherchannel 1 port-channel
Port-channels in the group:
Age of the Port-channel = 01h:56m:20s
Logical slot/port = 10/1 Number of ports = 2
GC = 0x00010001 HotStandBy port = null
Port state = Port-channel L3-Ag Ag-Inuse
Ports in the Port-channel:
Time since last port bundled: 00h:23m:33s Fa5/6
Configuring Layer 2 EtherChannel
To configure Layer 2 EtherChannels, configure the Ethernet interfaces with the channel-group command. This creates the port-channel logical interface.
Note
Cisco IOS creates port-channel interfaces for Layer 2 EtherChannels when you configure Layer 2 Ethernet interfaces with the channel-group command.
To configure Layer 2 Ethernet interfaces as Layer 2 EtherChannels, perform this procedure for each interface:
| |
Task
|
Command
|
Step 1
|
Select a physical interface to configure.
|
Switch(config)# interface {fastethernet | gigabitethernet}
slot/port
|
Step 2
|
Configure the interface in a port-channel and specify the PAgP mode.
|
Switch(config-if)# channel-group port_channel_number mode
{auto | desirable | on}
|
Step 3
|
Exit configuration mode.
|
|
Step 4
|
Verify the configuration.
|
Switch# show running-config interface {fastethernet |
gigabitethernet} slot/port
Switch# show interface {fastethernet | gigabitethernet}
slot/port etherchannel
|
This example shows how to configure Fast Ethernet interfaces 5/6 and 5/7 into port-channel 2 with PAgP mode desirable:
Switch# configure terminal
Switch(config)# interface range fastethernet 5/6 - 7 (Note: Space is mandatory.)
Switch(config-if-range)# channel-group 2 mode desirable
Switch(config-if-range)# 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:
Switch# show running-config interface port-channel 2
Building configuration...
switchport access vlan 10
The following two examples show how to verify the configuration of Fast Ethernet interface 5/6:
Switch# show running-config interface fastethernet 5/6
Building configuration...
interface FastEthernet5/6
switchport access vlan 10
channel-group 2 mode desirable
Switch# show interfaces fastethernet 5/6 etherchannel
Port state = EC-Enbld Up In-Bndl Usr-Config
Channel group = 1 Mode = Desirable Gcchange = 0
Port-channel = Po1 GC = 0x00010001
Port indx = 0 Load = 0x55
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.
Timers: H - Hello timer is running. Q - Quit timer is running.
S - Switching timer is running. I - Interface timer is running.
Hello Partner PAgP Learning Group
Port Flags State Timers Interval Count Priority Method Ifindex
Fa5/6 SC U6/S7 30s 1 128 Any 56
Partner Partner Partner Partner Group
Port Name Device ID Port Age Flags Cap.
Fa5/6 JAB031301 0050.0f10.230c 2/47 18s SAC 2F
Age of the port in the current state: 00h:10m:57s
This example shows how to verify the configuration of port-channel interface 2 after the interfaces have been configured:
Switch# show etherchannel 2 port-channel
Port-channels in the group:
Age of the Port-channel = 00h:23m:33s
Logical slot/port = 10/2 Number of ports in agport = 2
GC = 0x00020001 HotStandBy port = null
Port state = Port-channel Ag-Inuse
Ports in the Port-channel:
Time since last port bundled: 00h:23m:33s Fa5/6
Configuring EtherChannel Load Balancing
Note
Load balancing operates at the switch level rather than per-channel, applying globally for all channels on the switch.
To configure EtherChannel load balancing, perform this procedure:
| |
Task
|
Command
|
Step 1
|
Configure EtherChannel load balancing.
Use the no keyword to return EtherChannel load balancing to the default configuration.
|
Switch(config)# [no] 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}
|
Step 2
|
Exit configuration mode.
|
|
Step 3
|
Verify the configuration.
|
Switch# show etherchannel load-balance
|
The load-balancing keywords are:
•
src-mac—Source MAC addresses
•
dst-mac—Destination MAC addresses
•
src-dst-mac—Source and destination MAC addresses
•
src-ip—Source IP addresses
•
dst-ip—Destination IP addresses
•
src-dst-ip—Source and destination IP addresses (Default)
•
src-port—Source Layer 4 port
•
dst-port—Destination Layer 4 port
•
src-dst-port—Source and destination Layer 4 port
This example shows how to configure EtherChannel to use source and destination IP addresses:
Switch# configure terminal
Switch(config)# port-channel load-balance src-dst-ip
This example shows how to verify the configuration:
Switch# show etherchannel load-balance
Source XOR Destination IP address
Removing an Interface from an EtherChannel
To remove an Ethernet interface from an EtherChannel, perform this procedure:
| |
Task
|
Command
|
Step 1
|
Select a physical interface to configure.
|
Switch(config)# interface {fastethernet |
gigabitethernet} slot/port
|
Step 2
|
Remove the interface from the port-channel interface.
|
Switch(config-if)# no channel-group
|
Step 3
|
Exit configuration mode.
|
|
Step 4
|
Verify the configuration.
|
Switch# show running-config interface
{fastethernet | gigabitethernet} slot/port
Switch# show interface {fastethernet |
gigabitethernet} slot/port etherchannel
|
This example shows how to remove Fast Ethernet interfaces 5/4 and 5/5 from port-channel 1:
Switch# configure terminal
Switch(config)# interface range fastethernet 5/4 - 5 (Note: Space is mandatory.)
Switch(config-if)# no channel-group 1
Removing an EtherChannel
If you remove an EtherChannel, the member ports are shut down and removed from the Channel group.
To remove an EtherChannel, perform this procedure:
| |
Task
|
Command
|
Step 1
|
Remove the port-channel interface.
|
Switch(config)# no interface port-channel
port_channel_number
|
Step 2
|
Exit configuration mode.
|
|
Step 3
|
Verify the configuration.
|
Switch# show etherchannel summary
|
This example shows how to remove port-channel 1:
Switch# configure terminal
Switch(config)# no interface port-channel 1