Multipath Routing mit FreeBSD

Betreibt man viele Server, die viele Uplinks ansprechen müssen, sind Ungleichgewichte im Routing unvermeidlich. Aber so kraß wie hier muß es nicht sein. Ein Blick auf die Auslastung der Außenleitungen in abgehender Richtung zeigt ungewöhnliches. Nur eine Leitung ist aktiv in Benutzung. Alle anderen idlen vor sich hin. Das ist ungesund.

Widersprüche

Der Quagga meint, er hätte vier Routen nach außen:

O>* 0.0.0.0/0 [110/11] via 192.0.0161, lagg115, 2d03h41m
                       via 192.0.0162, lagg115, 2d03h41m
                       via 192.0.0167, lagg115, 2d03h41m
                       via 192.0.0163, lagg115, 2d03h41m

Andererseits meint der Kernel, er habe nur eine Route.

# netstat -rn | head
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            192.0.0.161        UG1         0 692675252 lagg11 =>

Eine kurze Recherche ergab, daß der FreeBSD-Kernel mehrere Routen nur dann beherrscht, wenn er mit der Option RADIX_MPATH compiliert wurde. Und natürlich ist das hier nicht der Fall.

Recompile, Reboot

Der neue Kernel ist vergleichsweise schnell ausgerollt.

Und das Ergebnis kann sich sehen lassen:

O>* 0.0.0.0/0 [110/11] via 192.0.0.161, lagg115, 2d03h41m
  *                    via 192.0.0.162, lagg115, 2d03h41m
  *                    via 192.0.0.167, lagg115, 2d03h41m
  *                    via 192.0.0.163, lagg115, 2d03h41m

sowie der Kernel

Destination        Gateway            Flags    Refs      Use  Netif Expire
default            192.0.0.161        UG1         0 692675252 lagg11 =>
default            192.0.0.162        UG1         0 715615509 lagg11 =>
default            192.0.0.167        UG1         0 754143735 lagg11 =>
default            192.0.0.163        UG1         0 749227950 lagg11

Aber auch graphisch sieht es so aus, wie man sich das wünscht ...

traffic-mpath

So ganz "spontan" gleichen sich die Datenströme über alle vier Router an.

Avatar
Lutz Donnerhacke 04.08.2014 15:11
Es geht in kern/185092 um das Löschen von Routen, die zeitgleich als Netzrouten mit der Maske 255.255.255.255 und als Hostrouten existieren. Mal schauen, was der kleine Patch so treibt.
Avatar
Lutz Donnerhacke 28.07.2014 11:24
Leider ist der Codepfad für Multipath Routing mehr als buggy. Die Kiste stürzt alle paar Tage mit "rtfree 2" panic im Zebra Prozeß ab.

2 Kommentare

Post a comment

Verwandter Inhalt