一种基于IPv6的工业无线网络多节点安全入网方法与流程

文档序号:16523472发布日期:2019-01-05 10:09阅读:264来源:国知局
一种基于IPv6的工业无线网络多节点安全入网方法与流程

本发明属于无线传感技术领域,涉及一种基于ipv6的工业无线网络多节点安全入网方法。



背景技术:

本发明针对采用ieee802.15.4e同时基于ipv6的工业无线网络,提出一种多节点入网方案。ieee802.15.4e底层标准,提出了基于tsch(timeslottedchannelhopping)的工作模式,tsch模式采用了时隙帧(slotframe)结构替代传统ieee802.15.4的超帧(superframe)结构,能够最大程度的满足工业应用确定性和可靠性的需求。基于ipv6的工业无线网络能够实现与ip网络无缝连接,实现异构网络的有效互联。

由于工业网络大规模场景对延迟、功耗、可靠性及可拓展性等性能均具有严格的要求,节点的快速入网是需要解决的问题,特别是多节点同时入网情况下,如何有效保证入网过程的可靠性调度,是解决网络可靠性与通信延迟的首要前提。同时,工业无线网络引入ipv6以后,随之引入了ip网络的攻击,如果进行有效防御也是当前面临的主要问题。

在基于ipv6的工业无线网络中,新节点通过监听增强信标帧(eb,enhancedbeacon)加入网络。eb由入网代理节点发送。一旦eb被恶意节点伪造,随着异常设备的入侵,网络数据将被窃听甚至篡改。

因此如何保证节点安全快速入网是基于ipv6的工业无线网络正常运行和大规模应用的基础和必要保障。

另外,为保证入网过程的安全:首先,需要确保网络的合法性,实现设备对网络的认证;其次,需要确保节点入网过程的会话是安全的。因此建立安全的会话通道也是亟需解决的问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于ipv6的工业无线网络多节点安全入网方法,能够实现:1)多节点短时间快速入网;2)入网过程的可靠性调度;3)网络验证及安全会话的通道建立

为达到上述目的,本发明提供如下技术方案:

一种基于ipv6的工业无线网络多节点安全入网方法,所述基于ipv6的工业无线网络包括多个mesh子网、子网骨干路由器、路由、pce(pathcomputeelement,路径计算单元)、nme(networkmanagemententity,网络管理实体)和互联网;

其中,路由是连接子网骨干网和外部网络的设备;

子网骨干网是传统的ipv6网络;

mesh子网由多个lln网络组成,采用mesh型架构;mesh子网将采集到的数据利用子网骨干路由器传送到子网骨干网进而通过路由和外部网络连接到一起;lln即低功耗有损网络,ietfroll工作组为其指定路由协议,即rpl协议;

子网骨干路由器负责rpl路由表的建立;子网骨干路由器在骨干网上相互同步,以确保形成ipv6网络的多个lln子网保持紧密同步;

nme负责远程监控和时间表管理,负责集中管理与计算设备的时间表和其他设备资源,并与pce交互,以优化受限设备的交互次数和负载;

pce是运行在网络上的软件,负责以高效和非冲突的方式协调单个链路上的通信;

入网代理是与入网注册协调器直接通信的节点;

待入网节点指完成配置等待入网的节点,其入网请求由入网代理转发给入网注册协调器;

基于ipv6的工业无线网络基于ieee802.15.4etsch接入模式进行通信,ieee802.15.4etsch模式将信道与时隙相结合形成cell块,利用pce进行集中计算通信或网内采用分布式管理通信;

在子网中由子网骨干路由器担任入网注册协调器,入网代理是子网节点,入网代理直接与入网注册协调器进行通信;待入网节点只需要与入网代理进行交互,入网代理作为无状态中继节点将需要转发的入网请求信息转发给入网注册协调器,以让待入网节点入网;

设定同一个子网下的入网代理不超过16个,保证每个入网代理都有信道进行通信;若网络中的16个入网代理不能够满足待入网节点的入网需求,则通过增加入网注册协调器的数量来缓解入网拥塞;

所述多节点安全入网方法包括以下步骤:

s1:密钥预配置;

s2:入网注册协调器广播修改后的增强信标帧eb;

s3:邻居发现;

s4:入网请求和入网响应;

s5:安全通信。

进一步,所述步骤s2具体为:

根据入网时隙需求重新设计eb,在eb负载中创建ie(informationelement,信息元素)字段;

改进后的eb格式为:

在ie负载中装载:

1)时间同步ie:装载时间同步信息,包括5字节的asn信息,以及1字节的入网优先级信息;

2)入网时隙及链路ie:包含入网代理广播的一个或多个时隙帧及其相应链路,其中包括从待入网节点发送给入网代理的入网请求消息的的共享时隙及链路和入网响应消息转发给待入网节点的时隙及链路信息,以便待入网节点同步到网络;其中前1个字节指定入网时隙帧;

监听改进后的eb的过程为:

改进后的eb在入网注册协调器中生成分发给入网代理,由入网代理在时隙帧的前四个时隙广播改进后的eb,待入网节点在信道上监听到入网代理广播的改进后的eb之后,解析改进后的eb中的信息;

待入网节点可能接收到多个子网下的入网代理广播的改进后的eb,不同的子网下的入网代理广播的网络id不同,解析改进后的eb之后会得到多个网络标识符,待入网节点需将自身由网络搭建者装载的网络标识符与解析得到的多个网络标识符相匹配;

完成匹配之后,待入网节点选定将要加入的网络,而此时网络中存在多个入网代理,待入网节点应根据信号强度的大小,选择信号强度最好的入网代理进行时间同步,以避免信号强度太弱而不能成功发送入网请求;当待入网节点选定入网代理时,进入低功耗模式,只在规定的共享时隙中唤醒并发送信息;

在待入网节点入网过程中,网络认证和入网代理选择在此步骤中进行,具体操作如下:

1)待入网节点根据改进后的eb中装载的参数对网络进行认证和加入;节点通过验证接收到改进后的eb中的网络id,判断节点加入的网络是否为可信网络;其中网络标识符为16字节长度的网络id;网络id由网络dodagid的sha256散列构成,结果是一个32字节的散列,取最右边的16个字节用作网络id;

2)根据节点网络信号强度和优先级来选择入网代理入网;待入网节点完成匹配网络标识符之后,选择信号强度在其接受阈值范围内的入网代理进行时间同步;在此阶段,待入网节点监听网络广播的改进后的eb,通过改进后的eb中的信息选择需要交互的入网代理;由改进后的eb装载的入网优先级参数与节点自身预配置的入网参数进行运算得出,取低8位为最终的入网优先级,入网优先级为一个8位字段,从0x00到0xff的数字;将相同节点根据自身在不同入网代理中的优先级对入网代理进行选择,较低的数字被认为有较高的优先级。

进一步,所述步骤s4具体为:

s401:时隙安排;

(1)入网注册协调器在每个时隙帧的前4个时隙广播改进后的eb,待入网节点通过解析接收的改进后的eb中的信息,匹配网络标识符成功后,选择所匹配成功的子网中信号强度最好的入网代理进行交互,获取该入网代理广播的改进后的eb中封装的入网优先级参数信息,计算入网优先级值;

(2)待入网节点根据入网优先级分别将入网请求发送给入网代理;

(3)入网代理接收入网请求数据包后,解析数据报文报头部分,得到节点id、节点优先级等信息,根据节点优先级将不同优先级的数据存放在不同的堆栈中,如果两个及以上的待入网节点的优先级相同,则入网代理根据节点信号强度的大小,选择信号强度更好的节点加入网络;

(4)当待入网节点超过16个时,入网代理会处于繁忙状态,从而导致网络拥塞,为削弱网络拥塞,降低网络时延,在入网代理处,不立即转发入网请求,而是等待x个时隙后,将相同堆栈中的入网请求/响应进行聚合,减少入网代理转发次数,从而减少入网代理向入网注册协调器/待入网节点转发入网请求/响应所需的时隙数量,每次聚合的请求数目最大为xmax;

其中,当待入网节点设备数量增多时,在2.4ghz频率下的16个信道不能满足待入网节点设备及信道偏移一一对应时,此时可以将此情形变化为在同一个入网代理下有多个节点入网的问题,每个入网代理优先选择入网优先级最高的节点入网,当同一个入网代理下,有多个相同入网优先级的待入网节点时,按照第4点中的设定,选择信号强度更好的节点加入网络;

(5)每个待入网节点都有发送入网请求的机会,若第一次请求传输失败,则在下一个时隙帧开始的时候,重新入网;

(6)若代理节点转发失败,则在共享时隙中竞争发送报文;

(7)入网注册协调器接收此聚合的请求数据包,立即解析该数据包,对申请入网的节点进行验证,若验证通过则反馈入网成功响应,若验证失败,则反馈入网失败响应,并将验证失败的节点列入拒绝来往名单中;

