自上一次云計算大潮以來,產業界也許從來沒有如此亢奮過,從底層器件到上層軟件都到了十字路口。 ? 以太網平穩發展50年,越過山丘突然發現還有人等候,InfiniBand 老樹發新芽枯木又逢春,不得已帶頭大哥又吹響集結號成立UEC。
? 01 UEC的研究方向 ? 超以太網聯盟致力于從物理層、鏈路層、傳輸層、軟件層改進以太網技術,在兼容當前以太網生態的前提下,提升以太網的轉發性能,致力于改進以太網通信的協議、應用程序接口,改進存儲、管理、安全結構,改進遙測能力,使超以太網技術滿足人工智能和高性能計算對網絡的需求。 ? 超以太網聯盟UEC確定了需要重點關注的網絡類型為Type2 Network(BackEnd Network),也不反對在Type1(FrontEnd Network)中使用,但不會因為要適配Type1而降低Type2的網絡性能。
UEC確定了每種網絡類型的性能指標。
? 02 UEC的工作組 ? UEC最初成立了四個工作組,分別是物理層、鏈路層、傳輸層、軟件層工作組,已經取得了出色的成績。近期又成立了存儲、管理、兼容性&測試、性能&調試工作組,剛剛展開工作。下圖是UEC的工作組劃分:
# 物理層工作組
致力于提高物理性能,減少延遲,改善以太網物理基礎設施的管理。包括以太網物理層規范、電氣和光信號特性、應用程序接口和數據結構的開發。目標是使基礎更加強大,確保以太網能夠滿足AI和HPC的嚴格要求。當前物理層工作組致力于100G/Lane和200G/Lane的PHY規范制定,已經確定了100G /Lane 介質類型、PHY支持的速率和類型。200G/Lane的規范等IEEE P802.3dj批準后再定。
物理層工作組針對鏈路質量預測引入了幾個新的概念UCR(uncorrectable codeword ratio),MTBPE(the mean time between PHY errors),MTTFPA(the mean time to false packet acceptance),致力于更精確的預測和度量物理層鏈路質量。
# 鏈路層工作組
鏈路層工作組致力于提升鏈路層傳輸的可靠性和傳送效率,提升鏈路層telemetry能力。
鏈路層主要研究方向有:
>Link Layer Reliability:
在鏈路層增加LLR子層,位于LLC和MAC CONTROL子層之間,用于鏈路層端到端錯包重傳。
>Credit-based flow control:
在鏈路層支持端到端基于信用的流控機制,管理鏈路間幀的無損傳輸。CBFC(Credit-Based Flow Control)機制用來替換PFC流控。接收者周期性發送buffer空間給對端,發送者基于報文優先級和buffer大小發送報文。Buffer空間也可以用于自適應路由選路。
>Packet rate improvement:
致力于以太網報文頭的壓縮,以增加幀的傳送效率。以太網在長期演進過程中,報文頭不斷擴展,導致傳送效率比較低,在智算網絡中有很多字段是用不到的,因此壓縮報文頭,提升幀的傳送效率勢在必行。
壓縮報文和非壓縮報文要能在網絡中共存,報文頭中需有個標志可以指示報文是壓縮的還是非壓縮的發送者可以選擇是否壓縮報文,不影響原有的功能。
目前報文頭壓縮有多個方案,正在討論中。
>Negotiation:
建立鏈路層參數和特性的協商方法。鏈路層新增的幾個能力如LLR、CBFC、PRI,需要協商才能支持,主要思路是擴展LLDP,增加一個UEC OUI,用于設備間新增鏈路層能力的協商。
# 傳輸層工作組
UET(UEC transport layer)工作組致力于解決最具挑戰性的應用程序擴展、報文可靠傳輸、數據安全傳送以及避免網絡中的擁塞。它的目標是解決RoCE傳輸的缺點,提供高效、可靠、安全的大規模傳輸。目標傳輸端點達到256,000,支持的進程數達到100,000,000。
UET的主要模塊如下圖所示:
UET包含Packet Delivery、Security、Semantics三個模塊,各個模塊功能如下:
>Packet Delivery sulayer(PDS):
報文傳送子層包含可靠性和擁塞管理兩個模塊。
可靠性模塊需要覆蓋三個關鍵需求:
1) 極端擴展能力
2) 報文有序傳輸
3) 報文亂序傳輸
可靠性模塊設計四種報文傳輸模式,每一種模式用于特定目的。以滿足HPC,AI,ML等應用場景。這四種報文傳輸模式分別是:
1)Reliable, ordered delivery (ROD)可靠,有序傳輸: 這種模式按照順序傳輸報文,用于需要消息有序傳輸的應用。
2)Reliable, unordered delivery for operations (RUD)可靠,無序傳輸: 這種模式只能向語義層傳輸一次報文,但是可以忍受網絡中的亂序傳輸。
可靠性傳輸層需要檢測重復報文,以確保每一個報文只能向語義層傳送一次。
3)Reliable, unordered delivery for idempotent[] operations (RUDI)可靠,用于冪等運算的無序傳輸:這種模式是針對對RDMA讀寫操作做的優化。
4)Unreliable, unordered delivery (UUD)不可靠,無序傳輸: 不可靠報文可以承載許多UET的新語義,用戶不需要可靠傳輸,用戶采用其他可靠性手段。
擁塞管理模塊還在研究中,包含擁塞管理和負載均衡,能基于每個FEP進行擁塞管理。核心是基于接收方信用的流量控制。擁塞控制定義窗口大小、注入速率,目標是可以減少速率并限制報文,避免中間節點和端點的擁塞。路徑負載均衡定義特定報文選擇那一條路徑,可以用ECMP選路。
>Transport Security:
安全傳輸是UET設計的重中之重,可以選擇對所有數據負荷和大部分的傳輸頭的加密和認證。
>Semantics:
UET語義層提供高性能,高擴展性的操作,使能特殊化的AI和全特性的HPC部署。
語義層是用戶軟件和PDS(報文遞交層)的橋梁,語義層定義一系列操作,比如發送,接收,寫,讀等。語義層提供可選的排序,各種可選的發起者或者目標完成通知能力。
語義層提供無連接的調用API,必須原生支持*CCL、 MPI、OpenSHMEM等API。
# 軟件層工作組
軟件層通過與當前各種廣泛采用的通信庫(如*CCL、MPI和SHMEM)兼容的方式,使用libfabric API作為數據平面框架,促進對UEC的快速采用。定義各種加速器和FEP之間的交互方式,包括相關的加速器API。定義交換機、FEP以及聚合管理器(AM)的控制平面和數據平面機制,允許不同UEC供應商之間的互操作性。解決UEC支持多種工作負載配置文件的需求。
軟件層對于INC需要做的工作包括:
1) 定義一種使用INC的集合通信(libfabric)的API(使用C語言)。
2) 定義一種發現機制來確認可用的INC卸載能力。
3) 定義這些庫用來與聚合管理器(AM)通信的RPC接口。規定用于AM與提供INC資源的UEC交換機之間通信的RPC接口。
4) OpenConfig擴展,用于配置網絡設備的FEP(由AM配置)以進行集合通信卸載,并對性能和錯誤進行監控。
5) 符合INC的網絡設備的行為,具有多個特性配置文件。并引導UEC傳輸協議的開發,以便INC技術可以輕松地應用到硬件實現中。
最后的倔強 ? The Network as? an island of stability amidst the storm
? ? ? ?審核編輯:黃飛
?
評論
查看更多