-
关于
ping
命令中的长度参数的问题
一.
Ping <
/p>
命令参数
-l
所带的长度参数是什么
p>
?
Windows
< br>xp
默认的
MTU=1500
(
字节)
,即允许发送不需要分段的最大
IP
单包字节数。但如果使用
ping
–
l
data_length
命令来
ping
大包的话,则其中的
data_length
指的是
ICMP
的数据长度
,
而不是
IP
包的数据长度。即
data_length
不等于
MTU
。他们两者之间的关系为:
data_length =
MTU
(典型值为
1500
)
- IP
头(
20
)
- IC
MP
头(
8
)
在
MTU=1500
的情况下:
IP
包的最大长度
= 20
(
IP
头)
+
IP
包的数据长度
= 1500
字节
IP
包数据的最大长度
=
8
(<
/p>
ICMP
头)
+ 1472
(
ICMP
的数据)
=14
80
字节
ICMP
< br>数据的最大长度(单
IP
包)
= 1472
字节
通过以上描述,我们搞清了网络接口的配置数据
MTU
和
Ping
命令中的
数据包长度这
2
个概念,即:
MTU
是网络接口发送单个
IP
包的最大字节
数,典型值
=1500
。
Ping
p>
命令中的
data_length
是
ICMP
的数据长度。
例如(假设本端接口的
MTU=15
00,
对端接口的
MTU=1500
)
:
1.
ping x.x.x.x <
/p>
这是一条不带
-l
参数的
ping
命令,网络接口以缺省的
ICMP
的数据长度(
32
字节或
64
字节)发送
IP
包(
IP
包长度
=60
或
92
)
。
2.
ping x.x.x.x
–
l
1472
这是一条带
-l
参数的
p>
ping
命令,由于
1472 + 20<
/p>
(
IP
头)
+
8
(
ICMP
头)
<= 1500
(
MTU
)
,所以
ping
包不会被分段。网络接口以<
/p>
ICMP
的数据长度
=1472
发送
IP
包(
IP
p>
包长度
=1500
)
。
3.
ping x.x.x.x
–
l 1500
这是一
条带
-l
参数的
ping
命令,由于
1500
+
20
(
IP
头)
+
8
(
ICMP
< br>头)
>
1500
(
MTU
)
,所以
IP
p>
包需要被分段发送(先发
IP
包长度
=1500
,后发
IP
包长度
=1500-1472+20+8=56
)
。
Ping
的第
1
分段:
Ping
的第
2
分段:
-
-
-
-
-
-
-
-
-
上一篇:2020年托福阅读模拟试题及答案(卷七)
下一篇:光缆敷设施工方案