《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 多主體智能故障管理模型在ACR中的應(yīng)用研究

多主體智能故障管理模型在ACR中的應(yīng)用研究

2008-06-10
作者:朱 玉,,邢朝華,,張 研

  摘 要: 研究了多主體智能故障管理模型的結(jié)構(gòu)及系統(tǒng)構(gòu)成并給出了模型功能的實(shí)現(xiàn),。
  關(guān)鍵詞: 主體 智能 故障管理 模型


  隨著網(wǎng)絡(luò)規(guī)模的不斷擴(kuò)大,,網(wǎng)絡(luò)的維護(hù)和操作變得相當(dāng)復(fù)雜,。如何保證網(wǎng)絡(luò)安全,、穩(wěn)定和可靠地運(yùn)行,一直是網(wǎng)絡(luò)管理領(lǐng)域的熱門研究課題,。
  故障管理是網(wǎng)絡(luò)管理體系結(jié)構(gòu)的一個(gè)重要組成部分,,主要包括檢測、隔離,、確定故障因素,、糾正故障等功能。設(shè)立故障管理的目標(biāo)是提高網(wǎng)絡(luò)可用性,,降低網(wǎng)絡(luò)停機(jī)次數(shù)并迅速修復(fù)故障,。作為高速骨干網(wǎng)絡(luò)上運(yùn)行的T比特路由器,對它進(jìn)行故障管理,,以便在路由器發(fā)生故障時(shí)及時(shí)進(jìn)行修復(fù),,避免影響網(wǎng)絡(luò)的使用。
  大規(guī)模匯聚接入路由器(ACR)系統(tǒng)中包括多個(gè)設(shè)備,,而各個(gè)設(shè)備又是相互關(guān)聯(lián)的,,一個(gè)設(shè)備的故障同時(shí)可能會(huì)引起另外一個(gè)或多個(gè)設(shè)備故障的發(fā)生,從而可能會(huì)導(dǎo)致整個(gè)網(wǎng)絡(luò)癱瘓,。傳統(tǒng)的故障管理方法只能對單設(shè)備故障進(jìn)行有效的管理,,對多設(shè)備的關(guān)聯(lián)故障不能及時(shí)地進(jìn)行診斷及恢復(fù),不能保證網(wǎng)絡(luò)的正常運(yùn)行,。
1 與現(xiàn)有故障管理技術(shù)" title="故障管理技術(shù)">故障管理技術(shù)的比較
  目前,,研究故障診斷" title="故障診斷">故障診斷的方法主要有兩種類型:專家系統(tǒng)方法和人工神經(jīng)網(wǎng)絡(luò)" title="人工神經(jīng)網(wǎng)絡(luò)">人工神經(jīng)網(wǎng)絡(luò)方法。專家系統(tǒng)是在宏觀功能上模擬人的知識(shí)推理能力,是以邏輯推理為基礎(chǔ)模擬人類思維的符號(hào)主義人工智能方法,,它是基于邏輯演繹的,,對知識(shí)的處理所模擬的是人的邏輯思維機(jī)制。人工神經(jīng)網(wǎng)絡(luò)則是在微觀上模擬人的認(rèn)識(shí)能力,,是以連接結(jié)構(gòu)為基礎(chǔ),,通過模擬人類大腦結(jié)構(gòu)來模擬人類形象思維,它是基于集體計(jì)算的,,對知識(shí)的處理所模擬的是人的邏輯思維機(jī)制,。智能故障管理的研究一般集中在專家系統(tǒng)上,然而它不能適應(yīng)新的或不完備的數(shù)據(jù),,不能處理概率問題,,這使它很難應(yīng)用于大型動(dòng)態(tài)網(wǎng)絡(luò)。
  現(xiàn)有的智能故障管理技術(shù)主要有以下三個(gè)缺點(diǎn):
  (1)目前智能故障管理的研究主要集中在專家系統(tǒng)上,,不能適應(yīng)新的或不完備的數(shù)據(jù),,很難應(yīng)用于大型動(dòng)態(tài)網(wǎng)絡(luò)。
  (2)故障診斷的專家系統(tǒng)主要采用一種技術(shù),,實(shí)際應(yīng)用范圍較窄,。
  (3)主要進(jìn)行故障診斷,不支持故障自動(dòng)恢復(fù),。
  主體(Agent)是指能在動(dòng)態(tài)的多" title="的多">的多Agent領(lǐng)域采取靈活,、自治活動(dòng)的計(jì)算機(jī)實(shí)體,智能Agent是具有實(shí)時(shí)處理多維信息,、相互作用和能有效傳遞信念,、意圖等智能的自治的軟件實(shí)體。它具有智能性,、自治性,、靈活性、開放性,、適應(yīng)性,、協(xié)作性和推理機(jī)制等特性。
  智能Agent的內(nèi)部行為表現(xiàn)為:通信管理器接收外部環(huán)境的信息,,由推理機(jī)根據(jù)這些信息和Agent狀態(tài),,進(jìn)行分析和理解,形成與其他Agent相一致的協(xié)同工作方式,,并按該方式及自身能力(知識(shí)水平等),,執(zhí)行相關(guān)的動(dòng)作,形成Agent新的狀態(tài),,由此而進(jìn)一步引起新的Agent推理活動(dòng),。智能Agent的活動(dòng)行為是主動(dòng)進(jìn)行的,Agent的推理機(jī)每隔一時(shí)間片都要檢測通信狀態(tài)和自身狀態(tài),以確定其推理活動(dòng)的趨勢,。
  同傳統(tǒng)的故障管理技術(shù)相比,,智能Agent故障管理模型具有下面三個(gè)優(yōu)點(diǎn):
  (1)將多Agent技術(shù)應(yīng)用于復(fù)雜故障診斷領(lǐng)域,對診斷任務(wù)辨識(shí),、分解,,綜合利用各Agent的內(nèi)部診斷機(jī)制,通過各Agent間的交互,、協(xié)作,,對故障進(jìn)行診斷,使故障診斷技術(shù)能應(yīng)用于大型動(dòng)態(tài)網(wǎng)絡(luò)及各種復(fù)雜設(shè)備,。
  (2)各診斷Agent間綜合利用多種智能故障技術(shù),,以便能對多數(shù)故障進(jìn)行診斷。
  (3)通過故障診斷結(jié)果,,增加故障恢復(fù)模塊,,對故障進(jìn)行自動(dòng)恢復(fù)。
