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