詳解:實現廣域確定性網絡的三種技術路線
上回介紹了確定性網絡的背景,並提到確定性網絡不是單一的技術,而是一系列協議和機制的合集(確定性網絡:打造網絡中的超級高鐵)。那麼到底有哪些技術,怎麼實現的,成熟度怎麼樣?這次就接著聊一聊實現廣域確定性網絡的三種技術路線。
一、1層動態光電交叉/1.5層硬管道切片
最簡單的確定性網絡莫過於全光網,比如點到點連接的裸光纖,服務質量極為穩定,但這樣的方式帶寬沒法統計復用、不支持點到多點傳輸、費用高昂、光纖資源浪費大。因此,要想靈活組網又便宜,還是要引入基於分組交換的以太網。於是就有了OTN(Optical Transport Network,光傳送網絡),其將電域和光域統一管理,可提供巨大的傳送容量、完全透明的端到端波長連接以及電信級保護;因為OTN具有強大的開銷、維護管理以及組網能力,其已成為當前廣域承載的主要技術。
那OTN有沒有問題?它主要有兩大問題。 一是難以動態地光電交叉。 OTN主要採用波分複用和時分複用技術來調度資源,其要求提前建立虛電路連接,然後才能在信道上傳輸信號。 OTN既可以在光層做交叉,也可以在電層做交叉,還可以光電一起做交叉,但開銷和復雜度越往後越高。諾基亞貝爾實驗室在2019年提出了確定性動態網絡(DDN)的概念以及OE(Optical-Ethernet)技術,將光層時隙資源和以太隊列資源聯合進行調度,動態地建立釋放連接,期望時分複用達到統計復用的帶寬利用效果。其採用在中間節點只處理包頭、只在邊緣節點進行FEC差錯校驗、嚴格優先級調度等方式降低管理控制開銷,並試驗了將DDN用於邊緣雲間的確定性互聯。
二是帶寬顆粒不夠細、不夠靈活。 OTN目前最小只能到2.5Gb/s的電層帶寬顆粒,為此,OIF光學互聯論壇提出了FlexE靈活以太網技術,一種在1.5層提供細粒度硬管道切片、業務隔離的技術。 FlexE在以太網L2/L1層之間增加了FlexE Shim層,它通過時分複用分發機制,將多個client接口的數據按照時隙方式調度並分發至多個不同的子通道,使網絡即具備類似於時分複用的獨占時隙、隔離性好的特性,又具備以太網統計復用、網絡效率高的特性。 FlexE 有3種應用模式:鏈路捆綁模式、子速率模式和通道化模式。鏈路捆綁模式是將多個物理通道捆綁起來,形成一個大的邏輯通道,實現大流量的業務傳輸。子速率模式是指單條客戶業務速率小於一條物理通道速率時,將多條客戶速率匯聚起來共享一條物理通道,提高物理通道的帶寬利用率。通道化模式是客戶業務分佈在多條不同物理通道的多條時隙上,多個客戶共享多條物理通道。
換個簡單說法,FlexE是一個接口技術,把以太網接口速率和光接口速率解耦。你可以把4個100G的接口合起來當400G的接口用,也可以把100G的接口劃分出來1G給專門的業務用,目前OIF更有考慮實現MB級別的小顆粒切片。
總結一下,技術路線一是利用OE、FlexE等技術,在光層/1.5層進行調度,通過硬管道切片隔離,保證帶寬層面、業務層面的確定性傳輸。 二、網絡演算+軟件定義隊列 保證確定性帶寬後,如何保證確定性的時延和抖動呢?技術路線一隻能保證業務層面的確定性,為了保證每流、每包級別的確定性,還需要網絡演算和軟件定義隊列技術。 在QoS保障方面,很早就有智能路由、帶時延約束的路由、帶寬時延聯合調度等保障時延的方法,但這些方法大多類似DiffServ模型,得到的結果是統計意義上的平均時延/抖動變小了,是優化的平均指標。平均指標其實跟負載有關,負載小了平均時延自然就小了。而確定性要求的是最壞時延有界,即在有流突發、聚播等情況下,流的最大端到端時延依然不超過某個值;同時滿足低時延,即最壞時延接近最小時延,從而減小時延變化(抖動)。這個時候,就需要確定性網絡演算理論。
先從單節點單流看,確定性網絡演算理論是說已知一條流的到達速率、突發尺寸、到達時間、以及節點的服務速率,那麼就能算出來流在該節點的服務時間。從單節點多流看,已知多條流的上述信息,則可以根據卷積疊加原理,算出各條流的等待時間和服務時間,從而算出各流的逐跳最壞時延。最後從多節點多流看,也就是從全局整個系統看,若全網通過SDN的方式可管可控,已知網絡和流的上述信息,則可以通過控制發包速率、調整髮包時間、邊緣整形等方式,得到每流通過網絡系統的理論端到端時延上界,從而提前為流選擇滿足時延上界要求的合適的路由路徑和調度方法。 其實,很早就有IntServ、異步整形器等這類基於網絡演算的機制,但因為要為每流提供調度器、核心節點要維護每流狀態、存在可擴展性等問題,以及廣域海量流量會實時動態變化,需要強大的實時測量、全局管理、精準控制能力等原因,其未能得到廣泛部署。
此外,各流的等待時間跟它的優先級有關係,在無搶占的情況下,一條流要先等比它優先級高的流傳完,以及同等優先級先到的流傳完後,才輪到它開始傳輸。顯然,如果隊列優先級越多,那麼能夠調度規劃流的粒度就越細。傳統交換機出端口只有8個優先級隊列,是以業務類為粒度進行調度,因此,當前還提出了軟件定義隊列的方法,其最多每端口能創建65000個隊列,希望做到每流每隊列的調度粒度。通過動態地創建隊列、刪除隊列、以及修改隊列調度算法,使得調度方式更加靈活、時延計算更加精細。
三、基於週期的循環隊列調度 那有沒有可擴展性很強的廣域確定性調度機制?有,比如多隊列循環排隊轉發、可擴展確定性轉發、週期具化的循環排隊轉發、Paternoster等機制,它們都是基於週期的循環隊列調度機制,接下來以IETF DetNet工作組提出的周期具化的循環排隊轉發[1][2](CSQF,Cycle Specified Queuing and Forwarding)機制為例進行介紹。 CSQF是基於多周期的多隊列循環調度機制,其要求設備間頻率同步、設備出端口隊列循環排隊轉發、且需維護相鄰節點的周期映射關係,最後將帶有周期信息的分段路由標識符(SID,Segment Routing Identifier)列表附加到數據包。如下圖所示,當發端想要將時間敏感的流發送給收端時,連接建立的工作流程為:(1)集中式網絡控制器收集服務質量的請求。 (2)控制器通過計算滿足約束的可行路徑和周期來生成SID。 (3)控制器將SID標籤棧分配給發端和沿路徑的網絡設備。
SID指定了在每個節點(跳)上傳輸數據包的出端口和傳輸週期。例如,4076表示在4節點的7端口的6週期傳輸該包。因此,啟用CSQF的設備可以通過消耗數據包頭標籤堆棧中可用的第一個SID,以精確的預留時間來轉發時間敏感數據包。此外,分段路由不僅是實現顯式路由的可行方法,還是一種源路由技術,不需要在中間節點和出口節點維持每流狀態,因此具有很好的可擴展性,能調度大規模海量的流量。
這種技術路線和TSN時間敏感網絡的同步調度機制一脈相承,都是基於時分複用的思想;希望通過約束最大隊列長度,從而控制排隊時延;找到合適的逐跳傳輸時延,則可以保證端到端最壞時延有界。此外,DetNet還在TSN的基礎上提出了顯性路由、抖動消減、包複製與消除等三層確定性技術,融合TSN與DetNet是廣域確定性網絡的主要發展方向之一。 四、總結 最後,如下圖總結,筆者認為確定性網絡及其類似技術的共同點是:要解決性能保證與資源共享之間的矛盾。以太網的Best-effort分組轉發就勝在能充分的實現資源共享,而未來確定性網絡的趨勢是:基於IP以太網,通過業務隔離、資源預留,以盡可能低的成本與開銷,實現性能保證與資源共享間的均衡。
https://datatracker.ietf.org/doc/html/draft-chen-detnet-sr-based-bounded-latency [2] S. Chen, J. Leguay, S. Martin and P. Medagliani, “Load Balancing for Deterministic Networks,” 2020 IFIP Networking Conference (Networking), 2020, pp. 785-790. 作者簡介:黃玉棟,北京郵電大學網絡與交換國家重點實驗室研二在讀,研究方向為未來網絡體系架構,確定性網絡,郵箱地址: hyduni@163.com. 【責任編輯:未麗燕 TEL:(010)68476606】