Inhalt

Einleitung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Konventionen

Hintergrundinformationen

BGP-Router erhält vollständige BGP-Routing-Tabelle

Mit der Filterliste für eingehende AS_PATH konfigurierter BGP-Router

Fehlerbehebung bei speicherbezogenen Problemen

Schlussfolgerung

Zugehörige Informationen

Einleitung

In diesem Dokument wird beschrieben, wie bei minimalen Speicheranforderungen für Border Gateway Protocol (BGP)-Router optimale Ergebnisse erzielt werden können.

Voraussetzungen

Anforderungen

Es gibt keine spezifischen Anforderungen für dieses Dokument.

Verwendete Komponenten

Dieses Dokument ist nicht auf bestimmte Software- und Hardware-Versionen beschränkt.

Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle verstehen.

Konventionen

Weitere Informationen zu Dokumentkonventionen finden Sie in denCisco Technical Tips Conventions.

Hintergrundinformationen

In diesem Dokument wird veranschaulicht, wie ein optimales Routing in einem Unternehmensnetzwerk erreicht wird, das mit mehreren Internet Service Providern (ISPs) verbunden ist, während die Speicheranforderungen der Border Gateway Protocol (BGP)-Router reduziert werden. Sie können die AS_PATH-Filter verwenden, die nur Routen akzeptieren, die von einem ISP und seinen direkt verbundenen autonomen Systemen generiert wurden und nicht die vollständige BGP-Routing-Tabelle von einem ISP erhalten.

Dieser Abschnitt enthält ein Netzwerkdiagramm als Beispiel. Im Beispiel filtern Sie eingehende BGP-Updates auf Router 1 und Router 2, um die Routen des ISP und die Routen des direkt verbundenen autonomen Systems zu akzeptieren. Router 1 akzeptiert Routen für ISP-A und das direkt verbundene autonome System C1. Ebenso akzeptiert Router 2 Routen für ISP-B und C2. Die übrigen Netzwerke, die nicht zu den ISPs und ihrem autonomen Client-System gehören, folgen der Standardroute, die auf ISP-A oder ISP-B verweist, auf Basis der Enterprise Routing-Richtlinie.

Sie können beobachten, wie die Speichernutzung variiert, wenn Router 1 die vollständige BGP-Routing-Tabelle von ca. 100.000 Routen von seinem ISP akzeptiert. Im Vergleich dazu können Sie auf Router 1 eingehende AS_PATH-Filter anwenden.

Anmerkung: Die tatsächliche Anzahl der Präfixe, aus denen sich ein vollständiger Feed zusammensetzt, kann variieren. Die Werte in diesem Dokument dienen nur als Beispiel. Route-Server können eine gute Vorstellung davon vermitteln, wie viele Präfixe eine vollständige BGP-Tabelle bilden.

Anmerkung: Alle Tools und internen Websites sind nur für registrierte Cisco Kunden bestimmt.

BGP-Router erhält vollständige BGP-Routing-Tabelle

Dies ist die Konfiguration von Router 1:

Router 1

Hostname R1

!

Router BGP XX

Keine Synchronisierung

neighbor 157.x.x.x remote-as 701

neighbor 157.x.x.x-Filterliste 80 out

!

ip as-path access-list 80 permit ^$

!

Ende

Die Befehlsausgabe des Befehls show ip bgp summary zeigt, dass 98.410 Präfixe vom ISP-A (BGP-Nachbar 157.x.x.x) empfangen wurden:

R1#show ip bgp summary

BGP router identifier 65.yy.yy.y, local AS number XX

BGP table version is 611571, main routing table version 611571

98769 network entries and 146299 paths using 14847357 bytes of memory

23658 BGP path attribute entries using 1419480 bytes of memory

20439 BGP AS-PATH entries using 516828 bytes of memory

0 BGP route-map cache entries using 0 bytes of memory

5843 BGP filter-list cache entries using 70116 bytes of memory

BGP activity 534001/1904280 prefixes, 2371419/2225120 paths, scan interval 15 secs

Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

165.yy.yy.a     4  6xx9   32962  826287   611571    0    0 01:56:13        1

165.yy.yy.b     4  6xx9   32961  855737   611571    0    0 01:56:12        1

165.yy.yy.c     4  6xx9  569699  865164   611571    1    0 01:55:39    47885

157.x.x.x       4   701 3139774  262532   611571    0    0 00:07:24    98410

Die Befehlsausgabe des Befehls show ip route summary zeigt, dass in der Routing-Tabelle 80.132 BGP-Routen installiert sind:

R1#show ip route summary

IP routing table name is Default-IP-Routing-Table(0)

Route Source    Networks    Subnets     Overhead    Memory (bytes)

connected       0           4           256         576

static          0           1           64          144

eigrp 6         0           5           768         720

bgp  XX         80132       18622       6320256     14326656

External: 87616 Internal: 11138 Local: 0

internal        854                                 994056

