【计算机网络学习笔记十八】差错与控制报文

任何网络体系中,控制功能必不可少。互联层使用的控制协议是互联网控制报文协议(IcMP)。ICMP不仅用于传输控制报文,还可用于传输差错报文。

实际上,ICMP报文是作为IP数据报的数据部分传输的(将ICMP封装在报文中传输)。

1.ICMP差错控制

ICMP作为互联层的差错报文传输机制,最基本的功能是提供差错报告,但ICMP不严格规定对于何种差错采用何种处理方式。实际上,源主机接到ICMP后,常常需要将差错报告与应用程序联系起来,才能进行相应的差错处理。

ICMP差错报告都是采用路由器到源主机的模式,即所有的差错的信息都需要向源主机报告。

ICMP差错报文具有以下3个特点:

①差错报告不享受特别优先权和可靠性,作为一般数据传输。

②ICMP差错报告数据中除包含故障IP数据报头外,还包含故障IP数据报数据区的前64位数据。

③ICMP差错报告是伴随着抛弃出错IP数据报而产生的。IP软件一旦发现传输错误,首先把出错报文丢弃,然后调用ICMP向源主机报告差错信息。

ICMP出错报告包括目的地不可达报告、超时报告、参数出错报告等。

2.ICMP控制报文

互联层控制主要包括拥塞控制、路由控制两大内容。ICMP提供相应的控制报文。

(1)拥塞挖掘与源抑制报文

所谓拥塞就是路由器被大量涌入的IP数据报“淹没”的现象。

为控制拥塞,IP软件采用了“源站抑制(Source Quench)”技术。利用ICMP源抑制报文抑制源主机发送IP数据报的速率。路由器对每个接口进行密切监视,一旦发现拥塞,立即向相应源主机发送ICMP源抑制报文,请求源主机降低发送IP数据报的速率。

(2)路由控制与重定向报文

路由器一旦检测到某IP数据报经非优路径传输,它将向主机发送一个路由重定向ICMP报文,通知主机去往相应目的主机的最优路径。ICMP重定向机制的优点是保证主机拥有一个动态的、既小且优的路由表。

3.ICMP请求/应答报文

ICMP还设计了ICMP请求和应答报文对,利用ICMP请求/应答报文对便于进行故障诊断和网络控制,获得某些有用的信息。

(1)回应请求与应答

回应请求/应答ICMP报文对用于测试目的主机或路由器的可达性。

如果请求者成功的收到一个应答(应答报文中的数据副本与请求报文中的任选数据完全一致),则可以说明:

①目的主机(或路由器)可达。

②源主机与目的主机(或路由器)的ICMP软件和IP软件工作正常。

③回应请求与应答ICMP报文经过的中间路由器的路由选择功能正常。

(2)时戳请求与应答

时戳请求/应答ICMP报文的作用是同步互联网上主机时钟。

(3)掩码请求与应答

当主机不知道自己所处网络的子网掩码时,可利用掩码请求ICMP报文向路由器询问自己所处网络的子网掩码,路由器在收到请求后以掩码应答ICMP报文形式告知请求主机所在网络的子网掩码。

发表评论

电子邮件地址不会被公开。 必填项已用*标注