CN110380963A - 一种高效快收敛的邻居发现方案 - Google Patents
一种高效快收敛的邻居发现方案 Download PDFInfo
- Publication number
- CN110380963A CN110380963A CN201910043423.4A CN201910043423A CN110380963A CN 110380963 A CN110380963 A CN 110380963A CN 201910043423 A CN201910043423 A CN 201910043423A CN 110380963 A CN110380963 A CN 110380963A
- Authority
- CN
- China
- Prior art keywords
- node
- message
- neighbor
- domain
- neighbours
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/26—Route discovery packet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种高效快收敛的邻居发现方案,它主要应用在构建自治控制平面中的邻居发现节点,采用“使用精简邻居发现消息的邻接表构建”和“节点高效快速接入安全自治域”两个机制。机制一主要解决在邻居发现过程中邻居消息冗余,消息过长的问题;机制二主要解决新节点在加入安全自治域时,邻居表收敛过慢的问题。通过使用上述两种新机制,本发明提出的邻居发现方法能够减少控制开销,有效地提高邻接表收敛速度,从而在邻居发现过程中,减少了控制开销,提高了邻居发现的效率。
Description
技术领域
本发明属于自治网络(Autonomic Networks)技术领域,尤其涉及在自治网络中需要实现 网络管理的信令需求,特别是自治节点需要通过网络层安全协议(IP Security,IPsec)实现消 息的安全加密传输的功能。
背景技术
自治系统(参见文献[1]:Vinh P C.Toward Formalized Autonomic Networking[J].Mobile Networks&Applications,2014,19(5):1-10)最初是在2001年提出的。基本目标是自我管理,包 括自我配置,自我优化,自我修复和自我保护(参见文献[2]:BehringerM,Pritikin M,Bjarnason S,et al.Autonomic Networking:Definitions and DesignGoals[J].Information on Rfc,2015)。自治 系统通过自治功能来实现自我管理行为,同时IP网络最初设计时考虑了类似的自治属性,IP 网络应该是分布式的,以承受网络任何部分的中断。
随着互联网的高速发展,网络的规模越来越大,网络中的节点也是越来越多,因此如何实 现在不同场景下对于网络节点实现高效快速的管理成为了网络管理人员越来越关注的问题。传 统的网络管理方式已经不再适用于当今的需求。从技术角度来说,对于网络的管理模式主要有 两种方式:带内网络(in-band)模式与带外网络管理(out-of-band)模式。所谓的带内网络管 理模式,即网络的控制消息与用户网络的承载业务消息通过同一个逻辑信道传输。这就会造成 网络的实现网络管理的信息与用户的业务数据是交织在一起的,不利于用户服务的提升,同时 如果网络中出现了一些错误,如配置错误或是路由错误,就会出现网络管理者无法接触到故障 的节点,更别说解决排除故障了。而对于带外网络管理模式,虽然实现了网络的管理控制消息 与用户网络承载的业务信息的分离,但是需要额外的构建网络,这无疑会增加网络管理、运营、 维护的成本。因此,虚拟带外网络(VirtualOut Of Band,VOOB)的概念应运而生,通过在实 际的网络上,虚拟出一个专门用于网络管理的平面,该平面有着和承载用户数据的数据平面相 互独立的地址空间与路由,因此可以保证控制平面与数据平面的耦合降到最低,控制平面对于 数据平面的依赖也降到最低。
2014年底,互联网工程任务组(Internet Engineering Task Force,IETF)成立了自治网络 集成模型方法(Autonomic Networking Integrated Model Approach,ANIMA)工作组。该工作 组旨在制定自治网络的技术标准。ANIMA工作组并非要定义一种全新的网络架构,而是在现 有网络基础上的演进,在现有网络上逐渐集成自治网络技术。因此,ANIMA工作组致力于开 发出自组织网络所需用的基础、可重用的技术组件。ANIMA选择了分布式的技术路线,即通 过扩展路由器等设备的交互,来使得设备直接通过协议来管理、控制网络。本着“基础可重用 的组件”与“分布式”的思想,ANIMA工作组目前定义了以下三个具体的部分:自治控制平 面(Autonomic Control Plane,ACP)(参见文献[4]:Behringer,M.,Eckert,T.,and S.Bjarnason, "An Autonomic Control Plane",draft-ietf-anima-autonomic-controlplane-07(work in progress),July 2017)、通用自治信令协议(Generic Autonomic Signaling Protocol,GRASP)(参考文献[5]: Bormann,C.,Carpenter,B.,and B.Liu,"A Generic Autonomic Signaling Protocol(GRASP)",draft-ietf-animagrasp-15(work in progress),July 2017)和安全自启动机制(Bootstrap Key Infrastructure,BRSKI)(参见文献[6]:Pritikin,M.,Richardson,M.,Behringer,M.,Bjarnason,S., and K.Watsen,"Bootstrapping Remote Secure KeyInfrastructures(BRSKI)", draft-ietf-anima-bootstrappingkeyinfra-07(work inprogress),July 2017)。
在自治控制平面中主要包括四个模块,分别为唯一链路地址分配模块、邻居发现模块、 IPsec建立模块以及RPL路由模块。下面将简要介绍各部分的功能:在唯一链路地址分配模块根 据参考文献[7](Hinden,R.and B.Haberman,"Unique Local IPv6 UnicastAddresses",RFC 4193, DOI 10.17487/RFC4193,October 2005)中唯一本地地址(UniqueLocal Address,ULA)的结构 为每一个节点分配一个与承载业务数据相隔离的ULA地址;在邻居发现模块,网络中的相邻节 点通过周期性的交互邻居发现消息,来建立并维护一个邻居表,邻居表中主要包含接受邻居发 现消息的接口信息、节点支持的IPSec协议类型、发送消息接口的链路本地地址(Link Local Address,LLA)和接收消息的时间戳等信息。在IPsec隧道建立模块,根据邻居表中的信息, 网络中每两个相邻的节点之间建立IPsec安全传输隧道,实现信息的加密传输;在RPL路由模块, 通过RPL路由协议构建上下行路由,使得消息可以通过建立的安全隧道进行加密多跳传输。
ULA地址分配具体流程如下:
节点在上电之后,会根据自身节点的信息以及本身所携带的安全自治域的证书等信息,会 自主的生成具有在全球唯一的唯一本地地址(Unique Local Address,ULA)。该地址是IPv6 地址体系中,一种专门为解决企业内部通信的内部地址,其不出现在节点的全局路由表中。唯 一本地地址ULA结构如说明书附图2所示。
邻居发现具体流程如下:
节点通过周期性的组播邻居发现消息,邻居发现消息格式如说明书附图4所示。在邻居发 现消息中包含发送该详细的接口信息,目标参数,消息存活时间,消息跳数,CA证书信息摘 要等信息。节点A在收到邻居节点B发来的邻居发现消息,首先对消息进行解析,获取消息 中的证书摘要消息,如果其证书信息摘要中与自己的证书摘要是一致的,那么节点A任务发 送邻居发现消息的邻居节点与自己是位于同一个安全域内的,此时就会继续解析消息,获得洪 泛发起方的链路本地地址(Link Local Address,LLA),目标参数信息(Objective),同时 记录此次邻居发现消息接收的接口名称,消息到达时间,然后遍历本地的邻接表,如果邻居发 现消息中链路地址引进存在,那么只需要该链路本地地址对应的邻接表条目进行更新即可,如 果不存在那么则会利用上述的这些信息构建一条新的邻居条目并加入到邻接表中,之后节点A 在等待固定周期60s之后,也会给在自己一跳范围内给其邻居组组播发送携带自己的信息的邻 居发现消息,A节点的邻居收到A发送的邻居发现消息处理流程同上。如果A对邻居节点验 证失败,那么节点A则会直接丢弃本次消息。邻居发现的具体流程图如说明书附图5所示。
RPL路由具体流程如下:
RPL路由协议是一种基于标准化IPv6的开放性架构的低功耗有损网络路由协议,因而具 有较好地互操作性和灵活性,可用于连接各种不同规模的网络,主要应用于数据汇聚型的应用 场景。RPL协议通过构建有面向目的地的有向无环图(Destination OrientedDirected Acyclic Graph,DODAG)来形成网络拓扑,从而进行数据的传输。DODAG的构建主要分为两部分: (1)上行路由的构建。由sink节点或者边界路由器(DODAG Root)发起,通过广播DODAG 信息对象消息(DODAG Information Object,DIO)控制消息使未加入DODAG中的节点加入 到DODAG中,从而完成上行路由的构建;(2)下行路由的构建。未加入DODAG的节点在 接收到上游节点广播的DIO控制消息后,通过向上游节点发送DODAG目的地通告消息(DODAG Destination Advertisement Object,DAO)控制消息直至sink节点,从而完成下行路 由的构建。DODAG的构建示意图如说明书附图4所示。
IPsec隧道建立具体流程如下:
网络层安全协议(IP Security,IPsec),是IETF针对网络层安全提出的一种信息安全协议。 构建安全隧道使用封装安全有效载荷(Encapsulation Security Payload,ESP)协议并采用IPsec 隧道模式(Tunnel Model)。节点在构建邻居表和路由信息之后,会根据邻居表中邻居节点端 口的本地链路地址与路由信息对IPsec进行自动配置,使得网络中任意两拓扑相邻节点间建立Hop-Hop安全隧道,并最终实现网络管理数据的安全可靠传输。
综上所述,人们自治系统已进行了一段时间的深入研究,在自治系统中构建“虚拟带外网 络”已经有些架构与构思,但经过我们深入的研究发现,现有文献在构建自治控制平面还存在 以下问题:
1.邻居发现消息不够精简。在邻居发现消息中,其消息格式如说明书附图3所示,在邻 居发现过程中,“Flag”为默认值“4”,但是其在邻居发现过程中没有使用到,同时在消息 格式中的“Loop_Count”字段用于限制消息的传播跳数,但是由于是邻居发现,仅限于一跳范 围内传播,因此目前填入的是“1”。邻居发现消息的发送采用组播方式,节点在收到消息之 后并不会再转发,默认传播范围即为一跳邻居内,因此该字段就显得冗余。上述两个冗余字段 的存在会造成邻居发现消息不够精简,增大控制开销,降低网络吞吐量。
2.忽略链路本地地址LLA与MAC地址映射关系。现有机制在邻居发现过程中,邻居发 现消息中的“Initiator”字段表明发送邻居发现消息接口对应的链路本地地址LLA,LLA是一 种作用范围仅仅局限于链路本地的IPv6地址,共128比特,其和网卡的MAC地址有着一一 对应的关系。但是现有机制并没有充分考虑到链路本地地址与MAC地址的映射关系,造成邻 居发现消息过程,增大开销,降低网络吞吐量。此外由于邻居发现消息是周期性的组播发送, 由此带来的信息冗余问题将会随时间变得越来越明显。
3.邻接表收敛速度过慢。由于邻居发现消息是通过周期性组播的方式发送出去的,因此 当有新节点A加入域时,新节点A给其所有的邻居组播邻居发现消息,其邻居节点再收到节 点A的邻居发现消息之后,证书信息摘要验证通过之后,解析消息,根据邻居发现消息中携 带的消息以及接收消息的时间与接口等信息,向自己的邻接表中新增一条条目。但是由于邻居 发现消息都是固定周期60秒发送一次,因此即使A的邻居节点再收到A的邻居发现消息之后, 经验证同意其入域,也不会立即给A发送邻居发现消息,而是必须要等到下一轮洪泛周期, 这样会使得节点A的邻居发现收敛过慢,效率降低。
上述问题的存在使得邻居发现过程收敛缓慢,同时增加控制开销,造成信息冗余,降低网 络吞吐量。为了解决上述问题,提高邻居发现过程的性能,有必要提出新的方法对它们加以解 决。本发明将针对这些问题提出切实可行的解决方案。
发明内容
为了解决上文所述的邻居发现消息不够精简、忽略了链路本地地址LLA与MAC地址映 射关系、邻接表收敛速度过慢三个问题,本发明提出一种高效快收敛的邻居发现方案;该方法 采用了“使用精简邻居发现消息的邻接表构建”、“节点高效快速接入安全自治域”两种新机 制,通过删除邻居发现消息中的冗余字段、修改邻居发现消息字段内容以及优化新节点加入安 全自治域流程,消除邻居发现过程中的消息冗余,减小控制消息长度,加快邻居发现收敛速度, 使得邻居发现过程具有高效、快收敛的特点。
(一)本发明提出的新机制的基本思路和主要操作
以下具体介绍本发明提出的“使用精简邻居发现消息的邻接表构建”和“节点高效快速接 入安全自治域”两种新机制的基本思路和主要操作。
1.使用精简邻居发现消息的邻接表构建
“使用精简邻居发现消息的邻接表构建”新机制解决的是如下问题:
在现有邻居发现消息中,“Flag”字段默认为“4”,但是在邻居发现过程中,并没有使 用到;同时消息格式中的“Loop_Count”字段用于限制消息的传播条数,由于是用于邻居发现, 因此仅限于在一跳范围内,填入的是“1”。但是由于洪泛发送采用组播方式,节点在收到消 息之后并不会再转发,默认传播范围就是在一跳邻居内。因此邻居发现消息不够精简,在传输 时会造成信息冗余,增大控制开销。其次邻居发现消息中的“Initiator”用来表示邻居发现消 息发送的接口,在目前的草案中,该字段填入的内容是发送邻居发现消息接口的链路本地地址 LLA。链路本地地址是一种作用范围仅限于“本地链路”范围的IPV6地址,也即作用范围仅 限与在拓扑关系上是直接相连的邻居。该类地址可以根据网卡的48比特MAC地址映射得到。 但是在现有的邻居发现过程中,没有充分考虑到链路本地地址LLA与MAC地址之间的映射 关系,造成邻居发现消息过长,降低了效率,增大了控制开销。
“使用精简邻居发现消息的邻接表构建”新机制的基本思路如下:
现有用于邻居发现的邻居发现消息结构如说明书附图3所示,邻居发现消息中的“Flag” 字段在邻居发现过程中,没有发挥任何作用,因此可以考虑将其删除。其次“Loop_Count”用 于限制邻居发现消息的传播条数,防止邻居发现消息的多次转发带来的广播风暴问题,造成网 络的拥塞,但是在邻居发现过程中,由于只是用于发现邻居,因此其值默认为“1”,表明该 消息仅在自己的一跳范围只能传播。但是在实际应用时,由于发送邻居发现消息的方式采用的 是UDP组播的方式,邻居发现消息的发起节点发送邻居发现消息之后,其邻居节点在收到消 息之后,只会收下该消息并解析,并不会主动去转发该消息,因此该字段就变得没有实际价值。 因此可以考虑在邻居发现消息中,将该字段删除。发送端在发送邻居发现消息时,将“Initiator” 字段的内容修改为硬件MAC地址,接收端在收到邻居发现消息时,会将消息字段中的硬件 MAC地址转换为本地链路地址LLA,并构建相应的邻接表条目。精简的邻居发现消息格式如 说明书附图5所示,具体操作如下:
(1)创建一个精简的邻居发现消息,并由节点A组播发送给其所有的邻居节点。精简的 邻居发送消息不再包含“Flag”和“Loop_Count”两个冗余字段,在此基础上同时还修改了 原邻居发现消息的内容,将邻居发现消息中的“Initiator”字段内容修改为简短的MAC地址。
(2)节点B收到A发送的邻居发现,其中B是A的一个邻居节点。B在收下邻居发现 消息之后,对消息进行解析,提取其中的“Objective”和“Initiator”字段。并记录接收消息的接口标识以及接收消息的时间信息。
(3)节点B将“Initiator”字段中的MAC地址映射为本地链路地址。在MAC地址中的第3和第4字节之间插入2字节符fffe,并将MAC地址的第1字节的第7比特位进行翻转, 在修改后的MAC地址头部添加2字节的本地链路地址标识fe80。
(4)节点B使用上述的“Objective”Initiator和接口信息与时间戳,创建关于其邻居节 点A的邻接表条目,并存储,同时B也给自己的邻居组播发送精简的邻居发现消息,流程同 节点A。
2.节点高效快速接入安全自治域
由于邻居发现消息是通过周期性组播的方式发送出去的,因此当有新节点加入域时,新节 点给其所有的邻居组播邻居发现消息,其邻居节点再收到新节点的邻居发现消息之后,经证书 信息摘要验证通过之后,解析消息,根据邻居发现消息中携带的消息以及接收消息的时间与接 口等信息,向自己的邻接表中新增一条条目。但是由于邻居发现消息都是固定周期60秒发送 一次,因此即使新节点的邻居节点在收到新节点的邻居发现消息之后,经验证同意其入域,也 不会立即给新节点发送邻居发现消息,而是必须要等到下一轮洪泛周期,这样会使得新节点的 邻居发现收敛过慢,效率降低。
为解决此问题,我们提出了“节点高效快速接入安全自治域”的新机制,该新机制基本思 路如下:
定义了节点入域请求消息,该消息格式如说明书附图7所示。定义了节点入域请求同意消 息,该消息格式如说明书附图8所示。定义了节点入域请求同意消息,该消息格式如说明书附 图9所示。
“节点高效快速接入安全自治域”新机制的基本流程如说明书附图10所示,主要操作如下:
(1)新节点在加入域时,会主动给其所有邻居组播一个节点入域请求消息,执行下一步;
(2)邻居节点收到新节点的入域请求消息,对消息进行解析,获取其中的证书摘要信息, 并验证该摘要是否与自己的证书摘要一致,若一致,则执行下一步,否则执行步骤(5);
(3)邻居节点给新节点单播回复入域请求同意消息,并记录发送入域回复消息的接口, 执行下一步;
(4)新节点继续发送入域请求消息,三次之后,仍未收到入域回复消息,则放弃入域, 执行步骤(7);
(5)新节点收到其邻居发送的入域请求同意消息,根据该消息创建邻接表条目,执行下 一步;
(6)新节点入域之后,邻居节点在当前周期内给(3)中接口之外的所有接口组播邻居 发现消息,更新邻居表,下一周期后,则周期性的组播邻居发现消息,更新邻居表;
(7)结束。
(二)本发明提出的一种高效快收敛的邻居发现方案的主要操作
本发明提出的高效快收敛的邻居发现方案包含“使用精简邻居发现消息的邻接表构建”和 “节点高效快速接入安全自治域机制”两种新机制。
本发明提出的一种高效快收敛的邻居发现方案做有如下预设:
(1)网络中所有节点都具有两种IPv6地址,即链路本地所使用的链路本地地址,以及用 于远端传输使用的唯一本地地址(Unique Local Address,ULA)。
(2)节点在上电之后,会自主给所有接口组播消息,用于邻居发现并构建邻接表。
使用精简邻居发现消息的邻接表构建
删除了原邻居发现消息中的“Flag”和“Loop_Count”字段。其中“Flag”字段在邻居发 现过程中,没有发挥任何作用,因此可以将其删除。其次“Loop_Count”本意是用于限制邻居 发现消息的传播跳数,防止多次转发邻居发现消息在网络中引发广播风暴,造成网络的拥塞, 但是在邻居发现过程中,节点发送邻居发现消息之后,其邻居节点在收到消息,只会将该消息 收下并解析,但是并不会主动转发该邻居发现消息,因此该字段就变得没有实际价值,可以将 其删除。同时,充分考虑了链路本地地址LLA与硬件MAC地址之间的映射关系,将邻居发 现消息中“Initiator”字段内容由原先128比特的链路本地地址LLA替换为只有48比特的硬 件MAC地址。
通过删除原邻居发现消息中的“Flag”,“Loop_Count”字段,在不影响邻居发现过程的 基础上,减少了控制开销,同时发送端在发送邻居发现消息时,修改邻居发现消息的字段内容, 将“Initator”字段内容修改为48bit的硬件MAC地址,缩短了控制消息的长度,提高了网络 的吞吐量。
“使用精简邻居发现消息的邻接表构建”的新机制主要操作如下:
(1)创建一个精简的邻居发现消息,并由节点A组播发送给其所有的邻居节点。精简的 邻居发送消息不再包含“Flag”和“Loop_Count”两个冗余字段,在此基础上同时还修改了 原邻居发现消息的内容,将邻居发现消息中的“Initiator”字段内容修改为简短的MAC地址。
(2)节点B收到A发送的邻居发现,其中B是A的一个邻居节点。B在收下邻居发现 消息之后,对消息进行解析,提取其中的“Objective”和“Initiator”字段。并记录接收消息的接口标识以及接收消息的时间信息。
(3)节点B将“Initiator”字段中的MAC地址映射为本地链路地址。在MAC地址中的第3和第4字节之间插入2字节符fffe,并将MAC地址的第1字节的第7比特位进行翻转, 在修改后的MAC地址头部添加2字节的本地链路地址标识fe80。
(4)节点B使用上述的“Objective”和“Initiator”和接口信息与时间戳,创建关于其 邻居节点A的邻接表条目,并存储,同时B也给自己的邻居组播发送精简的邻居发现消息, 流程同节点A。
节点高效快速接入安全自治域
本发明提出了一种节点高效快速接入安全自治域机制,该机制的主要操作思想是:修改原 先节点入域的流程,将原先的节点入域时,邻居节点按指定周期给新节点恢复入域回复,修改 为邻居节点在收到新节点的入域请求之后,立马给其单播一个入域回复消息,缩短了新节点的 入域时间,加快了节点邻居表的收敛过程。主要操作如下:
(1)新节点在加入域时,会主动给其所有邻居组播一个入域请求消息,执行下一步;
(2)邻居节点收到新节点的入域请求消息,对消息进行解析,获取其中的证书摘要信息, 并验证该摘要是否与自己的证书摘要一致,若一致,则执行下一步,否则执行步骤(5);
(3)邻居节点给新节点单播回复入域回复消息,并记录发送入域回复消息的接口,执行 下一步;
(4)邻居节点继续发送入域请求消息,三次之后,仍未收到入域回复消息,则放弃入域, 执行步骤(7);
(5)新节点收到其邻居发送的入域回复消息,根据该消息创建邻接表条目,执行下一步;
(6)新节点入域之后,邻居节点在当前周期内给(3)中接口之外的所有接口组播邻居 发现消息,更新邻居表,下一周期后,则周期性的组播邻居发现消息,更新邻居表;
(7)结束。
(三)本发明的有益效果
本发明的有益效果主要是:精简了控制信息的字段、减少了控制消息的长度、优化了节点 加入自治域的流程,缩短了节点入域的时间,加快了节点邻接表的收敛过程,从而能够提高 邻居发现过程的效率和邻接表收敛速度、降低控制开销。
本发明的有益效果具体来自以下三个方面:
(1)通过采用“使用精简邻居发现消息的邻接表构建”新机制,将邻居发现消息中的冗 余字段删除,精简了消息的格式,缩短了消息格式,此外将原邻居发现消息中的“Initiator” 字段由128比特的链路本地地址LLA修改为只有48比特的MAC地址,缩短了消息的长度, 从而降低了控制开销。
(2)通过采用“节点高效快速接入安全自治域”新机制,通过优化节点的加入安全自治 域的流程,使得新节点的邻居节点在收到新节点的入域请求消息会立即给其单播入域回复消息, 减少了节点的入域时间,加速了邻接表的收敛速度。
附图说明
附图1自治网络的参考模型图。
附图2唯一本地地址结构示意图。
附图3邻居发现消息格式图。
附图4拓扑建立消息交互图。
附图5邻居发现流程图。
附图6一种精简邻居发现消息格式图。
附图7新节点入域请求消息格式图。
附图8入域请求同意消息格式图。
附图9入域请求同意消息格式图。
附图10新节点入域流程图。
附图11是唯一本地地址ULA地址分配图
具体实施方式
(一)预设
本发明提出的一种高效快收敛的邻居发现方案做了如下预先设置:
(1)网络中所有节点都具有两种IPv6地址,即链路本地所使用的链路本地地址,以及用 于远端传输使用的唯一本地地址(Unique Local Address,ULA)。
(2)节点在上电之后,会自主给所有接口组播消息,用于邻居发现并构建邻接表。
(二)实施方式
本发明提出的高效快收敛的邻居发现方案,具体包含“使用精简邻居发现消息的邻接表构 建”和“节点高效快速接入安全自治域”两种新机制,上述新机制都工作在邻居发现过程中, 现将上述两种机制的实施方式分别描述如下。
使用精简邻居发现消息的邻接表构建
(1)创建一个精简的邻居发现消息,并由节点A组播发送给其所有的邻居节点。精简的 邻居发送消息不再包含“Flag”和“Loop_Count”两个冗余字段,在此基础上同时还修改了 原邻居发现消息的内容,将邻居发现消息中的“Initiator”字段内容修改为简短的MAC地址。
(2)节点B收到A发送的邻居发现,其中B是A的一个邻居节点。B在收下邻居发现 消息之后,对消息进行解析,提取其中的“Objective”和“Initiator”字段。并记录接收消息的接口标识以及接收消息的时间信息。
(3)节点B将“Initiator”字段中的MAC地址映射为本地链路地址。在MAC地址中的第3和第4字节之间插入2字节符fffe,并将MAC地址的第1字节的第7比特位进行翻转, 在修改后的MAC地址头部添加2字节的本地链路地址标识fe80。
(4)节点B使用上述的“Objective”,“Initiator”和接口信息与时间戳,创建关于其 邻居节点A的邻接表条目,并存储,同时B也给自己的邻居组播发送精简的邻居发现消息, 流程同节点A。
节点高效快速接入安全自治域
(1)新节点在加入域时,会主动给其所有邻居组播一个入域请求消息,执行下一步;
(2)邻居节点收到新节点的入域请求消息,对消息进行解析,获取其中的证书摘要信息, 并验证该摘要是否与自己的证书摘要一致,若一致,则执行下一步,否则执行步骤(5);
(3)邻居节点给新节点单播回复入域回复消息,并记录发送入域回复消息的接口,执行 下一步;
(4)邻居节点继续发送入域请求消息,三次之后,仍未收到入域回复消息,则放弃入域, 执行步骤(7);
(5)新节点收到其邻居发送的入域回复消息,根据该消息创建邻接表条目,执行下一步;
(6)新节点入域之后,邻居节点在当前周期内给(3)中接口之外的所有接口组播邻居 发现消息,更新邻居表,下一周期后,则周期性的组播邻居发现消息,更新邻居表;
(7)结束。
Claims (1)
1.一种高效快收敛的邻居发现方法,其特征是:该方法由“使用精简邻居发现消息的邻接表构建”、“节点高效快速接入安全自治域”两种操作组成,具体如下:
S1:所述的“使用精简邻居发现消息的邻接表构建”新机制针对在邻居发现过程中邻居发现消息存在冗余字段和消息内容过长的问题,该机制具体实现过程如下:
S11:创建一个精简的邻居发现消息,并由节点A组播发送给其所有的邻居节点。精简的邻居发送消息不再包含“Flag”和“Loop_Count”两个冗余字段,在此基础上同时还修改了原邻居发现消息的内容,将邻居发现消息中的“Initiator”字段内容修改为简短的MAC地址。
S12:节点B收到A发送的邻居发现,其中B是A的一个邻居节点。B在收下邻居发现消息之后,对消息进行解析,提取其中的“Objective”和“Initiator”字段。并记录接收消息的接口标识以及接收消息的时间信息。
S13:节点B将“Initiator”字段中的MAC地址映射为本地链路地址。在MAC地址中的第3和第4字节之间插入2字节符fffe,并将MAC地址的第1字节的第7比特位进行翻转,在修改后的MAC地址头部添加2字节的本地链路地址标识fe80。
S14:节点B使用上述的“Objective”Initiator和接口信息与时间戳,创建关于其邻居节点A的邻接表条目,并存储,同时B也给自己的邻居组播发送精简的邻居发现消息,流程同节点A。
S2:所述的“节点高效快速接入安全自治域”新机制用于使得新节点介入安全自治域时,可以快速地接入安全自治域,提高邻接表的收敛速度,其具体操作过程如下:
S21:新节点在加入域时,会主动给其所有邻居组播一个节点入域请求消息,执行下一步;
S22:邻居节点收到新节点的入域请求消息,对消息进行解析,获取其中的证书摘要信息,
并验证该摘要是否与自己的证书摘要一致,若一致,则执行下一步,否则执行S25
S23:邻居节点给新节点单播回复入域请求同意消息,并记录发送入域回复消息的接口,
执行下一步;
S24:新节点继续发送入域请求消息,三次之后,仍未收到入域回复消息,则放弃入域,
执行S27;
S25:新节点收到其邻居发送的入域请求同意消息,根据该消息创建邻接表条目,执行下一步;
S26:新节点入域之后,邻居节点在当前周期内给(3)中接口之外的所有接口组播邻居发现消息,更新邻居表,下一周期后,则周期性的组播邻居发现消息,更新邻居表.
S27:结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910043423.4A CN110380963B (zh) | 2019-01-17 | 2019-01-17 | 一种高效快收敛的邻居发现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910043423.4A CN110380963B (zh) | 2019-01-17 | 2019-01-17 | 一种高效快收敛的邻居发现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110380963A true CN110380963A (zh) | 2019-10-25 |
CN110380963B CN110380963B (zh) | 2021-07-06 |
Family
ID=68248413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910043423.4A Active CN110380963B (zh) | 2019-01-17 | 2019-01-17 | 一种高效快收敛的邻居发现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110380963B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111147382A (zh) * | 2019-12-31 | 2020-05-12 | 杭州迪普科技股份有限公司 | 报文转发方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050265261A1 (en) * | 2004-05-25 | 2005-12-01 | Droms Ralph E | Neighbor discovery in cable networks |
CN101330405A (zh) * | 2008-07-02 | 2008-12-24 | 北京亿阳信通软件研究院有限公司 | 网络拓扑发现方法及相关设备 |
US20090052347A1 (en) * | 2007-08-22 | 2009-02-26 | Samsung Electronics Co. Ltd. | Neighbor discovery method and apparatus for mobile node in heterogeneous network environment |
CN106209897A (zh) * | 2016-07-28 | 2016-12-07 | 重庆邮电大学 | 一种基于代理的软件定义网络分布式多粒度控制器安全通信方法 |
CN107634842A (zh) * | 2016-07-18 | 2018-01-26 | 阿里巴巴集团控股有限公司 | 网络拓扑发现方法及装置 |
-
2019
- 2019-01-17 CN CN201910043423.4A patent/CN110380963B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050265261A1 (en) * | 2004-05-25 | 2005-12-01 | Droms Ralph E | Neighbor discovery in cable networks |
US20090052347A1 (en) * | 2007-08-22 | 2009-02-26 | Samsung Electronics Co. Ltd. | Neighbor discovery method and apparatus for mobile node in heterogeneous network environment |
CN101330405A (zh) * | 2008-07-02 | 2008-12-24 | 北京亿阳信通软件研究院有限公司 | 网络拓扑发现方法及相关设备 |
CN107634842A (zh) * | 2016-07-18 | 2018-01-26 | 阿里巴巴集团控股有限公司 | 网络拓扑发现方法及装置 |
CN106209897A (zh) * | 2016-07-28 | 2016-12-07 | 重庆邮电大学 | 一种基于代理的软件定义网络分布式多粒度控制器安全通信方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111147382A (zh) * | 2019-12-31 | 2020-05-12 | 杭州迪普科技股份有限公司 | 报文转发方法和装置 |
CN111147382B (zh) * | 2019-12-31 | 2021-09-21 | 杭州迪普科技股份有限公司 | 报文转发方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110380963B (zh) | 2021-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Narra et al. | Destination-sequenced distance vector (DSDV) routing protocol implementation in ns-3. | |
CN107438016A (zh) | 网络管理方法、设备、系统以及存储介质 | |
CN103166849B (zh) | IPSec VPN互联组网路由收敛的方法及路由设备 | |
CN104702479A (zh) | Sdn网络中建立隧道的方法和装置 | |
CN102857377B (zh) | 一种列车网络在线拓扑自动生成方法 | |
CN103312546A (zh) | 一种自动配置管理ZigBee网络的方法 | |
US11909545B2 (en) | Localized multicast in a low power and lossy network based on rank-based distance | |
CN104754688A (zh) | 用于基于纠缠态的无线Mesh量子通信网络的路由方法 | |
CN104023006A (zh) | 一种基于应用层中继的多径传输系统及方法 | |
CN101299707A (zh) | 一种路由扩散方法 | |
CN101102283A (zh) | 一种在无线接入点上优化未知单播转发的方法及设备 | |
CN103108374A (zh) | 一种混合结构矿井应急救援无线网状网的节能路由算法 | |
CN104995882A (zh) | 报文处理方法及装置 | |
CN100550857C (zh) | 实现本地特定业务二层互通的方法、系统和接入设备 | |
CN107579758A (zh) | 一种基于g3‑plc的双向交互通信方法 | |
WO2015131739A1 (zh) | 数据交互方法、基带处理单元、射频拉远单元及中继单元 | |
CN101795223B (zh) | 组播安全控制方法、系统及传输节点 | |
CN110493733A (zh) | 一种基于蓝牙低功耗移动设备的Mesh网络系统 | |
CN108601055B (zh) | 在lte移动回传网络中部署l3vpn的方法及系统 | |
CN110380963A (zh) | 一种高效快收敛的邻居发现方案 | |
Jin et al. | Expected transmission energy route metric for wireless mesh senor networks | |
CN101997724A (zh) | 一种更新组播转发条目的方法及装置 | |
CN110740455B (zh) | 基于wisun通讯技术的组网方法、网络和传输方法 | |
CN116600330A (zh) | 一种基于netconf协议的hub分级管理拓扑的方法和装置 | |
CN101222410A (zh) | 一种邻域-资源发现的方法和装置以及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |