计算机网络(第六版)复习提纲19

SS4.4 网际控制报文协议ICMP

ICMP报文作为IP数据报的数据部分,加上IP报文的首部进行发送

一 ICMP报文的种类

1 ICMP差错报告报文

有四种ICMP差错报告报文

①终点不可达,路由器或者主机不能交付数据报时向原点发送

②时间超过,当路由器收到生存时间TTL=0的数据报时,丢弃该报文并向源点发送超时报文

③参数问题,当路由器或目的主机收到的数据报的首部中有的字段的值不正确时,丢弃该报文并向源点参数问题报文

④改变路由(重定向),路由器把改变路由报文发给主机,让主机下次发送给另外的路由器(找到了更好的路由)

ICMP差错检测报文的格式:

不发送ICMP差错报告报文的四种情况

①对ICMP差错报告报文,不再发送ICMP差错报告报文

②对第一个分片的数据报片的所有后续数据报片,都不发送ICMP差错报告报文

③对具有多播地址的数据报,都不发送ICMP差错报告报文

④对具有特殊地址(如127.0.0.0或0.0.0.0)的数据报,不发送ICMP差错报告报文

2 ICMP询问报文

有两种ICMP询问报文

①回送请求或回送回答:ICMP回送请求报文是由主机或路由器向一个特定主机发出的询问,收到回送请求必须给源主机或路由器发送ICMP回送回答报文。常用作连通性测试,测试目的站是否可达以及了解其有关状态。

②时间戳请求或时间戳回答:ICMP时间戳请求报文发送后,能收到对方的时间戳回答报文,利用报文中记录的时间戳(发送时间、接收时间)很容易计算当前网络的往返时延RTT。常用作RTT时延测取。

3 ICMP的应用

1 ping + 主机名/IP地址 用于测试两台主机之间的连通性。属于应用层直接使用网络层ICMP的例子,没有通过TCP或UDP

2 traceroute(Linux)/ tracert(Windows)+ 主机名/IP地址 从源主机向目的主机发送一连串的IP数据报,里面封装着无法交付的UDP用户数据报,第一个数据报的生存时间TTL设置为1,当数据报到达路径上第一个路由器,路由器收下该数据,然后把TTL减去1,由于TTL=0,路由器就把该数据丢弃并向源主机发送ICMP时间超过差错报告报文,这样一直下去,当TTL能够撑到数据报送达目的地址时,由于封装的是无法交付的UDP用户数据报,目的主机向源主机发送ICMP终点不可达差错报告报文。由此可以获得想要的路由信息

相关推荐
liulilittle2 小时前
C++ TAP(基于任务的异步编程模式)
服务器·开发语言·网络·c++·分布式·任务·tap
guts°6 小时前
17-VRRP
网络·智能路由器
Jewel Q6 小时前
动态路由协议基础
网络·智能路由器
宇称不守恒4.07 小时前
2025暑期—06神经网络-常见网络2
网络·人工智能·神经网络
Dreams_l7 小时前
网络编程2(应用层协议,传输层协议)
运维·服务器·网络
数据与人工智能律师7 小时前
数字迷雾中的安全锚点:解码匿名化与假名化的法律边界与商业价值
大数据·网络·人工智能·云计算·区块链
先知后行。7 小时前
网络协议HTTP、TCP(草稿)
网络·网络协议
xzkyd outpaper7 小时前
QUIC协议如何在UDP基础上解决网络切换问题
网络·计算机网络·udp·quic
明月看潮生7 小时前
编程与数学 03-002 计算机网络 06_网络层职责
计算机网络·青少年编程·编程与数学
碳酸的唐8 小时前
Inception网络架构:深度学习视觉模型的里程碑
网络·深度学习·架构