一种泛在传感器网络及其构建方法

文档序号:7985701阅读:529来源:国知局
一种泛在传感器网络及其构建方法
【专利摘要】本发明提出了一种包含多个传感器节点的泛在传感器网络,包括:用于将所述泛在传感器网络与通信网络相连接的传感器网络网关;至少一个由多个传感器节点和一个控制节点组成的传感器组;其中,所述传感器组构成环状拓扑,所述传感器组中的每个传感器节点上存有在其之前/之后的传感器节点的信息,所述控制节点上存有所述传感器组中的每个传感器节点的信息,所述传感器网络网关上存有所述泛在传感器网络中所有传感器节点和控制节点的信息。
【专利说明】一种泛在传感器网络及其构建方法
【技术领域】
[0001]本发明涉及传感器网络【技术领域】,尤其涉及泛在传感器网络。
【背景技术】
[0002]近年来,传感器网络技术广泛的应用于工业和民用领域,尤其是在环境监测和工业自动化控制等方面。一般的,传感器网络中包含多个小型自动设备,这些设备被称为传感器节点。基于日益复杂的任务和成本的增加,最新的趋势是将多个孤立的传感器节点通过通信网络尤其是无线通信网络进行连接,以突破传统传感器网络基于地理位置构建的限制,这一技术被称为泛在传感器网络。
[0003]为了实现泛在传感器网络,必须要解决如何对传感器进行分组和如何实现安全的传感器组内通信的问题。这是因为:
[0004]第一,有必要将实现某一相同任务的传感器节点组织成一个分组,从而与其他的传感器节点相隔离以避免组内信息的不必要的扩散;
[0005]第二,网络管理者需要给予分组的层级进行某些操作,例如对某个分组内的传感器节点进行统一的配置更改或者要求采集同样的信息;
[0006]第三,某些任务需要组内的传感器节点通过协作的方式获得信息,因此必须确保在组内的通信是安全的。
[0007]现有技术中已经进行了一些基于分组安全通信的研究。典型的例如:
[0008]局部加密和认证协议(LocalizedEncryption and AuthenticationProtoco简称LEAP), LEAP支持在每个传感器节点上设置4种密钥以实现不同层级的通信加密,然而在更新密钥操作时,LEAP限定了网络的路由协议必须以树状结构组织才可以实现,因此大大限制了其实际应用的场合。
[0009]逻辑密钥层次方案(Logical Key Hierarchy简称LKH),LKH提供了一种基于密钥树型层次结构的集中化分组密钥更新方案,然而这种密钥更新操作的复杂度近似于分组规模的对数,在分组规模较大的情况下不再实用。
[0010]因此,现有的基于树状结构进行分组的方案无法有效的解决组内安全通信的问题,尤其是在进行密钥更新,或者实现灵活构建分组等方面不能满足实际应用的需要。

【发明内容】

[0011]为此,需要一种不同于传统树状结构的分组方式的泛在传感器网络构建方式,这种方式既要确保组内通信的安全型,也要满足分组的灵活性,同时还要保证密钥更新操作的方便快捷。
[0012]为解决现有技术中的上述问题,本发明提出一种新的泛在传感器网络及其构建方法,使用基于环状拓扑的分组方案,借助组内的控制节点和网络中的网关提供两个层级的控制,从而实现一种灵活快捷的组内密钥更新操作,同时满足安全通信和灵活构建的需求。
[0013]首先对以下名称进行定义:[0014]传感器节点(Sensor Node简称SN):可实现传感功能的最小物理实体单元,不同的SN通过传感器节点标识(Sensor Identifier简称SID)加以区分;
[0015]传感器组(Group):有一个或多个SN和一个控制节点组成的逻辑集合,用于实现某一个逻辑功能,因此在物理上无需处于相近的位置,而且不同的传感器组彼此间可以共享部分SN,不同的传感器组通过传感器组标识(Group Identifier简称GID)加以区分;
[0016]控制节点(Group Controller简称GC):负责传感器组组内通信安全的逻辑功能实体,一个GC可以同时控制不同的传感器组,通常由某个SN担任,也可以由传感器网络网关担任;
[0017]传感器网络网关(Sensor Network Gateway简称SGW):用于将某一传感器网络接入通信网络的逻辑功能实体,同时也负责对网络内所有传感器组的通信安全进行集中控制,通常位于通信网络的接入设备中,例如可以是移动通信网络的基站设备或者是无线局域网中的接入点设备。
[0018]具体地,根据本发明的第一方面,提供了一种包含多个传感器节点的泛在传感器网络,包括:用于将所述泛在传感器网络与通信网络相连接的传感器网络网关;至少一个由多个传感器节点和一个控制节点组成的传感器组;其中,所述传感器组构成环状拓扑,所述传感器组中的每个传感器节点上存有在其之前/之后的传感器节点的信息,所述控制节点上存有所述传感器组中的每个传感器节点的信息,所述传感器网络网关上存有所述泛在传感器网络中所有传感器节点和控制节点的信息。
[0019]优选地,每个所述传感器组都拥有各自独立的分组密钥,每个所述传感器组中的所有节点都使用该传感器组的所述分组密钥进行信息加密。
[0020]更优选地,当每个所述传感器组中发生传感器节点的加入、传感器节点的离开、或者控制节点的离开时,更新所述分组密钥。
[0021]更优选地,每个所述传感器组中任意两个节点之间共享一组对称密钥。
[0022]根据本发明的第二方面,提供了一种在上述的泛在传感器网络中更新所述分组密钥的方法,包括:控制节点向位于其之后的传感器节点发出分组密钥更新消息,所述更新消息包括新的分组密钥、传感器组的标识和序号;所述传感器接收所述更新消息,更新所述分组密钥;所述传感器向位于其之后的传感器节点转发所述更新消息。
[0023]根据本发明的第三方面,提供了一种在上述的泛在传感器网络中更新所述分组密钥的方法,包括:控制节点向位于其之前/之后的传感器节点发出分组密钥更新消息,所述更新消息包括新的分组密钥、传感器组的标识和序号;所述传感器接收所述更新消息,更新所述分组密钥;所述传感器向位于其之前/之后的传感器节点转发所述更新消息;当所述传感器在接收到所述更新消息后的第一预定时间内又收到相同内容的更新消息时,不再更新所述分组密钥和转发所述更新消息。
[0024]根据本发明的第四方面,提供了一种在上述的泛在传感器网络中创建传感器组的方法,包括:传感器节点向传感器网络网关发出加入传感器组请求消息;所述传感器网络网关接收所述加入传感器组请求消息,验证所述传感器节点身份后,向所述传感器节点发送创建传感器组请求消息;所述传感器节点接收所述创建传感器组请求消息后,向所述传感器网络网关发送创建传感器组确认消息,所述创建传感器组确认消息中包括用于表示该传感器节点是否可以作为该传感器组的控制节点的信息;当该传感器节点可以作为该传感器组的控制节点时,该传感器节点与所述传感器网络网关协商该传感器组的分组密钥和序号。
[0025]根据本发明的第五方面,提供了一种在上述的泛在传感器网络中将传感器节点加入传感器组的方法,包括:待加入的传感器节点向传感器网络网关发出加入传感器组请求消息;所述传感器网络网关接收所述加入传感器组请求消息,验证该待加入的传感器节点身份后,向该传感器组的控制节点发送第一绑定请求消息;所述控制节点接收所述第一绑定请求消息后,执行更新该传感器组的拓扑结构的第一绑定操作,然后向所述传感器网络网关发送第一绑定确认消息,所述第一绑定确认消息中包括用于表示所述第一绑定操作是否成功的信息;所述传感器网络网关接收所述第一绑定确认消息后,向该待加入的传感器节点发送加入传感器组确认消息,所述加入传感器组确认消息中包括用于表示加入该传感器组是否成功的信息;当所述第一绑定操作成功时,所述控制节点向该传感器组中最后一个传感器节点发出第三绑定请求消息,向该待加入的传感器节点发出第二绑定请求消息;所述最后一个传感器节点接收所述第三绑定请求消息后,执行更新在它之后的节点信息的第三绑定操作,然后向所述控制节点发送第三绑定确认消息,所述第三绑定确认消息中包括用于表示所述第三绑定操作是否成功的信息;该待加入的传感器节点接收所述第二绑定请求消息后,执行更新该待加入的传感器节点之前/之后的节点信息的第二绑定操作,然后向所述控制节点发送第二绑定确认消息,所述第二绑定确认消息中包括用于表示所述第二绑定操作是否成功的信息;当所述第二绑定操作和第三绑定操作都成功时,所述控制节点生成新的分组密钥,然后将包括所述新的分组密钥和该传感器组的新的拓扑结构在内的传感器组信息发送至所述传感器网络网关;所述控制节点使用上述更新分组密钥的方法进行该传感器组的分组密钥更新。
[0026]根据本发明的第六方面,提供了一种在上述的泛在传感器网络中传感器节点离开传感器组的方法,包括:待离开的传感器节点向该传感器组的控制节点发出离开传感器组请求消息;所述控制节点接收所述离开传感器组请求消息后,执行更新该传感器组的拓扑结构的更新操作,然后向该待离开的传感器节点发送离开传感器组确认消息,所述离开传感器组确认消息中包括用于表示所述更新操作是否成功的信息;当所述更新操作成功时,所述控制节点向该传感器组中位于该待离开的传感器节点之前的节点发出第四绑定请求消息,向该传感器组中位于该待离开的传感器节点之后的节点发出第五绑定请求消息;所述之前的节点接收所述第四绑定请求消息后,执行更新在它之前/之后的节点信息的第四绑定操作,然后向所述控制节点发送第四绑定确认消息,所述第四绑定确认消息中包括用于表示所述第四绑定操作是否成功的信息;所述之后的节点接收所述第五绑定请求消息后,执行更新在它之前/之后的节点信息的第五绑定操作,然后向所述控制节点发送第五绑定确认消息,所述第五绑定确认消息中包括用于表示所述第五绑定操作是否成功的信息;当所述第四绑定操作和第五绑定操作都成功时,所述控制节点生成新的分组密钥,然后将包括所述新的分组密钥和该传感器组的新的拓扑结构在内的传感器组信息发送至所述传感器网络网关;所述控制节点使用上述的更新分组密钥的方法进行该传感器组的分组密钥更新。
[0027]根据本发明的第七方面,提供了一种在上述的泛在传感器网络中切换控制节点的方法,包括:原控制节点向传感器网络网关发出取消绑定请求消息;所述传感器网络网关接收所述取消绑定请求消息,在该原控制节点所在的传感器组中选择一个新的传感器节点,向该新的传感器节点发送创建传感器组请求消息;所述新的传感器节点接收所述创建传感器组请求消息后,向所述传感器网络网关发送创建传感器组确认消息,所述创建传感器组确认消息中包括用于表示该新的传感器节点是否可以作为该传感器组的新的控制节点的信息;所述传感器网络网关接收所述创建传感器组确认消息后,当该新的传感器节点可以作为该传感器组的新的控制节点时,所述传感器网络网关更新该传感器组的信息,然后向原控制节点发送取消绑定确认消息,向该新的控制节点发送数据请求消息;该新的控制节点根据接收到的所述数据请求消息中的信息获得该传感器组的信息后,向所述传感器网络网关发出数据确认消息;述传感器网络网关接收所述数据确认消息后,向该传感器组的所有节点发送广播消息,所述广播消息中包括该传感器组标识和该新的控制节点的标识。
[0028]根据本发明的第八方面,提供了一种在上述的泛在传感器网络中控制节点离开传感器组的方法,包括:原控制节点向传感器网络网关发出离开传感器组请求消息;所述传感器网络网关接收所述离开传感器组请求消息,在该原控制节点所在的传感器组中选择一个新的传感器节点,向该新的传感器节点发送创建传感器组请求消息;所述新的传感器节点接收所述创建传感器组请求消息后,向所述传感器网络网关发送创建传感器组确认消息,所述创建传感器组确认消息中包括用于表示该新的传感器节点是否可以作为该传感器组的新的控制节点的信息;所述传感器网络网关接收所述创建传感器组确认消息后,当该新的传感器节点可以作为该传感器组的新的控制节点时,所述传感器网络网关更新该传感器组的信息,然后向原控制节点发送离开传感器组确认消息,向该新的控制节点发送数据请求消息;该新的控制节点根据接收到的所述数据请求消息中的信息获得该传感器组的信息后,向所述传感器网络网关发出数据确认消息;述传感器网络网关接收所述数据确认消息后,向该传感器组的所有节点发送广播消息,所述广播消息中包括该传感器组标识和该新的控制节点的标识;该新的控制节点向该传感器组中位于原控制节点之前的节点发出第六绑定请求消息,向该传感器组中位于原控制节点之后的节点发出第七绑定请求消息;所述原控制节点之前的节点接收所述第六绑定请求消息后,执行更新在它之前/之后的节点信息的第六绑定操作,然后向所述新的控制节点发送第六绑定确认消息,所述第六绑定确认消息中包括用于表示所述第六绑定操作是否成功的信息;所述原控制节点之后的节点接收所述第七绑定请求消息后,执行更新在它之前/之后的节点信息的第七绑定操作,然后向所述新的控制节点发送第七绑定确认消息,所述第七绑定确认消息中包括用于表示所述第七绑定操作是否成功的信息;当所述第六绑定操作和第七绑定操作都成功时,所述新的控制节点生成新的分组密钥,然后将包括所述新的分组密钥和该传感器组的新的拓扑结构在内的传感器组信息发送至所述传感器网络网关;所述新的控制节点使用上述的更新分组密钥的方法进行该传感器组的分组密钥更新。
[0029]本发明中,由于使用了环状的拓扑结构,组内每个SN只需要维护前后两个相邻节点的信息,因此实现方便,GC和SGW上所需要存储的环状拓扑结构相比于树状拓扑也大大简化;其次,通过环状拓扑进行密钥更新的速度和开销也优于树状拓扑,从而确保可以在组成员发生任何改变的情况下都可以进行密钥更新,以保证组内通信的安全性;最后,由于密钥更新的速度和开销不再成为系统的瓶颈,因此频繁的组内成员更改不再受限,从而满足灵活构建网络的需求。由此可见,通过本发明,可以解决现有技术的上述问题,满足实际应用的需要。
【专利附图】

【附图说明】
[0030]通过参照附图阅读以下所作的对非限制性实施例的详细描述,本发明的其它特征、目的和优势将会更为明显。
[0031]图1示出了根据本发明的一种泛在传感器网络;
[0032]图2示出了根据本发明的一种创建传感器组的方法;
[0033]图3示出了根据本发明的一种传感器节点加入传感器组的方法;
[0034]图4示出了根据本发明的一种传感器节点离开传感器组的方法;
[0035]图5示出了根据本发明的一种控制节点切换的方法;
[0036]图6示出了根据本发明的一种控制节点离开传感器组的方法。
[0037]其中,相同或相似的附图标记表示相同或相似的步骤特征或装置/模块。
【具体实施方式】
[0038]以下结合附图来说明本发明的【具体实施方式】。
[0039]图1示出了一个根据本发明的泛在传感器网络结构,包括一个将该传感器网络同通信网络相连接的SGW。在该传感器网络中包括两个传感器组:传感器组1,传感器组2。传感器组I包括4个SN:SN1、SN2、SN3和SM ;其中SNl作为该组的控制节点,即GCl ;传感器组2包括4个SN:SN4、SN5、SN6和SN7 ;其中SN5作为该组的控制节点,即GC2。图中的箭头方向代表了环状拓扑中节点的先后位置,从图中可以看出,SM同时属于两个传感器组。
[0040]相应的,在各个网络单元上分别存储的信息具体是:
[0041]SGff:
[0042]-所有传感器组的拓扑结构;
[0043]-所有传感器组的标识(GID);
[0044]-所有传感器组的分组密钥;
[0045]-所有传感器组的序号;
[0046]-所有传感器组的控制节点的标识;
[0047]-所有传感器组的控制节点的地址;
[0048]-不允许加入任何传感器组的传感器节点的列表,即危险节点的黑名单。
[0049]GC:
[0050]-其所属的传感器组中所有传感器节点的标识(SID);
[0051]-其所属的传感器组的拓扑结构;
[0052]-其所属的传感器组的标识(GID);
[0053]-其所属的传感器组的分组密钥
[0054]-其所属的传感器组的序号。
[0055]SN:
[0056]-其所属的传感器组的标识(GID);
[0057]-其所属的传感器组的分组密钥[0058]-其所属的传感器组的序号;
[0059]-其所属的传感器组的控制节点的标识;
[0060]-其所属的传感器组的控制节点的地址;
[0061]-其所属的传感器组中在其之前/之后的传感器节点的标识(SID)。
[0062]其中,SM上需要分别存储传感器组I和传感器组2的各自的数据。此外,为了确保组内任意两个节点之间的通信安全,每个传感器组中任意两个节点之间还共享一组对称密钥(pairwise key)。
[0063]图2示出了传感器组创建的过程。以SNl创建传感器组I(GIDl)为例,具体包括以下步骤:
[0064]DSNl向SGW发出加入传感器组请求消息,该消息中包括SID1,GID1,对应于SNl的随机数(nonce (snl))和消息鉴权码(message authentication code 简称 MAC1);其中nonce (snl)用来防止重放攻击,MAC用来保证数据完整性;
[0065]2) SGW接收上述消息,验证SNl不属于危险节点的黑名单;
[0066]3) SGff向SNl发出创建传感器组请求消息,该消息中包括GID1,nonce (snl),nonce(sgw), MAC2 ;
[0067]4) SNl接收上述创建传感器组请求消息,确定自己是否有能力作为GC,然后向SGW发送创建传感器组确认消息,该消息中包括SID1,GID1,nonce (sgw),MAC3和用于表示SNl是否可以作为GCl的信息(图中用Y/N表示);
[0068]5)当SNl可以作为该传感器组的控制节点时,SNl和SGW协商传感器组I的分组密钥和序号,其中序号用于防止在密钥更新操作过程中的重放攻击。
[0069]图3示出了传感器节点加入传感器组的过程。以SN8(图1中未示出)加入传感器组I(GIDl)为例,具体包括以下步骤:
[0070]I) SN8向SGW发出加入传感器组请求消息,该消息中包括SID8, GID1, nonce (sn8)和 MACl ;
[0071]2) SGW接收上述消息,验证SN8不属于危险节点的黑名单;
[0072]3) SGff向GCl即SNl发出第一绑定请求消息,该消息中包括SID8,GIDl,MAC2 ;
[0073]4) SNl接收第一绑定请求消息,进行更新传感器组I的拓扑结构的第一绑定操作,即将SN8加到SM的后面;
[0074]5) SNl向SGW发出第一绑定确认消息,该消息中包括SID8,GID1,MAC3和用于表示第一绑定操作是否成功的信息(图中用status表示);
[0075]6) SGff向SN8发出加入传感器组确认消息,该消息中包括SID8,G皿,S皿,nonce (sn8), nonce (sgw), MAC4和用于表示加入传感器组是否成功的信息(图中用status表示);
[0076]7)当所述第一绑定操作成功时,SNl向SN8发出第二绑定请求消息,该消息中包括G皿,SN8之前的节点(sn4),SN8之后的节点(gel),MAC5 ;
[0077]8) SN8根据第二绑定请求消息执行更新其信息的第二绑定操作;
[0078]9)SN8向SNl发出第二绑定确认消息,该消息中包括GID1,MAC6和用于表示第二绑定操作是否成功的信息(图中用status表示);
[0079]10) SNl向SM发出第三绑定请求消息,该消息中包括GIDl,SM之前的节点(sn3),SN4 之后的节点(sn8),MAC7 ;
[0080]11) SM根据第三绑定请求消息执行更新其信息的第三绑定操作;
[0081]12) SM向SNl发出第三绑定确认消息,该消息中包括GID1,MAC8和用于表示第三绑定操作是否成功的信息(图中用status表示);
[0082]13)当第二绑定操作和第三绑定操作都成功时,SNl生成新的分组密钥;
[0083]14) SNl将新密钥,传感器组I的拓扑结构和序号发送至SGW ;
[0084]15a) SNl向位于其之后的传感器节点SN2发出分组密钥更新消息,该消息包括新的分组密钥、GID1、序号和MAC9 ;
[0085]15b) SN2更新分组密钥,并将新分组密钥和序号用其与之后的传感器节点所共享的对称密钥重编码;
[0086]15c) SN2向位于其之后的传感器节点SN3发出分组密钥更新消息,该消息包括新的分组密钥、GID1、序号和MAClO ;
[0087]15d)SN3更新分组密钥,并将新分组密钥和序号用其与之后的传感器节点所共享的对称密钥重编码;
[0088]15e)SN3向位于其之后的传感器节点SM发出分组密钥更新消息,该消息包括新的分组密钥、GID1、序号和MACll ;
[0089]15f) SM更新分组密钥,并将新分组密钥和序号用其与之后的传感器节点所共享的对称密钥重编码;
[0090]15g)SN4向位于其之后的传感器节点SN8发出分组密钥更新消息,该消息包括新的分组密钥、GID1、序号和MAC12 ;
[0091]15h)SN8更新分组密钥,并将新分组密钥和序号用其与之后的传感器节点所共享的对称密钥重编码;
[0092]15i)SN8向位于其之后的传感器节点SNl发出分组密钥更新消息,该消息包括新的分组密钥、GID1、序号和MAC13 ;
[0093]15j)密钥更新操作完成,整个传感器节点加入传感器组的过程也随之完成。
[0094]上述步骤15中的密钥更新操作还可以采用下列的双向更新的方法完成,以进一步加快完成的速度:
[0095]-控制节点向位于其之前/之后的传感器节点都发出分组密钥更新消息,所述更新消息包括新的分组密钥、传感器组的标识和序号;
[0096]-所述传感器接收所述更新消息,更新所述分组密钥;
[0097]-所述传感器向位于其之前/之后的传感器节点转发所述更新消息;
[0098]-当所述传感器在接收到所述更新消息后的第一预定时间内又收到相同内容的更新消息时,不再更新所述分组密钥和转发所述更新消息。
[0099]图4示出了传感器节点离开传感器组的过程。以SN6离开传感器组2(GID2)为例,具体包括以下步骤:
[0100]I) SN6向GC2即SN5发出离开传感器组请求消息,该消息中包括SID6,GID2,nonce (sn6)和 MACl ;
[0101]2)SN5接收上述消息,执行更新传感器组2的拓扑结构的更新操作;
[0102]3) SN5向SN6发出离开传感器组确认消息,该消息中包括了 SID6,GID2,nonce (sn6), nonce (gc2), MAC2和用于表示更新操作是否成功的信息(图中用status表示);
[0103]4)当所述更新操作成功时,SN5向该传感器组中位于SN6之前的节点SM发出第四绑定请求消息,该消息中包括GID2,SM之前的节点(gc2),SM之后的节点(sn7) ,MAC3 ;
[0104]5) SM根据第四绑定请求消息执行更新其信息的第四绑定操作;
[0105]6) SM向SN5发出第四绑定确认消息,该消息中包括GID2,MAC4和用于表示第四绑定操作是否成功的信息(图中用status表示);
[0106]7)SN5向该传感器组中位于SN6之后的节点SN7发出第五绑定请求消息,该消息中包括GID2,SN7之前的节点(sn4),SN7之后的节点(gc2),MAC5 ;
[0107]8) SN7根据第五绑定确认消息执行更新其信息的第五绑定操作;
[0108]9)SN7向SN5发出第五绑定确认消息,该消息中包括GID2,MAC6和用于表示第五绑定操作是否成功的信息(图中用status表示);
[0109]10)当第四绑定操作和第五绑定操作都成功时,SN5生成新的分组密钥;
[0110]11)SN5将新密钥,传感器组2的拓扑结构和序号发送至SGW ;
[0111]12a) SN5向位于其之后的传感器节点SM发出分组密钥更新消息,该消息包括新的分组密钥、GID2、序号和MAC7 ;
[0112]12b) SM更新分组密钥,并将新分组密钥和序号用其与之后的传感器节点所共享的对称密钥重编码;
[0113]12c) SN4向位于其之后的传感器节点SN7发出分组密钥更新消息,该消息包括新的分组密钥、GID2、序号和MAC8 ;
[0114]12d)SN7更新分组密钥,并将新分组密钥和序号用其与之后的传感器节点所共享的对称密钥重编码;
[0115]12e)SN7向位于其之后的传感器节点SN5发出分组密钥更新消息,该消息包括新的分组密钥、GID2、序号和MAC9 ;
[0116]12f)密钥更新操作完成,整个传感器节点离开传感器组的过程也随之完成。
[0117]图5示出了控制节点切换的过程。以GCl从SNl切换至SN2为例,具体包括以下步骤:
[0118]I) SNl向SGW发出取消绑定请求消息,该消息中包括SID1, GID1, nonce (snl),MACl ;
[0119]2) SGW接收上述消息,选择SN2为新的GCl ;
[0120]3) SGff向SN2发出创建传感器组请求消息,该消息中包括GIDI,nonce (sgw),MAC2 ;
[0121]4) SN2接收上述创建传感器组请求消息,验证自己是否有能力作为GCl ;
[0122]5) SN2向SGW发出创建传感器组确认消息,该消息中包括GIDI,nonce (sn2),nonce (sgw),MAC3和用于表示SN2是否可以作为GCl的信息(图中用Y/N表示);
[0123]6)当SN2可以作为GCl时,SGff更新该传感器组的信息;
[0124]7) SGff向原控制节点SNl发出取消绑定确认消息,该消息中包括SID1,GID1,nonce (snl), nonce (sgw), MAC4和取消绑定是否成功的信息(图中用status表示);
[0125]8) SGff向SN2发出数据请求消息,该消息中包括GIDl、传感器组I新的拓扑结构和MAC5 ;
[0126]9)SN2根据接收到的数据请求消息中的信息获得传感器组I的信息;
[0127]10) SN2向SGW发出数据确认消息,该消息中包括GID1、MAC6和用于表示数据传输是否成功的?目息(图中用status表不);
[0128]11) SGW向传感器组I中的所有节点发送广播消息,该消息中包括GIDl和新的控制节点的标识SID2。
[0129]图6示出了控制节点离开传感器组的过程。以GC1/SN1离开传感器组I为例,具体包括以下步骤:
[0130]I) SNl向SGW发出离开传感器组请求消息,该消息中包括SIDl,GIDl,nonce (snl),MACl ;
[0131]2) SGW接收上述消息,选择SN3为新的GCl ;
[0132]3) SGff向SN3发出创建传感器组请求消息,该消息中包括GIDI,nonce (sgw),MAC2 ;
[0133]4) SN3接收上述创建传感器组请求消息,验证自己是否有能力作为GCl ;
[0134]5) SN3向SGW发出创建传感器组确认消息,该消息中包括GIDI,nonce (sn3),nonce (sgw),MAC3和用于表示SN3是否可以作为GCl的信息(图中用Y/N表示);
[0135]6)当SN3可以作为GCl时,SGff更新该传感器组的信息;
[0136]7) SGff向原控制节点SNl发出`离开传感器组确认消息,该消息中包括SID1,GID1,nonce (snl), nonce (sgw), MAC4和离开传感器组是否成功的信息(图中用status表示);
[0137]8) SGff向SN3发出数据请求消息,该消息中包括GIDl、传感器组I新的拓扑结构和MAC5 ;
[0138]9)SN3根据接收到的数据请求消息中的信息获得传感器组I的信息;
[0139]10) SN3向SGW发出数据确认消息,该消息中包括GID1、MAC6和用于表示数据传输是否成功的?目息(图中用status表不);
[0140]11) SGW向传感器组I中的所有节点发送广播消息,该消息中包括GIDl和新的控制节点的标识SID3。
[0141]12) SN3向该传感器组中位于SNl之后的节点SN2发出第七绑定请求消息,该消息中包括GIDl,SN2之前的节点(sn4),SN2之后的节点(sn3),MAC7 ;
[0142]13) SN2根据第七绑定请求消息执行更新其信息的第七绑定操作;
[0143]14) SN2向SN3发出第七绑定确认消息,该消息中包括GID1,MAC8和用于表示第七绑定操作是否成功的信息(图中用status表示);
[0144]15) SN3向该传感器组中位于SNl之前的节点SM发出第六绑定请求消息,该消息中包括GIDl,SM之前的节点(sn3),SM之后的节点(sn2),MAC9 ;
[0145]16) SM根据第六绑定确认消息执行更新其信息的第六绑定操作;
[0146]17) SM向SN3发出第六绑定确认消息,该消息中包括GID1,MAC10和用于表示第六绑定操作是否成功的?目息(图中用status表不);
[0147]18)当第六绑定操作和第七绑定操作都成功时,SN3生成新的分组密钥;
[0148]19) SN2将新密钥,传感器组I的拓扑结构和序号发送至SGW ;
[0149]20a) SN3向位于其之后的传感器节点SM发出分组密钥更新消息,该消息包括新的分组密钥、GID1、序号和MACll ;
[0150]20b) SM更新分组密钥,并将新分组密钥和序号用其与之后的传感器节点所共享的对称密钥重编码;
[0151]20c) SM向位于其之后的传感器节点SN2发出分组密钥更新消息,该消息包括新的分组密钥、GID1、序号和MAC12 ;
[0152]20d)SN2更新分组密钥,并将新分组密钥和序号用其与之后的传感器节点所共享的对称密钥重编码;
[0153]20e)SN2向位于其之后的传感器节点SN3发出分组密钥更新消息,该消息包括新的分组密钥、GID1、序号和MAC13 ;
[0154]20f)密钥更新操作完成,整个控制节点离开传感器组的过程也随之完成。
[0155]以上对本发明的实施例进行了描述,但是本发明并不局限于特定的系统、设备和具体协议,本领域内技术人员可以在所附权利要求的范围内做出各种变形或修改。
[0156]那些本【技术领域】的一般技术人员可以通过研究说明书、公开的内容及附图和所附的权利要求书,理解和实施对披露的实施方式的其他改变。在权利要求中,措词“包括”不排除其他的元素和步骤,并且措辞“一个”不排除复数。在本发明中,“第一”、“第二”仅表示名称,不代表次序关系。在发明的实际应用中,一个零件可能执行权利要求中所引用的多个技术特征的功能。权利要求中的任何附图标记不应理解为对范围的限制。
【权利要求】
1.一种包含多个传感器节点的泛在传感器网络,包括: -用于将所述泛在传感器网络与通信网络相连接的传感器网络网关; -至少一个由多个传感器节点和一个控制节点组成的传感器组; 其中,所述传感器组构成环状拓扑,所述传感器组中的每个传感器节点上存有在其之前/之后的传感器节点的信息,所述控制节点上存有所述传感器组中的每个传感器节点的信息,所述传感器网络网关上存有所述泛在传感器网络中所有传感器节点和控制节点的信息。
2.根据权利要求1所述的泛在传感器网络,其中,每个所述传感器组都拥有各自独立的分组密钥,每个所述传感器组中的所有节点都使用该传感器组的所述分组密钥进行信息加密。
3.根据权利要求2所述的泛在传感器网络,其中,当每个所述传感器组中发生传感器节点的加入、传感器节点的离开、或者控制节点的离开时,更新所述分组密钥。
4.根据权利要求1至3中任一项所述的泛在传感器网络,其中,一个传感器节点可以属于不同的传感器组,当所述控制节点属于一个以上的传感器组时,所述传感器节点上存有所述每个传感器组中在它之前/之后的传感器节点的信息。
5.根据权利要求1至3中任一项所述的泛在传感器网络,其中,一个控制节点可以属于不同的传感器组,当所述控制节点属于一个以上的传感器组时,所述控制节点上存有所述所有传感器组中的所有传感器节点的信息。
6.根据权利要求1至3中任一项所述的泛在传感器网络,其中,所述传感器网络网关可以作为控制节点。
7.根据权利要求2或3中任一项所述的泛在传感器网络,其中,所述传感器网络网关上存有的信息包括: -所有传感器组的拓扑结构; -所有传感器组的标识; -所有传感器组的分组密钥; -所有传感器组的序号; -所有传感器组的控制节点的标识; -所有传感器组的控制节点的地址; -不允许加入任何传感器组的传感器节点的列表。
8.根据权利要求2或3中任一项所述的泛在传感器网络,其中,所述控制节点上存有的信息包括: -其所属的传感器组中所有传感器节点的标识; -其所属的传感器组的拓扑结构; -其所属的传感器组的标识; -其所属的传感器组的分组密钥; -其所属的传感器组的序号。
9.根据权利要求2或3中任一项所述的泛在传感器网络,其中,所述传感器节点上存有的信息包括: -其所属的传感器组的标识;-其所属的传感器组的分组密钥; -其所属的传感器组的序号; -其所属的传感器组的控制节点的标识; -其所属的传感器组的控制节点的地址; -其所属的传感器组中在其之前/之后的传感器节点的标识。
10.根据权利要求1至3中任一项所述的泛在传感器网络,其中,每个所述传感器组中任意两个节点之间共享一组对称密钥。
11.一种在根据权利要求2或3中任一项所述的泛在传感器网络中更新所述分组密钥的方法,包括: -控制节点向位于其之后的传感器节点发出分组密钥更新消息,所述更新消息包括新的分组密钥、传感器组的标识和序号; -所述传感器接收所述更新消息,更新所述分组密钥; -所述传感器向位于其之后的传感器节点转发所述更新消息。
12.—种在根据权利要求2或3中任一项所述的泛在传感器网络中更新所述分组密钥的方法,包括: -控制节点向位于其之前/之后的传感器节点发出分组密钥更新消息,所述更新消息包括新的分组密钥、传感器组的标识和序号; -所述传感器接收所述更新消息,更新所述分组密钥; -所述传感器向位于其之前/之后的传感器节点转发所述更新消息; -当所述传感器在接收到所述更新消息后的第一预定时间内又收到相同内容的更新消息时,不再更新所述分组密钥和转发所述更新消息。
13.一种在根据权利要求2或3中任一项所述的泛在传感器网络中创建传感器组的方法,包括: -传感器节点向传感器网络网关发出加入传感器组请求消息; -所述传感器网络网关接收所述加入传感器组请求消息,验证所述传感器节点身份后,向所述传感器节点发送创建传感器组请求消息; -所述传感器节点接收所述创建传感器组请求消息后,向所述传感器网络网关发送创建传感器组确认消息,所述创建传感器组确认消息中包括用于表示该传感器节点是否可以作为该传感器组的控制节点的信息; -当该传感器节点可以作为该传感器组的控制节点时,该传感器节点与所述传感器网络网关协商该传感器组的分组密钥和序号。
14.根据权利要求13所述的方法,其中: -所述加入传感器组请求消息中包括该传感器节点的标识、新的传感器组标识、对应于该传感器节点的随机数和消息鉴权码; -所述创建传感器组请求消息中包括所述新的传感器组标识、所述对应于该传感器节点随机数、对应于传感器网络网关的随机数和消息鉴权码; -所述创建传感器组确认消息中还包括该传感器节点的标识、所述新的传感器组标识、所述对应于传感器网络网关的随机数、消息鉴权码。
15.一种在根据权利要求3所述的泛在传感器网络中将传感器节点加入传感器组的方法,包括: -待加入的传感器节点向传感器网络网关发出加入传感器组请求消息; -所述传感器网络网关接收所述加入传感器组请求消息,验证该待加入的传感器节点身份后,向该传感器组的控制节点发送第一绑定请求消息; -所述控制节点接收所述第一绑定请求消息后,执行更新该传感器组的拓扑结构的第一绑定操作,然后向所述传感器网络网关发送第一绑定确认消息,所述第一绑定确认消息中包括用于表示所述第一绑定操作是否成功的信息; -所述传感器网络网关接收所述第一绑定确认消息后,向该待加入的传感器节点发送加入传感器组确认消息,所述加入传感器组确认消息中包括用于表示加入该传感器组是否成功的信息; -当所述第一绑定操作成功时,所述控制节点向该传感器组中最后一个传感器节点发出第三绑定请求消息,向该待加入的传感器节点发出第二绑定请求消息; -所述最后一个传感器节点接收所述第三绑定请求消息后,执行更新在它之后的节点信息的第三绑定操作,然后向所述控制节点发送第三绑定确认消息,所述第三绑定确认消息中包括用于表示所述第三绑定操作是否成功的信息; -该待加入的传感器节点接收所述第二绑定请求消息后,执行更新该待加入的传感器节点之前/之后的节点信息的第二绑定操作,然后向所述控制节点发送第二绑定确认消息,所述第二绑定确认消息中包括用于表示所述第二绑定操作是否成功的信息; -当所述第二绑定操作和第三绑定操作都成功时,所述控制节点生成新的分组密钥,然后将包括所述新的分组密钥和该传感器组的新的拓扑结构在内的传感器组信息发送至所述传感器网络网关; -所述控制节点使用根据权利要求11或12中任一项所述的更新分组密钥的方法进行该传感器组的分组密钥更新。
16.根据权利要求15所述的方法,其中: -所述加入传感器组请求消息中包括该待加入的传感器节点的标识、该传感器组标识、对应于该待加入的传感器节点的随机数和消息鉴权码; -所述第一绑定请求消息中包括该传感器组标识、该待加入的传感器节点的标识和消息鉴权码; -所述第一绑定确认消息中还包括该传感器组标识、该待加入的传感器节点的标识和消息鉴权码; -所述加入传感器组确认消息中还包括该待加入的传感器节点的标识、该传感器组标识、所述控制节点标识、对应于该待加入的传感器节点的随机数、对应于所述传感器网络网关的随机数和消息鉴权码; -所述第二绑定请求消息中包括该传感器组标识、之前/之后的传感器节点的标识和消息鉴权码; -所述第二绑定确认消息中还包括该传感器组标识和消息鉴权码; -所述第三绑定请求消息中包括该传感器组标识、之前/之后的传感器节点的标识和消息鉴权码; -所述第三绑定确认消息中还包括该传感器组标识和消息鉴权码。
17.一种在根据权利要求3所述的泛在传感器网络中传感器节点离开传感器组的方法,包括: -待离开的传感器节点向该传感器组的控制节点发出离开传感器组请求消息; -所述控制节点接收所述离开传感器组请求消息后,执行更新该传感器组的拓扑结构的更新操作,然后向该待离开的传感器节点发送离开传感器组确认消息,所述离开传感器组确认消息中包括用于表示所述更新操作是否成功的信息; -当所述更新操作成功时,所述控制节点向该传感器组中位于该待离开的传感器节点之前的节点发出第四绑定请求消息,向该传感器组中位于该待离开的传感器节点之后的节点发出第五绑定请求消息; -所述之前的节点接收所述第四绑定请求消息后,执行更新在它之前/之后的节点信息的第四绑定操作,然后向所述控制节点发送第四绑定确认消息,所述第四绑定确认消息中包括用于表示所述第四绑定操作是否成功的信息; -所述之后的节点接收所述第五绑定请求消息后,执行更新在它之前/之后的节点信息的第五绑定操作,然后向所述控制节点发送第五绑定确认消息,所述第五绑定确认消息中包括用于表示所述第五绑定操作是否成功的信息; -当所述第四绑定操作和第五绑定操作都成功时,所述控制节点生成新的分组密钥,然后将包括所述新的分组密钥和该传感器组的新的拓扑结构在内的传感器组信息发送至所述传感器网络网关; -所述控制节点使用根 据权利要求11或12中任一项所述的更新分组密钥的方法进行该传感器组的分组密钥更新。
18.根据权利要求17所述的方法,其中: -离开传感器组请求消息中包括该待离开的传感器节点的标识、该传感器组标识、对应于该待加入的传感器节点的随机数和消息鉴权码; -所述加入传感器组确认消息中还包括该待离开的传感器节点的标识、该传感器组标识、对应于该待离开的传感器节点的随机数、对应于所述控制节点的随机数和消息鉴权码; -所述第四绑定请求消息中包括该传感器组标识、之前/之后的传感器节点的标识和消息鉴权码; -所述第四绑定确认消息中还包括该传感器组标识和消息鉴权码; -所述第五绑定请求消息中包括该传感器组标识、之前/之后的传感器节点的标识和消息鉴权码; -所述第五绑定确认消息中还包括该传感器组标识和消息鉴权码。
19.一种在根据权利要求2所述的泛在传感器网络中切换控制节点的方法,包括: -原控制节点向传感器网络网关发出取消绑定请求消息; -所述传感器网络网关接收所述取消绑定请求消息,在该原控制节点所在的传感器组中选择一个新的传感器节点,向该新的传感器节点发送创建传感器组请求消息; -所述新的传感器节点接收所述创建传感器组请求消息后,向所述传感器网络网关发送创建传感器组确认消息,所述创建传感器组确认消息中包括用于表示该新的传感器节点是否可以作为该传感器组的新的控制节点的信息;-所述传感器网络网关接收所述创建传感器组确认消息后,当该新的传感器节点可以作为该传感器组的新的控制节点时,所述传感器网络网关更新该传感器组的信息,然后向原控制节点发送取消绑定确认消息,向该新的控制节点发送数据请求消息; -该新的控制节点根据接收到的所述数据请求消息中的信息获得该传感器组的信息后,向所述传感器网络网关发出数据确认消息; -述传感器网络网关接收所述数据确认消息后,向该传感器组的所有节点发送广播消息,所述广播消息中包括该传感器组标识和该新的控制节点的标识。
20.根据权利要求19所述的方法,其中: -所述取消绑定请求消息中包括该原控制节点的标识、该传感器组标识、对应于该原控制节点的随机数和消息鉴权码; -所述创建传感器组请求消息中包括该传感器组标识、对应于所述传感器网络网关的随机数和消息鉴权码; -所述创建传感器组确认消息中还包括该传感器组标识、对应于该新的控制节点的随机数、对应于所述传感器网络网关的随机数和消息鉴权码; -所述取消绑定确认消息中包括用于表示取消绑定是否成功的信息、该原控制节点的标识、该传感器组标识、对应于该原控制节点的随机数、对应于所述传感器网络网关的随机数和消息鉴权码; -所述数据请求消息中包括该传感器组标识、该传感器组拓扑结构和消息鉴权码; -所述数据确认消息中包括该传感器组标识、用于表示数据传输是否成功的信息和消息鉴权码。
21.一种在根据权利要求3所述的泛在传感器网络中控制节点离开传感器组的方法,包括: -原控制节点向传感器网络网关发出离开传感器组请求消息; -所述传感器网络网关接收所述离开传感器组请求消息,在该原控制节点所在的传感器组中选择一个新的传感器节点,向该新的传感器节点发送创建传感器组请求消息; -所述新的传感器节点接收所述创建传感器组请求消息后,向所述传感器网络网关发送创建传感器组确认消息,所述创建传感器组确认消息中包括用于表示该新的传感器节点是否可以作为该传感器组的新的控制节点的信息; -所述传感器网络网关接收所述创建传感器组确认消息后,当该新的传感器节点可以作为该传感器组的新的控制节点时,所述传感器网络网关更新该传感器组的信息,然后向原控制节点发送离开传感器组确认消息,向该新的控制节点发送数据请求消息; -该新的控制节点根据接收到的所述数据请求消息中的信息获得该传感器组的信息后,向所述传感器网络网关发出数据确认消息; -述传感器网络网关接收所述数据确认消息后,向该传感器组的所有节点发送广播消息,所述广播消息中包括该传感器组标识和该新的控制节点的标识; -该新的控制节点向该传感器组中位于原控制节点之前的节点发出第六绑定请求消息,向该传感器组中位于原控制节点之后的节点发出第七绑定请求消息; -所述原控制节点之前的节点接收所述第六绑定请求消息后,执行更新在它之前/之后的节点信息的第六绑定操作,然后向所述新的控制节点发送第六绑定确认消息,所述第六绑定确认消息中包括用于表示所述第六绑定操作是否成功的信息; -所述原控制节点之后的节点接收所述第七绑定请求消息后,执行更新在它之前/之后的节点信息的第七绑定操作,然后向所述新的控制节点发送第七绑定确认消息,所述第七绑定确认消息中包括用于表示所述第七绑定操作是否成功的信息; -当所述第六绑定操作和第七绑定操作都成功时,所述新的控制节点生成新的分组密钥,然后将包括所述新的分组密钥和该传感器组的新的拓扑结构在内的传感器组信息发送至所述传感器网络网关; -所述新的控制节点使用根据权利要求11或12中任一项所述的更新分组密钥的方法进行该传感器组的分组密钥更新。
22.根据权利要求21所述的方法,其中: -所述离开传感器组请求消息中包括该原控制节点的标识、该传感器组标识、对应于该原控制节点的随机数和消息鉴权码; -所述创建传感器组请求消息中包括该传感器组标识、对应于所述传感器网络网关的随机数和消息鉴权码; -所述创建传感器组确认消息中还包括该传感器组标识、对应于该新的控制节点的随机数、对应于所述传感器网络网关的随机数和消息鉴权码; -所述离开传感器 组确认消息中包括用于表示离开传感器组是否成功的信息、该原控制节点的标识、该传感器组标识、对应于该原控制节点的随机数、对应于所述传感器网络网关的随机数和消息鉴权码; -所述数据请求消息中包括该传感器组标识、该传感器组拓扑结构和消息鉴权码; -所述数据确认消息中包括该传感器组标识、用于表示数据传输是否成功的信息和消息鉴权码。 -所述第六绑定请求消息中包括该传感器组标识、之前/之后的传感器节点的标识和消息鉴权码; -所述第六绑定确认消息中还包括该传感器组标识和消息鉴权码; -所述第七绑定请求消息中包括该传感器组标识、之前/之后的传感器节点的标识和消息鉴权码; -所述第七绑定确认消息中还包括该传感器组标识和消息鉴权码。
【文档编号】H04W84/18GK103813319SQ201210457611
【公开日】2014年5月21日 申请日期:2012年11月14日 优先权日:2012年11月14日
【发明者】杨水根, 宾梵翔, 温海波 申请人:上海贝尔股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1