来源-摘录自debian手册:https://www.debian.org/doc/manuals/debian-reference/ch05.zh-cn.html#_the_modern_network_configuration_for_cloud_with_dhcp

5.6.

表 5.5. 网络优化工具列表

软件包流行度大小说明
iftopV:6, I:8893显示一个网络接口上的带宽使用信息
iperfV:2, I:35427互联网协议带宽测量工具
ifstatV:0, I:552接口统计监控
bmonV:1, I:20141便携式带宽监视器和网速估计工具
ethstatusV:0, I:241快速测量网络设备吞吐的脚本
bingV:0, I:080实验性的随机带宽测试器
bwm-ngV:1, I:1095小巧简单的控制台带宽监测器
ethstatsV:0, I:021基于控制台的以太网统计监视器
ipfmV:0, I:078带宽分析工具

5.6.1. 找出最佳 MTU

网络管理器通常会自动设置最佳 最大传输单元 (MTU) 。

在一些场景中,在用 ping(8) 加上"-M do"选项发送各种大小的 ICMP 报文数据包进行实验后,你希望可以手动设置 MTU。MTU 是最大可完成没有 IP 分片的数据包大小加上 28 字节(IPv4)或 48 字节(IPv6)。下面的列子,发现 IPv4 连接的 MTU 是 1460,IPv6 连接的 MTU 是 1500。

$ ping -4 -c 1 -s $((1500-28)) -M do www.debian.org
PING  (149.20.4.15) 1472(1500) bytes of data.
ping: local error: message too long, mtu=1460

---  ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms

$ ping -4 -c 1 -s $((1460-28)) -M do www.debian.org
PING  (130.89.148.77) 1432(1460) bytes of data.
1440 bytes from klecker-misc.debian.org (130.89.148.77): icmp_seq=1 ttl=50 time=325 ms

---  ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 325.318/325.318/325.318/0.000 ms
$ ping -6 -c 1 -s $((1500-48)) -M do www.debian.org
PING www.debian.org(mirror-csail.debian.org (2603:400a:ffff:bb8::801f:3e)) 1452 data bytes
1460 bytes from mirror-csail.debian.org (2603:400a:ffff:bb8::801f:3e): icmp_seq=1 ttl=47 time=191 ms

--- www.debian.org ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 191.332/191.332/191.332/0.000 ms

这个过程是 路径 MTU (PMTU) 发现 (RFC1191) , tracepath(8) 命令能够自动完成这个。

表 5.6. 最佳 MTU 值的基本指引方法

网络环境MTU基本原理
拨号连接(IP: PPP)576标准的
以太网连接 (IP: DHCP 或固定)1500默认标准值

除了这些基本的指引方法外,你还应当知道下面的信息。

  • 使用任何隧道方式(VPN 等.)的最佳 MTU 需要进一步减去它们上面的头部。
  • MTU 值不应当超过通过实验验证的 PMTU 值。
  • 当遇到其它限制的时候,较大的 MTU 值通常比较好。

最大分片大小 (MSS) 是另外一种衡量包大小的方法。MSS 和 MTU 的关系如下.

  • 对于 IPv4, MSS = MTU - 40
  • 对于 IPv6,MSS = MTU - 60
注意

基于 iptables(8) (参见 第 5.7 节 “Netfilter 网络过滤框架”) 的优化,能够通过 MSS 来压缩包大小,路由器会用到 MMS 。参见 iptables(8)中的"TCPMSS" .