理解SNMP協議(二)

4.管理信息結構(SMI)

像已經描述的那樣.MIB定義被管理對象是通過什麼標準來定義的呢,就是SMI.SMI定義了管理信息怎麼組織和命名.允許的操作.認可的數據類型和指定MIBs庫的語法.被管理對象系統中資源的抽象,獨立於被管理需求的存在.這些對象的MIB沒有定義這些資源的實際實現,一些對象只有一個實例(比如一個系統的未知),而其他的有多個實例(比如網絡連接),有相同實例類型有聯繫的對象在SNMP MIBs中在概念上組成一個表,和一個實例相關的對象標識符就稱作一個SNMP 變量(SNMP Variable)

SMI就像是一個數據庫系統的圖解,它定義了被管理對象的模型和能在對象上執行的操作,還有對象允許的數據類型,OSI方法像一個面向對象的模型,而SNMP方法像一個關係數據庫模型

4.1 對象標識符(OIDs)

在SNMP中,對象被明確的定義通過給他們指定一個OID值.在空間和事件上唯一.對象標識符就是一系列的正整數繼承的組織起來,就像UNIX 和 PC-DOS文件系統名字是的,爲了使用更加方便,每一個OID值都伴隨着一個文本字符串.SNMP使用一個來自數字值的編碼,而不是文本字符串.OIDs用以下的格式寫出

例子:

OIDs能夠用來唯一標識任何事物,不僅僅是被管理對象.一些OIDs被使用僅僅是幫助組織OID繼承樹

4.2 MIB模塊

SNMP的MIB通過大量的來自多個文檔的模塊來定義.(...MIB在不同的語境下的不同含義 略)

MIB模塊的名字必須以大寫字母開始,被一個數字跟隨,和".","."不能是最後一個字符,"."的後面也不能再跟着一個".",然而,MIB編譯器或者是網絡管理工作站對命名限制會更加嚴格

在OID樹的註冊節點在模塊中被定義.這些會被詳細的描述在這篇文章的後面.下面是SNMP MIBs 和 MIB 模塊的語法.

4.3 模塊規則結構

對象在OID樹中的位置必須在寫一個MIB 模塊前就確定下來.對於IETF工作團體開發的MIBs,一個分支必須安排在"internet experimental"分支下,對於私有MIBs,一個分支必須安排在"enterprises"分支下.一旦一個MIB被髮布,條目就不能在更改了.MIB模塊總是以相同的形式開始.爲這個模塊選擇一個唯一的名字,之後是導入註冊點對象.模塊中用到的語法類型,

和OBJECT-TYPE, TRAP-TYPE宏.當在一個模塊中用到了某個條目,就需要導入此條目.下面是一個MIB模塊的殼的例子

4.4 對象標識符條目

在SNMP的MIBs中,被定義爲對象標識符的條目是高級的註冊節點.對象標識符的名字必須以一個小寫字母開頭.後面可以接字母,數字,和連字符.

對象標識符的語法和例子如下圖所示

4.5 被管理的對象定義

三種對象的類型能夠使用OBJECT-TYPE宏來定義.其中包括表,行,葉對象.命名必須以一個小寫字母開頭,後面緊隨一個字母,數字或者是連字符.總共有兩個版本的OBJECT-TYPE宏.兩個版本最大的不同點是當前的版本包含INDEX條款.用來指定構建SNMP變量的規則.

4.5.1 表對象(Table)

表由多個行組成.因爲SNMP SMI定義的歷史原因,表的結構有一些奇怪.通過SNMP一個表是不能獲取到的,僅僅 列對象 能被獲取到.一個表的語法必須是"SEQUENCE OF <sequence>".按照習俗,表都是以"Table"作爲後綴命名的.序列的後綴被設置爲"Entry".舉個例子,如果"fooTable"是一個表的名字.那麼和他相關聯的序列就會被命名爲"FooEntry".一個表的訪問屬性必須是"not-accessible".

4.5.2 行對象(Entry)

多個列組成一個行.通過SNMP一行是不可以返回的.僅僅是列對象才能返回.GET 和 GETNEXT請求能夠用來獲得一個被選擇行的所有的列.一行的名字就是把和它相關的表的名字的後綴"Table"換成"Entry".一行的語法類型必須是被相關表使用的序列.行的訪問屬性必須是不可訪問的.行的OID值就是在表的OID值後面簡單的加上個".1".INDEX條款必須被指定一個規則才能構建一個表中的行的某一列對象的實例.下面是一個行對象語法的定義和例子.

4.5.3 序列的定義(sequence)

在一行中一個序列是用來指定所在的列.對於大多數表和行,序列的條目是行對象的子.然而如果表是一個已經存在的表的擴展,那麼已存在的表中的所有或一部分列對象就會被加到序列中.

4.5.4 葉對象

葉對象是最小的信息結構.一個對象OID和它相關的信息實例結合起來稱作SNMP變量.這些都是SNMP操作的參數.一個設備接口數的葉對象只有一個唯一的實例.這種情況,實例被指定爲在SNMP變量後面加個".0".下面是

 

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