欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2019106274493
申请人: 常熟理工学院
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2024-04-29
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种基于命名数据网络的车载云实现方法,其特征在于,所述车载云包括接入节点和车辆节点;每个接入节点和车辆节点各自分别具有唯一的硬件ID,每个接入节点各自分别具有唯一的坐标,一个接入节点和所有符合条件1的车辆节点构成一个域;

条件1:在所有接入节点中,该车辆节点的当前坐标与该接入节点的坐标之间的距离最近;

一种数据由名称唯一标识;

车载云内传输的消息由消息类型定义,消息名称对应的消息类型如下表所示:消息名称 消息类型

邻居消息 1

注册消息 2

云请求消息 3

云响应消息 4

请求消息 5

响应消息 6

每个车辆节点保存一个邻居表,邻居表的每个邻居表项包含硬件ID、车辆坐标和生命周期;

车载云内传输的邻居消息包含消息类型、硬件ID和车辆坐标;车辆节点V1定期执行下述操作:步骤101:开始;

步骤102:车辆节点V1发送邻居消息,邻居消息的消息类型为1,车辆坐标为车辆节点V1的当前坐标,硬件ID为车辆节点V1的硬件ID;

步骤103:接收到邻居消息的其他车辆节点查看自己邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该邻居消息的硬件ID,则执行步骤104,否则执行步骤105;

步骤104:接收到邻居消息的车辆节点选择一个邻居表项,该邻居表项的硬件ID等于该邻居消息的硬件ID,将该邻居表项的车辆坐标更新为邻居消息的车辆坐标,将生命周期设置为最大值,执行步骤106;

步骤105:接收到邻居消息的车辆节点创建一个邻居表项,该邻居表项的硬件ID等于该邻居消息的硬件ID,车辆坐标等于该邻居消息的车辆坐标,将生命周期设置为最大值;

步骤106:结束;

如果邻居表项的生命周期等于0,则从邻居表中删除该邻居表项。

2.根据权利要求1所述的一种基于命名数据网络的车载云实现方法,其特征在于,接入节点AP1定期执行下述操作:步骤201:开始;

步骤202:接入节点AP1发送邻居消息,邻居消息的消息类型为1,车辆坐标为接入节点AP1的当前坐标,硬件ID为接入节点AP1的硬件ID;

步骤203:接收到邻居消息的车辆节点查看自己的邻居表,如果存在一个邻居表项,该邻居表项的硬件ID等于该邻居消息的硬件ID,则执行步骤204,否则执行步骤205;

步骤204:接收到邻居消息的车辆节点选择一个邻居表项,该邻居表项的硬件ID等于该邻居消息的硬件ID,将该邻居表项的车辆坐标更新为邻居消息的车辆坐标,将生命周期设置为最大值,执行步骤206;

步骤205:接收到邻居消息的车辆节点创建一个邻居表项,该邻居表项的硬件ID等于该邻居消息的硬件ID,车辆坐标等于该邻居消息的车辆坐标,将生命周期设置为最大值;

步骤206:结束;

如果邻居表项的生命周期衰减为0,则从邻居表中删除该邻居表项。

3.根据权利要求1所述的一种基于命名数据网络的车载云实现方法,其特征在于,一个注册消息包含硬件ID、名称集合、车辆坐标、下一跳和目的坐标;

接入节点保存一个节点表,节点表的节点表项包含硬件ID、名称、坐标和生命周期;

在车辆节点V1能提供数据,车辆节点V1提供的数据的名称构成名称集合NS1,车辆节点V1所在域的接入节点为AP1的条件下,车辆节点V1定期执行下述操作:步骤301:开始;

步骤302:车辆节点V1查看邻居表,选择一个邻居表项,在所有的邻居表项中,该邻居表项的车辆坐标与接入节点AP1的坐标距离最近;车辆节点V1发送一个注册消息,注册消息的消息类型为2,硬件ID为车辆节点V1的硬件ID,名称集合为集合NS1,车辆坐标等于车辆节点V1的当前坐标,下一跳等于该邻居表项的硬件ID,目的坐标等于接入节点AP1的坐标;

步骤303:接入节点AP1如果接收到硬件ID为车辆节点V1的硬件ID的注册消息,则执行步骤306,否则执行步骤304;

步骤304:接收到注册消息的其他车辆节点查看自己的硬件ID是否与该注册消息的下一跳相同,如果相同,则执行步骤305,否则执行步骤306;

步骤305:接收到注册消息的车辆节点选择一个邻居表项,该邻居表项的车辆坐标与该注册消息目的坐标距离最近,将该注册消息的下一跳更新为该邻居表项的硬件ID,发送该注册消息,执行步骤303;

