一种基于车载云的网络资源查询和分配方法组成比例

技术编号:20331681 阅读:34 留言:0更新日期:2019-02-13 07:24
本发明专利技术提供了一种基于车载云的网络资源查询和分配方法,所述网络车辆节点,所述网络划分为两个以上的簇,一个簇由两个以上的车辆节点构成,其中,这些车辆节点划分为簇首和簇成员,一个簇包含一个簇首和两个以上的簇成员;如果簇成员属于两个以上的簇,则该簇成员又称为簇网关;所述车辆节点通过本发明专利技术所提供的通信方法,可保持移动过程中通信的连续性,降低数据包丢失率,从而提高了服务质量,本发明专利技术可应用于道路路况监测、车辆管理等领域,具有广泛的应用前景。

【技术实现步骤摘要】
一种基于车载云的网络资源查询和分配方法
本专利技术涉及一种方法,尤其涉及的是一种基于车载云的网络资源查询和分配方法。
技术介绍
车载云由于其实用性已经受到广泛关注,成为研究的热点。车辆节点的主要特点之一为车辆节点沿路进行高速移动,因此,如何实现车辆节点的高质量通信为研究的热点之一。车载云建立在车载网之上,目前现有的通信协议应用到车载网中还存在一些问题,主要原因为如下:1)现有协议中,移动节点需要发送和接收大量的控制信息来确保移动过程中的通信畅通,减少数据包的丢失,而传输控制信息会消耗大量的能量,这会大幅度缩减移动节点的寿命;2)现有协议的控制信息数据包开销较大,移动转交延迟较长从而提高了数据包丢失率。因此,如何提高车载云的数据通信效率还有待进一步研究。
技术实现思路
专利技术目的:本专利技术所要解决的技术问题是针对现有技术的不足,提供一种基于车载云的网络资源查询和分配方法。技术方案:本专利技术公开了一种基于车载云的网络资源查询和分配方法,所述网络车辆节点,所述网络划分为两个以上的簇,一个簇由两个以上的车辆节点构成,其中,这些车辆节点划分为簇首和簇成员,一个簇包含一个簇首和两个以上的簇成员;如果簇成员属于两个以上的簇,则该簇成员又称为簇网关;一个车辆节点由一个硬件ID唯一标识,该硬件ID可以为MAC地址;一个车辆节点配置一种以上的资源,一种资源由一个资源ID唯一标识;车辆节点使用消息进行通信,一个消息由消息类型唯一标识,消息类型如下表所示:每个车辆节点维护一个邻居表,一个邻居表项包含硬件ID、坐标、资源ID集合、角色域和生命周期域;如果角色域值为1,则表示该邻居表项对应的车辆节点为簇首;如果角色域值为2,则表示该邻居表项对应的车辆节点为簇成员;如果角色域值为3,则表示该邻居表项对应的车辆节点为簇网关;如果角色域值为4,则表示该邻居表项对应的车辆节点既不是簇首,也不是簇成员或者簇网关;一个信标消息由消息类型,硬件ID、坐标、角色和资源ID集合构成;车辆节点V1定期执行下述操作:步骤101:开始;步骤102:车辆节点V1定期发送信标消息,该信标消息的消息类型值为1,硬件ID为车辆节点V1的硬件ID,坐标为车辆节点V1的坐标,资源ID集合由车辆节点V1能够共享的资源的资源ID构成;如果车辆节点V1为簇首,则角色域值设为1,如果车辆节点V1为簇成员,则角色域值设为2,如果车辆节点为簇网关,则角色域值设为3,否则,角色域值设为4;步骤103:邻居车辆节点接收到信标消息后,查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该信标消息的硬件ID,则将该邻居表项的坐标、角色以及资源ID集合分别更新为信标消息的坐标、角色以及资源ID集合域值,生命周期设置为最大值,例如100ms;否则该邻居车辆节点创建一个邻居表项,该邻居表项的硬件ID等于该信标消息的硬件ID,该邻居表项的坐标、角色以及资源ID集合分别更新为信标消息的坐标,角色以及资源ID集合域值,生命周期设置为最大值,例如100ms;步骤104:结束。车辆节点通过邻居表可以掌握邻居车辆节点的信息,根据角色域值来判断是否有邻居簇首,根据坐标域值可以选择最优的邻居车辆节点实现路由,根据资源ID集合可以直接从邻居车辆节点获取所需资源从而快速实现资源查询和配置。本专利技术所述方法中,检测消息包含消息类型、硬件ID、坐标和时间戳;检测响应消息包含消息类型、源硬件ID、源坐标、目的硬件ID、目的坐标和负载;加入消息包含消息类型、源硬件ID、源坐标、目的硬件ID、目的坐标、角色和负载;簇首维护一个成员表,一个成员表项包含硬件ID、坐标、资源ID集合、角色和生命周期;簇成员维护一个簇首表,一个簇首表项包含硬件ID,坐标和生命周期域;如果车辆节点V1准备加入一个簇,则执行下述操作:步骤201:开始;步骤202:车辆节点V1查看邻居表,如果存在一个邻居表项,该邻居表项的角色域值为1,则执行步骤203,否则执行步骤204;步骤203:车辆节点V1选择一个邻居表项,该邻居表项的角色域值等于1;车辆节点V1创建一个簇首表项,该簇首表项的硬件ID和坐标域值分别等于该邻居表项的硬件ID和坐标域值,生命周期设置为最大值;车辆节点V1发送一个加入消息,该加入消息的消息类型值为4,源硬件ID和源坐标分别为车辆节点V1的硬件ID和坐标,目的硬件ID和目的坐标为空,负载为该邻居表项的硬件ID和坐标,资源ID集合由车辆节点V1能够共享的资源的资源ID构成,角色域值为2,执行步骤215;步骤204:车辆节点V1发送一个检测消息,该检测消息的消息类型值为2,硬件ID和坐标域值分别等于车辆节点V1的硬件ID和坐标域值,时间戳为当前时间;车辆节点V1设置一个时钟T1;步骤205:车辆节点接收到检测消息后,如果该车辆节点为簇首,则执行步骤208,否则执行步骤206;步骤206:接收到检测消息的车辆节点查看当前时间与检测消息的时间戳之差的绝对值是否大于阈值T1,如果是,则执行步骤209,否则执行步骤207;步骤207:接收到检测消息的车辆节点转发该检测消息,执行步骤205;步骤208:接收到检测消息的车辆节点选择一个邻居表项,该邻居表项的坐标域值与该检测消息的坐标之间距离最小,发送一个检测响应消息,该检测响应消息的消息类型值为3,源硬件ID和源坐标分别等于该车辆节点的硬件ID和坐标,目的硬件ID和目的坐标分别等于该邻居表项的硬件ID和坐标,负载为该检测消息的硬件ID和坐标;步骤209:车辆节点接收到检测响应消息,如果该检测响应消息的目的坐标和目的硬件ID为空,则执行步骤210,否则执行步骤211;步骤210:接收到检测响应消息的车辆节点查看自己的硬件ID是否等于该检测响应消息负载中的硬件ID,如果是,则执行步骤213,否则执行步骤220;步骤211:接收到检测响应消息的车辆节点查看自己的硬件ID是否等于该检测响应消息的目的硬件ID,如果是,则执行步骤212,否则执行步骤220;步骤212:接收到检测响应消息的车辆节点查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该检测响应消息负载中的硬件ID,则将该检测响应消息的目的硬件ID和目的坐标设置为空,转发该检测响应消息;否则,该车辆节点选择一个邻居表项,该邻居表项的坐标与该检测响应消息负载中的坐标距离最近,将该检测响应消息的目的硬件ID和目的坐标分别更新为该邻居表项的硬件ID和坐标,转发该检测响应消息,执行步骤209;步骤213:如果车辆节点V1在时钟T1内没有接收到检测响应消息,则执行步骤220,否则执行步骤214;步骤214:车辆节点V1接收到检测响应消息后,选择一个邻居表项,该邻居表项的坐标与该检测响应消息的源坐标距离最近,发送一个加入消息,该加入消息的消息类型值为4,源硬件ID和源坐标分别等于车辆节点V1的硬件ID和坐标,目的硬件ID和坐标分别等于该邻居表项的硬件ID和坐标,角色域值为2,负载为该检测响应消息的源硬件ID和源坐标,资源ID集合等于车辆节点V1能够提供的资源的资源ID构成的集合;车辆节点V1创建一个簇首表项,该簇首表项的硬件ID和坐标分别等于该检测响应消息的源硬件ID和源坐标,生命周期设置为最大值;步骤215:车辆节点接收到加入消息,如果该加入消息本文档来自技高网...

