《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于XML的網(wǎng)絡(luò)管理
基于XML的網(wǎng)絡(luò)管理
陳竹敏 熊齊邦
上海同濟(jì)大學(xué)計算機(jī)科學(xué)與技術(shù)系(200331)
摘要: 介紹了用XML表示SNMP及Telnet(SSH,SSL)管理信息的方法,提出了一種基于XML的網(wǎng)絡(luò)管理系統(tǒng)模型,實現(xiàn)了對基于Web代理的網(wǎng)絡(luò)設(shè)備的直接管理,并利用轉(zhuǎn)換網(wǎng)關(guān)實現(xiàn)了對基于SNMP代理和Telnet(SSH,SSL)代理的網(wǎng)絡(luò)設(shè)備的管理。
Abstract:
Key words :

摘 要: 介紹了用XML表示SNMP及Telnet(SSH,SSL)管理信息的方法,提出了一種基于XML的網(wǎng)絡(luò)管理系統(tǒng)模型,實現(xiàn)了對基于Web代理的網(wǎng)絡(luò)設(shè)備的直接管理,并利用轉(zhuǎn)換網(wǎng)關(guān)實現(xiàn)了對基于SNMP代理和Telnet(SSH,SSL)代理的網(wǎng)絡(luò)設(shè)備的管理。
關(guān)鍵詞: 可擴(kuò)展標(biāo)記語言(XML)  網(wǎng)絡(luò)管理  轉(zhuǎn)換網(wǎng)關(guān)  簡單網(wǎng)絡(luò)管理協(xié)議(SNMP)

  隨著計算機(jī)網(wǎng)絡(luò)的爆炸性發(fā)展,其規(guī)模不斷擴(kuò)大,復(fù)雜性不斷增長,傳統(tǒng)的基于SNMP的網(wǎng)絡(luò)管理系統(tǒng)及基于Web的網(wǎng)絡(luò)管理系統(tǒng)在網(wǎng)絡(luò)管理方面的局限性日益突出,因此迫切需要新的網(wǎng)絡(luò)管理系統(tǒng)。新的網(wǎng)絡(luò)管理系統(tǒng)需要新技術(shù)的支持??蓴U(kuò)展標(biāo)記語言(eXtensible Markup Language,XML)是一種元標(biāo)記語言,它具有HTML和SGML的雙重優(yōu)點,并且在對網(wǎng)絡(luò)管理信息的模型化方面更有優(yōu)勢,可以方便地表示、傳輸、管理、存儲、顯示結(jié)構(gòu)化的網(wǎng)絡(luò)管理信息。當(dāng)前,對基于XML網(wǎng)絡(luò)管理的研究已經(jīng)成為熱點,它被認(rèn)為是傳統(tǒng)網(wǎng)絡(luò)管理的補(bǔ)充與替代。本文介紹了一種利用XML技術(shù)和轉(zhuǎn)換網(wǎng)關(guān)技術(shù)構(gòu)建的全新的網(wǎng)絡(luò)管理模型,它具有實時性好、擴(kuò)展性好、安全性高、跨平臺并能管理任何類型的大規(guī)模異構(gòu)網(wǎng)絡(luò)等優(yōu)點。
1  背景及相關(guān)技術(shù)
1.1 基于SNMP的網(wǎng)絡(luò)管理
  1990年,IETF提出了簡單網(wǎng)絡(luò)管理協(xié)議(Simple Network Management Protocol,SNMP),1995年提出了SNMPv2,1999年提出了SNMPv3。SNMP是一種基于TCP/IP的網(wǎng)絡(luò)管理協(xié)議,主要用于計算機(jī)互連網(wǎng)絡(luò)的管理。雖然SNMP在當(dāng)時是作為一個臨時的網(wǎng)絡(luò)管理協(xié)議而設(shè)計的,然而由于它具有易于實現(xiàn)和互操作性強(qiáng)等優(yōu)點,而被廣泛應(yīng)用。但隨著計算機(jī)網(wǎng)絡(luò)的飛速發(fā)展,其規(guī)模越來越大,復(fù)雜性越來越高,SNMP在網(wǎng)絡(luò)管理方面的局限性也越來越突出,主要表現(xiàn)在擴(kuò)展性和效率上。擴(kuò)展性指單個Manager所能管理的Agent數(shù)目;效率指管理系統(tǒng)如何快速、有效地傳輸和處理數(shù)據(jù)。網(wǎng)絡(luò)規(guī)模增大,管理信息庫(Management Information Base,MIB)也大,Agent支持的MIB也增多,因此管理數(shù)據(jù)劇增,SNMP的局限性更加突出。
