一 MSL(最大报文长度:Maximum Segment Size):在TCP报文首部的选项中设置(可以通过getsockopt和setsockopt获取和设置TCP套接字选项TCP_MAXSEG)。
(1)概述:
MSS是每一个TCP报文段中的数据字段部分的最大长度:
MSS=TCP报文段长度-TCP首部长度
(2)MSS的取值:
*当双方在都在一个本地以太网上时规定MSS为1460(1460+20(TCP首部)+20(IP首部));如果是非局域网时则默认值是536.
*MSS与接收窗口没有关系,并不是考虑接收方的接受缓存可能放不下TCP报文段中的数据。
*MSS过小,网络利用率低;MSS过大,在IP层传输时有可能要分解成多个短数据报片,开销比较大。MSS应该尽可能大,只要在IP层传输时不需要再分片就可以。
*最佳MSS很难确定,两个传送方向可以有不同的MSS值。在连接建立的过程中,双方都把自己能够支持的MSS写入TCP首部的选项字段中的MSS字段,以后就按这个数值传送数据。如果主机未填写,默认为536字节长。
二 MSL(最长报文段寿命:Maximum Segment Lifetime)
(1)RFC793建议设为2分钟。TCP对于不同的实现可根据具体情况使用更小的MSL的值。
(2)用处:
*TCP连接释放时,主动请求释放的主机必须经过等待计时器设置的时间2MSL后,才能进入CLOSED状态。
三 MTU(Maximum Transfer Unit:最大传送单元)
(1)概述:
在IP层下面的每一种数据链路层都有自己的帧格式,其中帧格式中的数据字段的最大长度称为最大传送单元MTU。
当一个IP数据报封装成链路层的帧时,数据报的长度一定不能超过下面的数据链路层的MTU值。
(2)MTU的长度:
以太网规定MTU的长度为1500字节。
(3)路径MTU:
两台通信主机路径中的最小MTU,称为路径MTU.

本文介绍了TCP/IP协议中的关键参数:MSS(最大报文长度)、MSL(最长报文段寿命)和MTU(最大传送单元)。MSS决定了TCP报文段的数据字段大小,通常在1460到536之间。MSL是指报文段在传输中的最大存活时间,通常建议为2分钟。MTU是数据链路层帧的数据字段最大长度,以太网的MTU为1500字节。路径MTU是两端通信路径上最小的MTU值,影响数据报的传输效率。
5583

被折叠的 条评论
为什么被折叠?



