如何调优 10GB 以产生服务器流量

如何调优 10GB 以产生服务器流量

我安装了 Ubuntu 16.04 并添加了 10GB 网卡用于服务器生成流量测试(软件包ETH)。

服务器 ===> 核心交换机 6807 ===> 防火墙(POC)

生成流量没问题,但最大速度约为 1.4 - 1.6 Gbit/秒

服务器输出的图形接口

如何调整 Ubuntu 系统或其他方式?

谢谢

答案1

确保使用 9000 的 MTU 大小来获得最大线路速度。您可以像这样设置此值:(以 NIC eth0 为例)

ifconfig eth0 mtu 9000

或者

ip 链路设置 dev eth0 mtu 9000

这确保了最大带宽的利用。这是调整网络性能的一种可能性。最大传输单元 (MTU) 是一次可以传输的最大数据包大小。如果你驾驶的卡车可以运输 9000 公斤货物,为什么你只想装 1500 公斤?:-) 这就是 MTU 的工作方式。
接下来是初始拥塞窗口参数。

ip route 更改默认通过 192.168.1.1 dev eth0 proto static initcwnd 10

但并不是每个 NIC 驱动程序都支持此功能。以下是对初始拥塞窗口参数的一个很好的解释:http://www.cdnplanet.com/blog/tune-tcp-initcwnd-for-optimum-performance/

与上面相关的是 sysctl 设置

net.ipv4.tcp_slow_start_after_idle
这将告诉系统是否应仅针对新的 TCP 连接以默认窗口大小启动,还是也针对空闲时间过长的现有 TCP 连接启动(在 3.5 中,空闲时间过长为 1 秒,但请参阅 net.sctp.rto_initial 以了解其在系统上的当前值)。如果您使用的是持久 HTTP 连接,则很可能最终处于这种状态,因此请设置 net.ipv4.tcp_slow_start_after_idle=0(只需将其放入上面提到的 sysctl 配置文件中)。

确保防火墙不是瓶颈。也许你喜欢看看这边

net.netfilter.nf_conntrack*
如果 FW 也在 Linux 上运行,则需要进行调整。请留意此处的超时值。此外,如果您使用
iptables
在服务器端!

相关内容