Total           80986       18632       6321344     15322152

Dieser Befehl zeigt die Speicherkapazität, die der BGP-Prozess im RAM belegt:

R1#show processes memory | begin BGP

PID TTY  Allocated      Freed    Holding    Getbufs    Retbufs Process

73   0  678981156   89816736   70811036          0          0 BGP Router

74   0    2968320  419750112      61388    1327064        832 BGP I/O

75   0          0    8270540       9824          0          0 BGP Scanner

70882248 Total BGP

77465892 Total all processes

Der BGP-Prozess verwendet ca. 71 MB Arbeitsspeicher.

Mit der Filterliste für eingehende AS_PATH konfigurierter BGP-Router

In diesem Beispiel wenden Sie die Filterliste für eingehende Anrufe an, um Routen zu akzeptieren, die vom ISP-A und seinen direkt verbundenen autonomen Systemen generiert wurden. Im Beispiel kündigt ISP-A ein Standard-Routing (0.0.0.0) über ein externes BGP (eBGP) an, sodass Routen, die die Filterliste nicht übergeben, der Standardroute zum ISP-A folgen. Dies ist die Konfiguration für die Filterliste:

Router 1

Hostname R1

!

Router BGP XX

Keine Synchronisierung

.

neighbor 157.x.x.x remote-as 701

neighbor 157.x.x.x-Filterliste 80 out

neighbor 157.x.x.x-Filterliste 85 in

!— Diese Zeile filtert eingehende BGP-Updates.

!

ip as-path access-list 80 permit ^$

ip as-path access-list 85 permit ^701_[0-9]*$

!— Die AS_PATH Filterliste filtert ISP und !— direkt verbundene autonome Systemrouten.

!

Ende

Die Befehlsausgabe des ip bgp summaryzeigt 31.667 Präfixe, die vom ISP-A (neighbor 157.xx.xx.x) empfangen wurden:

R1#show ip bgp summary

BGP router identifier 165.yy.yy.y, local AS number XX

BGP table version is 92465, main routing table version 92465

36575 network entries and 49095 paths using 5315195 bytes of memory

4015 BGP path attribute entries using 241860 bytes of memory

3259 BGP AS-PATH entries using 78360 bytes of memory

0 BGP route-map cache entries using 0 bytes of memory

4028 BGP filter-list cache entries using 48336 bytes of memory

BGP activity 1735069/3741144 prefixes, 4596920/4547825 paths, scan interval 15 secs

Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

165.yy.yy.a     4  6319  226694 1787061    92465    0    0 17:31:04        1

165.yy.yy.b     4  6319  226814 1806986    92465    0    0 19:51:53        1

165.yy.yy.c     4  6319 1041069 1822703    92465    0    0 19:44:52    17424

157.xx.xx.x     4   701 14452518  456341    92465    0    0 19:51:37    31667

Die Befehlsausgabe des Befehls show ip route summary zeigt in der Routing-Tabelle 27.129 BGP-Routen:

R1#show ip route summary

IP routing table name is Default-IP-Routing-Table(0)

Route Source    Networks    Subnets     Overhead    Memory (bytes)

connected       0           4           256         576

static          0           1           64          144

eigrp 6319      0           6           896         864

bgp 6319        27129       9424        2339392     5299332

External: 19134 Internal: 17419 Local: 0

internal        518                                 602952

Total           27647       9435        2340608     5903868

Der vom BGP-Prozess verwendete Speicher beträgt ca. 28 MB, wie hier gezeigt:

R1#show processes memory | include BGP

PID TTY  Allocated      Freed    Holding    Getbufs    Retbufs Process

73   0  900742224  186644540   28115880          0          0 BGP Router

74   0    5315232  556232160       6824    2478452        832 BGP I/O

75   0          0   39041008       9824          0          0 BGP Scanner

28132528 Total BGP

34665820 Total all memory

Fehlerbehebung bei speicherbezogenen Problemen

Um den vom BGP-Prozess verwendeten Speicher zu überprüfen, verwenden Sie diese Methode, um Arbeitsspeicher zu verarbeiten. | include bgpcommand. Die häufigsten Probleme im Zusammenhang mit einer Überbelegung des Speichers sind hier aufgeführt:

- Speicherzuweisungsfehler "%SYS-2-MALLOCFAIL".

- Nicht genutzte Telnet-Sitzungen.

- Keine Ausgabe von einigen show-Befehlen.

- Fehlermeldungen mit "Zu wenig Speicher".

- "EXEC kann nicht erstellt werden - kein Speicher oder zu viele Prozesse" Konsolenmeldungen.

- Router hängt oder keine Konsolenantwort.

- Wenn Sie BGP-bezogene Debug-Prozesse ausführen, führt dies in der Regel zu einer übermäßigen Speicherbelegung, die auch Speicherfehler aufgrund von BGP verursachen kann. Debugs für BGP müssen mit Vorsicht ausgeführt werden und sind zu vermeiden, wenn sie nicht erforderlich sind.

