Inleiding
Op Aggregation Services Router 9000 (ASR9K) met Enhanced XR (eXR), ook bekend als 64-bits XR, release 6.2.1 en nieuwer toont de opdracht "toon geheugensamenvatting" niet al het interne geheugen dat op het corresponderende gegevensblad is gedocumenteerd, wat sommige klanten in verwarring kan brengen.
Probleemgegevens
Hieronder gebruiken we als voorbeeld een ASR 9901 met 6.4.2.
Volgens de datasheet heeft de geïntegreerde routeprocessor (RP) 32 GigaBytes (GB) aan Random Access Memory (RAM).
RP/0/RSP0/CPU0:R1#show platform
Node Type State Config state
--------------------------------------------------------------------------------
0/RSP0/CPU0 ASR9901-RP(Active) IOS XR RUN NSHUT
0/FT0 ASR-9901-FAN OPERATIONAL NSHUT
0/FT1 ASR-9901-FAN OPERATIONAL NSHUT
0/FT2 ASR-9901-FAN OPERATIONAL NSHUT
0/0/CPU0 ASR9901-LC IOS XR RUN NSHUT
"Toon geheugensamenvatting" toont alleen rond 27GB, ondanks dat het systeem het totale geheugen herkent als 32GB onder "admin toon systeembronnen".
RP/0/RSP0/CPU0:R1#show memory summary
node: node0_RSP0_CPU0
------------------------------------------------------------------
Physical Memory: 27089M total (22185M available)
Application Memory : 27089M (22013M available)
Image: 4M (bootram: 0M)
Reserved: 0M, IOMem: 0M, flashfsys: 0M
Total shared window: 133M
RP/0/RSP0/CPU0:R1#admin show system resources
Node Physical Application Boot Partition CPUs Shmwin
Total Available Cached Total Available Cached Total Available
0/RSP0-Host 32415M^ 512M^ 135M 31655M^ 500M^ 132 923M 542M 4 N/A
0/RSP0-Admin 1940M 1072M 144M 1894M 1047M 141 2308M 1252M 1 N/A
0/RSP0-XR 27739M 22548M 999M 27089M 22020M 975 N/A N/A 2 6655M
<snip>
Hetzelfde gedrag kan worden waargenomen op andere ASR9K-apparaten, bijvoorbeeld: ASR 9010 met eXR 6.2.3
Kijkend naar de datasheet A9K-RSP880-TR zou 16GB van RAM moeten hebben.
RP/0/RSP0/CPU0:R2#show platform
Node Type State Config state
-------------------------------------------------------------------------------
0/RSP0/CPU0 A9K-RSP880-TR(Active) IOS XR RUN NSHUT
0/FT0 ASR-9010-FAN-V2 OPERATIONAL NSHUT
0/FT1 ASR-9010-FAN-V2 OPERATIONAL NSHUT
0/1/CPU0 A9K-MOD400-TR IOS XR RUN NSHUT
0/1/0 A9K-MPA-20X10GE OK
0/1/1 A9K-MPA-1X100GE OK
0/PT0 A9K-AC-PEM-V3 OPERATIONAL NSHUT
0/PT1 A9K-AC-PEM-V3 OPERATIONAL NSHUT
"Toon geheugensamenvatting" toont 12.5GB en "admin toon systeembron toont 16GB
RP/0/RSP0/CPU0:R2#show memory summary
node: node0_RSP0_CPU0
------------------------------------------------------------------
Physical Memory: 12496M total (8465M available)
Application Memory : 12496M (8287M available)
Image: 4M (bootram: 0M)
Reserved: 0M, IOMem: 0M, flashfsys: 0M
Total shared window: 128M
RP/0/RSP0/CPU0:R2#admin show system resou
Node Physical Application Boot Partition CPUs Shmwin
Total Available Cached Total Available Cached Total Available
0/RSP0-Host 16217M^ 276M^ 29M 15837M^ 271M^ 28 923M 592M 8 N/A
0/RSP0-Admin 1940M 1158M 78M 1894M 1131M 76 2308M 1451M 1 N/A
0/RSP0-XR 12796M 8488M 888M 12496M 8288M 867 N/A N/A 6 3071M
0/1-Host 24491M 11510M 127M 23917M 11241M 124 923M 592M 6 N/A
0/1-Admin 1008M 471M 90M 984M 460M 88 2308M 1528M 1 N/A
0/1-XR 10948M 5902M 2343M 10691M 5764M 2288 N/A N/A 5 3071M
Echter, als we 32-bit XR controleren, toont het het totale fysieke geheugen zoals gedocumenteerd in de datasheet:
RP/0/RSP0/CPU0:R3#show memory summary
Physical Memory: 16384M total (12600M available)
Application Memory : 16043M (12600M available)
Image: 100M (bootram: 100M)
Reserved: 224M, IOMem: 0, flashfsys: 0
Total shared window: 51M
RP/0/RSP0/CPU0:R3#show platform
Node Type State Config State
-----------------------------------------------------------------------------
0/RSP0/CPU0 A99-RSP-TR(Active) IOS XR RUN PWR,NSHUT,MON
0/RSP1/CPU0 A99-RSP-TR(Standby) IOS XR RUN PWR,NSHUT,MON
0/1/CPU0 A9K-MOD400-SE IOS XR RUN PWR,NSHUT,MON
0/1/0 A9K-MPA-20X10GE OK PWR,NSHUT,MON
0/1/1 A9K-MPA-2X100GE OK PWR,NSHUT,MON
0/2/CPU0 A99-8X100GE-SE IOS XR RUN PWR,NSHUT,MON
0/4/CPU0 A9K-MOD400-TR IOS XR RUN PWR,NSHUT,MON
0/4/0 A9K-MPA-8X10GE OK PWR,NSHUT,MON
0/4/1 A9K-MPA-2X40GE OK PWR,NSHUT,MON
Analyse
Vanaf release 6.2.1 zal eXR op ASR9K het Virtuele Machine (VM) virtualisatiemodel gebruiken, waarbij wordt overgeschakeld van het Linux Container (LXC) model dat werd gebruikt in releases 6.1.2 en 6.1.3.
Containers kunnen veel meer toepassingen in één fysieke server inpakken dan een virtuele machine (VM) kan.
VM's kunnen veel systeembronnen in beslag nemen. Elke VM draait niet alleen een volledige kopie van een besturingssysteem, maar ook een virtuele kopie van alle hardware die het besturingssysteem (OS) moet uitvoeren. Dit kan leiden tot een toename van het geheugen en CPU-cycli. In tegenstelling, is alles wat een container vereist is genoeg van een besturingssysteem, ondersteunende programma's en bibliotheken, en systeemmiddelen om een specifiek programma uit te voeren. VM's bieden echter veel meer flexibiliteit om functies zoals In-Service Software Upgrade (ISSU) aan te kunnen.
Aangezien Linux Containers de fysieke bronnen en kernel van de host deelt, terwijl elke VM zijn eigen besturingssysteem en gevirtualiseerde hardware nodig heeft, zou dit verklaren waarom elke VM een specifieke hoeveelheid bronnen van de algemene host krijgt toegewezen, wat ertoe leidt dat de samenvatting van het showgeheugen niet het totale fysieke geheugen op eXR releases 6.2.1 en hoger weergeeft. Linux Conainers kunnen ook een limiet hebben voor toegewezen geheugen zoals het wordt weergegeven op NCS5000 en NCS5500 platforms en hetzelfde gedrag voor de 'show memory overview' CLI zal worden waargenomen op deze platforms.