Multipath Routing
Nick Rogness
nick at rogness.net
Fri Aug 1 17:36:24 PDT 2003
On Fri, 1 Aug 2003, Michael W. Oliver wrote:
> +--- On Friday, August 01, 2003 15:30,
> | Oldach, Helge proclaimed:
> |
> | > I am no programmer, so forgive my ignorance in that respect, but why
> | > can't a
> | > metric be used to differentiate routes to the same destination network
> | > within the routing table? I happened to be googling and found:
> | >
> | > http://daily.daemonnews.org/view_story.php3?story_id=3878
> | >
> | > which describes a patch to -STABLE that does exactly what I am talking
> | > about.
> |
> | Routing will always follow the better metric. That's the paradigm. So
> | if you have two routes the one with the better metric will always rule.
> |
The term 'metric' in the sense of this patch is not referring to
routing metrics (like hopcount for route selection preferences).
The term 'metric' in the patch looks as if it is just a counter
that controls which gateway to send the packet to. If you look at
the description in the patch:
"Each gateway has a "metric" which is decremented for each packet.
When it reaches zero, the next gateway in the list is selected."
This use of the term 'metric' in this patch is not meant to mean a
traditional routing 'metric' (commonly used in routing tables).
Or at least this is what my interpretation of the patch is.
>
> What exactly is the syntax of entering a network route twice, using the same
> mask, via two different gateways, using different metrics?
The answer is you can't. You can't add the same route for a
single subnet through multiple gateways using route(8)...at least
not without this patch.
I never have investigated whether this is a restriction enforced
by route(8) or the kernel routing code. I would assume it is
enforced by the kernel...maybe someone can clarify? If my memory
serves me correct, it has to do with the routing tree structure...
The reason the patch is not default is: because it is not :-)
Many people will tell you to accomplish this use other things such
as routing daemons, netgraph modules, etc. FreeBSD is not a
router, it is an OS. I guess if it was marketed as a router then
maybe this would be default...don't know, have to ask the -core.
>
> | Frankly, I don't quite see the rationale for such a hack. This can be
> | solved using available mechanisms such as VRRP (or HSRP, if the gateways
> | are decent routers).
> |
>
> In my case, I am talking about using FreeBSD as the router. For sure,
> FreeBSD + Zebra is one VERY powerful combination.
There are several good reasons to use Multipath routing, most of
which fall into 2 categories: Load Balancing & Redundancy. This
patch is for load balancing only.
HSRP has nothing to do with load balancing and is Cisco
proprietary. VRRP has little to do with outbound load balancing
as well.
Nick Rogness <nick at rogness.net>
-
How many people here have telekenetic powers? Raise my hand.
-Emo Philips
More information about the freebsd-net
mailing list