摘要:中國移動4G/5G核心網(wǎng)業(yè)務(wù)云化部署后,對云資源池的網(wǎng)絡(luò)提出了99.999%的可靠性要求。為了保障云資源池的穩(wěn)定性和可靠性,本文提出了一種基于自適應(yīng)采樣的網(wǎng)絡(luò)云資源池網(wǎng)絡(luò)故障篩查系統(tǒng)。首先,通過控制五元組中的單一變量構(gòu)造數(shù)據(jù)包大規(guī)模篩查采樣進行跨資源池的鏈路篩查;針對增強二層資源池,本文提出根據(jù)業(yè)務(wù)數(shù)據(jù)的MAC表計算數(shù)據(jù)流的生成樹,使用自適應(yīng)采樣動態(tài)選擇搜索算法進行網(wǎng)絡(luò)拓撲生成及狀態(tài)遍歷,最終定位資源池內(nèi)質(zhì)差鏈路并進行故障自愈處理。
關(guān)鍵字:云資源池;自適應(yīng)動態(tài)采樣;質(zhì)量監(jiān)控;故障分析;健康度評估
一、引言
4G/5G核心網(wǎng)云化后,由傳統(tǒng)的專用硬件和網(wǎng)元軟件捆綁的“煙囪式”網(wǎng)絡(luò)架構(gòu)向更加開放、靈活的三層解耦網(wǎng)絡(luò)架構(gòu)演變。三層解耦的云資源池優(yōu)勢包括:①資源統(tǒng)一調(diào)度:通過對資源池的統(tǒng)一管理,可以根據(jù)需求動態(tài)分配和優(yōu)化資源,提高資源利用率。②靈活性和可擴展性:網(wǎng)絡(luò)功能不再依賴于特定的硬件,可以在不同的物理設(shè)備上遷移、彈性擴縮容,以滿足不斷變化的流量和服務(wù)需求。③可靠性:核心網(wǎng)在資源池的云化部署分布式架構(gòu)和冗余設(shè)計,確保了云化核心網(wǎng)的高可用性和故障恢復(fù)能力,即使在面臨硬件故障或其他問題時也能保持服務(wù)的連續(xù)性。然而,核心網(wǎng)云化部署也給資源池的運營運維帶來了新的運維難度。其中包括:①云化部署分布式架構(gòu)下,業(yè)務(wù)網(wǎng)元由多個虛機承載。每個虛機可能分布在不同的服務(wù)器設(shè)備上,同一個業(yè)務(wù)網(wǎng)元不同虛機經(jīng)過不同的網(wǎng)絡(luò)設(shè)備,因此,單個業(yè)務(wù)鏈路可能涉及多個服務(wù)器-TOR-EOR-DCGW物理鏈路。②租戶對資源池側(cè)的網(wǎng)絡(luò)架構(gòu)不了解,無法提供涉及網(wǎng)元ip之外的相關(guān)信息。③不同于公有云業(yè)務(wù),核心網(wǎng)業(yè)務(wù)對網(wǎng)絡(luò)質(zhì)差,如概率性鏈路亞的健康異常敏感。
因此,NFV核心網(wǎng)資源池亟須一種高效的網(wǎng)絡(luò)故障篩查系統(tǒng),先于業(yè)務(wù)影響和用戶投訴發(fā)現(xiàn)并解決故障隱患。
二、現(xiàn)有的技術(shù)及網(wǎng)絡(luò)部署現(xiàn)狀
傳統(tǒng)的互聯(lián)網(wǎng)網(wǎng)絡(luò)路徑排障,利用多模式的網(wǎng)絡(luò)路徑聯(lián)網(wǎng)探測技術(shù),實現(xiàn)網(wǎng)絡(luò)路徑探測。文獻[1]中提到,通過源撥測節(jié)點、目的節(jié)點和預(yù)先生成的邏輯網(wǎng)絡(luò)拓撲,確定m( m≥3 )個撥測對象和故障鏈路中的所有節(jié)點。后續(xù),針對所有節(jié)點進行撥測,即可根據(jù)撥測結(jié)果確定故障鏈路中每一節(jié)點的故障值,進而確定故障鏈路中發(fā)生故障的節(jié)點。文獻[2]提供一種故障診斷方法及裝置。其中,故障診斷方法包括:中心服務(wù)器向探針客戶端發(fā)送第一探測信息,第一探測信息包括業(yè)務(wù)服務(wù)器上運行的網(wǎng)絡(luò)業(yè)務(wù)的地址;探針客戶端根據(jù)第一探測信息對網(wǎng)絡(luò)業(yè)務(wù)進行探測,獲得業(yè)務(wù)度量信息;探針客戶端向中心服務(wù)器發(fā)送業(yè)務(wù)度量信息;中心服務(wù)器根據(jù)業(yè)務(wù)度量信息和預(yù)設(shè)規(guī)則確定故障發(fā)生位置。該方法只適用于業(yè)務(wù)鏈路拓撲簡單明確的撥測,未涉及復(fù)雜資源池鏈路的拓撲定位方法。文獻[3]提出的方案適用于全IP的物理網(wǎng)絡(luò),未提及VNF網(wǎng)元業(yè)務(wù)鏈路所涉及的網(wǎng)絡(luò)拓撲方法,無法應(yīng)用在非IP通信的二層交換機鏈路的探測方案。
核心網(wǎng)云資源池中,以路由型網(wǎng)元為例,DCGW為三層路由器配置業(yè)務(wù)網(wǎng)關(guān)173.0.0.1,同時配置靜態(tài)路由到業(yè)務(wù)IP,目的地址為業(yè)務(wù)IP(如177.0.0.20/32),下一跳為vNIC1的IP(如173.0.0.2)。由于VNF運行在多個VM上以實現(xiàn)負載分擔(dān),每個虛機可能分布在不同的服務(wù)器設(shè)備上。其中,EOR/TOR為二層VLAN透傳設(shè)備,無法使用Ping測協(xié)議針對EOR-TOR進行鏈路探測。
現(xiàn)有技術(shù)不適用實際的云資源池網(wǎng)絡(luò),存在問題如下:
物理路徑遍歷耗時長:由于網(wǎng)元單元多和組Pool場景多,現(xiàn)有技術(shù)方案中網(wǎng)絡(luò)拓撲路徑復(fù)雜,使用業(yè)務(wù)地址輪詢探測機制耗時長。
定位方法落后:Ping測依賴三層IP網(wǎng)絡(luò),針對業(yè)務(wù)鏈路中的交換機純二層網(wǎng)絡(luò)沒有定位機制,需要人工外接終端進行抓包,耗時耗力。
探針部署方案不符合安全要求:在網(wǎng)絡(luò)設(shè)備大批量部署探針進行抓包分析,不符合網(wǎng)絡(luò)云資源池的安全規(guī)范要求,且資源池設(shè)計未曾考慮該部分資源的預(yù)留。
可見,傳統(tǒng)云資源池運行網(wǎng)絡(luò)質(zhì)量監(jiān)控方法已經(jīng)無法滿足需求。為了保障云資源池的穩(wěn)定性和可靠性,提高運維效率,結(jié)合跨資源池的大規(guī)模的鏈路質(zhì)差探測和資源池內(nèi)的自適應(yīng)搜索算法,本文提出了一種基于自適應(yīng)采樣的4G/5G云資源池網(wǎng)絡(luò)故障篩查系統(tǒng)。
三、云資源池網(wǎng)絡(luò)故障篩查系統(tǒng)設(shè)計
(一)算法設(shè)計
根據(jù)云資源池的物理結(jié)構(gòu),本文提出云資源池鏈路故障的篩查機制(如圖1所示)。首先定義源采樣點所在資源池為S1,目的資源池為D1、D2。跨資源池組網(wǎng)結(jié)構(gòu)如下:
對于業(yè)務(wù)撥測路徑,設(shè)置以下幾種概念:
1.源探測資源池路徑Pool-set可能為{S1,D1},{S1,D2}.....{S1,Di}(i=1,2,3....)。
2.源探測的設(shè)備平面路徑Path-set可能為:
{S1-CE,S1-AR},
{S1-CE,S1-AR,S1-BR},
{S1-CE,S1-AR,S1-BR,D1-BR,D1-AR,D1-CE},
{S1-CE,S1-AR,S1-BR,D2-BR,D2-AR,D2-CE},
....
3.源探測的設(shè)備路徑link-set為:
{S1-CE1,S1-AR1,S1-BR1},
{S1-CE1,S1-AR1,S1-BR1,S1-BR2},
{S1-CE1,S1-AR1,S1-AR2,S1-BR2},
....
(二)具體步驟
具體步驟如下:
1.根據(jù)網(wǎng)絡(luò)數(shù)通設(shè)備涉及的哈希算法構(gòu)造采樣數(shù)據(jù)包,通過控制五元組中的單一變量進行大規(guī)模的鏈路質(zhì)差探測。
現(xiàn)有的通信網(wǎng)絡(luò)設(shè)備(包括路由器、交換機、防火墻)根據(jù)數(shù)據(jù)報文信息(如五元組、三元組)計算的哈希值對確定的鏈路總數(shù)取余,并在取余值對應(yīng)的實際鏈路中轉(zhuǎn)發(fā)數(shù)據(jù)報文,對具有相同特征的數(shù)據(jù)包會始終選擇相同的出接口轉(zhuǎn)發(fā),而不是輪詢機制。人們只要根據(jù)物理設(shè)備的哈希算法構(gòu)造適當(dāng)?shù)臄?shù)據(jù)包即可選擇一條物理路徑,減少需要的探測次數(shù)。即可通過控制五元組的單一變量構(gòu)造大規(guī)模采樣的數(shù)據(jù)包,實現(xiàn)全方位的鏈路質(zhì)差篩查。
例如:如果業(yè)務(wù)路徑中不同設(shè)備平面最大轉(zhuǎn)發(fā)的鏈路數(shù)為n,在目的業(yè)務(wù)IP、源目端口、協(xié)議等不變的情況下,只需要構(gòu)造連續(xù)的n個源IP即可進行全量物理鏈路采樣。根據(jù)資源池內(nèi)外同平面最大鏈路數(shù)及哈希算法原理確定源IP個數(shù),比如業(yè)務(wù)DCGW-EOR之間最大鏈路數(shù)為8,則源應(yīng)為8個連續(xù)IP;通過該方法,每個資源池內(nèi)選取一個業(yè)務(wù)IP進行,即可實現(xiàn)圖5中的多條業(yè)務(wù)路徑撥測。基于此,利用最小采樣探測開銷實現(xiàn)全鏈路故障隱患篩查。
2.將采樣鏈路可能經(jīng)過的每個資源池和設(shè)備預(yù)先打上標(biāo)簽值。將采樣鏈路按照預(yù)設(shè)值打上標(biāo)簽,同時根據(jù)采樣數(shù)據(jù)結(jié)果 (如丟包、抖動、時延等)等進行打分,提取質(zhì)差鏈路的標(biāo)簽。提取多個質(zhì)差鏈路中相同的標(biāo)簽值,作為初步懷疑的故障標(biāo)簽集合P。將P與其他非質(zhì)差鏈路標(biāo)簽值集合Q進行集合運算。若Z =P-(P∩Q)為非空,則 Z中的標(biāo)簽值為懷疑的故障點。若Z中不包含資源池標(biāo)簽值,則故障點可能在資源池外,即可進一步對Z中設(shè)備標(biāo)簽之間的鏈路進行一一核查。
舉例如下:
針對每條業(yè)務(wù)路徑的探測結(jié)果(如丟包、抖動、時延)進行打分,按得分從低到高排序,得到最可能的故障場景。
D1、D2、E1為不同資源池。其中,D1、D2隸屬同一省份D,業(yè)務(wù)設(shè)備均掛在同一對D-BR設(shè)備下,資源池D1、D2均在同一對D-AR設(shè)備下。
在三條業(yè)務(wù)路徑中,三個路徑的資源池路徑pool-set分為{S1,D1},{S1,D2},{S1,E1};三個路徑的設(shè)備平面路徑path-set分別為:
① {S1-CE,S1-AR,S1-BR,D-BR,D-AR,D1-CE};
② {S1-CE,S1-AR,S1-BR,D-BR,D-AR,D2-CE};
③ {S1-CE,S1-AR,S1-BR,E-BR,E-AR,E1-CE}。
在三個路徑中,由于路徑③是正常路徑,可以排除{S1-CE,S1-AR,S1-BR}為故障標(biāo)簽。①②交集中存在{D-BR,D-AR},因此,可以給{D-BR,D-AR}設(shè)備打上故障標(biāo)簽。然后進一步排查BR-AR之間的鏈路,完成對資源池外的故障排查,具體的故障處理機制不再贅述。
3.對于資源池內(nèi)的故障篩查機制,本文首先確定資源池內(nèi)的業(yè)務(wù)質(zhì)差,然后對網(wǎng)絡(luò)設(shè)備利用ARP表或者MAC地址表生成鏈路拓撲。
在業(yè)務(wù)鏈路故障篩查中,具體算法步驟如下:
(1)在DCGW路由器利用路由表基于業(yè)務(wù)IP地址、VPN查找下一跳地址即虛機vNicIp,可以獲取到vNicIps(多個vNicIp),利用ARP表基于虛機vNicIp反查到虛機MAC address。
(2)在兩臺業(yè)務(wù)EOR,利用MAC表基于vNicIp mac address查找MAC來源端口,并利用LLDP鄰居關(guān)系查找MAC來源TOR。
(3)在TOR利用MAC Address查找MAC來源端口,再根據(jù)LLDP鄰居關(guān)系查找MAC所在服務(wù)器。
綜上,可以獲取從DCGW-EOR-TOR-服務(wù)器的所有鏈路。
4.利用自適應(yīng)采樣動態(tài)選擇搜索算法進行鏈路狀態(tài)快速遍歷。
從DCGW出發(fā)的鏈路圖如圖2,其中各符號解釋如下:
D1-N:DCGW1下行EOR的第N條物理鏈路。以大區(qū)網(wǎng)絡(luò)云為例,DCGW01-EOR的鏈路有8條,1≤N≤8。對于[D1-N][D2-N]組成的鏈路區(qū)域定義為核心區(qū)域C。
E1M-N:EOR1到第M組TOR的第P條鏈路,其中1≤N≤4。對于[E1M-N][E2M-N]組成的鏈路區(qū)域定義為核心區(qū)域B。
T1M,k:第M對TOR的TOR01到服務(wù)器SERVERK的鏈路,以大區(qū)網(wǎng)絡(luò)云為例,每臺TOR到服務(wù)器之間鏈路數(shù)為1。對于[T11,1][T21,1]...[T1M,k]組成的鏈路區(qū)域定義為接入?yún)^(qū)域A。
假設(shè)質(zhì)差業(yè)務(wù)地址涉及S個服務(wù)器,服務(wù)器閾值為VS;涉及T組TOR,TOR數(shù)據(jù)閾值為VT 。
場景一:當(dāng)S>VS且T>VT 時,認(rèn)為質(zhì)差鏈路大概率出現(xiàn)在核心層設(shè)備DCGW下聯(lián)EOR的鏈路C 上,優(yōu)先使用自上而下的BFS(Breadth-Fisrt Search)算法。選擇DCGW1-EOR之間的核心鏈路區(qū)域C作為頂點,依次訪問[E1M-N][E2M-N][T11,1][T21,1]...[T1M,k]等。
其中,訪問[E1M-N]包括[E11-1,....E1M-P],需要遍歷[E1M-N]中各個元素的鏈路狀態(tài),進行隱患篩查。對確定為故障/亞健康鏈路優(yōu)先進行關(guān)閉、發(fā)出預(yù)警等。
場景二:當(dāng)S≥VS且T≤VT時,認(rèn)為質(zhì)差鏈路大概率出現(xiàn)在EOR下聯(lián)接入層TOR的設(shè)備鏈路[E1M-N]或者[E2M-N]上,以核心層EOR鏈路為頂點,使用DFS算法,優(yōu)先遍歷BC區(qū)。
場景三:當(dāng)S<VS且T<VT時,認(rèn)為質(zhì)差鏈路大概率出現(xiàn)在虛機所在服務(wù)器上聯(lián)接入層A,使用BFS算法從A區(qū)開始遍歷。
使用以上對多個不同業(yè)務(wù)鏈路進行遍歷,能保證相同的鏈路只遍歷一次,算法復(fù)雜度為O(n)。
5.針對質(zhì)差鏈路,分析其他同平面鏈路狀態(tài)。如有其他可用優(yōu)選鏈路,則自動關(guān)閉質(zhì)差鏈路,實現(xiàn)故障自愈。為避免鏈路亞健康引起的業(yè)務(wù)受損,建議在CGW-EOR-TOR業(yè)務(wù)平面開啟CRC聯(lián)動ErrorDown,CRC檢測產(chǎn)生告警,同時超過閾值后關(guān)閉端口。
(二)系統(tǒng)應(yīng)用情況
本文相關(guān)算法已經(jīng)應(yīng)用于中國移動華南大區(qū)網(wǎng)絡(luò)云撥測系統(tǒng)。系統(tǒng)部署前一年內(nèi),華南大區(qū)網(wǎng)絡(luò)云資源池內(nèi)網(wǎng)絡(luò)故障引起業(yè)務(wù)受損的比例為37:2;業(yè)務(wù)系統(tǒng)部署后,該比例下降為198:1??傮w來說,規(guī)避了大部分網(wǎng)絡(luò)故障引起的業(yè)務(wù)亞健康情況。
四、結(jié)束語
基于NFV云化資源池中網(wǎng)元分布式部署帶來的運維痛點,本文提出首先通過控制五元組中的單一變量構(gòu)造數(shù)據(jù)包進行大規(guī)模的物理鏈路篩查采樣進行跨資源池的鏈路篩查;其次,針對資源池內(nèi)大量二層鏈路無法進行Ping測,本文提出根據(jù)業(yè)務(wù)數(shù)據(jù)的MAC表計算數(shù)據(jù)流的生成樹,使用自適應(yīng)采樣動態(tài)選擇搜索算法進行網(wǎng)絡(luò)拓撲生成及狀態(tài)遍歷,最終定位資源池內(nèi)質(zhì)差鏈路并進行故障自愈處理。該方法適用于公有云資源池,如阿里云、騰訊云,各大運營商電信云資源池和私有云等。
作者單位:許英越 劉春暉 謝燕瑜 楊國俊 張攀翔
中國移動通信集團廣東有限公司
參考文獻
[1]華為技術(shù)有限公司. 一種故障定位方法及裝置:CN201811625982.8[P]. 2020-08-07.
[2]邁普通信技術(shù)股份有限公司. 一種故障診斷方法及裝置:CN201911346437.X[P]. 2020-04-17.
[3]華為技術(shù)有限公司. 一種故障定位方法及裝置:CN201811625982.8[P]. 2020-08-07.
[4]中國移動 NFV 電信云資源池內(nèi)組網(wǎng)、資源部署和數(shù)據(jù)配置原則 [S]. 中國移動,2019.