cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
687
Views
0
Helpful
1
Replies

Why is port-channel per-frame load-balancing not available?

grnelson
Level 1
Level 1

Cisco provides several choices for load-balancing traffic on port-channels:

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}

Why have they chosen to not provide "round-robin", "per-packet", or "per-frame", which would seem to be
the most effective and useful option? Per-packet is available on multilink-ppp interfaces.

Whatever method is chosen from the provided list, a given source/destination pair
will always produce the same result meaning traffic between given a source/destination
can only travel on one member of the port-channel. 

1 Accepted Solution

Accepted Solutions

Peter Paluch
Cisco Employee
Cisco Employee

Hello,

Why have they chosen to not provide "round-robin", "per-packet", or "per-frame", which would seem to be 
the most effective and useful option? Per-packet is available on multilink-ppp interfaces.

There is a fundamental difference between multilink PPP and EtherChannel.

An EtherChannel always carries a single frame over a single link. It does not split the frame into multiple parts and carry it through multiple links in EtherChannel group in parallel. The multilink-PPP is capable of doing the opposite - fragment the frame into multiple parts and carry them simultaneously to the other peer, then defragment it and send it further.

In addition, using round robin load balancing would allow for fine-grained load balancing but it could cause frame reordering which is forbidden on an Ethernet network. Frames sent in a particular order must be delivered in the same sequence on an Ethernet network. Because the EtherChannel must remain a transparent technology, it must not incur any additional impairments to the data flow apart from those which are considered "normal" or "expectable" in usual Ethernet networks. Thus, round robin can not be seriously considered for the load sharing methods.

Best regards,

Peter

View solution in original post

1 Reply 1

Peter Paluch
Cisco Employee
Cisco Employee

Hello,

Why have they chosen to not provide "round-robin", "per-packet", or "per-frame", which would seem to be 
the most effective and useful option? Per-packet is available on multilink-ppp interfaces.

There is a fundamental difference between multilink PPP and EtherChannel.

An EtherChannel always carries a single frame over a single link. It does not split the frame into multiple parts and carry it through multiple links in EtherChannel group in parallel. The multilink-PPP is capable of doing the opposite - fragment the frame into multiple parts and carry them simultaneously to the other peer, then defragment it and send it further.

In addition, using round robin load balancing would allow for fine-grained load balancing but it could cause frame reordering which is forbidden on an Ethernet network. Frames sent in a particular order must be delivered in the same sequence on an Ethernet network. Because the EtherChannel must remain a transparent technology, it must not incur any additional impairments to the data flow apart from those which are considered "normal" or "expectable" in usual Ethernet networks. Thus, round robin can not be seriously considered for the load sharing methods.

Best regards,

Peter

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Innovations in Cisco Full Stack Observability - A new webinar from Cisco