陳尚干
中國(guó)電信股份有限公司江蘇分公司
中國(guó)電信VoLTE網(wǎng)絡(luò)基于NFV技術(shù)部署,用戶數(shù)的迅猛發(fā)展給VoLTE網(wǎng)絡(luò)運(yùn)維帶來(lái)較大挑戰(zhàn)。NFV垂直方向涉及多個(gè)組件,VNF、虛擬機(jī)、hypervisor、物理主機(jī)、存儲(chǔ)、交換機(jī)等,傳統(tǒng)的故障定界定位方法在面對(duì)NFV場(chǎng)景尤其是垂直層問(wèn)題時(shí)顯得捉襟見(jiàn)肘。業(yè)界對(duì)于IT設(shè)備日志、告警、性能的高可用性是值得借鑒的,例如亞健康檢測(cè)。如何進(jìn)行NFV與傳統(tǒng)通信網(wǎng)元日志、告警、性能兩者之間的有機(jī)挖掘,提高其利用價(jià)值,用于預(yù)測(cè)預(yù)防,是一個(gè)變被動(dòng)響應(yīng)為主動(dòng)運(yùn)維的關(guān)鍵舉措,也是解決NFV架構(gòu)下VoLTE設(shè)備不穩(wěn)定的重要手段。使用日志、告警、性能分析是故障定界定位的殺手锏,探索基于NFV垂直設(shè)備日志、告警、性能信息,使用機(jī)器學(xué)習(xí)的方法,挖掘NFV VoLTE網(wǎng)絡(luò)的潛在隱患,提高網(wǎng)絡(luò)維護(hù)質(zhì)量。
網(wǎng)絡(luò)架構(gòu)的變化挑戰(zhàn)現(xiàn)有維護(hù)模式,運(yùn)維技術(shù)人員并不擅長(zhǎng)甚至不具備依靠NFV架構(gòu)與傳統(tǒng)網(wǎng)元架構(gòu)日志、告警、性能有機(jī)結(jié)合的排障能力,無(wú)法在故障發(fā)生后,快速進(jìn)行日志、告警、性能搜索定位問(wèn)題。受限于網(wǎng)元數(shù)量、訪問(wèn)限制、網(wǎng)絡(luò)傳輸能力以及業(yè)務(wù)網(wǎng)元性質(zhì)、路由復(fù)雜性等客觀條件,需要與研發(fā)支撐工程師來(lái)來(lái)回回溝通多次,傳送多次文件才能有效進(jìn)行日志、告警、性能分析,大大降低了故障分析處理效率,延長(zhǎng)了障礙處理時(shí)限。
設(shè)備底層與應(yīng)用層運(yùn)行狀況未能有效銜接。IT日志、告警、性能與傳統(tǒng)業(yè)務(wù)層面的日志、告警、性能等無(wú)法有機(jī)結(jié)合、融會(huì)貫通,它們的價(jià)值無(wú)法充分利用,特別是無(wú)法有效利用進(jìn)行預(yù)測(cè)預(yù)防。
網(wǎng)絡(luò)障礙無(wú)法快速有效反饋到對(duì)應(yīng)的網(wǎng)絡(luò)資源上。梳理VNF對(duì)應(yīng)處理模塊與虛機(jī)資源,標(biāo)注虛機(jī)編號(hào)、服務(wù)器網(wǎng)卡、網(wǎng)絡(luò)交換機(jī)TOR、EOR及網(wǎng)絡(luò)鏈路資源,通過(guò)各類網(wǎng)元運(yùn)行日志、告警、性能收斂到相應(yīng)的網(wǎng)絡(luò)資源上,然后進(jìn)行可視化、易用性顯示,再經(jīng)過(guò)各種資源關(guān)聯(lián)計(jì)算,智能化鎖定障礙發(fā)生點(diǎn),精確定界NFV底層問(wèn)題或業(yè)務(wù)流程上某一個(gè)網(wǎng)元問(wèn)題,最后通過(guò)專家?guī)旖?jīng)驗(yàn)過(guò)濾判斷,采取規(guī)范化措施自動(dòng)化恢復(fù)。
針對(duì)NFV場(chǎng)景下日志、告警、性能的特點(diǎn),提出以下解決思路:(1)實(shí)現(xiàn)日志、告警、性能的統(tǒng)一采集、統(tǒng)一存儲(chǔ)、統(tǒng)一呈現(xiàn)。對(duì)NFV垂直層各部件的日志、告警、性能進(jìn)行采集并在統(tǒng)一界面進(jìn)行呈現(xiàn)。在統(tǒng)一時(shí)間軸上用柱狀圖的形式將各層日志、告警、性能量進(jìn)行展現(xiàn),當(dāng)異常數(shù)據(jù)量出現(xiàn)時(shí)一目了然,同時(shí)還可以通過(guò)層級(jí)間日志、告警、性能量的變化輔助分析故障關(guān)聯(lián)關(guān)系。(2)預(yù)制日志、告警、性能關(guān)鍵字搜索,加快搜索效率。系統(tǒng)提供搜索功能,可以根據(jù)搜索條件快速進(jìn)行文本搜索,同時(shí)可以預(yù)制搜索關(guān)鍵字及組合,在日志、告警、性能采集進(jìn)入系統(tǒng)時(shí)完成匹配,提高搜索效率。(3)日志、告警、性能快速導(dǎo)出。根據(jù)日志、告警、性能采集對(duì)象、文件路徑、時(shí)間進(jìn)行歸類,便于離線下載,最大程度縮小文件大小。(4)引入機(jī)器學(xué)習(xí)功能,智能分析,實(shí)現(xiàn)障礙的端到端網(wǎng)元關(guān)聯(lián)顯性化。
本方案設(shè)計(jì)思路及模型如圖1所示。
圖1 VoLTE網(wǎng)絡(luò)隱患挖掘設(shè)計(jì)框架
數(shù)據(jù)源:由VoLTE網(wǎng)絡(luò)中關(guān)聯(lián)網(wǎng)元及虛擬層各個(gè)NFV組件產(chǎn)生的日志、告警、性能。
采集層:通過(guò)LogStash探針客戶端部署,采集應(yīng)運(yùn)層及I層各組件日志、告警、性能。Logstash是一個(gè)開(kāi)源的數(shù)據(jù)搜索引擎、服務(wù)器端數(shù)據(jù)處理管道,可以同時(shí)從多個(gè)數(shù)據(jù)源獲取數(shù)據(jù),并對(duì)其進(jìn)行轉(zhuǎn)換,然后將其發(fā)送到目的“存儲(chǔ)”。Logstash管道有兩個(gè)必需的元素——輸入和輸出,以及一個(gè)可選元素過(guò)濾器。輸入插件從數(shù)據(jù)源那里消費(fèi)數(shù)據(jù),過(guò)濾器插件根據(jù)期望修改數(shù)據(jù),輸出插件將數(shù)據(jù)寫(xiě)入目的地。
緩存層存儲(chǔ)層:Kafka是開(kāi)源的消息系統(tǒng),一個(gè)高吞吐量分布式消息系統(tǒng)。通過(guò)Kafka/LogStash入庫(kù)到GaussDB數(shù)據(jù)庫(kù)。Elasticsearch(ES)是一個(gè)基于Lucene構(gòu)建的開(kāi)源、分布式、RESTful接口的全文搜索引擎。Elasticsearch還是一個(gè)分布式文檔數(shù)據(jù)庫(kù),其中每個(gè)字段均可被索引,而且每個(gè)字段的數(shù)據(jù)均可被搜索,ES能夠橫向擴(kuò)展至數(shù)以百計(jì)的服務(wù)器存儲(chǔ)以及處理PB級(jí)的數(shù)據(jù)。可以在極短的時(shí)間內(nèi)存儲(chǔ)、搜索和分析大量的數(shù)據(jù),通常作為具有復(fù)雜搜索場(chǎng)景情況下的核心發(fā)動(dòng)機(jī)。
機(jī)器學(xué)習(xí):對(duì)采集VoLTE業(yè)務(wù)關(guān)聯(lián)網(wǎng)元及NFV大量日志、告警、性能的數(shù)量經(jīng)過(guò)IPLOM算法、卡方算法、3-sigma算法等判斷出數(shù)據(jù)異常變化、順序序列變化、內(nèi)容成分比例變化,多維度快速收斂到一個(gè)點(diǎn)一個(gè)面上,輔助對(duì)障礙的定界定位。
運(yùn)維服務(wù):將方案系統(tǒng)所需服務(wù)分解為各個(gè)微服務(wù)進(jìn)程,提供日志、告警、性能統(tǒng)計(jì)、檢索、監(jiān)控、導(dǎo)出等功能,并為上層提供故障診斷和隱患排查。
展現(xiàn)層:通過(guò)web-portal為維護(hù)人員提供可視簡(jiǎn)易的操作界面,實(shí)現(xiàn)故障障礙定位定界顯性化。
機(jī)器學(xué)習(xí)是研究如何使用機(jī)器來(lái)模擬人類學(xué)習(xí)活動(dòng)的一門(mén)學(xué)科。NFV VoLTE隱患挖掘、故障定界定位的機(jī)器學(xué)習(xí)方向有如下三種:(1)根據(jù)VoLTE業(yè)務(wù)關(guān)聯(lián)網(wǎng)元及NFV日志、告警、性能的數(shù)量變化來(lái)學(xué)習(xí),給出可疑日志、告警、性能凸起和時(shí)間點(diǎn);(2)根據(jù)VoLTE業(yè)務(wù)關(guān)聯(lián)網(wǎng)元及NFV日志、告警、性能的順序序列變化,訓(xùn)練出正常的日志、告警、性能順序,把異常的日志、告警、性能預(yù)警出來(lái)并匹配到端到端關(guān)聯(lián)路由及網(wǎng)元上;(3)學(xué)習(xí)訓(xùn)練NFV日志、告警、性能的內(nèi)容成分比例的變化,與經(jīng)驗(yàn)專家?guī)旖Y(jié)合,實(shí)施網(wǎng)絡(luò)障礙定界定位顯性化。
(1)事件聚合
作用:將雜亂、冗余的日志、告警、性能歸類。
算法:IPLoM聚類算法。
算法要點(diǎn):
①利用Event(一條日志、告警、性能為一個(gè)Event)大小進(jìn)行分類。
②利用關(guān)鍵字(選熵值最小的字段)進(jìn)行分類,如圖2所示。
圖2 利用關(guān)鍵字進(jìn)行分類
③關(guān)鍵字成對(duì)出現(xiàn),組合起來(lái)有含義,認(rèn)為是一個(gè)關(guān)鍵字,如圖3所示。
圖3 關(guān)鍵字認(rèn)定
④聚合變量部分達(dá)到50%,則不再合并。
算法結(jié)果示例:通過(guò)對(duì)關(guān)鍵字分類,識(shí)別出關(guān)鍵字invalid、error、on、broadcast進(jìn)行聚合;而對(duì)interconnect-ITXXX等中變量較多,超過(guò)預(yù)定值無(wú)法進(jìn)行聚合、合并。如圖4所示。
圖4 算法結(jié)果
(2)日志、告警、性能數(shù)量變化檢測(cè)
如圖5所示,采用3Sigma算法檢測(cè)指定日志、告警、性能吞吐量是否有突增、突降等異常行為,從而檢測(cè)網(wǎng)絡(luò)狀態(tài)。即先假設(shè)一組檢測(cè)數(shù)據(jù)(日志、告警、性能)只含有隨機(jī)誤差,對(duì)其進(jìn)行計(jì)算處理得到標(biāo)準(zhǔn)偏差,按一定概率確定一個(gè)區(qū)間,認(rèn)為凡超過(guò)這個(gè)區(qū)間的誤差,就不屬于隨機(jī)誤差而是粗大誤差,含有該誤差的數(shù)據(jù)應(yīng)認(rèn)為是異常數(shù)據(jù),說(shuō)明網(wǎng)絡(luò)運(yùn)行存在異常。
圖5 3Sigma原則
3σ原則為:數(shù)值分布在(μ-σ,μ+σ)中的概率為0.6826;數(shù)值分布在(μ-2σ,μ+2σ)中的概率為0.9545;數(shù)值分布在(μ-3σ,μ+3σ)中的概率為0.9973??梢哉J(rèn)為,正常情況下取值幾乎全部集中在(μ-3σ,μ+3σ)區(qū)間內(nèi),超出這個(gè)范圍的可能性僅占不到0.3%,可以認(rèn)為存在異常。
(3)日志、告警、性能構(gòu)成變化檢測(cè)
作用:檢測(cè)日志、告警、性能的組成內(nèi)容是否出現(xiàn)變化。
算法:卡方算法+3Sigma算法。
卡方檢驗(yàn)就是統(tǒng)計(jì)樣本的不同分布之間的偏離程度以及關(guān)聯(lián)關(guān)系。總體卡方值越大,總體分布越不符合同一分布;統(tǒng)計(jì)對(duì)象卡方值越大,與分布變化關(guān)聯(lián)程度越大。一個(gè)非常大的卡方檢驗(yàn)統(tǒng)計(jì)量意味著數(shù)據(jù)不太適合。如果卡方值較大,拒絕無(wú)效假設(shè)。統(tǒng)計(jì)學(xué)中有兩種類型的變量:數(shù)值變量和非數(shù)值變量。該值可以通過(guò)給定的觀察頻率和期望頻率來(lái)計(jì)算:
算法步驟:①學(xué)習(xí)出日志、告警、性能模板;②在歷史數(shù)據(jù)中學(xué)習(xí)出每個(gè)時(shí)刻每個(gè)模板的卡方值,并求和;③隨學(xué)習(xí)出每個(gè)時(shí)刻的卡方和的3Sigma模型;④檢查新數(shù)據(jù)中卡方和值是否滿足3Sigma模型,不滿足即為異常。
卡方算法+3Sigma算法結(jié)果示例如圖6所示。
圖6 構(gòu)成變化檢測(cè)算法結(jié)果示例圖
結(jié)果說(shuō)明:通過(guò)與基線窗口數(shù)值進(jìn)行卡方值比較,檢測(cè)窗口卡方值偏差較大,不在3Sigma范圍,可以斷定為異常值。
(4)日志、告警、性能序列變化檢測(cè)
作用:檢測(cè)日志、告警、性能的打印序列是否出現(xiàn)變化。
算法:N-Gram算法。
N-Gram是一種基于統(tǒng)計(jì)語(yǔ)言模型的算法。它的基本思想是將文本里面的內(nèi)容按照字節(jié)進(jìn)行大小為N的滑動(dòng)窗口操作,形成長(zhǎng)度是N的字節(jié)片段序列。
每一個(gè)字節(jié)片段稱為gram,對(duì)所有g(shù)ram的出現(xiàn)頻度進(jìn)行統(tǒng)計(jì),并且按照事先設(shè)定好的閾值進(jìn)行過(guò)濾,形成關(guān)鍵gram列表,也就是這個(gè)文本的向量特征空間,列表中的每一種gram就是一個(gè)特征向量維度。
該模型基于這樣一種假設(shè):第N個(gè)詞的出現(xiàn)只與前面N-1個(gè)詞相關(guān),而與其它任何詞都不相關(guān),整句的概率就是各個(gè)詞出現(xiàn)概率的乘積。這些概率可以通過(guò)直接從語(yǔ)料中統(tǒng)計(jì)N個(gè)詞同時(shí)出現(xiàn)的次數(shù)得到。
N-Gram算法結(jié)果示例如圖7所示。
圖7 序列變化檢測(cè)算法結(jié)果示例圖
結(jié)果說(shuō)明:不同顏色圖形即為一個(gè)gram,預(yù)先設(shè)定不同色塊間模型數(shù)據(jù)并設(shè)定閾值,形成色塊間向量特征空間表,當(dāng)檢測(cè)數(shù)據(jù)的色塊空間表與模型數(shù)據(jù)空間表不一致時(shí),即可判斷出異常數(shù)據(jù)點(diǎn)。
通過(guò)以上檢測(cè)發(fā)現(xiàn)日志、告警、性能異常點(diǎn),然后觸發(fā)告警,再結(jié)合專家經(jīng)驗(yàn)庫(kù)匹配分析,實(shí)現(xiàn)基于日志、告警、性能的故障分析和隱患發(fā)現(xiàn)。
基于機(jī)器學(xué)習(xí)快速挖掘定位定界VoLTE網(wǎng)絡(luò)潛在隱患的系統(tǒng),結(jié)合了Logstash開(kāi)源數(shù)據(jù)搜索引擎,采用卡方3Sigma算法,通過(guò)人機(jī)學(xué)習(xí)技術(shù),自主開(kāi)發(fā)NFV VoLTE障礙挖掘,快速定界定位管理平臺(tái),可以實(shí)施VoLTE端到端障礙可視化管理。
該方案對(duì)NFV VoLTE網(wǎng)絡(luò)進(jìn)行日志、告警、性能挖掘,提高日志、告警、性能的利用價(jià)值,用于預(yù)測(cè)預(yù)防,這是一個(gè)變被動(dòng)響應(yīng)為主動(dòng)運(yùn)維的關(guān)鍵舉措,也是解決NFV架構(gòu)下VoLTE設(shè)備不穩(wěn)定的重要手段。
該方案探索基于NFV VoLTE垂直設(shè)備日志、告警、性能信息,使用機(jī)器學(xué)習(xí)的多種算法手段,挖掘NFV VoLTE網(wǎng)絡(luò)的潛在隱患,提高網(wǎng)絡(luò)維護(hù)質(zhì)量,是本方案的典型創(chuàng)新。
該方案使用機(jī)器學(xué)習(xí)挖掘網(wǎng)絡(luò)潛在隱患的系統(tǒng),對(duì)VoLTE端到端各網(wǎng)元的日志、告警、性能統(tǒng)一采集、統(tǒng)一存儲(chǔ)、統(tǒng)一分析,引入機(jī)器學(xué)習(xí),從三個(gè)方向(數(shù)量變化、順序序列變化、內(nèi)容成分比例變化)分析日志、告警、性能變化,發(fā)現(xiàn)異常點(diǎn),從手工分析轉(zhuǎn)變?yōu)闄C(jī)器分析,挖掘網(wǎng)絡(luò)隱患,并提高故障定界定位效率,在國(guó)內(nèi)三大運(yùn)營(yíng)商中首次實(shí)現(xiàn)底層與應(yīng)用層有機(jī)結(jié)合。
與傳統(tǒng)被動(dòng)響應(yīng)處理故障的手段相比,該方案大大提供了一線運(yùn)維人員對(duì)NFV VoLTE網(wǎng)絡(luò)的維護(hù)效率,提高NFV VoLTE網(wǎng)絡(luò)的可靠性,降低網(wǎng)絡(luò)風(fēng)險(xiǎn),實(shí)現(xiàn)網(wǎng)絡(luò)穩(wěn)定運(yùn)行。