基于底层通信的时延测试方法、装置及电子设备与流程

文档序号:35248538发布日期:2023-08-25 20:46阅读:30来源:国知局
基于底层通信的时延测试方法、装置及电子设备与流程

本公开涉及通信时延测试,尤其涉及一种基于底层通信的时延测试方法、装置、电子设备及计算机可读存储介质。


背景技术:

1、相关技术中,底层中间件通信被广泛应用于工业控制、智能交通、均是和航空航天等领域,随着技术快速的发展,对中间件通信的指标越来越严格,其中,通信时延就是用于衡量通信性能的指标之一。

2、现有的测试底层中间件通信的时延测试方法是:假设测试机1和测试机2时间已经同步,时延误差为0,测试机1将开始写入的时间戳记录为t1,写入数据包中,且数据包大小不变;数据包通过底层中间件传输到测试机2;测试机2接收完数据包后,记录时间戳为t1,并解析当前数据包中的开始时间t1;对于底层中间件来说,发送数据包所需的时延即为t2-t1。

3、但是,对于高速产品所需的底层中间件而言,其所需的时延要求精度达到纳米级,需要保证测试机1和测试机2的时间同步误差在精度以上,但还是无法达到误差的值无法准确计算。同时,需要测试机1和测试机2保证都能获取到纳米级别的时间戳,否则测试结果会存在误差。

4、因此,亟需一种能够提高时延测试精度,避免测试机之间的时延误差的底层中间件通信时延测试方法。


技术实现思路

1、为克服相关技术中存在的问题,本公开提供一种基于底层通信的时延测试方法、装置、电子设备及计算机可读存储介质。

2、根据本公开实施例的第一方面,提供一种基于底层通信的时延测试方法,包括:记录数据包开始写入第一测试机的时间戳,得到第一时间,并将所述第一时间写入对应的数据包中,基于数据分发服务将所述数据包通过所述第一测试机发送至第二测试机;所述第二测试机基于数据分发服务接收所述数据包,并通过数据分发服务将接收到的所述数据包立刻回传至所述第一测试机;在所述第一测试机基于数据分发服务接收所述回传的数据包时,记录数据包接收完毕时的时间戳,得到第二时间,并根据所述数据包得到对应的第一时间;根据所述第二时间和所述第一时间,计算得到数据包对应的通信时延。。

3、在一些实施例中,所述根据所述第二时间和所述第一时间,计算得到数据包对应的通信时延,公式为:

4、late=(tb-ta)/2

5、式中,对于单个数据包,late表示通信时延,ta为记录数据包开始写入的第一时间,tb为第一测试机通过所述第二主题接收完所述数据包的第二时间。

6、在一些实施例中,还包括:在连续发送多个数据包时,分别计算所述多个数据包的通信时延;根据所述多个数据包的通信时延计算平均通信时延,将所述平均通信时延作为目标通信时延。

7、在一些实施例中,所述根据所述多个数据包的通信时延计算平均通信时延,公式为:

8、

9、式中,latex1,latex2…latexn为多个数据包中单个数据包的通信时延,n为多个数据包的数量。

10、在一些实施例中,还包括:在连续发送多个数据包时,获取多个数据包中的最早时间戳和最晚时间戳,其中,所述最早时间戳为多个数据包中第一个数据包开始写入的时间,所述最晚时间戳为多个数据包中最后一个数据包回传接收完毕的时间;统计发送的数据包数量,结合所述最晚时间戳和最早时间戳,计算得到单个数据包的目标通信时延。

11、在一些实施例中,所述统计发送的数据包数量,结合所述最晚时间戳和最早时间戳,计算得到单个数据包的目标通信时延,公式为:

12、latem=(tw-tz)/2m

13、式中,tw为最晚时间戳,tz为最早时间戳,m为数据包数量。

14、在一些实施例中,所述第二测试机基于数据分发服务接收所述数据包,并通过数据分发服务将接收到的所述数据包立刻回传至所述第一测试机,包括:通过数据分发服务创建第一主题,并配置所述第一主题的消息发送频率,基于所述第一主题,将所述数据包通过所述第一测试机发送至第二测试机;通过数据分发服务创建第二主题,基于所述第二主题,将接收到的所述数据包通过所述第二测试机立刻回传至所述第一测试机。

