如果网关在处理数据报时发现生存周期域为零,此数据报必须抛弃。网关同时必须通过超时信息通知源主机。
如果主机在组装分段的数据报时因为丢失段未能在规定时间内组装数据,此数据报必须抛弃。网关发送超时信息。
如果段零不可用则不用发送超时信息。 代码0由网关发送,代码1由主机发送。
5.参数问题消息
图3 IP域:
目的地址:从源数据中得到。 ICMP域: ·类型:12 ·代码:
0 = 指针指向错误。
·校验码: 16位数据(从ICMP类型开始)的反码和再取反而得。为计算校验码,校验码域应该为零。这些零在以后会被校验码取代。 ·指针:
如果code = 0,指向有问题的字节。
·Internet包头+64位源数据报数据:Internet包头+64位源数据报数据:Internet包头加上源数据的头64位而得。此数据用于主机匹配信息到相应的进程。如果高层协议使用端口号,应该假设其在源数据的头64个字节之中。 ·说明:
如果网关或主机在处理数据报时发现包头参数有错误以至不能完成工作,它必须抛弃此数据报。一个潜在的原因可以是变量的错误。网关或主机将通过参数问题消息通知源主机,此消息只有在消息被抛弃时才被发送。
指针指向发现错误的数据报包头字节(可能是选项的中间)。例如,1表示服务类型有错误,如果有选项的话,20表示第一个选项的类型有错误。 代码0可能从主机或网关接收到。
第5页
6.源拥塞消息
图4 IP域:
目的地址:源数据报数据的地址和源网络。 ICMP域: ·类型:4 ·代码: 0
·校验码: 16位数据(从ICMP类型开始)的反码和再取反而得。为计算校验码,校验码域应该为零。这些零在以后会被校验码取代。
·Internet包头+64位源数据报数据: Internet包头+64位源数据报数据:Internet包头加上源数据的头64位而得。此数据用于主机匹配信息到相应的进程。如果高层协议使用端口号,应该假设其在源数据的头64个字节之中。 ·说明:
如果没有缓冲容纳,网关会抛弃数据报,如果网关这样做了,它会发送源拥塞消息给发送主机。如果接收的数据报太多无法处理,目的主机也会发送相应的消息给发送主机。此消息要求发送发减少发送速率,网关会给每个抛弃的消息返回源拥塞消息,在接到此消息后,发送主机应该减少发送速率,直到不再接收到网关发送的源拥塞消息为止。在此之后,源主机可以再增加发送速率,直到接收到目的主机的源拥塞消息为止。
网关或主机不会等到已经超过限度后再发送此消息,而是接近自己的处理极限时就发送此消息,这意味着,引发源拥塞消息的数据报仍然可以处理。 代码0可能会从主机或网关接收到。 7.重定向消息
第6页
图5 IP域:
目的地址:源数据报数据的地址和源网络。 ICMP域: ·类型: 5 ·代码:
0 = 重定向网络的数据报; 1 = 重定向主机的数据报;
2 = 重定向网络和服务类型的数据报; 3 = 重定向网络和主机类型的数据报。 ·校验码:
16位数据(从ICMP类型开始)的反码和再取反而得。为计算校验码,校验码域应该为零。这些零在以后会被校验码取代。 ·网关Internet地址:
应该发送网关地址(其在源数据报数据的internet目的网络域中指定)。 ·Internet包头+64位源数据报数据:
Internet包头加上源数据的头64位而得。此数据用于主机匹配信息到相应的进程。如果高层协议使用端口号,应该假设其在源数据的头64个字节之中。 ·说明:
网关在下面情况下发送重定向消息。网关(G1)从网关相连的网络上接收到数据报,它检查路由表获得下一个网关(G2)的地址(X)。如果G2和指定的接收主机在同一网络上,重定向消息发出,此消息建议发送主机直接将数据报发向网关G2,因为这更近,同时网关G1向前继续发送此数据报。
因为在数据报中的IP源路由和目的地址域是可选的,所以即使有更好的路由有时也无法发现。
代码0,1,2和3可能会从网关发送。 8.回送或回送响应消息
图6 IP域: 地址:
第7页
回送消息的源地址是回送响应消息的目的地址。若要形成一个回送响应消息,应该将源和目的地址交换,将类型代码更改为0,重新计算机校验码。 ICMP域: ·类型: 8代表回送消息; 0代表回送响应消息。 代码:0 ·校验码:
16位数据(从ICMP类型开始)的反码和再取反而得。为计算校验码,校验码域应该为零。这些零在以后会被校验码取代。
·标识符:如果代码=0,帮助匹配回送和回送响应的代码可以为0。 ·序列码:如果代码=0,帮助匹配回送和回送响应的序列码可以为0。 ·说明:
回送消息中接收到的消息应该在回送响应消息中返回。标识符和序列码由回送发送者使用帮助匹配回送请求的响应。
代码0可能会从主机或网关接收到。 9.时间戳和时间戳响应消息
图7 IP域: 地址:
时间戳消息的源地址是时间戳响应消息的目的地址。若要形成一个时间戳响应消息,应该将源和目的地址交换,将类型代码更改为14,重新计算机校验码。 ICMP域: ·类型:
13代表时间戳消息; 14代表时间戳响应消息。 ·代码:0 ·校验码:
16位数据(从ICMP类型开始)的反码和再取反而得。为计算校验码,校验码域应该为
第8页