[j-nsp] load balancing between juniper routers for unequal costpath

Chris Kawchuk ckawchuk at juniper.net
Fri Nov 9 13:18:13 EST 2007


Hi Hamid,

As both Chuck and Leigh have stated, you CAN use GRE tunnels to do this, however, you will run into MTU size issues by doing this. You will also need tunneling/Adaptive Services/MultiServices PICs (or ASM cards if it's an M7i were dealing with) to do gre tunneling.

The far "cleaner" way here is to follow Andy's suggestions and build 2 x RSVP signalled LSPs with strict routing options (EROs) so that they take different paths across your network, but appear to be the same metric to OSPF, hence, they will load balance.

The other "wacky off the wall" way of doing this, is to purpusely mess around with your OSPF Metric values on the "longer" path (by explicitly stating their metrics and overriding what OSPF is putting on them), thus making the OSPF calculation at the ingress router see both OSPF costs as the same... however, I do *NOT* suggest going down this rabbit-hole. - It leads to tears... (plus any time you adjust your network, youd have to manually re-balance all your metrics again..... aka a Netork Capacity Planner's worst nightmare...)

- Chris.

____________________________________
Chris Kawchuk (ckawchuk at juniper.net)
Systems Engineering, Service Providers
Juniper Networks Inc., Canada
local:     +1 (403) 470-8174
toll-free: +1 (866) 470-8174

BTW, Andy L is a Juniper-Networks Resident Engineer (RE) as well for a Major ILEC =) I tend to trust what he says. =)

 

-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net [mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Hamid Ahmed
Sent: Friday, November 09, 2007 7:47 AM
To: Andy Lamontagne
Cc: juniper-nsp
Subject: Re: [j-nsp] load balancing between juniper routers for unequal costpath

hi Andy,
Thanks for the detailed email. However i could get a better understanding if u can send me configuration snapshot. My intended traffic will use MPLS in the future but for time being i need to know if i can deploy GRE tunnels to compensate for OSPF unequal cost paths and then try load-balancing my pure IP traffic.

regards,
HA

Andy Lamontagne <alamontagne at gmail.com> wrote: Hi Hamid,

To control (or engineer) where you want traffic to go, you simply introduce MPLS LSPs.  The beauty of MPLS is its Traffic Engineering characteristics.  You can decide EXACTLY where you want your traffic to go.  So, if you have 2 unequal paths, and you wish to load-balance between the 2, you simply need make the "more expensive" path appear to be "less expensive", by creating those Label Switched Paths (LSPs). 

For example.

Let us say that you have 3 routers connected in series (Router A, B and C) and that all links are GigabitEthernet.  Router A also has a direct path to Router C (also GigabitEthernet) - see ascii diagram below: 

Router A ------ Router B ------ Router C
   |------------------------------------------|

Now, with default settings, the "shortest" path from Router A is the direct link to Router C.  The other link from Router A through Router B, then Router C is also a valid path, but at a higher "cost".  We have 2 unequal paths from Router A to Router C. 

You are looking to load balance between these 2 paths.

To do so, you create an RSVP Signaled LSP from Router A to Router C (RSVP so that you can "force" the path of the LSP to use Router B as opposed to going directly from Router A to Router C) 

When you create this new LSP, it appears in the routing table inet.3.  To be able to use this new "route" with OSPF, you must export it to the inet.0 routing table.  Once the LSP is in inet.0, there will be 2 different, equal paths from Router A to Router C.  At this point, you follow Chris' config to do the load balancing and your good to go. 

You're on the right track when you the talk about using 2x GRE tunnels, but do this with MPLS instead.

I can still send you the config examples if you need it :-)

-Andy


 On Nov 8, 2007 11:39 AM, Hamid Ahmed <hamidahmed77 at yahoo.com> wrote:
 Hi Andy,
  Thanks for your reply. 
  1) Can u send me a sample configuration of what u are saying with a brief explanation of your scenario?
  2) You are giving the explanation for equal cost paths. However in my case there are two unequal cost paths. So my question still how can u do that in using unequal cost paths ? 
  3) Please explain when u say the following:
  "What you will need to do is create 2 different RSVP Signaled LSPs  towards the router which you want to "add more traffic", then you need to  export these 2 LSPs in OSPF (not turn OSPF off!) so that the routing protocol  can see and use these 2 new paths. In the end, you will have 2 equals paths going in 1 direction, and a  single path in the other.  If you need to move more traffic, then simply add a  3rd, 4th, etc LSP."

  4) The above discussion is for when we are doing work within MPLS. Now  in my case my intended traffic (Voice) does not use MPLS(however MPLS is enabled but for some other traffic like sigtran and O/M). OSPF is there as IGP and i need to load balance my intended traffic using the unequal cost path. I have an idea taht i create 2 x static GRE tunnels from one end to the other. My question can GRE tunnel override OSPF as that would be purely static routing and whatever goes with the tunnels would be just IP-payload. 
   
  regards,
  HA.


Andy Lamontagne <alamontagne at gmail.com> wrote:
 


  Hi Hamid,

To expand on Chris's explanation, ECMP is Equal Cost Multi-Path, which allows for the use of 2 (or more) equal cost path at the same time; Load balancing the traffic between the different paths. As Chris also mentioned, this load balancing is done per flow and not per packet, so you  don't get any reordering of packets. 

What you will need to do is create 2 different RSVP Signaled LSPs towards the router which you want to "add more traffic", then you need to export these 2 LSPs in OSPF (not turn OSPF off!) so that the routing protocol can see and use these 2 new paths.  

In the end, you will have 2 equals paths going in 1 direction, and a single path in the other.  If you need to move more traffic, then simply add a 3rd, 4th, etc LSP.

Please let me know if you need further explanation/configuration samples.  

-Andy

  On 11/8/07, Hamid Ahmed <hamidahmed77 at yahoo.com> wrote:    Hi,
  Its LAyer 3 load balancing. The traffic intended for  load-balancing does is on pure IP with OSPF running and having unequal cost paths 

  regards,
  Salman.

GAY Samuel <samuel.gay at c-s.fr> wrote: 
  Hi,

Which kind of load balancing do you want to do ? layer 3 ? layer 4 ?
Are you on a MPLS network ? 

Regards,
Samuel


Hamid Ahmed a écrit :
> Hi Everyone,
>
> CAn anyone suggest me how to load balancing between juniper routers for unequal cost paths. 
>
> BR//
> HA
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam protection around  
> http://mail.yahoo.com _______________________________________________
> juniper-nsp mailing list juniper-nsp at puck.nether.net  
> https://puck.nether.net/mailman/listinfo/juniper-nsp
>
>
>
_______________________________________________
juniper-nsp mailing list  juniper-nsp at puck.nether.net https://puck.nether.net/mailman/listinfo/juniper-nsp


__________________________________________________ 
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com
_______________________________________________
juniper-nsp mailing list  juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp 



 __________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
 http://mail.yahoo.com 




 

 __________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp


More information about the juniper-nsp mailing list