From b47eaefe12d0673af2c7c7ec1a8adff982a958ca Mon Sep 17 00:00:00 2001 From: "Ondrej Zajicek (work)" Date: Wed, 25 Oct 2017 17:14:08 +0200 Subject: [PATCH] Babel: Revamp cost computation and run route selection when cost change Also fix several minor bugs and add 'limit' option for k-out-of-j link sensing strategy. Change default from 8-of-16 to 12-of-16. Change IHU expiry factor from 1.5 to 3.5 (as in RFC 6126). --- doc/bird.sgml | 38 +++++--- proto/babel/babel.c | 228 +++++++++++++++++++++++++------------------ proto/babel/babel.h | 10 +- proto/babel/config.Y | 2 + 4 files changed, 170 insertions(+), 108 deletions(-) diff --git a/doc/bird.sgml b/doc/bird.sgml index 65efebb8..0ee86c18 100644 --- a/doc/bird.sgml +++ b/doc/bird.sgml @@ -1616,6 +1616,7 @@ protocol babel [] { interface { type ; rxcost ; + limit ; hello interval ; update interval ; port ; @@ -1632,23 +1633,34 @@ protocol babel [] { - This option specifies the interface type: Wired or wireless. Wired - interfaces are considered more reliable, and so the default hello - interval is higher, and a neighbour is considered unreachable after only - a small number of "hello" packets are lost. On wireless interfaces, - hello packets are sent more often, and the ETX link quality estimation - technique is used to compute the metrics of routes discovered over this - interface. This technique will gradually degrade the metric of routes - when packets are lost rather than the more binary up/down mechanism of - wired type links. Default: