You need to enable JavaScript to run this app.
文档中心
弹性文件存储

弹性文件存储

复制全文
下载 pdf
NFS 客户端
NFS 协议概述
复制全文
下载 pdf
NFS 协议概述
弹性文件存储 EFS 通过 NFS 协议实现网络访问和存储资源共享。本文介绍 NFS 协议的基本信息。​
基本概念​
NFS(Network File System),即网络文件系统,允许客户端计算机上的用户像访问本地存储一样通过计算机网络访问文件。​
协议特点​
为了确保文件在不同客户端之间数据一致性,NFS 提供了弱缓存一致性的保证,满足文件共享的需求。​
说明​
  • NFS 缓存项有效期:自适应值,默认值为 1s~60s。​
  • NFS 缓存信息包含文件属性、文件内容、目录子项等内容,缓存的具体内容说明如下:​
  • 文件属性:缓存文件的 gid、uid、mode、atime/mtime/ctime 等属性。​
  • 文件内容:缓存文件的内容。​
  • 目录子项:缓存目录下存在哪些文件、不存在哪些文件。​
  • 基于内核缓存超时的最终一致性​
  • NFS 客户端会缓存从服务器获取的数据信息和元数据信息,并在一定时间内认为缓存的数据有效。下一次 NFS 客户端对相同文件发起请求时,如果发现缓存项在有效期内,则会直接读取缓存信息(例如文件的属性、文件内容、目录下的文件列表等);当缓存超时无效时,则会再次向服务器获取文件信息,使其与服务器的数据保持一致。关于缓存超时一致性的更多信息,请参见 NFS。​
  • 基于文件 close/open 的 CTO 一致性​
  • 基于缓存超时机制,当两个及以上的客户端同时读写相同的文件时,客户端 A 的修改在客户端 B 不一定能立即看到。因此,为了提升数据一致性,NFS 还提供了基于文件的 CTO (close-to-open)一致性保证,确保文件的打开和关闭操作之间的数据一致性,保证在重新打开文件时能够看到最新的数据和元数据。即当一个客户端打开文件,随后执行文件关闭操作,之后其他客户端只要重新打开该文件,都能访问到最新的写入数据。​
协议版本​
目前主流使用的 NFS 版本为 NFSv3 和 NFSv4,其中,NFSv4 版本细分为 NFSv4.0、NFSv4.1 和 NFSv4.2。弹性文件存储 EFS 支持 NFSv3 和 NFSv4.1 版本,关于这两个版本在 EFS 使用中的差别如下:​
说明​
关于 NFSv3 和 NFSv4.1 协议的详细介绍,请参见 NFS Version 3 Protocol Specification 和 Network File System (NFS) version 4.1 Protocol。​
​
对比维度​
NFSv3​
NFSv4.1​
协议状态​
无状态。​
协议不记忆客户端状态,依赖辅助服务管理文件锁等状态。​
有状态。​
协议自身维护客户端状态,内置文件锁和状态管理。​
核心机制​
依赖rpc.mountd、rpc.statd、NLM 等独立服务处理挂载和文件锁。​
协议内置挂载、文件锁和状态管理,无需额外服务。​
请求方式​
每次请求执行一个操作,不支持打包。​
只提供NULL和COMPOUND两个请求,支持将多个操作打包到一个COMPOUND请求中。​
安全性​
支持sec=sys、sec=none。​
协议支持sec=sys、sec=none和 RPCSEC_GSS,但 EFS 仅支持sec=sys和sec=none。​
兼容性​
支持各种操作系统和硬件平台,兼容性广泛。​
需要较高版本内核支持,在旧版本操作系统上可能无法运行。例如,使用 4.14 内核的客户端可能触发NFS4ERR_SEQ_MISORDERED问题,建议升级至 4.15.0-115.116 及以上版本。​
文件锁​
不支持,挂载时需配置nolock。​
支持,协议内置锁语义,无需额外参数。​
ACL​
不支持。​
协议支持,但 EFS 不支持。​
Delegation​
不支持。​
协议支持,但 EFS 不支持。​
nconnect​
不支持。​
协议支持,但 EFS 不支持。​
传输协议​
TCP。​
TCP。​
​
使用限制​
NFS 协议在 EFS 中的使用限制如下:​
​
类别​
限制项​
说明​
文件功能​
POSIX 特殊权限位​
不支持 POSIX SetUID、SetGID、Sticky Bits。​
单客户端限制​
并发请求数​
最多 128 个。​
​
读写带宽​
最大 2~3 GB/s。​
​
同时打开文件数​
最多 32768 个。​
​
文件锁​
每个挂载实例最多在 256 个文件或进程中获取 8192 个锁。​
​
挂载协议​
不支持 TCP Multi-channel 协议挂载。​
文件命名与容量限制​
单个文件名长度​
最大 255 字节。​
​
单个文件容量​
最大 64 TiB。​
​
单个文件硬链接数​
最多 511 个。​
​
​
最近更新时间:2026.07.13 11:21:46
这个页面对您有帮助吗?
有用
有用
无用
无用