第25章 SNMP: 簡單網絡管理協定
25.6 執行個體辨別
當對M I B變量進行操作,如查詢和設定變量的值時,必須對M I B的每個變量進行辨別。首先,隻有葉子結點是可操作的。S N M P沒法處理表格的一整行或一整列。回到圖2 5 - 7,在圖2 5 - 8和圖2 5 - 9中描述過的變量就是葉子結點,而m i b、u d p、u d p T a b l e和u d p E n t r y就不是葉子結點。
25.6.1 簡單變量
對于簡單變量的處理方法是通過在其對象辨別後面添加“ . 0”來處理的。例如圖2 5 - 8中的計數器u d p I n D a t a g r a m s,它的對象辨別是1 . 3 . 6 . 1 . 2 . 1 . 7 . 1,它的執行個體辨別是1 . 3 . 6 . 1 . 2 . 1 . 7 . 1 . 0,相對應的文字名稱是i s o . o r g . d o d . i n t e r n e t . m g m t . m i b . u d p . u d p I n D a t a g r a m s . 0。雖然這個變量處理後通常可以縮寫為 u d p I n D a t a g r a m s . 0,但我們還是要提醒讀者在S N M P封包中(圖2 5 - 2)該變量的名稱是其對象的辨別 1 . 3 . 6 . 1 . 2 . 1 . 7 . 1 . 0。
25.6.2 表格
表格的執行個體辨別就要複雜得多。回顧一下圖 2 5 - 8中的UDP 監聽表。每個M I B中的表格都指明一個以上的索引。對于 U D P監聽表來說, M I B定義了包含兩個變量的聯合索引,這兩個變量是:u d p L o c a l A d d r e s s,它是一個I P位址;u d p L o c a l P o r t,它是一個整數(在圖2 5 - 9中的第1行就顯示了這個索引)。
假設在U D P監聽表中有3行具體成員:第1行的I P位址是0 . 0 . 0 . 0,端口号是6 7;第2行的I P位址是0 . 0 . 0 . 0,端口号是1 6 1;第3行的I P位址是0 . 0 . 0 . 0,端口号是5 2 0。如圖2 5 - 11所示。
這意味着系統将從端口 6 7(B O O T P伺服器)、端口1 6 1(S N M P)和端口 5 2 0(R I P)接受來自任何接口的U D P資料報。表格中的這 3行經過處理後的結果在圖 2 5 -1 2中顯示。
25.6.3 字典式排序
M I B中按照對象辨別進行排序時有一個隐含的排序規則。 M I B表格是根據其對象辨別按照字典的順序進行排序的。這就意味着圖 2 5 - 1 2中的6個變量排序後的情況如圖 2 5 - 1 3所示。從這種字典式排序中可以得出兩個重要的結論。
- 在表格中,一個給定變量(在這裡指 u d p L o c a l A d d r e s s)的所有執行個體都在下個變量(這裡指u d p L o c a l P o r t)的所有執行個體之前顯示。這暗示表格的操作順序是“先列後行”的次序。這是由于對對象辨別進行字典式排序所得到的,而不是按照人們的閱讀習慣而排列的。
- 表格中對行的排序和表格中索引的值有關。在圖2 5 -1 3中,6 7的字典序小于1 6 1,同樣1 6 1的字典序小于5 2 0。 圖2 5 - 1 4描述了例子中U D P監聽表的這種“先列後行”的次序。
在下節中,講述到g e t - n e x t操作時,同樣還會遇到這種“先列後行”的次序。