(8)若入网注册协调器发送入网响应失败,则在立即在下一个时隙中发送入网响应;

s402:基于数据聚合的报文格式,即请求和响应的报文格式

入网请求和入网响应报文依照coap报文格式;

在入网请求阶段,入网代理在接收到待入网节点发送的入网请求之后,不立即转发数据,而是在接收多个请求之后,将相同优先级的请求聚合封装在一个数据帧中,再将此数据帧中转发给入网注册协调器;

入网注册协调器发送的入网响应根据入网优先级的大小顺序将其封装在一个数据帧中发送给入网代理;

s403:建立安全会话通道,即入网请求及入网响应的加密及验证

入网请求和入网响应消息是coap消息;

在入网过程中,待入网节点和入网注册协调器用密钥衍生算法生成密钥,利用aes算法对coap消息的message字段加密从而在coap客户端和coap服务器之间实现端到端保护;

待入网节点将入网请求发送给入网代理,入网代理收到消息之后,解密并验证入网请求的头部信息,不解密负载,之后构建新的头部信息,根据入网优先级将请求转发给入网注册协调器;

入网注册协调器收到入网代理发送的聚合请求之后,首先解析封装数据帧的头部,得到封装的入网请求的数量,再一一解密每个请求的负载;根据节点的id进行验证节点是否可信,若验证成功则生成入网响应;

入网响应包含入网优先级、一个或多个链路层密钥由入网注册协调器分配给待入网节点的ieee802.15.4短地址和可选的入网注册协调器的ipv6地址。

进一步,在所述步骤s401中,优先级规则如下:

入网代理优先转发高优先级的请求/响应,再转发次优先级的请求/响应;同一个网络中可能存在多个入网代理时,先完成数据接收以及聚合的代理节点优先转发请求/响应;

先完成数据接收的入网代理优先转发高优先级请求/响应;若此代理节点中高优先级请求/响应全部转发,而其他代理节点还没有完成请求/响应接收,则转发此代理节点中次优先级请求/响应;在此代理节点转发次优先级请求/响应过程中,其他代理节点完成了请求/响应接收,则优先其他代理节点转发高优先级请求/响应,停止此代理节点转发次优先级请求/响应。

本发明的有益效果在于:

(1)本发明通过改进增强信标帧的负载,使增强信标帧中携带该入网方案的信息并实现对待加入网络的验证;

(2)本发明根据改进后的eb安排的入网方案,提供多个节点在短时间内加入单个mesh子网过程的可靠性时隙分配方案;

(3)针对多个网络节点在较短时间窗口同时入网时,入网安全请求易引起冲突和碰撞等问题,提出了一种基于数据聚合的安全入网方法,入网代理将多个入网请求封装在一个安全请求数据帧中,有效减少网络中入网报文的开销;

(4)基于预共享密钥,对coap报文消息字段加密,实现安全会话通道建立。

附图说明

为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:

图1为基于ipv6的工业无线网络架构;

图2为多节点安全入网流程;

图3为节点入网子网框架;

图4为改进后的eb报文格式;

图5为时间同步ie格式;

图6为入网时隙及链路ie格式;

图7为入网请求聚合;

图8为入网响应聚合;

图9为多节点入网调度表。

具体实施方式

下面将结合附图,对本发明的优选实施例进行详细的描述。

本发明针对的基于ipv6的工业无线网络架构如图1所示。

该网络由多个mesh子网、子网骨干路由器、路由、pce(pathcomputeelement,路径计算单元)、nme(networkmanagemententity,网络管理实体)及互联网组成。

本发明设计的多节点安全入网流程如图2所示。

实施例如图3所示,其中被编号为1-7的节点为待入网节点,而入网代理只有a和b两个,2个入网代理要完成7个待入网节点的入网操作,则表示在同一个入网代理上会在单位时隙帧内接收到多个节点的入网请求。

实施例的节点安全入网具体步骤如下:

1.密钥及入网参数预配置

在节点1-7中分别预配置唯一的128b的psk和入网参数,入网注册协调器中存储节点1-7的psk。

节点1-7以入网注册协调器位置为原点,节点的入网参数为每个节点的物理位置二维坐标。入网参数长度为1字节,高位表示纵坐标,低位表示横坐标。

节点1-7的id为0x021234fffe00abc9-0x021234fffe00abcf,入网代理a和b的id为0x0000000000000001和0x0000000000000002,入网注册协调器id为0x1000000000000000。

