默认情况下,当我们说 TCP 以太网数据包 1460 和 MTU 的 MSS 是 1500 时。
MSS = MTU - 20(IP 标头)- 20(TCP 标头)= 1460
从上面计算的 TCP 标头options
在 TCP 标头中没有任何内容。如果任何数据包包含option
TCP 标头中的值,它是否会减小 MSS 大小?
那么option
TCP 标头中的 MSS 大小将是多少
当添加 IP/TCP 选项时,您认为 MSS 会缩小是正确的。
MSS = MTU - (20(IP header) + len(IP Options)) - (20(TCP Header) + len(TCP Options))
它会降低的另一个主要原因是数据包是否以某种方式(IPsec/GTP)被封装,因为这会增加数据包的开销。
MSS 根本不会减少,但是如果有 IP、TCP 选项,则 MSS 值将仅为以太网的 1460。选项将是发送方数据部分的一部分,因此发送方需要减少数据部分,同时在标头上添加 IP 或 TCP 选项。参考以下页面
http://tools.ietf.org/html/rfc6691