15、根据本公开实施例的第二方面,提供一种基于底层通信的时延测试装置,包括:数据包发送模块,用于记录数据包开始写入第一测试机的时间戳,得到第一时间,并将所述第一时间写入对应的数据包中,基于数据分发服务将所述数据包通过所述第一测试机发送至第二测试机;数据包回传模块,用于所述第二测试机基于数据分发服务接收所述数据包,并通过数据分发服务将接收到的所述数据包立刻回传至所述第一测试机;时间获取模块,用于在所述第一测试机基于数据分发服务接收所述回传的数据包时,记录数据包接收完毕时的时间戳,得到第二时间,并根据所述数据包得到对应的第一时间;通信时延计算模块,用于根据所述第二时间和所述第一时间,计算得到数据包对应的通信时延。

16、根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现本公开第一方面所提供的基于底层通信的时延测试方法。

17、根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开第一方面所提供的基于底层通信的时延测试方法的步骤。

18、本公开的实施例提供的技术方案可以包括以下有益效果:通过记录数据包开始写入第一测试机的时间戳,得到第一时间,并将第一时间写入对应的数据包中,第一测试机基于数据分发服务将数据包发送至第二测试机,第二测试机基于数据分发服务接收数据包,并通过数据分发服务将接收到的数据包立刻回传至第一测试机,第一测试机基于数据分发服务接收回传的数据包,并记录数据包接收完毕时的时间戳,得到第二时间,并根据数据包得到第一时间,根据第一时间和第二时间,计算得到数据包的通信时延,仅通过第一测试机进行时间戳记录,降低了设备要求,减少测试代码数量,且避免了测试机之间的时间差,提高了测试结果的精度,能够适用于连续多包数据的发送,符合实际通信情况。

19、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。



技术特征:

1.一种基于底层通信的时延测试方法,其特征在于,包括:

2.根据权利要求1所述的基于底层通信的时延测试方法,其特征在于,所述根据所述第二时间和所述第一时间,计算得到数据包对应的通信时延,公式为:

3.根据权利要求1或2所述的基于底层通信的时延测试方法,其特征在于,还包括:

4.根据权利要求3所述的基于底层通信的时延测试方法,其特征在于,所述根据所述多个数据包的通信时延计算平均通信时延,公式为:

5.根据权利要求1所述的基于底层通信的时延测试方法,其特征在于,还包括:

6.根据权利要求5所述的基于底层通信的时延测试方法,其特征在于,所述统计发送的数据包数量,结合所述最晚时间戳和最早时间戳,计算得到单个数据包的目标通信时延,公式为:

7.根据权利要求1、2、4、5、6中任一项所述的基于底层通信的时延测试方法,其特征在于,所述第二测试机基于数据分发服务接收所述数据包,并通过数据分发服务将接收到的所述数据包立刻回传至所述第一测试机,包括:

8.一种基于底层通信的时延测试装置,其特征在于,包括:

9.一种电子设备,其特征在于,包括:

10.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,该程序指令被处理器执行时,以实现所述权利要求1-7中任一所述的基于底层通信的时延测试方法的步骤。


技术总结
本公开涉及一种基于底层通信的时延测试方法、装置及电子设备,记录数据包开始写入第一测试机的第一时间,将第一时间写入对应的数据包中,第一测试机基于数据分发服务将数据包发送至第二测试机,第二测试机基于数据分发服务接收数据包,并通过数据分发服务将接收到的数据包立刻回传至第一测试机,第一测试机基于数据分发服务接收回传的数据包,记录数据包接收完毕时的时间戳,得到第二时间,并根据数据包得到第一时间,根据第一时间和第二时间,计算得到数据包的通信时延。本公开能够仅通过第一测试机进行时间戳记录,避免了测试机之间的时间差,提高了测试结果的精度,且能够适用于进行连续多包数据发送,符合实际通信情况。

技术研发人员:张万洪
受保护的技术使用者:国科础石(重庆)软件有限公司
技术研发日:
技术公布日:2024/1/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1