Question on how traffic flows accross etherchannels

dmwynne used Ask the Experts™
My question is how traffic flows across an etherchannel with 4 physical switch ports.  I have an application monitoring port usage and it is showing that one port in the etherchannel has alot more traffic than the other three.  How I can track down whether there is a lot more traffic over this port or the app is not working correctly.  

The channel is not setup for any load balancing so how does traffic flow in this scenario.  If one server is communicating with another does it pick a random port and then use that port until the communication ends?
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Here is some documentation on your question:

Traffic in an EtherChannel is distributed across the individual bundled links in a deterministic
fashion; however, the load is not necessarily balanced equally across all the links. Instead,
frames are forwarded on a specific link as a result of a hashing algorithm. The
algorithm can use source IP address, destination IP address, or a combination of source
and destination IP addresses, source and destination MAC addresses, or TCP/UDP port
numbers. The hash algorithm computes a binary pattern that selects a link number in the
bundle to carry each frame.
If only one address or port number is hashed, a switch forwards each frame by using one
or more low-order bits of the hash value as an index into the bundled links. If two addresses
or port numbers are hashed, a switch performs an exclusive-OR (XOR) operation
on one or more low-order bits of the addresses or TCP/UDP port numbers as an index into
the bundled links.

Hope it helps.

Here is one more piece:
A conversation between two devices always is sent through the same EtherChannel link
because the two endpoint addresses stay the same. However, when a device talks to several
other devices, chances are that the destination addresses are distributed equally. This causes the frames to be distributed across the EtherChannel links.
Don JohnstonInstructor
Top Expert 2015
There are a number of different hashing algorithms used to distribute the traffic over the physical links.

At the most simplistic level, each physical link get an identifier. With a 4-port bundle, a two-bit value is used (00, 01, 10, 11).  If Source MAC load distribution is used, the last two bits of the source MAC address are used to determine which link to use. If Destination MAC load distribution is used, the last two bits of the destination MAC address are used. If Source-Destination MAC load distribution is used, the last two bits of the source and destination MAC address are XOR'd and the resulting two-bit value is used.

It's also possible to use IP addresses and layer-4 port numbers. And there are other hashing algorithms.


So by default with load balancing not enabled it uses source Mac address?
Don JohnstonInstructor
Top Expert 2015

Even though the term "balancing" is used (by Cisco) to describe this process, there's really no balance involved. :-)

As for which method is used, it depends on the platform. Lower-end models use will default to source MAC. But as you move up, so does the algorithm.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial