C114通信網: 中超客场积分榜(微博 微信) 論壇(微博) 人才(微博) 百科 | C114客戶端 | English | IDC聯盟 與風網

技術 - 行業技術 - 電信網絡 - 正文 運營商投稿當日通信資訊

中超鲁能积分榜:基于P4和機器學習的路由選擇方案探討

//www.dwvekz.com.cn ( 2019/4/2 14:54 )

中超客场积分榜 www.dwvekz.com.cn 1  概述

近年來,關于是否可以將機器學習方法應用到網絡中的討論吸引了眾多網絡從業人員的關注。與此同時,許多人也從網絡最基礎問題——路由問題著手,嘗試通過實踐檢驗這一討論的可行性。

一直以來,路由選擇都是網絡工程中的重要一環,傳統的路由策略一般以最短跳數為轉發路徑,網絡設備沒有能力采集數據包在轉發過程中經歷的具體信息(如排隊時延、隊列擁塞狀況、流量到達速率等等)[1]。其次,傳統路由策略還存在收斂慢的缺陷,由于相鄰交換機之間的信息交換是有一定間隔的,因此當某條鏈路或節點出現故障時,網絡不能及時感知,就會造成大量數據包重傳,加劇網絡擁塞的情況發生。

軟件定義網絡的出現,數控分離的思想使得實時獲取網絡真實狀態變為可能。通過基于數據平面可編程語言P4的帶內網絡遙測框架[2-3],數據平面可以實時收集數據包在數據平面轉發過程中的網絡狀態信息,并將其封裝在數據包頭中。這樣不僅不需要控制平面的干預,還減少了大量網絡探測包帶來的開銷。數據平面收集的大量信息全部交由控制器處理,如此龐大的數據量怎樣才能行之有效地轉化為路由配置呢?若通過人工建模必將消耗大量的人力和物力資源,而且由于網絡狀態難以預測,模型建立很難做到普適性。而機器學習擅長解決模型復雜、人工建模困難的問題,因此將機器學習應用到網絡工程中不失為一個好的解決方案。

通過搭建實驗平臺和網絡編程,基于P4和機器學習的路由選擇方案得到了實驗驗證。從實驗結果來看,經過較短時間的訓練,基于P4和機器學習的路由選擇方案模型就能迅速收斂,性能表現呈現迅速上升,并超越ECMP的趨勢。由此觀之,機器學習在網絡領域將會發揮巨大的潛能,是促進網絡智能化的重要工具。

2  基于帶內網絡遙測的信息收集

軟件定義網絡自提出以來,因其使網絡擁有者和運營商能夠對網絡行為進行編程而取得了巨大的成功。然而,其可編程性僅局限于網絡控制平面,其轉發平面在很大程度上受制于功能固定的包處理硬件。數據平面編程語言P4自2014年提出以來,就受到業界的廣泛關注,它完全擺脫了網絡數據平面的束縛,讓網絡擁有者、工程師、架構師及管理員可以自上而下的定義數據包的完整處理流程。

P4語言具有三大特性:協議無關性、目標無關性和現場可重配置能力。協議無關性指的是網絡設備不與任何特定的網絡協議捆綁在一起。相反,對于任何所需要的網絡數據平面協議和數據包處理行為,程序員都可以使用P4進行描述。目標無關性指的是程序員無需關心底層硬件細節,就可以描述數據包的處理邏輯,P4程序經過編譯后,會屏蔽掉底層差異。現場可重配置能力指的是程序員在部署交換機后能對數據包的處理方式進行再次修改。

基于P4的帶內網絡遙測(INT)是一種網絡測量框架,旨在允許通過數據平面收集和報告網絡狀態,而不需要控制平面的干預。在帶內網絡遙測架構模型中,數據包包含被網絡設備解釋為“遙測指令”的包頭字段。這些指令告訴支持帶內網絡遙測功能的設備在數據包轉發時收集和寫入某些狀態。信息源(應用程序、終端主機網絡棧、虛擬機監控程序、NIC、發送端ToR等)可以將指令嵌入正常的數據包或特殊的探測包中。信息接收器收集并選擇性地報告這些指令的收集結果。這種模式允許監視器在轉發時監視數據包所“觀察到”的確切數據平面狀態。其中,支持帶內網絡遙測的交換機按照指令寫入的交換機自身數據稱為元數據。通過對這些元數據的組合和分析,就可以得到很多有用的OAM信息。

