icmp:internet控制报文协议

上传人:ji****en 文档编号:107704435 上传时间:2019-10-20 格式:PDF 页数:29 大小:1.16MB
返回 下载 相关 举报
icmp:internet控制报文协议_第1页
第1页 / 共29页
icmp:internet控制报文协议_第2页
第2页 / 共29页
icmp:internet控制报文协议_第3页
第3页 / 共29页
icmp:internet控制报文协议_第4页
第4页 / 共29页
icmp:internet控制报文协议_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《icmp:internet控制报文协议》由会员分享,可在线阅读,更多相关《icmp:internet控制报文协议(29页珍藏版)》请在金锄头文库上搜索。

1、下载 第11章ICMP:Internet控制报文协议 11.1 引言 I C M P在I P系统间传递差错和管理报文,是任何 I P实现必需和要求的组成部分。I C M P的规 范见RFC 792 Postel 1981b。RFC 950 Mogul和Postel 1985和RFC 1256 Deering 1991a定义 了更多的I C M P报文类型。RFC 792 Braden 1989a提供了重要的I C M P细节。 I C M P有自己的传输协议号(1) ,允许I C M P报文在I P数据报内携带。应用程序可以直接从 第3 2章讨论的原始I P接口发送或接收I C M P报文。

2、我们可把 I C M P报文分成两类:差错和查询。查询报文是用一对请求和回答定义的。 I C M P差错报文通常包含了引起错误的 I P数据报的第一个分片的 I P首部( 和选项) ,加上该分片 数据部分的前8个字节。标准假定这 8个字节包含了该分组运输层首部的所有分用信息,这样 运输层协议可以向正确的进程提交 I C M P差错报文。 T C P和U D P端口号在它们首部的前8个字节内出现。 图11 - 1显示了所有目前定义的I C M P报文。双线上面的是I C M P请求和回答报文;双线下面 的是I C M P差错报文。 t y p e和c o d e描述P R C _ I C M P

3、 _ E C H O回显请求 I C M P _ E C H O R E P L Y回显回答 I C M P _ T S A M P时间戳请求 I C M P _ T S T A M P R E P L Y时间戳回答 I C M P _ M A S K R E Q地址掩码请求 I C M P _ M A S K R E P L Y地址掩码回答 I C M P _ I R E Q信息请求(过时的) I C M P _ I R E Q R E P L Y信息回答(过时的) I C M P _ R O U T E R A D V E R T路由器通告 I C M P _ R O U T E S O

4、L I C I T路由器请求 I C M P _ R E D I R E C T有更好的路由 I C M P _ R E D I R E C T _ N E T网络有更好的路由P R C _ R E D I R E C T _ H O S T I C M P _ R E D I R E C T _ H O S T主机有更好的路由P R C _ R E D I R E C T _ H O S T I C M P _ R E D I R E C T _ T O S N E TTO S和网络有更好的路由P R C _ R E D I R E C T _ H O S T I C M P _ R E D

5、 I R E C T _ T O S H O S TTO S和主机有更好的路由P R C _ R E D I R E C T _ H O S T 其他不识别码 I C M P _ U N R E A C H目的主机不可达 I C M P _ U N R E A C H _ N E T网络不可达P R C _ U N R E A C H _ N E T I C M P _ U N R E A C H _ H O S T主机不可达P R C _ U N R E A C H _ H O S T 图11-1 ICMP报文类型和代码 t y p e和c o d e描述P R C _ I C M P _

6、U N R E A C H _ P R O T O C O L目的主机上协议不能用P R C _ U N R E A C H _ P R O T O C O L I C M P _ U N R E A C H _ P O R T目的主机上端口没有被激活P R C _ U N R E A C H _ P O R T I C M P _ U N R E A C H _ S R C F A I L源路由失败P R C _ U N R E A C H _ S R C F A I L I C M P _ U N R E A C H _ N E E D F R A G需要分片并设置D F比特P R C _

7、 M S G S I Z E I C M P _ U N R E A C H _ N E T _ U N K N O W N目的网络未知P R C _ U N R E A C H _ N E T I C M P _ U N R E A C H _ H O S T _ U N K N O W N目的主机未知P R C _ U N R E A C H _ H O S T I C M P _ U N R E A C H _ I S O L A T E D源主机被隔离P R C _ U N R E A C H _ H O S T I C M P _ U N R E A C H _ N E T _ P

8、R O H I B从管理上禁止与目的网络通信P R C _ U N R E A C H _ N E T I C M P _ U N R E A C H _ H O S T _ P R O H I B从管理上禁止与目的主机通信P R C _ U N R E A C H _ H O S T I C M P _ U N R E A C H _ T O S N E T对服务类型,网络不可达P R C _ U N R E A C H _ N E T I C M P _ U N R E A C H _ T O S H O S T对服务类型,主机不可达P R C _ U N R E A C H _ H O

