snmp_v1_v2_v3差別

   SNMP 是一個協議用來管理網絡上的節點,(包括工作站,路由器,交換機,集線器和其他的外圍設備)。SNMP是一個應用協議,使用UDP封裝進行傳輸。UDP是一個無連接的傳輸層協議,在OSI模型中爲第四層協議,提供簡單的可靠的傳輸服務。SNMP使網絡管理者能夠管理網絡性能,發現和解決網絡問題,規劃網絡的增長。

     當前,定義了三個版本的網絡管理協議,SNMP v1,SNMP v2,SNMP v3。SNMP v1,v2有很多共同的特徵,SNMP v3 在先前的版本地基礎上增加了安全和遠程配置能力 。爲了解決不同版本的兼容性問題,RFC3584定義了共存策略。

   SNMP v1 是最初實施SNMP協議。SNMPv1 運行在像UDP,IP,OSI無連接網絡服務(CLNS),DDP(AppTalk Datagram-Delivery),IPX(Novell Internet Packet Exchange)之上.SNMPv1 廣泛使用成爲因特網上實際的網絡管理協議。

   SNMP 是一種簡單的request/response協議。網絡管理系統發出一個請求,被管理設備返回相應。這些行爲由四種協議操作組成:Get,GetNext,Set 和Trap。Get操作使用NMS來獲取agent的一個或多個對象實例。如果agent返回get操作不能提供列表所有對象實例的值,就不能提供任何值。GetNext 操作是NMS用來從agent表中獲取表中下一個對象實例。Set操作NMS用來設置agent對象實例的值。trap操作用於agent向NMS通告有意義的事件。

   SNMP v2是1993年設計的,是v1版的演進版。Get,GetNext和Set操作相同於SNMPv1。然而,SNMPv2 增加和加強了一些協議操作。在SNMPv2中,如果再get-request中需要多個請求值,如果有一個不存在,請求照樣會被正常執行。而在SNMPv1種將響應一個錯誤消息。在 v1,Trap 消息和其他幾個操作消息的PDU不同。v2版本簡化了trap消息,使trap和其他的get和set消息格式相同。

SNMPv2還定義了兩個新的協議操作:GetBulk和Inform。GetBulk 操作被用於NMS高效的獲取大量的塊數據,如表中一行中的多行。GetBulk 將請求返回的響應消息儘量多的返回。Inform操作允許一個NMS 來發送trap消息給其他的NMS,再接收響應。在SNMPv2

,如果agent響應GetBulk操作不能提供list中全部的變量的值,則提供部分的結果。

   SNMP v2在安全策略演變時存在多個變種,實際存在多個SNMP v2的消息格式。SNMPv2各個變種之間的不同在於安全的實施。因而各個SNMP v2變種之間的PDU都有相同的格式,而總的消息格式又都不同。

   現在,SNMP v3 在前面的版本上增加了安全能力和遠程配置能力,SNMPv3結構爲消息安全和VACM(View-based Access Control Model)引入了USM(User-based Security Model)。這個結構支持同時使用不同的安全機制,接入控制,消息處理模型。SNMP v3 也引入使用SNMP SET命令動態配置 SNMP agent而不失MIB對象代表agent配置。

  這些動態配置支持能夠增加,刪除,修改和配置遠程或本地實體。

  通用的SNMPv3消息格式遵循相同的消息封裝格式包含一個頭和一個被封裝PDU。 頭部區域,被分成兩個部分,一部分處理安全,和另外一部份與安全無關的部分。與安全無關部分所有的SNMPv3部分是相同的,而使用安全相關部分被設計成各種的SNMPv3安全模型,被SNMP內的安全模型處理。

 

    SNMPv1只使用一種安全策略,團體名。團體名和密碼相似。Agent能夠被設置回答那些團體名能夠被接受的Manager的查詢。在很容易讓人截取得到團體名或密碼。SNMPv2增加了不少額外的安全。首先所有的包信息除了目的地址,其他都被加密。在加密的數據中包括團體名和源IP地址。Agent 能夠解開加密包並使用收到的團體名和源IP地址使請求有效。SNMPv3提供三重的安全機制。最高層是認證和私密。中間層提供認證而沒有私密和底層沒有任何的認證機制和私密

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章