Etherchannel load balancing case study
Etherchannel is a very effective feature that provides redundancy and load distribution within your switching network. However failing to choose the right load distribution algorithm my leave you under utilizing your network resources.
We are going to analyze how to select the load balancing method based on placement of switch and traffic type that needs to be load distributed. I'll base the discussion on traffic direction from LAN1 to LAN2 but same rules apply in the opposite direction.
Firstly we need to briefly consider how packets are forwarded from LAN1 to LAN2
PC1: 192.168.1.2 in LAN1 is pinging PC3: 192.168.2.2 in LAN2
- PC1 recognize that PC3 is in a different subnet (packets need to be sent to the gateway) so it creates a packet with the following information:
Src IP: PC1 IP address - Dst IP: PC3 IP address - Src MAC: PC1 MAC - Dst MAC: R1(GW) .
- R1 receives the packet finds a match in its routing table (dst: 192.168.2.2) pointing to the next hop (R2) and forwards the packet with the following information:
Src address: PC1 IP - Dst address: PC3 IP - Src MAC: R1 MAC - Dst MAC: R2 Mac.
- R2 receives the packet looks up for the destination in its routing table and forwards the packet to PC3 using the following infromation:
Src address: PC1 IP - Dst address: PC3 IP - Src MAC: R2 MAC - Dst MAC: PC3 Mac.
The part that matters us here is the forwarding from R1 to R2 passing through the Etherchannel link between switch1 and switch2; the frame always has R1 and R2 MAC addresses as source and destination depending on the direction of the traffic.
EtherChannel Load balancing methods:
dst-ip—Load distribution is based on the destination-host IP address.
dst-mac—Load distribution based on the destination-host MAC address of the incoming packet.
src-dst-ip—Load distribution is based on the source-and-destination host-IP address.
src-dst-mac—Load distribution is based on the source-and-destination host-MAC address.
src-ip—Load distribution is based on the source-host IP address.
src-mac—Load distribution is based on the source-MAC address of the incoming packet.
So, What is the best load balancing method that suits our case?
In our case its clear that packets sourced from LAN1 destined to LAN2 will have source IPs of PCs belonging to LAN1 and destinations of PCs belonging to LAN2 but will always have R1 MAC address as a source MAC address and R2 as a destination MAC address when passing the switching section of our topology.
This analysis means that load distribution methods based MAC addresses will not provide the best distribution of traffic over the Etherchannel.
We need to consider load distribution based on IP addresses, but which one really gives us the best even distribution over the Ehterchannel links?
To answer this question we need to consider the traffic pattern between the two LANs; lets see the scenarios below:
Scenario1: Traffic is random from any workstation to another which means that any user from LAN1 may be communicating with any user from LAN2. Any IP based load distribution method will do the work.
Scenario2: If a server exist (i.e. mail server) in any of the two subnets and many PCs are always sending or receving traffic to or from this server then we are left with one option that provides the most evenly distribution which is the src-dst-ip—Load distribution.
your ideas and comments are highly appreciated.