步骤306:接入节点AP1接收到注册消息后查看节点表;针对该注册消息名称集合中的每个名称NA0,接入节点AP1执行下述操作:接入节点AP1判断是否存在一个节点表项,该节点表项的硬件ID等于该注册消息的硬件ID且名称等于NA0;如果存在,则将该节点表项的车辆坐标更新为该注册消息的车辆坐标,将生命周期设置为最大值,否则,接入节点AP1创建一个节点表项,该节点表项的硬件ID等于该注册消息的硬件ID,名称等于NA0,车辆坐标为该注册消息的车辆坐标,将生命周期设置为最大值;

步骤307:结束。

4.根据权利要求1所述的一种基于命名数据网络的车载云实现方法,其特征在于,在车辆节点V1的硬件ID为HID1,车辆节点V2的硬件ID为HID2,车辆节点V1和车辆节点V2位于同一个域,该域的接入节点为接入节点AP1,从车辆节点V1到车辆节点V2的路径由硬件ID集合标识,该硬件ID集合由该路由所包含的车辆节点的硬件ID构成的条件下,接入节点AP1通过下述过程建立从车辆节点V1到车辆节点V2的路径的硬件ID集合:步骤401:开始;

步骤402:接入节点AP1设置一个硬件ID集合变量hs1,变量hs1的初始值为空;接入节点AP1选择一个节点表项E1,节点表项E1的硬件ID等于HID1,接入节点AP1选择一个节点表项E2,节点表项E2的硬件ID等于HID2;如果节点表项E2的车辆坐标与节点表项E1的车辆坐标之间的距离不大于传输半径R,则执行步骤406,否则执行步骤403;

步骤403:接入节点AP1选择一个节点表项E3,节点表项E3的车辆坐标与节点表项E1的车辆坐标之间的距离不大于传输半径R,且在除了节点表项E2以外的所有节点表项中,节点表项E3的车辆坐标与节点表项E2的车辆坐标之间的距离最小,接入节点AP1将节点表项E3的硬件ID加入到变量hs1中并作为最后一个元素;

步骤404:接入节点AP1选择一个节点表项E4,节点表项E4的硬件ID等于变量hs1的最后一个元素;如果节点表项E4的车辆坐标与接入节点E2的车辆坐标之间的距离不大于传输半径R,则执行步骤406,否则执行步骤405;

步骤405:接入节点AP1选择一个节点表项E5,节点表项E5的车辆坐标与节点表项E4的车辆坐标之间的距离不大于传输半径R,且在除了节点表项E2以外的所有节点表项中,节点表项E5的车辆坐标与节点表项E2的车辆坐标之间的距离最小,接入节点AP1将节点表项E5的硬件ID加入到变量hs1中并作为最后一个元素,执行步骤404;

步骤406:接入节点AP1将节点表项E2的硬件ID加入到变量hs1中并作为最后一个元素;

步骤407:结束。

5.根据权利要求4所述的一种基于命名数据网络的车载云实现方法,其特征在于;在车辆节点V1的硬件ID为HID1,所在域的接入节点为接入节点AP1,从接入节点AP1到车辆节点V1的路由路径由硬件ID集合表示,该硬件ID集合由该路由路径所包含的车辆节点的硬件ID构成的条件下,接入节点AP1执行下述操作获取该硬件ID集合:步骤501:开始;

步骤502:接入节点AP1设置一个硬件ID集合参数hs2,参数hs2的初始值为空集,接入节点AP1选择一个节点表项T1,节点表项T1的硬件ID等于HID1;如果接入节点AP1的坐标与节点表项T1的车辆坐标之间的距离不大于传输半径R,则执行步骤506,否则执行步骤503;

步骤503:接入节点AP1选择一个节点表项T2,节点表项T2的车辆坐标域值与接入节点AP1的车辆坐标域值之间的距离不大于传输半径R,且在除了节点表项T1以外的所有节点表项中,节点表项T2的车辆坐标域值与节点表项T1的车辆坐标域值之间的距离最小,接入节点AP1将节点表项T2的硬件ID加入到参数hs2并作为最后一个元素;

步骤504:接入节点AP1选择节点表项T3,节点表项T3的硬件ID等于参数hs2的最后一个元素,如果节点表项T3的车辆坐标与节点表项T1的车辆坐标之间的距离不大于传输半径R,则执行步骤506,否则执行步骤505;

步骤505:接入节点AP1选择一个节点表项T4,节点表项T4的车辆坐标与节点表项T3的车辆坐标之间的距离不大于传输半径R,且在除了节点表项T1以外的所有节点表项中,节点表项T4的车辆坐标与节点表项T1的车辆坐标之间的距离最小,将节点表项T4的硬件ID加入到参数hs2中并作为最后一个元素,执行步骤504;

步骤506:接入节点AP1将硬件ID HID1加入到参数hs2中并作为最后一个元素;

步骤507:结束。

6.根据权利要求5所述的一种基于命名数据网络的车载云实现方法,其特征在于;车辆节点通过提供者表来获取数据,提供者表的提供者表项包含名称和硬件ID集合;