帶內網絡遙測并沒有一種規定的封裝格式,可以將帶內網絡遙測頭部加在任意封裝類型的可選字段或凈負荷部分,可用的通用協議棧包括VxLAN、Geneve、NSH、TCP、UDP等。對于不同的封裝格式,只需要為其添加一種新的類型號或其他標識,指明后續包頭為帶內網絡遙測包頭即可。同樣的,使用自定義的封裝格式也是完全可行的。

通過帶內網絡遙測框架,控制器可以收集到數據包在轉發過程中所經歷的真實網絡狀態,而不需要發送特殊的測試包用于測試網絡狀態,從而獲得了更精確和可靠的數據。

數據平面收集到的大量數據將會交付給控制平面,經過預處理后,這些數據將作為機器學習的訓練集,指導路由策略的生成。

3  強化學習算法PPO

機器學習方法按類型可分為監督學習、無監督學習和強化學習。3種方法各有各的特點和適用范圍。

3.1  監督學習

 監督學習[5]是在知道輸入和輸出的情況下訓練出一個模型,將輸入映射到輸出。在開始訓練之前,就已經知道了輸入和輸出,訓練任務就是建立起一個將輸入準確映射到輸出的模型,當給模型輸入新的值時就能預測出對應的輸出了。在這一過程中機器不斷的通過訓練輸入來指導算法不斷改進。如果輸出的結果不正確,那么這個錯誤結果與期望正確結果之間的誤差將作為糾正信號傳回到模型,糾正模型。在深度學習中,著名的反向傳播算法本質上就是將誤差向后傳播來指導模型改進的。

3.2  非監督學習

非監督學習與監督學習不同,非監督學習并不需要完整的輸入輸出數據集,并且系統的輸出經常是不確定的。它主要被用于探索數據中隱含的模式和分布。非監督學習具有解讀數據并從中尋求解決方案的能力,通過將數據和算法輸入到機器中將能發現一些用其他方法無法見到的模式和信息。

3.3  強化學習

強化學習[6]突破了非監督學習,為機器和軟件如何獲取最優化的結果提供了一種全新的思路。它將如何最優化主體的表現和如何優化這一能力之間建立起了強有力的鏈接。通過獎勵函數的反饋來幫助機器改進自身的行為和算法。

如圖1所示,強化學習中主體通過行為與環境相互作用,而環境通過獎勵函數來幫助算法調整做出行為決策的策略函數。從而在不斷的循環中得到表現優異的行為策略。它十分適合用于訓練控制算法和游戲AI等場景。

圖1 強化學習模型

但強化學習在實踐中并不簡單,人們利用很多種算法來實現強化學習。簡單來說,強化學習需要指導機器做出在當前狀態下能獲取最好結果的行為。

在網絡工程路由策略這一場景中,網絡狀態瞬息萬變,采集信息與路由策略間的關系也十分微妙,難以通過數學建模表達出來,因此,選用強化學習協助路由策略生成是最符合實際場景的方法。強化學習的模型有很多,其中PPO算法[7]是OpenAI推出的號稱效率最高、訓練效果最明顯、最容易實現的算法,因此實驗中選用了PPO算法。

輸入。數據平面通過INT框架可采集到的數據有很多種,根據數據與路由選擇的相關性分析,實驗中選取了交換機隊列擁塞程度、交換機排隊時延、鏈路負載3類數據作為PPO算法的輸入。

輸出。在PPO算法的輸出表示上,存在著一些爭議。最直接的策略是輸出所有的路由表項,這樣控制器不需額外處理就可以通過北向接口將路由表項下發到數據平面的P4交換機中,但存在隨著網絡拓撲的擴展,輸出數量將會呈指數增長的問題,不利于網絡擴展。另一種策略是輸出所有鏈路的權值,然后控制器將鏈路權值轉化為相應的路由策略。將鏈路權值轉化為路由策略的處理是相對簡單的,在很多論文[10-11,15]中都論述了相應的方法。同時,隨著網絡拓撲的擴展,輸出規模的增長呈線性,相對于直接輸出所有路由表項的方式節省了很多內存空間。實驗中選取所有鏈路的權值作為PPO算法的輸出。

