跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 管理:网络服务 Oracle Solaris 11 Information Library (简体中文) |
从 Oracle Solaris 11 发行版 开始,NFS 的缺省传输采用远程直接内存访问 (Remote Direct Memory Access, RDMA) 协议,这是一种通过高速网络实现内存到内存数据传输的技术。具体来说,RDMA 可提供不受 CPU 干预而直接进出内存的远程数据传输。RDMA 还可提供直接数据放置,这消除了数据副本,因此进一步消除了 CPU 干预。这样,RDMA 不仅减轻了主机 CPU 的负担,而且还减少了主机内存和 I/O 总线的争用。为提供此功能,RDMA 将 SPARC 平台上 InfiniBand 的互连 I/O 技术与 Oracle Solaris 操作系统相结合。下图说明了 RDMA 与其他协议(如 UDP 和 TCP)的关系。
图 6-1 RDMA 与其他协议的关系
由于 RDMA 是 NFS 的缺省传输协议,因此在客户机或服务器上使用 RDMA 时不需要特殊的 share 或 mount 选项。现有的自动挂载程序映射 vfstab 和 dfstab 用于 RDMA 传输。如果在客户机和服务器之间的 SPARC 平台上存在 InfiniBand 连接,则基于 RDMA 传输的 NFS 挂载会透明地执行。如果 RDMA 传输在客户机和服务器上都不可用,则 TCP 传输为首选备用传输协议,如果 TCP 不可用,则会再使用 UDP。但是请注意,如果使用 proto=rdma 挂载选项,则会强制 NFS 挂载仅使用 RDMA。
要指定仅使用 TCP 和 UDP,可以使用 proto=tcp/udp mount 选项。该选项在 NFS 客户机上禁用 RDMA。有关 NFS 挂载选项的更多信息,请参见 mount_nfs(1M) 手册页和mount 命令。
注 - 用于 InfiniBand 的 RDMA 会使用 IP 寻址格式和 IP 查找基础结构来指定对等点。但是,由于 RDMA 是单独的协议栈,因此它没有完全实现所有的 IP 语义。例如,RDMA 并不使用 IP 寻址来与对等点进行通信。因此,RDMA 可能会跳过基于 IP 地址的各种安全策略配置。但是,不会跳过 NFS 和 RPC 管理策略,如 mount 限制和安全 RPC。