Inhalt

Einleitung

Hintergrundinformationen

Problemübersicht

Einschränkung

Mögliche Lösung

Einleitung

In diesem Dokument wird das BGP Virtual Memory (RLIMIT)-Problem bei Cisco Routern beschrieben und erläutert, wie Sie vorgehen müssen, wenn dieses Problem auftritt.

Hintergrundinformationen

Rlimit definiert das Ressourcenlimit für einen Prozess in XR und variiert je nach den Anforderungen des Prozessspeichers. Diese Beschränkungen können je nach Version unterschiedlich sein, da sie auf der Grundlage neuer Anforderungen und Erkenntnisse angepasst werden können.Rlimit wird durch feste Speicherzuweisungen für Komponenten wie Shared Memory, Kernel und dllmgr bestimmt, wodurch es über CLI nicht konfigurierbar ist.

Problemübersicht

Memory usage spiked to 90% after the BGP peer connection was established.

This can also cause the BGP process to crash.

RP/0/RSP0/CPU0:Jul 15 01:04:24.815 GMT: bgp[1087]: %HA-HA_WD_LIB-4-RLIMIT :

wd_handle_sigxfsz: Reached 90% of RLIMIT_DATA RP/0/RSP0/CPU0:Jul

15 01:04:24.815 GMT: bgp[1087]:

%ROUTING-BGP-4-VIRTUAL_MEMORY_LIMIT_THRESHOLD_REACHED :

BGP virtual memory has reached 90% of the maximum allowed limit of 2281 MB for this platform This command shows the maximum amount of memory that any process can access.

RP/0/RSP0/CPU0:ipdsl-slp-colonias-4#show bgp process performance-statistics |

i RLIMIT Tue Feb 14 15:28:14.051 CDT Platform RLIMIT max: 2281701376 bytes

<<<<<<<<<<<

Dieser Befehl zeigt die Speichergrenze im Heap an:

RP/0/RSP0/CPU0:ipdsl-slp-colonias-4#show bgp instance all scale BGP instance 0: 'default' ========================= VRF: default Neighbors Configured: 2 Established: 2 Address-Family Prefixes Paths PathElem Prefix Path PathElem Memory Memory Memory IPv4 Unicast 112649 225065 112649 9.88MB 13.74MB 6.77MB IPv6 Unicast 6358 12581 6358 645.73KB 786.31KB 391.17KB ------------------------------------------------------------------------------ Total 119007 237646 119007 10.51MB 14.50MB 7.15MB node: node0_RSP0_CPU0 ------------------------------------------------------------------ JID Text Data Stack Dynamic Dyn-Limit Shm-Tot Phy-Tot Process ------ ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------- 1067 1M 10M 572K 2001M 2175M 145M 2012M bgp <<<<<<<<<<<<<< 343 8K 12K 128K 421M 1024M 30M 422M mibd_infra 1141 22M 5M 1012K 374M 2048M 95M 380M netconf Total text: 22893 pages data: 24102 pages stack: 6765 pages malloced: 21257 pages

Einschränkung

Die RLIMIT-Einschränkung ist ein kritischer Faktor bei cXR-32-Bit-Systemen, bei denen eine Speicherbegrenzung durchgesetzt wird. Diese Einschränkung wirkt sich direkt auf den für BGP-Prozesse verfügbaren Arbeitsspeicher aus.

Auf eXR 64-Bit-Systemen wird der RLIMIT jedoch deutlich erhöht. Diese Erweiterung vervielfacht den verfügbaren Arbeitsspeicher für BGP-Prozesse und schafft so eine stabilere Umgebung für die Verarbeitung größerer Routing-Tabellen und mehr Peers.

Hier finden Sie den Vergleich der Speicherzuweisung:

Device with RSP880-LT-TR and eXR has the RLIMIT for BGP as 7.4GB

RP/0/RSP0/CPU0:RP#show processes memory detail 10523 JID

Text Data Stack Dynamic Dyn-Limit Shm-Tot Phy-Tot Process

======================================================================

1087 2M 1030M 136K 41M 7447M 131M 183M bgp

Device having RSP880-LT-TR and cXR has the RLIMIT for BGP as 2.5GB

