InfiniBand見解:在數字時代推動高性能計算
進入21世紀以來,在雲計算和大數據的迅猛普及的推動下,數據中心的快速發展變得越來越明顯。在這種變化的環境中,InfiniBand已成為一項關鍵技術,在數據中心的核心中發揮着至關重要的作用。值得注意的是,截至2023年,以ChatGPT等創新技術為代表的大型計算模型的興起將InfiniBand推向了更加關鍵的位置。之所以受到如此高的關注,是因為支撐GPT模型的網絡是在InfiniBand的基礎上構建的。
但是,究竟InfiniBand技術是什麼,具有哪些特性值得被廣泛使用?此外,為什麼圍繞“InfiniBand vs以太網”的爭論仍在繼續?本文將逐一解答這些問題,為InfiniBand技術的複雜性及其在不斷發展的高性能計算領域中的重要性提供有價值的見解。
InfiniBand技術的發展歷程
InfiniBand(IB)是一種強大的通信協議,其發展歷程與計算機架構的演變緊密相連。現代數字計算機的基礎建立在馮·諾依曼架構之上,這種架構包含諸如CPU(包含算術邏輯單元和控制單元)、內存(包括RAM和硬盤)以及輸入/輸出設備等基本組件。
進入20世紀90年代初,計算領域對支持越來越多外部設備的需求激增。為了滿足這一需求,英特爾(Intel)率先在標準PC架構中引入了外設組件互連(PCI)總線設計。這一創新舉措標誌着計算機發展歷程中的關鍵時刻,為後來強大的通信協議InfiniBand的出現奠定了基礎。
隨後,互聯網經歷了快速發展階段,伴隨着在線業務和用戶群的蓬勃發展,這反過來又對IT系統的能力提出了重大挑戰。
在此期間,儘管在摩爾定律的推動下,CPU、內存和硬盤等組件取得了顯著的進步,但PCI總線在升級方面卻面臨著滯後的問題。這種緩慢的發展速度較大程度限制了I/O性能,成為整個系統的瓶頸。
為了解決這一瓶頸,英特爾(Intel)、微軟和SUN等行業巨頭共同合作,推出了 "下一代I/O(NGIO) "技術標準。同時,IBM、Compaq和Hewlett-Packard負責開發“未來I/O(FIO)”。值得注意的是,這三家公司在1998年共同率先創建了PCI-X標準。
FIO開發者論壇和NGIO論壇的合併是一個關鍵轉折點,為InfiniBand貿易協會的成立奠定了基礎。這種合作努力為2000年InfiniBand架構規範1.0版本的正式發布鋪平了道路。從本質上講,InfiniBand的成立旨在取代PCI總線。通過引入RDMA協議,InfiniBand提供了更低的延遲、更高的帶寬和更強的可靠性,從而提高了I/O性能。
1999年5月,一群前英特爾(Intel)和伽利略科技公司的員工走到一起,成立了一家位於以色列的芯片公司邁絡思(Mellanox)。成立後,邁絡思(Mellanox)與NGIO結盟。當NGIO和FIO合併後,邁絡思(Mellanox)無縫過渡到InfiniBand生態系統。2001年是一個里程碑,邁絡思(Mellanox)推出了其首款InfiniBand產品。
然而,2002年,InfiniBand社區格局發生了重大變化。英特爾(Intel)作為關鍵成員,突然將注意力轉向開發PCIExpress(PCIe),該產品於2004年正式推出。與此同時,另一位重要貢獻者Microsoft退出了InfiniBand開發。雖然SUN和Hitachi等一些實體公司堅持了下來,但行業巨頭的離開給InfiniBand的發展蒙上了陰影。
2003年迎來了一個轉折點,InfiniBand發現了一個新的應用領域——計算機集群互連。同年,弗吉尼亞理工大學構建了一個基於InfiniBand技術的集群,在全球超級計算機排名TOP500榜單中名列第三。
2004年,另一個值得關注的InfiniBand非營利組織應運而生——開放Fabric聯盟(OFA)。OFA和IBTA保持着良好合作關係,IBTA專註於InfiniBand協議標準的開發、維護和提升,而OFA則負責開發和維護InfiniBand協議和更高級別的應用程序API。
2005年,InfiniBand發現了另一個應用場景——連接存儲設備。這一時期還見證了InfiniBand和光纖通道(FC)作為存儲區域網絡(SAN)技術的普及,提高了對InfiniBand技術的認識。
隨着InfiniBand的普及,其用戶群不斷增長。到2009年,TOP500榜單中有181個系統採用了InfiniBand技術,儘管當時千兆以太網仍然是主流,有259個系統採用。
2012年後,在高性能計算(HPC)需求不斷升級的推動下,InfiniBand技術不斷進步,市場份額穩步增長。2015年,它在TOP500榜單中的份額首次超過50%。這是一個重要的里程碑,標誌着InfiniBand成為超級計算機首選的內部互連技術。
為了跟上InfiniBand的進步,以太網也在不斷發展。2010年4月,IBTA推出了RoCE(RDMA over Converged Ethernet),將RDMA技術從InfiniBand“移植”到以太網。到2014年,更成熟的版本RoCE v2問世。通過RoCE v2,以太網利用其成本和兼容性優勢,大大縮小了與InfiniBand的技術性能差距。
下圖顯示了2007年至2021年TOP500榜單中的技術份額,展示了高性能計算技術的動態格局
從圖中可以明顯看出,25G和更高速以太網(由深綠線表示)的崛起始於2015年,並迅速獲得了業界的青睞,暫時蓋過了InfiniBand。以GPT-3為代表的大型HPC語言模型的興起引發了社會對高性能計算和智能計算的需求指數級增長。
為了滿足GPT-3等大型HPC語言模型帶來的驚人計算需求,高性能計算集群是不可或缺的構成。在性能方面,InfiniBand是此類集群的首選。
在高性能網絡領域,戰場主要在InfiniBand和高速以太網之間,雙方都表現出了相當的實力。擁有充足資源的製造商通常會選擇InfiniBand,而那些優先考慮成本效益的製造商往往會傾向於高速以太網。
其他技術,如IBM的BlueGene、Cray和英特爾(Intel)的OmniPath,則作為替代技術徘徊在第二梯隊。這些技術之間錯綜複雜的相互作用反映了高性能計算的動態發展。
InfiniBand的技術原理
在追溯了InfiniBand的發展歷史之後,深入探索其工作原理,揭示為什麼它在性能和延遲方面超越了傳統以太網。InfiniBand如何實現如此低延遲和高性能?
開創性的進步:RDMA
如前所述,InfiniBand的一個突出特點是它早期集成了遠程直接內存訪問(RDMA)協議。
在傳統的TCP/IP框架中,數據從網卡傳輸到主存儲器,然後進行額外的傳輸到應用程序的存儲空間。相反,來自應用程序空間的數據遵循類似的路線——從應用程序空間移動到主內存,然後通過網卡傳輸到互聯網。
這種複雜的I/O操作需要在主內存中進行中間複製,從而拉長數據傳輸路徑,給CPU施加負載,並帶來傳輸延遲。
RDMA是一種有效“消除中間商”的技術。RDMA採用內核旁路機制,促進了應用程序與網卡之間的直接數據讀寫,將服務器內部的數據傳輸延遲降至近1微秒。
此外,RDMA的零拷貝機制允許接收端直接從發送方的內存中訪問數據,從而避免了主內存參與。這大大減輕了CPU負擔,顯著提高了整體CPU效率。
如前所述,InfiniBand的廣泛採用在很大程度上歸功於RDMA對數據傳輸效率的變革性影響。
InfiniBand網絡架構
InfiniBand的網絡拓撲結構如下圖所示:
InfiniBand建立在基於通道的架構上,由四個主要組件組成:
-
HCA(主機通道適配器)
-
TCA(目標通道適配器)
-
InfiniBand鏈路(連接通道,從線纜到光纖,甚至板載鏈路)
-
InfiniBand交換機和路由器(用於網絡的集成)
通道適配器,特別是HCA和TCA,在建立InfiniBand通道、確保所有傳輸的安全性和遵守指定的服務質量 (QoS) 水平方面發揮着至關重要的作用。
利用InfiniBand的系統可以構建為多個子網,每個子網能夠支持超過60,000個節點。在子網中,InfiniBand交換機進行第2層處理,而路由器或網橋則促進子網之間的連接。
InfiniBand的第二層處理流程簡潔。每個InfiniBand子網都配備了一個子網管理器,負責生成16位本地標識符(LID)。InfiniBand交換機包含多個端口,可根據第2層本地路由報頭中包含的LID將數據包從一個端口轉發到另一個端口。值得注意的是,交換機主要處理數據包管理,不會主動生成或消耗數據包。
利用其簡單的處理和專有的直通技術,InfiniBand實現了轉發延遲的顯著降低,達到100ns以下的水平。這種延遲速度要比傳統以太網交換機所能提供的速度快得多。
在InfiniBand網絡中,數據以數據包的形式進行串行傳輸,每個數據包的最大容量為4KB。
InfiniBand協議棧
InfiniBand協議採用結構化的分層方法,每一層獨立運行,並向位於其上的層次提供服務。請參考下圖的直觀表示:
InfiniBand協議棧包括物理層,它決定了如何在線上將比特信號結構化為符號、幀、數據符號以及數據包之間的填充,為信號協議提供了精確的規範,從而便於構建高效的數據包。
沿着協議棧向上,鏈路層定義了數據包的格式,並概述了像流量控制、路由選擇、編碼和解碼等基本數據包操作的協議。
網絡層通過在數據包中附加一個40字節的全局路由報頭(GRH)負責路由選擇,從而促進有效的數據轉發。
在轉發過程中,路由器執行可變的CRC校驗,確保端到端數據傳輸的完整性。
在協議棧中,傳輸層負責將數據包傳送到指定的隊列對(QP),並向QP提供如何有效處理數據包的指令。
InfiniBand的1-4層定義清晰,共同構成了一個全面的網絡協議,其端到端的流量控制構成了網絡數據傳輸和接收的基礎,確保了無損網絡的實現。
隊列對(QP)在RDMA技術中起着關鍵作用。QP由發送隊列(SQ)和接收隊列(RQ)兩個部分組成,作為基本通信單元發揮作用。當用戶調用API發送或接收數據時,實際上是將數據放入隊列中。隊列中的請求會按照順序使用輪詢機制進行處理。
鏈路速率
可以使用銅纜或光纜建立InfiniBand鏈路,並根據特定的連接要求選擇專用的InfiniBand線纜。
InfiniBand在物理層定義了多種鏈路速度,例如1X、4X和12X,每個鏈路速度都採用四線串行差分連接,每個方向有兩根線。
例如,早期的SDR(單數據速率)規範為1X鏈路的帶寬為2.5Gbps,4X鏈路的帶寬為10Gbps,12X鏈路的帶寬為30Gbps。但是,由於使用了8b/10b編碼,1X鏈路的實際數據帶寬為2.0Gbps。考慮到鏈路的雙向特性,對於總線而言,總帶寬為4 Gbps。
隨着時間的推移,InfiniBand的網絡帶寬不斷升級,從SDR、DDR、QDR、FDR、EDR和HDR發展到NDR、XDR和GDR,如下圖所示:
InfiniBand的商業產品
飛速(FS)提供涵蓋40G至800G多樣化產品組合,以滿足客戶不同速度需求,包括NDR、HDR、EDR和FRD等。我們的產品線包括InfiniBand Quantum/Quantum-2交換機、InfiniBand光模組 、InfiniBand網卡 以及AOC/DAC線纜(0.5m~100m)。這些產品不僅支持高速互連和極低延遲,還提供可擴展的解決方案,加速開發人員和科研人員的研究、創新和產品開發。
此外,我們在全球擁有7個本地倉庫 ,確保實現快速交貨。飛速(FS)對產品進行嚴格的性能、可靠性、適用場景和兼容性測試,以確保產品卓越表現。作為一家擁有專業技術團隊和豐富跨應用場景解決方案部署經驗的公司,飛速(FS)積極為高性能計算、數據中心、教育、研究、生物醫藥、金融、能源、自動駕駛、互聯網、製造和電信等領域提供定製化的解決方案。同時,我們也為其他領域的客戶提供專業服務,以滿足他們的需求。
結論
總而言之,在高性能計算需求激增的推動下,InfiniBand的發展前景充滿希望。
廣泛應用於擴展計算集群和超級計算機中,InfiniBand憑藉其高性能和低延遲的互連技術脫穎而出。它通過提供更高的帶寬和更低的延遲,無縫地滿足了大量數據傳輸和並發計算的要求。對各種拓撲結構和複雜通信模式的適應性使InfiniBand具有獨特的優勢,成為高性能計算領域的強大選擇。
儘管如此,以太網作為一種普及的網絡技術,仍然處於發展進程中。以不斷提升的速度和技術突破為標誌,以太網已經在數據中心領域鞏固了其地位,並彌補了某些與與InfiniBand之間的差距。以太網擁有全面的生態系統和成熟的標準化支持,因此在典型數據中心環境中,它已成為一種易於獲取且管理便捷的解決方案。
隨着技術的進步和需求的變化,InfiniBand和以太網都準備在不同的應用場景中發揮各自的優勢。InfiniBand和以太網之間的最終贏家仍然不確定,唯有時間能揭示這場競爭的結局。毋庸置疑,它們將繼續引領信息技術的發展,滿足不斷增長的帶寬需求,並為高效的數據傳輸和處理提供強大的能力。
相關文章推薦
郵箱地址
-
Cat5e、Cat6、Cat6a和Cat7網線有什麼區別?哪個更好?
2020年08月21日
-
一文帶你了解SFP、SFP+、SFP28、QSFP+和QSFP28之間的區別
2024年04月13日
-
OM1、OM2、OM3、OM4和OM5多模光纖有什麼區別?
2021年11月24日
-
SFP端口是什麼?有什麼作用?可以接RJ45嗎?
2020年09月15日
-
PCIe卡知識掃盲:你想了解的都在這裡
2020年03月24日