25
2025
06
18:53:10

测试/测量主机调优

Test/Measurement Host Tuning

以下是一份快速参考指南,用于对运行 iperf、iperf3 或 nuttcp 等工具的 Linux 测试/测量主机(如 perfSONAR 主机)进行调优设置。请注意,我们假设测量工具正尝试使用 perfSONAR pscheduler 工具执行序列化单流 TCP 测试。这一假设意味着我们增加了基础 TCP 套接字大小以支持更大的内存分配,并且并行流的使用不像 Globus 等工具那样常见。若想了解合适的套接字大小,你可以使用带宽延迟积(BDP)计算器。

为了支持 10Gbps 的速度,在往返时间(RTT)为 100 毫秒的路径上,必须有 120MB 的缓冲区可用。你可能需要根据要测试路径的延迟调整这些值。配置为使用巨型帧的主机同样需要更多的缓冲区空间。

对于 100G 测量主机,另请参阅我们的 100G 网络调优指南( https://fasterdata.es.net/host-tuning/linux/100g-tuning/ )。

通用设置


# 增大可通过 setsockopt() 设置的 TCP 最大缓冲区大小
# 允许使用 256MB 缓冲区进行测试
net.core.rmem_max = 268435456 
net.core.wmem_max = 268435456 
# 增大 Linux 自动调优的 TCP 缓冲区限制
# 分别为使用的字节数的最小值、默认值和最大值
# 允许自动调优至 128MB 缓冲区
net.ipv4.tcp_rmem = 4096 87380 134217728
net.ipv4.tcp_wmem = 4096 65536 134217728
# 不缓存前一个连接的 TCP 指标
net.ipv4.tcp_no_metrics_save = 1
# 如果你使用的是巨型帧,也设置此项
net.ipv4.tcp_mtu_probing = 1
# 建议启用“公平排队”(fq 或 fq_codel)
net.core.default_qdisc = fq

对于配备针对 RTT 最长达 200 毫秒的网络路径进行优化的 10G 网卡,或者针对 RTT 最长达 50 毫秒的网络路径的 40G 网卡的主机,请使用以下值替代上述设置:

# 将可通过 setsockopt() 设置的 TCP 最大缓冲区大小增大至 512MB
net.core.rmem_max = 536870912 
net.core.wmem_max = 536870912 
# 将 Linux 自动调优的 TCP 缓冲区限制增大至 256MB
net.ipv4.tcp_rmem = 4096 87380 268435456
net.ipv4.tcp_wmem = 4096 65536 268435456


对于配备 100G 网卡、通过 RTT 最长达 200 毫秒的网络路径发送数据的主机,你可能需要将缓冲区设置为使用 2GB 的最大值。

# 允许缓冲区最大达 2GB
net.core.rmem_max=2147483647 
net.core.wmem_max=2147483647
# 将 Linux 自动调优的 TCP 缓冲区限制增大至 1GB
net.ipv4.tcp_rmem=4096 65536 1073741824
net.ipv4.tcp_wmem=4096 65536 1073741824

要应用你在 /etc/sysctl.conf 中所做的更改,请运行:

sysctl -p 

我们还强烈建议降低最大流量速率,以避免数据包突发,这种突发可能会使交换机和接收主机的缓冲区溢出

例如,对于配备 10G 网卡或更高速度网卡的主机,将以下内容添加到启动脚本中:

/sbin/tc qdisc add dev ethN root fq maxrate 8gbit 

Src

https://fasterdata.es.net/host-tuning/linux/test-measurement-host-tuning/




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://www.hqyman.cn/post/11879.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: