Table Of Contents
Understanding and Configuring EtherChannel
EtherChannel Overview
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 a Layer 3 EtherChannel
Configuring Layer 2 EtherChannels
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 4006 switch with Supervisor Engine III Layer 2 or Layer 3 interfaces. It also provides guidelines, procedures, and configuration examples.
This chapter consists of the following sections:
•
EtherChannel Overview
•
EtherChannel Configuration Guidelines and Restrictions
•
Configuring EtherChannel
Note
The commands in the following sections can be used on all Ethernet interfaces in Catalyst 4006 switch with Supervisor Engine III, including the uplink ports on the supervisor engine.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the Command Reference for the Catalyst 4006 Switch with Supervisor Engine III and the publications at the following URL:
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121cgcr/index.htm
EtherChannel Overview
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 4006 switch with Supervisor Engine III and another switch or host.
A Catalyst 4006 switch with Supervisor Engine III 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 4006 switch with Supervisor Engine III. 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 4006 switch with Supervisor Engine III 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. An SNMP trap is sent upon a failure 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 (such as STP commands, or commands to configure a Layer2 EtherChannel as a trunk) to the port-channel interface.
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 11-1Table 11-1). Only auto and desirable are PAgP modes.
Table 11-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 into 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 into 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 if 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 is shown in Table 11-2Table 11-2.
Table 11-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, configuration that you apply to the port-channel interface affects the EtherChannel; 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 EtherChannels
•
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 a Layer 3 EtherChannel
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 task:
| |
Task
|
Command
|
Step 1
|
Create the port-channel interface. 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 a Layer 3 EtherChannel
To configure physical interfaces as a Layer 3 EtherChannel, perform this task 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
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.
This example 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 EtherChannels
To configure Layer 2 EtherChannels, configure the Ethernet interfaces with the channel-group command. This creates the port-channel logical interface.
Note
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 a Layer 2 EtherChannel, perform this task 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
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
This example shows 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 task:
| |
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
•
src-dst-mac—Destination MAC addresses
•
src-dst-mac—Source and destination MAC addresses
•
src-ip—Source IP addresses
•
src-dst-ip—Destination IP addresses
•
src-dst-ip—Source and destination IP addresses (Default)
•
src-port—Source Layer 4 port
•
src-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 task:
| |
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 interface 5/4 from port-channel 1:
Switch# configure terminal
Switch(config)# interface range fastethernet 5/4 - 5
Switch(config-if)# no channel-group 1
Note
See the "Configuring a Range of Interfaces" section for information about the range keyword.
Removing an EtherChannel
If you remove an EtherChannel, the member ports are shutdown and removed from the Channel group.
To remove an EtherChannel, perform this task:
| |
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