测试OpenDDS消息的传输时延的几种方法

    科技2025-07-13  15

        OpenDDS是无中心、实时传输中间件,符合OMG组织的DDS1.4规范,和其他厂商的DDS产品具有互操作性,即相互通讯。在试验、生产环境下,经常需要对消息的时延进行测试,以验证DDS传输性能是否满足生产需要:

        1、硬实时环境下,测试多台设备间DDS传输的时延

    首先需要硬件实时环境,包括实时操作系统(如VxWorks、其他实时操作系统等)、时钟服务器(网络时钟服务器或自定义时钟服务器); 多台设备分别向时钟服务器进行校时; 定义idl,包括srcTimeStamp、destTimeStamp或者使用DDS内置的时间戳原始数据 编写pub和sub应用程序 设置测试时长如2分钟或消息数量10000条 分别记录max、min、average等时延数据,统计最大、最小和平均时延 获取时延平均值和抖动值

     

        2、同一台机器上,测试本台设备内、单网卡上DDS传输的时延

    不需要考虑额外的任何因素 定义idl,包括srcTimeStamp、destTimeStamp或者使用DDS内置的时间戳原始数据 编写pub和sub应用程序 设置测试时长如2分钟或消息数量10000条 分别记录max、min、average等时延数据,统计最大、最小和平均时延 获取时延平均值和抖动值

     

        3、同一台机器上,测试本台设备内、不同网卡间DDS传输的时延

    任意设备即可,但需要CPU核数多的,至少8核,为pub和sub分别绑定不同的CPU核,避免相互交叉; 无需
    Processed: 0.010, SQL: 8