反饋函數。強化學習中反饋函數的設計是至關重要的,合適的反饋函數能訓練出良好的機器學習模型。反饋函數的設計與優化目標是密不可分的。評價路由算法優劣的性能指標有流完成時間、鏈路利用率、鏈路擁塞程度等等。實驗中采用鏈路利用率作為性能指標,優化目標為最小化最大鏈路利用率。因此,實驗中將反饋函數設計為全局鏈路中最大鏈路負載與鏈路帶寬的比值的負數,指導機器學習模型的訓練。

圖2為PPO算法的神經網絡結構圖。在訓練過程中,環境(Environment)為數據平面采集的數據,經過預處理后,采集數據作為actor網絡的輸入數據,Actor網絡根據輸入數據(state)輸出一組鏈路權值(action)。Actor網絡的輸出結果好壞由critic網絡評判。根據下一周期的采集數據,critic網絡將對Actor網絡在前一周期做出的動作給出評判(reward),指導Actor網絡的優化。

圖2 PPO算法神經網絡結構圖

4  系統框架與性能分析

系統整體框架如圖3所示。在數據平面,通過基于P4的帶內遙測技術,周期性向數據包添加INT遙測指令,數據包依據遙測指令收集沿途鏈路和網絡設備信息,實時獲得網絡狀態。在INT終端(INT Sink)交換機上,交換機自動將收集到的INT信息從數據包剝離,傳給INT監測??椋↖NT Agent)。在控制平面,INT監測??椋↖NT Agent)將數據平面獲取的當前鏈路負載、交換機內排隊時延、隊列擁塞程度等信息經過處理后作為神經網絡模型的輸入數據,通過PPO算法計算出全局鏈路權值,繼而通過路由計算單元將其轉換為路由決策。之后通過P4 runtime將路由決策部署到各個交換機上。

圖3 系統架構圖

通過實驗環境搭建和程序編寫,基于P4和機器學習的路由選擇方案得到實現。圖4為基于P4和機器學習的路由選擇方案與ECMP選路方案的性能分析圖。紅色表示基于P4和機器學習的路由選擇方案測試結果,藍色表示ECMP選路方案的測試結果。橫軸表示訓練次數,縱軸表示以ECMP方案為基準,兩者選路方案測試結果中最大鏈路利用率的比值。從圖4可以看出,經過較短時間的訓練,基于P4和機器學習的路由選擇方案性能就明顯優于ECMP,然后之后一段時間,優于機器學習模型不穩定,智能路由方案的性能出現明顯波動,增加訓練周期后,模型逐漸穩定,可以看到,基于P4和機器學習的路由選擇方案性能大大優于ECMP選路方案。

5  總結與展望

目前,很多領域都嘗試著用機器學習的方法作為解決問題的新思路[4],事實證明,機器學習工具的潛力是非常巨大的。從1997年IBM深藍擊敗國際象棋大師卡斯帕羅夫,到2016年谷歌人工智能團隊所創造的AlphaGo戰勝韓國圍棋棋手李世石,人工智能在國際上引起了一次又一次“地震”,吸引了各界人士的注意。

在網絡領域,機器學習的“表現”也十分突出。例如擁塞控制[8-9]、網絡瓶頸監測、優化數據中心能源損耗[13]、資源分配[14]、視頻流的比特率選擇[15]等。其中,在路由選擇方面,出現了用強化學習Q-learning算法指導路由的Q-routing方案。Q-routing方案是基于分布式的,每個路由器需要單獨學習從數據包頭部到出端口的映射關系,并且還要不斷交換解析的數據包中對應不同目的地址的時延信息。Q-routing方案是一種去中心化的、數據包粒度的路由選擇方案,在可擴展性和通信開銷方面有很大的挑戰。除此之外,在2017年HotNets會議上發表的《learning to route》[1]論文也對將機器學習工具應用到路由選擇中進行了詳細的探討。文中比較了監督學習和增強學習2種方案,實驗結果表明基于增強學習TRPO算法的softmin routing路由方案表現出較好的效果,但相較于不添加機器學習的路由方案,基于機器學習的方案性能優勢沒有表現的特別明顯,隨著訓練次數的增多,性能優勢可能會逐漸增大。

