












摘要:針對分布式軟件定義網絡(software-defined networking,SDN)中流量管理調度不均衡的流量工程問題,提出一種基于負載均衡的多控制域流量路由優化的解決方案。首先分析控制消息流量的組成、域內通信及域間通信規則;然后基于4 種控制消息定義控制鏈路流量的構成,明確鏈路承載流量分為控制消息流量和業務流量,建立平衡控制器負載和最小化最大鏈路利用率的優化模型;最后基于域內通信和域間通信提出兩層路由算法。為提高模型求解精度,進一步提出改進離散螢火蟲算法求解最優路由。結合ABILENE 網絡和GEANT 網絡,分析控制消息流量、控制器負載和鏈路負載等評價指標。實驗結果表明,優化模型能有效實現控制器和鏈路負載均衡,控制消息流量是流量工程重要組成部分。相比集中控制模式,扁平分布式控制模式的平均控制器負載降低47.3%,最大鏈路利用率相差不超過15%。
關鍵詞:軟件定義網絡;流量工程;多控制域;離散螢火蟲算法
中圖分類號:TP393 文獻標志碼:A 文章編號:1000-582X(2024)07-110-15
軟件定義網絡(software-defined networking,SDN)是將網絡分為控制平面和數據平面的一種新型網絡結構,能有效解決傳統網絡中流量擁塞、延遲、抖動等痛點,實現流量調度動態靈活、流量測量準確有效的高效流量工程模式[1]。單控制器集中式流量控制模式存在單點故障、負載過高等問題,多控制器分布式管理網絡資源成為一種必要保障[2]。SDN 基于全局網絡視圖、網絡狀態和流量模式等特征能實現新穎的流量工程解決方案[3],特別是多控制器部署方案下的流量工程是研究熱點之一[4]。
基于SDN 的流量工程能提供可靠、全面、高效的流量調度策略,實現交換機之間的業務流量轉發[5],通過多控制器之間互相協作規劃最優路由。相關學者從集中式控制平面提出流量工程方案[6?10]。Agarwal 等[6]首次提出基于流量工程實現SDN 網絡動態路由算法,以達到時延和丟包率的最小化,降低網絡鏈路的負載。Guo 等[7]基于混合SDN 架構,提出了一個混合整數非線性規劃問題,采用啟發式算法SDN/OSPF 流量工程(SDN/OSPF traffic engineering, SOTE)聯合優化SDN 節點的開放式最短路徑優先(open shortest path first,OSPF)權值設置和流量分割比,提高SDN 節點部署效益。Ammal 等[8]提出使用新的白蟻啟發的優化算法優化網絡鏈路利用率,實現網絡動態路徑分配,有效避免應用程序對帶寬的彈性需求擁塞。Wang 等[10]研究如何在線對流量矩陣和流量工程聯合優化,提出一種最大負載優先的流量規則生成策略,有效解決流量矩陣測量問題。多控制器解決方案是大規模SDN 網絡推廣的必然,部分學者進一步研究多控制器協作規劃路由[11?14]。Huang 等[11]實現一個多控制器的流量工程,建立流請求與多個交換機的映射關系,找到最小化流量設置時間的長期交換機-控制器映射和流量分布方案,實現預先計算備份控制器以及控制器故障時的流量分配。Sridharan 等[12]提出一種多控制器流量工程方案,實現控制器與交換機映射和流量分配,使流量設置時間最小化,能有效解決鏈路變化和控制器故障問題。Hua 等[14]考慮多域多層SDN 架構,基于分層控制平面提出一種多域SDN 流量工程方案,通過共享網絡信息庫,實現本地控制器規劃路由和根控制器集中決策路由,有效解決層次控制架構下的流量工程。上述研究未討論分布式控制器架構下的流量工程問題,忽略控制器控制路徑產生流量對整個網絡流量路由的影響,特別是控制鏈路擁堵、負載較高時,易引發網絡控制崩潰的風險。
在扁平分布式控制平面中,控制消息是多控制器之間網絡視圖和鏈路信息同步的載體;對流量工程的研究不能忽略控制消息流量對鏈路流量的影響。同時,從查閱的相關研究中未發現同時探討鏈路負載和控制器的負載均衡。基于此,筆者通過分析控制消息流量的生成規則,提出一種域間流量路由的流量工程方案。
1) 引入4 種控制消息流量,分析控制消息流量所在路由對鏈路負載的影響。
2) 基于多控制器聯合控制機制,討論域內通信和域間通信的策略,建立優化控制器負載和鏈路負載的流量優化模型。
3) 提出兩層路由(two-layered routing,TLR)算法求解流量的域內和域間路由。考慮到模型復雜度,進一步提出一種改進的離散螢火蟲(discrete firefly algorithm,DFA)算法提高模型求解精度。
實驗結果表明,流量優化模型能實現控制器和鏈路負載同時均衡的目標,證明控制鏈路流量對流量工程的重要性。