本发明涉及无线通信,具体涉及一种网关间时间同步方法、服务器、网关及计算机可读介质。
背景技术:
1、由于网络延迟的存在,加之网络中不同网关所处地理位置不同,导致各个网关之间时间所有偏差,各网关与服务器之间的时间亦是不能同步。多个网关服务同一个复杂事件,为保证正确的执行顺序,多个网关必须参考同一时钟。如果需要网关同时或按严格时序执行任务,则时间误差必须在几毫秒以内。网关日志信息分析处理时,也需要用同步的时间作为参考。因此,克服时间差使网关与网关之间、网关与服务器之间的时间保持同步尤为重要。现有技术中存在多种网关时间同步技术,但是,这些网关时间同步技术存在着成本高、精度差、难度大,部分场景下无法使用gps授时模块等问题。
技术实现思路
1、本发明旨在一定程度上解决相关技术中的技术问题之一。为此,本发明提供了一种网关间时间同步方法,具有成本低、精度高、功耗低的优点。
2、为了达到上述目的,本发明采用如下技术方案:
3、一种网关间时间同步方法,用于服务器,包括如下步骤:
4、初步同步:接收并处理各网关发送的时间同步请求;
5、精确同步:接收数据包,所述数据包携带网关时间戳,根据网关时间戳计算覆盖重复节点的各网关之间的时间差,所述时间差为网关时间戳的时间差,所述重复节点为不同网关重叠覆盖的节点;
6、调节:基于时间差向覆盖重复节点的各网关下发校准量,以同步各网关之间的时间。
7、可选的,服务器存储所有网关的信息和所有重复节点的信息,网关的信息包括网关的同步状态和网关与其他网关之间的时间差,网关的同步状态包括初步同步的次数和精确同步的次数,重复节点的信息包括覆盖重复节点的网关的列表。
8、可选的,新增的网关接入服务器时,响应于新增的网关的请求,服务器对新增的网关进行一次初步同步,并保存新增的网关的信息;接入服务器的网关移除时,服务器删除被移除的网关的信息。
9、可选的,服务器每接受一次重复节点的数据包,对发出数据包的重复节点所覆盖的网关进行精确同步。
10、可选的,服务器响应于网关发起的精确同步,控制发起精确同步请求的网关下的重复节点请求对网关进行精确同步。
11、相对应的,本发明还提供了一种服务器,包括:
12、一个或多个处理器;
13、存储器,其上存储有一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现前述任意一项所述的网关间时间同步方法。
14、另一方面,本发明还提供了一种网关间时间同步方法,用于网关,包括如下步骤:
15、初步同步:向服务器发送时间同步请求,并基于服务器对时间同步请求的处理计算网络延迟并基于网络延迟获取服务器时间;
16、精确同步:重复节点经由覆盖重复节点的各网关向服务器发送数据包,所述重复节点为不同网关重叠覆盖的节点,所述数据包携带覆盖重复节点的各网关的网关时间戳;
17、调节:覆盖重复节点的各网关接收来自服务器的校准量以进行精确时间同步。
18、可选的,网络延迟包括上行网络延迟和下行网络延迟,网络延迟由如下公式计算:
19、
20、δt_process=t3-t2
21、其中,δdelay为网络延迟,δt_process为服务器处理各网关发送的时间同步请求的时长,t1为网关向服务器发出时间同步请求的网关时间,t2为服务器收到网关发出的时间同步请求的服务器时间,t3为服务器处理时间同步请求完成并下发服务器时间戳的服务器时间,t4为网关接收服务器时间戳的网关时间。
22、可选的,各网关获取的服务器时间为网关的网络延迟与服务器时间戳之和。
23、可选的,需要校准时间的网关每隔校准周期向服务器请求对其进行精确同步。
24、可选的,网关从第二次精确同步起记录上一次精确同步的时间及其时间误差,所述时间误差为覆盖重复节点的网关的网关本地时间戳之差,当时间差积累超过误差阈值且记录的时间内未进行精确同步,网关由服务器对其进行精确同步。
25、相对应的,本发明还提供了一种网关,包括:
26、一个或多个处理器;
27、存储器,其上存储有一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现前述任意一项所述的网关间时间同步方法。
28、同时,本发明还提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的网关间时间同步方法。
29、本发明的这些特点和优点将会在下面的具体实施方式以及附图中进行详细的揭露。本发明最佳的实施方式或手段将结合附图来详尽表现,但并非是对本发明技术方案的限制。另外,在每个下文和附图中出现的这些特征、要素和组件是具有多个,并且为了表示方便而标记了不同的符号或数字,但均表示相同或相似构造或功能的部件。
1.一种网关间时间同步方法,用于服务器,其特征在于,所述网关间时间同步方法包括如下步骤:
2.根据权利要求1所述的网关间时间同步方法,其特征在于,服务器存储所有网关的信息和所有重复节点的信息,网关的信息包括网关的同步状态和网关与其他网关之间的时间差,网关的同步状态包括初步同步的次数和精确同步的次数,重复节点的信息包括覆盖重复节点的网关的列表。
3.根据权利要求2所述的网关间时间同步方法,其特征在于,新增的网关接入服务器时,响应于新增的网关的请求,服务器对新增的网关进行一次初步同步,并保存新增的网关的信息;接入服务器的网关移除时,服务器删除被移除的网关的信息。
4.根据权利要求1至3之一所述的网关间时间同步方法,其特征在于,服务器每接受一次重复节点的数据包,对发出数据包的重复节点所覆盖的网关进行精确同步。
5.根据权利要求1至3之一所述的网关间时间同步方法,其特征在于,服务器响应于网关发起的精确同步请求,控制发起精确同步请求的网关下的重复节点对网关进行精确同步。
6.一种网关间时间同步方法,用于网关,其特征在于,所述网关间时间同步方法包括如下步骤:
7.根据权利要求6所述的网关间时间同步方法,其特征在于,网络延迟包括上行网络延迟和下行网络延迟,网络延迟由如下公式计算:
8.根据权利要求7所述的网关间时间同步方法,其特征在于,各网关获取的服务器时间为网关的网络延迟与服务器时间戳之和。
9.根据权利要求6至8之一所述的网关间时间同步方法,其特征在于,需要校准时间的网关每隔校准周期向服务器请求对其进行精确同步。
10.根据权利要求6至8之一所述的网关间时间同步方法,其特征在于,网关从第二次精确同步起记录上一次精确同步的时间及其时间误差,所述时间误差为覆盖重复节点的网关的网关本地时间戳之差,当时间差积累超过误差阈值且记录的时间内未进行精确同步,网关由服务器对其进行精确同步。
11.一种服务器,其特征在于,包括:
12.一种网关,其特征在于,包括:
13.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10中任一项所述的网关间时间同步方法。