上犹电脑信息网我们一直在努力
您的位置:上犹电脑信息网 > 设置问题 > 互联网MTU,想说懂你不容易-mtu值怎么设置

互联网MTU,想说懂你不容易-mtu值怎么设置

作者:上犹日期:

返回目录:设置问题

我们接下来要讲下经常遇见的MTU值问题。后文有ping、icmp、mtu、mss介绍内容大家可看看。

遇到MTU的问题是怎样的?小的数据包能够通过,大的数据包过不去。比如用正常的ping能通,端口也能过,就是某些应用过不去,这时候可以考虑是不是MTU值的问题。如何测试是不是MTU值问题呢?

一、测试分析

测试拓扑:

互联网MTU,想说懂你不容易

R1和R3的MTU值为1500(网络设备默认MTU值)。

将R2的F0/0、F0/1接口的MTU值配置为500。

1)R1发送至R3的数据包为100bytes,其中数据为100-20=80bytes,R2不会对数据包进行切片。

2)R1发送至R3的数据包为1500bytes,且能进行切片,R1设备发送数据为1500-20=1480bytes,R2发送出去时对数据包切片,其中数据的长度为1500-20=1480bytes,因为F0/1接口MTU为1500,所以每个数据切片大小为480、480、480、40。每个切片加上IP包头为500、500、500、60。这时候是能够进行切片的情况,如果发送的数据包是不能切片的,那R2将数据包丢弃。

3)R1发送至R3的数据包为1500bytes,且不能进行切片,这时候数据包将会在R2上丢包。

二、wireshark抓包分析MTU值对数据的影响

1)ping默认为100bytes,且允许切片(实际包大小为100-20=80bytes)

互联网MTU,想说懂你不容易

wireshark抓包分析:

互联网MTU,想说懂你不容易

Total Length:100,总长度为100(IP头部+数据)

Don't fragment:Not set,数据包可以切片

More fragment:Not set,是否有后续的包(能切片才有用)

2)将ping设置为1500bytes ,且允许切片(实际包大小为 1500-20=1480bytes)

ping 23.1.1.3 size 1500

互联网MTU,想说懂你不容易

wireshark抓包:R1和R2线路(R1发送R2的1500数据包(IP头部+数据),数据为1480,且不进行切片)。

互联网MTU,想说懂你不容易

wireshark抓包:R2和R3线路如下(R2发送R3的1500数据包,切片为4份。数据包为500+500+500+60,数据为480+480+480+40=1480)。

互联网MTU,想说懂你不容易

序列号2079~2082为分片

2079:500-IP头部(20)=480

2080:500-IP头部(20)=480

2081:500-IP头部(20)=480

2082:60-IP头部(20)=40

3)将ping设置为1500bytes ,且不允许切片(实际包大小为 1500-20=1480bytes)

ping 23.1.1.3 df-bit size 1500

ping上bf-bit代表不允许切片。

互联网MTU,想说懂你不容易

ping的M代表因为不能分段发送失败,

wireshark抓包:R1和R2线路(抓包显示Don't fragment:set,代表不能切片。1500的包在R2上直接丢弃。)。

互联网MTU,想说懂你不容易

通过以上测试就可知道网络MTU多大。

二、知识点介绍

1)IP头部20bytes

IP头部20bytes如下

互联网MTU,想说懂你不容易

2、PING

1)什么是PING

PING (Packet Internet Groper),因特网包探索器。

其目的就是让我们能够检测网路的连线状况﹐也能确保连线的准确性ping (Packet Internet Groper),因特网包探索器,我们主要用它来测试连通性,比如现在上不了网,多数情况下会使用ping测试下,而且ping工具可以支持windows、mac、linux、网络设备等。

2)ICMP是什么?

ICMP是(Internet Control Message Protocol)Internet控制报文协议。

我们使用的ping调用的就是icmp协议,ping是一个应用工具而已。打个比方,我们打开IE浏览器访问网站,这时候是IE浏览器调用http协议,也可以使用火狐、Google、360、搜狗等浏览器调用http协议。ping好比浏览器,icmp好比http。

3)ping命令

互联网MTU,想说懂你不容易

data:改变发送数据(默认数据为0xabcd)

df-bit:不允许切片(默认允许切片)

repeat *:发送包的数量(默认5个)

size *:发送包的大小(默认100bytes)

source *:发送包的源地址

timeout:超时时间(默认2S)

validate:验证回复数据(默认为否)

互联网MTU,想说懂你不容易

三、MSS是什么?

MSS(Maximum Segment Size 最大分段大小)。

网络上传递数据,很多时候要考虑到能传递单个最大数据的大小(MSS=MTU-TCP-IP)。打个比方你要邮寄手机和邮寄沙发有什么区别?快递对快件的大小是有限制,手机小容易邮寄,邮寄的沙发太大邮寄不了,这时候只能走物流。但是对于客户来说到底快递能邮寄物品(除去包装)最大体积是多少?这时要减去包装盒的大小,剩下的才是里面真正物品的大小。这个物品的大小限制就好比MSS。

在网上最大发送单个数据的大小叫做MSS或者是TCP MSS,但是也要考虑到MTU值。

四、MTU是什么?

MTU(Maximum Transmission Unit)最大传输单元。

网络上传递数据,很多时候要考虑到能传递单个最大数据单元的大小(MTU=TCP+IP+数据)。上面MSS的比方中的快递对快件的大小限制就是MTU。

MTU值是发送端和接收端按照最小的MTU值进行计算,比如发送端的MTU为1500,接收端的MTU为2000,这时候协商的MTU为1500

五、MSS和MTU区分、计算。

网络工程师更关心的是MTU值,因为我们就想快递一样,比较关心包装后的大小。这个包装就是TCP和IP。这个“包装”到底有多大呢?首先是TCP这层20个字节,IP这层20个字节。如果你用的不是TCP另算。所以MSS=MTU-TCP-IP,如果不是TCP连接,这时候就不需要减去TCP头部。

IP的20个字节

互联网MTU,想说懂你不容易

TCP的20个字节

互联网MTU,想说懂你不容易

相关阅读

  • 你可能不知道的cookie-cookies设置

  • 上犹设置问题
  • cookies设置,大家都了解的cookie很多前端面试题都会考察cookie 大家一般都能答上的几个点:不能跨域存储空间有限,4KB通过document.cookieAPI进行get和setcookie与其他本地存储的区别大小不同,
关键词不能为空
极力推荐

电脑蓝屏_电脑怎么了_win7问题_win10问题_设置问题_文件问题_上犹电脑信息网

关于我们