SNMP框架及其在Cisco路由器上的實(shí)現(xiàn)
本文主要給大家詳細(xì)的介紹了對(duì)于CISOC路由器如何進(jìn)行SNMP框架的配置,相信看過(guò)此文對(duì)于SNMP管理框架和SNMP通知有所了解。
了解SNMP管理框架
SNMP (Simple Network Management Protocol,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議)是一個(gè)應(yīng)用層協(xié)議,提供了SNMP管理者和SNMP代理間報(bào)文格式的消息通信。它規(guī)定了在網(wǎng)絡(luò)環(huán)境中對(duì)設(shè)備進(jìn)行監(jiān)視和管理的標(biāo)準(zhǔn)化管理框架,通信的公共語(yǔ)言和相對(duì)應(yīng)的安全控制機(jī)制。
SNMP管理框架包含有四個(gè)組成部分:
* SNMP管理者
* SNMP代理
* 一個(gè)用于在SNMP實(shí)體間傳輸管理信息的管理協(xié)議
* MIB庫(kù)(Management Information Base,管理信息庫(kù))
SNMP 管理者是一個(gè)利用SNMP協(xié)議對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行控制和監(jiān)視的系統(tǒng)。其中網(wǎng)絡(luò)環(huán)境中最常見的SNMP管理者被稱為網(wǎng)絡(luò)管理系統(tǒng)(NMS,Network Management System)。網(wǎng)絡(luò)管理系統(tǒng)既可以指一臺(tái)專門用來(lái)進(jìn)行網(wǎng)絡(luò)管理的服務(wù)器,也可以指某個(gè)網(wǎng)絡(luò)設(shè)備中執(zhí)行管理功能的一個(gè)應(yīng)用程序。現(xiàn)在市場(chǎng)上有眾多軟硬件廠商提供有支持SNMP協(xié)議的網(wǎng)絡(luò)管理系統(tǒng),如Cisco公司的CiscoWorks系列網(wǎng)絡(luò)管理軟件產(chǎn)品。
SNMP代理是被管理設(shè)備中的一個(gè)軟件模塊,用來(lái)維護(hù)被管理設(shè)備的管理信息數(shù)據(jù)并可在需要時(shí)把管理數(shù)據(jù)匯報(bào)給一個(gè)SNMP管理系統(tǒng)。SNMP代理和相關(guān)的MIB庫(kù)存在于網(wǎng)絡(luò)設(shè)備中(如Cisco路由器,交換機(jī),接入服務(wù)器等等)。
MIB 庫(kù)是一個(gè)保存網(wǎng)絡(luò)管理信息的虛擬數(shù)據(jù)存儲(chǔ)空間,由多組被管理對(duì)象組成。在設(shè)備MIB庫(kù)中有由多個(gè)MIB模塊定義的多組各自相關(guān)聯(lián)的對(duì)象。每個(gè)MIB模塊都是利用標(biāo)準(zhǔn)的SNMP MIB模塊語(yǔ)言撰寫的,具體遵循的標(biāo)準(zhǔn)定義在IETF(Internet Engineering Task Force,一個(gè)國(guó)際標(biāo)準(zhǔn)化組織) STD58,RFC2579和RFC2580文檔中(請(qǐng)參見本文“MIB和RFC”一節(jié)了解STD文檔和RFC文檔的解釋)。需要注意的是,每一個(gè)單獨(dú)的 MIB模塊有時(shí)也會(huì)被稱為一個(gè)MIB,如設(shè)備接口組MIB(IF-MIB)就是設(shè)備MIB庫(kù)中的一個(gè)MIB模塊。
SNMP 代理中保存有MIB對(duì)象變量,變量的數(shù)值可以被SNMP管理者通過(guò)Get或Set操作進(jìn)行讀取和修改。一個(gè)SNMP管理者可以從SNMP代理中讀取一個(gè)變量的數(shù)值或把一個(gè)數(shù)值存儲(chǔ)到SNMP代理的一個(gè)變量中。SNMP代理從代表設(shè)備參數(shù)和網(wǎng)絡(luò)運(yùn)行數(shù)據(jù)的MIB庫(kù)中采集數(shù)據(jù),且可以對(duì)SNMP管理者的Get 和Set操作進(jìn)行應(yīng)答。
下圖勾畫出了SNMP管理者和SNMP代理間的通信關(guān)系。一個(gè)SNMP管理者可以向SNMP代理發(fā)送請(qǐng)求,讀取(Get)或設(shè)置(Set)一個(gè)或多個(gè) MIB變量數(shù)值。SNMP代理可以應(yīng)答這些請(qǐng)求。除了這種交互式通信方式,SNMP代理還可以主動(dòng)向SNMP管理者發(fā)送通知(Trap或Inform Request)以提示管理者一個(gè)設(shè)備或網(wǎng)絡(luò)狀態(tài)。
圖一:SNMP管理者與SNMP代理間的通信
SNMP通知
SNMP 協(xié)議的一個(gè)重要特性是SNMP代理具有產(chǎn)生通知的能力。通知不需要SNMP管理者請(qǐng)求就會(huì)主動(dòng)發(fā)送,發(fā)送采用異步方式,形式可分為Trap和Inform Request(簡(jiǎn)稱Inform)兩種。Trap是發(fā)送給SNMP管理者的通知網(wǎng)絡(luò)狀況的警告消息,而Inform是需要SNMP管理者確認(rèn)接收的 Trap.SNMP通知可以用于指示網(wǎng)絡(luò)中出現(xiàn)的不正確用戶授權(quán),重啟,連接關(guān)閉,設(shè)備通信中斷或其它異常事件。
與Inform 相比較,Trap通知方式為不可靠傳輸,因?yàn)榻邮照咴谑盏揭粭lTrap通知后無(wú)需回復(fù)任何確認(rèn)信息,發(fā)送者無(wú)法知道Trap通知是否已經(jīng)被正確接收。與此相對(duì)應(yīng),當(dāng)SNMP管理者收到一條Inform通知后它需要向發(fā)送者回復(fù)一條確認(rèn)信息,使用的是SNMP應(yīng)答數(shù)據(jù)包(PDU)。如果SNMP管理者沒(méi)有接收到Inform通知,它將不會(huì)發(fā)送任何應(yīng)答,所以當(dāng)發(fā)送者無(wú)法接受到期望的應(yīng)答時(shí),它將再次發(fā)送一條Inform通知給SNMP管理者。這種方式保證了 Inform通知方式可以較有保證地把通知發(fā)送到期望的目的地。
然而在多數(shù)情況下,Trap通知方式被較多采用,因?yàn)镮nform方式將會(huì)耗用更多的網(wǎng)絡(luò)和設(shè)備資源。與Trap通知方式不同的是,被管理設(shè)備不能在發(fā)送后立即把一條Inform通知丟棄,它需要把通知信息保存在系統(tǒng)內(nèi)存中直到收到相應(yīng)的確認(rèn)應(yīng)答或設(shè)備規(guī)定的計(jì)時(shí)器超時(shí)。由此可見一條Trap通知只會(huì)被發(fā)送一次,而Inform通知可能會(huì)被重復(fù)發(fā)送多次。這種重復(fù)發(fā)送將會(huì)增加網(wǎng)絡(luò)流量,造成網(wǎng)絡(luò)額外開銷的上升。
管理員在選擇Trap或Inform通知形式時(shí)需要根據(jù)可靠性要求和系統(tǒng)資源狀況統(tǒng)籌考慮:如果SNMP管理者需要確保收到每條通知,應(yīng)該采用Inform通知方式;如果更關(guān)心減少網(wǎng)絡(luò)流量和網(wǎng)絡(luò)設(shè)備的資源消耗且并不需要每條通知都需要接收,則應(yīng)該采用Trap通知方式。