MTU TCP-MSS(转载)

MTU

MTU 最大传输单元(Maximum Transmission Unit,MTU) 用来通知对方所能接受数据服务单元的最大尺寸,说明发送方能够接受的有效载荷大小。

是包或帧的最大长度,一般以字节记。如果MTU过大,在碰到路由器时会被拒绝转发,因为它不能处理过大的包。如果太小,因为协议一定要在包(或帧)上加上包头,那实际传送的数据量就会过小,这样也划不来。大部分操作系统会提供给用户一个默认值,该值一般对用户是比较合适的。

IP协议除了具有路由寻址功能外,另一个重要的功能就是IP数据报的分片处理。每个数据链路层能够确定发送的一个帧的最大长度称为最大传输单元。在Ethernet中,MTU为1500字节;在FDDI中,MTU为4352字节;在 IP over AMT中,MTU为9180字节。

TCP MSS

MSS(Maximum Segment Size,最大报文长度),是TCP协议定义的一个选项,MSS选项用于在TCP连接建立时,收发双方协商通信时每一个报文段所能承载的最大数据长度。

TCP在三次握手建立连接过程中,会在SYN报文中使用MSS(Maximum Segment Size)选项功能,协商交互双方能够接收的最大段长MSS值。

MSS是传输层TCP协议范畴内的概念,顾名思义,其标识TCP能够承载的最大的应用数据段长度,因此,MSS=MTU-20字节TCP报头-20字节IP报头,那么在以太网环境下,MSS值一般就是1500-20-20=1460字节。

客户端与服务器端分别根据自己发包接口的MTU值计算出相应MSS值,并通过SYN报文告知对方,我们还是通过一个实际环境中捕获的数据报文来看一下MSS协商的过程:

通过在TCP连接之初,协商MSS值巧妙的解决了避免端系统分片的问题,但是在复杂的实际网络环境下,影响到IP报文分片的并不仅仅是发送方和接收方,还有路由器、防火墙等中间系统。

参考:

MTU TCP-MSS详解 - 知乎

相关推荐
hgdlip2 小时前
有什么办法换网络ip动态
网络·tcp/ip·智能路由器
城南vision12 小时前
计算机网络——TCP篇
网络·tcp/ip·计算机网络
Tony聊跨境13 小时前
独立站SEO类型及优化:来检查这些方面你有没有落下
网络·人工智能·tcp/ip·ip
方方怪17 小时前
与IP网络规划相关的知识点
服务器·网络·tcp/ip
xiaoxiongip6661 天前
HTTP 和 HTTPS
网络·爬虫·网络协议·tcp/ip·http·https·ip
懒大王就是我1 天前
C语言网络编程 -- TCP/iP协议
c语言·网络·tcp/ip
海绵波波1071 天前
Webserver(4.3)TCP通信实现
服务器·网络·tcp/ip
幺零九零零1 天前
【计算机网络】TCP协议面试常考(一)
服务器·tcp/ip·计算机网络
ZachOn1y2 天前
计算机网络:运输层 —— 运输层概述
网络·tcp/ip·计算机网络·运输层
乌龟跌倒2 天前
网络层3——IP数据报转发的过程
网络·tcp/ip·计算机网络·智能路由器