TCP/IP详解 卷一 ---------ICMP

我只是个搬运工,难过

1、引言

作用:传递差错报文以及其他需要注意的信息

该协议通常被IP层或者更高层协议(TCP、UDP)使用

ICMP报文在IP数据报内部被传输,如图1所示。因此ICMP常被认为是IP层的一个组成部分


                                                                     图1 ICMP封装在IP数据报内部

ICMP报文的格式如图2所示。所有报文前4个字节相同,但是不同的差错信息对应不同的剩余字节信息。


图2 ICMP报文

2、ICMP报文类型

各种类型的ICMP报文如图3所示,不同类型由报文中的类型字段和代码字段共同决定。


图3 ICMP报文类型

对ICMP差错报文有时需要特殊处理,因此需要区分ICMP报文是查询报文还是差错报文。特殊操作包括:在对ICMP差错报文进行响应时,永远不会再生成另一份ICMP差错报文(若无此限制可能导致遇到一个差错之后产生另一个差错,差错再产生差错,可会无休止的循环下去)。


  当发送一份ICMP差错报文时,报文始终包含IP的首部和产生ICMP差错报文的IP数据报的前8个字节(并不是IP数据报首部的前8个字节,而是IP首部之后的8个字节)。这样接收到ICMP差错报文的模块会将它和某个特定的协议(根据IP首部的协议字段判断)以及用户进程(根据包含在IP数据报前8个字节的TCP或UDP报文首部中的TCP或UDP端口号来判断)相联系。


不会产生ICMP差错报文的情况:

 1)ICMP差错报文     注:ICMP查询报文会产生ICMP差错报文

 2)目的地址是广播地址或多播地址

 3)作为链路层广播的数据报

 4)不是IP分片的第一片

 5)源地址不是单个主机的数据报。即源地址不能是源地址、环回地址、广播地址或多播地址

这些设置的主要目的:防止过去允许ICMP差错报文对广播分组影响带来的广播风暴


3、ICMP地址掩码请求与应答

ICMP地址掩码请求用于无盘系统在引导过程中获取自己的子网掩码。系统广播它的ICMP请求报文

ps:无盘系统是指由无盘工作站组成的局域网。无盘工作站:盘只硬盘,原理是在网内有一个系统服务器,这太系统服务器上除了有他本身运行所需的操作系统外还需要有工作站运行所需的操作系统。无盘工作站的机箱内没有硬盘,但是其他硬件都有,而且无盘工作站的网卡要带有可引导芯片。

ICMP地址掩码请求和应答报文格式如下:


图4 ICMP地址掩码请求和应答报文

      ICMP报文中标识符和序列号字段由发送端任意选择设定,这些值在应答中被返回,这样发送端就可将请求与应答进行匹配。

     RFC规定,除非系统是地址掩码的授权代理,否则他不能发送地址掩码应答

4、ICMP时间戳请求与应答

ICMP时间戳请求是允许系统向另一个系统查询当前的时间。返回的建议值是自午夜开始计算的毫秒数,细条的统一时间(UTC,格林尼治时间)。


ICMP时间戳请求与应答时间


图5 ICMP时间戳请求和应答报文

请求端填写发起时间戳,然后发送报文。应答系统收到请求报文时填写接收时间戳,在发送应答时填写发送时间。实际上后两个字段设置为相同的值。


ICMP时间戳请求和应答报文:是发送给某个特定主机?



5、ICMP端口不可达差错

使用上层协议如UDP可以查看ICMP报文中所附加的信息

UDP规则之一:如果收到一份UDP数据报而目的端口与某个正在使用的进程不相符,则UDP返回一个ICMP不可达报文。而TFTP来强制产生一个 端口不可达报文。


ICMP报文在主机间交换,而不用目的端口


对于ICMP差错报文需要包含:生成该差错报文的数据报IP首部,以及跟在该IP首部后面的前8个字节






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《TCP/IP详解 一、二、三pdf》是一本网络技术的权威著作,由美国网络专家Douglas E. Comer所著。这本书是关于TCP/IP协议的详细解析和介绍,含了网络通信的基本原理、协议栈的结构、数据传输过程等内容。 《TCP/IP详解 一、二、三pdf》的一主要介绍了TCP/IP协议的基础知识,括协议栈的层次结构、IP地址和子网划分、网络接口和路由选择、ARP和RARP协议、网络地址转换等。这一的内容非常基础,是理解后续的基础。 二则深入介绍了TCP协议的工作原理和实现细节。括三次握手和四次挥手过程、拥塞控制、流量控制和窗口管理、超时重传、各种TCP选项和标志位等。通过详细解析,读者能够更好地理解TCP协议的工作机制和数据传输的流程。 三则介绍了一些与IP协议相关的主题,如IP路由表和路由查找算法、多播和广播、IP转发和分片、IP协议的安全性等。这一的内容相对较为复杂,需要读者具备一定的网络知识和经验。 总的来说,《TCP/IP详解 一、二、三pdf》是一本全面深入介绍TCP/IP协议的重要参考书。无论是对于网络工程师、系统管理员还是对于对网络通信感兴趣的读者来说,这本书都具有很高的参考价值。通过阅读这本书,读者可以更好地理解网络通信的原理和实现,提高网络的性能和安全性。 ### 回答2: 《TCP/IP详解 一、二、三》是一本经典的网络技术书籍,全称为《TCP/IP协议详解一-协议》、《TCP/IP协议详解二-实现》和《TCP/IP协议详解三- TCP事务、HTTP、NNTP、IMAP等》。 《TCP/IP详解 一-协议》首先介绍了TCP/IP协议栈的基本原理和架构,IP协议、ICMP协议、ARP/RARP协议、UDP协议、TCP协议等。通过深入解析这些协议,读者可以全面了解TCP/IP协议栈的工作机制和功能。 《TCP/IP详解 二-实现》从实现的角度出发,介绍了如何在不同的操作系统中进行TCP/IP协议栈的实现,括网络设备驱动程序、协议控制块、握手过程、数据传输和错误处理等。这本书详细讲解了TCP/IP协议栈在各种操作系统环境下的实际应用。 《TCP/IP详解 三- TCP事务、HTTP、NNTP、IMAP等》则着重介绍了一些常用的应用层协议,如TCP事务、HTTP协议、NNTP协议、IMAP协议等。这些协议在互联网中起到了重要的作用,通过深入了解它们的工作原理和应用场景,读者可以更好地掌握网络应用开发和应用层协议的使用。 总体来说,《TCP/IP详解 一、二、三》是一本权威、全面的TCP/IP网络技术著作。适合网络工程师、系统管理员、软件开发人员等专业人士学习使用。通过阅读这本书籍,读者可以深入理解TCP/IP协议栈的原理和实现,提升对网络通信的理解和应用能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值