1.2 基于Web的網(wǎng)絡(luò)管理
  基于Web的網(wǎng)絡(luò)管理(Web-based Management,WBM)就是將Web技術(shù)運用到網(wǎng)絡(luò)管理中,將瀏覽器作為客戶端與用戶進(jìn)行交互,將Web技術(shù)的優(yōu)勢充分用于網(wǎng)絡(luò)管理。目前,WBM的實現(xiàn)方式主要有2種。(1)代理方式:將Web服務(wù)器與Manager集成到一臺服務(wù)器上。(2)嵌入方式:直接將Web服務(wù)器嵌入網(wǎng)絡(luò)設(shè)備,瀏覽器可以利用HTML通過HTTP直接和網(wǎng)絡(luò)設(shè)備中的Web服務(wù)器進(jìn)行通信。
  當(dāng)前,WBM的開放標(biāo)準(zhǔn)主要有2個。(1)基于Web的企業(yè)管理(Web-based Enterprise Management,WBEM):1996年由微軟公司提出,目前已經(jīng)得到了多家廠商的支持。它實際是一個面向?qū)ο蟮腤eb應(yīng)用,其真正目標(biāo)是實現(xiàn)現(xiàn)有的網(wǎng)絡(luò)管理標(biāo)準(zhǔn)和協(xié)議的集成。(2)Java管理應(yīng)用程序接口(Java-Management Application Programming Interface,JMAPI):是Sun公司作為它的Java標(biāo)準(zhǔn)擴(kuò)展API結(jié)構(gòu)而提出的,實際是一個完整的網(wǎng)絡(luò)管理應(yīng)用程序開發(fā)環(huán)境,充分利用了Java語言的跨平臺、面向?qū)ο蟆⑦m于分布式等特點,通過增加媒體間應(yīng)用接口來實現(xiàn)Web瀏覽器與網(wǎng)絡(luò)設(shè)備之間協(xié)議的轉(zhuǎn)換。
  基于Web的網(wǎng)絡(luò)管理系統(tǒng)由于HTML本身的局限性,而在網(wǎng)絡(luò)管理方面缺乏有效的管理信息結(jié)構(gòu)化模型。因此在管理傳統(tǒng)的SNMP網(wǎng)絡(luò)設(shè)備時力不從心。
1.3 XML及相關(guān)技術(shù)
  XML是一種元標(biāo)記語言,于1998年由World Wide Web Consortium(W3C)標(biāo)準(zhǔn)化,用于在WWW上進(jìn)行文檔交換。它具有SGML和HTML的雙重優(yōu)點,可以方便地在多種協(xié)議上傳輸結(jié)構(gòu)化數(shù)據(jù)。XML本身具有很多優(yōu)點:分離了文檔的內(nèi)容和顯示格式,利用層疊樣式單(Cascading Style Sheets,CSS)或可擴(kuò)展樣式單語言(eXtensible Stylesheet Language,XSL)來多樣化顯示同一個XML文檔;運用文檔類型定義(Document Type Definition,DTD)和XML模式(XML Schema)來支持文檔的結(jié)構(gòu)化定義;利用XLink、XPointer、XML Base擴(kuò)展了鏈接功能;利用XML Encryption、XML Signature提高安全性;利用文檔對象模型(Document Object Model,DOM)和XML簡單應(yīng)用程序接口(Simple APIs for XML,SAX)為XML文檔的處理提供標(biāo)準(zhǔn)接口。XML是一個底層構(gòu)建模塊,其他技術(shù)都是建立在XML之上,因此XML完全適合于網(wǎng)絡(luò)管理。在網(wǎng)絡(luò)管理方面,XML也具有很多優(yōu)點:管理信息易于模型化;把SNMP MIB的結(jié)構(gòu)信息或Telnet(SSH,SSL)命令轉(zhuǎn)換為XML文檔非常容易;在信息傳輸時只要支持HTTP的設(shè)備就可支持XML;可以一次性傳輸大量數(shù)據(jù);保證管理信息的高安全性等。