9、S T 1 3用过滤从管理上禁止通信 1 4主机优先违规 1 5事实上优先切断 其他不识别码 I C M P _ T I M X C E E D超时 I C M P _ T I M X C E E D _ I N T R A N S传送过程中I P生存期到期P R C _ T I M X C E E D _ I N T R A N S I C M P _ T I M X C E E D _ R E A S S重装生存期到期P R C _ T I M X C E E D _ R E A S S 其他不识别码 I C M P _ P R R A M P R O BI P首部的问题 0未指明首部差错

10、P R C _ P A R A M P R O B I C M P _ P R R A M P R O B _ O P T A B S E N T丢失需要的选项P R C _ P A R A M P R O B 其他无效字节的字节偏移 I C M P _ S O U R C E Q U E N C H要求放慢发送P R C _ Q U E N C H 其他不识别类型 图11-1 (续) 图11 - 1和图11 - 2中含有大量信息: P R C _栏显示了N e t / 3处理的与协议无关的差错码(11 . 6节) 和I C M P报文之间的映射。对请 求和回答,这一列是空的。因为在这种情况下

11、不会产生差错。如果对一个I C M P差错, 这一行为空,说明N e t / 3不识别该码,并自动丢弃该差错报文。 图11 - 3显示了我们讨论图11 - 2所列函数的位置。 i c m p _ i n p u t栏是i c m p _ i n p u t为每个I C M P报文调用的函数。 UDP栏是为U D P插口处理I C M P报文的函数。 T C P栏是为T C P插口处理I C M P报文的函数。注意,是t c p _ q u e n c h处理I C M P源站抑制 差错,而不是t c p _ n o t i f y。 如果e r r n o栏为空,内核不向进程报告I C M P

12、报文。 表的最后一行显示,在用于接收 I C M P报文的进程的接收点上,不识别的 I C M P报文被提 交给原来的I P协议。 在N e t / 3中,I C M P是作为I P之上的一个运输层协议实现的,它不产生差错或请求;它代表 240计计TCP/IP详解 卷2:实现 下载 其他协议格式化并发送报文。 I C M P传递到达的差错,并向适当的传输协议或等待 I C M P报文 的进程发出回答。另一方面, I C M P用一个合适的I C M P回答响应大多数I C M P请求。图11 - 4对 此作了总结。 图11-2 ICMP报文类型和代码(续) 第11章 ICMP:Internet

13、控制报文协议计计241 下载 和 其他 其他 其他 其他 其他 函数描述引用 i c m p _ r e f l e c t为I C M P生成回答11 . 1 2节 i n _ r t c h a n g e更新I P路由表图2 2 - 3 4 p f c t l i n p u t向所有协议报告差错7 . 7节 p r _ c t l i n p u t向与插口有关的协议报告差错7 . 4节 r i p _ i n p u t进程不识别的I C M P报文3 2 . 5节 t c p _ n o t i f y向进程报告差错或忽略图2 7 - 1 2 t c p _ q u e n c h

14、放慢输出图2 7 - 1 3 u d p _ n o t i f y向进程报告差错图2 3 - 3 1 图11-3 ICMP输入处理时调用的函数 I C M P报文类型到达输出 请求向I C M P请求生成回答由某个进程生成 回答传给原始I P由内核生成 差错传给传输协议和原始I P由I P或传输协议生成 未知传给原始I P由某个进程生成 图11-4 ICMP报文处理 11.2 代码介绍 图11 - 5的两个文件中有本章讨论的I C M P数据结构、统计量和处理的程序。 文件描述 n e t i n e t / i p _ i c m p . hI C M P结构定义 n e t i n e

15、t / i p _ i c m p . cI C M P处理 图11-5 本章定义的文件 11.2.1 全局变量 本章介绍的全局变量如图11 - 6所示。 变量类型描述 i c m p m a s k r e p li n t使I C M P地址掩码回答的返回有效 i c m p s t a tstruct icmpstat I C M P统计量( 图11 - 7) 图11-6 本章介绍的全局变量 11.2.2 统计量 统计量是由图11 - 7所示的i c m p s t a t结构的成员收集的。 i c m p s t a t成员描述S N M P使用的 i c p s _ o l d i

16、c m p因为数据报是一个I C M P报文而丢弃的差错数 i c p s _ o l d s h o r t因为I P数据报太短而丢弃的差错数 图11-7 本章收集的统计信息 242计计TCP/IP详解 卷2:实现 下载 i c m p s t a t成员描述S N M P使用的 i c p s _ b a d c o d e由于无效码而丢弃的I C M P报文数 i c p s _ b a d l e n由于无效的I C M P体而丢弃的I C M P报文数 i c p s _ c h e c k s u m由于坏的I C M P检验和而丢弃的I C M P报文数 i c p s _ t o o s h o r t由于I C M P首部太短而丢弃的报文数 i c p s _ o u t h i s t 输出计数器数组;每种I C M P类型对应一个 i c p s _ i n h i s t 输入计数器数组;每种I C M P类型对应一个 i c p s _ e r r o ri c m p _ e r

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号