车辆节点V1所在域的接入节点为AP1;

云请求消息包含消息类型、硬件ID、名称集合、下一跳和目的坐标;

云响应消息包含消息类型、硬件ID集合、名称集合和负载;

请求消息包含消息类型、硬件ID、硬件ID集合、名称和负载;

响应消息包含消息类型、硬件ID集合、名称和负载;

车辆节点V1需要获取数据,这些数据的名称构成名称集合NS2;

步骤601:开始;

步骤602:车辆节点V1查看邻居表,选择一个邻居表项,在所有邻居表项中,该邻居表项的车辆坐标与接入节点AP1的坐标距离最近;车辆节点V1发送一个云请求消息,云请求消息的消息类型为3,硬件ID为车辆节点V1的硬件ID,名称集合为集合NS2,下一跳等于该邻居表项的硬件ID,目的坐标等于接入节点AP1的坐标;

步骤603:接入节点AP1如果接收到该云请求消息,则执行步骤606,否则执行步骤604;

步骤604:接收到云请求消息的其他车辆节点判断自己的硬件ID是否与该云请求消息的下一跳相同,如果相同,则执行步骤605,否则执行步骤606;

步骤605:接收到云请求消息的车辆节点选择一个邻居表项,该邻居表项的车辆坐标与该云请求消息目的坐标距离最近,将该云请求消息的下一跳更新为该邻居表项的硬件ID,接收到云请求消息的车辆节点发送该云请求消息,执行步骤603;

步骤606:接入节点AP1接收到云请求消息后执行步骤501-507获取硬件ID集合hs2,集合hs2代表接入节点AP1到达一个车辆节点的路径,该车辆节点的硬件ID等于该云请求消息的硬件ID;接入节点AP1创建一个提供者表,针对云请求消息的名称集合中的每个名称NA1,接入节点AP1执行下述操作:选择一个节点表项,该节点表项的名称等于NA1,执行步骤401-

407获取硬件ID集合hs1,集合hs1代表硬件ID等于该云请求消息的硬件ID的车辆节点到达硬件ID等于该节点表项的硬件ID的车辆节点的路径,创建一个提供者表项,该提供者表项的硬件ID集合等于集合hs1,名称等于NA1;

步骤607:接入节点AP1发送一个云响应消息,该云响应消息的消息类型为4,硬件ID集合为集合hs2,名称集合等于该云请求消息的名称集合,负载为构建的提供者表;

步骤608:车辆节点V1如果接收到该云响应消息,则执行步骤611,否则执行步骤609;

步骤609:接收到该云响应消息的车辆节点判断自己的硬件ID是否等于该云响应消息的硬件ID集合中的第一个元素,如果等于,则执行步骤610,否则执行步骤611;

步骤610:接收到该云响应消息的车辆节点从该云响应消息的硬件ID集合中删除第一个元素,发送该云响应消息,执行步骤608;

步骤611:车辆节点V1接收到该云响应消息后,针对该云响应消息负载中的每个提供者表项,车辆节点V1执行下述操作:车辆节点V1发送一个请求消息,该请求消息的消息类型为

5,硬件ID等于车辆节点V1的硬件ID,硬件ID集合和名称分别等于该提供者表项的硬件ID集合和名称,负载为该提供者表项的硬件ID集合;

步骤612:接收到请求消息的车辆节点查看自己的硬件ID是否等于该请求消息的硬件ID集合中的第一个元素,如果等于,则执行步骤613,否则执行步骤615;

步骤613:接收到该请求消息的车辆节点从该请求消息的硬件ID集合中删除第一个元素,如果该请求消息的硬件ID集合为空,则执行步骤615,否则执行步骤614;

步骤614:接收到该请求消息的车辆节点转发该请求消息,执行步骤612;

步骤615:接收到该请求消息的车辆节点构建一个响应消息,该响应消息的消息类型为

6,硬件ID集合等于该请求消息负载中的硬件ID集合,名称等于该请求消息的名称,负载为该请求消息名称所标识的数据;该车辆节点从该响应消息硬件ID集合中删除最后一个元素,将请求消息的硬件ID加入到该响应消息硬件ID集合中并作为第一个元素;该车辆节点发送该响应消息;

步骤616:接收到该响应消息的车辆节点查看自己的硬件ID是否等于该响应消息的硬件ID集合中的最后一个元素,如果等于,则执行步骤617,否则执行步骤619;

步骤617:接收到该响应消息的车辆节点从该响应消息的硬件ID集合中删除最后一个元素,如果该响应消息的硬件ID集合为空,则执行步骤619,否则执行步骤618;

步骤618:接收到该响应消息的车辆节点转发该响应消息,执行步骤616;

步骤619:接收到该响应消息的车辆节点保存该响应消息负载中的数据,如果该车辆节点获取了名称集合NS2所定义的所有数据,则执行步骤620,否则执行步骤616;

步骤620:结束。