2 智能故障管理的模型
2.1 故障管理流程

  故障管理主要包括故障發(fā)現(xiàn),、故障診斷和故障恢復(fù)三個(gè)部分,。故障管理的流程如圖1所示。


2.2 智能故障管理的自動(dòng)機(jī)模型
  智能故障管理的狀態(tài)機(jī)模型如圖2所示,。


  模型用BNF形式化表示如下:
 ?。碱I(lǐng)域經(jīng)驗(yàn)知識(shí)>∷=<領(lǐng)域經(jīng)驗(yàn)知識(shí)頭><領(lǐng)域經(jīng)驗(yàn)知識(shí)體>
 ?。碱I(lǐng)域經(jīng)驗(yàn)知識(shí)頭>∷=<領(lǐng)域經(jīng)驗(yàn)知識(shí)名>[<經(jīng)驗(yàn)知識(shí)代碼>][<知識(shí)庫名>][<說明表>]
 ?。碱I(lǐng)域經(jīng)驗(yàn)知識(shí)體>∷=IF{<前提條件><運(yùn)算符>}+THEN<結(jié)論>
  <前提條件>∷=項(xiàng),、變量或用戶定義的表達(dá)式名
 ?。歼\(yùn)算符>∷=AND|OR
  <結(jié)論>∷=表達(dá)式
  這一描述完全揭示了模型的三級信息形式,,即模型的用戶視圖,、概念結(jié)構(gòu)和可運(yùn)行實(shí)體。
3 智能Agent框架結(jié)構(gòu)
  依據(jù)智能Agent的內(nèi)部行為表現(xiàn),,為完成故障的實(shí)時(shí)監(jiān)控,、診斷及恢復(fù)功能,采用圖3所示的結(jié)構(gòu)來構(gòu)成智能Agent,,內(nèi)部結(jié)構(gòu)采用統(tǒng)一模式來描述,。


  通過上述定義可知,Agent是具有特定領(lǐng)域知識(shí)和問題求解能力,,能自主工作和具有協(xié)作交互能力的智能實(shí)體,,具有知識(shí)、模型和數(shù)據(jù)處理能力,基于Agen的語言L而進(jìn)行多Agent間復(fù)合問題求解規(guī)劃過程,。Agent可由各Web節(jié)點(diǎn)組合而成,,具有很好的可擴(kuò)展性和通用性。
4 智能Agent系統(tǒng)構(gòu)成
  模型結(jié)構(gòu)構(gòu)成如圖4所示,。


  下面對結(jié)構(gòu)中的相關(guān)部分進(jìn)行簡要的介紹:
  (1)通信接口" title="通信接口">通信接口
  通信接口有兩個(gè)功能:輸入信息處理,、系統(tǒng)輸出表示。主要功能是把輸入信息轉(zhuǎn)變?yōu)橄鄳?yīng)的知識(shí)查詢與操縱語言KQML(Knowledge Query and Manipulation Language)消息格式進(jìn)行發(fā)送,,同時(shí)還負(fù)責(zé)顯示系統(tǒng)的處理結(jié)果或信息,。通信接口的設(shè)計(jì)要注意應(yīng)用重用性。
  (2)信息獲取Agent
  故障信息管理不只是一個(gè)簡單的集中式數(shù)據(jù)庫和知識(shí)庫,,而且信息的格式也可能不同,,因此信息的獲取就顯得非常重要。信息獲取Agent封裝了信息的存取過程,,通過KQML與外界交互信息,,內(nèi)部采用JDBC、ODBC等方式存取信息。
  (3)任務(wù)管理Agent
  任務(wù)管理Agent主要包括信息預(yù)處理、任務(wù)分解及任務(wù)控制等,。
  信息預(yù)處理主要是信息的過濾,、分類和關(guān)聯(lián)。
  信息過濾,,是指將采集到的故障信息根據(jù)定義的規(guī)則進(jìn)行過濾,去除無關(guān)的告警信息的動(dòng)作。廣義地,,可以指從多個(gè)告警中過濾出少數(shù)告警的任何動(dòng)作。
  信息分類,,是指將告警信息按照告警等級進(jìn)行分類,,根據(jù)告警信息的等級及策略優(yōu)先級決定處理的順序。
  信息關(guān)聯(lián),,是指從大量的告警信息中發(fā)現(xiàn)頻繁出現(xiàn)的項(xiàng)集模式知識(shí),,通過剔除不必要和不相關(guān)的信息,提高信息的語義表達(dá),,幫助找出產(chǎn)生事件的真正問題或條件,。
  任務(wù)分解的原則是診斷子任務(wù)目標(biāo)明確,并且使子任務(wù)間的耦合盡量少,,以簡化完成子任務(wù)的診斷Agent之間的協(xié)作和通信,。一般來說,在高層(粗粒度上)多采用結(jié)構(gòu)分解,,而底層(細(xì)粒度上)多采用故障分解,,這與人們一般的診斷思路相一致,。這種綜合分解可以一直進(jìn)行到設(shè)備某個(gè)基本結(jié)構(gòu)的一個(gè)明確的故障問題。這種目標(biāo)明確的診斷子任務(wù)稱為診斷活動(dòng),。診斷活動(dòng)與一般的診斷子任務(wù)的區(qū)別是診斷活動(dòng)包含明確的故障診斷操作,。對診斷領(lǐng)域問題進(jìn)行分布式任務(wù)分解,將得到一個(gè)層次結(jié)構(gòu)清晰的診斷任務(wù)樹,。
  當(dāng)某故障問題的診斷可能或必須通過多個(gè)診斷Agent協(xié)作完成時(shí),,必須考慮多個(gè)診斷Agent間的協(xié)調(diào)與合作問題。對于某診斷任務(wù),,各個(gè)診斷Agent具有不同的性能,。因此須選擇耗費(fèi)系統(tǒng)資源最少、診斷效果最好的診斷Agent來完成診斷任務(wù),。這就是診斷Agent的協(xié)調(diào)問題,。量化診斷Agent診斷性能是解決Agent間協(xié)調(diào)問題的關(guān)鍵。另外,,對于復(fù)雜的故障論斷問題須基于多Agent的思想,,將其分解并運(yùn)用多種故障診斷方法協(xié)同完成,這就是多診斷Agent間的使用問題,。為了完成共同診斷任務(wù)而合作的診斷Agent的集體形成一個(gè)診斷Agent聯(lián)盟,。這要求每個(gè)Agent對其他Agent的功能、效率有較詳細(xì)的了解,。因此,,在設(shè)計(jì)時(shí)要把其他Agent的資料放在Agent的數(shù)據(jù)庫內(nèi),并且Agent自身能夠根據(jù)實(shí)際情況對數(shù)據(jù)庫進(jìn)行修改,,根據(jù)這些資料選擇合作對象,。
  (4)診斷Agent
  診斷Agent實(shí)現(xiàn)各種具體的分析和診斷算法。包含F(xiàn)FTr Agent,、小波分析Agent,、時(shí)序模型Agent等分析方法以及神經(jīng)網(wǎng)絡(luò)Agent,、遺傳算法Agent,、專家系統(tǒng)Agent等智能診斷模型。診斷Agent同時(shí)對知識(shí)庫進(jìn)行管理,。
  (5)用戶界面Agent
  用戶界面Agent的主要功能是代替?zhèn)鹘y(tǒng)智能決策系統(tǒng)中的問題與人機(jī)交互系統(tǒng)來與用戶進(jìn)行交互,。它采用一種間接管理風(fēng)格。在基于該模型的系統(tǒng)中,,用戶只需給出大概的指導(dǎo)即可以控制系統(tǒng)的運(yùn)行,,而無須顯式地告訴計(jì)算機(jī)具體的行為。由于Agent本身具有面向目標(biāo)(即能夠展現(xiàn)出一種導(dǎo)向目標(biāo)的行為)和協(xié)作性(可協(xié)商)的特點(diǎn),,因此它可以針對不同用戶進(jìn)行不同的處理,。用戶界面Agent可以針對不同的用戶進(jìn)行個(gè)性化處理,,從而能夠適應(yīng)于特定用戶的特定行為。當(dāng)它能夠確定用戶在某個(gè)特定的情況下將如何作出反應(yīng)時(shí),,它就開始替代或者幫助用戶完成相應(yīng)的任務(wù),。
  (6)故障恢復(fù)Agent
  根據(jù)診斷Agent給出的診斷結(jié)果及方法對故障進(jìn)行恢復(fù),可通過自動(dòng)恢復(fù)腳本或POST方法實(shí)現(xiàn),。
  (7)系統(tǒng)功能的實(shí)現(xiàn)
  面向Agent的軟件機(jī)制是設(shè)計(jì)各應(yīng)用領(lǐng)域的多Agent的軟件技術(shù)基礎(chǔ),,包括面向Agent的分布式軟件協(xié)議(CORBA、COM/DCOM),、Agent間的通信語言KQML,、面向Agent的開發(fā)環(huán)境平臺(tái)以及面向Agent的程序設(shè)計(jì)(AOP)等。
  系統(tǒng)可采用CORBA來實(shí)現(xiàn)診斷Agent間的通信,,CORBA的平臺(tái)無關(guān)性和語言無關(guān)性對多Agent智能故障診斷及恢復(fù)的實(shí)現(xiàn)至關(guān)重要,,不考慮操作系統(tǒng)和編程語言的差異將大大減輕系統(tǒng)開發(fā)的工作量。
  KQML是用來實(shí)現(xiàn)各Agent交互的消息格式和消息處理協(xié)議,。它使得Agent能夠和其他的Agent以及Agent所運(yùn)行的環(huán)境進(jìn)行知識(shí)和信息的交換,。它提供了一套標(biāo)準(zhǔn)的Agent通信原語,從而使得使用這種語言的Agent之間都可以進(jìn)行交流和共享信息,。KQML定義了一種Agent之間傳遞信息的標(biāo)準(zhǔn)語法和動(dòng)作,。這些動(dòng)作主要是從Speech Act理論中演化出來的,例如tell,、perform,、reply等。雖然還有其他Agent通信語言,,但為了保證系統(tǒng)將來的兼容性,,故選擇KQML作為通信語言。另外,,KQML與Agent間的具體通信方式(如采用的協(xié)議和網(wǎng)絡(luò)的具體形式)無關(guān),,所以KQML可以有很多種實(shí)現(xiàn)方法(如通過TCP/IP或電子郵件實(shí)現(xiàn))。
  故障診斷Agent的知識(shí)庫建立和維護(hù)采用Visual Prolog開發(fā)平臺(tái),,系統(tǒng)的知識(shí)庫主要是通過人工方式建立的,,故障診斷Agent可對知識(shí)庫進(jìn)行修改和添加。
  在傳統(tǒng)智能故障管理的基礎(chǔ)上,,結(jié)合Agent技術(shù),,提出了多Agent智能故障管理模型,并給出了其實(shí)現(xiàn)方法,。該方法克服了傳統(tǒng)故障管理方法的許多不足,,大大提高了大規(guī)模匯聚接入路由器的設(shè)備及網(wǎng)絡(luò)的性能,保證了網(wǎng)絡(luò)的正常運(yùn)行,。
參考文獻(xiàn)
1 聶勤務(wù).分布式智能故障診斷模型的MAS實(shí)現(xiàn)研究[J].計(jì)算機(jī)工程與應(yīng)用,,2004,;(30)

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。