RPL(6):RFC6550翻译(6)---Sequence Counter

本文详细介绍了RPL协议中的三种序列计数器:DODAGVersionNumber、DAOSequence和PathSequence的作用与运行机制。这些计数器用于确保协议信息的新鲜度和同步性,避免旧版本路由信息的误用。
7、Sequence Counters(序列计数器)
本章介绍RPL中序列计数器的自举和运行总体方案,如DIO报文中的DODAGVersionNumber,DAO报文中的DAOSequence和传送信息选项中的Path Sequence。

7.1  序列计数器概览
本规范利用三种不同的序列号来验证协议信息的新鲜度和同步性:
DODAGVersionNumber :
此序列计数器存在于DIO Base中,指示DODAG形成时的版本。为重新验证完整性和允许全局修复的发生,每次根决定形成一个新的DODAG版时,都会单调递增其 DODAGVersionNumber。当路由器加入新的DODAG版本时, DODAGVersionNumber都会沿DODAG向下无变化传播。 DODAGVersionNumber作为DODAG的全局标志指示DODAG版本在哪一个路由器下运行。一旦接收节点已经迁移至较新的DODAG版本,较旧(小)的值表示始发路由并未迁移至新的DODAG版本且不能作为双亲使用。
DAOSequence:
此序列计数器存在于DAO Base中,将DAO报文和DAO ACK报文关联。DAOSequence号为发送DAO报文节点的本地标志,用于自身检测丢失的DAO报文,以便进行重试。
Path Sequence:
此序列计数器存在于DAO报文中的传送信息选项之中。此计数器存在的目的是:在一个路由冗余场景中,同一目的地存在多条并行线路,当新路由取代旧路由时,用于区分不同的移动路径。Path Sequence在DODAG中为全局标志,用于指示路由对于相关目标的新鲜度。从始发路由那接收到的更旧(小)的值表示始发路由状态已过期,且不再被考虑作为目标的潜在下一跳。Path Sequence由公告目标的节点计算,该节点是Target本身或代表主机公告Target的路由器,并且Path Sequence作为DAO内容通过双亲路由器向根进行传播时不会改变。如果主机未向它的路由器传递计数器,那么路由器将代表主机负责计算 Path Sequence,而主机因此仅能注册到一个路由器。如果包含相同Target的DAO报文由于路由冗余在给定时间点向多个双亲发布时,那么所有具有相同目标的DAO报文中的 Path Sequence相同。

7.2  序列计数器的运行
RPL序列计数器以“lollipop(棒棒糖)”方式细分 [Perlman83],其中大于等于128的值作为线性序列用于表示计数器的重启和自举。小于128的值用于大小为128的循环序列号码空间 [RFC1982]。请注意从线性范围到循环范围转换时的运行模式。最后,当运行于循环模式时,如果检测到序列号之间相差过大,那么它们不进行比较,详述如下。

基于2^N配置的比较窗口中,SEQUENCE_WINDOW=16,本规范中N值为4。
对于一个给定的序列计数器:
1、序列计数器将被初始化为一个运行时定义的值,大于等于128。推荐值为240(256-SEQUENCE_WINDOW)。

2、当序列计数器的增长超过它的最大值,它必须回归为0。当使用大于等于128的序列计数器时,最大值为255。当使用小于128的计数器时,最大值为127。

3、当对比两个序列计数器时,必须使用如下规则:
(1)  当第一个序列计数器A的区间为[128 .. 255],第二个序列计数器B区间为[0 .. 127]时:
① 如果(256 + B - A)小于等于 SEQUENCE_WINDOW,则B大于A,A小于B,且两者不相等。
②  如果(256 + B - A)大于 SEQUENCE_WINDOW,则A大于B,B小于A,且两者不相等。
例如,如果A=140,B=5,那么(256 + 5 - 240)= 21。21大于 SEQUENCE_WINDOW(16)。因此240大于5。另一例子,A=250,B=5,那么(256 + 5 - 250)= 11。11小于 SEQUENCE_WINDOW(16)。因此250小于5。

(2) 当两个进行对比的序列计数器都小于127,或它们都大于等于128时:
① 如果两个序列计数器之间差的绝对值小于等于 SEQUENCE_WINDOW,那么这种比较如 [RFC1982] 所言,用于决定大于、小于、等于关系。
②当 两个序列计数器之间差的绝对值大于 SEQUENCE_WINDOW时,表明发生了不同步,两序列号不可比较。

4、如果两个序列号被确定为不可比较,也就是比较的结果未定义,那么应按以下方式进行处理:将优先权给予最近观察到有增加的序列号。如果这样做失败了,则应尽量减少节点对自身状态的最终改变。 
标题SpringBoot智能在线预约挂号系统研究AI更换标题第1章引言介绍智能在线预约挂号系统的研究背景、意义、国内外研究现状及论文创新点。1.1研究背景与意义阐述智能在线预约挂号系统对提升医疗服务效率的重要性。1.2国内外研究现状分析国内外智能在线预约挂号系统的研究与应用情况。1.3研究方法及创新点概述本文采用的技术路线、研究方法及主要创新点。第2章相关理论总结智能在线预约挂号系统相关理论,包括系统架构、开发技术等。2.1系统架构设计理论介绍系统架构设计的基本原则和常用方法。2.2SpringBoot开发框架理论阐述SpringBoot框架的特点、优势及其在系统开发中的应用。2.3数据库设计与管理理论介绍数据库设计原则、数据模型及数据库管理系统。2.4网络安全与数据保护理论讨论网络安全威胁、数据保护技术及其在系统中的应用。第3章SpringBoot智能在线预约挂号系统设计详细介绍系统的设计方案,包括功能模块划分、数据库设计等。3.1系统功能模块设计划分系统功能模块,如用户管理、挂号管理、医生排班等。3.2数据库设计与实现设计数据库表结构,确定字段类型、主键及外键关系。3.3用户界面设计设计用户友好的界面,提升用户体验。3.4系统安全设计阐述系统安全策略,包括用户认证、数据加密等。第4章系统实现与测试介绍系统的实现过程,包括编码、测试及优化等。4.1系统编码实现采用SpringBoot框架进行系统编码实现。4.2系统测试方法介绍系统测试的方法、步骤及测试用例设计。4.3系统性能测试与分析对系统进行性能测试,分析测试结果并提出优化建议。4.4系统优化与改进根据测试结果对系统进行优化和改进,提升系统性能。第5章研究结果呈现系统实现后的效果,包括功能实现、性能提升等。5.1系统功能实现效果展示系统各功能模块的实现效果,如挂号成功界面等。5.2系统性能提升效果对比优化前后的系统性能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值