用户为节点预配置共享密钥;节点使用预配置的共享密钥和其他参数衍生更加不易破解的密钥,为aes安全加密算法提供密钥实现对入网过程中交互的报文进行加解密。

2.协调器广播修改后的增强信标帧eb

本标准对ieee802.15.4e规定的eb进行了如下修改。

本发明根据入网时隙方案的需求重新设计eb,在eb负载中创建了ie(informationelement,信息元素)字段。

改进后的eb格式如图4所示。

在ie负载中装载:

1)时间同步ie:装载时间同步信息,包括5字节的asn信息,以及1字节的入网优先级信息,如图5所示。

2)入网时隙及链路ie:包含入网代理广播的一个或多个时隙帧及其相应链路,其中包括从待入网节点发送给入网代理的入网请求消息的的共享时隙及链路和入网响应消息转发给待入网节点的时隙及链路信息,以便于待入网节点同步到网络。其中前1个字节指定入网时隙帧,该时隙帧的具体参数和入网过程用到的链路信息具体如图6。

在本实施例中eb负载中新增ie,ie字段为1字节的入网优先级参数和9字节的入网时隙及链路信息。

1)网络验证

节点1-7通过验证接收到改进后的eb中的网络id,判断节点加入的网络是否为可信网络。其中网络标识符为16字节长度。网络id由网络dodagid的sha256散列构成,结果是一个32字节的散列,取最右边的16个字节用作网络id。

改进后的eb在入网注册协调器中生成并分发给网络中所有的入网代理,本实施例中的两个入网代理a和b在时隙帧的前四个时隙广播改进后的eb,节点1-7在信道上监听到入网代理广播的改进后的eb之后,解析改进后的eb中的信息。

节点1-7可能接收到多个子网下的入网代理广播的改进后的eb,不同的子网下的入网代理广播的网络id不同,解析改进后的eb之后可能会得到多个网络标识符,所以节点1-7需将自身由网络搭建者装载的网络标识符与解析得到的多个网络标识符相匹配。

2)计算入网优先级

子网络内每个入网代理广播的改进后的eb中的入网优先级参数不同,每个入网代理广播的改进后的eb信息中的入网优先级参数为其物理坐标,长度为1字节。

由改进后的eb装载的1字节的入网优先级参数与节点自身预配置的入网参数的高位和低位进行运算(欧式距离或其他算法,根据实际需求选定)得出最终的入网优先级,入网优先级参数为一个8位字段,从0x00到0xff的数字。将相同节点根据自身在不同入网代理中的优先级对入网代理进行选择,较低的数字被认为有较高的优先级。

3)入网代理选择:

待入网节点选定了将要加入的子网络,而此时子网络中存在2个入网代理。

节点1-7根据这两个入网代理的信号强度大小,选择信号强度在其接受阈值范围内的入网代理进行时间同步,以免因为信号强度太弱而不能成功发送入网请求。

另外本实施例中,入网代理a中的优先级为由高到低为节点1>2>3入网代理b的入网优先级由高到低为节点4>5>6>7。

在此阶段,节点1-7监听网络广播的改进后的eb,通过改进后的eb中的asn信息与选择的入网代理达成同步。

4)时隙及链路信息

包含入网代理广播的多个时隙帧及其相应链路,其中包括从节点1-7发送给入网代理的入网请求消息的的共享时隙及链路和入网响应消息转发给待入网节点的时隙及链路信息。完成之后进入低功耗模式,只在规定的共享时隙中唤醒并发送信息。

3.邻居发现

在此阶段,节点1-7与入网代理进行通信,入网代理登记待入网节点的信息形成rpl邻居表。待入网节点与入网代理之间进行单向往返邻居请求rs/邻居广播交换ra,入网代理登记待入网节点的信息形成rpl邻居表。在加入过程中,待入网节点形成基于eui-64的链路本地地址,并使用链路本地ipv6地址进行与入网代理的所有后续通信。

4.入网请求和响应

此步骤中本发明基于数据聚合的方法对入网请求及响应报文进行改进,并在本发明设计的调度表的安排下对改进后的入网请求及响应报文的时隙进行分配。另外本发明建立安全会话通道以保证入网请求及响应的安全交互。

1)本发明在此步骤的具体设计如下:时隙安排(调度表生成步骤)

接下来将依据多节点入网流程给出多个待入网节点入网的时隙分配方案。

