Routing and Switching

Port Aggregation (Etherchannel)


Etherchannel is the technology used for bundling multiple physical links which may have been redundant, into a single logical link. This prevents a single point of failure and the bandwidth of bundled links are aggregated. Etherchannel is typically deployed between distribution–core and core–core interconnections where increased availability and scaled bandwidth are required.

Without this grouping STP/RSTP would place redundant interfaces into blocking state to maintain a loop-free topology.

As much as 8 physical ports of the same speed and Ethernet media type can be bundled by Etherchannel. For successful bundling of links, the following conditions must be met:

  • All bundled ports must belong to the same VLAN.
  • Each of the ports must have same speed and duplex settings.
  • If the link is to be used as a trunk link, all bundled ports must be in trunking mode, they must have the same native VLAN and pass same set of VLANS.
  • If the link is an access link, they must carry same set of VLANs.
  • Bundled ports must be configured with identical spanning tree settings.

Each channel is called a channel group and a physical port can be added in the interface configuration mode.

Traffic Distribution in Etherchannel

How much traffic a link in an Etherchannel bundle carries is a function of a hashing algorithm, thus traffic is not equally distributed across all the links. In determining which link will carry traffic, the algorithm can choose to use any one of the following:

  • Source IP address
  • Destination IP address
  • A combination of source and destination IP addresses
  • Source and destination MAC addresses
  • TCP/UDP port numbers

To determine the link that will carry each frame, the algorithm computes a binary pattern, the result of which will indicate the link to use. For example, if one address or port number is hashed, each frame is forwarded by using one or more low order bit of the hash value as an index into the bundled links. However, if two addresses or port numbers are hashed the switch performs an Exclusive Or (XOR) operation on one or more low order bits as an index to the bundled links.

The default frame distribution method is not consistent across all switches, it depends on the switch model and hardware capabilities. To configure it, it is set with a global configuration command, not on a per port basis. The command is as follows:

Switch(config)# port-channel load-balance method

The table below list the possible values for the method variable alongside the hashing operation.

Method Value Hash Input Hash Operation
src-ip Source IP address Bits
dst-ip Destination IP address Bits
src-dst-ip Source and destination IP address XOR
src-mac Source MAC address Bits
dst-mac Destination MAC address Bits
src-dst-mac Source and destination MAC XOR
src-port Source port number Bits
dst-port Destination port number Bits
src-dst-port Source and destination port XOR

Etherchannel Negotiation

Link bundling can be achieved in one of two ways;

  • Using negotiation protocols
  • Static method where negotiation protocols is not in use.

Bundling links using negotiation protocols protect against misconfiguration and hardware failure scenarios that can cause STP loops to form.

There are two negotiation protocols that are used to bundle links together: Port Aggregation Protocol and Link Aggregation Control Protocol.

Port Aggregation Protocol (PAgP)

This is a Cisco proprietary link bundling method. It is used to negotiate Etherchannel only between Cisco devices. When using PAgP, ports must have either identical static VLANs or trunking. Also, if one of the bundled port is modified PAgP dynamically modifies the parameters of the Etherchannel. Up to 8 links can be bundled together using PAgP.

PAgP has 2 configurable modes leading to the automatic bundling of links:

  • Desirable mode: This mode request that the other end of the link become a member of an Etherchannel group.
  • Auto mode: This mode becomes a member of an Etherchannel group at the request of the other end of the link.

The following command is used to configure an Etherchannel to use PAgP

Switch(config)# interface type member/module/number

Switch(config-if)# channel-protocol pagp

Switch(config-if)# channel-group number mode { on | {{ auto | desirable }[ non-silent ]}}

When using protocols to negotiate Etherchannel, the two ends of the link must send negotiation packets. However, PAgP operates in silent sub-mode by default in Desirable and Auto modes. This means that a port can be added to the Etherchannel even if the other end of the link is silent i.e. does not transmit PAgP packets. A link in the silent sub-mode listens for any PAgP packet from the far end, looking to negotiate a channel. If it receives none, the silent sub-mode assumes that a channel should be formed anyway so no more PAgP packets are expected from the far end.

The silent sub-mode allows a switch to form Etherchannel with devices that do not participate in PAgP, like file server and network analyzer.

Link Aggregation Control Protocol

This is a standard based protocol used for Etherchannel, it is defined in IEEE 802.3ad. LACP allows devices from different vendors that support 802.3ad to negotiate link aggregation with each other.

Like PAgP, neighbors are identified and port group capabilities are learned and compared with local switch capabilities.

LACP assigns roles to Etherchannel endpoints. The switch with the lowest system priority becomes the decision maker in the channel group and makes decision on what ports participate actively in the Etherchannel at a given time.

The system priority consists of a 2-byte priority value followed by a 6-byte switch MAC address. The system priority is defined between 1 to 65,535, and default to 32,768. Ports are selected and become active based on their port priority value. The port priority value is made up of a 2-byte priority and a 2-byte port number. A low value indicate a higher priority.

In LACP, up to 16 links can be bundled together for each channel, but only 8 can be active at any given time. The other links are placed in the standby state and will be enabled in the Etherchannel if one of the active links goes down.

There are 2 configuration modes for LACP;

  • Active mode: This mode request that the other end of the link become a member of an Etherchannel group.
  • Passive mode: This mode becomes a member of an Etherchannel group at the request of the other end of the link.

The following commands are used to configure switch ports for LACP negotiation.

Switch(config)# lacp system-priority priority

Switch(config)# interface type member/module/number

Switch(config-if)# channel-protocol lacp

Switch(config-if)# channel-group number mode { on | passive | active }

Switch(config-if)# lacp port-priority priority

Static Method

Here, Etherchannels are formed unconditionally without the use of negotiation protocols. Static mode is used when optimum performance is desired. However, the absence of negotiation protocol may result in misconfiguration i.e. mismatched pairs or hardware failure can result in unexpected behavior.

Using the static method involves putting the two ends of the link in the on/on mode.

Switch(config)# interface type member/module/number

Switch(config-if)# channel-group number mode  on

Troubleshooting an EtherChannel

If you find that an EtherChannel is having problems, remember that the whole concept is based on consistent configurations on both ends of the channel. Here are some reminders about EtherChannel operation and interaction:

  • EtherChannel on mode does not send or receive PAgP or LACP packets. Therefore, both ends should be set to on mode before the channel can form.
  • EtherChannel desirable (PAgP) or active (LACP) mode attempts to ask the far end to bring up a channel. Therefore, the other end must be set to either desirable or auto
  • EtherChannel auto (PAgP) or passive (LACP) mode participates in the channel protocol, but only if the far end asks for participation. Therefore, two switches in the auto or passive mode will not form an EtherChannel.
  • PAgP desirable and auto modes default to the silent submode, in which no PAgP packets are expected from the far end. If ports are set to non-silent submode, PAgP packets must be received before a channel will form.

The troubleshooting method written above is straight out of Cisco’s CCNP Routing and Switching 300-115 Official Certification guide.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s