摘要:計(jì)算機(jī)網(wǎng)絡(luò)的復(fù)雜性與日俱增,網(wǎng)絡(luò)管理體系的創(chuàng)新性研究已成為研究熱點(diǎn)。為保證網(wǎng)絡(luò)性能管理滿足容錯(cuò)性、學(xué)習(xí)能力和組織功能的需求,結(jié)合多Agent技術(shù)與遞階控制理論進(jìn)行網(wǎng)絡(luò)性能遞階控制模型研究。在利用多Agent的分布性與協(xié)作性進(jìn)行實(shí)現(xiàn)網(wǎng)絡(luò)性能監(jiān)測、分析與預(yù)測的基礎(chǔ)上,由遞階控制方法完成對網(wǎng)絡(luò)性能控制。通過JBuilder 2006開發(fā)平臺完成該模型的軟件系統(tǒng)開發(fā)與測試,可對網(wǎng)絡(luò)中不同關(guān)鍵設(shè)備進(jìn)行網(wǎng)絡(luò)性能的智能化管理。在某局域網(wǎng)的應(yīng)用表明:這種方法能顯著提高網(wǎng)絡(luò)利用率,實(shí)現(xiàn)網(wǎng)絡(luò)優(yōu)化。
關(guān)鍵詞:多Agent;遞階控制;網(wǎng)絡(luò)優(yōu)化
1 引言
隨著Internet的使用范圍擴(kuò)大、商業(yè)應(yīng)用增多,網(wǎng)絡(luò)管理成為網(wǎng)絡(luò)發(fā)展中一個(gè)很重要的關(guān)鍵技術(shù)。它的重要性已經(jīng)在各方面得到體現(xiàn),并為越來越多的人所認(rèn)識。國際標(biāo)準(zhǔn)化組織(ISO)在網(wǎng)絡(luò)管理框架(ISO/IEC7498-4)中為網(wǎng)絡(luò)管理定義了配置管理、性能管理、故障管理、安全管理和計(jì)費(fèi)管理這五大功能。根據(jù)國際網(wǎng)絡(luò)服務(wù)組織(International Network Service, INS)在世界范圍內(nèi)統(tǒng)計(jì)的結(jié)果顯示:性能管理已經(jīng)超過故障管理,成為網(wǎng)絡(luò)管理中最重要的功能和研究重點(diǎn)之一。本文主要利用多Agent技術(shù)與遞階控制理論對網(wǎng)絡(luò)性能管理體系進(jìn)行研究,通過各部分的相互協(xié)商與合作實(shí)現(xiàn)網(wǎng)絡(luò)性能遞階控制模型。
目前計(jì)算機(jī)網(wǎng)絡(luò)管理體系主要有基于SNMP的集中式管理和分布式管理兩種不同方式,在網(wǎng)絡(luò)管理實(shí)踐中、這兩種方式均表現(xiàn)出一定的優(yōu)勢和不足。傳統(tǒng)網(wǎng)絡(luò)管理體系是基于SNMP的集中式管理,它由一個(gè)管理者對整個(gè)網(wǎng)絡(luò)的運(yùn)行進(jìn)行管理、負(fù)責(zé)處理所有代理上的管理信息。這種管理模式具有簡單、價(jià)格低和易維護(hù)等優(yōu)點(diǎn),隨著計(jì)算機(jī)網(wǎng)絡(luò)的迅速發(fā)展,這種模式存在的管理職能過于集中、管理方案過于固定以及管理功能有限而且固定等問題越來越突出。隨著Agent技術(shù)的不斷發(fā)展,分布式網(wǎng)絡(luò)管理體制獲得了國內(nèi)外學(xué)者的廣泛關(guān)注。分布式網(wǎng)絡(luò)管理的根本特性就是能容納整個(gè)網(wǎng)絡(luò)的發(fā)展、可靠、管理性能高。但是、由于控制分散、觀測分散,一方面控制的有效性不如集中式管理,而且需要完善的協(xié)議和通信機(jī)制支持;另一方面目前實(shí)際網(wǎng)絡(luò)中的設(shè)備對分布式網(wǎng)絡(luò)管理支持力度很小,僅具備小范圍的實(shí)驗(yàn)條件,實(shí)際運(yùn)行的較大網(wǎng)絡(luò)系統(tǒng)的運(yùn)行管理部門不支持提供全局或局部網(wǎng)絡(luò)的相關(guān)實(shí)驗(yàn)。對應(yīng)用而言,利用多Agent集成已有網(wǎng)絡(luò)技術(shù),將分布智能式與集中式網(wǎng)絡(luò)管理進(jìn)行優(yōu)化組合、探索新的網(wǎng)絡(luò)性能管理控制模式已經(jīng)成為研究熱點(diǎn)。這樣不僅有利于充分發(fā)揮各自的優(yōu)勢,而且拓寬了網(wǎng)絡(luò)設(shè)備的被管范圍。
2 網(wǎng)絡(luò)性能遞階控制模型
2.1 模型整體結(jié)構(gòu)
網(wǎng)絡(luò)性能的遞階控制方式是以分布式網(wǎng)絡(luò)管理方式為基礎(chǔ),同時(shí)采納了集中式網(wǎng)管的優(yōu)點(diǎn)而構(gòu)成的。將集中式網(wǎng)管的網(wǎng)絡(luò)中心作為網(wǎng)絡(luò)性能協(xié)調(diào)級,把網(wǎng)絡(luò)內(nèi)部分散的局部服務(wù)器作為網(wǎng)絡(luò)性能遞階控制級、對子系統(tǒng)實(shí)行局部分布式管理。網(wǎng)絡(luò)性能協(xié)調(diào)級只解決針對網(wǎng)絡(luò)性能遞階控制級的控制以及網(wǎng)絡(luò)性能遞階控制級之間的協(xié)調(diào)與協(xié)作問題,網(wǎng)絡(luò)性能遞階控制級分別代表網(wǎng)絡(luò)的不同區(qū)域,通過內(nèi)部的局部控制級以及與其他遞階控制級的協(xié)作完成子系統(tǒng)內(nèi)部的性能管理。和分布式網(wǎng)絡(luò)管理一樣,網(wǎng)絡(luò)性能遞階控制的技術(shù)基礎(chǔ)是多Agent理論。網(wǎng)絡(luò)性能遞階控制系統(tǒng)內(nèi)部以自治Agent為組織單元,根據(jù)功能不同分為五大類:監(jiān)測Agent、分析預(yù)測Agent、控制Agent、通信Agent和環(huán)境Agent。
圖1是利用1臺Catalyst 4507交換機(jī)、3臺Catalyst 3550交換機(jī)、9臺Catalyst 2950交換機(jī)和22臺主機(jī)搭建的網(wǎng)絡(luò)性能遞階控制的局域網(wǎng)實(shí)驗(yàn)環(huán)境。該網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)實(shí)質(zhì)是一種金字塔控制結(jié)構(gòu):Catalyst 2950交換機(jī)為第一級局部控制級,它直接完成網(wǎng)絡(luò)各局部的性能監(jiān)測、分析預(yù)測;Catalyst 3550為第二級遞階控制級,實(shí)現(xiàn)對第一級各子系統(tǒng)進(jìn)行控制以及完成與其他遞階控制級的協(xié)作,這兩級稱為本地控制系統(tǒng);Catalyst 4507為第三級協(xié)調(diào)控制級,它根據(jù)網(wǎng)管系統(tǒng)的總目標(biāo)對第二級進(jìn)行控制,完成網(wǎng)絡(luò)性能管理的總?cè)蝿?wù)。
這種結(jié)構(gòu)的實(shí)質(zhì)是對分散的子系統(tǒng)實(shí)行局部分布式管理的基礎(chǔ)上再加一個(gè)網(wǎng)絡(luò)性能協(xié)調(diào)級,以解決網(wǎng)絡(luò)系統(tǒng)的整體管理控制以及子系統(tǒng)之間的協(xié)調(diào)與協(xié)作問題。網(wǎng)絡(luò)協(xié)調(diào)級一方面是一個(gè)協(xié)調(diào)器,能對局部遞階控制級的環(huán)境Agent提供協(xié)調(diào)信息,當(dāng)需要其他局部遞階控制級進(jìn)行協(xié)作控制時(shí)直接通過網(wǎng)絡(luò)協(xié)調(diào)級聯(lián)系適合的合作者。這種方式與分布式網(wǎng)絡(luò)管理相比,大大提高了局部遞階控制級間相互協(xié)作的效率。另一方面是一個(gè)管理器,能在宏觀上控制管理整個(gè)網(wǎng)絡(luò)發(fā)生的性能異常情況,處理黑客對網(wǎng)絡(luò)的入侵和網(wǎng)內(nèi)出現(xiàn)的局部病毒散播。網(wǎng)絡(luò)協(xié)調(diào)級的這兩方面作用使整個(gè)網(wǎng)絡(luò)系統(tǒng)能在各局部分布式管理實(shí)現(xiàn)局部最優(yōu)化的同時(shí)達(dá)到全局最優(yōu)化。
2.2 遞階控制過程
網(wǎng)絡(luò)性能遞階控制模型將本地控制系統(tǒng)的各Agent分布在網(wǎng)絡(luò)中的不同位置,當(dāng)網(wǎng)絡(luò)中某節(jié)點(diǎn)處流量異常、需要控制的時(shí)候,鄰近節(jié)點(diǎn)的Agent能夠自組織起來,按照預(yù)定的策略、通過協(xié)商來合理控制流量,從而避免異常的發(fā)生。
⑴ 本地控制系統(tǒng)主要由五個(gè)Agent構(gòu)成:監(jiān)測Agent、分析預(yù)測Agent、控制Agent、通信Agent、環(huán)境Agent,系統(tǒng)中第一層局部控制功能是通過監(jiān)測Agent與分析預(yù)測Agent的合作把性能異常情況傳給遞階控制級的控制Agent;控制Agent負(fù)責(zé)構(gòu)建專家系統(tǒng),并將性能分析的結(jié)果與專家系統(tǒng)規(guī)則的前件進(jìn)行比較,根據(jù)知識規(guī)則的后件采取相應(yīng)的控制策略。
⑵ 局部遞階控制級與網(wǎng)絡(luò)協(xié)調(diào)級之間的通信非常重要,利用各個(gè)Agent系統(tǒng)中的環(huán)境Agent和通信Agent實(shí)現(xiàn)通信。
⑶ 網(wǎng)絡(luò)性能遞階控制策略:當(dāng)局部遞階控制級無法采取有效的措施時(shí),首先由局部遞階控制級的通信Agent通過網(wǎng)絡(luò)協(xié)調(diào)級獲取周邊局部遞階控制級的性能參數(shù),并報(bào)告給控制Agent,通過合同網(wǎng)協(xié)議決定與哪些局部遞階控制級合作,然后利用通信Agent向指定局部遞階控制級統(tǒng)發(fā)送消息,收到消息的局部遞階控制級便按照消息的內(nèi)容采取相應(yīng)的本地控制,控制完成后,收到消息的局部遞階控制級Agent系統(tǒng)利用自己的通信Agent再返回消息,依次循環(huán),直到異常狀況消除為止或者向網(wǎng)管人員發(fā)出報(bào)警信息。
3 遞階控制模型的實(shí)現(xiàn)
考慮通過JBuilder環(huán)境開發(fā)程序便于把握整個(gè)程序各部分之間的關(guān)系;同時(shí)JBuilder通過其特有的數(shù)據(jù)庫應(yīng)用開發(fā)架構(gòu)和大量高級數(shù)據(jù)庫應(yīng)用的API,為數(shù)據(jù)庫應(yīng)用開發(fā)人員提供了更為便捷的開發(fā)環(huán)境技術(shù)。因此本文采用JBuilder集成開發(fā)環(huán)境實(shí)現(xiàn)基于多Agent的網(wǎng)絡(luò)性能遞階控制模型的軟件開發(fā)。
3.1 監(jiān)測Agent
在網(wǎng)絡(luò)性能遞階控制系統(tǒng)中、每個(gè)局部遞階控制級都有一個(gè)監(jiān)測Agent,主要完成網(wǎng)絡(luò)性能監(jiān)測。鑒于性能管理實(shí)際上是數(shù)據(jù)流(數(shù)據(jù))管理,本模塊利用基于SNMP的端口流量監(jiān)測和基于數(shù)據(jù)包捕獲的流量數(shù)據(jù)監(jiān)測思想,定期提取交換機(jī)、路由器等網(wǎng)絡(luò)關(guān)鍵設(shè)備的流量數(shù)據(jù),將收集的各種歷史數(shù)據(jù)和實(shí)時(shí)數(shù)據(jù)在傳入MIB便于進(jìn)行分析預(yù)測的同時(shí)、以圖形方式直觀顯示出來,實(shí)時(shí)對網(wǎng)絡(luò)運(yùn)行情況進(jìn)行觀察。在本文采用的開發(fā)環(huán)境中通過SOCKETS技術(shù)或JAVABEAN技術(shù)實(shí)現(xiàn)監(jiān)測Agent。
3.2 分析預(yù)測Agent
在網(wǎng)絡(luò)性能遞階控制系統(tǒng)中、每個(gè)局部遞階控制級的分析預(yù)測Agent主要對監(jiān)測Agent獲取的流量數(shù)據(jù)進(jìn)行局部網(wǎng)絡(luò)性能分析與預(yù)測:計(jì)算帶寬利用率和丟包率等網(wǎng)絡(luò)性能指標(biāo),同時(shí)利用混沌理論和人工神經(jīng)網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)挖掘、實(shí)現(xiàn)性能預(yù)測,并歸納出網(wǎng)絡(luò)性能異常的閾值條件。
3.3 本地控制Agent
每個(gè)局部遞階控制級均有一個(gè)控制Agent,它是局部遞階控制級中其他Agent的上級,負(fù)責(zé)控制其他Agent。當(dāng)網(wǎng)絡(luò)性能分析預(yù)測Agent分析出網(wǎng)絡(luò)將要發(fā)生性能異?;蛘吖收蠒r(shí),就向控制Agent發(fā)出通知,讓其負(fù)責(zé)解決。每個(gè)控制Agent都有自己的知識庫,里面存放針對不同故障表象而應(yīng)該采取何種措施的規(guī)則。當(dāng)控制Agent接收到異?;蛘咤e(cuò)誤信息后,就查詢知識庫,看著自己是否能在本地解決,如果能夠,就按照知識庫中所匹配的規(guī)則來執(zhí)行相應(yīng)的操作。本文通過三種方式實(shí)現(xiàn)本地控制Agent的功能。
⑴ 根據(jù)防火墻的流量控制功能用vi編輯器編寫iptables防火鏈,以阻止非法服務(wù)或關(guān)閉端口,達(dá)到性能異??刂频哪康?。
⑵ 利用負(fù)載均衡技術(shù)中的NAT負(fù)載均衡將一個(gè)外部IP地址映射為多個(gè)內(nèi)部IP地址,對每次鏈接請求動(dòng)態(tài)轉(zhuǎn)換為一個(gè)內(nèi)部服務(wù)器地址,將外部鏈接請求引到轉(zhuǎn)換得到地址的服務(wù)器上,從而實(shí)現(xiàn)負(fù)載均衡的目標(biāo)。
⑶ 在MVC模式的JSP中輸入要進(jìn)行控制的參數(shù),利用JAVABEAN中建立的套接字與內(nèi)核態(tài)的netlink通信傳遞參數(shù)。
3.4 環(huán)境Agent
環(huán)境Agent保存了本局部遞階控制級的基本信息和整個(gè)網(wǎng)絡(luò)的主要信息,當(dāng)本局部遞階控制級需要尋求協(xié)作伙伴的時(shí)候,必須首先詢問環(huán)境Agent,利用環(huán)境Agent可以獲得任意局部控制級的各種信息,從而尋找可能為其提供幫助的局部遞階控制級。本文主要通過RMI技術(shù)或SOCKETS套接字來獲取相應(yīng)的環(huán)境參數(shù)。
3.5 通信Agent
通信Agent主要是幫助不同局部遞階控制級進(jìn)行協(xié)商并傳遞網(wǎng)絡(luò)性能協(xié)調(diào)級的相應(yīng)指令。通信Agent包括兩條隊(duì)列:輸出隊(duì)列與輸入隊(duì)列,能夠在發(fā)送消息的同時(shí)接收來自其他節(jié)點(diǎn)的消息。通信Agent可以通過SOCKETS套接字實(shí)現(xiàn)客戶端程序與服務(wù)器端程序的參數(shù)以及對象傳遞的方式進(jìn)行。
3.6 網(wǎng)絡(luò)性能協(xié)調(diào)級的實(shí)現(xiàn)
當(dāng)局部遞階控制級不能解決本部分出現(xiàn)的性能異常時(shí),由通信Agent向網(wǎng)絡(luò)協(xié)調(diào)級通信,網(wǎng)絡(luò)協(xié)調(diào)級將通過環(huán)境Agent和通信Agent尋找適合的局部遞階控制級實(shí)現(xiàn)協(xié)作。為保證遞階控制系統(tǒng)的問題求解能力和效率,本文按照合同網(wǎng)協(xié)議來構(gòu)建網(wǎng)絡(luò)協(xié)調(diào)級與各局部遞階控制級的協(xié)調(diào)與合作。
針對網(wǎng)絡(luò)管理的不同問題,網(wǎng)絡(luò)協(xié)調(diào)級派遣不同局部遞階控制級來處理不同問題,每個(gè)局部遞階控制級都是一個(gè)獨(dú)立的線程。這樣在同一時(shí)間內(nèi)網(wǎng)絡(luò)協(xié)調(diào)級就可以同時(shí)處理多個(gè)網(wǎng)管問題。這些不同的局部遞階控制級模塊必須向網(wǎng)絡(luò)協(xié)調(diào)級報(bào)告最新情況,由其統(tǒng)一管理。尤其是當(dāng)出現(xiàn)某些性能、故障問題的界限比較模糊時(shí),一個(gè)問題可能同時(shí)需要多個(gè)局部遞階控制級去解決,這時(shí)需要網(wǎng)絡(luò)協(xié)調(diào)級統(tǒng)一調(diào)配,以節(jié)省系統(tǒng)資源。
4 結(jié)論
在遞階控制理論和多Agent技術(shù)的基礎(chǔ)上,本文提出一種網(wǎng)絡(luò)性能遞階控制模型。該方法克服了傳統(tǒng)網(wǎng)絡(luò)管理進(jìn)行性能異??刂频木窒扌裕菍W(wǎng)絡(luò)性能集中管理與分布式管理的優(yōu)化組合,適合完成較大規(guī)模網(wǎng)絡(luò)的性能異常控制。局域網(wǎng)環(huán)境的實(shí)踐證明:本系統(tǒng)能提高網(wǎng)絡(luò)利用率,實(shí)現(xiàn)網(wǎng)絡(luò)優(yōu)化,具有廣泛的市場前景。
參考文獻(xiàn)
[1]郭軍.網(wǎng)絡(luò)管理[M].北京:北京郵電大學(xué)出版社,2008.
[2]LI M, SANDRASEGARAN K. Network Management Challenges for Next Generation networks[A]. The IEEE Conference on Local Computer Networks 30th Anniversary (LCN'05)[C]. Sydney, Australia; IEEE Computer Society, 2005, 11.593-598.
[3]THOTTAN M, JI C. Anomaly Detection in IP Networks[J]. IEEE Transactions on signal processing. 2003,51(8):2192-2204.
[4]張宏莉,方濱興. Internet測量與分析綜述[J].軟件學(xué)報(bào),2003,14(01):110-116.
[5]鄒松.基于多Agent系統(tǒng)的網(wǎng)絡(luò)擁塞控制方法的研究與實(shí)現(xiàn)[D].武漢:武漢大學(xué),2004.
[6]何炎祥,陳萃萌.Agent和多Agent系統(tǒng)的設(shè)計(jì)與應(yīng)用[M].武漢:武漢大學(xué)出版社,2001.