網絡因其狀態瞬息萬變而難以預測,傳統的應對措施只能通過人為建模建立確定性關系來解決問題。例如,在路由選擇方面以最短跳數作為路由表項更新的依據;在資源調度方面,通過計算最優靜態閾值的方式作為縮擴容的依據。實際上,網絡中各個因素之前的相關性是不能簡單地通過數學表達式的形式表達出來的,至少目前是如此。通過將機器學習工具應用到網絡領域,以反饋的方式訓練模型,以無限逼近的方式尋求最優結果,顯然是一個更合理的方法?;赑4和機器學習的路由選擇方案是將機器學習工具應用到網絡中的一個初步實踐,可優化和可擴展空間還有很多,相信在不久的將來,機器學習在網絡領域的成果會越來越多,人工智能將引領一個智能化時代的誕生。

參考文獻:

[1]VALADARSKY A,SCHAPIRA M,SHAHAF D,et al. Learning to route[EB/OL].[2018-08-20]. https://www.researchgate.net/publication/321325749_Learning_to_Route.

[2]The P4 Language Consortium. The P4 Language Specification[S/OL].[2018-08-20]. https://p4.org/.

[3]The P4.org Applications Working Group. In-band Network Telemetry(INT) Dataplane Specification[S/OL].[2018-08-20]. https://p4.org/.

[4]MAJER M,BOBDA C,AHMADINIA A,et al. Packet Routing in Dynamically Changing Networks on Chip[C]// IEEE International Parallel & Distributed Processing Symposium. IEEE,2005.

[5]MOHRI M,ROSTAMIZADEH A,TALWALKAR A. Foundations of MachineLearning[M]. The MIT Press,2012.

[6]SUTTON R S,BARTO A G. Reinforcement learning:An introduction[J]. IEEE Transactions on Neural Networks,1998,9(5):1054.

[7]SCHULMAN J,WOLSKI F,DHARIWAL P,et al. Proximal Policy Optimization Algorithms[J]. OpenAI,2017

[8]DONG M,LI Q,ZARCHY D,et al. PCC:Re-architecting Congestion Control for Consistent High Performance[J].NSDI,2015.

[9]WINSTEIN K,BALAKRISHNAN H. Tcp ex machina:Computer-generated congestion control[J].SIGCOMM,2013.

[10]FORTZ B,THORUP M. Increasing Internet Capacity Using Local Search[J]. Computational Optimization & Applications,2004,29(1):13-48.

[11]MICHAEL N,TANG A. HALO:Hop-by-Hop Adaptive Link-State Optimal Routing[J]. IEEE/ACM Transactions on Networking,2014,23(6):1-1.

[12]XU D,CHIANG M,REXFORD J. Link-State Routing with Hop-by-Hop Forwarding Can Achieve Optimal Traffic Engineering[C]// INFOCOM 2008. The 27th Conference on Computer Communications. IEEE. IEEE,2008.

[13]DeepMind AI Reduces Google Data Centre Cooling Bill by 40%[EB/OL].[2018-08-20]. https://goo.gl/QTdU2T.

[14]MAO H,ALIZADEH M,MENACHE I,et al. Resource management with deep reinforcement learning[J]. HotNets,2016.

[15]MAO H,NETRAVALI R,ALIZADEH M. Neural adaptive bitrate streaming with pensive[J]. SIGCOMM,2017:197-210.

作者簡介:

李倩,北京郵電大學在讀碩士,主要研究方向為數據平面編程語言P4和軟件定義網絡;張凱,北京郵電大學在讀碩士,主要研究方向為機器學習以及網絡人工智能;魏浩然,北京郵電大學在讀碩士,主要研究方向為數據中心以及網絡人工智能;張嬌,畢業于清華大學,副教授,博士,主要研究方向包括數據中心網絡、網絡功能虛擬化、網絡人工智能、未來網絡體系架構等。 中超客场积分榜

作者:李倩 張凱 魏浩然 張嬌   來源:郵電設計技術

  免責聲明:本文僅代表作者個人觀點,與C114中國通信網無關。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內容。

給作者點贊

輕松參與

0VS0

表達立場

寫的不太好

本文關鍵字: 網絡71, 交換機11, 運營商1, 網絡協議1, 測試5, 監測3, IBM1, 路由器1, 明基1, IEEE6, ACM1, Google1

Copyright©1999-2019 c114 All Rights Reserved
上海熒通網絡信息技術有限公司版權所有
南方廣告業務部: 021-54451141,54451142 E-mail:[email protected]
北方廣告業務部: 010-63533177,63533977 E-mail:[email protected]
編輯部聯系: 021-54451141,54451142 E-mail:[email protected]
服務熱線: 021-54451141,54451142
滬ICP備12002291號