摘要
- 網絡管理概述
- 網絡管理的體系結構與模式
- 網絡管理的功能
- 簡單網絡管理協議(SNMP)
一、網絡管理概述
-
網絡管理是什麼?
網絡管理包括對硬件、軟件和人力的使用、綜合與協調,以便對網絡資源進行監視、測試、配置、分析、評價和控制,這樣就能以合理的價格滿足網絡的一些需求,如實時運行性能、服務質量等。另外,當網絡出現故障時能及時報告和處理,並協調、保持網絡系統的高效運行等。網絡管理常簡稱爲網管。 -
網絡管理的目的是什麼?
根本目的是最大限度地滿足網絡管理者和網絡用戶對計算機網絡的有效性、可靠性、開放性、綜合性、安全性和經濟性的要求。
1)有效性:網絡要能準確而及時地傳遞信息,爲用戶提供服務。
2)可靠性:網絡要保證能持續穩定地運行,對各種故障、自然災害、外部攻擊的抵禦能力和一定的自愈能力。
3)開放性:網絡要能兼容各個廠商的不同類型的設備。
4)綜合性:網絡能提供各種不同的綜合業務功能,如網絡監測、遠程控制等業務。
5)安全性:對網絡中信息進行保護,防止黑客入侵,也要避免誤操作造成網絡癱瘓。
6)經濟性:儘量減少運行費用。
二、網絡管理的體系結構與模式
2.1 網絡管理的結構
一個完整的網絡管理系統包括4部分:網絡管理站、管理代理、網絡管理協議和管理信息庫 。
1. 網絡管理站(Network Manager)
也叫管理進程,是一個邏輯概念,通常由軟件實現,它負責發出管理操作的指令,被管設備中的管理代理對這些指令進行響應;網絡管理站也可以接收被管理設備發出的警告。
2. 管理代理(Managed Agent)
具有兩個基本功能:一是從管理信息庫 MIB 中讀取各種變量值;二是在 MIB 中修改各種變量值。對應於網絡監測和網絡控制。
管理代理位於被管理的設備內部,負責把來自管理站的命令或信息請求轉換爲本設備特有指令,完成管理站的指示或返回它所在設備的信息。另外,管理代理也可以把自身系統中發生的事件主動報告給管理站。
3. 網絡管理協議(Network Management Protocol)
用於管理站和管理代理之間完成信息交換的通信規約。管理站通過管理協議從管理代理那裏獲取所需的信息或向管理代理髮送命令;管理代理也可以通過管理協議主動報告緊急情況。網絡管理協議的主要任務是定義管理站和代理間的通信方法、規定管理信息庫的存儲結構、信息庫中關鍵詞的含義,以及各種事件處理方法。
目前,應用最方法的網絡管理協議是基於TCP/IP模型的簡單網絡管理協議(Simple Network Management Protocol,SNMP) 。
4. 管理信息庫(Manage Information Base)
用於存放與被管對象有關的網絡信息。被管對象是網絡資源的抽象表示,一個資源可以表示爲一個或多個被管對象。MIB中的對象按層次進行分類和命名,整體表示爲一種樹形結構,稱爲對象命名樹。
2.2 網絡管理的模式
網絡管理模式分爲:集中式管理、分佈式管理和混合式管理3種。
1. 集中式網絡管理
由一個網絡管理站對整個網絡的管理負責。如下圖所示。
集中式的優缺點:
優點:集中管理、結構簡單、低價格、易維護。
缺點:容易產生擁塞、不靈活、不可靠。
2. 分佈式網絡管理
分佈式有多個管理站,每個負責管理一個域。如下圖所示。
分佈式的特點是有很好的擴展性,降低了管理的複雜性。
3. 混合管理模式
集中管理與分佈管理相結合。
三、網絡管理的功能
包括5個方面的功能:故障管理、配置管理、安全管理、性能管理和計費管理。
1. 故障管理(Fault Management)
故障管理是爲了儘快發現故障,找出故障的原因,以便及時採取補救措施,即對計算機網絡中的問題或故障進行定位的過程。它包含故障檢測和報警功能、故障預測功能,及故障診斷和定位功能3個模塊。
2. 配置管理(Configuration Management)
配置管理用於實現網絡設備的配置和管理,主要包括設備初始化、維護和關閉網絡設備或子系統等操作。
3. 安全管理(Security Management)
目的是確保網絡資源不被非法使用,防止網絡資源由於入侵者攻擊而遭到破壞。
4. 性能管理(Performance Management)
用於持續地測評網絡運行中的主要性能指標,如流量、負載、丟包、溫度、內存和延遲等。
5. 計費管理(Accounting Management)
根據網絡管理部門指定的計費策略,按用戶對網絡資源的使用情況收取費用。
四、簡單網絡管理協議(SNMP)
SNMP 工作在 TCP/IP 參考模型的應用層,是一種面向無連接的協議,其功能是使網絡設備之間能方便地交換管理信息,從而使網絡管理員瞭解網絡運行情況,以及進行網絡行爲的控制和管理。
4.1 SNMP 的工作原理
SNMP 包括 SNMP 協議、管理信息數據庫 MIB 和管理信息結構 SMI 3 部分。
SNMP 協議 規定了管理站和代理間交換網絡管理信息的報文格式,報文中包含了代理中的對象及其狀態;
MIB 是被管對象的集合;
SMI 定義了SNMP所用信息的組織、組成和標識,規定了MIB中被管對象的數據類型及其表示和命名方法。
SNMP採用管理站——管理代理模型,如下圖所示。
管理代理是某種網絡設備,如交換機、路由器等,其中設置有保存各種網絡和設備信息的管理信息庫MIB,在管理站和管理代理上分別運行SNMP進行通信,將MIB中的管理信息傳遞給管理站,從而實現網絡管理的功能。
SNMP管理站和管理代理之間的操作包括3種類型。
1)Get:管理站讀取管理代理處對象的值。
2)Set:管理站設置管理代理處處對象的值。
3)Trap:管理代理向管理站通報重要事件。
4.2 管理信息結構 SMI
SMI 有3個作用:
1. 規定了被管對象的命名法則
SMI規定,所有被管對象都必須處於如下圖所示的對象命名樹上。
樹的每一層上的對象結點都對應一個在該層唯一的標號。對象命名樹的根結點沒有名字,根節點下面一層共有3個結點,都是世界著名的標準化組織,分別是:ccitt(0)、iso(1)和joint-iso-ccitt(2),其標號分別是0、1和2.以這3個結點爲根的子樹,包含了所有的網絡被管對象。
樹中的每個結點都有一個分層的編號。葉子結點代表實際的被管對象,從樹根到樹葉的編號串聯起來,用圓點隔開,就形成了被管對象的 全局標識 object identification(OID)。對象有兩種標識方法:數字形式和名字形式。 例如,mgmt的標識符是1.3.6.1.2,或者寫爲{iso.org.dod.internet.mgmt}。
2. 規定了被管對象的數據類型
SMI把被管對象的數據類型分爲兩大類:簡單類型和結構化類型。簡單類型直接使用ASN.1中定義的類型,SMI簡單類型有以下幾個:
1)INTEGET 類型:大小爲4B,表示~之間的整數。
2)Unsigned32 類型:大小爲4B,表示0~之間的無符號數。
3)OCTET STRING 類型:大小可變,表示不超過65535B長的字符串。
4)OBJECT IDENTIFIER 類型:大小可變,表示對象標識符。
5)IPAddress 類型:大小爲4B,表示由4個整數組成的IP地址。
結構化類型有兩種:
sequence 和 sequence of。
3. 規定了被管對象數據的編碼方法
SMI使用ASN.1制定的基本編碼規則(Basic Encoding Rule,BER)對被管對象數據進行編碼,編碼後的被管對象數據就可以在網絡中進行傳輸。BER把所有的數據元素都表示爲由T、L和V這3個字段組成的序列,T字段定義數據類型,L字段定義V字段的長度,V字段定義數據取值,其編碼格式如下圖所示。
其中T字段又分爲3段,分別如下。
1)類別段:佔2bit,表示數據元素的類別,00表示ANS.1定義的類型,01表示SMI定義的類型,10表示上下文所定義的類型,11保留爲特定廠商定義的類型。
2)格式段:佔1bit,用於指出數據類型的種類,0表示簡單數據類型,1表示結構化數據類型。
3)編號段:佔5bit,用來標識不同的數據類型。編號範圍一般爲0~30。當編號大於30時,T字段就要擴展爲多個字節。
幾種數據類型的T字段編碼:
數據類型 | 類別 | 格式 | 編號 | T字段(二進制) | T字段(十六進制) |
---|---|---|---|---|---|
INTEGER | 00 | 0 | 00010 | 00000010 | 02 |
OCTET STRING | 00 | 0 | 00100 | 00000100 | 04 |
OBJECT IDENTIFIER | 00 | 0 | 00110 | 00000110 | 06 |
IPAddress | 01 | 0 | 00000 | 01000000 | 40 |
L字段是可變長字段,用來表示數據值字段V的長度。當L字段爲單字節時,其最高位爲0,後面的7位定義了V字段的長度;當L字段爲多個字節時,其最高位爲1,後面的7位表示後續字節的長度,而用後續字節來定義V字段的長度。其格式如下圖所示。
V字段也是可變長字段,用於定義數據元素的值。
比如,對於網絡中的某個IP地址10.1.2.3,在SMI中的數據類型爲IPAddress,屬於簡單類型,其T字段編碼爲01000000(十六進制表示爲40);IPAddress類型佔4個字節,所以L字段的值爲00000100(十六進制表示爲04);具體IP地址爲10.1.2.3,所以V的取值爲0A 01 02 03(十六進制)。因此IP地址10.1.2.3 的BER編碼爲40 04 0A 01 02 03。
4.3 管理信息庫 MIB
管理信息庫MIB就是包含有關被管理資源及元素信息的數據庫。
管理信息庫保存和維護着可供管理程序讀寫的控制和狀態信息。管理程序通過對 MIB 中信息的值進行讀取和重置實現對網絡的管理。只有 MIB 中的對象才能被SNMP協議所管理。
MIB 中包含的對象也位於對象命名樹中,具體位於mib-2(1)結點下,mib-2是 MIB 的第二版,於1990年5月發佈。mib-2結點下有11個子結點,表示11個被管理對象組,各對象組名稱及含義如下表所示。
功能組 | 對象標識符 | 主要描述 |
---|---|---|
system | mib-2.1 | 關於系統的總體信息,如系統說明和管理信息 |
interface | mib-2.2 | 關於系統到子網的各個接口的信息 |
address translation(at) | mib-2.3 | 關於IP地址與物理地址的轉換 |
ip | mib-2.4 | 關於IP的信息 |
icmp | mib-2.5 | 關於ICMP的信息 |
tcp | mib-2.6 | 關於TCP的信息 |
udp | mib-2.7 | 關於UDP的信息 |
egp | mib-2.8 | 關於EGP的信息 |
cmot | mib-2.9 | 關於CMOT的協議保留 |
transmission | mib-2.10 | 關於傳輸介質的管理信息,爲傳輸信息保留 |
snmp | mib-2.11 | 關於SNMP的信息 |
上表中對象標識符mib-2在命名樹中表示爲1.3.6.1.2.1,例如system,表中爲mib-2.1,則表示爲1.3.6.1.2.1.1。和system有關的對象標識符的前綴都是1.3.6.1.2.1.1。
4.4 SNMP 協議報文
SNMP通過交換 SNMP 報文來傳遞管理信息。每個報文都是完整和獨立的,使用UDP數據報進行傳送。一個 SNMP 報文由版本號、首部、安全參數和 SNMP 報文數據4部分組成,其格式如下圖所示。
版本: SNMP v1 時,該字段爲0,SNMP v2時,該字段爲1。
首部: 包含報文標識、最大報文長度和報文標誌3個子字段。
安全參數: 用來在需要對報文進行鑑別時產生報文摘要MD。
加密字段: 在數據需要加密傳輸時使用。
PDU 類型: 用於說明SNMP數據報文的類型。有8種類型,如下表
類型名稱 | PDU 取值 | 說明 |
---|---|---|
GetRequest | 0 | 管理站從管理代理中提取一個或多個參數值 |
GetNextRequest | 1 | 管理站從代理中提取緊跟當前參數的下一個參數值 |
Response | 2 | 管理代理向管理站或管理站向管理站發送對請求的響應 |
SetRequest | 3 | 設置管理代理中的一個或多個參數值 |
GetBulkRequest | 5 | 管理站從管理代理中讀取大塊數據值 |
InformRequest | 6 | 管理站從另一遠程管理站讀取該管理站控制的管理代理中的變量值 |
SNMPv2Trap | 7 | 管理代理向管理站報告管理代理中發送的異常事件 |
Report | 8 | 在管理站之間報告某些類型的差錯,目前尚未使用 |
請求 ID: 是由管理站設置的一個4B整數。管理代理在發送響應報文時也要返回此請求標識符。管理進程可同時向多個管理代理髮出請求報文,這些報文使用UDP傳送,到達順序不確定,設置請求ID可使管理站能夠識別返回的響應報文對應的是哪一個請求報文。
差錯狀態: 用於向管理站報告發生錯誤的類型。該字段爲0~18中的一個數字,常見的差錯狀態如下表所示。
差錯狀態 | 名字 | 說明 |
---|---|---|
0 | noError | 一切正常 |
1 | tooBig | 代理無法將回答裝入到一個SNMP報文中 |
2 | noSuchName | 操作指明瞭一個不存在的變量 |
3 | badValue | 一個set操作指明瞭一個無效值或無效語法 |
4 | readOnly | 管理進程試圖修改一個只讀變量 |
5 | genErr | 某些其他的差錯 |
差錯索引: 用於響應報文中,與差錯狀態字段配合使用。當出現noSuchName、badValue或readOnly的差錯時,該字段指明瞭有差錯的變量在變量列表中的偏移。
變量綁定: 用於指明一個或多個變量的名和對應的值。在請求報文中,變量的值應忽略(類型是NULL)。
總結
-
網絡管理的概念及目標
-
網絡管理的體系結構:管理站、管理代理、管理協議和管理信息庫
-
網絡管理的5種功能:故障管理、配置管理、安全管理、性能管理和計費管理
-
SNMP的組成和基本原理,MIB樹形結構及SNMP報文結構