本文說明如何使用簡單網路管理通訊協定(SNMP)取得連續記憶體的最大可用區塊。
本文件沒有特定需求。
本檔案中的資訊僅對Cisco IOS®裝置有效。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
記憶體洩漏和異常網路事件是監控記憶體消耗和分段的主要原因。當進程請求記憶體塊時,會發生記憶體洩漏,而在進程完成時未釋放該塊。最終,該過程會耗盡所有可用記憶體。這視為錯誤,最終會導致路由器崩潰。記憶體不足,除其他外,會禁止路由器建立更多緩衝區。記憶體不足也會影響路由器擴展資料結構(如路由表)的能力。
監控Cisco IOS軟體裝置上的可用記憶體和最大可用記憶體塊可以很好地指示路由器運行狀況。要查詢的變數為ciscoMemoryPoolFree(.1.3.6.1.4.1.9.9.48.1.1.6)和CISCO-MEMORY-POOL-MIB的ciscoMemoryPoolLargestFree(.1.3.6.1.4.1.9.9.48.1.1.1.7)。
.1.3.6.1.4.1.9.9.48.1.1.1.6 ciscoMemoryPoolFree OBJECT-TYPE -- FROM CISCO-MEMORY-POOL-MIB SYNTAX Gauge MAX-ACCESS read-only STATUS Current DESCRIPTION "Indicates the number of bytes from the memory pool that are currently unused on the managed device. ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) cisco(9) ciscoMgmt(9) ciscoMemoryPoolMIB(48) ciscoMemoryPoolObjects(1) ciscoMemoryPoolTable(1) ciscoMemoryPoolEntry(1) 6 }
註:ciscoMemoryPoolUsed和ciscoMemoryPoolFree之和是池中的記憶體總量。
.1.3.6.1.4.1.9.9.48.1.1.1.7 ciscoMemoryPoolLargestFree OBJECT-TYPE -- FROM CISCO-MEMORY-POOL-MIB SYNTAX Gauge MAX-ACCESS read-only STATUS Current DESCRIPTION "Indicates the largest number of contiguous bytes from the memory pool that are currently unused on the managed device." ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) cisco(9) ciscoMgmt(9) ciscoMemoryPoolMIB(48) ciscoMemoryPoolObjects(1) ciscoMemoryPoolTable(1) ciscoMemoryPoolEntry(1) 7 }
下表顯示了用於高端和低端路由器的show memory命令的輸出示例:
高端路由器(7xxx系列):
Router>show memory
標題 | 共計(b) | 已用(b) | 免費(b) | 最低(b) | 最大(b) | |
---|---|---|---|---|---|---|
處理器 | 614708E0 | 112785184 A | 11720752 B | 101064432 C | 100574424 D | 100599288 E |
快速 | 614508E0 | 131072 A | 72664 B | 58408 C | 58408 D | 58364 E |
--還有--
低端路由器(4xxx、2500、3600等系列):
Router>show memory
標題 | 共計(b) | 已用(b) | 免費(b) | 最低(b) | 最大(b) | |
---|---|---|---|---|---|---|
處理器 | 6291DE80 | 16654720 A | 11768556 B | 4886164 C | 4538264 D | 4772980 E |
I/O | 3900000 | 7340032 A | 4898680 B | 2441352 C | 2290528 D | 2441116 E |
--還有--
此資訊在show memory表中突出顯示:
A — 「Total(b)」是裝入Cisco IOS軟體後處理器可用的記憶體總量(位元組)。如果您想瞭解Cisco IOS軟體在路由器上佔用多少記憶體,請從路由器上安裝的動態RAM(DRAM)或系統記憶體(處理器Ram)總量中減去此處顯示的總位元組數。總輸入/輸出(I/O)記憶體或Fast記憶體取決於安裝在低端路由器上的物理I/O記憶體,或者取決於從系統記憶體中分配給高端路由器的資料包記憶體量(在路由/交換處理器(RSP)平台上通常為2 MB)。
.1.3.6.1.4.1.9.3.6.6 processorRam OBJECT-TYPE -- FROM OLD-CISCO-CHASSIS-MIB SYNTAX Integer MAX-ACCESS read-only STATUS Deprecated DESCRIPTION "Bytes of RAM available to CPU." ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) cisco(9) temporary(3) chassis(6) 6 }
B — 「Used(b)」是路由器當前使用(ciscoMemoryPoolUsed)的記憶體總量(位元組)。
.1.3.6.1.4.1.9.9.48.1.1.1.5 ciscoMemoryPoolUsed OBJECT-TYPE -- FROM CISCO-MEMORY-POOL-MIB SYNTAX Gauge MAX-ACCESS read-only STATUS Current DESCRIPTION "Indicates the number of bytes from the memory pool that are currently in use by applications on the managed device." ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) cisco(9) ciscoMgmt(9) ciscoMemoryPoolMIB(48) ciscoMemoryPoolObjects(1) ciscoMemoryPoolTable(1) ciscoMemoryPoolEntry(1) 5 }
C—"Free(b)"是路由器中當前可用[ciscoMemoryPoolFree(.1.3.6.1.4.1.9.9.48.1.1.1.6)或freeMem(.1.3.6.1.4.1.9.2.1.8)]的總記憶體量(以位元組為單位)。
1.3.6.1.4.1.9.2.1.8 freeMem OBJECT-TYPE -- FROM OLD-CISCO-SYS-MIB SYNTAX Integer MAX-ACCESS read-only STATUS Obsolete DESCRIPTION "The freeMem mib object is obsolete as of IOS 11.1 It has been replaced with the cisco memory pool mib" ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) cisco(9) local(2) lsystem(1) 8 }
D — 「Lowest(b)」是自上次重新載入路由器以來某個時間點可用的最低記憶體量。此值沒有等價的MIB。
E — 「最大(b)」是路由器中最大的連續可用記憶體塊[ciscoMemoryPoolLargestFree .1.3.6.1.4.1.9.9.48.1.1.1.7)]。這是此輸出中要檢視的最重要欄位。