CN110213359B - 一种基于d2d的车联网组网数据推送系统和方法 - Google Patents
一种基于d2d的车联网组网数据推送系统和方法 Download PDFInfo
- Publication number
- CN110213359B CN110213359B CN201910438586.2A CN201910438586A CN110213359B CN 110213359 B CN110213359 B CN 110213359B CN 201910438586 A CN201910438586 A CN 201910438586A CN 110213359 B CN110213359 B CN 110213359B
- Authority
- CN
- China
- Prior art keywords
- data
- node
- nodes
- cloud
- neighbor
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/44—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/248—Connectivity information update
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于D2D的车联网组网数据推送系统,系统包括云端部分、主节点部分、从节点部分三部分。本发明具有优化和升级组网结构、节省公网带宽资源、优化单一节点资源、集成方式简单、去中心化、高可用、信息更新及时、推送丢失主动更新等特点,适用于公交车、出租车等大中型公共交通服务中的信息调度系统架构。本发明解决了公交车系统、出租车系统由于使用老式GSM通信导致数据传输速率低与数据同步不及时等问题,而全局使用运营商公网通信的技术方案又造成大量流量浪费和通信安全性低等问题。
Description
技术领域
本发明属于互联网通信技术领域,具体涉及一种基于D2D的车联网组网数据推送系统和方法。
背景技术
随着科技的发展,未来的车联网通信系统需要更快的数据同步速率和高可用性,而目前的车联网推送系统采用基于GSM的中心化网络架构,所有数据一并由使用运营商网络的中心节点下发,同一个网络下的除中心节点外的其他节点之间无法实现相互通信,中心节点一旦崩溃则整个系统将无法正常工作;由于使用GSM通信数据传输速率低、延迟高,在通信中容易造成数据同步不及时,并且所有流量必须经过运营商网络之后再进行下发,造成大量流量与资源开销。因此采用哪种解决方案来提高系统的运作效率、提高数据的传输速率和更大程度上减少运营商网络的消耗成为了一个新的问题。
不同于传统的车联网中心化网络架构,本发明提出了一种采用云主从结构的D2D的车联网组网数据推送系统,实现了去中心化,不会存在传统车联网中核心节点崩溃导致整个系统无法正常工作的问题,从而保证了整个系统的稳定性、可用性;每个节点可直接通过D2D信道与邻近节点直接通信;由于使用D2D进行通信,传输速率比GSM更高,延迟更低,而主节点与从节点之间和与从节点之间不需要经过运营商网络再进行数据下发,有效的节约了在运营商网络中流量开销,可适用于多节点、高流量的公共交通服务中的信息调度系统架构。
发明内容
本发明的目的在于克服现有技术的不足,针对目前的车联网推送系统存在的问题,提出一种基于D2D的车联网数据推送系统,可以有效提高了数据传输效率和节约运营商网络流量开销,满足未来车联网更高可靠性、更低延迟的需求。
为实现上述技术目的,本发明采用以下技术方案。
一方面,本发明提供基于D2D的车联网组网数据推送方法,,包括以下步骤:
云端生成新数据并对新数据进行归一化处理;
设定不少于3个的主节点以及多个从节点;所述主节点和从节点都具有D2D通信设备和运营商网络通信设备;
云端生成新数据对应的哈希码并主动或在接收主节点的数据同步请求后将新数据及其哈希码下发到主节点;
主节点根据从云端获取的数据再次生成哈希码并将其与从云端获取的新数据对应的哈希码进行比较,若相同则校验通过接受云端下发的数据,若不相同则校验不通过主节点发出数据下发异常的消息;
每个节点根据各个节点的信号质量从高到低的顺序搜索确定其邻居节点;若节点没有搜索到其邻居节点,则该节点直接通过运营商通信网络与主节点建立邻居;
主节点完成从云端接收数据后,主节点主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该主节点接收过数据及哈希码的节点推送数据,从节点接收数据后主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该从节点接收过数据及哈希码邻居节点推送数据,直至所有节点完成数据推送。
进一步地,每个节点根据各个节点的信号质量从高到低的顺序搜索确定其邻居节点的方法包括以下步骤:
确定各个节点的带宽、延迟、负载以及通信节点数信息,根据获得的这些信息计算出每个节点与其它节点的信号质量;记录每个节点的主机名、IP地址、节点角色与信号质量;
每个节点按照信号质量从高到低的顺序尝试与其它没有被其设置失败标签的节点发送建立邻居请求,当对方发出接受的响应请求则与对方建立邻居关系,如果对方未响应或发送拒绝的响应请求则为对方设置失败标签;
若所有其它节点都被该节点设置了失败标签,则将该节点直接通过运营商网络与主节点建立邻居。
再进一步地,当邻居建立之后,每个节点会每隔设定时间尝试与其邻居节点发送邻居状态请求消息,若该节点在设定时间内没有收到回复,则再次发送邻居状态请求消息,若设定时间内之内还没有收到回复,则将除该邻居节点之外的其他所有节点取消设置失败标签,将该邻居设置失败标签,并重新根据各个节点的信号质量从高到低的顺序搜索确定其邻居节点。
进一步地,主节点记录当前时间与最近一次数据更新的时间,如果时间差大于预设的值时,主节点向云端发送数据同步请求信息并将请求日志保存;从节点记录当前时间与最近一次数据更新时间的时间差,当时间差大于预设的值时则向其邻居节点发送请求数据同步的请求信息。
在另一方面,本发明提供了基于D2D的车联网组网数据推送系统,包括云端、至少三个主节点和多个从节点;所述主节点和从节点都具有D2D通信设备和运营商网络通信设备;其中云端包括:
数据生成器,用于生成新数据并对新数据进行归一化处理;
云端数据更新器,用于根据数据生成器生成的数据生成新数据对应的哈希码并将其及新数据发送至数据下发器;
云端数据下发器,用于将新数据及其对应的哈希码下发到主节点以及接收从主节点的数据请求同步模块发送的完成数据下发消息;
云端存储器,用于存储云端操作日志以及数据同步状态信息;
所述主节点和从节点均包括:
邻域节点表,用于显示其他节点与自身节点的通信质量列表并根据各个节点的信号质量从高到低的顺序搜索确定其邻居节点;若节点没有搜索到其邻居节点,则该节点直接通过运营商网络与主节点建立邻居;
数据推送器,用于主节点完成从云端接收数据后,主节点主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该主节点接收过数据及哈希码的节点推送数据,从节点接收数据后主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该从节点接收过数据及哈希码邻居节点推送数据;
数据请求同步模块,用于通过向云端节点请求同步数据以及用于当主节点接收完云端下发数据后向云端的数据下发器发送完成数据下发的消息。
进一步地,所述主节点和从节点还包括数据更新定时器,主节点上的数据更新定时器用于计算当前时间与最近一次数据更新时间的时间差,当时间差大于预设的值时向云端发送数据同步请求信息并将请求日志保存;从节点的数据跟新定时器记录当前时间与最近一次数据更新时间的时间差,当时间差大于预设的值时则向其邻居节点发送请求数据同步的请求信息。
进一步地,所述云端还包括数据下发监控器,用于监听云端数据下发器是否收到了从主节点的数据请求同步模块发送的完成数据下发消息,若收到了消息则云端的数据下发器向主节点下发数据;若未完成则将调度数据下发器再次进行数据下发,并将日志发送至数据存储器。
再进一步地,当云端的数据下发监控器监控到云端数据下发器收到了从主节点的数据请求同步模块发送的完成数据下发消息后,所述数据更新器将云端现存的所有数据内容进行合并,并根据数据内容生成新的数据的哈希码,记录生成数据的时间并将数据及数据同步状态信息日志送入数据存储器。
本发明与现有技术相比有以下优点:
第一,由于本发明基于D2D邻近通信服务为基础,解决延时和可靠性问题,提升了数据推送的速度。
第二,由于本发明基于D2D通信模式为基础,采用云主从模式,数据下发速度快而及时,同时传输延迟低、速率高,满足车联网中高带宽低延迟的要求。
第三,由于本发明采用云端与主节点通信的方式,缓解了公网通信的压力,一定程度上节约了公网通信消耗的流量。
第四,由于本发明采用了主从结合的节点通信模式,易于数据同步和数据快速转发,节省了信息同步时间,保证数据时效性。
第五,由于本发明基于D2D通信模式为基础,通过私有网络实现通信,与外部公网隔离,增强了数据安全性。
第六,由于本发明采用分发式服务集群,使得服务时刻处于高可用状态,保证了系统运行的稳定性,极大提高了服务的处理能力和处理效率。
第七,由于本发明采用分发式服务系统,可以根据用户的数量和服务要求弹性水平扩展和收缩服务节点的数量,减少运行成本和运维的维护成本;
第八,由于本发明采用云主从结构,具有去中心化性质,主节点数量在3台以上,不会因为存在中心化系统中由于中心节点存在数据传输瓶颈,一个节点出现错误不会影响整个系统的正常运行,网络依旧完整,系统中的其他节点依旧正常工作,具备高可用性;
第九,由于本发明在三部分均进行进行定时计划备份,数据异地容灾,从而保证数据持久化存储的稳定性,不会存在推送数据丢失的问题。
附图说明
图1为本发明所述基于D2D的车联网组网数据推送系统工作流程图示意;
图2为本发明所述基于D2D的车联网组网数据推送系统硬件架构图示意;
图3为本发明所述基于D2D的车联网组网数据推送系统结构框图示意;
图4为本发明所述基于D2D的车联网组网数据推送系统邻域节点表路由图示意;
图5为本发明所述基于D2D的车联网组网数据推送系统邻居选举流程图示意。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
参阅图1、图2、图3、图5,在本发明实施例中,提供了一种基于D2D的车联网组网数据推送系统,包括云端、主节点、从节点三个部分,在系统中,主节点为性能较强的车联网节点,从节点为性能较为一般的节点,主节点和从节点都具有D2D通信设备和运营商网络通信设备。主节点和从节点的角色由相关人员专门设置,主节点的数量不少于三个,数量由相关人员根据车联网拓扑规模弹性扩缩,
其中主节点的功能主要是从云端获取推送数据并下发至与其建立邻居的从节点,
从节点的功能是从邻居节点(从节点或主节点)获取更新消息与其建立的邻居(其他从节点)同步推送数据。
云端由数据存储器、数据生成器、云端数据更新器、云端数据下发器、云端下发监控器组成;
云端数据存储器,用于存储源数据、云端日志数据与增量更新数据,定期备份数据;
数据生成器,用于新数据的生成,对数据的格式、大小、内容进行归一化;
云端数据更新器,用于根据数据生成器生成的数据生成新数据对应的哈希码并将其及新数据发送至数据下发器;
云端数据下发器,用于将新数据及其对应的哈希码下发到主节点以及接收从主节点的数据请求同步模块发送的完成数据下发消息;
云端数据下发监控器,用于监听云端数据下发器是否收到了从主节点的数据请求同步模块发送的完成数据下发消息,若收到了消息则云端的数据下发器向主节点下发数据;若未完成则将调度数据下发器再次进行数据下发,并将日志发送至数据存储器。
主节点由数据更新定时器、数据推送器、邻域节点表、数据存储器、数据请求同步模块组成;
从节点由数据更新定时器、数据推送器、数据请求同步模块、邻域节点表、数据存储器组成。
数据更新定时器,用于计算当前时间与最近一次数据更新时间的时间差,当时间差小于等于预设的值时不做任何操作;当时间差大于预设值时,通过调度数据请求同步模块同步数据,同时将日志发送至数据存储器;
数据推送器,用于主节点与从节点、从节点之间,数据更新的推送;主节点主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该主节点接收过数据及哈希码的节点推送数据,从节点接收数据后主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该从节点接收过数据及哈希码邻居节点推送数据;
邻域节点表,用于显示其他节点与自身节点的通信质量列表;
数据请求同步模块,用于通过向云端节点请求同步数据以及用于当主节点接收完云端下发数据后向云端的数据下发器发送完成数据下发的消息。
当云端的数据下发监控器监控到云端数据下发器收到了从主节点的数据请求同步模块发送的完成数据下发消息后,所述数据更新器将云端现存的所有数据内容进行合并,并根据数据内容生成新的数据的哈希码,记录生成数据的时间并将数据及数据同步状态信息日志送入数据存储器。
在本发明实施例中,提供了一种基于D2D的车联网组网数据推送系统的实现方法,应用于上述的基于D2D的车联网组网数据推送系统所述实现方法包括步骤如下:
(1)新数据生成:云端管理员或云端调度系统通过操作数据生成器生成数据,同时规范数据的传输协议、格式、规范、窗口大小、内容类型,保证新数据格式正确、满足规范、大小不会超出限制、类型正确并可以成功在数据推送系统中正常传输,如果数据符合要求,数据生成器将新数据送入云端数据存储器,同时数据下发监控器将生成新数据事件日志记录并向数据更新器发送触发更新请求,云端执行步骤(2);
(2)数据更新触发:当数据更新器收到数据生成器的触发更新请求时,云端数据更新器首先生成更新事件,与此同时,数据下发监控器监听更新数据更新器生成更新事件的时间;接着数据更新器根据数据生成器生成的新数据的内容生成与新数据内容对应的哈希码并向数据下发器请求更新推送,与此同时,数据下发器执行步骤(3);
(3)数据下发:云端数据下发器向数据更新器轮询请求是否有更新推送,若没有,不做任何操作;若有新数据更新推送,则数据下发器将向主节点的数据请求同步模块请求下发推送数据,若主节点响应则云端的数据下发器将由数据生成器生成的新数据内容与其生成哈希码从云端下发至主节点;若主节点不响应不做任何操作。
接着若主节点响应了数据下发器的更新请求,主节点的数据请求同步模块将从云端的数据下发器获取新数据的哈希码记为哈希码A,与此同时,主节点的数据请求同步模块将从云端的数据下发器获取新数据内容在本地再次生成哈希码,记为哈希码B,主节点的数据请求同步模块校验哈希码A和哈希码B是否相同,如果匹配对应的哈希码相同则完成数据下发,主节点的数据请求同步模块向数据下发器发送“完成数据下发”消息,云端执行步骤(4);如果不匹配,主节点的数据请求同步模块监听下发事件执行存在异常并向数据存储器写入日志,立即上报维护人员,与此同时,主节点的数据请求同步模块向云端的数据下发器发送“数据下发异常”消息;
(4)校对数据下发可靠性:云端数据下发监控器监听云端数据下发器是否收到了从主节点的数据请求同步模块发送的“完成数据下发”消息,若收到了消息,则云端执行步骤(5),主节点执行步骤(6);若未完成下发,则云端将调度数据下发器再次进行数据下发,并将日志发送至数据存储器;
(5)云端数据同步:云端数据更新器将云端现存的所有数据内容进行合并,并根据数据内容生成新的数据的哈希码,记录生成数据的时间,接着,数据存储器存储这些数据内容作为数据备份,同时将数据同步状态信息日志送入数据存储器;
(6)主节点定时器更新:主节点上的数据更新定时器计算当前时间与最近一次数据更新时间的时间差,当时间差小于预设的值时不做任何操作,预设值由运维人员根据车联网网络的负载情况自行调节;当时间差大于等于预设值时,主节点通过调度数据请求同步模块向云端请求同步数据,若云端有新数据生成,则数据请求同步模块等待同步数据并执行步骤(9),同时将同步数据请求事件日志发送至数据存储器;若云端不存在新数据,则将数据更新器再次设置为预设值重新计时;
(7)相邻最优节点选举:该步骤在车联网网络组网时进行,邻域节点表存储的是整个数据推送系统中各个节点的数据,它包含了各个节点的主机名、IP地址、节点角色、与信号质量,具体内容如图4所示。其中的信号质量由如下公式计算得出:
其中,带宽单位为Gbps、延迟单位为ms、负载表示该节点处理器平均使用率,信号质量数值越大,信号质量越好,反之亦然。
所有节点(包括主节点或从节点)通过邻域节点表与其他节点获取自身与各个节点的带宽、延迟、负载、通信节点数,根据这些参数计算出该节点与其他节点的信号质量,将各个节点的信号质量信息存储,通过信号质量由高到低排序,即信号质量由好到差排序。这里以单个节点举例,记需要组网的节点为节点A(主节点或从节点);
节点A首先在排序之后的将邻域节点表中的所有节点全部取消失败标签,接着节点A将邻域节点表的节点由从上至下依次尝试与每个没有设置失败标签的节点发送建立邻居邻居请求,如果节点A收到对方“接受建立邻居”响应请求,则与对方建立邻居;如果对方未响应或发送“拒绝建立邻居”请求,则将对方设置失败标签,则与邻域节点表的下一个节点尝试建立邻居直到找到一个节点与其建立邻居或所有节点都打上失败标签;
如果所有节点都拥有失败标签,那么节点A将直接通过使用运营商网络与邻域节点表中的主节点建立邻居;
每个节点在没有建立邻居的时候,邻居数初始为0。如果对方是主节点且当前主节点自身已建立邻居的数量不超过100,那么主节点将允许其作为邻居并发送“邻居建立成功”消息给节点A;如果对方是主节点且当前主节点自身已建立邻居的数量超过100,则主节点将发送“无法建立邻居”消息给节点A;
如果对方是从节点且对方自身邻居数量不超过3,则对方将允许其作为邻居并发送邻居建立成功消息给节点A;如果对方是从节点且对方自身邻居数量大于等于3,则从节点发送无法建立邻居消息给节点A;
如果节点A收到来自对方的“邻居建立成功”消息,将对方标记为邻居将节点A的邻居数加1,同时对方也将节点A标记为邻居将自己的节点数加1,则完成相邻最优节点选举,即完成建立邻居,接着节点A与对方都执行步骤(8);
建立邻居的目的是用于构建车联网数据推送网络,该网络中的从节点,通过自己的邻居获取新数据内容及其哈希码;这样通过建立邻居的方式组件网络完成后,所有节点所组成的网络会形成一颗多叉树,由于主节点也参与了组网同时主节点也拥有邻居,并且从节点的邻居数量在三个以内,因此不会造成只有从节点的网络。图5是邻域节点表的样例,其中列表包含了车联网中的各个节点的主机名、IP地址、各个节点的角色和信号质量。
(8)刷新邻域节点表:当节点(主节点或从节点)完成步骤(7)之后,邻居建立之后并不是永久的,当邻居建立之后,该节点会每隔5分钟尝试与邻居发送“邻居状态”请求消息,用于保证邻居一直是活跃状态,若发送“邻居状态”请求消息的10s之内没有收到回复,则再次发送“邻居状态”请求消息,若20s之内没有收到回复,则将刷新邻域节点表,即该节点将除该邻居之外的其他所有节点取消设置失败标签,将该邻居设置失败标签,则并重复步骤(7)的工作建立邻居;若发送“邻居状态”请求消息的10s之内收到回复,则不做任何操作;
(9)主节点本地数据同步:主节点的数据请求同步模块将通过步骤(3)获取到的数据存储到主节点的数据存储器中并执行步骤(10),同时刷新主节点定时器时间,用于下一次数据同步;车联网网络中的从节点并发执行步骤(11)
(10)数据推送:车联网中主节点的数据推送器将从云端获取的更新的数据根据邻域节点表向步骤(7)建立的邻居节点发送“数据更新请求”消息(请求中包含了新数据对应的哈希码),同时将推送日志送入数据存储器;
若邻居节点没有从其他邻居获取到该新数据内容与其对应的哈希码(邻居节点上的所有数据对应的哈希码都和主节点请求的哈希码不相同),则邻居节点会接受主节点的数据更新请求消息,主节点的数据推送器会将新数据与对应的哈希码发送给邻居节点,若邻居节点已经其他邻居节点收到了新数据内容与其对应的哈希码(邻居节点上的所有数据对应的哈希码中存在和主节点请求的哈希码相同),则邻居节点将回复主节点“已经同步的数据”消息,主节点的数据推送器将不会发送该新数据的内容极其哈希码给邻居节点。
(11)从节点定时器更新:从节点上的数据更新定时器计算当前时间与最近一次数据更新时间的时间差,当时间差小于预设的值时不做任何操作;当时间差大于等于预设值时,执行步骤(13),如果时间差小于预设值过程中检测到来自其他邻居节点的数据更新请求,则执行步骤(12);
(12)数据同步:从节点收到了来自邻居节点发起数据同步请求(请求中包含了新数据对应的哈希码),若从节点上的所有数据对应的哈希码中存在和邻居节点请求相同的哈希码,则从节点将向邻居节点发送“已经同步的数据”消息;若从节点上的所有数据对应的哈希码中不存在和邻居节点请求相同的哈希码,则从节点将接受数据同步请求,并获取对应的数据内容和对应的哈希码,并将获取对应的数据内容和对应的哈希码存入数据存储器中。
当最后一个节点获取数据更新信息并存储最新的数据时,整个系统完成数据更新操作,完整了数据同步并保证了数据时效性;
(13)请求邻域节点数据更新:从节点通过调度数据请求同步模块向步骤(7)建立的邻居节点发起“获取最近一次数据哈希”请求消息,若邻居节点回复的哈希码存在于从节点的所有数据内容对应的哈希中,则从节点重置数据更新定时器;若邻居节点回复的哈希码存在于从节点的所有数据内容对应的哈希码中,则从节点将向邻居节点请求同步该内容与对应的哈希码,同时将日志发送至数据存储器,并重置数据更新定时器;
本发明根据D2D的车联网组网架构的特点,通过云端持久化存储、下发、更新、备份数据;通过主节点与云端通信获取推送数据,减小公网传输压力,通过与相邻从节点通信同步数据,提高数据同步质量与数据同步速率;改善基于公网的车联网组网通信占用公网带宽和大流量消耗的缺点。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (10)
1.基于D2D的车联网组网数据推送方法,其特征在于,包括以下步骤:
云端生成新数据并对新数据进行归一化处理;
设定不少于3个的主节点以及多个从节点;所述主节点和从节点都具有D2D通信设备和运营商网络通信设备;
云端生成新数据对应的哈希码并主动或在接收主节点的数据同步请求后将新数据及其哈希码下发到主节点;
主节点根据从云端获取的数据再次生成哈希码并将其与从云端获取的新数据对应的哈希码进行比较,若相同则校验通过接受云端下发的数据,若不相同则校验不通过主节点发出数据下发异常的消息;
每个节点根据各个节点的信号质量从高到低的顺序搜索确定其邻居节点;若节点没有搜索到其邻居节点,则该节点直接通过运营商通信网络与主节点建立邻居;
主节点完成从云端接收数据后,主节点主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该主节点接收过数据及哈希码的节点推送数据,从节点接收数据后主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该从节点接收过数据及哈希码邻居节点推送数据,直至所有节点完成数据推送。
2.根据权利要求1所述的基于D2D的车联网组网数据推送方法,其特征在于,每个节点根据各个节点的信号质量从高到低的顺序搜索确定其邻居节点的方法包括以下步骤:
确定各个节点的带宽、延迟、负载以及通信节点数信息,根据获得的这些信息计算出每个节点与其它节点的信号质量;记录每个节点的主机名、IP地址、节点角色与信号质量;
每个节点按照信号质量从高到低的顺序尝试与其它没有被其设置失败标签的节点发送建立邻居请求,当对方发出接受的响应请求则与对方建立邻居关系,如果对方未响应或发送拒绝的响应请求则为对方设置失败标签;
若所有其它节点都被该节点设置了失败标签,则将该节点直接通过运营商网络与主节点建立邻居。
3.根据权利要求2所述的基于D2D的车联网组网数据推送方法,其特征在于,当邻居建立之后,每个节点会每隔设定时间尝试与其邻居节点发送邻居状态请求消息,若该节点在设定时间内没有收到回复,则再次发送邻居状态请求消息,若设定时间内之内还没有收到回复,则将除该邻居节点之外的其他所有节点取消设置失败标签,将该邻居设置失败标签,并重新根据各个节点的信号质量从高到低的顺序搜索确定其邻居节点。
4.根据权利要求2所述的基于D2D的车联网组网数据推送方法,其特征在于,当有从节点向主节点发送建立邻居请求时,如果主节点当前已建立邻居的数量不超过100,则主节点将发出接受的响应请求;否则主节点则发出拒绝的响应请求。
5.根据权利要求2所述的基于D2D的车联网组网数据推送方法,其特征在于,当有节点向从节点发送建立邻居请求时,如果从节点的邻居数量不超过3,则从节点将发出接受的响应请求;否则主节点则发出拒绝的响应请求。
6.根据权利要求1所述的基于D2D的车联网组网数据推送方法,其特征在于,主节点记录当前时间与最近一次数据更新的时间,如果时间差大于预设的值时,主节点向云端发送数据同步请求信息并将请求日志保存;从节点记录当前时间与最近一次数据更新时间的时间差,当时间差大于预设的值时则向其邻居节点发送请求数据同步的请求信息。
7.基于D2D的车联网组网数据推送系统,其特征在于,包括云端、至少三个主节点和多个从节点;所述主节点和从节点都具有D2D通信设备和运营商网络通信设备;其中云端包括:
数据生成器,用于生成新数据并对新数据进行归一化处理;
云端数据更新器,用于根据数据生成器生成的数据生成新数据对应的哈希码并将其及新数据发送至数据下发器;
云端数据下发器,用于将新数据及其对应的哈希码下发到主节点以及接收从主节点的数据请求同步模块发送的完成数据下发消息;
云端存储器,用于存储云端操作日志以及数据同步状态信息;
所述主节点和从节点均包括:
邻域节点表,用于显示其他节点与自身节点的通信质量列表并根据各个节点的信号质量从高到低的顺序搜索确定其邻居节点;若节点没有搜索到其邻居节点,则该节点直接通过运营商网络与主节点建立邻居;
数据推送器,用于主节点完成从云端接收数据后,主节点主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该主节点接收过数据及哈希码的节点推送数据,从节点接收数据后主动或当接收到其邻居节点发送数据同步请求后通过D2D通信网络仅向从未从该从节点接收过数据及哈希码邻居节点推送数据;
数据请求同步模块,用于通过向云端节点请求同步数据以及用于当主节点接收完云端下发数据后向云端的数据下发器发送完成数据下发的消息。
8.根据权利要求7所述的基于D2D的车联网组网数据推送系统,其特征在于,所述主节点和从节点还包括数据更新定时器,主节点上的数据更新定时器用于计算当前时间与最近一次数据更新时间的时间差,当时间差大于预设的值时向云端发送数据同步请求信息并将请求日志保存;从节点的数据跟新定时器记录当前时间与最近一次数据更新时间的时间差,当时间差大于预设的值时则向其邻居节点发送请求数据同步的请求信息。
9.根据权利要求7所述的基于D2D的车联网组网数据推送系统,其特征在于,所述云端还包括数据下发监控器,用于监听云端数据下发器是否收到了从主节点的数据请求同步模块发送的完成数据下发消息,若收到了消息则云端的数据下发器向主节点下发数据;若未完成则将调度数据下发器再次进行数据下发,并将日志发送至数据存储器。
10.根据权利要求9所述的基于D2D的车联网组网数据推送系统,其特征在于,当云端的数据下发监控器监控到云端数据下发器收到了从主节点的数据请求同步模块发送的完成数据下发消息后,所述数据更新器将云端现存的所有数据内容进行合并,并根据数据内容生成新的数据的哈希码,记录生成数据的时间并将数据及数据同步状态信息日志送入数据存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910438586.2A CN110213359B (zh) | 2019-05-24 | 2019-05-24 | 一种基于d2d的车联网组网数据推送系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910438586.2A CN110213359B (zh) | 2019-05-24 | 2019-05-24 | 一种基于d2d的车联网组网数据推送系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110213359A CN110213359A (zh) | 2019-09-06 |
CN110213359B true CN110213359B (zh) | 2021-09-03 |
Family
ID=67788554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910438586.2A Active CN110213359B (zh) | 2019-05-24 | 2019-05-24 | 一种基于d2d的车联网组网数据推送系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110213359B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110809007B (zh) * | 2019-11-20 | 2020-06-02 | 国网江苏省电力有限公司信息通信分公司 | 一种电力ims状态呈现业务流量控制方法及系统 |
EP3968601B1 (en) * | 2020-09-11 | 2024-05-08 | Volkswagen Ag | Synchronization of a communication between a vehicle and a backend device using a hash message |
CN113423092B (zh) * | 2021-06-22 | 2024-08-27 | 上海华兴数字科技有限公司 | 作业机械的数据传输方法 |
CN114117554B (zh) * | 2022-01-28 | 2022-05-24 | 杭州链城数字科技有限公司 | 执法数据可信验证方法、处理方法、系统和执法仪 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8379539B2 (en) * | 2008-06-03 | 2013-02-19 | Cardiac Pacemakers, Inc. | Methods and systems for providing multiple access within a network |
CN103475524B (zh) * | 2013-09-13 | 2016-02-10 | 长沙威胜信息技术有限公司 | 基于主从节点通信网络的分层组网方法 |
CN107508927B (zh) * | 2017-08-28 | 2020-05-05 | 常熟理工学院 | 一种基于云的未来车联网数据通信方法 |
CN108966183A (zh) * | 2018-07-03 | 2018-12-07 | 南京邮电大学 | 一种车联网中基于d2d通信的紧急消息传输方法 |
-
2019
- 2019-05-24 CN CN201910438586.2A patent/CN110213359B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110213359A (zh) | 2019-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110213359B (zh) | 一种基于d2d的车联网组网数据推送系统和方法 | |
CN111190736A (zh) | 基于微服务的低入侵分布式定时任务调度系统及方法 | |
CN103701913B (zh) | 数据同步方法及装置 | |
CN104679796A (zh) | 一种选举方法、装置及数据库镜像集群节点 | |
CN111552701B (zh) | 确定分布式集群中数据一致性的方法及分布式数据系统 | |
WO2016177231A1 (zh) | 基于双主控的主备倒换方法及装置 | |
CN110611603B (zh) | 一种集群网卡监控方法及装置 | |
CN111901705A (zh) | 一种olt设备的omci功能虚拟化系统 | |
CN108509296B (zh) | 一种处理设备故障的方法和系统 | |
CN105323271B (zh) | 一种云计算系统以及云计算系统的处理方法和装置 | |
CN112631756A (zh) | 一种应用于航天测控软件的分布式调控方法及装置 | |
CN109412940B (zh) | 路由器管理方法及路由器管理系统 | |
CN109005246B (zh) | 一种数据的同步方法、装置及系统 | |
CN112615944B (zh) | 分布式dns主辅同步的方法和系统 | |
CN110798492B (zh) | 数据存储方法及装置、数据处理系统 | |
CN113691500B (zh) | 一种支持监管的跨链数据访问装置及系统 | |
CN105007233A (zh) | 一种基于dhcp服务器集群负载分配地址的方法 | |
CN102375763B (zh) | 一种用于实现进程间通信的系统和方法 | |
CN116781691A (zh) | 业务容灾备份方法、业务容灾备份系统及tof节点 | |
CN114610798A (zh) | 资源配置管理方法及系统、装置、存储介质及电子设备 | |
CN109995848B (zh) | 一种基于区块链和智能合约的系统配置数据管理方法 | |
EP3648423B1 (en) | Resource allocation method and system | |
CN105740180A (zh) | Usb设备的虚拟机接入方法和装置 | |
CN113742416A (zh) | 数据处理方法、设备、系统及存储介质 | |
CN114138825B (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 |