原作者: 張曉暉,李標慶(南京郵電學院通信工程系)
一、前言
網(wǎng)絡的發(fā)展日新月異,新技術、新業(yè)務、新概念層出不窮,無論是規(guī)模,還是廣度和深度,對人們生活的影響均非昔日可比。隨著網(wǎng)絡規(guī)模的擴大,管理問題日益突出,針對服務質量的保證以及業(yè)務管理,人們提出了基于策略的網(wǎng)絡管理PBNM(Policy-Based Network Management)方案;诓呗缘木W(wǎng)絡管理方案已經(jīng)成為近幾年迅猛發(fā)展的網(wǎng)管技術之一。
同時,由于網(wǎng)絡裝置變得愈來愈大、愈來愈復雜、愈來愈富于變化,使得網(wǎng)絡的管理費用隨之增加。為了控制費用,需要使用標準工具,使其能夠應用于更多的產(chǎn)品類型,包括終端系統(tǒng)、網(wǎng)橋、路由器和電信設備以及可用于多供應商環(huán)境中的設備。正是為了滿足這種需要,SNMP發(fā)展起來,它提供了一種對多供應商、可協(xié)同操作的網(wǎng)絡管理工具。
本文對基于策略的網(wǎng)絡管理和基于SNMPv3的網(wǎng)絡管理如何融合,從而更好的發(fā)揮管理作用作了初步探討。
二、基于策略的網(wǎng)絡管理
所謂策略,目前對其定義和描述并無統(tǒng)一的標準,根據(jù)IETF的定義是指一系列管理規(guī)則的集合。每條規(guī)則的定義采用if/then結構,由條件(condition)和操作(action)構成,當網(wǎng)絡環(huán)境滿足規(guī)則的條件時,則執(zhí)行規(guī)則定義的相應操作。也可以把策略看成影響主體(subject)與目標(target)的行為。這里的主體就是引用策略的對象,而目標就是受管對象,它們可以是管理員、用戶或軟硬件部件。
有兩種類型的策略:授權策略和義務策略。授權策略定義了允許一個主體在一個對象上實施的操作。通常,一個授權策略可以是肯定的(即允許),可以是否定的(即禁止)。由于決定一個操作是否被允許以及實施操作的引用監(jiān)控器與目標對象有關,因此稱授權策略是基于目標的。義務策略定義了一個主體必須或不應實施的操作。由于主體負責解釋策略并實施指定的操作,因此義務策略被稱為是基于主體的。
隨著網(wǎng)絡規(guī)模的不斷擴大,網(wǎng)絡應用的增多,需要將整個網(wǎng)絡劃分成多個管理域,每個域實現(xiàn)各自的管理策略,但域之間存在著對等的或層次的關系。域可以理解為由被管對象構成的集合。域一般是按照地域、組織、管理策略或其它形式來劃分的。各個域實現(xiàn)各自的管理方案,而且域內的管理也大大簡化。
所謂基于策略的管理,是指網(wǎng)絡自動根據(jù)已確定的策略,去實施信息存取、信息傳輸以及網(wǎng)絡設備的監(jiān)控與配置,提供優(yōu)化網(wǎng)絡所必須的各項服務:包括目錄/策略服務、逐級信息流管理、虛擬專網(wǎng)和安全服務;诓呗缘墓芾砘驹砣鐖D1所示;诓呗缘墓芾硐到y(tǒng)將用戶提出的服務要求或管理目標,經(jīng)適當?shù)臋z查及調整后轉化為一定的策略(這些策略可包括授權代理,防火墻,質量服務管理)并將其存儲在策略庫中;诓呗缘墓芾硐到y(tǒng)根據(jù)網(wǎng)絡設備的策略服務請求,查詢有關策略,通過計算,判定有關策略是否執(zhí)行,最終將策略轉化為面向具體設備的指令,對網(wǎng)絡設備配置和操作,以滿足有關的管理目標或服務要求;同時基于策略的管理系統(tǒng)通過監(jiān)測網(wǎng)絡性能變化檢查策略的執(zhí)行情況,來決定是否對有關策略進行修改。
圖1 基于策略的管理原理示意圖
基于策略的網(wǎng)絡管理由四個核心組件構成:策略控制臺-它是網(wǎng)絡管理人員定義和編輯策略的一種管理工具;策略服務器(又稱策略決策點PDP)-負責通知交換機和路由器該如何處理不同類型的流量;策略數(shù)據(jù)庫-保存策略的目錄服務器;策略執(zhí)行點(PEP)-通過訪問列表、隊列管理算法和其它方式執(zhí)行策略的網(wǎng)絡設備,如被策略激活的交換機或路由器等。
三、基于SNMPv3的網(wǎng)絡管理
SNMP(簡單網(wǎng)絡管理協(xié)議)實際上是指網(wǎng)絡管理的一系列標準,包括協(xié)議、數(shù)據(jù)庫結構定義和數(shù)據(jù)對象。它提供了最小但功能強大的一套方法,使用簡單的SMI(管理信息結構)、MIB(管理信息庫)和協(xié)議來直接監(jiān)視和控制網(wǎng)絡元素。
SNMPv3(SNMP第三版)提出了一個新的SNMP體系結構,這個體系結構為各種基于SNMP的管理系統(tǒng)提供了一個通用的實現(xiàn)模型。在這個體系結構中,提出了SNMP實體、SNMP引擎、分發(fā)器、消息處理子系統(tǒng)、安全子系統(tǒng)、訪問控制子系統(tǒng)和SNMP應用等概念。
一個SNMP管理系統(tǒng)由若干包含SNMP實體的節(jié)點組成。在這些實體中,至少有一個實體包含命令產(chǎn)生者,和/或通告接收者的應用(對應以往的管理者),多個實體包含能夠訪問管理設備的命令執(zhí)行者和通告產(chǎn)生者應用(對應以往的代理者)。實體間用管理通信協(xié)議傳遞管理信息。包含命令生成者和通告接收者應用的SNMP實體監(jiān)測和控制被管設備。被管設備是指主機、路由器、終端服務器等設備。這些被管設備的監(jiān)測和控制通過對它們的管理信息的訪問實現(xiàn)。
SNMPv3最主要的功能是其安全性,它體現(xiàn)在SNMPv3定義的基于用戶的安全模型(USM)和基于視圖的訪問控制模型(VACM)。VACM MIB包含了下面類別的信息:
1、vacmContextTable:按名稱列出了本地可用的上下文。
2、vacmSecurityTogroupTable:為給定的securityModel和securityName提供了一個groupName。
3、vacmAccessTable:定義組的訪問權限。
4、vacmViewTreeFamilyTabel:賦給組成一個視圖的行的集合的名稱。
訪問控制子系統(tǒng)提供的服務由原語isAccessAllowed來定義。isAccessAllowed原語的定義規(guī)定輸入?yún)?shù)為securityModel、securityName、securityLevel、viewType、contextName和variableName。圖2提供了一種有效的方法來查看輸入變量,顯示了VACM MIB中各種表是怎樣作出訪問控制策略的。
圖2 VACM邏輯
1、誰:securityModel和securityName的組合定義了該操作是誰;它識別一種給定的要素,該要素的通信由給定的securityNodel保護。在該SNMP引擎中,這種組合最多屬于一個組。VacmSecurityToGroupTable提供groupName、securityModel和securityName。
2、哪兒:contextName規(guī)定了在哪兒能找到想要的管理對象。VacmContextTable包含了一個被識別的contextName的列表。
3、怎樣:securityNodel和securityLevel的組合定義了怎樣保護流入的request或Inform PDU。誰、哪兒以及怎樣的組合用來識別vacmAccessTable中的零或一個條目。
4、為什么:viewType規(guī)定了為什么要請求訪問:讀、寫或通告操作。vacmAccessTable中選定的條目為這三種操作中每一種都包含了一個MIB viewName,viewType用于選擇特定的viewName。viewName從vacmViewTreeFamilyTable中選擇合適的MIB視圖。
5、什么:variableName是一個對象標識符,其前綴識別具體的對象類型,其后綴識別具體的對象實例。對象類型指示了請求什么樣的管理信息類型。
6、哪一個:對象實例指出請求的信息是哪一個具體的項。
最后,variableName與檢索到的MIB視圖進行比較。如果variableName與MIB視圖中包含的一個元素相匹配,則授予訪問權限。
四、策略執(zhí)行應用程序:實現(xiàn)結構
授權策略向VACM表的映射是一個向VACM MIB表翻譯策略模板的過程。表1總結了策略映射過程中受影響的變量。
表1 向VACM MIB映射策略屬性
作為ModularSNMPv3的一部分,策略映射在SNMPv3體系結構中已經(jīng)得到實現(xiàn)。ModularSNMPv3本質上是實現(xiàn)SNMPv3框架的一系列可配置的模塊。其結構如圖3所示。
圖3 ModularSNMPv3 體系結構
實現(xiàn)結構由一系列的模塊和相關的MIB組成,同時這些模塊是由引擎和應用程序組成。包含在這些模塊中的引擎有:
1、分發(fā)器:允許在SNMP引擎中同時支持多個版本的SNMP消息。分發(fā)器負責:接收PDU并把接收到的PDU遞交給應用程序;傳遞流出PDU,為消息處理子系統(tǒng)作一個消息準備,并且傳遞流入消息給消息處理子系統(tǒng)來提供流入PDU;發(fā)送和接收網(wǎng)絡上的SNMP消息。
2、消息處理子系統(tǒng):負責準備消息用于發(fā)送,并從接收到的消息中提取數(shù)據(jù)。
3、安全子系統(tǒng):提供安全服務,例如消息的鑒別和保密,這個子系統(tǒng)潛在的包含了多個安全模型。
4、訪問控制子系統(tǒng):提供一系列授權的服務,應用程序可以用它來檢查訪問權限、檢索或修改請求操作以及通告產(chǎn)生操作,可以調用訪問控制。
在SNMPv3實體的應用程序中有一些用于特定目的,比如proxy。策略執(zhí)行功能就融合在SNMPv3實體的應用程序中。策略可以定義為影響主體與目標的行為、描述二者之間關系的對象。將策略顯式地表示為對象有很多好處。首先,易于查找策略和個性策略,便于策略管理。其次,便于定義具有某特定策略性的類。在為一個特定應用定義策略時,該策略的實例即被創(chuàng)建,并保存為特定實例而定義的策略屬性。授權策略就是顯式地表示為存儲在SNMP代理LCD(本地配置數(shù)據(jù)庫)中的對象,可以被授權用戶修改。運行在代理側的策略執(zhí)行應用程序把授權策略映射到相關的訪問控制模塊,比如VACM。管理者的請求,也就是一系列有序操作,被封裝成合適的SNMP PDU。當收到SNMP PDU時,代理根據(jù)封裝的策略修改相關的VACM MIB表,采用SNMP-SET原語;诓呗缘木W(wǎng)絡管理和基于SNMPv3的網(wǎng)絡管理相融合的實現(xiàn)框架如圖4所示。
圖4 實現(xiàn)框架
PEP(策略執(zhí)行點)將策略信息轉化為相應的、面向網(wǎng)絡設備的配置和操作命令。PEP接收來自設備的策略服務請求,例如PEP接收到RSVP的數(shù)據(jù)包,其中有資源預留請求,PEP將策略服務請求發(fā)往與其對應的策略服務器,策略服務器根據(jù)請求中的相應參數(shù)查詢相關的策略,通過推理,決定是否執(zhí)行相關的策略,并把決定發(fā)往PEP,PEP依據(jù)策略服務器的決定來執(zhí)行相關的操作。策略代理起到了網(wǎng)絡設備與策略服務器之間橋梁的作用。策略代理檢測網(wǎng)絡設備中的策略服務請求,并將請求發(fā)往策略服務器,在策略服務器作出判決之后,將策略指令轉化為現(xiàn)有設備支持的網(wǎng)絡操作命令。策略代理與網(wǎng)絡設備之間的管理就可以使用現(xiàn)有的網(wǎng)管設備和SNMPv3協(xié)議。
五、結論
將策略應用在基于SNMPv3的網(wǎng)絡管理中,顯著改進了網(wǎng)絡管理人員過去所遵循的傳統(tǒng)方法,它使業(yè)務和網(wǎng)絡管理人員能夠采用業(yè)務規(guī)則,并使這些業(yè)務規(guī)則自動轉換成設備特有的指令,從而模擬和定義其網(wǎng)絡。它消除了以設備為中心的傳統(tǒng)方法常常引發(fā)的許多網(wǎng)絡配置差錯,大大提高了管理效率和可伸縮性,并使網(wǎng)絡管理人員把工作的著眼點放在業(yè)務需求而不是設備配置的細節(jié)上,從而提高了管理效能。
摘自《通訊世界》