解決方案
1980 年代末期網路不斷擴張,營運人員卻沒有共通的方式來檢查路由器的狀態或變更其設定。網際網路社群提出的競爭方案以 OSI 管理框架為基礎,被判定為無法在當時的硬體上實作。
SNMP 設計者把簡單當成整個重點。管理器送出一個微小的 UDP 封包到 161 埠,要求取得某個具名物件,代理便以該物件的值回應;trap 則把緊急事件推回。沒有連線、沒有繁重的編碼,幾乎沒有什麼要安裝。
1990 年 5 月發布的 RFC 1157 描述了這個協定,廠商很快就實作了它,因為門檻實在太低。SNMP 成了管理網路設備的事實標準,至今仍存在於每一台路由器、交換器和印表機中。
它達成了什麼
一個微小的 UDP 請求就能取得任何裝置的狀態
為何奏效
OSI 風格的替代方案對 1980 年代的硬體而言過於沉重
透過 UDP 的少數幾項操作實作起來輕而易舉
MIB 讓每台裝置都有一棵統一的具名值樹
出貨內建於每台路由器,讓它在競爭者出現前就成了預設選項
可借鏡之處
當重量級標準無法實作時,一個刻意極簡的標準會勝出,因為它簡單到每個廠商都會出貨支援。
後續發展
SNMPv2 和 SNMPv3 在維持相同簡單模型的同時加入了更好的安全性,而這個協定至今仍是監控網路設備的通用介面。較新的串流遙測能處理規模問題,但 SNMP 的核心設計比它面對過的每個競爭者都更長壽。
追溯依據
參考來源
- Simple Network Management Protocol Wikipedia · en.wikipedia.org
- RFC 1157: A Simple Network Management Protocol (SNMP) IETF / RFC Editor · datatracker.ietf.org