【技术保护点】
1.一种基于车载云的网络资源查询和分配方法,其特征在于,所述网络车辆节点,所述网络划分为两个以上的簇,一个簇由两个以上的车辆节点构成,其中,这些车辆节点划分为簇首和簇成员,一个簇包含一个簇首和两个以上的簇成员;如果簇成员属于两个以上的簇,则该簇成员又称为簇网关;一个车辆节点由一个硬件ID唯一标识;一个车辆节点配置一种以上的资源,一种资源由一个资源ID唯一标识;车辆节点使用消息进行通信,一个消息由消息类型唯一标识,消息类型如下表所示:

【技术特征摘要】
1.一种基于车载云的网络资源查询和分配方法,其特征在于,所述网络车辆节点,所述网络划分为两个以上的簇,一个簇由两个以上的车辆节点构成,其中,这些车辆节点划分为簇首和簇成员,一个簇包含一个簇首和两个以上的簇成员;如果簇成员属于两个以上的簇,则该簇成员又称为簇网关;一个车辆节点由一个硬件ID唯一标识;一个车辆节点配置一种以上的资源,一种资源由一个资源ID唯一标识;车辆节点使用消息进行通信,一个消息由消息类型唯一标识,消息类型如下表所示:消息类型值消息名称1信标消息2检测消息3检测响应消息4加入消息5更新消息6更新响应消息7构建消息8请求消息9响应消息10二次请求消息每个车辆节点维护一个邻居表,一个邻居表项包含硬件ID、坐标、资源ID集合、角色域和生命周期域;如果角色域值为1,则表示该邻居表项对应的车辆节点为簇首;如果角色域值为2,则表示该邻居表项对应的车辆节点为簇成员;如果角色域值为3,则表示该邻居表项对应的车辆节点为簇网关;如果角色域值为4,则表示该邻居表项对应的车辆节点既不是簇首,也不是簇成员或者簇网关;一个信标消息由消息类型,硬件ID、坐标、角色和资源ID集合构成;车辆节点V1定期执行下述操作:步骤101:开始;步骤102:车辆节点V1定期发送信标消息,该信标消息的消息类型值为1,硬件ID为车辆节点V1的硬件ID,坐标为车辆节点V1的坐标,资源ID集合由车辆节点V1能够共享的资源的资源ID构成;如果车辆节点V1为簇首,则角色域值设为1,如果车辆节点V1为簇成员,则角色域值设为2,如果车辆节点为簇网关,则角色域值设为3,否则,角色域值设为4;步骤103:邻居车辆节点接收到信标消息后,查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该信标消息的硬件ID,则将该邻居表项的坐标、角色以及资源ID集合分别更新为信标消息的坐标、角色以及资源ID集合域值,生命周期设置为最大值;否则该邻居车辆节点创建一个邻居表项,该邻居表项的硬件ID等于该信标消息的硬件ID,该邻居表项的坐标、角色以及资源ID集合分别更新为信标消息的坐标,角色以及资源ID集合域值,生命周期设置为最大值;步骤104:结束。2.根据权利要求1所述的一种基于车载云的网络资源查询和分配方法,其特征在于,检测消息包含消息类型、硬件ID、坐标和时间戳;检测响应消息包含消息类型、源硬件ID、源坐标、目的硬件ID、目的坐标和负载;加入消息包含消息类型、源硬件ID、源坐标、目的硬件ID、目的坐标、角色和负载;簇首维护一个成员表,一个成员表项包含硬件ID、坐标、资源ID集合、角色和生命周期;簇成员维护一个簇首表,一个簇首表项包含硬件ID,坐标和生命周期域;如果车辆节点V1准备加入一个簇,则执行下述操作:步骤201:开始;步骤202:车辆节点V1查看邻居表,如果存在一个邻居表项,该邻居表项的角色域值为1,则执行步骤203,否则执行步骤204;步骤203:车辆节点V1选择一个邻居表项,该邻居表项的角色域值等于1;车辆节点V1创建一个簇首表项,该簇首表项的硬件ID和坐标域值分别等于该邻居表项的硬件ID和坐标域值,生命周期设置为最大值;车辆节点V1发送一个加入消息,该加入消息的消息类型值为4,源硬件ID和源坐标分别为车辆节点V1的硬件ID和坐标,目的硬件ID和目的坐标为空,负载为该邻居表项的硬件ID和坐标,资源ID集合由车辆节点V1能够共享的资源的资源ID构成,角色域值为2,执行步骤215;步骤204:车辆节点V1发送一个检测消息,该检测消息的消息类型值为2,硬件ID和坐标域值分别等于车辆节点V1的硬件ID和坐标域值,时间戳为当前时间;车辆节点V1设置一个时钟T1;步骤205:车辆节点接收到检测消息后,如果该车辆节点为簇首,则执行步骤208,否则执行步骤206;步骤206:接收到检测消息的车辆节点查看当前时间与检测消息的时间戳之差的绝对值是否大于阈值T1,如果是,则执行步骤209,否则执行步骤207;步骤207:接收到检测消息的车辆节点转发该检测消息,执行步骤205;步骤208:接收到检测消息的车辆节点选择一个邻居表项,该邻居表项的坐标域值与该检测消息的坐标之间距离最小,发送一个检测响应消息,该检测响应消息的消息类型值为3,源硬件ID和源坐标分别等于该车辆节点的硬件ID和坐标,目的硬件ID和目的坐标分别等于该邻居表项的硬件ID和坐标,负载为该检测消息的硬件ID和坐标;步骤209:车辆节点接收到检测响应消息,如果该检测响应消息的目的坐标和目的硬件ID为空,则执行步骤210,否则执行步骤211;步骤210:接收到检测响应消息的车辆节点查看自己的硬件ID是否等于该检测响应消息负载中的硬件ID,如果是,则执行步骤213,否则执行步骤220;步骤211:接收到检测响应消息的车辆节点查看自己的硬件ID是否等于该检测响应消息的目的硬件ID,如果是,则执行步骤212,否则执行步骤220;步骤212:接收到检测响应消息的车辆节点查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该检测响应消息负载中的硬件ID,则将该检测响应消息的目的硬件ID和目的坐标设置为空,转发该检测响应消息;否则,该车辆节点选择一个邻居表项,该邻居表项的坐标与该检测响应消息负载中的坐标距离最近,将该检测响应消息的目的硬件ID和目的坐标分别更新为该邻居表项的硬件ID和坐标,转发该检测响应消息,执行步骤209;步骤213:如果车辆节点V1在时钟T1内没有接收到检测响应消息,则执行步骤220,否则执行步骤214;步骤214:车辆节点V1接收到检测响应消息后,选择一个邻居表项,该邻居表项的坐标与该检测响应消息的源坐标距离最近,发送一个加入消息,该加入消息的消息类型值为4,源硬件ID和源坐标分别等于车辆节点V1的硬件ID和坐标,目的硬件ID和坐标分别等于该邻居表项的硬件ID和坐标,角色域值为2,负载为该检测响应消息的源硬件ID和源坐标,资源ID集合等于车辆节点V1能够提供的资源的资源ID构成的集合;车辆节点V1创建一个簇首表项,该簇首表项的硬件ID和坐标分别等于该检测响应消息的源硬件ID和源坐标,生命周期设置为最大值;步骤215:车辆节点接收到加入消息,如果该加入消息的目的坐标和目的硬件ID为空,则执行步骤216,否则执行步骤217;步骤216:接收到加入消息的车辆节点查看自己的硬件ID是否等于该加入消息负载中的硬件ID,如果是,则执行步骤219,否则执行步骤220;步骤217:接收到加入消息的车辆节点查看自己的硬件ID是否等于该加入消息的目的硬件ID,如果是,则执行步骤218,否则执行步骤220;步骤218:接收到加入消息的车辆节点查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该加入消息负载中的硬件ID,则将该加入消息的目的硬件ID和目的坐标设置为空,转发该加入消息;否则,该车辆节点选择一个邻居表项,该邻居表项的坐标与该加入消息负载中的坐标距离最近,将该加入消息的目的硬件ID和目的坐标分别更新为该邻居表项的硬件ID和坐标,转发该加入消息,执行步骤215;步骤219:接收到加入消息的车辆节点创建一个成员表项,该成员表项的硬件ID和坐标分别等于该加入消息的源硬件ID和源坐标,角色域值和资源ID集合分别等于该加入消息的角色域值和资源ID集合,生命周期设置为最大值;步骤220:结束。3.根据权利要求2所述的一种基于车载云的网络资源查询和分配方法,其特征在于,如果一个簇成员检测到自己的簇首表项的个数大于1,则将自己标记为簇网关;更新消息包含消息类型、源硬件ID、源坐标、目的硬件ID、目的坐标、角色和负载;更新响应消息包含消息类型、源硬件ID、源坐标、目的硬件ID、目的坐标和负载;簇成员M1定期执行下述操作更新簇首表和成员表:步骤301:开始;步骤302:簇成员M1查看簇首表,针对每个簇首表项,簇成员M1执行下述操作:簇成员M1查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该簇首表项的硬件ID,则发送一个更新消息,该更新消息的消息类型值为5,源硬件ID和坐标分别等于簇成员M1的硬件ID和坐标,目的硬件ID和目的坐标设置为空,负载为该邻居表项的硬件ID和坐标,如果簇成员M1的簇首表项的个数等于1,则角色域值设为2,否则角色域值设为3;如果不存在所述邻居表项,则簇成员M1选择一个邻居表项,该邻居表项的坐标与该簇首表项的坐标距离最近,发送一个更新消息,该更新消息的消息类型值为5,源硬件ID和坐标分别等于簇成员M1的硬件ID和坐标,目的硬件ID和目的坐标分别等于该邻居表项的硬件ID和坐标,负载为该簇首表项的硬件ID和坐标,如果簇成员M1的簇首表项的个数等于1,则角色域值设为2,否则角色域值设为3;步骤303:车辆节点接收到更新消息;如果该更新消息的目的坐标和目的硬件ID为空,则执行步骤304,否则执行步骤305;步骤304:接收到更新消息的车辆节点查看自己的硬件ID是否等于该更新消息负载中的硬件ID,如果是,则执行步骤307,否则执行步骤313;步骤305:接收到更新消息的车辆节点查看自己的硬件ID是否等于该更新消息的目的硬件ID,如果是,则执行步骤306,否则执行步骤313;步骤306:接收到更新消息的车辆节点查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该更新消息负载中的硬件ID,则将该更新消息的目的硬件ID和目的坐标设置为空,转发该更新消息;否则,该车辆节点选择一个邻居表项,该邻居表项的坐标与该更新消息负载中的坐标距离最近,将该更新消息的目的硬件ID和目的坐标分别更新为该邻居表项的硬件ID和坐标,转发该更新消息,执行步骤303;步骤307:车辆节点接收到更新消息后,查看成员表,选择一个成员表项,该成员表项的硬件ID等于该更新消息的源硬件ID,将该成员表项的坐标更新为该更新消息的源坐标,角色域值更新为该更新消息的角色域值,将生命周期设置为最大值;该车辆节点查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该更新消息的源硬件ID,则发送一个更新响应消息,该更新响应消息的消息类型值为6,源硬件ID和坐标分别等于该车辆节点的硬件ID和坐标,目的硬件ID和目的坐标设置为空,负载为该邻居表项的硬件ID和坐标;否则,该车辆节点选择一个邻居表项,该邻居表项的坐标与该更新消息的源坐标距离最近,发送一个更新响应消息,该更新响应消息的消息类型值为6,源硬件ID和坐标分别等于该车辆节点的硬件ID和坐标,目的硬件ID和目的坐标分别等于该邻居表项的硬件ID和坐标,负载为该更新消息的源硬件ID和坐标;步骤308:车辆节点接收到更新响应消息,如果该更新响应消息的目的坐标和目的硬件ID为空,则执行步骤309,否则执行步骤310;步骤309:接收到更新响应消息的车辆节点查看自己的硬件ID是否等于该更新响应消息负载中的硬件ID,如果是,则执行步骤312,否则执行步骤313;步骤310:接收到更新响应消息的车辆节点查看自己的硬件ID是否等于该更新响应消息的目的硬件ID,如果是,则执行步骤311,否则执行步骤313;步骤311:接收到更新响应消息的车辆节点查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该更新响应消息负载中的硬件ID,则将该更新响应消息的目的硬件ID和目的坐标设置为空,转发该更新响应消息;否则,该车辆节点选择一个邻居表项,该邻居表项的坐标与该更新响应消息负载中的坐标距离最近,将该更新响应消息的目的硬件ID和目的坐标分别更新为该邻居表项的硬件ID和坐标,转发该更新响应消息,执行步骤308;步骤312:接收到更新响应消息的车辆节点选择一个簇首表项,该簇首表项的硬件ID等于该更新响应消息的源硬件ID,将该簇首表项的坐标更新为该更新响应消息的源坐标,将生命周期设置为最大值;步骤313:结束。4.根据权利要求3所述的一种基于车载云的网络资源查询和分配方法,其特征在于,构建消息包含消息类型、硬件ID、坐标和时间戳;如果车辆节点V1在执行步骤201~220之后簇首表项的个数为0,则执行下述过程创建簇:步骤401:开始;步骤402:车辆节点V1发送一个构建消息,该构建消息的消息类型值为7,硬件ID和坐标域值分别等于车辆节点V1的硬件ID和坐标域值,时间戳为当前时间;步骤403:车辆节点接收到构建消息,如果该车辆节点能够提供的资源的资源ID集合为空,则执行步骤406,否则执行步骤404:步骤404:接收到构建消息的车辆节点查看邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该构建消息的源硬件ID,则发送一个加入消息,该加入消息的消息类型值为4,源硬件ID和源坐标分别等于该车辆节点的硬件ID和坐标,目的硬件ID和坐标分别等于空,如果该车辆节点的簇首表项的个数为0,则角色域值设为2,否则角色域值设为3,负载为该构建消息的源硬件ID和源坐标,资源ID集合等于该车辆节点能够提供的资源的资源ID构成的...

【专利技术属性】
技术研发人员:王晓喃闫海英李燕丽
申请(专利权)人:常熟理工学院
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1