顺企网杭州网站建设,买外贸服装去哪个网站,免费网站建设行情,wordpress格子广告插件获取pdf#xff1a;密码7281专栏目录首页#xff1a;【专栏必读】考研湖科大教书匠计算机网络笔记导航 文章目录一#xff1a;网际控制报文协议ICMP#xff08;1#xff09;ICMP差错报告报文A#xff1a;终点不可达B#xff1a;源点抑制C#xff1a;时间超过D#xff…获取pdf密码7281专栏目录首页【专栏必读】考研湖科大教书匠计算机网络笔记导航 文章目录一网际控制报文协议ICMP1ICMP差错报告报文A终点不可达B源点抑制C时间超过D参数问题E改变路由2ICMP查询报文二ICMP应用举例1分组网间探测PING2跟踪路由本节对应视频如下 【计算机网络微课堂有字幕无背景音乐版】网际控制报文协议ICMP 一网际控制报文协议ICMP
网际控制报文协议ICMP为了更有效地转发IP数据报和提高交付成功的机会在网际层使用了网际控制报文协议。主机或路由器使用ICMP来发送差错报告报文和询问报文。ICMP报文被封装在IP数据报中发送
1ICMP差错报告报文
ICMP差错报告报文共有以下五种
终点不可达源点抑制时间超过参数问题改变路由重定向
以下情况不应发送ICMP差错报告报文
对ICMP差错报告报文不再发送ICMP差错报告报文对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文对具有多播地址的数据报都不发送ICMP差错报告报文对具有特殊地址(如127.0.0.0或0.0.0.0) 的数据报不发送ICMP差错报告报文
A终点不可达
终点不可达当路由器或主机不能交付数据报时就向源点发送终点不可达报文。具体可再根据ICMP的代码字段细分为目的网络不可达、目的主机不可达、目的协议不可达、目的端口不可达、目的网络未知、目的主机未知等13种错误
例如下图假设主机H1给H2发送IP数据报H1会将IP数据报发送给路由器R1由R1帮其转发若R1的路由表中没有网络N3的路由记录、默认路由以及主机H2的特定主机路由则R1就不知道如何转发该数据报只能将其丢弃并向发送该数据报的源主机H1发送ICMP差错报文其类型为终点不可达 B源点抑制
源点抑制当路由器或主机由于拥塞而丢弃数据报时就向源点发送源点抑制报文,使源点知道应当把数据报的发送速率放慢
例如下图H1给H2发送IP数据报当该数据报传输到路由器R2时由于R2拥塞所以R2根据自己的丢包策略丢弃了该数据报并向发送该数据报的源主机H1发送ICMP差错报告报文其类型为源点抑制 C时间超过
时间超过当路由器收到一个目的IP地址不是自己的IP数据报时会将其生存时间TTL字段的值减1。若结果不为0则将该IP数据报转发出去若结果为0除丢弃该IP数据报外,还要向源点发送时间超过报文。另外当终点在预先规定的时间内不能收到- -个数据报的全部数据报片时,就把已收到的数据报片都丢弃,也会向源点发送时间超过报文
例如下图某个生存时间等于2的IP数据报传输到了路由器R1R1将其生存时间减1后结果为1这表明该数据报的生存时间还未结束R1将其转发出去当该数据报传输到路由器R2后R1将其生存时间减1后结果为0这表明该数据报的生存时间结束了。R2丢弃该数据报 并向发送该数据报的源主机H1发送ICMP差错报告报文其类型为时间超过 D参数问题
参数问题当路由器或目的主机收到IP数据报后根据其首部中的检验和字段发现首部在传输过程中出现了误码就丢弃该数据报并向源点发送参数问题报文
例如下图是H1发送给H2的IP数据报假设该数据报在传输过程中收到了干扰其首部出现了误码当该数据报传输到路由器R1后R1检测出该数据报首部出错于是丢弃该数据报并向发送该数据报的源主机H1发送ICMP差错报告报文其类型为参数问题 E改变路由
改变路由路由器把改变路由报文发送给主机让主机知道下次应将数据报发送给另外的路由器(可通过更好的路由)
例如下图假设我们给主机H1指定的默认网关是路由器R1则H1要发往网络N2的IP数据报都会传输给R1由其帮忙转发当R1发现H1发往N2的数据报的最佳路由不应该经过R1而应该经过R4时就用改变路由报文把这个情况告诉主机。于是H1就在自己的路由表中添加一个项目到达N2应该经过路由器R4而不是默认网关R1。之后H1要发往N2的IP数据报都会传输给R4 2ICMP查询报文
ICMP查询报文常见有以下两种
回送请求和回答ICMP回送请求报文是由主机或路由器向一个特定的目的主机发出的询问。收到此报文的主机必须给源主机或路由器发送ICMP回送回答报文。这种询问报文用来测试目的站是否可达及了解其有关状态时间戳请求和回答ICMP时间戳请求报文是请某个主机或路由器回答当前的日期和时间。在ICMP时间戳回答报文中有一个32位的字段其中写入的整数代表从1900年1月1日起到当前时刻一共有多少秒。这种询问报文用来进行时钟同步和测量时间
二ICMP应用举例
1分组网间探测PING
分组网间探测PING用来测试主机或路由器间的连通性应用层直接使用网际层的ICMP (没有通过运输层的TCP或UDP)使用ICMP回送请求和回答报文
如下图使用ping命令测试某网站连通性 2跟踪路由
跟踪路由用来测试IP数据报从源主机到达目的主机要经过哪些路由器 如下图在Windows中使用tracert命令测试到达某主机需要经过哪些路由器