?【更多詳細內(nèi)容,請訪問星融元官網(wǎng)https://asterfusion.com/】
在上一篇中,我們對RoCE、IB的協(xié)議棧層級進行了詳細的對比分析,二者本質(zhì)沒有不同,但基于實際應用的考量,RoCE在開放性、成本方面更勝一籌。本文我們將繼續(xù)分析RoCE和IB在擁塞控制、QoS、ECMP三個關鍵功能中的性能表現(xiàn)。
擁塞控制
擁塞控制即用來減少丟包或者擁塞傳播,是傳輸層的主要功能,但需要借助鏈路層和網(wǎng)絡層的幫助。
RoCEv2 的擁塞控制機制
RoCEv2通過鏈路層PFC、網(wǎng)絡層ECN、傳輸層DCQCN三者協(xié)同配合,實現(xiàn)更高效的擁塞管理,可見,RoCEv2雖然使用了IB的傳輸層協(xié)議,但在擁塞控制方面有所不同。
基于優(yōu)先級的流量控制(PFC)
PFC在RoCEv2中被用于創(chuàng)建無損的以太網(wǎng)環(huán)境,確保RDMA流量不因鏈路層擁塞而丟失。核心原理是下游控制上游某個通道開啟和停止發(fā)送數(shù)據(jù)包,控制方式是發(fā)送PFC Pause和Resume幀,觸發(fā)時機是根據(jù)下游SW的ingress的隊列數(shù)量是否達到某個閾值。
而PFC允許在一條以太網(wǎng)鏈路上創(chuàng)建8個虛擬通道,并為每條虛擬通道指定一個優(yōu)先等級,允許單獨暫停和重啟其中任意一條虛擬通道,同時允許其它虛擬通道的流量無中斷通過。這一方法使網(wǎng)絡能夠為單個虛擬鏈路創(chuàng)建無丟包類別的服務,使其能夠與同一接口上的其它流量類型共存。
圖1 PFC工作機制
如圖1所示,DeviceA發(fā)送接口分成了8個優(yōu)先級隊列,DeviceB接收接口有8個接收緩存(buffer),兩者一一對應(報文優(yōu)先級和接口隊列存在著一一對應的映射關系),形成了網(wǎng)絡中 8 個虛擬化通道,緩存大小不同使得各隊列有不同的數(shù)據(jù)緩存能力。
當DeviceB的接口上某個接收緩存產(chǎn)生擁塞時,超過一定閾值(可設定為端口隊列緩存的 1/2、3/4 等比例),DeviceB即向數(shù)據(jù)進入的方向(上游設備DeviceA)發(fā)送反壓信號“STOP”,如圖中第7個隊列。
DeviceA接收到反壓信號,會根據(jù)反壓信號指示停止發(fā)送對應優(yōu)先級隊列的報文,并將[數(shù)據(jù)存儲]在本地接口緩存。如果DeviceA本地接口緩存消耗超過閾值,則繼續(xù)向上游反壓,如此一級級反壓,直到網(wǎng)絡終端設備,從而消除網(wǎng)絡節(jié)點因擁塞造成的丟包。
顯式擁塞通知(ECN)
ECN(Explicit Congestion Notification)是一種IP頭部用于的擁塞控制的標記位,允許網(wǎng)絡設備在發(fā)生擁塞時標記數(shù)據(jù)包,而不是丟棄它們。
圖2 IP頭部前4幀示意圖
RoCEv2利用ECN位來標記發(fā)生擁塞的數(shù)據(jù)包,接收方在檢測到ECN標記后,發(fā)送CNP(Congestion Notification Packet)給發(fā)送方,后者通過擁塞控制算法(如DCQCN)調(diào)整發(fā)送速率。
數(shù)據(jù)中心量化擁塞通知(DCQCN)
DCQCN(Data Center Quantized Congestion Notification)是一種適用于RoCEv2的擁塞控制算法,是數(shù)據(jù)中心TCP(DCTCP)和量化通知算法的結(jié)合,最初在SIGCOMM'15論文"Congestion control for large scale RDMA deployments"中提出。DC-QCN算法依賴于交換機端的ECN標記。結(jié)合了ECN和速率限制機制,工作在傳輸層。當接收方檢測到ECN標記時,觸發(fā)CNP發(fā)送給發(fā)送方,發(fā)送方根據(jù)反饋調(diào)整發(fā)送速率,從而緩解擁塞。
綜上,PFC、ECN、DCQCN分別工作在鏈路層、網(wǎng)絡層和傳輸層。在RoCEv2中,它們被組合使用,以實現(xiàn)更高效的擁塞管理。
- PFC :防止數(shù)據(jù)包在鏈路層被丟棄,提供無損傳輸,解決一段鏈路的問題。
- ECN/DCQCN :發(fā)送方根據(jù)擁塞標記主動調(diào)整發(fā)送速率,減輕網(wǎng)絡負載。解決端到端網(wǎng)絡的問題。
InfiniBand 的擁塞控制機制
InfiniBand 的擁塞控制機制可分為三個主要部分:
基于信用的流量控制
IB在鏈路層實現(xiàn)基于信用的流量控制(Credit-based Flow Control),該機制實現(xiàn)了無損傳輸,是 InfiniBand 高性能的基礎。發(fā)送方根據(jù)接收方提供的信用(表示可用緩沖區(qū)空間)來控制數(shù)據(jù)包的發(fā)送,接收方在處理完數(shù)據(jù)包后發(fā)送信用給發(fā)送方,以允許繼續(xù)發(fā)送新的數(shù)據(jù)包,從而避免網(wǎng)絡擁塞和數(shù)據(jù)包丟失。
如下圖所示,發(fā)送方當前可用信用值2,通過流水線傳輸(pipelined transfer)連續(xù)向接收方發(fā)送數(shù)據(jù)包,但此時接收方緩沖區(qū)已滿,發(fā)送方會暫停發(fā)送新的數(shù)據(jù)包,直到接收方發(fā)送新的信用。
圖3 基于信用的流量控制示意圖
ECN機制
當網(wǎng)絡中的交換機或其他設備檢測到擁塞時,會在數(shù)據(jù)包的 IP 頭中標記 ECN(Explicit Congestion Notification)。接收方的 CA(Channel Adapter)接收到帶有 ECN 標記的數(shù)據(jù)包后,會生成擁塞通知包(CNP),并將其反饋給發(fā)送方,通知其網(wǎng)絡出現(xiàn)擁塞需要降低傳輸速率。
端到端擁塞控制
發(fā)送方的 CA 在收到 CNP 后,根據(jù) InfiniBand 擁塞控制算法調(diào)整發(fā)送速率。發(fā)送方首先降低數(shù)據(jù)發(fā)送速率以緩解擁塞,之后逐步恢復發(fā)送速率,直到再次檢測到擁塞信號。這個動態(tài)調(diào)整過程幫助維持網(wǎng)絡的穩(wěn)定性和高效性。IBA沒有具體定義特定的擁塞控制算法,通常由廠商定制實現(xiàn)。(HCA,Host Channel Adapters,or IB NIC)
圖4 端到端擁塞控制示意圖
RoCEv2與IB擁塞控制機制比較
兩者的擁塞控制機制比較如下:
RoCEv2 | InfiniBand | |
---|---|---|
Link Layer | Priority-based Flow Control | Credit-based Flow Control |
Network Layer | ECN/CNP | ECN/CNP |
Transport Layer | DCQCN | Vendor-specific Congestion Control |
可見,RoCE與IB的擁塞控制機制基本相同,區(qū)別在于IB的擁塞控制機制集成度較高,通常由單個廠家提供從網(wǎng)卡到交換機的全套產(chǎn)品,由于廠商鎖定,價格高昂。而RoCE的擁塞控制機制基于開放協(xié)議,可以由不同廠家的網(wǎng)卡和交換機來配合完成。
隨著大規(guī)模AI訓練和推理集群的擴展,集合通信流量導致了日益嚴重的擁塞控制問題,由此出現(xiàn)了一些新的擁塞控制技術(shù),如基于In-band Network Telemetry (INT)的HPCC(High Precision Congestion Control),即通過精確的網(wǎng)絡遙測來控制流量,以及基于Clear-to-Send (CTS)的Receiver-driven traffic admission,即通過接收方的流量準入控制來管理網(wǎng)絡擁塞等。這些新技術(shù)在開放的以太網(wǎng)/IP網(wǎng)絡上更容易實現(xiàn)。
圖5 HPCC流控示意圖
圖6 CTS流控示意圖
QoS
在RDMA網(wǎng)絡中,不光RDMA流量要獲得優(yōu)先保證。一些控制報文,如CNP、INT、CTS,也需要特別對待,以便將這些控制信號無損、優(yōu)先的傳輸。
- RoCEv2的QoS
在鏈路層,RoCEv2采用ETS機制,為不同的流量分配不同的優(yōu)先級,為每個優(yōu)先級提供帶寬保證。
在網(wǎng)絡層,RoCEv2則使用DSCP,結(jié)合PQ、WFQ等隊列機制,為不同的流量分配不同的優(yōu)先級和帶寬,實現(xiàn)更精細的QoS。
圖7 DSCP示意圖
- InfiniBand的QoS
在鏈路層,IB采用SL、VL及它們之間的映射機制,將高優(yōu)先級的流量分配到專門的VL,優(yōu)先傳輸。雖然VL仲裁表 (VL Arbitration Table)能夠通過分配不同的權(quán)重來影響和控制帶寬的分配,但這種方式不能保證每個VL的帶寬。
在網(wǎng)絡層,IB的GRH支持8個bit的Traffic Class字段,用于在跨子網(wǎng)的時候提供不同的優(yōu)先級,但同樣無法保證帶寬。
由此可見,RoCE能夠為不同的流量類型提供更精細的QoS 保證和帶寬控制,而 InfiniBand 只能提供優(yōu)先級調(diào)度,而非帶寬的明確保障。
ECMP
RoCE的ECMP
數(shù)據(jù)中心IP網(wǎng)絡為了高可靠和可擴展性,通常采用Spine-Leaf等網(wǎng)絡架構(gòu)。它們通常在一對RoCE網(wǎng)卡之間提供了多條等價路徑,為了實現(xiàn)負載平衡和提高網(wǎng)絡拓撲的利用率,采用ECMP(Equal Cost Multiple Paths) 技術(shù)。對于給定的數(shù)據(jù)包,RoCE交換機使用某些數(shù)據(jù)包字段上的哈希(Hash)值在可能的多條等價路徑中進行選擇。由于可靠傳輸?shù)囊螅粋€RDMA操作應當保持在同一個路徑中,以避免由于不同路徑造成的亂序問題。
在IP網(wǎng)絡中,BGP/OSPF等協(xié)議均可以在任意拓撲上計算出等價路徑,然后由交換機數(shù)據(jù)平面基于IP/ UDP /TCP等頭部字段(如五元組)計算哈希值并輪流轉(zhuǎn)發(fā)到不同路徑上。在RoCE網(wǎng)絡中,為了進一步細分RDMA操作,可以進一步識別BTH頭部中的目的QP信息,從而實施更細粒度的ECMP。
InfiniBand的ECMP
在控制平面,IB的路由基于子網(wǎng)管理器,在拓撲發(fā)現(xiàn)的基礎上實現(xiàn)ECMP,但由于集中式的子網(wǎng)管理器與網(wǎng)絡設備分離,可能無法及時感知網(wǎng)絡拓撲的變化,進而實現(xiàn)動態(tài)的[負載均衡] 。
在數(shù)據(jù)平面,IB的ECMP同樣基于哈希計算和輪轉(zhuǎn)機制。
總結(jié)
- 在擁塞控制方面,RoCE結(jié)合了PFC, ECN和DCQCN提供了一套開放的方案,IB則擁有基于Credit的一套高度集成的方案,但在應對大規(guī)模集合通信流量時均有所不足。
- 在QoS方面,RoCE可以實現(xiàn)每個優(yōu)先級的帶寬保證,而IB僅能實現(xiàn)高等級的優(yōu)先轉(zhuǎn)發(fā)。
- 在ECMP方面,兩者均實現(xiàn)了基于Hash的負載分擔。
總結(jié)來看,IB具備已驗證的高性能和低延時優(yōu)勢,RoCEv2則在互操作性、開放性、成本效益方面更勝一籌,且從市場占比及認可度來看,RoCEv2逐漸比肩IB;但不得不承認的是,RoCE和IB在應對大規(guī)模AI訓練和推理中高帶寬、突發(fā)式和廣播型的集合通信流量時,均有所不足,而RoCE基于其廣泛的以太網(wǎng)生態(tài)系統(tǒng),能夠更快速地擁抱新技術(shù)新協(xié)議,其潛力和可塑性更勝一籌,未來有望在網(wǎng)絡格局中扮演更重要的角色。
參考文檔:
https://zhuanlan.zhihu.com/p/643007675
https://blog.csdn.net/essencelite/article/details/135492115
https://support.huawei.com/enterprise/zh/doc/EDOC1100075566/d1e17776
https://www.researchgate.net/publication/4195833_Congestion_Control_in_InfiniBand_Networks
審核編輯 黃宇
-
以太網(wǎng)
+關注
關注
40文章
5547瀏覽量
174193 -
協(xié)議
+關注
關注
2文章
612瀏覽量
39690 -
iB
+關注
關注
0文章
5瀏覽量
9471
發(fā)布評論請先 登錄
相關推薦
半導體激光器和光纖激光器的對比分析
Wi-Fi與藍牙的波特率對比分析
RoCE與IB對比分析(一):協(xié)議棧層級篇

光伏電站運維管理系統(tǒng)與傳統(tǒng)運維模式對比分析

常用音頻線接口對比分析
risc-v與esp32架構(gòu)對比分析
對比分析點焊機與傳統(tǒng)焊接方法
網(wǎng)關和路由器的對比分析
2020-2022-2024年TI杯全國大學生電子設計競賽官方推薦芯片對比分析比較
交流伺服電機與直流伺服電機的對比分析
全光網(wǎng)絡與傳統(tǒng)網(wǎng)絡架構(gòu)的對比分析

不同地物分類方法在長江中下游典型湖區(qū)應用對比分析

評論