unequal cost load balancing?

Ondrej Zajicek santiago at crfreenet.org
Thu Nov 26 23:01:37 CET 2009


On Thu, Nov 26, 2009 at 03:07:32PM -0600, Otto Solares wrote:
> On Thu, Nov 26, 2009 at 09:03:30PM +0100, Ondrej Zajicek wrote:
> > On Thu, Nov 26, 2009 at 12:54:15AM +0100, KORN Andras wrote:
> > > Hi,
> > > 
> > > we have a 5Mbps symmetric microwave uplink with one static IP and a /30
> > > subnet. We're contemplating getting an additional ADSL connection to serve
> > > as backup. If the ISP cooperates, is there a way for me to load-balance and
> > > fail over between these two connections using BIRD? If so, how?
> > 
> > Hmm, load-balancing and multipath is not implemented. The best thing you can do
> > with BIRD is to have asymetric routing (one link preferred for upstream and
> > the other for downstream), or prefix based load-balancing (some prefixes
> > are preferred over one link and other prefixes are preferred over the other
> > link).
> 
> Could you please describe prefering prefixes over one link with an
> example please? I happen to need this but haven't figured out yet.

This can be easily done using BGP as a routing protocol - just use
two BGP sessions, each over one link, export prefixes to both of them
and set MED attribute accordingly.

I don't know about clean way to do it using OSPF. I have two ideas, both 
are somewhat crazy:

1) run two OSPF routers on each side (Two virtual machines with separate
BIRDs would work, perhaps even two BIRDs on one machine with some
tweaking would work. Two instances of OSPF in one BIRD wouldn't.).
Export some routes in the first router (say R1a) and other routes in the
second router (say R1b). Both instances would be connected through some
local interface), therefore you get topology like:

R1a ----- R2a
 |         |
R1b ----- R2b

(where | is a local links and ----- is a real links)

You would connect R1a and R2a to kernel routing tables and adjust costs of
links to get appropriate behavior.

2) run one OSPF router on each side, but two parallel instances of OSPF
protocol, where both instances uses both interfaces (you would probably
need to tweak source code of BIRD to allow change protocol number used
for OSPF in the second instance). Use different cost in both instances
and export some routes to the first instance and other routes to the
second instance.

-- 
Elen sila lumenn' omentielvo

Ondrej 'SanTiago' Zajicek (email: santiago at crfreenet.org)
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
"To err is human -- to blame it on a computer is even more so."
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20091126/b8114473/attachment-0001.asc>


More information about the Bird-users mailing list