o 不携带路由首部的响应包 。
o 携带路由首部的响应包,但其携带的路由首部不是由所收到的包中的路由首部反向得到的 (例如,由本地配置信息提供的路由首部)
o 携带路由首部的响应包,其路由首部是由所收到的包中的路由首部反向而得到的 。但所收到的包中的源地址和路由首部的完整性和可靠性必须经过响应者验证 。
附录 A. 数据流标签字段的语义和用法
数据流是指从某特定的源节点向某特定的 (单播或组播) 目的节点发送的数据包的序列 。当源节点希望中间的路由器对数据包进行一些非凡处理时,可以使用数据流 。这一非凡处理的种类可以由某一控制协议,如资源预约协议,或者由数据流中的包自身中的信息,如在 hop-by-hop 选项首部里的选项,传达给路由器 。关于这样的控制协议或者选项的具体资料已经超出了本文的范围 。从源节点到目的节点之间可能有数条活动的数据流,还可能有同任何数据流都无关的业务量 。一个数据流由一个源地址和一个非零的数据流标签唯一地标识 。不属于任何一个数据流的包具有零值的数据流标签 。由数据流的源节点为数据流分配数据流标签 。新的数据流标签必须从 1 到 FFFF(十六进制) 之间伪随机地选出来 。随机分配数据流标签的目的是使得路由器能够使用数据流标签字段中的任意一组位作为哈希要害字,用来查询与数据流相关的状态 。属于同一数据流的包必须具有相同的源地址,目的地址和数据流标签 。假如其中的一些包包含 Hop-by-Hop 选项首部,那么它们都必须具有相同内容的 Hop-by-Hop选项首部 (除了 Hop-by-Hop 选项首部中的"下一个首部"字段) 。假如其中的一些包包含路由首部,那么它们在路由首部之前 (含路由首部) 的所有扩展首部的内容都必须相同 (除了路由首部中的"下一个首部"字段) 。答应但不要求路由器或目的节点检验上述条件是否满足 。假如检测到违反上述条件,应向源节点发送 ICMP"参数存在问题",编码 0 的报文,指针指向数据流标签字段的高位 (也就是,在IPv6包中偏移量为 1) 。在数据流的路径中建立的数据流处理状态的最大生存期必须作为描述状态建立机制的一部分加以规范 。比如资源预约协议,或者"数据流建立" hop-by-hop 选项 。使用一个数据流标签以后,不答应源节点在这个已建立的数据流处理状态的最大生存期内重新使用这个数据流标签 。当节点停机和重新启动(比如系统崩溃)时,它必须小心,不要使用先前用过的可能尚未过期的数据流的数据流标签 。有多种解决方法: 可以在稳定可靠的存储器中记录数据流标签的使用情况,这样节点就能在系统崩溃前后记住它 。或者在所有先前建立的数据流过期以前,避免使用任何数据流 。假如知道系统重新启动的最短时间,这一时间可从开始分配数据流标签之前的等待时间中扣除 。不要求全部的包,甚或大多数的包处于数据流中 (也就是,携带非零的数据流标签) 。这一观察报告放在这里,提醒协议的设计者和实现者不要对此做出任何假定 。例如,设计一个这样的路由器是不明智的,其性能只有在大多数包处于数据流中的时候才差强人意 。再如,设计一个只用于数据流中的包的首部压缩方案也是欠考虑的 。
附录 B. 选项字段格式的指导方针
本附录对设计用于 Hop-by-Hop 选项首部和目的地址选项首部 (见第 4.2 章) 的新选项时如何安排字段提出了一些建议 。这些原则以如下假设为基础:
o 选项的数据区中任意多八位组字段应放在其自然边界上. 也就是说,长度为n 个八位组的字段应放在距 Hop-by-Hop 选项首部和目的地址选项首部的开始位置处 n 个八位组的整数倍的位置上,其中 n = 1,2,4,或 8 。
推荐阅读
- POP3 邮局协议-版本3
- Internet Protocol Internet协议
- ICMP Internet控制信息协议
- 动态主机配置协议
- 网络通信协议
- CIP 传输协议
- Daytime协议
- OSPF协议
- PPP协议
- MPLS 多协议标志交换基本原理