王超,任蒙,王尚廣
(北京郵電大學(xué)網(wǎng)絡(luò)與交換技術(shù)全國重點實驗室,北京 100876)
在萬物互聯(lián)時代,5G 有效支持了大量新型應(yīng)用接入和大規(guī)模機(jī)器類型通信,提供了毫秒級端到端通信時延、百萬級連接密度和每秒數(shù)十吉比特的峰值速率,用戶服務(wù)體驗明顯提升[1]。隨著工業(yè)4.0的到來,元宇宙、虛擬現(xiàn)實、移動游戲等新型移動網(wǎng)絡(luò)業(yè)務(wù)不斷涌現(xiàn),移動通信數(shù)據(jù)流量急劇增長,據(jù)國際電信聯(lián)盟報告,全球移動數(shù)據(jù)流量將在2030 年達(dá)到每人每月5 016 EB[2]。5G 核心網(wǎng)用戶面負(fù)責(zé)業(yè)務(wù)數(shù)據(jù)流量的處理和轉(zhuǎn)發(fā),如此龐大的流量負(fù)載會給5G 網(wǎng)絡(luò)運(yùn)營及管理帶來巨大壓力。如果5G 用戶面不能及時路由數(shù)據(jù)流量,引起的高時延將會給無人駕駛、智慧醫(yī)療等業(yè)務(wù)帶來災(zāi)難性后果。因此,對5G 核心網(wǎng)用戶面的流量調(diào)度機(jī)制進(jìn)行改進(jìn)與優(yōu)化,提升網(wǎng)絡(luò)服務(wù)質(zhì)量,將對用戶、服務(wù)提供商和基礎(chǔ)設(shè)施提供商具有重要意義。
為避免差異化新興業(yè)務(wù)需求與海量數(shù)據(jù)流量給5G 網(wǎng)絡(luò)造成網(wǎng)絡(luò)擁塞和負(fù)載失衡等問題,對業(yè)務(wù)流量進(jìn)行合理規(guī)劃與調(diào)度是最直接的解決方案。等價多路徑(ECMP,equal-cost multi-path)算法[3]是廣泛應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)(DCN,data center networking)的流量調(diào)度算法,通過將不同流散列分配到多個等價路徑上,實現(xiàn)負(fù)載均衡。但是ECMP 算法通過計算哈希值靜態(tài)分配數(shù)據(jù)流路徑,容易將多數(shù)流分配到同一路徑,造成擁塞。Ma 等[4]提出一種面向DCN的基于蟻群算法的流量負(fù)載均衡調(diào)度算法,該算法提升了鏈路利用率和網(wǎng)絡(luò)吞吐量。Silva 等[5]提出一種用于軟件定義網(wǎng)絡(luò)(SDN,software defined network)數(shù)據(jù)平面的動態(tài)負(fù)載均衡算法,通過動態(tài)調(diào)整流量路由路徑,明顯降低時延和丟包率。對于5G 核心網(wǎng)的流量調(diào)度,Tan 等[6]提出一種面向用戶面的智能路由選擇機(jī)制,依據(jù)用戶面流量負(fù)載選擇開銷最小的路由路徑。此外,Nguyen 等[7]提出一種面向基于矢量包處理的5G 核心網(wǎng)用戶面設(shè)備的動態(tài)負(fù)載均衡算法,考慮了矢量包處理向量速率和會話數(shù)量并將它們作為性能指標(biāo)。但是該算法是基于矢量包處理平臺實現(xiàn)的,缺乏普適性。
雖然上述流量調(diào)度算法不同程度地實現(xiàn)了時延、吞吐量、鏈路利用率等性能優(yōu)化,但是在面向5G 核心網(wǎng)的流量調(diào)度算法中,只依靠某一時刻獲取的用戶面狀態(tài)來制定流量調(diào)度決策,不能跟隨時變的用戶面狀態(tài)信息來調(diào)整路由決策,缺乏連續(xù)性和實時性。為了準(zhǔn)確且實時獲取5G 核心網(wǎng)用戶面網(wǎng)絡(luò)狀態(tài)信息,使其作為路由決策依據(jù),需要引入網(wǎng)絡(luò)測量技術(shù)[8]。
根據(jù)測量方式不同,網(wǎng)絡(luò)測量可以分為主動測量、被動測量和混合測量[9]。主動測量將探測包注入網(wǎng)絡(luò),通過觀察分析探測包狀態(tài),進(jìn)而推測網(wǎng)絡(luò)性能,如Ping、Traceroute 等,但是這種測量方式僅能測量網(wǎng)絡(luò)時延,局限性較大,而且,主動測量不能保證探測包與業(yè)務(wù)數(shù)據(jù)流流經(jīng)同一條路徑,引入了額外帶寬開銷,因此測量結(jié)果往往不準(zhǔn)確。被動測量在網(wǎng)絡(luò)交換設(shè)備上利用流量鏡像或端口轉(zhuǎn)發(fā)來記錄并分析數(shù)據(jù)流量,如NetFlow、sFlow、SNMP 等,但是該測量技術(shù)受到交換設(shè)備性能限制,測量精度較粗,而且僅能測量本地設(shè)備狀態(tài),缺乏對業(yè)務(wù)流量的端到端感知?;旌蠝y量則是嘗試結(jié)合上述2 種測量方式優(yōu)點的一種網(wǎng)絡(luò)測量技術(shù),帶內(nèi)網(wǎng)絡(luò)遙測(INT,in-band network telemetry)是其典型代表。INT 將報文轉(zhuǎn)發(fā)與網(wǎng)絡(luò)測量結(jié)合,通過在交換機(jī)、智能網(wǎng)卡等轉(zhuǎn)發(fā)設(shè)備上收集設(shè)備狀態(tài)元信息并將其插入報文,從而實現(xiàn)隨路測量。INT 因?qū)崟r性強(qiáng)、測量精度高、測量數(shù)據(jù)類型豐富等優(yōu)點引起了業(yè)界的廣泛關(guān)注。
在基于INT 的網(wǎng)絡(luò)流量調(diào)度方面,Yao 等[10]提出一種SDN 中的自學(xué)習(xí)策略控制架構(gòu),為動態(tài)生成控制策略,使用INT 收集網(wǎng)絡(luò)遙測信息,依據(jù)遙測信息運(yùn)行深度強(qiáng)化學(xué)習(xí)算法,實現(xiàn)了網(wǎng)絡(luò)的閉環(huán)控制。針對IEEE 802.11 網(wǎng)絡(luò)無法細(xì)粒度編程和管理多個網(wǎng)絡(luò)的問題,Isolani 等[11]提出一種基于INT 的SDN 框架來收集細(xì)粒度網(wǎng)絡(luò)統(tǒng)計信息,之后基于INT測量的流量統(tǒng)計數(shù)據(jù)為應(yīng)用需求進(jìn)行網(wǎng)絡(luò)切片,以提高服務(wù)質(zhì)量(QoS,quality of service)交付。Katta 等[12]提出一種基于虛擬機(jī)監(jiān)視器的可擴(kuò)展負(fù)載均衡器機(jī)制,該機(jī)制采用路由追蹤機(jī)制,利用INT獲取的鏈路擁塞情況或鏈路利用率來發(fā)現(xiàn)可用路徑,通過操縱報頭字段,將流量引導(dǎo)到可用路徑上,避免網(wǎng)絡(luò)擁塞。
上述INT 原型系統(tǒng)或方案實現(xiàn)主要基于SDN,以用戶數(shù)據(jù)報協(xié)議(UDP,user datagram protocol)報文作為INT 載體。INT 技術(shù)作為一種新型網(wǎng)絡(luò)測量技術(shù),為網(wǎng)絡(luò)擁塞控制、負(fù)載均衡等網(wǎng)絡(luò)管理任務(wù)提供了細(xì)粒度和高精度的實時網(wǎng)絡(luò)狀態(tài)信息。但是,INT 最初是針對有線網(wǎng)絡(luò)設(shè)計的,將INT 應(yīng)用于5G 核心網(wǎng)測量還是一個全新的嘗試,面臨諸多挑戰(zhàn)。首先,INT 遙測報文攜帶遙測指令和遙測數(shù)據(jù)等固有信息,導(dǎo)致網(wǎng)絡(luò)帶寬開銷較大;然后,5G核心網(wǎng)數(shù)據(jù)傳輸速率和復(fù)雜性較高,對網(wǎng)絡(luò)性能進(jìn)行準(zhǔn)確測量難度較大,需要保障INT 技術(shù)測量結(jié)果的準(zhǔn)確性;此外,將INT 引入5G 核心網(wǎng)還可能影響不同服務(wù)的QoS。因此,本文擬研究基于INT 的5G 核心網(wǎng)用戶面流量調(diào)度系統(tǒng),以探究基于實時網(wǎng)絡(luò)狀態(tài)的流量調(diào)度增益。
5G 核心網(wǎng)采用基于服務(wù)的架構(gòu)(SBA,service-based architecture),將控制面與用戶面分離,用戶面分布下沉到網(wǎng)絡(luò)邊緣,實現(xiàn)了用戶面功能(UPF,user plane function)靈活部署,為用戶就近接入和規(guī)劃用戶面路徑提供了可能。為保證用戶面流量通信的可靠性,可以在用戶設(shè)備(UE,user equipment)和數(shù)據(jù)網(wǎng)絡(luò)(DN,data network)之間建立多條協(xié)議數(shù)據(jù)單元(PDU,protocol data unit)會話連接,以冗余鏈路方式保障通信可靠性。但隨著PDU 會話數(shù)量增加,用戶面流量負(fù)載增大,可能造成網(wǎng)絡(luò)擁塞,而且第三代合作伙伴計劃(3GPP,3rd generation partnership project)5G 核心網(wǎng)標(biāo)準(zhǔn)并沒有為PDU 會話制定負(fù)載均衡策略或標(biāo)準(zhǔn)。因此,為了提升5G 核心網(wǎng)服務(wù)質(zhì)量,保證用戶面轉(zhuǎn)發(fā)效率,本文擬設(shè)計并實現(xiàn)一個5G 核心網(wǎng)用戶面流量調(diào)度系統(tǒng)。利用INT 技術(shù)實時高精度感知用戶面狀態(tài)信息,并基于該感知信息提出一種改進(jìn)的路由算法,最終實現(xiàn)PDU 會話高效轉(zhuǎn)發(fā)。
具體而言,本文主要研究內(nèi)容如下。
1) 提出基于INT 的5G 核心網(wǎng)用戶面網(wǎng)絡(luò)狀態(tài)信息感知方案。創(chuàng)新性地將INT 技術(shù)引入5G 核心網(wǎng)網(wǎng)絡(luò)測量中,通過將網(wǎng)絡(luò)遙測信息插入GTP-U(GPRS tunnelling protocol user plane)報文中,實現(xiàn)用戶面狀態(tài)隨路測量。同時,基于INT 技術(shù)規(guī)范設(shè)計了遙測報文格式,保障遙測信息的添加不影響正常數(shù)據(jù)流量傳輸。
2) 提出基于改進(jìn)蟻群算法的流量調(diào)度算法。優(yōu)化傳統(tǒng)蟻群算法的信息素初始化方式,提出基于最大最小蟻群系統(tǒng)和精英螞蟻策略的信息素更新方式?;诟兄木W(wǎng)絡(luò)信息計算啟發(fā)式函數(shù)和信息素函數(shù),實現(xiàn)用戶面路由路徑規(guī)劃。
3) 設(shè)計實現(xiàn)兼容網(wǎng)絡(luò)狀態(tài)信息感知和路由決策的5G 核心網(wǎng)用戶面流量調(diào)度系統(tǒng)。利用高精度、細(xì)粒度的實時感知信息輔助規(guī)劃用戶面PDU 會話路由路徑。該系統(tǒng)與Free5GC的聯(lián)合部署測試表明,其不僅能有效感知5G 核心網(wǎng)用戶面相關(guān)網(wǎng)絡(luò)狀態(tài)信息,而且流量調(diào)度算法較傳統(tǒng)算法實現(xiàn)了更低的端到端時延和丟包率,并確保負(fù)載均衡。
應(yīng)用功能(AF,application function)為5G 核心網(wǎng)提供額外數(shù)據(jù),影響5G 核心網(wǎng)的策略控制,以及邊緣計算應(yīng)用等高級服務(wù)[13]。根據(jù)AF 是否與5G 核心網(wǎng)網(wǎng)元處于同一可信域中(由運(yùn)營商決定),AF 與5G 核心網(wǎng)的交互有2 種模式,如圖1 所示。
當(dāng)AF 不可信時(AF 是由第三方服務(wù)提供商提供的服務(wù)),其必須通過網(wǎng)絡(luò)開放功能(NEF,network exposure function)提供的接口將相關(guān)信息傳輸給其他網(wǎng)元,例如接入和移動性管理功能(AMF)、會話管理功能(SMF)、策略控制功能(PCF)以及統(tǒng)一數(shù)據(jù)管理功能(UDM)。當(dāng)AF 可信時(AF 是網(wǎng)絡(luò)運(yùn)營商內(nèi)部開發(fā)的功能),其可以通過服務(wù)化接口直接與其他網(wǎng)絡(luò)通信。所提流量調(diào)度系統(tǒng)將作為5G 核心網(wǎng)控制面中的一個AF,其主要功能是對UE 發(fā)起的PDU 會話進(jìn)行流量調(diào)度,同時考慮到當(dāng)前開源5G 核心網(wǎng)(Free5GC、Free5GS等)均未實現(xiàn)NEF 相關(guān)功能,所以本文將所提系統(tǒng)作為一個可信AF,并將其部署于5G核心網(wǎng)控制面。
5G 核心網(wǎng)通過建立PDU 會話提供UE 與DN間的數(shù)據(jù)連接,針對PDU 會話規(guī)模急劇膨脹導(dǎo)致會話策略相互影響、網(wǎng)絡(luò)擁塞,以及缺乏負(fù)載均衡策略等問題,本文依據(jù)“觀察、判斷、決策、執(zhí)行”的網(wǎng)絡(luò)控制環(huán)路思想[14],設(shè)計面向5G 核心網(wǎng)用戶面的流量調(diào)度系統(tǒng),主要包含用戶面網(wǎng)絡(luò)狀態(tài)信息感知與路由決策2 個子系統(tǒng),如圖2 所示。
圖2 面向5G 核心網(wǎng)用戶面的流量調(diào)度系統(tǒng)總體架構(gòu)
網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)和路由決策子系統(tǒng)之間通過RESTful 應(yīng)用程序接口(API,application programming interface)交互,兩者模塊化的設(shè)計降低了系統(tǒng)耦合性,并增強(qiáng)了系統(tǒng)的可擴(kuò)展性。所提系統(tǒng)內(nèi)部模塊根據(jù)部署位置的不同分為控制面模塊和用戶面模塊。流量調(diào)度系統(tǒng)部署于5G 核心網(wǎng)控制面,直接與SMF 通信,為其提供流量調(diào)度功能。流量調(diào)度系統(tǒng)用戶面模塊部署于UPF 上,以實現(xiàn)對5G 核心網(wǎng)用戶面網(wǎng)絡(luò)狀態(tài)信息的實時感知。其中,網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)是路由決策子系統(tǒng)運(yùn)行的基礎(chǔ),它通過INT 感知并收集用戶面網(wǎng)絡(luò)狀態(tài)信息,如UPF 間傳輸時延、UPF 內(nèi)處理時延、UPF 端口帶寬等。網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)內(nèi)部采用gRPC[15]實現(xiàn)位于控制面的模塊與位于用戶面模塊之間遙測信息的傳輸。路由決策子系統(tǒng)負(fù)責(zé)執(zhí)行流量調(diào)度算法,確定當(dāng)前PDU 會話最佳路由路徑,通過SMF更新相應(yīng)UPF的包檢測規(guī)則(PDR,packet detection rule)、操作轉(zhuǎn)發(fā)規(guī)則(FAR,forwarding action rule),最終將決策下發(fā)給UPF。具體來說,控制面模塊包含整個路由決策子系統(tǒng)以及網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)部分功能;用戶面模塊包含INT 信息發(fā)送模塊和INT 信息更新模塊。各模塊具體功能如表1 所示。
表1 模塊功能
網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)和路由決策子系統(tǒng)分別解決核心網(wǎng)用戶面的狀態(tài)測量和路由調(diào)度問題,2 個子系統(tǒng)的功能相互補(bǔ)充、配合,最終實現(xiàn)高精度、細(xì)粒度的5G 核心網(wǎng)用戶面網(wǎng)絡(luò)狀態(tài)信息感知,并依據(jù)狀態(tài)信息對新建立的PDU 會話進(jìn)行路由決策,最終提高核心網(wǎng)服務(wù)質(zhì)量。
面向5G 核心網(wǎng)用戶面的流量調(diào)度系統(tǒng)運(yùn)行流程如圖3 所示。網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)在系統(tǒng)啟動時便持續(xù)實時感知用戶面網(wǎng)絡(luò)狀態(tài)信息。
圖3 面向5G 核心網(wǎng)用戶面的流量調(diào)度系統(tǒng)運(yùn)行流程
UE 向5G 核心網(wǎng)控制面發(fā)起PDU 會話建立請求??刂泼娼馕鯬DU 會話建立請求后確定PDU 會話相關(guān)參數(shù),如DN 名稱、UE 位置信息等,并向路由決策子系統(tǒng)請求PDU 會話路由路徑。路由決策子系統(tǒng)解析到達(dá)的請求,確定PDU 會話的源節(jié)點和目的節(jié)點,之后向網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)請求當(dāng)前的用戶面網(wǎng)絡(luò)狀態(tài)信息。路由決策子系統(tǒng)基于狀態(tài)信息執(zhí)行流量調(diào)度算法,并將PDU 會話路由決策返回給控制面??刂泼娼馕鲈撀酚蓻Q策,生成相應(yīng)的PDR、FAR,并使用包轉(zhuǎn)發(fā)控制協(xié)議(PFCP,packet forwarding control protocol)向UPF 發(fā)送調(diào)度指令。用戶面將調(diào)度結(jié)果反饋給控制面,最終由控制面將PDU 會話建立結(jié)果返回給UE。
INT 元數(shù)據(jù)經(jīng)解析后的網(wǎng)絡(luò)狀態(tài)信息,標(biāo)識每個INT原始報文的唯一標(biāo)識符等相關(guān)數(shù)據(jù)均需保存在數(shù)據(jù)庫中。INT 原始報文是由作為INT 接收節(jié)點的UPF 傳輸給INT 收集系統(tǒng)的INT 信息,包括INT報文頭部和所歷經(jīng)的各個UPF 插入的INT 元數(shù)據(jù),其大小受到當(dāng)前流量帶寬、測量頻率、測量參數(shù)等因素影響。本文系統(tǒng)采用MySQL 數(shù)據(jù)庫實現(xiàn)可靠的數(shù)據(jù)存儲和高效的數(shù)據(jù)寫入。此外,當(dāng)用戶查詢當(dāng)前網(wǎng)絡(luò)狀態(tài)信息時,流量調(diào)度系統(tǒng)需快速響應(yīng)以保證數(shù)據(jù)的實時性,因此,本文系統(tǒng)引入輕量級內(nèi)存數(shù)據(jù)庫 Redis 作為系統(tǒng)熱點數(shù)據(jù)緩存,使用Key-Value 的方式存儲用戶最近查詢的熱點數(shù)據(jù),實現(xiàn)對用戶請求的快速響應(yīng)。為防范因SQL 注入攻擊導(dǎo)致網(wǎng)絡(luò)狀態(tài)信息數(shù)據(jù)庫泄露的風(fēng)險,利用權(quán)限設(shè)置防止高風(fēng)險語句執(zhí)行,同時嚴(yán)格檢查輸入變量的類型和格式,防止SQL 注入。針對外部用戶惡意訪問接口導(dǎo)致的系統(tǒng)能力下降的問題,可采用Token 授權(quán)認(rèn)證或者黑白名單等方式實現(xiàn)鑒權(quán)。
網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)作為路由決策子系統(tǒng)的數(shù)據(jù)提供方,通過INT 技術(shù)實現(xiàn)對5G 核心網(wǎng)用戶面狀態(tài)信息的感知,并直接與UPF 進(jìn)行交互。由于該子系統(tǒng)需要與 Free5GC 聯(lián)合部署,而Free5GC 中UPF 的GTP-U 報文處理模式是作為Linux內(nèi)核模塊開發(fā)使用的,因此為使UPF支持INT功能,位于用戶面的INT 信息更新模塊作為Linux內(nèi)核模塊進(jìn)行開發(fā),INT 信息發(fā)送模塊位于Linux用戶空間,采用Linux 系統(tǒng)中通用的Netlink 功能[16]實現(xiàn)2 個模塊之間的通信。
基于INT 的網(wǎng)絡(luò)狀態(tài)信息感知流程如圖4 所示。其中,INT 源節(jié)點是指創(chuàng)建INT 報頭(INT Header)并將其插入報文的UPF,INT 中間節(jié)點是指根據(jù)INT報頭中包含的指令收集用戶面遙測信息(元數(shù)據(jù))的UPF,INT 接收節(jié)點是指提取INT 報頭并收集遙測信息的錨點UPF(PSA-UPF,PDU session anchor-UPF),INT 頭部是INT 遙測信息的報頭,INT 元數(shù)據(jù)(INT Metadata)是需要收集的網(wǎng)絡(luò)狀態(tài)信息。
圖4 基于INT 的網(wǎng)絡(luò)狀態(tài)信息感知流程
5G 核心網(wǎng)用戶面中承載用戶報文的主要協(xié)議為GTP-U,該協(xié)議為支持未來的應(yīng)用程序,實現(xiàn)了一些可用于傳輸任意類型數(shù)據(jù)的GTP-U 擴(kuò)展頭部,例如在3GPP 5G 核心網(wǎng)標(biāo)準(zhǔn)中已定義了幾個擴(kuò)展值:PDU 會話容器、服務(wù)等級指示器等。完整GTP-U報文格式請參考文獻(xiàn)[17]。
本文將所有INT 信息,包括INT 報文、INT 指令、INT 元數(shù)據(jù),均放入GTP-U 擴(kuò)展頭部,并將其作為一個新的GTP-U 擴(kuò)展報文類型。若GTP-U 經(jīng)過的部分路由器、交換機(jī)、UPF 不支持INT,該部分網(wǎng)絡(luò)設(shè)備或UPF 能夠自動忽略GTP-U 擴(kuò)展報頭中的INT 信息并自動轉(zhuǎn)發(fā)報文,保證數(shù)據(jù)流量的正常轉(zhuǎn)發(fā)以及網(wǎng)絡(luò)性能的準(zhǔn)確測量。本文參考P4.org 應(yīng)用工作組提出的INT 規(guī)范[18],結(jié)合5G 核心網(wǎng)用戶面狀態(tài)信息感知需求,設(shè)計圖5 所示的INT 報文格式。
圖5 INT 報文格式
協(xié)議版本號(4 bit)固定為2;D(1 bit)代表丟棄標(biāo)志位,該值為1 時,INT 接收節(jié)點在讀取報文INT 元數(shù)據(jù)后不轉(zhuǎn)發(fā)該報文并丟棄;E(1 bit)代表超過最大跳數(shù)標(biāo)志位,當(dāng)INT 節(jié)點不能添加元數(shù)據(jù)且剩余跳數(shù)為0 時,該值為1;M(1 bit)代表超過最大傳輸單元(MTU,maximum transmission unit)限制標(biāo)志位;Reserved(12 bit)代表保留位,在INT 源節(jié)點該值為1,在其余INT 節(jié)點該字段被忽略;Hop ML(5 bit)代表INT 元數(shù)據(jù)長度;Remaining Hop Count(8 bit)代表允許添加INT 元數(shù)據(jù)的剩余跳數(shù);Instruction Bitmap(16 bit)是INT指令位圖,每個比特位表示一種網(wǎng)絡(luò)遙測數(shù)據(jù)類型;Domain Specific ID(16 bit)代表INT 域ID,規(guī)定當(dāng)前INT 指令適用的范圍,INT 域ID 為0 時,表示所有INT節(jié)點均能根據(jù)INT指令插入對應(yīng)INT元數(shù)據(jù)。
INT 報頭共8 B,之后INT 報文內(nèi)容為INT 元數(shù)據(jù)協(xié)議棧。INT 元數(shù)據(jù)的插入順序受到INT 指令位圖的嚴(yán)格限制,以方便INT 收集系統(tǒng)根據(jù)數(shù)據(jù)類型解析對應(yīng)的INT 元數(shù)據(jù)。該INT 數(shù)據(jù)插入方式實現(xiàn)了較強(qiáng)的兼容性,當(dāng)UPF 不支持INT 時,網(wǎng)絡(luò)轉(zhuǎn)發(fā)設(shè)備可以自動忽略GTP-U 擴(kuò)展頭部中包含的不能識別的INT 信息,繼續(xù)進(jìn)行GTP-U 報文轉(zhuǎn)發(fā),逐步替換原有不支持INT 的UPF 設(shè)備,最終實現(xiàn)基于INT 技術(shù)的5G 核心網(wǎng)用戶面網(wǎng)絡(luò)狀態(tài)信息感知。
INT 報文在INT 源節(jié)點、INT 中間節(jié)點和INT接收節(jié)點中的處理方式如下。
1) INT 源節(jié)點
INT 源節(jié)點根據(jù)預(yù)先設(shè)定的INT 指令和測量頻率對接收到的GTP-U 報文進(jìn)行封裝,包括INT 報頭和INT 元數(shù)據(jù),生成并轉(zhuǎn)發(fā)帶有INT 信息的GTP-U報文。作為INT 源節(jié)點的UPF 收到GTP-U 報文后,首先判斷GTP-U報文是否滿足預(yù)先設(shè)定的測量頻率(設(shè)定測量頻率為2f,其中f為8bit的無符號十進(jìn)制整數(shù)),若不滿足則視為普通GTP-U 報文進(jìn)行轉(zhuǎn)發(fā);若滿足則進(jìn)入添加INT 信息的流程。INT 源節(jié)點確認(rèn)需向GTP-U 報文添加INT 信息后,首先檢查該GTP-U 報文是否有足夠空間容納INT 信息,若空間充足,則向GTP-U 擴(kuò)展頭部中添加INT 報頭,并將INT 源節(jié)點元數(shù)據(jù)插入INT 元數(shù)據(jù)棧中;若沒有足夠空間容納INT 信息或報文長度超過MTU,則單獨(dú)構(gòu)造GTP-U 格式的遙測報文,同時向該報文添加INT 信息。之后將丟棄指示位D 置1,表示該報文為包含INT 信息的遙測報文,需在INT 接收節(jié)點丟棄。最后,更新GTP-U 報文上層協(xié)議校驗和(如IP 報頭校驗和),通過UPF 的PDR、FAR 轉(zhuǎn)發(fā)至下一跳UPF。
2) INT 中間節(jié)點
INT 中間節(jié)點負(fù)責(zé)采集本地UPF 的INT 元數(shù)據(jù),并將其插入具有INT 報頭的GTP-U 報文的INT 元數(shù)據(jù)棧中。作為INT 中間節(jié)點的UPF 首先對收到GTP-U 報文進(jìn)行解析,若該報文不是包含INT 信息的遙測報文,則根據(jù)PDR、FAR 進(jìn)行轉(zhuǎn)發(fā);若該報文是帶INT 信息的遙測報文,則根據(jù)INT 指令判斷GTP-U 報文是否有足夠空間或當(dāng)前長度是否超過MTU。如果空間不足或長度超過MTU,則同樣單獨(dú)構(gòu)建GTP-U 格式的遙測報文,并將原GTP-U 報文中的INT 報頭和所有INT 元數(shù)據(jù)轉(zhuǎn)移到新構(gòu)建的GTP-U 報文中,同時將丟棄指示位D 置1;如果空間充足且長度不超過MTU,則將本地UPF 的INT 元數(shù)據(jù)插入INT 元數(shù)據(jù)棧中。最后,更新GTP-U 報文上層協(xié)議校驗和(如IP 報頭校驗和),按照UPF 的PDR、FAR 進(jìn)行轉(zhuǎn)發(fā)。
3) INT 接收節(jié)點
INT 接收節(jié)點除向GTP-U 報文添加INT 信息外,主要負(fù)責(zé)提取GTP-U 報文中的INT 報頭和INT 元數(shù)據(jù),并通過gRPC 將INT 信息發(fā)送給INT 收集系統(tǒng)。作為INT 接收節(jié)點的UPF 收到GTP-U 報文后進(jìn)行解析,若該報文非遙測報文,則按照PDR、FAR 進(jìn)行轉(zhuǎn)發(fā);若該報文為遙測報文,可按照INT 信息添加流程向該GTP-U 報文添加INT 信息,之后提取所有INT信息,將其通過gRPC 發(fā)送給INT 收集系統(tǒng)。若該GTP-U 報文非INT 探測包,即丟棄標(biāo)志位D 不為1,則刪除包含的所有INT 信息,同時更新GTP-U 上層協(xié)議校驗和,根據(jù)PDR、FAR 進(jìn)行轉(zhuǎn)發(fā);否則丟棄該INT 探測包。
在網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)實現(xiàn)層面,5G UPF的GTP-U 報文解析與轉(zhuǎn)發(fā)功能是以Linux 內(nèi)核模塊的方式實現(xiàn)的,對應(yīng)程序運(yùn)行在Linux 內(nèi)核空間。UPF 轉(zhuǎn)發(fā)用戶面GTP-U 報文時,所有GTP-U 報文均在Linux 內(nèi)核空間中實現(xiàn)解析與轉(zhuǎn)發(fā)。因此,網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)向GTP-U 報文中添加INT 報頭和INT 元數(shù)據(jù)的功能也必須在Linux 內(nèi)核空間實現(xiàn),但gRPC 框架只有處于Linux 用戶空間時才能使用。所以,本文系統(tǒng)基于Netlink 通信框架將位于Linux內(nèi)核空間的INT 信息更新模塊采集到的INT信息傳輸給位于Linux 用戶空間的INT 信息發(fā)送模塊。
網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)實現(xiàn)的適用于INT的Netlink 子協(xié)議號為31。該數(shù)據(jù)傳輸方案中,從Linux用戶空間向Linux 內(nèi)核空間發(fā)送的消息為控制信令,主要功能是設(shè)置UPF 所對應(yīng)的INT 角色,設(shè)置測量頻率和需要感知的網(wǎng)絡(luò)狀態(tài)信息類型,從Linux 內(nèi)核空間向Linux 用戶空間發(fā)送的消息為UPF 作為INT 接收節(jié)點提取到的所有INT 信息。
位于用戶空間的INT 信息發(fā)送模塊和位于內(nèi)核空間的INT 信息更新模塊之間的消息交互過程如圖6 所示。
圖6 消息交互過程
在該數(shù)據(jù)傳輸方案中,首先加載INT 信息更新模塊,使其創(chuàng)建內(nèi)核空間的Netlink 套接字,INT信息更新模塊在內(nèi)核空間采用netlink_unicast()函數(shù)對指定進(jìn)程標(biāo)識符(PID,process identifier)的用戶空間進(jìn)程進(jìn)行通信,所以需要INT 信息發(fā)送模塊率先使用send()函數(shù)發(fā)送初始消息到內(nèi)核空間,使INT信息更新模塊能夠獲取PID。
路由決策子系統(tǒng)是5G 核心網(wǎng)用戶面流量調(diào)度系統(tǒng)的控制中樞,其與網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)交互獲取5G 核心網(wǎng)用戶面狀態(tài)信息,如UPF 端口帶寬、UPF 間鏈路時延、UPF 內(nèi)處理時延等,通過運(yùn)行流量調(diào)度算法,生成PDU 會話路由決策,保障不同用戶服務(wù)的QoS。同時路由決策子系統(tǒng)直接與5G 核心網(wǎng)控制面的SMF 交互,獲取流量調(diào)度請求并將流量調(diào)度決策下發(fā)。路由決策子系統(tǒng)邏輯架構(gòu)如圖7 所示。
圖7 路由決策子系統(tǒng)邏輯架構(gòu)
路由決策子系統(tǒng)的目的是通過運(yùn)行流量調(diào)度和路由算法,在5G 核心網(wǎng)用戶面現(xiàn)有時延和帶寬等條件約束下,為新建的PDU 會話規(guī)劃一條合理路由路徑,避免網(wǎng)絡(luò)擁塞的同時提高用戶面通信鏈路利用率與PDU 會話吞吐量,降低PDU 會話時延。本文借鑒蟻群算法在尋找最優(yōu)路徑方面的分布式計算、魯棒性強(qiáng)、不需要全局信息等特點[19-20],將5G 核心網(wǎng)用戶面當(dāng)前網(wǎng)絡(luò)狀態(tài)信息(鏈路時延、UPF 吞吐量等)加入螞蟻尋路過程中。在已有的基于蟻群算法的網(wǎng)絡(luò)路由相關(guān)工作中,網(wǎng)絡(luò)狀態(tài)信息是固定配置的,蟻群算法不能實時動態(tài)感知變化的網(wǎng)絡(luò)環(huán)境。本文提出一種基于改進(jìn)蟻群算法的流量調(diào)度(IAC-TS,traffic scheduling based on improved ant colony)算法,利用INT 狀態(tài)信息感知系統(tǒng)為蟻群算法提供動態(tài)網(wǎng)絡(luò)信息,在一次迭代中每一只螞蟻單獨(dú)對從基站到DN 的路徑進(jìn)行搜索,形成備選路徑集合。之后,更新螞蟻經(jīng)過路徑的信息素并開始下一次迭代。隨著迭代次數(shù)增加,螞蟻會集中到信息素濃度較高的幾條路徑上,直至到達(dá)指定迭代次數(shù),獲取最優(yōu)路由路徑集合。實現(xiàn)過程如下。
1) 信息素初始化
使用常數(shù)對信息素初始化的方式容易導(dǎo)致收斂速度過慢,為避免該問題,將網(wǎng)絡(luò)鏈路的信息素初始值設(shè)為
其中,τij(0)表示初始鏈路(i,j)上的信息素含量,在5G 核心網(wǎng)用戶面流量調(diào)度背景下,該值表示鏈路的可用帶寬;表示鏈路(i,j)的最大可用帶寬;Txij表示鏈路(i,j)在時間T內(nèi)發(fā)送的字節(jié)數(shù)。
2) 螞蟻轉(zhuǎn)移
螞蟻的初始位置均位于作為源節(jié)點的UPF 上。規(guī)定螞蟻路徑不能形成環(huán)路,因此每只螞蟻都會維護(hù)一個禁忌表,該表存放螞蟻經(jīng)過UPF 節(jié)點ID。螞蟻依據(jù)鏈路信息素濃度計算轉(zhuǎn)移到下一個節(jié)點的概率,計算方式為
其中。i和j分別表示螞蟻的當(dāng)前節(jié)點和下一跳節(jié)點,τij(t)表示時刻t鏈路(i,j)上的信息素濃度,ηij(t)表示時刻t鏈路(i,j)上的啟發(fā)信息,α和β分別表示信息素濃度和啟發(fā)信息的權(quán)重因子,表示位于節(jié)點i的螞蟻k所有未經(jīng)過節(jié)點的集合。
ηij(t)計算式為
若螞蟻所有相鄰節(jié)點均在禁忌表中,則該螞蟻的此次路徑搜索失敗。否則,螞蟻通過輪盤賭方式選擇下一跳節(jié)點,同時檢查禁忌表中是否包含源節(jié)點和目的節(jié)點,若包含則搜索成功。否則,螞蟻重新計算轉(zhuǎn)移概率并選擇下一跳節(jié)點。
3) 信息素更新
所有螞蟻執(zhí)行完一次路徑搜索,即完成一次迭代后,將所得有效路徑通過Top-k算法選擇最優(yōu)的k條路徑添加到候選路徑集中,之后,根據(jù)式(5)更新當(dāng)前鏈路信息素濃度
其中,τij(t+Δt)是經(jīng)過時間Δt后鏈路(i,j)的信息素濃度,ρ(0 〈ρ〈1)是信息素?fù)]發(fā)因子。為提升蟻群算法前期的搜索能力和后期的收斂速度,ρ的取值方式為
其中,I表示算法的當(dāng)前迭代次數(shù),Imax表示最大迭代次數(shù)。
之后再次更新候選路徑集中k條鏈路的信息素濃度以增加優(yōu)質(zhì)鏈路的信息素濃度,保證鏈路質(zhì)量,即
其中,Δτij表示鏈路(i,j)新增的信息素濃度;Δ(t)表示第n只螞蟻在鏈路(i,j)上釋放的信息素濃度;m表示蟻群大?。籐n表示第n只螞蟻走過的路徑總長度,以路徑總時延表示;Q表示信息素總濃度,為一常量;eij表示以i,j為端點的UPF 鏈路;P表示候選路徑集;μ表示候選路徑的信息素增量因子。
為防止鏈路信息素濃度出現(xiàn)極端情況導(dǎo)致螞蟻搜索路徑不準(zhǔn)確,基于最大最小蟻群思想對信息素增量 Δτij進(jìn)行限制,即
其中,τmax、τmin分別表示鏈路(i,j)的最大、最小信息素濃度。為模擬現(xiàn)實網(wǎng)絡(luò)狀態(tài),本文仿真實驗將可用帶寬限制在[5,12]Mbit/s。
算法執(zhí)行到最大迭代次數(shù)Imax后,在候選路徑集中隨機(jī)選擇一條鏈路作為PDU 會話的最終路由路徑,算法的具體實現(xiàn)過程如算法1 所示。
算法1IAC-TS 算法
28)end Func
算法1 中1)~17)行用于計算獲取最優(yōu)路徑,每只螞蟻在成功搜索到從源節(jié)點到目的節(jié)點的一條鏈路后,對所有鏈路信息素濃度進(jìn)行更新,采用Top-k算法選出k條候選路徑。18)~28)行表示單只螞蟻搜索最優(yōu)路徑的過程,采用輪盤賭算法選擇下一跳節(jié)點,并用式(2)計算下一跳節(jié)點的選擇概率。
本文所提系統(tǒng)旨在實現(xiàn)5G 核心網(wǎng)用戶面流量優(yōu)化調(diào)度,具體地,通過INT 技術(shù)對用戶面網(wǎng)絡(luò)狀態(tài)信息感知,并基于路由決策子系統(tǒng)的路由算法實現(xiàn)PDU會話路由路徑規(guī)劃。將所提5G 核心網(wǎng)用戶面流量調(diào)度系統(tǒng)與Free5GC 進(jìn)行聯(lián)合部署,測試環(huán)境如表2 所示。
表2 測試環(huán)境
網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)負(fù)責(zé)監(jiān)控5G 核心網(wǎng)用戶面網(wǎng)絡(luò)狀態(tài),通過INT 技術(shù)實時獲取網(wǎng)絡(luò)狀態(tài)信息,包括用戶面鏈路時延、UPF 內(nèi)GTP-U 報文處理時延、UPF 端口吞吐量等。網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)功能測試拓?fù)淙鐖D8 所示。
圖8 網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)功能測試拓?fù)?/p>
該網(wǎng)絡(luò)拓?fù)浒ㄒ粋€5G 基站(gNB)、3 個具有INT 功能的UPF、一個基于Docker 部署的DN,以及5G 核心網(wǎng)控制面(包含完整的核心網(wǎng)功能、路由決策子系統(tǒng)功能、部分網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)功能)。在UE 中運(yùn)行Iperf 以模擬PDU會話建立請求,UPF1-UPF3 分別作為INT 源節(jié)點、INT 中間節(jié)點、INT 接收節(jié)點,最終將報文發(fā)送至DN。
4.2.1 INT 功能測試
利用UERANSIM建立一條從UE到DN的PDU會話路徑,在UE 上發(fā)送測試報文并使用Wireshark抓包,以驗證GTP-U 報文中是否攜帶INT 信息,測試結(jié)果如圖9 所示。
圖9 測試結(jié)果
測試結(jié)果顯示,UPF1 向該報文的GTP-U 擴(kuò)展頭部中插入了INT 報頭和INT 元數(shù)據(jù),UPF2 作為中間節(jié)點僅插入了INT 元數(shù)據(jù),UPF3 將本地設(shè)備收集的INT 元數(shù)據(jù)和GTP-U 報文中的所有INT 信息一同發(fā)給位于5G 控制面的INT 收集系統(tǒng)。該測試結(jié)果說明INT 功能可以正常使用。
4.2.2 不同遙測參數(shù)對吞吐量的影響
本節(jié)實驗測試不同遙測參數(shù)對PDU 會話吞吐量產(chǎn)生的影響。實驗選用3 種典型的INT 參數(shù)的不同組合進(jìn)行測試:RX+TX 表示測量報文經(jīng)過UPF 端口的接收/ 發(fā)送的字節(jié)數(shù),Egress TS+Ingress TS(Timestamp)表示測量報文經(jīng)過UPF 出口/入口的時間戳,None 表示未啟用INT功能。不同遙測參數(shù)組合對吞吐量的影響如圖10所示,其中遙測間隔是指向每n個報文中插入一項INT 元數(shù)據(jù)。
未啟用INT 功能時,PDU 會話帶寬是一個定值。隨著遙測間隔減小,即測量頻率升高,不同遙測參數(shù)組合的PDU 會話帶寬都會明顯降低,而且更多遙測參數(shù)的組合會在測量頻率升高時使PDU 會話帶寬快速下降,原因是過高的測量頻率會導(dǎo)致在報文中插入了大量的INT 信息,UPF 內(nèi)部處理時延明顯增加,UPF 端口擁塞,從而導(dǎo)致吞吐量下降。因此,過多的遙測參數(shù)會對PDU 會話性能產(chǎn)生不利影響。
4.2.3 不同遙測參數(shù)對時延的影響
通過分析用戶面GTP-U 報文中的INT 元數(shù)據(jù),獲取UPF1 到UPF3 的單向傳輸時延。不同遙測參數(shù)組合對傳輸時延的影響如圖11 所示。
圖11 不同遙測參數(shù)組合對傳輸時延的影響
從圖11 可以看出,在不同的遙測參數(shù)組合下,測量頻率會影響PDU 會話時延。遙測間隔越小,即測量頻率越高,傳輸時延越大,這也與GTP-U 中的INT 信息處理有關(guān)。因此在實際部署INT 功能時,需要對測量精度與對PDU 會話質(zhì)量產(chǎn)生的影響進(jìn)行權(quán)衡。
4.2.4 不同遙測參數(shù)對UPF CPU 利用率的影響
本節(jié)實驗測試不同遙測參數(shù)在不同遙測間隔下對UPF3,即INT 接收節(jié)點的CPU 利用率的影響,在UPF3 上監(jiān)控該設(shè)備的CPU 利用率,實驗結(jié)果如圖12 所示。
圖12 不同遙測參數(shù)在不同遙測間隔下對接收節(jié)點CPU 利用率的影響
隨著遙測間隔減小,即測量頻率提升,不同遙測參數(shù)組合的UPF3 的CPU 利用率都快速提升。一方面,INT 接收節(jié)點設(shè)備本身在收集INT信息和提取INT 信息時會占用一定CPU;另一方面,系統(tǒng)采用的Netlink 和gRPC 技術(shù)頻繁向INT收集系統(tǒng)發(fā)送INT 信息也會占用CPU。因此,需要選擇合理的測量頻率,將INT 引入對CPU 的額外占用的影響降到最小。
4.2.5 鏈路負(fù)載變化對UPF 處理時延的影響
本節(jié)實驗通過改變PDU 路徑上各個UPF 的背景流量大小,測量UPF 單跳處理時延來測試INT的效果。將鏈路帶寬設(shè)置為30 Mbit/s,背景流量設(shè)置為40 Mbit/s,目的是模擬鏈路中存在擁塞的情況。在UE 上通過Iperf 向DN 發(fā)送UDP 報文,測量不同遙測間隔對UPF3 單跳時延的影響,實驗結(jié)果如圖13 和圖14 所示。
圖13 UPF 單跳時延(遙測間隔為一個報文)
圖14 UPF 單跳時延(遙測間隔為8 個報文)
在遙測間隔減小,即遙測頻率提升的情況下,所探測的GTP-U 報文數(shù)量增加,因此UPF 的處理開銷增大,使GTP-U 報文轉(zhuǎn)發(fā)時延增加。另外,由于設(shè)置的背景流量大于鏈路帶寬,因此會有部分GTP-U 報文的處理時延偏高。
本節(jié)對由網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)和路由決策子系統(tǒng)組成的整個流量調(diào)度系統(tǒng)進(jìn)行測試。首先路由決策子系統(tǒng)接收SMF 發(fā)送的PDU 會話路由請求;然后從網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)感知用戶面網(wǎng)絡(luò)狀態(tài)信息,計算PDU 會話路由路徑;最后將路由決策返回給SMF,由SMF 下發(fā)路由決策。流量調(diào)度系統(tǒng)功能測試拓?fù)淙鐖D15 所示。用戶面共包含11 個UPF,UPF1 作為INT 源節(jié)點,UPF9-UPF11 作為INT 接收節(jié)點,其余UPF 均為INT 中間節(jié)點。
圖15 流量調(diào)度系統(tǒng)功能測試拓?fù)?/p>
4.3.1 PDU 會話流量調(diào)度功能測試
本節(jié)實驗測試路由決策子系統(tǒng)與SMF 之間的連通性。將所提流量調(diào)度系統(tǒng)與Free5GC 聯(lián)合部署,通過UERANSIM 模擬的UE 發(fā)起PDU 會話建立請求,發(fā)送數(shù)據(jù)報文進(jìn)行測試,在網(wǎng)絡(luò)狀態(tài)信息數(shù)據(jù)庫中查詢報文中的INT 元數(shù)據(jù),通過跟蹤該報文的路徑信息,判斷是否執(zhí)行正確的路由決策。
圖16 顯示了運(yùn)行流量調(diào)度系統(tǒng)后,UE 建立PDU 會話連接時的5G 核心網(wǎng)運(yùn)行結(jié)果。
圖16 5G 核心網(wǎng)運(yùn)行結(jié)果
由圖16 可知,在UE 請求建立PDU 會話過程中,SMF 向流量調(diào)度系統(tǒng)請求對應(yīng)PDU 會話的路由路徑,最終完成PDU 會話建立。解析完成后的INT 元數(shù)據(jù)如圖17 所示。
圖17 解析完成后的INT 元數(shù)據(jù)
圖17 顯示了2 個攜帶INT 信息的GTP-U 報文經(jīng)過不同的UPF,data_id 為3801616~3801618 是第一個報文,data_id 為3801619~3801621 是第二個報文,node_id 是GTP-U 經(jīng)過的不同UPF 的編號,結(jié)果顯示路由決策子系統(tǒng)選用了不同的UPF 對GTP-U 報文進(jìn)行了轉(zhuǎn)發(fā)。
4.3.2 不同算法對PDU 會話流量調(diào)度性能的影響
PDU 會話建立完成后,在DN 中設(shè)置Iperf 服務(wù)端程序測量PDU 會話端到端時延、帶寬以及丟包率,UE 通過Iperf 客戶端發(fā)送UDP 報文模擬數(shù)據(jù)流量。設(shè)置UE 每隔10 s 發(fā)起一個新的PDU 會話請求,每個成功建立的 PDU 會話均發(fā)送帶寬固定為1.05 Mbit/s的UDP報文,發(fā)送報文持續(xù)時長為200 s,直至建立10 條PDU 會話。將所提IAC-TS 算法與傳統(tǒng)路由算法(包括最短路徑算法、ECMP 算法,以及廣度優(yōu)先搜索(BFS,breadth-first search)算法)進(jìn)行性能對比,實驗結(jié)果如圖18~圖20 所示。
圖18 端到端傳輸時延
圖19 端到端平均吞吐量
圖20 端到端平均丟包率
從圖18~圖20 可以看出,所提IAC-TS 算法在網(wǎng)絡(luò)負(fù)載相同的情況下,PDU 會話的端到端傳輸時延和丟包率均低于最短路徑算法、ECMP 算法和BFS 算法,而平均吞吐量具有明顯提升。具體來看,較其他算法,IAC-TS 算法的端到端傳輸時延平均降低72.03%,端到端平均吞吐量平均提升9.88%,端到端平均丟包率降低76.1%。說明基于改進(jìn)蟻群算法的路由方案使路由決策子系統(tǒng)能夠做出更好的PDU 會話路由決策,避免用戶面網(wǎng)絡(luò)擁塞,提升PDU 會話吞吐量和帶寬,達(dá)到了負(fù)載均衡效果,進(jìn)而提升了服務(wù)質(zhì)量。
5G 復(fù)雜應(yīng)用和龐大業(yè)務(wù)流量對核心網(wǎng)服務(wù)質(zhì)量提出更高需求。本文設(shè)計并實現(xiàn)了5G 核心網(wǎng)用戶面流量調(diào)度系統(tǒng),包含網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)和路由決策子系統(tǒng)。網(wǎng)絡(luò)狀態(tài)信息感知子系統(tǒng)采用INT 實現(xiàn)高精度、細(xì)粒度的用戶面狀態(tài)信息感知,路由決策子系統(tǒng)依據(jù)用戶面狀態(tài)信息,執(zhí)行基于改進(jìn)蟻群算法的流量調(diào)度算法,生成PDU 會話路由路徑。在測試階段,將所提流量調(diào)度系統(tǒng)與Free5GC聯(lián)合部署,證明了所提系統(tǒng)能夠以較小的網(wǎng)絡(luò)開銷實現(xiàn)對用戶面狀態(tài)信息的感知,而且所做PDU 會話路由決策在時延、吞吐量和丟包率等方面均優(yōu)于其他幾種路由決策算法。
在未來工作中,將進(jìn)一步改進(jìn)INT 信息收集架構(gòu),避免因測量頻率提升導(dǎo)致INT 信息占用大量帶寬的問題;此外,需要實現(xiàn)測量頻率、網(wǎng)絡(luò)狀態(tài)參數(shù)自動調(diào)整以節(jié)約測量開銷并快速定位網(wǎng)絡(luò)問題;還將考慮采用更加先進(jìn)高效的流量調(diào)度算法來提升5G 核心網(wǎng)用戶面數(shù)據(jù)流量的路由效果。