2  用XML表示管理信息
2.1 XML對SNMP管理信息的表示
  XML Schema是一套關(guān)于XML標(biāo)記符的語法規(guī)則,它通過對結(jié)構(gòu)和內(nèi)容的約束,定義了XML文檔的類型。鑒于XML Schema在定義結(jié)構(gòu)化信息方面的優(yōu)勢,選用它來定義表示SNMP MIB的XML文檔的結(jié)構(gòu)。XML Schema與SNMP MIB的對應(yīng)轉(zhuǎn)換關(guān)系如表1所示。

根據(jù)表1的對應(yīng)規(guī)則,可以將SNMP MIB2轉(zhuǎn)換成的XML Schema如下:
<?xml version=″1.0″ encoding=″utf-8″?>
<xsd:schema xmlns:xsd=″Http://www.w3.org/2000/10/
              XMLSchema″>
<xsd:element name=″Mgmt″>
<xsd:complexType>
<xsd:sequence>
  <xsd:element ref =″Mib-2″/>
  </xsd:sequence>
  <xsd:attribute name=″oid″type=″xsd:string″use=″fixed″
           value=″1.3.6.1.2″/>
  </xsd:complexType>
</xsd:element>
<xsd:element name=″Mib-2″>
  <xsd:complexType>
  <xsd:sequence>
      <xsd:element ref=″NodeName″/> …
  </xsd:sequence>
  <xsd:attribute name=″oid″type=″xsd:string″use=″fixed″
            value=″1.3.6.1.2.1″/>
  </xsd:complexType>
</xsd:element>
<xsd:element name=″NodeName″>
  <xsd:complexType>
  <xsd:simpleContent>
      <xsd:restriction base=″xsd:string″>
      <xsd:sequence>
          <!--下一級MIB子對象的XML Schema定義-->
      <xsd:element ref=″NodeName″/> …
  </xsd:sequence>
  <xsd:attribute name=″oid″type=″xsd:string″use=
                ″fixed″value=″OidValue″/>
  <xsd:attribute name=″Access″type=″xsd:string″use=
                ″fixed″value=″AccessType″/>
  <xsd:attribute name=″Status″type=″xsd:string″use=
                ″fixed″value=″StatusType″/>
  <xsd:attribute name=″Description″type=″xsd:string″
                use=″fixed″value=″DescriptionText″/>
  <xsd:attribute name=″Reference″type=″xsd:string″
                use=″fixed″value=″ReferenceType″/>
  <xsd:attribute name=″Index″type=″xsd:string″use=
                ″fixed″value=″IndexList″/>
  <xsd:attribute name=″DefaultValue″type=″xsd:string″
                use=″fixed″value=″DefaultValue″/>
  </xsd:restriction>
  </xsd:simpleContent>
  </xsd:complexType>
</xsd:element>
</xsd:schema>
2.2 用XML表示Telnet(SSH,SSL)管理信息
  有一些網(wǎng)絡(luò)設(shè)備是基于Telnet(SSH,SSL)Agent的,要取得這些網(wǎng)絡(luò)設(shè)備的管理信息,必須通過Telnet(SSH,SSL)命令行的方式,因此必須實現(xiàn)XML對Telnet(SSH,SSL)信息的表示。
Telnet(SSH,SSL)命令的一般格式如下:
  #CommandName  options  parameters
  其中CommandName是命令名,options是命令選項,parameters是命令操作參數(shù)。Telnet(SSH,SSL)命令與XML Schema的對應(yīng)轉(zhuǎn)換關(guān)系如表2所示。

  根據(jù)表2中的對應(yīng)關(guān)系,Telnet(SSH,SSL)命令轉(zhuǎn)換成的XML Schema如下所示:
  <?xml version=″1.0″encoding=″utf-8″?>
  <xsd:schema xmlns:xsd=″Http://www.w3.org/2000/10/
                       XMLSchema″>
  <xsd:element name=″CommandName″>
  <xsd:attribute name=″options″type=″xsd:string″value=
                       ″optionsValue″/>
  <xsd:attribute name=″parameters″type=″xsd:string″
  value=″parametersValue″/>
  </xsd:element>
  </xsd:schema>
  除了可以用XML表示命令,還可以表示返回結(jié)果。
