InfiniBand (IB) 是一项基于交换光纤结构的 I/O 技术。通过此技术,可为 I/O 设备连接到主机以及主机到主机的通信提供高带宽、低延迟的互连。IB 设备由 Solaris IB 结点驱动程序来管理。
Oracle Solaris 支持以下设备:
基于 IB 的 IP (IP over IB, IPoIB) 设备-支持在 IB 连接上传输 IP 包。此功能通过 ibp 驱动程序实现。有关详细信息,请参见 ibp(7D) 手册页。
基于 IB 的以太网 (Ethernet over IB, EoIB)-支持在 IB 光纤网络上传输以太网帧。
套接字定向协议 (Socket Direct Protocol, SDP)-支持基于 IB 的套接字
可靠数据报服务第 3 版 (Reliable Datagram Service version 3, RDSv3) 和可靠数据报服务 (RDS)
使用远程直接内存访问的 NFS (NFS over Remote Direct Memory Access, NFSoRDMA)-使用 RDMA 在 IB 上提供 NFS 服务
针对 RDMA 的 iSCSI 扩展 (iSCSI Extension for RDMA, iSER)-为 iSCSI 协议提供 RDMA 数据传输功能
用户直接访问编程语言 (User Direct Access Programming Language, uDAPL)
开放光纤网络用户组件 (Open Fabric User Verb, OFUV)
IB 结点驱动程序可查询 Solaris IB 设备管理器 (IB Device Manager, IBDM) 中的通信服务,以枚举 IB 端口、HCA_SVC 和 IB VPPA 设备,其中 VPPA 指的是虚拟物理连接点。
IB 分区链路代表数据链路的一个新部件类别,并且通过使用 dladm 子命令进行管理。分区链路用于数据传输。可以基于 IB 物理链路创建 IB 分区链路,端口上的每个分区键 (P_Key) 对应一个分区链路。
端口设备将通信服务绑定至主机通道适配器 (Host Channel Adapter, HCA) 的特定端口。端口以端口号表示。HCA_SVC 设备将通信服务绑定至特定 HCA。VPPA 设备将通信服务绑定至端口与分区键 (P_key) 的组合。请注意,端口设备和 HCA_SVC 设备始终使用值为零的分区键。端口设备、HCA_SVC 设备和 VPPA 设备都是 HCA 的子项,并且通过 ib.conf 文件进行枚举。有关更多信息,请参见 ib(7D) 手册页。
输入输出控制器 (Input Output Controller, IOC) 设备是 IB 结点驱动程序的子项,同时也是 I/O 单元的一部分。伪设备也是 IB 结点驱动程序的子项,指的是要枚举的其他所有设备(这些设备提供各自的配置文件)。有关更多信息,请参见 ib(4) 手册页。
以下列表列出了可能的 IB 设备树路径名。
IOC 设备-/ib/ioc@1730000007F510C,173000007F50
IB 伪设备-/ib/driver@unit-address
IB VPPA 设备-/pci@1f,2000/pci@1/pci15b3,5a44@0/ibport@,port#,P_key,service
IB HCA_SVC 设备-
IB 端口设备-/pci@1f,2000/pci@1/pci15b3,5a44@0/ibport@<port#>,0,service
HCA-/pci@1f,2000/pci@1/pci15b3,5a44@0
以下列表介绍了属于路径名一部分的一些 IB 组件。
通信服务。例如,ipib 是 ibd 内核客户机驱动程序所使用的通信服务。
使用的分区链路键值。
端口号。
IB 内核客户机驱动程序的属性,属性名称为其 driver.conf 文件中指定的名称。有关更多信息,请参见driver.conf(4)。
EoIB 使用 Oracle Solaris IB 框架所提供的服务。但是,EoIB 不是 IB 结点驱动程序的子项。Oracle Solaris EoIB 是一种单实例伪设备驱动程序,其设备树路径为 /pseudo/eib@0。EoIB 数据链路是虚拟链路的一种特殊 eoib 类,可通过 dladm 子命令创建和管理。可以基于现有 IB 物理链路创建 EoIB 数据链路,为该 IB 物理链路中的 IB 光纤网络上搜索到的每个 EoIB 网关创建一个数据链路。要显示搜索到的 EoIB 网关的列表,请使用 dladm 子命令。
有关使用 IB 诊断命令和实用程序的信息,请参见监视并排除 IB 设备故障。