一种基于冲突算法降低通信时延的方法和系统与流程

文档序号:28801271发布日期:2022-02-08 22:56阅读:80来源:国知局
一种基于冲突算法降低通信时延的方法和系统与流程

1.本发明涉及通信领域,尤其涉及一种基于冲突算法降低通信时延的方法和系统。


背景技术:

2.随着工业物联网应用提速,越来越多的现场仪器仪表通过nbiot、4g/5g等无线网络进行通讯连接和数据传输,构成了一个底层是无线智能仪器仪表、中层是运营商基站和互联网、顶层是业务应用管理系统的三层架构。
3.但是,由于运营商基站对无线通信设备的实时在线连接数有限制,短时间大批的连接请求和数据传输存在不确定性时延,导致了业务应用系统采集到的仪器仪表数据,存在时间戳不一致、数据直接应用难等问题。一方面,如果顶层应用系统需要获得同一时间点的采集数据,现场仪表就会同时发起网络连接,但基站负载能力有限,不可能同时处理,就必然导致连接的时间存在先后之别,如果仪表数量众多,会导致第一个和最后一个的时间差非常大;另一方面,当仪表在等待与基站的连接时,仪表自身通讯子线程属于等待挂起状态,会导致系统资源的浪费。


技术实现要素:

4.鉴于以上所述现有技术的缺点,本发明提供一种基于冲突算法降低通信时延的方法和系统,以解决上述技术问题。
5.本发明提供的基于冲突算法降低通信时延的方法,包括:
6.启动一下位机进行数据采集,建立所述下位机与基站之间的无线网络连接;
7.所述下位机向上位机发起连接请求,连接成功则通过所述下位机发送数据包,所述数据包包括时间戳和预设通讯时间点的采样数据;连接失败则继续尝试连接;
8.所述下位机根据时间偏移值对所述预设的通讯参数进行调整,完成降低通信时延;
9.所述时间偏移值的获取方式包括:
10.上位机对所述基站下的所有数据包进行获取并缓存,根据所述时间戳计算每个数据包的时延,进而获取平均时延;
11.当所述平均时延高于预设值时,根据所述时间戳和平均时延,利用冲突算法获取所述时间偏移值。
12.于本发明的一实施例中,在向上位机发起连接请求之前,还包括:
13.判断所述下位机的当前内部时钟与预设的通讯参数是否一致,如果一致,则通过所述下位机向上位机发起连接请求。
14.于本发明的一实施例中,所述时间戳包括下位机发起连接的时间戳time1和连接成功的时间戳time2,所述每个数据包的时延通过time2-time1获取。
15.于本发明的一实施例中,所述时间偏移值通过如下公式获取:
16.f(time2-time1)=(delayall div delay)*(time2-time1)
17.其中,time1为发起连接的时间戳,time2为连接成功的时间戳,delayall为平均时延,delay为预设值。
18.于本发明的一实施例中,所述下位机根据时间偏移值对所述预设的通讯参数进行调整包括:
19.将所述预设的通讯参数与时间偏移值之和作为新的通讯参数,并采用所述新的通讯参数进行后续的与下位机的当前内部时钟的一致性判断。
20.于本发明的一实施例中,在判断所述下位机的当前内部时钟与预设的通讯参数一致之后,还包括:
21.如果符合通信时间窗口期,则通过所述下位机向上位机发起连接请求;
22.如果连接失败,则等待下一个通信时间窗口期,再继续尝试连接。
23.本发明还提供一种基于冲突算法降低通信时延的方法,包括:
24.上位机接收一下位机的连接请求,连接成功则通过所述下位机发送数据包,所述数据包包括时间戳和预设通讯时间点的采样数据;
25.根据所述时间戳获取下位机的时延;
26.所述上位机通过为高时延的下位机分配时间偏移值,对下位机的预设的通讯参数进行调整,完成降低通信时延;
27.所述时间偏移值的获取方式包括:
28.上位机对所述基站下的所有数据包进行获取并缓存,根据所述时间戳计算每个数据包的时延,进而获取平均时延;
29.当所述平均时延高于预设值时,根据所述时间戳和平均时延,利用冲突算法获取所述时间偏移值。
30.本发明还提供一种基于冲突算法降低通信时延的系统,包括上位机、基站和下位机,所述下位机包括
31.请求模块,用于向上位机发起连接请求;
32.数据发送模块,用于通过所述下位机发送数据包,所述数据包包括时间戳和预设通讯时间点的采样数据;
33.参数调整模块,用于根据时间偏移值对所述预设的通讯参数进行调整,完成降低通信时延;
34.时间偏移值计算模块,用于根据所述时间戳计算每个数据包的时延,进而获取平均时延;当所述平均时延高于预设值时,根据所述时间戳和平均时延,利用冲突算法获取所述时间偏移值。
35.本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现上述中任一项所述方法。
36.本发明还提供一种电子终端,其特征在于,包括:处理器及存储器;
37.所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如上述任一项所述方法。
38.本发明的有益效果:本发明中的基于冲突算法降低通信时延的方法和系统,可以在不改变现有网络架构和不增加基站硬件资源的前提下,在应用系统上利用冲突算法,为存在网络连接通信时延的仪表分配时间偏移值,统计分析调整后的通信时延,如果效果不
理想,可以再次计算并分配时间偏移值,直到符合时延预期,本发明可以大大降低每次仪表和应用系统连接的通信时延。
附图说明
39.图1是本发明实施例中基于冲突算法降低通信时延的方法的网络拓扑图。
40.图2是本发明实施例中基于冲突算法降低通信时延的方法的流程示意图。
具体实施方式
41.以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
42.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
43.在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
44.如图2所示,本实施例中的基于冲突算法降低通信时延的方法,包括:
45.s1.启动一下位机进行数据采集,建立所述下位机与基站之间的无线网络连接;
46.s2.所述下位机向上位机发起连接请求,连接成功则通过所述下位机发送数据包,所述数据包包括时间戳和预设通讯时间点的采样数据;连接失败则继续尝试连接;
47.s3.所述下位机根据时间偏移值对所述预设的通讯参数进行调整,完成降低通信时延;
48.所述时间偏移值的获取方式包括:
49.上位机对所述基站下的所有数据包进行获取并缓存,根据所述时间戳计算每个数据包的时延,进而获取平均时延;
50.当所述平均时延高于预设值时,根据所述时间戳和平均时延,利用冲突算法获取所述时间偏移值。
51.本实施例针对下位机一侧,在不改变现有网络架构和不增加基站硬件资源的前提下,利用冲突算法,为存在网络连接通信时延的下位机,例如现场仪表,分配时间偏移值,统计分析调整后的通信时延,如果效果不理想,可以再次计算并分配时间偏移值,直到符合时延预期,可以大大降低每次仪表和应用系统连接的通信时延。
52.在本实施例中,下位机(上电运行后,可以利用内置的无线模块搜索就近的基站网络,首先建立无线网络连接,现场仪表判断当前内部时钟与预设的通讯参数是否一致,如果符合通信时间窗口期,就尝试与上位机(例如应用系统)建立无线连接,本实施例中的下位
机可以包括流量仪表、压力仪表、温度仪表、物位仪表、分析仪表等现场仪表,上位机可以包括应用系统等。
53.在本实施例中,时间戳包括下位机发起连接的时间戳time1和连接成功的时间戳time2,所述每个数据包的时延通过time2-time1获取。本实施例中的现场仪表将发起连接的时间戳time1、连接成功的时间戳time2,以及预设通讯时间点的采样数据data一起打包。如果连接失败,将不打包,等待下一个通信时间窗口期。上位机可以接收该现场仪表的数据包,并对该基站所有现场仪表的数据包进行缓存,假定所有数据包为dataall,上位机会计算每条数据中time2-time1的时延,并进而统计整个数据包的平均时延delayall,再判断该时延delayall是否高于系统的预设值delay,如果没有则直接返回。如果高于预设值,则表明该基站网络整体时延性能差,存在较大的连接时延,需要利用冲突算法计算连接时间偏移值。
54.在本实施例中,连接时间偏移值计算公式:
55.f(time2-time1)=(delayall div delay)*(time2-time1)
56.其中,time1为发起连接的时间戳,time2为连接成功的时间戳,delayall为平均时延,delay为预设值。
57.利用上述公式,为每台仪表计算时间偏移值,并将偏移值下发到现场每台仪表,再循环执行上述现场仪表判断当前内部时钟与预设的通讯参数是否一致及之后的步骤,直到符合时延预期。
58.在一实施例中,针对上位机一侧,基于冲突算法降低通信时延的方法,包括:
59.上位机接收一下位机的连接请求,连接成功则通过所述下位机发送数据包,所述数据包包括时间戳和预设通讯时间点的采样数据;
60.根据所述时间戳获取下位机的时延;
61.所述上位机通过为高时延的下位机分配时间偏移值,对下位机的预设的通讯参数进行调整,完成降低通信时延;
62.所述时间偏移值的获取方式包括:
63.上位机对所述基站下的所有数据包进行获取并缓存,根据所述时间戳计算每个数据包的时延,进而获取平均时延;
64.当所述平均时延高于预设值时,根据所述时间戳和平均时延,利用冲突算法获取所述时间偏移值。
65.在本实施例中,上位机(如应用系统)等待下位机(如现场仪表)的连接请求。连接成功后,接受下位机发送的数据包,数据包包括仪表将发起连接的时间戳time1、连接成功的时间戳time2,以及预设通讯时间点的采样数据data一起打包。上位机收到数据包之后,对该基站所有现场仪表的数据包进行缓存,假定所有数据包为dataall。计算每条数据中time2-time1的时延,并进而统计整个数据包的平均时延delayall。判断该时延delayall是否高于系统的预设值delay,如果没有则直接返回。如果高于预设值,则表明该基站网络整体时延性能差,存在较大的连接时延,需要利用冲突算法计算连接时间偏移值。时间偏移值的计算方式如上述方法。上位机为每台仪表计算时间偏移值,并将偏移值下发到现场每台仪表,对每台仪表的通讯参数进行调整,直到符合时延预期。
66.相应的,本实施例还提供一种基于冲突算法降低通信时延的系统,包括上位机、基
站和下位机,
67.所述下位机包括
68.请求模块,用于向上位机发起连接请求;
69.数据发送模块,用于通过所述下位机发送数据包,所述数据包包括时间戳和预设通讯时间点的采样数据;
70.参数调整模块,用于根据时间偏移值对所述预设的通讯参数进行调整,完成降低通信时延;
71.时间偏移值计算模块,用于根据所述时间戳计算每个数据包的时延,进而获取平均时延;当所述平均时延高于预设值时,根据所述时间戳和平均时延,利用冲突算法获取所述时间偏移值。
72.本实施例中的基于冲突算法降低通信时延的系统,可以利用上述实施例中的方法,在不改变现有网络架构和不增加基站硬件资源的前提下,为存在网络连接通信时延的下位机,例如现场仪表,分配时间偏移值,统计分析调整后的通信时延,如果效果不理想,可以再次计算并分配时间偏移值,直到符合时延预期,可以大大降低每次仪表和应用系统连接的通信时延。
73.本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本实施例中的任一项方法。
74.本实施例还提供一种电子终端,包括:处理器及存储器;
75.所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行本实施例中任一项方法。
76.本实施例中的计算机可读存储介质,本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
77.本实施例提供的电子终端,包括处理器、存储器、收发器和通信接口,存储器和通信接口与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于进行通信,处理器和收发器用于运行计算机程序,使电子终端执行如上方法的各个步骤。
78.在本实施例中,存储器可能包含随机存取存储器(random access memory,简称ram),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
79.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
80.在上述实施例中,说明书对“本实施例”、“一实施例”、“另一实施例”、或“其他实施例”的提及表示结合实施例说明的特定特征、结构或特性包括在至少一些实施例中,但不必是全部实施例。“本实施例”、“一实施例”、“另一实施例”的多次出现不一定全部都指代相同的实施例。
81.在上述实施例中,尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变形对本领域普通技术人员来说将是显而易见的。例如,其他存储结构(例如,动态ram(dram))可以使用所讨论的实施例。本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。
82.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
83.本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
84.本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
85.上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1