网络文件系统 V4 与先前版本的比较

本节总结了 NFSv4 与 NFS V2 和 V3 之间的差别。

IBM® i 6.1 开始,基本操作系统中包括了网络文件系统 V4 (NFSv4)。以下是对 NFSv4 与 NFS V2 和 V3 之间的差别的简要总结。

  • NFSv4 协议引入了状态,而 NFS V2 和 V3 协议无状态。服务器维护了 NFSv4 客户机对于对象的使用信息。通过 NFSv4 协议执行的操作(例如,打开、锁定、读取和写入)附带了状态信息,用于通知服务器客户机要使用该对象的意图。然后,服务器可以向客户机返回有关其他客户机也打算使用同一对象的信息。NFSv4 协议在服务器上使用持久打开,可避免某些情况下 NFS V2 或 V3 客户机在写入文件时可能会无法处理该文件。
  • NFSv4 协议支持将字节范围锁定和共享方式作为基本协议的一部分。NFSv4 中的锁定基于租用,这要求 NFSv4 客户机与服务器保持联系,以保持客户机拥有的打开和锁定状态。
  • NFSv4 协议引入了复合请求格式。NFSv4 客户机可以将多项简单操作(例如,LOOKUP、OPEN 和 READ)组合为向服务器发出的单个请求。单个请求允许 NFSv4 在一次网络交换中执行复杂操作。
  • 相对于先前版本的协议所需要的其他安全性机制而言,NFSv4 协议将指定经过改进的安全性机制。除了传统的 AUTH_SYS 安全性以外,IBM i 还支持 Kerberos 5 认证和数据保护。NFSv4 所使用的安全性 API 用于以后轻松地添加新的安全性机制。
  • NFSv4 协议将字符串数据的表示标准化。该协议所使用的所有字符串数据在网络中都是采用 UTF-8 表示。用户和组信息以字符串形式在客户机与服务器之间传递,而不是像先前版本中那样以数字值形式来传递。
  • NFSv4 协议将先前 NFS 版本的不同的组成协议组合为所指定的单个协议。NFSv4 协议仅提供了单个联系点,从而能够与网络防火墙更好地兼容。
  • NFS V4 需要支持基于流处理网络传输协议(例如,TCP)的 RPC。IBM i 所提供的 NFSv4 支持独占使用 TCP。

有关 NFSv4 协议的更深入的信息,请阅读 RFC 3530 http://www.ietf.org/rfc/rfc3530.txt