TCP 的 MTU & MSS

MTU:最大传输单元,大多数网络MTU是1500字节,有些网络启用了巨帧,能达到9000字节。
MSS:最大分段大小(TCP数据包每次能够传输的最大报文段长度)

TCP不会简单地把数据一口气传给网络互联层,而是根据双方的MTU决定每次传多少,如果获得双方的MTU呢?三次握手时双方会把自己的MSS告诉对方,MSS+TCP头+IP头,就得到MTU了

 

 

 

 

 

 

 

151包里客户端声明mss是1460,意味着MTU就是1460+20(TCP头)+20(IP头)= 1500
153包里服务器声明mss是8960,意味着MTU就是8960+20(TCP头)+20(IP头)= 9000

 

 

 

 

如上图:客户端/get-pip.py请求,然后通过很多个包完成下载操作

这些包的大小符合接收方MTU 1500字节,而不是发送方本身的9000字节,如果互换一下答案还是1500,所以发包的大小是由MTU较小的一方决定的。

posted @ 2022-03-24 11:49  技术颜良  阅读(547)  评论(0编辑  收藏  举报