關於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 (SocketsDirect 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可視化、智能分析、健康監測等等。
TAG:架構師技術聯盟 |