首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MTU与NFS /wsize选项的关系

问MTU与NFS /wsize选项的关系
EN

Server Fault用户
提问于 2014-02-05 18:07:14
回答 1查看 15.6K关注 0票数 7

我试图了解与NFS和各种缓冲区大小相关的网络设置(而且有很多)。

我正在运行wireshark并检查到达NFS服务器的TCP数据包。Wireshark在扩展的写操作(client->server)中显示的数据包大小最大为32626,假设我正确地解释了(“线上的字节”,我认为它包括所有的网络层报头等等)。

导出存储的"rsize“和"wsize”NFS设置在C/S上都设置为32k,因此我认为上述结果是此设置的结果。但是,增加这些值并不会增加Wireshark显示的数据包大小。

因此,我的问题是,还有哪些限制因素可以存在?我做了大量的研究,这也是我到目前为止遇到的。在我看来,以下任何一种网络限制都不会将传输规模限制在32K以下:

来自sysctl:

代码语言:javascript
复制
net.ipv4.tcp_mem          = 4096 87380 4194304
net.ipv4.tcp_{r,w}mem     = 4096 87380 4194304
net.core.{r,w}mem_max     = 131071
net.core.rmem_default     = 229376

我的MTU目前是8K

EN

回答 1

Server Fault用户

发布于 2014-02-06 07:41:30

由客户端挂载选项和/或服务器功能定义的NFS {r,w}大小。IOW,您可以在命令行中定义它们,例如:

代码语言:javascript
复制
# mount -o rsize=1048576 .....

Linux对于v3和v4 - 32k和1MB有不同的默认值。nfs服务器可以请求更小的或可以支持更大的大小。您应该可以看到,使用wireshark作为FSINFO调用v3或FATTR4_MAXREAD/FATTR4_MAXWRITE文件属性,这些属性是使用第一个GETATTR调用请求的。

RPC层可以将单个读或写请求拆分为多个RPC片段。TCP层可以将单个RPC片段分割成多个TCP数据包。另一方面,TCP层可能会将多个RPC请求合并到单个TCP数据包中,如果它们合适的话。

有一个相当过时的文档优化NFS性能,但将了解如何调整数字。

票数 3
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/573447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档