郭濤峰,張 淵,張攀翔
(中國移動通信集團廣東有限公司 廣州 510623)
隨著網絡運維管理集中化程度的進一步提高,為了從不同專業(yè)、不同維度了解和監(jiān)控移動網絡的運行情況,及時發(fā)現(xiàn)網絡運行過程中出現(xiàn)的問題,網絡維護人員及管理人員對網管系統(tǒng)不斷提出新的需求,從而導致網管集成的應用功能不斷增多,出現(xiàn)了越來越多的上層應用網管系統(tǒng),如綜合資源系統(tǒng)、綜合監(jiān)控系統(tǒng)、網絡運行分析系統(tǒng)、集中操作維護系統(tǒng)和無線網優(yōu)平臺等。
各專業(yè)網管系統(tǒng)在本專業(yè)網的維護過程中發(fā)揮了很大作用,話務網、數(shù)據(jù)網和傳輸網對數(shù)據(jù)的要求也越來越高,除了需要對本專業(yè)的數(shù)據(jù)進行分析外,更需要對跨專業(yè)數(shù)據(jù)進行分析,因此各專業(yè)網管系統(tǒng)還需要通過其他專業(yè)網管的接口獲取數(shù)據(jù)(見圖1)。為了滿足各專業(yè)網管系統(tǒng)數(shù)據(jù)的需要,各專業(yè)網管系統(tǒng)通過自己的采集模塊,按照網元端提供的接口方式(包含CORBA、FTP、file、指令等)直接從網元端采集各種數(shù)據(jù),同時按照數(shù)據(jù)要求,通過各種接口方式,觸發(fā)其他專業(yè)的底層采集程序,從網元端采集所需的資源、性能和告警數(shù)據(jù),并根據(jù)相關的元數(shù)據(jù)算法,計算匯總成相應的指標數(shù)據(jù)提供給上層應用系統(tǒng)。
圖1 各專業(yè)網管采集現(xiàn)狀
現(xiàn)有的數(shù)據(jù)采集方式存在如下缺陷:沒有統(tǒng)一的采集適配機制,各專業(yè)網管直連網元或者觸發(fā)調用另一專業(yè)網管的采集進行數(shù)據(jù)獲?。煌活愋偷臄?shù)據(jù)重復采集,采集方式眾多,各接口需要單獨維護;接口缺乏標準化、規(guī)范化,包括 CORBA、Web Services、FTP、數(shù)據(jù)庫接口表、MQ、Q3等多種接口實現(xiàn)方式;可擴展性低、重用性有限,造成IT系統(tǒng)開發(fā)維護成本大幅度上升。
針對現(xiàn)存問題,需要有一個更好的方案對不同廠商、不同型號的通信設備進行數(shù)據(jù)采集,有一個可以對這些數(shù)據(jù)進行標準化、歸一化的采集平臺,提供最大化采集效率,避免無用的重復采集,避免統(tǒng)計分析數(shù)據(jù)源不一致導致的數(shù)據(jù)質量問題,為業(yè)務發(fā)展、公司決策提供準確的分析數(shù)據(jù)。
具體分析現(xiàn)有數(shù)據(jù)的特征不難發(fā)現(xiàn),各種業(yè)務數(shù)據(jù)的業(yè)務邏輯是相對穩(wěn)定和統(tǒng)一的,因此采集的調度和頻度是統(tǒng)一的。變動變化最多、差異最大的主要是各種不同設備的采集方式及解析方法,因此可以搭建一套統(tǒng)一采集平臺,將不同設備的采集和解析以插件(plug-in)的形式實現(xiàn)統(tǒng)一調度、集中處理。新增設備或設備升級時,只開發(fā)相應的采集插件即可滿足生產需要,靈活配置相應的插件即可實現(xiàn)不同設備的統(tǒng)一采集和調度,同時按統(tǒng)一采集平臺標準開發(fā)的采集插件也有利于重復利用資源,當某個省份新增一種設備時,假如該設備已經在其他省份投入使用并開發(fā)有相應的采集插件,即可直接采用該插件進行采集,可縮短新設備接入采集平臺的時間,避免重復開發(fā),提高資源利用效率。
插件是一種遵循統(tǒng)一的預定義接口規(guī)范編寫出來的程序,應用程序在運行時通過接口規(guī)范對插件進行調用,以擴展應用程序的功能,它的特點是:當需要它的時候激活它,不需要它的時候禁用或刪除它;且無論是激活還是禁用,都不影響系統(tǒng)核心模塊的運行,也就是說插件是一種非侵入式的模塊化設計,實現(xiàn)了核心程序與插件程序的松散耦合。
圖2是基于插件技術的統(tǒng)一采集平臺數(shù)據(jù)采集的示意,主要涉及話務網管、數(shù)據(jù)網管、傳輸網管等上層網管系統(tǒng),采集平臺的采集適配池、網元/OMC等。
圖2 統(tǒng)一采集平臺系統(tǒng)示意
具體說明如下。
(1)話務網管/數(shù)據(jù)網管/傳輸網管等上層網管系統(tǒng)
話務網等上層網管系統(tǒng)為數(shù)據(jù)消費系統(tǒng),根據(jù)統(tǒng)一采集平臺提供的接口規(guī)范和插件的類定義,對相應的業(yè)務類進行擴充,開發(fā)適配模塊,以使采集適配器滿足統(tǒng)一采集適配器接口規(guī)范的要求,滿足系統(tǒng)對采集適配器的各種查詢和管理要求,同時上層網管系統(tǒng)向統(tǒng)一采集平臺發(fā)送適配器的加載(注冊)和卸載(取消)請求,同時通過類XML文件傳遞參數(shù)觸發(fā)采集動作和接收采集結果。
(2)采集適配池
采集適配池對采集適配器進行管理,包含適配器動態(tài)加載、策略接收、任務生成、任務下發(fā)、任務執(zhí)行、指標計算、結果返回等操作。
·適配器動態(tài)加載是指進行新的數(shù)據(jù)源數(shù)據(jù)接入時,能夠把新的采集適配器方便地加載到系統(tǒng)中,完成數(shù)據(jù)接入。
·策略接收負責接收數(shù)據(jù)消費系統(tǒng)訂閱的數(shù)據(jù)采集策略,并對該策略進行判重和驗證等工作。
·任務生成則根據(jù)消費系統(tǒng)訂閱的策略轉換成具體的采集任務命令。
·任務下發(fā)負責根據(jù)各采集機器的負荷情況,動態(tài)地將采集任務分發(fā)到負荷比較輕的采集機。
·任務執(zhí)行則根據(jù)采集適配器的具體連接網元方式,通過采集協(xié)議適配,執(zhí)行采集指令,獲取相應數(shù)據(jù)。
·指標計算是指根據(jù)轉換算法把原始counter值轉換為指標數(shù)據(jù),指標計算是不借助外部資源數(shù)據(jù)、不發(fā)生時間、空間粒度變化的處理。
·結果返回是指計算完成后生成指定格式的文件或消息,將數(shù)據(jù)消息發(fā)送給訂閱消息的系統(tǒng),將文件上傳北向接口。
(3)網元/OMC
不同的網元提供不同的接入方式,包含CORBA、file、FTP、MQ、Q3、DB、Telnet等。統(tǒng)一采集平臺配置這些網元的基礎信息,包括網元、OMC、EMS等設備或系統(tǒng)的地址、采集源數(shù)據(jù)庫訪問信息、訪問用戶名稱、設備廠商ID號、軟件版本等信息,上層網管系統(tǒng)在進行采集策略訂閱時需要指明具體的采集源信息。
(4)平臺與適配器的接口
適配器接口為平臺與適配器之間的接口約定,只要實現(xiàn)了該接口的類,均可在平臺正確部署和使用。實現(xiàn)該接口一般包括協(xié)議適配實現(xiàn)和采集適配實現(xiàn)兩部分,協(xié)議適配負責協(xié)議的連接關閉和訪問等,采集適配負責與具體業(yè)務相關的部分,二者組合起來形成具體適配器實例。適配器接口、協(xié)議適配器接口和采集適配器之間為繼承關系,即適配器接口定義適配器與平臺的通用接口;協(xié)議適配器繼承適配器接口,實現(xiàn)協(xié)議訪問;采集適配器繼承協(xié)議適配器,進行具體采集和解析工作。采集平臺和適配器(采集適配、協(xié)議適配)的整體方案、調用時序說明如下。統(tǒng)一采集平臺協(xié)議適配、接口適配如圖3所示。
(1)統(tǒng)一采集平臺實現(xiàn)采集適配器類插件的開發(fā)接口,各專業(yè)網管系統(tǒng)根據(jù)自己的業(yè)務邏輯模塊實現(xiàn)該模塊規(guī)定的接口。實現(xiàn)了具體業(yè)務邏輯接口的插件,可以在統(tǒng)一采集平臺中注冊。
(2)實現(xiàn)各適配器接口中定義的函數(shù),各類插件的接口中都規(guī)定該插件的初始化函數(shù),一般包括以下內容:從配置文件讀取是否加載該插件以及該插件的初始化信息,若加載該插件,將其提供的服務在統(tǒng)一采集平臺中注冊;若卸載該插件,則將其在統(tǒng)一采集平臺內核中刪除。
(3)實現(xiàn)該插件的業(yè)務邏輯,根據(jù)上層網管系統(tǒng)要求的功能而定,通過自定義函數(shù)實現(xiàn)用戶提供的功能,例如是實時查詢數(shù)據(jù)還是周期性消息訂閱等。
(4)將該插件實現(xiàn)的業(yè)務邏輯函數(shù)在統(tǒng)一采集平臺內核中注冊事件,一般在插件接口函數(shù)中實現(xiàn),例如init()函數(shù)或者addtask()函數(shù)。
(5)在配置文件和內存中,配置加載該插件以及所需的初始化參數(shù)。該部分的配置一般放在XML文件中,只需根據(jù)實際需求,在該文件中配置相應的字段即可完成。
(6)統(tǒng)一采集平臺根據(jù)訂閱策略,轉換成相應的采集任務,調用采集適配器的方法,把本次任務的參數(shù)信息傳遞給采集適配器實例,采集適配器實現(xiàn)Runnable接口的run方法,通過線程啟動執(zhí)行采集。
(7)適配器把采集到的數(shù)據(jù)進行格式封裝,然后調用統(tǒng)一采集平臺提供的方法,將數(shù)據(jù)以消息方式發(fā)送出去,如實時告警數(shù)據(jù)。
(8)采集適配器采集到的原始counter根據(jù)元數(shù)據(jù)描述的算法,計算生成相應的指標數(shù)據(jù),計算完成后根據(jù)生成指定格式的文件或消息,數(shù)據(jù)消息發(fā)送給訂閱消息的系統(tǒng),文件上傳北向接口;并反饋任務及自身運行狀態(tài)信息給統(tǒng)一采集平臺管理控制模塊。
采集平臺采集適配插件化開發(fā)技術已應用于廣東移動網管數(shù)據(jù)統(tǒng)一采集平臺項目,相對于傳統(tǒng)采集技術,具有以下技術優(yōu)點。
·從采集適配技術本身,適配器抽象了各專業(yè)網管系統(tǒng)的業(yè)務需求,并可由各專業(yè)網管系統(tǒng)根據(jù)自己的業(yè)務邏輯進行擴充,具有很強的通用性,便于保護在網管采集能力方面的已有投入。
·從平臺框架能力出發(fā),當采集平臺接收新的數(shù)據(jù)源接入時,可在不需要更改整個軟件架構的基礎下,將新的采集適配器方便地加載到系統(tǒng)中,完成數(shù)據(jù)接入,具有很強的模塊獨立性和擴展性;如果已有采集適配器不再使用,能夠把這些采集適配器方便地從系統(tǒng)中卸載,不影響平臺核心程序的運行。
·從平臺業(yè)務支撐出發(fā),平臺是開放性的,支持第三方適配器插件,具備全業(yè)務、全專業(yè)采集接入能力,能夠去除重復采集、降低設備負荷。
·從資源利用來看,采集到的數(shù)據(jù)是開放的,統(tǒng)一共享的,一次采集多處復用。
目前,上述技術已在中國移動通信集團廣東有限公司統(tǒng)一采集平臺項目中試運行,已完成41個適配器的開發(fā)及測試,涵蓋4種接口類型,包括file、指令、數(shù)據(jù)庫、CORBA等;接入14種網元類型,涉及26萬個網元,659個原始測量表,完成80%語音網統(tǒng)計類數(shù)據(jù)測試;同時完成50%新舊系統(tǒng)數(shù)據(jù)核對,指標數(shù)據(jù)很好地保持了和現(xiàn)網系統(tǒng)的一致。在性能方面,插件化平臺處理效率提升了20%~30%,如以GZOMC的采集計算對比,306個BSC、小區(qū)數(shù)量23 598個、25張原始測量表、最大表數(shù)據(jù)量為384440個,采集計算整體過程新平臺總耗時1 244 s,比起原來總耗時1 626 s縮短23.5%,如圖4所示。在源數(shù)據(jù)時延較大的情況下(第4個時間點),效率也有20%以上的提升,有不錯的應用效果,推廣實施后預期會有更大的規(guī)模效應體現(xiàn)。
圖4 采集總耗時對比
本文闡述了通過構建基于插件技術的統(tǒng)一采集平臺,以插件方式實現(xiàn)采集適配器的自動加載和卸載,提高采集適配器的可擴展性和重用性,統(tǒng)一管理采集適配,實現(xiàn)自動匹配和調度,減少對網元的連接負擔,提高采集質量。但是目前平臺的開放性還有待進一步加強,第三方開發(fā)的采集插件存在較多兼容性問題,需要制定更加開放、更加具備兼容能力的采集插件規(guī)范,這是今后繼續(xù)努力的方向。