Skip site navigation (1)Skip section navigation (2)
Date:      21 May 2002 14:34:52 +0400
From:      "Vladimir B. " Grebenschikov <vova@sw.ru>
To:        Terry Lambert <tlambert2@mindspring.com>
Cc:        Oleg Chebotarev <chebotarev@yahoo.com>, freebsd-current@FreeBSD.org
Subject:   Re: multi default routes in freebsd !?
Message-ID:  <1021977292.24428.30.camel@vbook.express.ru>
In-Reply-To: <3CEA0FC0.E71EC770@mindspring.com>
References:  <20020521032746.14287.qmail@web11607.mail.yahoo.com>  <3CE9DD37.88DDCABC@mindspring.com> <1021965925.557.9.camel@vbook.express.ru>  <3CEA0FC0.E71EC770@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help
=F7 Tue, 21.05.2002, =D7 13:13, Terry Lambert =CE=C1=D0=C9=D3=C1=CC:

> > OSPF have equal cost multupath, An BGP too (If I not mistaken)
> > so lack of kernel support of more then one route for one destination
> > is not good.
> >=20
> > Zebra on Linux can do OSPF equal cost multipath but on FreeBSD cant.
>=20
> Sounds like a problem with Zebra...

No, zebra uses in-kernel FIB and can't install two routes with same
prefix into it due to kernel lack of this function.
=20
> FreeBSD supports BGP just fine.

yes, but it not allows BGP to install two routes with same prefix into
FIB.
=20
> > Times ago there was hack for multipath routing on:
> > ftp://ftp.flirble.org/pub/unix/hacks/FreeBSD/mpath/
> > but it seems this page now removed.
>=20
> It's there still (drop the "mpath/" suffix).  It's an OK hack,
> but it's a hack (though I'd have to say it's probably worth
> integrating into FreeBSD by default so it doesn't get stale,
> and it's not "lost").

Ok

> Multipath routing is not as useful as you imply.  Neither is
> round-robin'ing between a set of paths.  It assumes that the
> pool retention time on the router is longer than the drain time
> for a single path, such that you end up with a higher aggregate
> throughput than you would otherwise get.  Most of the time,
> with what you are suggesting, you will get the same throughput,
> you will just get differential pipe utilization (using B =3D=3D !A).
> When this isn't the case, the amount of latency for a single
> path is such that you end up with only a small fractional
> improvement, when there is any improvement at all.

Lets imagine - we have 3 links 2Mbit/s on different interfaces.
I want to join them all, but I have no control of other end (provider)
so I can't build netgraph-joiner.

Solution with installing 3 routes (through BGP of course, one BGP
session per link) solves problem.

I have 6 Mbit/s summary bandwith.

> The primary failure of this is that it can't detect when a
> route goes down, so you are screwed when that happens.

If interface goes down route will be DOWN by kernel.
So it is not problem.

Anyway if problem happens without downing interface BGP will detect
problem and down routes.

> You are much better off using BGP.
>=20
> If you absolutely refuse to use BGP for some reason which you
> absolutely refuse to post to the list, you should consider using
> PPPOE and multilink PPP in combination (both are Netgraph nodes).

It is usual practice to use, say OSPF for internal routing (inside one
AS). Yes I understand that some netgraph solutions can help
(multilink PPP or ng_one2many, I am extensively use netgraph)
But if routing protocol there solution for it with alid link down
detection and so why we need to use some "workarounds" to emulate
protocol behavior ?=20

> Even so, you will be screwed when one of your links goes down;
> this isn't the case for the original design of mpd (multilink
> PPP daemon), since it got to notice carrier loss.  Over a fixed
> link, there's no notification (and I guess you could have a path
> outage without carrier loss even in the mpd case, but it's unlikely).

Yes it is possible.

> There is also a VRRP implementation for FreeBSD.  I've posted
> the URL for it before.  In combination, Virtual Router Redundancy
> Protocol *and* multipath are, together, roughly equivalent to
> using BGP (assuming both your routers are running the VRRP code).

No, VRRP can't help if you want to use summary bandwidth, but helps a
lot if you are want to get redundancy (I think so because I am using
VRRP on my core routers since 4.2).

> Also, that's assuming you guess correctly on the relative metrics,
> when you have asymmetric path speed within the set of paths you
> are trying to use, and set up both paths to fail over to each other
> with the VIP of the two "routers".
>=20
> BGP is a better idea (of course).
>=20
> You might also consider using BGP.
>=20
> And have I mentioned BGP?  8-) 8-).

BGP can use multipath, as well as OSPF.
Possibility of kernel to store some number of routes for one prefix in
FIB can't replace BGP and, on other hand, BGP itself can't replace such
kernel feature.

These two things almost orthogonal.

> -- Terry
=20
PS:

 My opinion - it is useful feature for FreeBSD kernel, often used now
as good routing platform.=20

--=20
Vladimir B. Grebenschikov
vova@sw.ru, SWsoft, Inc.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1021977292.24428.30.camel>