本文部分內容出自 Mellanox 官方教學:https://academy.mellanox.com/en/
Wiki:
InfiniBand(直譯為「無限頻寬」技術,縮寫為IB)是一個用於高效能計算的電腦網路通信標準,它具有極高的吞吐量和極低的延遲,用於電腦與電腦之間的資料互連。InfiniBand也用作伺服器與儲存系統之間的直接或交換互連,以及儲存系統之間的互連。
IB 網路主要分為五層,而其封包格式如上圖。
其中紅色主要對應了 OSI 七層中的上三層。
物理層定義了電氣特性和機械特性,包括光纖和銅媒介的電纜和插座、底板連接器、熱交換特性等。定義了背板、電纜、光纜三種物理端口。
背板
電纜
光纜
Layer | Infiniband | Ethernet |
---|---|---|
Dats Link | GUID | Mac Address |
Data Link | LID | Like private IP |
Network | GID | Like Net Mask |
Infiniband 的規劃跟 IPv6 比較相近
InfiniBand 定義了 L4 以下,但卻沒有標準的驅動程式。原始的 IB 標準只列出一組的動作例如 ibv_open_device 或是 ibv_post_send,這些都是必須存在的子程式或方法的抽象表示方式。這些子程式的語法由供應商自行定義。事實標準的軟體堆疊標準是由 OpenFabrics Alliance 所開發的。它以雙許可證方式發布,GNU通用公共許可證或BSD許可證用於 GNU/Linux 以及 FreeBSD,且 WinOF 在 Windows 下可以選擇 BSD許可證。它已被大多數 InfiniBand 供應商採用,用於 GNU/Linux、FreeBSD 以及 Windows。
OpenFabrics Enterprise Distribution (OFED)是一組開源軟件驅動、核心內核代碼、中間件和支持InfiniBand Fabric的用戶級接口程序。
我們可以想像在上面的定義後,OFED 進一步的撰寫了更多的 IB 功能,舉凡 IPoIB(在 IB 網路上實現乙太網的 IP 機制)、RDMA 等等。
OFED 除了由 OpenFabrics 官方釋出的開源版本外 https://www.openfabrics.org/downloads/OFED/
也有由 Mellanox 再次撰寫並打包的 MLNX_OFED https://www.mellanox.com/support/mlnx-ofed-matrix?mtag=linux_sw_drivers
不論何者,都能夠妥善利用 opensmd 管理 IB 網路,並提供進階功能 IPoIB、RDMA
InfiniBand 定義了傳出規範,但卻沒有標準的驅動程式。原始的 IB 標準 (verbs) 只列出一組的動作例如 ibv_open_device 或是 ibv_post_send。子程式的語法由供應商自行定義。常見標準是由 OpenFabrics Alliance 所開發。它以雙許可證方式發布,GNU 通用公共許可證或BSD許可證用於 GNU/Linux 以及 FreeBSD,且 WinOF 在 Windows 下可以選擇 BSD 許可證。它已被大多數 InfiniBand 供應商採用,用於 GNU/Linux、FreeBSD 以及 Windows。
OpenFabrics Enterprise Distribution (OFED) 是一組開源軟件驅動、核心內核代碼、中間件和支持InfiniBand Fabric的用戶級接口程序。
我們可以想像在上面的定義後,OFED 進一步的撰寫了更多的 IB 功能,舉凡 IPoIB(在 IB 網路上實現乙太網的 IP 機制)、RDMA 等等。
OFED 除了由 OpenFabrics 官方釋出的開源版本外 https://www.openfabrics.org/downloads/OFED/
也有由 Mellanox 再次撰寫並打包的 MLNX_OFED https://www.mellanox.com/support/mlnx-ofed-matrix?mtag=linux_sw_drivers
不論何者,都能夠妥善利用 opensmd 管理 IB 網路,並提供進階功能 IPoIB、RDMA