歡迎光臨
每天分享高質量文章

關於InfiniBand幾個基本知識點解釋

IP網絡協議如TCP/IP,具有轉發丟失資料包的特性,網絡不良時要不斷地確認與重發,基於這些協議的通信也會因此變慢,極大地影響了性能。與之相比,IB使用基於信任的、流控制的機制來確保連接的完整性,資料包極少丟失。

使用IB協議,除非確認接收快取具備足夠的空間,否則不會傳送資料。接受方在資料傳輸完畢之後,傳回信號來標示快取空間的可用性。通過這種辦法,IB協議消除了由於原資料包丟失而帶來的重發延遲,從而提升了效率和整體性能。 


什麼是InfiniBand網絡


InfiniBand是一種網絡通信協議,它提供了一種基於交換的架構,由處理器節點之間、處理器節點和輸入/輸出節點(如磁盤或儲存)之間的點對點雙向串行鏈路構成。每個鏈路都有一個連接到鏈路兩端的設備,這樣在每個鏈路兩端控制傳輸(發送和接收)的特性就被很好地定義和控制了。

InfiniBand通過交換機在節點之間直接創建一個私有的、受保護的通道,進行資料和訊息的傳輸,無需CPU參與遠程直接記憶體訪問(RDMA)和發送/接收由InfiniBand配接器管理和執行的負載。

配接器通過PCI Express接口一端連接到CPU,另一端通過InfiniBand網絡端口連接到InfiniBand子網。與其他網絡通信協議相比,這提供了明顯的優勢,包括更高的帶寬、更低的延遲和增強的可伸縮性。

什麼是InfiniBand架構


InfiniBand Architecture(IBA)是為硬體實現而設計的,而TCP則是為軟體實現而設計的。因此,InfiniBand是比TCP更輕的傳輸服務,因為它不需要重新排序資料包,因為較低的鏈路層提供有序的資料包交付。傳輸層只需要檢查包序列並按順序發送包。

進一步,因為InfiniBand提供以信用為基礎的流控制(發送方節點不給接收方發送超出廣播 “信用“大小的資料包),傳輸層不需要像TCP視窗演算法那樣的包機制確定最優飛行包的數量。這使得高效的產品能夠以非常低的延遲和可忽略的CPU利用率嚮應用程式交付56、100Gb/s的資料速率。

IB是以通道(Channel)為基礎的雙向、串行式傳輸,在連接拓樸中是採用交換、切換式結構(Switched Fabric),所以會有所謂的IBA交換器(Switch),此外在線路不夠長時可用IBA中繼器(Repeater)進行延伸。

而每一個IBA網絡稱為子網(Subnet),每個子網內最高可有65,536個節點(Node),IBASwitch、IBA Repeater僅適用於Subnet範疇,若要通跨多個IBA Subnet就需要用到IBA路由器(Router)或IBA網關器(Gateway)。

至於節點部分,Node想與IBA Subnet接軌必須透過配接器(Adapter),若是CPU、記憶體部分要透過HCA (Host Channel Adapter),若為硬碟、I/O部分則要透過TCA (Target Channel Adapter),之後各部分的銜接稱為聯機(Link)。上述種種構成了一個完整的IBA。

InfiniBand速率發展介紹


InfiniBand串行鏈路可以在不同的信令速率下運行,然後可以捆綁在一起實現更高的吞吐量。原始信令速率與編碼方案耦合,產生有效的傳輸速率。編碼將通過銅線或光纖發送的資料的錯誤率降至最低,但也增加了一些開銷(例如,每8位資料傳輸10位)。

典型的實現是聚合四個鏈接單元(4X)。目前,InfiniBand系統提供以下吞吐量速率:


InfiniBand網絡主要上層協議

 InfiniBand為不同型別的用戶提供了不同的上層協議,併為某些管理功能定義了訊息和協議。InfiniBand主要支持SDP、SRP、iSER、RDS、IPoIB和uDAPL等上層協議。

  • SDP (Sockets Direct Protocol)是InfiniBand Trade Association (IBTA)制定的基於infiniband的一種協議,它允許用戶已有的使用TCP/IP協議的程式運行在高速的infiniband之上。

  • SRP(SCSIRDMA Protocol)是InfiniBand中的一種通信協議,在InfiniBand中將SCSI命令進行打包,允許SCSI命令通過RDMA(遠程直接記憶體訪問)在不同的系統之間進行通信,實現儲存設備共享和RDMA通信服務。

  • iSER(iSCSI RDMA Protocol)類似於SRP(SCSI RDMA protocol)協議,是IB SAN的一種協議 ,其主要作用是把iSCSI協議的命令和資料通過RDMA的方式跑到例如Infiniband這種網絡上,作為iSCSI RDMA的儲存協議iSER已被IETF所標準化。

  • RDS(Reliable Datagram Sockets)協議與UDP 類似,設計用於在Infiniband 上使用套接字來發送和接收資料。實際是由Oracle公司研發的運行在infiniband之上,直接基於IPC的協議。

  • IPoIB(IP-over-IB)是為了實現INFINIBAND網絡與TCP/IP網絡兼容而制定的協議,基於TCP/IP協議,對於用戶應用程式是透明的,並且可以提供更大的帶寬,也就是原先使用TCP/IP協議棧的應用不需要任何修改就能使用IPoIB。

  • uDAPL(User Direct Access Programming Library)用戶直接訪問編程庫是標準的API,通過遠程直接記憶體訪問 RDMA功能的互連(如InfiniBand)來提高資料中心應用程式資料訊息傳送性能、伸縮性和可靠性。

iSER (iSCSI Extensions for RDMA)和NFSoRDMA (NFS over RDMA),SRP (SCSI RDMA Protocol) 等是InfiniBand中的一種通信協議,在InfiniBand中將SCSI命令進行打包,允許SCSI命令通過RDMA在不同的系統之間進行通信,實現儲存設備共享和RDMA通信服務。

InfiniBand管理軟體


OpenSM軟體是符合InfiniBand的子網管理器(SM),運行在Mellanox OFED軟體堆棧進行IB 網絡管理,管理控制流走業務通道,屬於帶內管理方式。

 OpenSM包括子網管理器、背板管理器和性能管理器三個組件,系結在交換機內部的必備部件。提供非常完備的管理和監控能力,如設備自動發現、設備管理、Fabric可視化、智慧分析、健康監測等等。

 

更多關於InfiniBand技術細節,請參考梳理成文的“InfiniBand架構和技術實戰總結”電子書,點擊原文鏈接獲取詳情。

推薦閱讀:

溫馨提示:

請搜索“ICT_Architect”“掃一掃”二維碼關註公眾號,點擊原文鏈接獲取更多技術文章

求知若渴, 虛心若愚

赞(0)

分享創造快樂