Um eine vollständige globale BGP-Routing-Tabelle von einem BGP-Peer aus zu speichern, sollten mindestens 512 MB oder 1 GB RAM im Router vorhanden sein. Wenn 256 MB RAM verwendet werden, wird empfohlen, weitere Routenfilter zu verwenden. Wenn Sie 512 MB RAM verwenden, können mehr Internet-Routen mit weniger Routenfiltern in die Routing-Tabelle eingefügt werden. Auf dem Catalyst 6500/6000, der eine vollständige BGP-Tabelle empfängt, wird empfohlen, eine Multilayer Switch Feature Card 2 (MSFC2) mit 256 MB RAM zu verwenden, um die "Cisco Bug ID CSCdt13244" zu vermeiden.

Die Speichernutzung durch BGP-Routen hängt von der Anzahl der Attribute ab, z. B. Multipath-Unterstützung, Soft Reconfiguration, der Anzahl der Peers und AS_PATH. Weitere Informationen zu den BGP-Speicheranforderungen finden Sie in RFC 1774.

Cisco Express Forwarding/Distributed Cisco Express Forwarding (CEF/dCEF)-Switching beansprucht je nach Größe der Routing-Tabelle Arbeitsspeicher. Es gibt zwei Hauptkomponenten von CEF:

- Die Forwarding Information Base (FIB)

- Die Adjacency-Tabelle

Beide Tabellen werden im DRAM-Speicher gespeichert. Stellen Sie sicher, dass Ihr VIP-Prozessor (Versatile Interface Processor) oder Ihre Linecard auch ausreichend freien DRAM-Speicher enthalten. Die "%FIB-3-FIBDISABLE: Schwerer Fehler, Steckplatz [#]: no memory" (Kein Speicher) und "%FIB-3-NOMEM" Fehlermeldungen weisen auf unzureichenden Speicher in den Karten hin.

Es wird dringend empfohlen, den VIP- oder Linecard-Speicher zu überprüfen, bevor Sie dCEF aktivieren. Gehen Sie wie folgt vor, um den Speicher zu bestätigen:

1. Geben Sie den Befehl ip cef im globalen Konfigurationsmodus aus, um das zentrale CEF zu konfigurieren.

Warten Sie, bis die FIB-Tabelle erstellt wurde.

1. Überprüfen Sie die Größe der zentralen FIB-Tabelle mit dem Befehl how ip cef summary.

2. Stellen Sie fest, ob die VIP- oder Linecard über genügend DRAM verfügt, um eine FIB-Tabelle ähnlicher Größe zu speichern.

Geben Sie den Befehl show controller vip [slot#] techcommand ein, und überprüfen Sie die Ausgabe des Befehls memorysummary.

Wenn Sie die vollständigen Internet-BGP-Routen ausführen, sollten Sie mindestens 512 MB oder 1 GB RAM auf dem VIP oder der Linecard haben.

Schlussfolgerung

Dieses Diagramm veranschaulicht die Speichereinsparungen durch die Implementierung der Filterliste:

Anzahl der Präfixe

Genutzter Arbeitsspeicher

Keine Filterung

98,410

70,882,248

Autonome Systemfilter

31,667

28,132,528

Wenn der BGP-Router die vollständige BGP-Routing-Tabelle seiner Nachbarn erhält (98.410 Routen), benötigt der Router ca. 71 MB. Wenn die AS_PATH-Filter auf eingehende Updates angewendet werden, wird die Größe der BGP-Routing-Tabelle auf 31.667 Routen reduziert, und der Speicherbedarf beträgt ca. 28 MB. Diese Reduzierung der Speichernutzung beträgt bei optimalem Routing mehr als 60 Prozent.

Wenn Sie sich die von der Cooperative Association for Internet Data Analysis (CAIDA) kompilierte AS Internet Graphics ansehen, können Sie sehen, welche ISPs den höchsten Grad an Interkonnektivität aufweisen (diejenigen, die der Mitte des Diagramms am nächsten sind). Bei geringerer Interkonnektivität passieren weniger Routen den AS_PATH-Filter, und der BGP-Speicherverbrauch ist geringer. Beachten Sie jedoch, dass Sie beim Festlegen von AS_PATH-Filtern eine Standardroute (0/0) konfigurieren müssen. Routen, die die AS_PATH-Filterliste nicht übergeben, folgen der Standardroute.

Zugehörige Informationen

- Verwenden regulärer Ausdrücke im BGP

- Lastverteilung mit BGP in Einzel- und Multi-Homed-Umgebungen: Beispielkonfigurationen

- So verwenden Sie HSRP zur Bereitstellung von Redundanz in einem Multi-Homed-BGP-Netzwerk

- Beispielkonfiguration für BGP mit zwei verschiedenen Service Providern (Multihoming)

- BGP-Unterstützungsseite

- Technischer Support – Cisco Systems