3  基于XML的網(wǎng)絡(luò)管理系統(tǒng)模型
  基于XML的網(wǎng)絡(luò)管理是在基于Web的網(wǎng)絡(luò)管理環(huán)境下用XML來表示、傳輸、處理、存儲和顯示管理信息。它用XML文檔來定義管理信息,以XML文檔的形式交換和處理管理信息。但XBM(XML-based Management)必須能管理當(dāng)前廣泛使用的基于SNMP Agent的網(wǎng)絡(luò)設(shè)備及傳統(tǒng)的基于Telnet(SSH,SSL)的網(wǎng)絡(luò)設(shè)備,才具有真正的實用價值。為了在XBM中集成對多種網(wǎng)絡(luò)設(shè)備的管理,可以根據(jù)嵌入Agent的種類把當(dāng)前的網(wǎng)絡(luò)設(shè)備分為3類:(1)基于SNMP代理的網(wǎng)絡(luò)設(shè)備。它可以通過SNMP協(xié)議與基于SNMP的Manager通信,這是當(dāng)前廣泛使用的網(wǎng)絡(luò)設(shè)備。(2)基于Web代理的網(wǎng)絡(luò)設(shè)備。它以XML/HTTP的方式直接與基于XML的Manager通信,這是當(dāng)前正在研究的網(wǎng)絡(luò)設(shè)備。(3)基于Telnet(SSH,SSL)代理的網(wǎng)絡(luò)設(shè)備,可以通過Telnet(SSH,SSL)命令行的方式來收集這類網(wǎng)絡(luò)設(shè)備的信息或?qū)ζ溥M(jìn)行配置管理。根據(jù)基于XML的網(wǎng)絡(luò)管理的基本要求,本文提出了一種XBM系統(tǒng)模型,如圖1所示。

  圖1中的XBM模型采用了分層的結(jié)構(gòu),主要分為4層:第1層以Web瀏覽器作為客戶端,與用戶進(jìn)行數(shù)據(jù)交互,并通過HTTP協(xié)議與下一層交換XML格式的管理信息。利用CSS或XSL來實現(xiàn)用XML文檔表示的管理信息的多樣化顯示,真正實現(xiàn)“同一數(shù)據(jù),多樣顯示”。第2層是一個服務(wù)器工作站,其中的Web服務(wù)器主要負(fù)責(zé)與上一層的客戶端通信。管理服務(wù)器不但實現(xiàn)傳統(tǒng)網(wǎng)絡(luò)管理的功能,而且還負(fù)責(zé)管理下一層的轉(zhuǎn)換網(wǎng)關(guān)。發(fā)出XML格式的Request,接收XML格式的Response,以處理XML文檔的標(biāo)準(zhǔn)方法進(jìn)行分析處理。利用XML Encryption和XML Signature技術(shù)保證用XML表示的管理信息的傳輸安全性;利用HTTP的Get方法實現(xiàn)SNMP的3種操作(Set、Get和Trap)及傳統(tǒng)的Telnet(SSH,SSL)的命令行操作。第3層包括2個轉(zhuǎn)換網(wǎng)關(guān):(1)XML-SNMP轉(zhuǎn)換網(wǎng)關(guān)實現(xiàn)XML文檔和SNMP信息的互相轉(zhuǎn)換。解析來自上一層的XML格式的Request,生成SNMP格式的Request,并通過SNMP協(xié)議傳送到下一層基于SNMP代理的網(wǎng)絡(luò)設(shè)備;解析來自下一層的SNMP格式的Response,生成XML格式的Response,并通過HTTP協(xié)議傳送到上一層。(2)XML-Telnet(SSH,SSL)網(wǎng)關(guān)實現(xiàn)XML文檔和Telnet(SSH,SSL)命令及命令執(zhí)行結(jié)果的互相轉(zhuǎn)換;解析來自上一層的XML格式的Request,生成Telnet(SSH,SSL)格式的Request,并通過Telnet(SSH,SSL)協(xié)議發(fā)送到下一層基于Telnet(SSH,SSL)代理的網(wǎng)絡(luò)設(shè)備;解析來自下一層的命令執(zhí)行返回的Telnet(SSH,SSL)格式的Response,生成XML格式的Response,并通過HTTP協(xié)議傳送到上一層。第4層是3種被管網(wǎng)絡(luò)設(shè)備,其中的Agent負(fù)責(zé)接收來自上一層的Request,收集所需管理信息,給出Response。
  XBM不但可以實現(xiàn)傳統(tǒng)的基于SNMP網(wǎng)絡(luò)管理系統(tǒng)的所有功能,而且解決了SNMP的2個比較突出的局限性。網(wǎng)關(guān)不僅具有轉(zhuǎn)換功能還可以減輕網(wǎng)絡(luò)負(fù)載,提高系統(tǒng)的可擴(kuò)展性與效率。在可擴(kuò)展性方面,當(dāng)網(wǎng)絡(luò)規(guī)模比較大,Agent數(shù)目比較多時,可以通過添加網(wǎng)關(guān)的數(shù)目來實現(xiàn)分層分布式管理。在效率方面,管理服務(wù)器可以發(fā)出一次命令,Agent執(zhí)行多次,但通過網(wǎng)關(guān)的整合后返回的僅是一個XML文檔。這樣會大大減少要傳輸?shù)臄?shù)據(jù)量,并且使XML-SNMP網(wǎng)關(guān)越靠近SNMP Agent,傳輸?shù)木W(wǎng)絡(luò)流量就越少。因為XBM是在基于Web的環(huán)境下使用XML技術(shù)的,所以它還繼承了WBM的所有優(yōu)點。此外,XBM還具有其他許多優(yōu)點:(1)在系統(tǒng)設(shè)計上具有標(biāo)準(zhǔn)化的數(shù)據(jù)結(jié)構(gòu)、清晰的定義、準(zhǔn)確的編碼方式和統(tǒng)一的訪問接口。(2)在系統(tǒng)性能上,數(shù)據(jù)傳輸可靠性高,可一次傳輸大量管理信息,互操作性好,網(wǎng)絡(luò)負(fù)載低,延遲小。(3)具有平臺無關(guān)性,可以運行在多種操作系統(tǒng)之上,可以管理異構(gòu)復(fù)雜網(wǎng)絡(luò)。(4)用XML本身的安全機(jī)制來提高管理信息傳輸?shù)陌踩浴?5)能管理多種網(wǎng)絡(luò)設(shè)備,能以基于Web的方式對網(wǎng)絡(luò)設(shè)備進(jìn)行配置管理。