1.入网注册协调器在每个时隙帧的前4个时隙广播改进后的eb,待入网节点通过解析接收的改进后的eb中的信息,匹配网络标识符成功后,选择所匹配成功的子网中信号强度最好的入网代理进行交互,获取该入网代理广播的改进后的eb中封装的入网优先级参数信息,计算入网优先级值;

2.待入网节点根据入网优先级分别将入网请求发送给入网代理;入网代理接收入网请求数据包后,解析数据报文报头部分,得到节点id、节点优先级等信息,根据节点优先级将不同优先级的数据存放在不同的堆栈中,节点1-3在入网代理a的信号强度范围内,且其优先级为由高到低为节点1>2>3。节点4-7在入网代理b的的信号强度范围内,且入网优先级由高到低为节点4>5>6>7。

3.在入网代理处,不立即转发入网请求,而是等待x(聚合数量可由网络搭建者自主设定)个时隙后,将相同堆栈中的入网请求/响应进行聚合,减少入网代理转发次数,从而减少入网代理向入网注册协调器/待入网节点转发入网请求/响应所需的时隙数量。其中xa=3,xb=2。

4.每个待入网节点都有发送入网请求的机会,若第一次请求传输失败,则在下一个时隙帧开始的时候,重新入网;

5.若代理节点转发失败,则在共享时隙中竞争发送报文;

6.入网注册协调器接收此聚合的请求数据包,立即解析该数据包,对申请入网的节点进行验证,若验证通过则反馈入网成功响应,若验证失败,则反馈入网失败响应,并将验证失败的节点列入拒绝来往名单中;

7.若入网注册协调器发送入网响应失败,则在立即在下一个时隙中发送入网响应。

其中优先级规则如下:

入网代理优先转发高优先级的请求/响应,再转发次优先级的请求/响应;同一个网络中可能存在多个入网代理时,先完成数据接收以及聚合的代理节点优先转发请求/响应;

先完成数据接收的入网代理优先转发高优先级请求/响应;若此代理节点中高优先级请求/响应全部转发,而其他代理节点还没有完成请求/响应接收,则转发此代理节点中次优先级请求/响应;在此代理节点转发次优先级请求/响应过程中,其他代理节点完成了请求/响应接收,则优先其他代理节点转发高优先级请求/响应,停止此代理节点转发次优先级请求/响应;

2)基于数据聚合的报文格式(请求和响应的报文格式)

入网请求和入网响应报文依照coap报文格式。

在入网请求阶段,入网代理在接收到待入网节点发送的入网请求之后,不立即转发数据,而是在接收多个请求之后,将相同优先级的请求聚合封装在一个数据帧中,如图7所示,再将此数据帧中转发给入网注册协调器。

如图8所示,入网注册协调器发送的入网响应根据入网优先级的大小顺序将其封装在一个数据帧中发送给入网代理。

设定入网代理a在接收完成3个入网请求之后,将这3个入网请求封装在一个数据帧中转发给入网注册协调器(此时,封装的请求数量是可定的,只要合成的数据帧能够在一个时隙中发送并解析完成);

入网代理b接收完2个入网请求之后,将两个入网请求封装在一个数据帧中转发给网络协调器;

入网注册协调器同样以数据封装的方式反馈入网响应。

3)建立安全会话通道(入网请求及入网响应的加密及验证)

入网请求和入网响应消息是coap消息。

在入网过程中,待入网节点和入网注册协调器用密钥衍生算法生成密钥,利用aes算法对coap消息的message字段加密从而在coap客户端和coap服务器之间实现端到端保护。

待入网节点将入网请求发送给入网代理,入网代理收到消息之后,解密并验证入网请求的头部信息,不解密负载,之后构建新的头部信息,根据入网优先级将请求转发给入网注册协调器。

入网注册协调器收到入网代理发送的聚合请求之后,首先解析封装数据帧的头部,得到封装的入网请求的数量,再一一解密每个请求的负载。根据节点的id进行验证节点是否可信,若验证成功则生成入网响应。

入网响应包含入网优先级、一个或多个链路层密钥由入网注册协调器分配给待入网节点的ieee802.15.4短地址和可选的入网注册协调器的ipv6地址。

最终得到入网调度表,如图9所示。

5.安全通信

在此过程中,入网中的节点根据rpl规则建立rpl链路,每个节点存储自己的下一跳信息。此后进入安全通信操作,已入网节点根据装载周期性向子网路由器发送数据。

最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1