您的位置:首页 > 理论基础 > 计算机网络

ICMP协议

2017-12-23 00:36 127 查看
ICMP(Internet Control Message Protocol)因特网控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 

 

我们在网络中经常会使用到ICMP协议,只不过我们觉察不到而已。比如我们经常使用的用于检查网络通不通的Ping命令,这个“Ping”的过程实际上就是ICMP协议工作的过程。还有其他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。

 

ICMPv6为了与IPv6配套使用而开发的互联网控制信息协议。与IPv4一样,IPv6也需要使用ICMP,旧版本的ICMP不能满足IPv6全部要求,因此开发了新版本的ICMP,称为ICMPv6。

 

基本功能

 

互联网控制信息协议是 IP协议的一个重要组成部分。ICMPv6向源节点报告关于目的地址传输IPv6包的错误和信息,具有差错报告、网络诊断、邻节点发现和多播实现等功能。

 

ICMPv6报文总体上被分为两种类型:差错报文和信息报文。差错报文的识别是通过在消息类型字段值的高比特位中设置0。因此,差错报文的报文类型从0到127;信息报文的类型从128到255。

 

ICMPv6出了具备IPv4 ICMP的基本功能外,还包含以下两个功能:

 

1.组播收听发现协议(MLD,Multicast Listener Discovery)

 

该协议完成子网内的组播成员管理。MLD协议定义了3条ICMPv6消息:

(1)组播收听查询消息:组播路由器向子网内的组播收听者发送此消息,以获取组播收听者的状态。

(2)组播收听者报告消息:组播收听者向组播路由器汇报当前状态,包括离开某个组播组。

(3)组播收听者

 

2.邻居发现协议(Neighbor Discovery)

 

邻居发现协议实现了IPv6种的地址解析协议(ARP)、ICMPv6路由器发现协议以及ICMPv6重定向消息的功能,用来管理同一链路上结点间的通信。

 

(1)路由器通告消息:该路由器以组播方式向所在链路发送,宣告其可用性及其相关的挽留过配置参数。该消息发送有两种方式,一种是非请求、周期性的路由器通告;另一种是请求的路由器通告,即收到主机发出的路由器请求后作为应答发出。

(2)路由器请求消息:该消息由主机向本地路由器发出,要求其立即发送路由器通告消息。

(3)邻居请求消息:结点发送邻居请求消息来请求邻居的链路层地址,以验证它先前所获得并保存在缓存中的邻居链路层地址的可达性,或者验证自己的地址在本地链路上是否唯一。

(4)邻居通告消息:结点在收到邻居请求消息或链路层地址改变时,发送邻居通告消息,向邻结点通告自己的链路地址信息。

(5)重定向消息:路由器发送重定向消息告诉主机重新定向它发送分组到目的结点的路径。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  网络协议 互联网