聊聊MTU和MSS(针对以太网)---为什么叙述中用"最大传输单元"的最大值, “最大段”的最大值。

       前面我们已经说过了MTU, 它的含义实际上就是数据链路对IP层包长度要求的最大值, 不得超过1500字节。 可以认为, MTU是与IP相关的一个概念。

       但是, MSS就不同了, MSS是max segment size的缩写,  是最大段的最大值, 它是与TCP相关的一个概念(与UDP没有毛关系)。 数据链路层期望的最大IP包长是1500字节, 那么除去IP包头典型的20字节, 除去TCP包头典型的20字节(当然也可能是32字节或者40字节, 或者其他 <=60字节的数据), 可知, 数据链路层允许的最大TCP“业务数据”的长度是1460字节, 多么熟悉的数字。

       所以, “最大段”(MSS)的最大值是1460字节, 也即MSS的最大可能值是1460字节。


       有个疑问, MTU数据在哪里呢? 我们来看看:

xxxxxx$ cat /sys/class/net/eth1/mtu
1468
      可见, 此时MTU的值是1468(不得超过1500), 所以我们叙述的时候, 说“最大值”的最大值。 

      那MSS这个值在哪里确定呢? 在三次握手中的两个syn包中确定, 如下:

xxxxxx$ sudo tcpdump -iany port 8765 -Xnlps0
tcpdump: verbose output suppressed, use -v or -vv for f
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值