SDN和EONs的結合會是未來光控制平面的有力解決方案之一,本文將從軟體定義光網絡中的故障恢復和資源分配兩個方面做簡短的介紹。
作者:張旭來源:SDNLAB|2017-11-02 07:03前言
傳統IP分組交換網使用域內路由協議(Interior Gateway Protocol,IGP)和域間路由協議(Border Gateway Protocol,BGP)實現了***的互聯,構建了全球範圍內的大規模Internet。但是,隨著移動網際網路和物聯網的快速發展,新業務層出不窮,業務需求也千變萬化,傳統分布式的網絡已不堪重負。同時,由於控制平面與數據平面集於一身的特徵,傳統網絡也面臨網絡擁塞、設備複雜、運維困難、新業務部署慢等諸多問題。軟體定義網絡(Software Defined Networking,SDN)打破了傳統網絡的垂直集成,通過控制與轉發分離的方式實現了控制邏輯集中、開放網絡編程接口的特點,為網絡注入了新的活力,使得網管可以對網絡進行靈活地配置與重配置。
SDN的可編程性和開放性也為光網絡的革新提供了新的機會。光網絡在經歷了時分復用(Time Division Multiplexing,TDM)、波分復用(Wavelength Division Multiplexing,WDM)之後也趨於走向未來的基於正交頻分復用(Orthogonal Frequency Division Multiplexing ,OFDM)的靈活的彈性光網絡(Elastic Optical Networks,EONs)。然而,EONs繼續為網絡用戶提供大容量傳輸的同時,也對光網絡的靈活管控提出了新的挑戰。因此,SDN和EONs的結合(SD-EONs,架構如下圖所示)會是未來光控制平面的有力解決方案之一,本文將從軟體定義光網絡中的故障恢復和資源分配兩個方面做簡短的介紹。
圖(a)SD-EONs網絡架構;(b)BV-WSS結構;(c)OF-AG結構;(d)ER結構;(e)光流表
一、故障恢復
任何網絡都應該具有故障的容忍能力,當然光網絡也不例外,恢復力也是光網絡中最渴望的屬性之一。在SD-EONs中,恢復力通常可以分為保護策略和恢復策略。保護是一種先驗式的策略,而恢復是一種反應式的策略。保護策略是預先規劃的,無論網絡故障是否發生,它們總是一直存在著。文獻1中提供了一種環網的保護策略,利用流表的優先級來預先下發高優先級的工作流表和低優先級的保護流表。網絡正常工作時使用高優先級的流表,一旦網絡發生故障立即切換到低優先級的流表來恢復網絡的通信。保護策略的好處就是故障恢復的時間非常短,因為整個過程不需要額外的信息交互。缺點就是保護路徑再次發生故障時無法恢復通信,此外對於大規模複雜的網絡拓撲設計完善的保護算法的難度也非常大。恢復策略需要設計感知故障的方法,同時也要設計用於故障恢復的算法。文獻2中利用探測包的方式動態地監測網絡鏈路狀態,一旦節點或鏈路發生故障,光代理模塊會將故障信息反饋給控制器,控制器中的故障恢復應用運行動態的路由算法DAPSP(Dynamic All Pairs Shortest Paths)通過重路由的方式來恢復通信。當然,在軟體定義的光網絡中,控制器的故障也不容忽視,因為一旦控制器發生故障很可能會導致整個網絡的癱瘓。文獻3設計了一種主從控制器的方案來加強控制平面的魯棒性。主從控制器之間周期性的同步網絡的狀態信息。在正常工作狀態下,使用主控制器來管控網絡,一旦主控制器發生故障,從控制器立即接管網絡的控制與管理。
二、資源分配
EONs利用光正交頻分復用(Optical Orthogonal Frequency Division Multiplexing, OOFDM)技術可以根據不同帶寬的業務請求按需動態的分配頻譜資源,並將頻譜資源分成許多細粒度的頻隙,同時還可以根據請求的需要把頻隙進行拆分與聚合,這樣就能夠節約頻譜資源,從而提高頻譜資源的利用率。EONs最明顯的特徵就是彈性可變,多調製模式類型的轉發器能夠根據業務類型自主地選擇***的調製等級。在SD-EONs中設計路由與頻譜分配算法應該注意頻譜連續性、頻譜一致性和頻譜衝突性三個約束。頻譜連續性:是指為每個業務分配的頻譜槽必須是連續的,中間沒有間隔;頻譜一致性:是指對於一個業務來說,在光路徑經過的光鏈路上,應採用相同序號的光譜資源;頻譜衝突性:是指不同業務之間需要一定的保護帶寬,用以保證每條業務連接請求所佔用的頻譜間隙不重疊,確保信號在傳輸、處理過程中不會相互幹擾。文獻4設計了一個基於頻譜效率與連通度(Spectral Efficiency and Connectivity,SEC)的路由調製等級和光譜分配(Routing, Modulation Level and Spectrum Allocation,RMLSA)的算法SEC-RMLSA來提升SD-EONs的業務承載能力。
光流表
在光設備中,數據的轉發應該按照光流表來進行操作。一個簡單的光流表由輸入埠(In Port)、輸出埠(Out Port)、中心頻率(Central Frequency,CF)、頻譜槽寬度(Slot Width,SW)和調製格式(Modulation Format,MF)組成。在這裡介紹一種基於Flow_Mod消息擴展光流表的簡單方法。
小提示:
!:大端存儲;C:char,字符型;B:一個字節長度,無符號字符型;I:4個字節長度,int型;H:兩個字節長度;Q:八個字節長度;x:padding;3x:3個字節的padding;5s:5個字節的字符串。在光設備中,數據的轉發應該按照光流表來進行操作。一個簡單的光流表由輸入埠(In Port)、輸出埠(Out Port)、中心頻率(Central Frequency,CF)、頻譜槽寬度(Slot Width,SW)和調製格式(Modulation Format,MF)組成。在這裡介紹一種基於Flow_Mod消息擴展光流表的簡單方法。
步驟1
目錄:ryu/ryu/ofproto/ofproto_v1_3.py
首先,先需要把ofp_action_output中的協議格式重新定義,即將原來末尾的6x填充域重定義為3個HHH的格式,分別用於存儲中心頻率、頻譜槽寬度和調製格式。
步驟2
目錄:ryu/ryu/ofproto/ofproto_v1_3_parser.py
接著,在解析和序列化函數中分別添加中心頻率、頻譜槽寬度、調製格式3個變量。
步驟3
目錄:在你所開發的應用中。
***,將擬設計算法輸出的3個參數加載到action中的末尾。以及將封裝好的Flow_Mod消息發送給光代理。如圖所示的結果,利用Wireshark抓到的Flow_Mod消息。
【編輯推薦】
【責任編輯:
趙寧寧TEL:(010)68476606】