10-24-2012 07:20 PM - edited 03-04-2019 05:57 PM
We have four OC3 links across the atlantic and I was looking for a solution which would allow load balacing across the four links on a per-packet basis (not session). The objective is both resiliency i.e. being able to handle link failures transparently & balancing the load across all the links. BGP multptah looked like the ideal soultion. However, I was told that the CEF packet based load balancing is no longer supported by CISCO. Is this correct ? Is it applicable for all models ? Are there any other potential solutions?
Appreciate a response from the experts.
Solved! Go to Solution.
10-25-2012 03:45 AM
Hello Rittick,
per packet load balancing can cause out of order issues that can impact some applications.
In your case the delay of the four OC-3 links is different and they may be served by different SDH/SONET networks.
The potential for out of order packets of the same flow is high.
So you should use per flow load balancing that is recommended to avoid out of order issues, in this way the subsequent packets of the same flow will use the same path,
When multiple flows are present in the network you will see a fair enough distribution of flows over the 4 links.
Hope to help
Giuseppe
10-25-2012 06:54 AM
Hi Rittick,
Interesting problem to solve - I'm with Elfiq Networks and caught this discussion thread. It sound like your 4 OC3's are MPLS lines (Vs public Internet traffic)? I may have a idea or two. Please confirm - thanks.
JP
10-25-2012 03:45 AM
Hello Rittick,
per packet load balancing can cause out of order issues that can impact some applications.
In your case the delay of the four OC-3 links is different and they may be served by different SDH/SONET networks.
The potential for out of order packets of the same flow is high.
So you should use per flow load balancing that is recommended to avoid out of order issues, in this way the subsequent packets of the same flow will use the same path,
When multiple flows are present in the network you will see a fair enough distribution of flows over the 4 links.
Hope to help
Giuseppe
10-25-2012 05:29 AM
Hello Giuseppe,
Thank you for your response. One of the applications replicate the database and the peak traffic is over 100 Mbits per second. We use pusedo wires (MPLS) to reserve the bandwith for our applications. This being a mission critical application - our requirement is that there be no impact even if 2 of the links fail. If packet level load-balancing was available we would need to provision the psuedo wire with 50 mbits over the 4 links - with flow level load balancing it would require 100 mbits over the two links. I was basically looking for a solution for this problem.
Appreciate your help,
Rittick
10-25-2012 07:01 AM
As explained above already:
you cannot have per-packet load sharing especially at high speeds.
10-25-2012 07:22 AM
Hello Rittick,
an MPLS pseudowire will use only one link of the 4 links based on inner MPLS label, it cannot be spread over multiple parallel links.
The MPLS pseudowire can travel within an MPLS TE LSP that can be protected by FRR.
per packet load balancing does not apply to your scenario.
You need to mark traffic of the critical application with an appropriate EXP settings. The EXP bits are copied to the outer (external) label.
On the OC-3 physical interfaces you will configure a CBWFQ scheduler providing 100 Mbps of bandwidth to traffic with specific EXP marking. This is elastic and over unused links bandwidth will be left available to other traffic.
On the LAN interface you need to mark the EXP bits in received packets using a policy-map
access-list 101 permit tcp host x.x.x.x host y,y,y,y
class CLASSIFY-BACKUP
match access-group 101
policy-map MARKER
class CLASSIFY-BACKUP
set mpls exp 3
class class-default
set mpls exp 0
int gex/y/z
service-policy in MARKER
class-map BACKUP
match mpls exp 3
policy-map SCHED-OC3
class BACKUP
bandwidth 100000
class class-default
fair-queue
int posx/y/z
service-policy out SCHED-OC3
applied on all pos interfaces. The MPLS pseudowire will use one link only. Different pseudowires can use different OC-3 links. Load balancing of MPLS traffic is based on internal label (the VC label of the pseudowire)
Note:
you should check if it is possible to mark traffic received on the incoming interface of the pseudowire otherwise you need to mark IP precedence nearer to the host.
Hope to help
Giuseppe
10-25-2012 06:54 AM
Hi Rittick,
Interesting problem to solve - I'm with Elfiq Networks and caught this discussion thread. It sound like your 4 OC3's are MPLS lines (Vs public Internet traffic)? I may have a idea or two. Please confirm - thanks.
JP
10-25-2012 09:21 AM
Thanks for your responses. Yes - they are private leased lines.
12-22-2014 08:07 AM
Hi there!
I have one doubt pertaining to per-packet load-sharing. In order to connect my two data-centres- A & B, Site A is having two MPLS-WAN links and Site B is having two MPLS-WAN links - one from ISP1 (30Mbps link) and the other from ISP2 (50Mbps link). I am doing static route load balancing using same AD values for both the ISPs. I have configured "ip load-sharing per-packet" on both the outgoing interfaces at site A and site B.
The load is getting distributed equally across both the links but total bandwidth utilization across both the links is not going beyond 30Mbps (15 Mbps each). The combined bandwidth of both links is 80Mbps (50+30). However links are not getting fully utilized even though heavy load is there on the links.
Can you please tell me how to make full use of both the wan links at both the ends? OR Can you tell me how I can distribute the traffic across both the links with full utilization without using per-packet load-sharing. Moreover, my links can be configured statically only at both the ends.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide