涂婷婷,李德軍
(中國電子科技集團公司第三十研究所,成都610041)
通信網絡管理的主要任務是對網絡進行實時監控,確保網絡在日常運行中的穩定、高效和可靠。隨著通信技術的快速發展和業務量的增長,網絡運行告警規模與頻度也相應增長。特別是在大型復雜異構型網絡中,判斷引發設備告警的原因更加復雜,需要投入大量的人力物力進行監控。如何對海量的告警數據進行分析和判斷,找出根源故障成為當前研究的熱點。
在當前的研究中,一是通過研究網絡告警數據的分布特性,提出使用多等級告警處理模型從而提升故障關聯分析效率的方法;
二是提出使用神經網絡對告警數據進行分類,實現對網絡告警分析的方法。在本研究中提出了采用故障規則推理引擎,分析現有告警數據,挖掘出根源故障從而提高故障診斷率的方法。
規則引擎最初來源于專家系統。該系統屬于人工智能領域,用于人類推理方式的模擬,通過使用探索方法實現推理并證明這種推理的過程。規則引擎是基于規則方式實現推理的一種重要引擎。該引擎的規則依托一階邏輯呈現的二元結構,其關注準確表達命題和一階邏輯表達,不能含有模糊定義。規則引擎能夠用于處理大量規則的推理場景,并將事實數據與產生式規則匹配,最后通過推理獲得結論[1]。
規則引擎是由規則庫、推理機以及事實這三大部分共同構成,如圖1 所示。

圖1 規則引擎結構示意圖
規則庫能夠用于推理規則的儲存,規則是由結論、條件構成的語句,當滿足該條件時能夠激活結論。推理機能夠實現引擎匹配,決定符合事實的規則,并設置規則優先級,符合條件的規則會被加入當前議程中。事實是指對象之間的多元關系。
模式匹配器可決定規則匹配的方式,議程用于管理模式匹配器挑選規則的執行次序,執行引擎可用于規則執行。
規則引擎可以通過規則維護人員根歷史據經驗對告警分析歸納并形成規則或者對告警數據進行挖掘和案例學習后形成規則。規則形成后,推理引擎通過算法匹配決定執行順序。從一定程度上來看,規則條件、匹配效率直接影響引擎性能。推理引擎需要迅速檢測工作區域中的數據對象,從規則中找到符合相應條件的規則進行數據分析。大部分規則引擎產品的算法都來自于Charles Forgy 博士于1979 年提出Rete 算法及其變體。Rete 匹配算法是目前效率最高的一個前向鏈形推理算法,其核心思想是將分離的匹配項根據內容動態構造匹配樹,以達到顯著降低計算量的效果[2]。
規則引擎的具體推理流程如下:
①將初始數據(事實)輸入推理機中;
②利用模式匹配器比較規則庫中的數據和規則;
③如果執行規則存在沖突,即同時激活了多個規則,將沖突的規則放入沖突集合;
④解決沖突,將激活的規則按順序放入議程中;
⑤使用執行引擎執行相應的規則,直到所有規則執行完成。
基于規則引擎故障診斷系統主要由兩部分構成:規則管理模塊和故障處理模塊,如2 圖所示。
①規則管理模塊通過對故障規則庫的維護實現對規則的管理工作。對故障規則庫的維護分為手工編輯和自動學習兩種方式。手動編輯是依靠規則維護人員通過規則維護平臺,依據專家經驗手動定義、編輯產生故障關聯規則。自動學習是依靠對海量告警信息進行數據挖掘和對樣本長期案例學習,自動形成故障關聯規則的方式。
②故障處理模塊主要用于故障的關聯診斷。規則處理引擎關聯各方資源對告警信息實現分析處理,準確定位網絡中存在的故障問題,找到故障原因,發布分析預警信息,降低網絡故障對整個網絡運行產生的不利影響。其主要部件包括:第一,規則處理引擎。其是系統的核心。通過獲取告警、拓撲信息并與故障關聯規則實現邏輯判斷,最終分析出產生告警的根源故障以及該故障在整個網絡中的具體位置,并將其錄入信息庫中。同時,規則處理引擎能夠實現信息壓縮、合并處理,過濾一些重復性的告警信息。第二,故障工單處置。對規則引擎分析出的故障結果保存到故障信息庫中,由故障專家判斷后,交由故障工單處理模塊按相應步驟完成故障處理。典型故障工單處理流程如下所示:首先,需要對分析結果進行故障確認。一旦被確認為是故障問題,則會自動生成故障工單,并交由相應的故障維修人員。其次,故障維修人員在簽收故障工單之后開展專業性故障處理,完成故障維修后填寫故障回執單。最后,由管理員確認后即可完成整個故障處理。

圖2 規則引擎的系統結構示意圖

圖3 故障工單處理流程圖
本系統可以通過手動編輯或者自動學習兩種方式形成故障關聯診斷規則。生產的規則還需要專家經驗判斷形成最終的診斷規則[3]。
表1 為一條自動生成的光纜阻斷告警轉故障的規則。如果該告警源為非波分系統群路盤發生光信號告警,同時,與其相關的對端非波分群路盤會發生遠端接收失效告警,這種情況下可以判斷為連接兩個機盤的單纜阻斷。生成的故障,屬于緊急故障,無需考慮故障閃斷時間。

表1 單纜阻斷告警轉故障規則
利用規則推理的方法對通信網絡設備進行故障相關性研究,設計故障關聯推理規則,獲得一些有價值的告警規則和定位根源告警信息,結合網絡拓撲結構圖表明所挖掘的關聯規則的合理性,并通過這些告警規則分析通信網絡存在的新告警信息,推測告警原因已經成為故障根源分析技術的一種通用性做法。
在本研究中所設計的故障診斷系統目前已經應用于通信網管理系統的故障診斷中。首先通過信息采集設備采集和檢測通信網故障告警信息;其次利用本系統對海量故障告警信息關聯定位分析;再次根據通信網故障專家的故障確認,形成故障工單;最后由專業的故障維修人員進行故障處置[4]。
根據通信網故障專家和工作人員的實際經驗,針對目前通信網的故障問題可以將其分為線路故障、端口故障、光纜阻斷,路由器故障等。系統在實際應用場景中,對現場運行結果進行統計,針對19 類共2609 個網元,一周63224 條原始告警信息和一個月143316 條告警信息進行了詳細地對比分析試驗,利用該系統對故障的診斷正確率可達到90%以上。
雖然本研究當前階段已經初步實現了故障的采集、分類、診斷和預測,但是還存在比較大的提升空間。主要問題包括:①大量的關聯規則還需要由人工制定;②對海量數據的關聯規則樣本學習和數據挖掘的結果還未實現完全的自動化,還需根據專家經驗進行人工干預和判斷準確性;③對當前火熱的數據挖掘技術的研究和探尋還不足;④對故障工單的制定和派發也需要人工的介入,未能實現工單的自動生成,派發過程也未實現智能化。對于這些問題在未來還需要進一步研究和補充,為本故障診斷系統指明未來的研究方向。
通信技術不斷發展,由于通信網拓撲結構復雜,尤其是在大型復雜異構型網絡中,利用網絡拓撲信息進行故障分析的傳統方法在海量告警信息風暴下,應用難度越來越大。研制和優化故障分析診斷系統是無可辯駁的發展趨勢。本系統能夠協助專業網管系統提高故障關聯診斷能力,幫助工作人員及時發現網絡故障問題,有效降低診斷時間,以提升網絡運行的可靠性。未來本系統還需要進一步提高故障關聯診斷率,加強故障診斷的準確性。