4  結(jié)論及進(jìn)一步的研究
  本文提出了一種新的XBM模型,它使用XML來表示、傳輸、處理和顯示網(wǎng)絡(luò)管理信息。該模型除可以直接管理基于Web的網(wǎng)絡(luò)設(shè)備外,還利用2個網(wǎng)關(guān)實現(xiàn)了對傳統(tǒng)的基于SNMP的網(wǎng)絡(luò)設(shè)備和基于Telnet(SSH,SSL)網(wǎng)絡(luò)設(shè)備的管理。但仍然有一些工作需要進(jìn)一步深入研究。在該系統(tǒng)模型中若加入一層網(wǎng)關(guān),當(dāng)一次性請求大量管理信息時,可提高效率,但當(dāng)請求的信息量比較少時,如何提高系統(tǒng)的性能是一個關(guān)鍵問題。此外,不同的操作系統(tǒng)其Telnet(SSH,SSL)命令格式及返回結(jié)果的格式不同,如何使XML文檔對Telnet(SSH,SSL)信息的表示更具有普遍性也有待深入探討。
參考文獻(xiàn)
1   Ju H T,Choi M J.An Embedded Web Server Architecture  for XML-Based Network Management.In:2002 IEEE/IFIP  Network Operations and Management Symposium(NOMS′02), Florence,Italy,2002
2   IETF The Simple Network Management Protocol.RFC 1157,1990
3   Hong J W,Kong J Y.Web-based Intranet Services and  Network Management IEEE on Communications Magazine,2000;35(10)
4   Bray T,Paoli J.Extensible Markup Language (XML) 1.0  (Third Edition).W3C Recommendation.http://www.w3.org/TR/2004/REC-xml-20040204.2004-02-04
5   Fallside D C.XML Schema Part 0:Primer.W3C Recommendation.http://www.w3.org/TR/xmlschema-0/,2001
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。