Load Balancing between multiple BGP peer connections

Patrick W. Gilmore patrick at ianai.net
Wed Sep 14 18:06:56 UTC 2005


[Wow, operational content - thank you!]

On Sep 14, 2005, at 6:24 AM, Joe Shen wrote:
>
> How could load on multiple BGP peer links be balanced
> automatically?
>
> The situation we are facing:
>
>              ---------------------------|
>              |  Service provider        |
>              |                          |
>              --R1--------------------R2---
>                |\                     |
>                | \       E-BGP        |
>                |  \ ----------------\ |
>                |                     \|
>             ----R3--------------------R4-|
>             |     Our Network            |
>             |      (OSPF)                |
>             -----------------------------
>
> The three links between our network and Service
> provider network are all 1Gbps. Now, we noticed that
> load on link R1-R3, R1-R4 is about 50% (in/out), but
> load on R2-R4 are about 90% ( in/out).
>
> How could we balance those load on the three links
> automatically? or must we tune the route mannually?

It's not really clear whether the traffic is going mostly in or  
mostly out.  In fact, it looks like you are 1:1 balanced from the  
paragraphs above.

Inbound traffic and outbound traffic need to be balanced separately.   
I'll do inbound here, since that's slightly harder.  If you need help  
with outbound too, let us know.


First, what are you announcing to your SP?  Is it just one big  
block?  Or several?

Second, does your SP accept MEDs?  (And if not, maybe you need a new  
one? :-)

If you have just one big block, split it up into multiple little  
blocks.  Announce them with MEDs or prepend on some links and not  
others or just announce a subset on each link.  Be sure to set  
NO_EXPORT on the little blocks, and announce the aggregate prefix on  
all links.  You do not want the little blocks making it into the  
global table (wouldn't do any good anyway).

It's not difficult to do, it's just a bit of trial-and-error to get  
right unless you have Flow Stats or something so you know where the  
traffic is going anyway.


Outbound is a variation on this theme.  Let us know if you need  
outbound help as well.

Good luck.

-- 
TTFN,
patrick



More information about the NANOG mailing list