snmp是應用層協定。 SNMP(簡單網路管理協定)是專門設計用於在IP網路管理網路節點的一種標準協議,位於ISO/OSI和TCP/IP網路模型的頂層(即應用層),屬於應用層協議,在傳輸層依靠UDP協定進行傳輸。
簡單網路管理協定(SNMP) 是專門設計用於在IP 網路管理網路節點(伺服器、工作站、路由器、交換器及HUBS等)的一種標準協議,它是一種應用層協議。
SNMP協定的簡單介紹
在了解SNMP協定之前,先要了解ISO/OSI和TCP/IP的網路模型。 ISO/OSI將網路分為7層,TCP/IP將網路分為4層(也有5層的說法)
SNMP位於兩種網路模型的頂層即應用層,屬於應用層協議,在傳輸層依賴UDP協議進行傳輸。 SNMP的封包在傳輸層,因此叫做PDU(協定資料單元)。
SNMP(Simple Network Management Protocol)即簡單網路管理協議,主要用在區域網路中對設備進行管理,應用最為廣泛的是對路由器交換器等網路設備的管理,當然不僅限於網路設備。
SNMP 讓網路管理員能夠管理網路效能,發現並解決網路問題以及規劃網路成長。透過 SNMP 接收隨機訊息(及事件報告)網路管理系統獲知網路出現問題。
SNMP分為管理端和代理程式(agent),管理端的預設連接埠為UDP 162,主要用來接收Agent的訊息如TRAP警告訊息;Agent端使用UDP 161連接埠接收管理端所下發的訊息如SET/GET指令等。
SNMP協定各版本的差異
SNMP協定目前在用的有3個版本,分別是V1,V2C,V3,主要差異在安全性、訊息封裝格式、GET效率等方面。
1、SNMPV1版本介紹
SNMPV1中定義了5種類型的PDU:Get(取得參數值,不能遍歷table類型的參數組),GetNext(可取得table型的參數值,一組參數),Set(設定參數值) 和Trap(傳送警告)、Response(GET操作的回應訊息)。
SNMPv1使用團體字(community)來作為身分認證資訊。當Agent接收到與其一樣的團體字的管理端訊息後才會進行訊息應答。
SNMPV1整個訊息採用明文傳送,透過wireshark/tcpdump等抓包工具可看到明文。
2、SNMPV2版本介紹
SNMPV2定義了7種類型的PDU:Get(取得參數值,不能遍歷table類型的參數群組),GetNext(可取得table類型的參數值,一組參數),Set(設定參數值) 和Trap(傳送警告),GetBulk(GetBulk操作所對應的基本操作是GetNext,透過對Non repeaters和Max repetitions參數的設定,高效率地從Agent取得大量管理物件數據,如果get-request中的參數有一個不存在,請求照樣會被正常執行;而在SNMPv1種將收到一個錯誤訊息),inform(相當於Trap的升級版,但是Trap訊息發出去之後不會收到回應訊息,而inform訊息在發出之後能收到回應訊息)、Response(GET操作的回應訊息)。
SNMPv2c也採用團體字認證。
SNMPV2C整個訊息採用明文傳送,透過wireshark/tcpdump等抓包工具可看到明文。
3、SNMPV3版本介紹
SNMPV3中沿用了V2中7種類型的PDU,增加了report(當訊息不能解密時傳送該訊息)。
SNMPV3採用了USM和VACM技術。 USM提供了認證和加密功能,VACM確定使用者是否允許存取特定的MIB物件以及存取方式。
USM(基於使用者的安全模型):Agent透過對管理端訊息中攜帶的使用者、密碼(採用MD5或SHA加密)、authkey(認證秘鑰)以及engineid(agent的識別碼)對訊息進行鑑權和完整性驗證,整個訊息體都採用DES進行加密。
SNMPV3資料訊息採用密文傳送,透過wireshark/tcpdump等抓包工具不可見實際的內容。
SNMP管理端和代理端(Agent)進行通訊時,雙方必須有共同的一套參數才能正常“交流”,這套參數被稱作MIB(管理資訊庫),因文件組織格式為樹形,統稱MIB樹,不同廠商、不同設備類型的MIB樹一般不同
以上是snmp是什麼層協定?的詳細內容。更多資訊請關注PHP中文網其他相關文章!