目录
一、ICMP协议
二、ICMP协议通信过程
(1)机制
(2)原理
(3)相关术语
丢包率
网络延时率(延迟)
请求超时【类似表白对方压根不搭理你】
没有任何回复数据,回复0个数据包
一、ICMP协议
ICMP协议是TCP/IP模型中网络层的协议
ICMP协议,又叫ICMP差错检测,主要用于测试网络通不通。常见的ping、tracert命令都是利用ICMP协议。
二、ICMP协议通信过程
(1)机制
一次ICMP差错检测可能通信多次;
每次通信过程是:
A发送echo request,request内容为1个数据包package;
B回复echo reply,reply内容也为1个数据包package。
(2)原理
如:ping www.baidu.com
ping一次通信4次,每次通信发送1个request数据包,接收1个reply数据包
字节=32:reply的数据包package大小是32Byte
时间=37ms:1次通信的往返时间(发送时间+回复时间)为37毫秒
TTL=51:中文译名是生存时间,我们叫它跳数或跃点,即echo reply回复经过的路由器数
- echo request发送时初始计算值一般默认是255,可以自己设置;
- 计算值每经过一个路由器值减1,可以防环。防环就是比如消息经过路由器A(TTL=3)开始就一直转圈循环,到了C就又回到A,永远到不了D。计算值每次减1,转1圈后T计算值=1,再传到B后计算值就为0了,此时消息就过期作废不会再继续传递了。所以计算值每次减1,可以防止消息无限循环
- 1次通信的计算值:通信前发送者初始计算值为255,如果echo request发送经过70个路由器,然后TTL=51即echo reply经过路由器数51个,那么回到发送者的计算值就是255-70-51了
丢失:即丢包数量。如果丢失1,表示总的回复数据包比发送的少1
(3)相关术语
丢包率
一次ICMP差错检测的丢包数量/发送总数量
网络延时率(延迟)
1次通信的往返时间。单位是fps
请求超时【类似表白对方压根不搭理你】
没有任何回复数据,回复0个数据包
禁止追踪
通过防火墙策略设置。比如某个路由器设置了禁止追踪,ping它请求超时。但是它依然可以转发数据包,只是不能被ping而已
unreachable不可达【类似表白被拒】
B找不到C或者C找不到D。有回复,回复内容是“无法访问目标主机”。
追踪【类似思考表白为什么被拒】
针对不可达的情况,找到是哪个设备出问题了,到底是B找不到C还是C找不到D?
追踪办法:tracert 【目标ip地址】
把发送消息经过的路由器依次ping 3遍取平均值,19条记录说明发送完经过了19个路由器;
(最多)30个跃点:TTL=30
2 * * * 请求超时:只能说明经过的第2个路由器设置了禁止追踪,因为后面的节点都有回复
6 * 50ms * 183.207.223.157: 经过的第6个路由器,ping的3次有2次没回复,第1次和第3次是*表示回复0个数据包,第2次往返时间是50ms。这个节点是没问题的,也算能ping通【类似表白被拒绝了2次,但有1次成功了,就算表白成功】