RP/0/RSP0/CPU0:RP#show processes memory detail 1087 JID Text Data Stack

Dynamic Dyn-Limit Shm-Tot Phy-Tot Process ------ ---------- ---------- ----------

---------- ---------- ---------- ---------- ------- 1087 1M 10M 356K 31M 2574M

35M 41M bgp

Mögliche Lösung

Um das Speicherproblem mit BGP zu beheben, können die folgenden Schritte in Betracht gezogen werden:

Upgrade auf 64-Bit-System:

- BGP profitiert von einer größeren Speicherzuweisung auf einem 64-Bit-System, etwa 8 GB gemäß RLIMIT. Dieses Upgrade trägt dazu bei, den erhöhten Speicherbedarf des BGP zu bewältigen.

ASR9k-Profil ändern:

- Schalten Sie das ASR9k-Profil von der Standardeinstellung auf das L3XL-Profil um. Durch diese Anpassung wird die Speicherzuweisung für BGP erhöht, was dazu beitragen kann, den Speicherdruck zu verringern.

- Beachten Sie, dass durch den Wechsel zum L3XL-Profil der für andere Prozesse verfügbare Arbeitsspeicher verringert wird. Daher ist es wichtig, die Auswirkungen auf die Gesamtsystemleistung zu bewerten.

- Vor der Implementierung des L3XL-Profils sollten Sie die Plattformdokumentation sorgfältig durchlesen, um die Auswirkungen zu verstehen und die Kompatibilität mit Ihren Systemanforderungen sicherzustellen.

- Drehknopf auswertensoft-reconfiguration inbound always.

- Die Verwendung des soft-reconfiguration inbound always Knopfes ist sehr speicherintensiv, insbesondere wenn zusätzliche Pfade vorhanden sind.

- Aktivieren Sie BGP-Peers, die keine Routen-Aktualisierungsfunktion haben, und stellen Sie sicher, dass dieser Regler nur für diese Peers aktiviert ist.

- Entfernen Sie diesen Regler von Peers, die eine Routenaktualisierung unterstützen, um Speicher zurückzugewinnen.

- Implementieren Sie Route Policy, um einige Präfixe abzulehnen:

- Erstellen Sie eine Routingrichtlinie, um bestimmte Präfixe abzulehnen. Dies kann dazu beitragen, die Speichernutzung zu reduzieren, indem die Anzahl der Routen, die verarbeitet und gespeichert werden müssen, begrenzt wird.

- Reduzierung der Anzahl an BGP-Peers

- Verringern Sie die Anzahl der BGP-Peers auf dem Router, um den Gesamtspeicherbedarf zu reduzieren. Dieser Schritt ist besonders nützlich, wenn Sie eine große Anzahl von Peers haben, die zur hohen Speichernutzung beitragen.

- BGP-Prozess neu starten oder Router neu laden

- Ein manueller Neustart des BGP-Prozesses oder das Neuladen des Routers kann dazu beitragen, Speicher freizugeben. Dies ist eine vorübergehende Lösung, die jedoch kurzfristige Speicherprobleme wirksam beheben kann.

- Bewerten speicherintensiver Funktionen

- Beachten Sie, dass bestimmte Funktionen wie Non-Stopp Routing (NSR), zusätzliche Pfade und Maximum-Path zu einer erhöhten Speichernutzung beitragen können.

- Bewerten Sie die Notwendigkeit dieser Funktionen, und überlegen Sie, sie zu deaktivieren oder zu optimieren, wenn sie für den Netzwerkbetrieb nicht kritisch sind.

Diese Schritte optimieren das Management der Speichernutzung und stellen die Stabilität und Leistung Ihrer BGP-Prozesse sicher.

Protokolle sammeln:

show tech-support

show tech-support routing bgp

show processes memory detail <job id> location 0/rsp0/cpu0

show processes memory detail <job id> location 0/rsp1/cpu0

show memory summary location all

show memory heap <job id>  location 0/rsp0/cpu0

show memory heap <job id>  location 0/rsp1/cpu0

show memory heap dllname <job id>

show bgp scale

show bgp scale standby

show bgp all all process performance-statistics

show bgp all all process performance-statistics detail