[Babel-users] Tweaking link costs [was: ANNOUNCE: babeld-1.5.0]

Juliusz Chroboczek jch at pps.univ-paris-diderot.fr
Thu Jun 5 02:56:03 UTC 2014


> Sort of on this topic, I have links that are 100mbit and 1gbit. Is there
> a sane way to tweak things to mildly prefer the gigE link?  rxcost 94?

Assuming eth0 are 1Gb and eth1 are 100Mbit.

1. At the cost level:

  interface eth0 rxcost 94

or the opposite

  interface eth1 rxcost 98

Since you want to tweak symmetrically, you need to do that on both sides
of the link.


2. At the metric level, on the receiving side:

  out if eth1 metric 2

Note that "out" is about sending route announcements, so that's on the
data receiver's side.  You cannot tweak downwards, only upwards.  Again,
you need to do that on both sides of the link if you want symmetric routing.


3. At the metric level, on the sending side:

  in if eth1 metric 2


4. At the metric level, for both sending and receiving:

  in if eth1 metric 2
  out if eth1 metric 2

Since you're doing both in and out, you should do that on just one side of
the link.  If you do it on both, the tweak will get applied twice.


Which is the most sane?  I personally prefer to work at the metric level,
since metrics have the same meaning for all kinds of interfaces, while
rxcosts have a somewhat different semantics for wired and wireless interfaces.

As to the choice between "in" and "out" filters -- I find "out" more
natural, since you're announcing the tweaked metric, rather than sending
the untweaked metric and applying the tweak upon reception, without
telling anyone.  On the other hand, "in" is significantly more powerful,
since it allows tweaking for just one peer (using the "neigh" clause); you
cannot do that with "out", since you don't control who's going to receive
the announcement.

-- Juliusz



More information about the Babel-users mailing list