AUF DIESER SEITE
Konfigurieren von Einstellungen auf dem Hostbetriebssystem
Dieses Kapitel enthält Informationen zum Optimieren von Einstellungen auf dem Host-Betriebssystem, um erweiterte Funktionen zu aktivieren oder den Umfang der cRPD-Funktionalität zu erhöhen.
ARP-Skalierung konfigurieren
Die maximale ARP-Eintragsnummer wird vom Linux-Host-Kernel gesteuert. Wenn es eine große Anzahl von Nachbarn gibt, müssen Sie möglicherweise die ARP-Eintragsbeschränkungen auf dem Linux-Host anpassen. Der sysctl
Befehl auf dem Linux-Host enthält Optionen zum Anpassen der ARP- oder NDP-Eingabelimits.
So passen Sie beispielsweise die maximale Anzahl von ARP-Einträgen mit IPv4 an:
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh1=4096
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh2=8192
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh3=8192
So passen Sie beispielsweise die maximale Anzahl an ND-Einträgen mit IPv6 an:
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh1=4096
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh2=8192
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh3=8192
Tuning von OSPF unter cRPD
Um eine größere Anzahl von OSPFv2/v3-Adjacencies mit cRPD zuzulassen, erhöhen Sie das IGMP-Mitgliedschaftslimit:
root@host:~# sysctl -w net.ipv4.igmp_max_memberships=1000
Konfigurieren von MPLS
So konfigurieren Sie MPLS im Linux-Kernel:
Hinzufügen von MPLS-Routen
Netlink-Nachrichten werden verwendet, um die Routen mit dem Linux-Kernel zu kommunizieren (hinzuzufügen/zu lernen). MPLS-Routen werden dem Kernel mit einem iproute2
Dienstprogramm hinzugefügt, das intern netlink socket verwendet, um den Kernel zu aktualisieren. So fügen Sie MPLS-Routen zum Host hinzu, indem Sie das iproute2
Dienstprogramm verwenden:
Hinzufügen von Routen mit MPLS-Label
So fügen Sie Routen zum Host hinzu, indem Sie die Pakete mit iproute2
dem Dienstprogramm mit MPLS-Label kapseln:
Erstellen eines VRF-Geräts
So instanziieren Sie ein VRF-Gerät und ordnen es einer Tabelle zu:
Zuweisen einer Netzwerkschnittstelle zu einer VRF
Netzwerkschnittstellen werden einer VRF zugewiesen, indem das Netzgerät einem VRF-Gerät zugewiesen wird. Die verbundenen und lokalen Routen werden automatisch in die Tabelle verschoben, die dem VRF-Gerät zugeordnet ist.
So weisen Sie einer VRF eine Netzwerkschnittstelle zu:
root@host:~# ip link set dev <name> master <name>
root@host:~# ip link set dev eth1 vrf test
Anzeigen der Geräte, die VRF zugewiesen sind
So zeigen Sie die Geräte an:
root@host:~# ip link show vrf <name>
root@host:~# ip link show vrf red
Anzeigen von Nachbareinträgen in VRF
So listen Sie die Nachbareinträge auf, die Geräten zugeordnet sind, die einem VRF-Gerät unterworfen sind:
root@host:~# ip -6 neigh show vrf <NAME>
root@host:~# ip neigh show vrf red
root@host:~# ip -6 neigh show vrf red
Anzeigen von Adressen für eine VRF
So zeigen Sie Adressen für Schnittstellen an, die einer VRF zugeordnet sind:
root@host:~# ip addr show vrf <NAME>
root@host:~# ip addr show vrf red
Anzeigen von Routen für eine VRF
So zeigen Sie Routen für eine VRF an:
Entfernen der Netzwerkschnittstelle aus einer VRF
Netzwerkschnittstellen werden aus einer VRF entfernt, indem die Versklavung durch das VRF-Gerät unterbrochen wird
root@host:~# ip link set dev NAME nomaster
Nach dem Entfernen der Netzwerkschnittstelle werden verbundene Routen in die Standardtabelle und lokale Einträge in die lokale Tabelle verschoben.
Hash-Feldauswahl für ECMP Load Balancing unter Linux
Sie können die ECMP-Hash-Richtlinie () sowohl für weitergeleiteten als auch für lokal generierten Datenverkehr (fib_multipath_hash_policy
IPv4/IPv6) auswählen.
IPv4-Datenverkehr
wECMP mit BGP unter Linux
Lastenausgleich zu ungleichen Kosten ist eine Möglichkeit, den Datenverkehr ungleichmäßig auf verschiedene Pfade zu verteilen (einschließlich des Multipath-Next-Hops). wenn die Pfade unterschiedliche Bandbreitenkapazitäten haben. Das BGP-Protokoll erreicht dies, indem jede Route/jeder Pfad mithilfe der Link Bandwidth Extended Community mit der Bandbreite der Verbindung versehen wird. Die Bandbreite des entsprechenden Links kann als Teil dieser Linkbandbreiten-Community kodiert werden. RPD verwendet diese Bandbreiteninformationen jedes Pfads, um die Multipath-Next-Hops mit entsprechenden linux::weights zu programmieren. Ein Next-Hop mit linux::weight ermöglicht es dem Linux-Kernel, den Datenverkehr asymmetrisch auszugleichen.
BGP bildet einen Multipath-Next-Hop und ermittelt anhand der Bandbreitenwerte einzelner Pfade den Anteil des Datenverkehrs, den jeder der Next-Hops, die den ECMP-Next-Hop bilden, empfangen sollte. Die in der Verbindungsbandbreite angegebenen Bandbreitenwerte müssen nicht die absolute Bandbreite der Schnittstelle sein. Diese Werte müssen die relative Bandbreite eines Pfads vom anderen widerspiegeln. Weitere Informationen finden Sie unter Grundlegendes zum Definieren von BGP-Communities und erweiterten Communities und zur Auswertung von BGP-Communities und erweiterten Communities in Übereinstimmungsbedingungen für Routingrichtlinien.
Stellen Sie sich ein Netzwerk mit R1 vor, das Pfade zu gleichen Kosten von R2 und R3 zu einem Ziel R4 erhält. Wenn Sie 90 % des Lastenausgleichsdatenverkehrs über den Pfad R1-R2 und die restlichen 10 % des Datenverkehrs über den Pfad R1-R3 mithilfe von wECMP senden möchten, müssen Sie die von den beiden BGP-Peers empfangenen Routen mit der Linkbandbreiten-Community kennzeichnen policy-options, indem Sie konfigurieren.
Aktivieren von SRv6 auf cRPD
Sie können die IPv6-Segmentrouting-Funktion auf cRPD mit dem folgenden sysctl-Befehl aktivieren: