SNMP協議讓人是憂還是喜?
SNMP協議的作用就是進行網絡管理。這個給大型網絡的設備維護工作帶來了很多好處。但是由于它的不斷引入,幾乎所有設備上都會有默認的SNMP協議設置,導致安全問題層出不窮。到底該不該用SNMP呢?下面我們就來分析一下它的優點和缺點。
對網絡管理理念的實施過程中,技術和工業標準或許是最為重要的環節。如果沒有統一的工業標準,管理的復雜性和成本將成倍增加,網絡的穩定性和可靠性將大幅度下降,智能、安全、開放的目標也無法實現。在現實中,普通網絡上的所有設備都支持工業標準協議,以便不同的設備之間可以實現暢通無阻的通信,而使用專用產品則還需要配套使用高價值的附加產品。基于此,網絡管理的主流技術便在幾個主要的工業標準之上衍生而來,其中SNMP (簡單網絡管理協議)、RMON (遠程監控)和RMON II等標準和技術無疑是最重要的部分。
用戶數據網絡通常是使用SNMP協議進行管理的。SNMP(Simple Network Management Protocol,簡單網絡管理協議)是一種廣為執行的網絡協議,它使用嵌入到網絡設施中的代理軟件來收集網絡通信信息和有關網絡設備的統計數據。代理不斷地收集統計數據,如所收到的字節數等,并把這些數據記錄到一個管理信息庫(MIB,Management Information Base)中,網管員通過向代理的MIB發出查詢信號就可以得到這些信息,這個過程就叫做輪詢(polling),是SNMP最基本的特點。
SNMP是被廣泛接受并投入使用的工業標準,它的目標是保證管理信息在任意兩點中傳送,便于網絡管理員在網絡上的任何節點檢索信息、進行修改、尋找故障,并完成故障診斷、容量規劃和報告生成。采用輪詢機制的SNMP協議能夠提供網絡管理最基本的功能集,最適合小型、快速、低價的網絡環境使用。由于SNMP只要求無證實的傳輸層協議UDP,因而受到許多產品的廣泛支持。
工作方式
SNMP以GET-SET方式替代了復雜的命令集,可以利用基本操作完成全部操作,同時,用戶可以采用管理信息庫標準或按標準的方式來定義自己的MIB。這樣就可以通過降低網管系統中眾多代理部件的成本來降低整個網管系統的成本。
在SNMP中,網管站(NMS)是網絡管理的實體,網管站里運行網絡管理軟件,它對網絡設備發送各種查詢報文,并接收來自被管設備的響應及陷阱(Trap)報文,將結果顯示出來。網管站通常是一臺工作站、PC Server或者就是一臺PC機,通過數據網絡本身與被管設備相連(如局域網口),它在網絡中就是一個主機,因此在通常的網絡里面都是帶內網管,即網管站與設備間的數據與普通的數據是相同的。當然,在網絡設備里面可以設置QoS來對相應的數據進行保護。
網管代理(Agent)則是駐留在被管設備(如路由器、交換機等)上的一個進程,負責接受、處理來自網管站的請求報文,然后將設備接口等特性管理變量的數值形成響應報文,發送給NMS,并在一些緊急情況下,如接口狀態發生改變、呼叫成功等時候,主動通知NMS(發送陷阱Trap報文)。網管軟件則根據這些響應的數據包,通過構建直觀的拓撲圖等方式,便于網管人員進行設備的監控及管理。SNMP就是用來規定NMS和Agent之間是如何傳遞管理信息的應用層協議。
弱點不容忽視
然而,部分業內人士也認為,SNMP協議也存在著一定的問題: 它使用嵌入到網絡設施中的代理軟件來收集網絡通信信息和有關網絡設備的統計數據,代理不斷地收集統計數據并記錄到MIB中,網絡管理人員通過向代理的MIB發出查詢信號(輪詢)可以得到這些信息。因此,雖然MIB計數器將統計數據的總和記錄下來了,但它無法對日常通信量進行歷史分析。當然,為了能全面地查看一天的通信流量和變化率,管理人員必須不斷地輪詢SNMP代理,例如一天中的每分鐘都要輪詢一次。這樣,網管員可以使用SNMP來評價網絡的運行狀況,并揭示出通信的趨勢,如哪一個網段接近通信負載的***能力或正在導致通信出錯,先進的SNMP網管站甚至可以進行編程來自動關閉端口或采取其他矯正措施來處理歷史的網絡數據。
盡管如此,SNMP協議建立在輪詢上的管理依然存在著兩個明顯的弱點:在大型的網絡中,輪詢會產生巨大的網絡管理通信量,因而導致通信擁擠情況的發生; 它將收集數據的負擔加在網絡管理控制臺上,管理站也許能輕松地收集8個網段的信息,但當它們監控48個網段時恐怕就難以應付了。