Multiple routes to the same destination

Claudio Jeker cjeker at diehard.n-r-g.com
Fri Jun 23 13:51:46 UTC 2006


On Fri, Jun 23, 2006 at 10:19:06PM +1000, Christopher Martin wrote:
> 
> 
> > -----Original Message-----
> > From: Baldur Gislason [mailto:baldur at foo.is]
> > Sent: Friday, 23 June 2006 10:02 PM
> > To: Christopher Martin
> > Cc: FreeBSD Net Mailing list
> > Subject: Re: Multiple routes to the same destination
> > 
> > Well, round robin is really not what you want with IP packets.
> > And how are you going to detect that a route is good without a routing
> > protocol?
> > 
> 
> Actually, round robin is exactly what I want. And I am not saying I don't
> use a routing protocol, in fact I do, but I want packets to be able to use
> two or more diverse paths of equivalent cost.

I doubt that. Doing a per packet round robin over different pathes will
kill your tcp performance because of out of order packets.

> 
> It would seem that you are assuming that I want to load balance two internet
> connections which are NATed, in which case round robin might have issues
> with lost TCP sessions and weird reactions from servers as the apparent
> source address changes from packet to packet, but in a routed internal
> network the source address will not be changed by the router, thus negating
> that issue.
> 
> It did seem at some stage someone was going to include it in OpenBSD:
> http://undeadly.org/cgi?action=article&sid=20040425183024&mode=expanded
> 

That's just part of the it. The rest was added in the last couple of days
because multipath routing and accepting more than one route per
destination is a scary thing. Additionally dead nexthop detection is not
available.

> To quote:
> "...OSPF also supports multipath equal cost routing".
> 

Yes it does but often you try to avoid that.

> It's more of a case where we would like to use BSD as a router/packet
> filtering firewall for sites with multiple WAN links between each site, of
> equal size, and not have one site idle until the other fails over. Round
> robin is better than what we have: nothing.

OpenBSD is on the way to support this but it is still a long journey till
all issues are resolved. Btw. OpenBSD uses a hash-threshold mechanism to
select paths based on source/destination IP address pairs (round robin
will never be supported).

-- 
:wq Claudio


More information about the freebsd-net mailing list