掌桥专利:专业的专利平台
掌桥专利
首页

时延测量方法、装置、通信设备和存储介质

文献发布时间:2023-06-19 19:30:30


时延测量方法、装置、通信设备和存储介质

技术领域

本申请涉及通信技术领域,尤其涉及一种时延测量方法、装置、通信设备和存储介质。

背景技术

在通信传输过程中,数据的传输时延能够影响数据的时效性,是数据通信质量的重要参数。因此,在时间敏感的网络中,数据传输时延的监测是必要的功能。

相关技术中,采用IP时间戳可选项或者应用层自定义时间戳字段来测量传输时延,但是这两种时延测量方法均存在一定的局限性。

发明内容

本申请提供了一种时延测量方法、装置、通信设备以及存储介质。

根据本申请的第一方面,提供了一种时延测量方法,所述方法包括:

接收协议报文;

根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻;

根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延。

可选地,所述根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻,包括:解析所述协议报文的协议头,以得到所述IPID和分片标志最高位;在所述分片标志最高位符合设定取值的情况下,根据所述IPID确定所述发送时刻。

可选地,所述根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延,包括:获取所述接收时刻相对最近同步时钟信号的第一时域偏移量;确定所述发送时刻相对所述最近同步时钟信号的第二时域偏移量;根据所述第一时域偏移量和所述第二时域偏移量之差,确定所述协议报文的传输时延。

可选地,所述获取所述接收时刻相对最近同步时钟信号的第一时域偏移量,包括:根据IP层接收到所述协议报文的接收时刻,确定所述接收时刻相对所述最近同步时钟信号的所述第一时域偏移量。

可选地,所述方法,还包括:将所述传输时延写入所述协议头的IPID;通过对套接字接口设置目标选项,将所述协议头写入数据包,以使所述应用层读取所述数据包得到所述协议头的IPID携带的所述传输时延。

根据本申请的第二方面,提供了一种时延测量方法,所述方法包括:

根据数据块的获取时刻,确定用于传输所述数据块的协议报文的发送时刻;

根据所述发送时刻,生成所述协议报文的协议头中的数据报文编号IPID;其中,所述IPID用于确定所述协议报文的传输时延;

向接收端发送所述协议报文。

可选地,所述根据所述发送时刻,生成所述协议报文的协议头中的数据报文编号IPID,包括:在时延测量功能使能的情况下,将所述发送时刻作为所述协议报文的协议头中的IPID,以及将所述协议报文的协议头中分片标志最高位配置为设定取值;其中,所述设定取值,用于指示所述IPID的取值为发送时刻。

可选地,所述根据数据块的获取时刻,确定用于传输所述数据块的协议报文的发送时刻,包括:根据IP层获取所述数据块的获取时刻,确定用于传输所述数据块的至少一个协议报文均对应所述发送时刻。

可选地,所述根据IP层获取所述数据块的获取时刻,确定用于传输所述数据块的至少一个协议报文均对应所述发送时刻,包括:

确定所述IP层获取所述数据块的获取时刻相对最近同步时钟信号的时域偏移量;

将所述时域偏移量作为用于传输所述数据块的至少一个协议报文对应的发送时刻。

根据本申请的第三方面,提供了一种通信设备,包括存储器、收发机和处理器;

存储器,用于存储计算机程序;收发机,用于在所述处理器的控制下收发数据;处理器,用于读取所述存储器中的计算机程序并执行以下操作:

接收协议报文;

根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻;

根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延。

可选地,所述根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻,包括:解析所述协议报文的协议头,以得到所述IPID和分片标志最高位;在所述分片标志最高位符合设定取值的情况下,根据所述IPID确定所述发送时刻。

可选地,所述根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延,包括:获取所述接收时刻相对最近同步时钟信号的第一时域偏移量;确定所述发送时刻相对所述最近同步时钟信号的第二时域偏移量;根据所述第一时域偏移量和所述第二时域偏移量之差,确定所述协议报文的传输时延。

可选地,所述获取所述接收时刻相对最近同步时钟信号的第一时域偏移量,包括:根据IP层接收到所述协议报文的接收时刻,确定所述接收时刻相对所述最近同步时钟信号的所述第一时域偏移量。

可选地,所述处理器还执行以下操作:将所述传输时延写入所述协议头的IPID;通过对套接字接口设置目标选项,将所述协议头写入数据包,以使所述应用层读取所述数据包得到所述协议头的IPID携带的所述传输时延。

根据本申请的第四方面,提供了一种通信设备,包括存储器、收发机和处理器;

存储器,用于存储计算机程序;收发机,用于在所述处理器的控制下收发数据;处理器,用于读取所述存储器中的计算机程序并执行以下操作:

根据数据块的获取时刻,确定用于传输所述数据块的协议报文的发送时刻;

根据所述发送时刻,生成所述协议报文的协议头中的数据报文编号IPID;其中,所述IPID用于确定所述协议报文的传输时延;

向接收端发送所述协议报文。

可选地,所述根据所述发送时刻,生成所述协议报文的协议头中的数据报文编号IPID,包括:在时延测量功能使能的情况下,将所述发送时刻作为所述协议报文的协议头中的IPID,以及将所述协议报文的协议头中分片标志最高位配置为设定取值;其中,所述设定取值,用于指示所述IPID的取值为发送时刻。

可选地,所述根据数据块的获取时刻,确定用于传输所述数据块的协议报文的发送时刻,包括:根据IP层获取所述数据块的获取时刻,确定用于传输所述数据块的至少一个协议报文均对应所述发送时刻。

可选地,所述根据IP层获取所述数据块的获取时刻,确定用于传输所述数据块的至少一个协议报文均对应所述发送时刻,包括:

确定所述IP层获取所述数据块的获取时刻相对最近同步时钟信号的时域偏移量;

将所述时域偏移量作为用于传输所述数据块的至少一个协议报文对应的发送时刻。

根据本申请的第五方面,提供了一种时延测量装置,包括:

收发单元,用于接收协议报文;

处理单元,用于根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻;

计算单元,用于根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延。

根据本申请的第六方面,提供了一种时延测量装置,包括:

处理单元,用于根据数据块的获取时刻,确定用于传输所述数据块的协议报文的发送时刻;

计算单元,用于根据所述发送时刻,生成所述协议报文的协议头中的数据报文编号IPID;其中,所述IPID用于确定所述协议报文的传输时延;

收发单元,用于向接收端发送所述协议报文。

根据本申请的第七方面,提供了一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行第一方面所述的时延测量方法。

根据本申请的第八方面,提供了一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行第二方面所述的时延测量方法。

本申请实施例提供的技术方案包含如下的有益效果:

本申请中,通过接收协议报文,根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻,根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延,提高了时延测量的准确性,减少测量误差,同时,该方法利用现有协议定义字段进行时延测量,具有更好的普适性和兼容性,节约系统开销。

应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1是本申请实施例提供的一种通信系统的架构示意图;

图2是本申请实施例提供的一种时延测量方法的流程示意图;

图3是本申请实施例提供的一种IPv4定义的协议报文的协议头格式示意图;

图4是本申请实施例提供的另一种时延测量方法的流程示意图;

图5是本申请实施例提供的一种时延测量方法的流程示意图;

图6是本申请实施例提供的另一种时延测量方法的流程示意图;

图7是本申请实施例提供的一种通信设备的结构示意图;

图8是本申请实施例提供的另一种通信设备的结构示意图;

图9是本申请实施例提供的一种时延测量装置的结构示意图;

图10是本申请实施例提供的另一种时延测量装置的结构示意图。

具体实施方式

本申请实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

本申请实施例中术语“多个”是指两个或两个以上,其它量词与之类似。

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例提供了一种时延测量方法、装置、通信设备和存储介质,提高了时延测量的准确性,同时,利用现有协议定义字段进行时延测量,具有更好的普适性和兼容性,节约系统开销。

为了更好的理解本申请实施例公开的一种时延测量方法,下面首先对本申请实施例适用的通信系统进行描述。

请参见图1,图1为本申请实施例提供的一种通信系统的架构示意图。该通信系统包括但不限于一个发送端和一个接收端。图1所示的通信系统以包括一个发送端101和一个接收端102为例。

发送端101可以是网络设备,也可以是终端设备,还可以是网络设备内部的子模块。接收端102也可以是网络设备,可以是终端设备,还可以是网络设备内部的子模块。也就是说,本申请实施例提供的时延测量方法可以应用于网络设备与网络设备之间的传输时延测量,也可以应用于网络设备与终端设备之间的传输时延测量,还可以应用于网络设备内部的各个子模块之间的传输时延测量。

需要说明的是,本申请实施例提供的技术方案可以适用于多种通信系统,尤其是5G系统。例如适用的系统可以是全球移动通讯(global system of mobilecommunication,GSM)系统、码分多址(code division multiple access,CDMA)系统、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)通用分组无线业务(general packet radio service,GPRS)系统、长期演进(long term evolution,LTE)系统、LTE频分双工(frequency division duplex,FDD)系统、LTE时分双工(time divisionduplex,TDD)系统、高级长期演进(long term evolution advanced,LTE-A)系统、通用移动系统(universal mobile telecommunication system,UMTS)、全球互联微波接入(worldwide interoperability for microwave access,WiMAX)系统、5G新空口(NewRadio,NR)系统等。这多种系统中均包括终端设备和网络设备。系统中还可以包括核心网部分,例如演进的分组系统(EvlovedPacket System,EPS)、5G系统(5GS)等。

根据OSI(Open System Interconnection,开放系统互联)七层模型,发送端101向接收端102发送数据的过程如图1所示。数据会依次经过发送端101的应用层、表示层、会话层、传输层、网络层、数据链路层、物理层,在每一层中通过每层对应的不同的协议进行封装,将封装后的数据包传输到接收端102,然后接收端102从物理层向上一层一层解封装数据包,最终数据到达接收端102的应用层。其中,网络层的协议代表为IP(InternetProtocol,网际互连协议)协议。

在通信传输过程中,数据的传输时延会影响数据的时效性,从而影响通信质量。因此,在时间敏感的网络中,会进行数据传输时延的监测。

在相关技术中,往往采用IP时间戳可选项或者应用层自定义时间戳字段的方法来测量传输时延。但是,采用IP时间戳可选项的测量方法主要应用于路由器跟踪以及路由器处理时延检查,体现的是传输中间环节状态,无法测量端到端的时延,而采用应用层自定义时间戳字段的时延测量方法虽然可以测量端到端的时延,但是其作为应用层的时延测量方法,与应用程序绑定,也就是与进程绑定,不具有普适性,即每个进程均需要单独实现,跨进程、跨设备、跨应用进行交互时,时间戳格式定义的不一致则无法进行通信交互,而且其测量的是应用层到应用层对等层时延,对于时延异常的情况无法判断细分出异常发生在哪一层。

本申请的实施例中,通过接收协议报文,根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻,根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延,提高了时延测量的准确性,减少测量误差,同时,该方法利用现有协议定义字段进行时延测量,具有更好的普适性和兼容性,节约系统开销。

图2是本申请实施例提供的一种时延测量方法的流程示意图。

如图2所示,本申请实施例的一种时延测量方法,主要包括以下步骤:

步骤S201,接收协议报文。

可选地,该协议报文为基于IPv4(Internet Protocol version 4,网际协议版本4,又称互联网通信协议第四版)网络的协议报文。

IPv4定义的协议报文的协议头格式如图3所示。其中,各字段的含义如下:

版本:IP协议的版本号,IPv4此字段固定为4;

首部长度:IP头长,包含可选项(若有可选项);

区分服务:区分数据优先级,面向服务提供差异化的数据传输保障措施;

总长度:IP包总长度,包含基本IP头、IP头可选项、IP承载净荷的长度;

IPID:数据报文编号,面向服务提交的数据块编号,若大于IP MTU(MaximumTransmission Unit,最大传输单元),则需要进行分片,且分片携带的ID相同,IPID是对IP报文的编号,同一个传输层数据块若在IP层分片需要携带相同IPID,因此IPID也被作为重组的依据;

标志:分片标志字段,最高位保留,次高位为不允许分片标志,最低位为尾片标志位;其中,最高位也就是分片标志位R,次高位也就是分片标志位D,最低位也就是分片标志位M。

分片偏移:指示IP报文净荷首字节在原始报文中的偏移;

生存时间:每过一个路由器,该生存时间减1,也即路由跳数限制,防止数据回环风暴;

协议类型:指示传输层协议,如UDP(User Datagram Protocol,用户数字报协议)、TCP(Transmission Control Protocol,传输控制协议)、SCTP(Stream ControlTransmission Protocol,流控制传输协议)等;

校验和:对IP首部进行校验和计算;

源IP地址:数据发送方IP地址;

目的IP地址:数据接收方IP地址。

可以理解的是,接收端接收协议报文,从物理层向上一层一层解析该协议报文。

步骤S202,根据协议报文的协议头中的数据报文编号IPID,确定协议报文的发送时刻。

如上所述,在协议报文的协议头中,存在数据报文编号IPID字段。

在本申请的实施例中,可以根据该字段填充的内容确定出协议报文的发送时刻。

在一些实施方式中,协议报文的发送时刻是指发送端的IP层从传输层获取到数据块的时刻。

可选地,所述发送时刻利用最近同步时钟信号的时域偏移量表示,也就是距离最近同步时钟信号的偏移时间。

需要说明的是,在通信系统中,基站系统要求所有模块帧号同步,在基站系统进行业务传输之前需要首先完成各模块的“对表”,即时钟同步过程,此过程通过硬件信号编码完成,精度可以达到纳秒级,本申请实施例提供的技术方案均基于已经同步完成的基站系统描述。因此,根据基站的同步性,无线通信系统中各设备、各模块之间都是UTC(UniversalTime Coordinated,协调世界时)时间同步对齐的。

可以理解的是,根据需求的不同,时延测量的精度可能不同,可以采用不用的方法来表示协议报文的发送时刻,在采用最近同步时钟信号的时域偏移量表示的情况下,根据精度需求的不同,也可以选择不同的同步时钟信号。

可选地,该同步时钟信号是接收卫星信号进行处理后得到的,来源于卫星原子钟,该同步时钟信号的周期为1000000us。

另外需要说明的是,因为IPID字段本身的含义为数据报文编号,面向服务提交的数据块编号,因此通过IPID确定出协议报文的发送时刻是对IPID字段的复用。

在一些实施方式中,可以通过指示信息指示IPID字段携带的内容是否可以解释为发送时刻。

可选地,该指示信息可以是协议头中的分片标志字段。

步骤S203,根据该发送时刻,以及协议报文的接收时刻,确定协议报文的传输时延。

在一些实施方式中,协议报文的接收时刻是指接收端的IP层获取到协议报文的时刻。

可选地,所述接收时刻也利用最近同步时钟信号的时域偏移量表示,也就是距离最近同步时钟信号的偏移时间。

可以理解的是,根据需求的不同,时延测量的精度可能不同,可以采用不用的方法来表示协议报文的接收时刻,在采用最近同步时钟信号的时域偏移量表示的情况下,根据精度需求的不同,也可以选择不同的同步时钟信号。

在本申请实施例中,接收端根据协议报文的发送时刻和协议报文的接收时刻,两个时刻相比较即可确定协议报文的端到端的传输时延。

可选地,可以通过发送时刻和接收时刻相对于最近同步时钟信号的时域偏移量之差来确定传输时延。

在一些实施方式中,接收端计算出协议报文的传输时延后,将该传输时延写入该协议报文协议头的IPID字段,通过对套接字接口设置目标选项,将该协议头写入数据包,以使应用层读取该数据包得到协议头的IPID携带的传输时延。

也就是,在一些实施方式中,接收端在计算出协议报文的传输时延之后,将该传输时延写入报文协议头的IPID字段,为了使得接收端的应用层能够获取到该传输时延,对套接字接口设置目标选项,能够将该协议头写入数据包,应用层获取数据包时也获取了该数据包中的协议头,读取该数据包就可以获得该传输时延。

可选地,该目标选项为IP_HDRINCL选项。

本申请实施例的时延测量方法,通过接收协议报文,根据协议报文的协议头中的数据报文编号IPID,确定协议报文的发送时刻,根据该发送时刻,以及协议报文的接收时刻,确定协议报文的传输时延,提高了时延测量的准确性,减少测量误差,同时,该方法利用现有协议定义字段进行时延测量,具有更好的普适性和兼容性,节约系统开销。

图4是本申请实施例提供的另一种时延测量方法的流程示意图。

如图4所示,本申请实施例的另一种时延测量方法,主要包括以下步骤:

步骤S401,接收协议报文。

可选地,该协议报文为基于IPv4网络的协议报文。

步骤S402,解析协议报文的协议头,以得到IPID和分片标志最高位。

其中,分片标志最高位是指分片标志字段三位中的最高位,也就是分片标志位R。

可选地,接收端的IP层解析该协议报文的协议头,得到IPID和分片标志位R。

可以理解的是,接收端的IP层解析该协议报文的协议头还能够得到协议头中携带的其他信息。

步骤S403,在分片标志最高位符合设定取值的情况下,根据IPID确定协议报文的发送时刻。

可选地,在分片标志位R为1的情况下,根据IPID确定协议报文的发送时刻。也就是,在分片标志位R为1的情况下,IPID字段的内容可被解释为协议报文的发送时刻。

可以理解的是,类似的,还可以设置设定取值为0,也就是在分片标志位R为0的情况下,根据IPID确定协议报文的发送时刻。

步骤S404,获取协议报文的接收时刻相对最近同步时钟信号的第一时域偏移量。

可选地,协议报文的接收时刻为接收端的IP层接收到协议报文的时刻。

其中,第一时域偏移量为接收时刻相对最近同步时钟信号的时域偏移量。可以理解的是,该最近同步时钟信号为在接收时刻之前的,最近一次的同步时钟信号。

步骤S405,确定协议报文的发送时刻相对该最近同步时钟信号的第二时域偏移量。

可选地,协议报文的发送时刻为发送端的IP层从传输层获取到数据块的时刻。

其中,第二时域偏移量为发送时刻相对步骤S404中的最近同步时钟信号的时域偏移量。

步骤S406,根据第一时域偏移量和第二时域偏移量之差,确定协议报文的传输时延。

可以理解,协议报文的传输时延=第一时域偏移量-第二时域偏移量。

步骤S407,将该传输时延写入协议头的IPID。

接收端在计算出该协议报文的传输时延之后,将该传输时延写入协议头的IPID字段。

可以理解的是,IP层依然会按照正常的通信方法,解析并向上层传递数据。

步骤S408,通过对套接字接口设置目标选项,将该协议头写入数据包,以使应用层读取该数据包得到协议头的IPID携带的传输时延。

可以理解,为了使应用层能够获取到传输时延,需要对套接字接口设置目标选项,来将步骤S407中的协议头写入应用层能够读取到的数据包。

可选地,目标选项为IP_HDRINCL选项。

这样,应用层读取该数据包,同时能够读取到写入该数据包的协议头,读取该协议头的IPID字段,即可获取协议报文的传输时延。

本申请实施例的时延测量方法,通过接收协议报文,解析协议报文的协议头,以得到IPID和分片标志最高位,在分片标志最高位符合设定取值的情况下,根据IPID确定协议报文的发送时刻,获取协议报文的接收时刻相对最近同步时钟信号的第一时域偏移量,确定协议报文的发送时刻相对该最近同步时钟信号的第二时域偏移量,根据第一时域偏移量和第二时域偏移量之差,确定协议报文的传输时延,将该传输时延写入协议头的IPID,通过对套接字接口设置目标选项,将该协议头写入数据包,以使应用层读取该数据包得到协议头的IPID携带的传输时延,提高了时延测量的准确性,减少测量误差,同时,该方法利用现有协议定义字段进行时延测量,具有更好的普适性和兼容性,节约系统开销。

图5是本申请实施例提供的一种时延测量方法的流程示意图。

如图5所示,本申请实施例的一种时延测量方法,主要包括以下步骤:

步骤S501,根据数据块的获取时刻,确定用于传输该数据块的协议报文的发送时刻。

在本申请实施例中,该协议报文为基于IPv4网络的协议报文。

可选地,根据IP层获取到数据块的时刻,确定用于传输该数据块的协议报文对应的发送时刻。

在一些实施例中,数据块大于IP最大传输单元,则传输层的数据块在IP层需要进行分片,也就是需要多个协议报文来传输该数据块,同一个传输层数据块在IP层分片携带的IPID相同,也就是,传输同一个传输层数据块的多个协议报文均对应该发送时刻。

可选地,该发送时刻利用最近同步时钟信号的时域偏移量表示,也就是距离最近同步时钟信号的偏移时间,也就是IP层接收数据块的时刻相对最近同步时钟信号的时域偏移量。

可以理解的是,根据需求的不同,时延测量的精度可能不同,可以采用不用的方法来表示协议报文的发送时刻,在采用最近同步时钟信号的时域偏移量表示的情况下,根据精度需求的不同,也可以选择不同的同步时钟信号。

可选地,该同步时钟信号是接收卫星信号进行处理后得到的,来源于卫星原子钟,该同步时钟信号的周期为1000000us。

步骤S502,根据发送时刻,生成协议报文的协议头中的数据报文编号IPID,其中,IPID用于确定协议报文的传输时延。

根据步骤S501确定出的协议报文的发送时刻,生成协议报文的协议头中的数据报文编号IPID,也就是,通过协议报文中的IPID的取值表示该协议报文的发送时刻。

其中,IPID用于确定协议报文的传输时延。可以理解的是,接收端可以根据IPID所表示的协议报文的发送时刻,确定协议报文的传输时延。

需要说明的是,因为IPID字段本身的含义为数据报文编号,面向服务提交的数据块编号,因此通过IPID确定出协议报文的发送时刻是对IPID字段的复用。

在一些实施方式中,可以通过指示信息指示IPID字段携带的内容是否可以解释为发送时刻。

可选地,该指示信息可以是协议头中的分片标志字段。

步骤S503,向接收端发送协议报文。

可选地,该协议报文从IP层进一步经过数据链路层和物理层的封装处理,发送给接收端。

在本申请实施例中,根据应用场景、通信系统的不同,可以通过有线、无线等多种通信链路向接收端发送协议报文,对协议报文的具体发送方法在此不作限定。

本申请实施例的时延测量方法,通过根据数据块的获取时刻,确定用于传输该数据块的协议报文的发送时刻,根据发送时刻,生成协议报文的协议头中的数据报文编号IPID,其中,IPID,用于确定协议报文的传输时延,向接收端发送协议报文,提高了时延测量的准确性,减少测量误差,同时,该方法利用现有协议定义字段进行时延测量,具有更好的普适性和兼容性,节约系统开销。

图6是本申请实施例提供的另一种时延测量方法的流程示意图。

如图6所示,本申请实施例的另一种时延测量方法,主要包括以下步骤:

步骤S601,根据IP层获取数据块的获取时刻,确定用于传输该数据块的至少一个协议报文对应的发送时刻。

在一些实施例中,若数据块大于IP最大传输单元,则传输层的数据块在IP层需要进行分片,也就是需要多个协议报文来传输该数据块,同一个传输层数据块在IP层分片携带的IPID相同,也就是,传输同一个传输层数据块的多个协议报文均对应该发送时刻。

因此,传输该数据块的至少一个协议报文对应的发送时刻均为IP层获取到该数据块的时刻。

可选地,确定IP层接收数据块的时刻相对最近同步时钟信号的时域偏移量,将该时域偏移量作为用于传输该数据块的至少一个协议报文对应的发送时刻。

步骤S602,在时延测量功能使能的情况下,将发送时刻作为协议报文的协议头中的IPID,将协议报文的协议头中分片标志最高位配置为设定取值。

其中,分片标志最高位为分片标志字段三位中的最高位,也就是分片标志位R,该设定取值用于指示IPID的取值为发送时刻。

可选地,在时延测量功能使能的情况下,将分片标志位R配置为1。也就是,在分片标志位R为1的情况下,IPID字段的内容可被解释为协议报文的发送时刻。

可以理解的是,类似的,还可以在时延测量功能使能的情况下,将分片标志位R配置为0,也就是在分片标志位R为0的情况下,IPID字段的内容可被解释为协议报文的发送时刻。

根据S601确定出的至少一个协议报文对应的发送时刻,将该发送时刻作为该至少一个协议报文的协议头中的IPID,也就是,通过协议报文中的IPID的取值表示该至少一个协议报文的发送时刻。

步骤S603,向接收端发送协议报文。

本申请实施例的时延测量方法,通过根据IP层获取数据块的获取时刻,确定用于传输该数据块的至少一个协议报文对应的发送时刻,在时延测量功能使能的情况下,将发送时刻作为协议报文的协议头中的IPID,将协议报文的协议头中分片标志最高位配置为设定取值,向接收端发送协议报文,提高了时延测量的准确性,减少测量误差,同时,该方法利用现有协议定义字段进行时延测量,具有更好的普适性和兼容性,节约系统开销。

为了实现上述实施例,本申请实施例还提出了一种通信设备,图7是本申请实施例提供的一种通信设备的结构示意图。

如图7所示,该通信设备包括:存储器701、收发机702和处理器703。

其中,存储器701,用于存储计算机程序;收发机702,用于在所述处理器的控制下收发数据;处理器703,用于读取所述存储器中的计算机程序并执行以下操作:

接收协议报文;

根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻;

根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延。

作为一种可能的实施方式,解析所述协议报文的协议头,以得到所述IPID和分片标志最高位,在所述分片标志最高位符合设定取值的情况下,根据所述IPID确定所述发送时刻。

作为一种可能的实施方式,获取所述接收时刻相对最近同步时钟信号的第一时域偏移量,确定所述发送时刻相对所述最近同步时钟信号的第二时域偏移量,根据所述第一时域偏移量和所述第二时域偏移量之差,确定所述协议报文的传输时延。

作为一种可能的实施方式,根据IP层接收到所述协议报文的接收时刻,确定所述接收时刻相对所述最近同步时钟信号的所述第一时域偏移量。

作为一种可能的实施方式,将所述传输时延写入所述协议头的IPID,通过对套接字接口设置目标选项,将所述协议头写入数据包,以使所述应用层读取所述数据包得到所述协议头的IPID携带的所述传输时延。

需要说明的是,本申请实施例提供的上述通信设备,能够实现上述图2,图4方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行赘述。

为了实现上述实施例,本申请实施例还提出了另一种通信设备,图8是本申请实施例提供的另一种通信设备的结构示意图。

如图8所示,该通信设备包括:存储器801、收发机802和处理器803。

其中,存储器801,用于存储计算机程序;收发机802,用于在所述处理器的控制下收发数据;处理器803,用于读取所述存储器中的计算机程序并执行以下操作:

根据数据块的获取时刻,确定用于传输所述数据块的协议报文的发送时刻;

根据所述发送时刻,生成所述协议报文的协议头中的数据报文编号IPID;其中,所述IPID用于确定所述协议报文的传输时延;

向接收端发送所述协议报文。

作为一种可能的实施方式,在时延测量功能使能的情况下,将所述发送时刻作为所述协议报文的协议头中的IPID,以及将所述协议报文的协议头中分片标志最高位配置为设定取值;其中,所述设定取值,用于指示所述IPID的取值为发送时刻。

作为一种可能的实施方式,根据IP层获取所述数据块的获取时刻,确定用于传输所述数据块的至少一个协议报文均对应所述发送时刻。

作为一种可能的实施方式,确定所述IP层获取所述数据块的获取时刻相对最近同步时钟信号的时域偏移量,将所述时域偏移量作为用于传输所述数据块的至少一个协议报文对应的发送时刻。

需要说明的是,本申请实施例提供的上述通信设备,能够实现上述图5-图6方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行赘述。

为了实现上述实施例,本申请实施例还提出了一种时延测量装置。图9是本申请实施例提供的一种时延测量装置的结构示意图。

如图9所示,该装置包括:收发单元910,处理单元920和计算单元930。

其中,收发单元910,用于接收协议报文;

处理单元920,用于根据所述协议报文的协议头中的数据报文编号IPID,确定所述协议报文的发送时刻;

计算单元930,用于根据所述发送时刻,以及所述协议报文的接收时刻,确定所述协议报文的传输时延。

作为一种可能的实施方式,处理单元920具体用于,解析所述协议报文的协议头,以得到所述IPID和分片标志最高位,在所述分片标志最高位符合设定取值的情况下,根据所述IPID确定所述发送时刻。

作为一种可能的实施方式,计算单元930具体用于,获取所述接收时刻相对最近同步时钟信号的第一时域偏移量,确定所述发送时刻相对所述最近同步时钟信号的第二时域偏移量,根据所述第一时域偏移量和所述第二时域偏移量之差,确定所述协议报文的传输时延。

作为一种可能的实施方式,计算单元930具体还用于,根据IP层接收到所述协议报文的接收时刻,确定所述接收时刻相对所述最近同步时钟信号的所述第一时域偏移量。

作为一种可能的实施方式,处理单元920还用于,将所述传输时延写入所述协议头的IPID,通过对套接字接口设置目标选项,将所述协议头写入数据包,以使所述应用层读取所述数据包得到所述协议头的IPID携带的所述传输时延。

需要说明的是,本申请实施例提供的上述时延测量装置,能够实现上述图2,图4方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行赘述。

为了实现上述实施例,本申请实施例还提出了另一种时延测量装置。图10是本申请实施例提供的另一种时延测量装置的结构示意图。

如图10所示,该装置包括:处理单元1010,计算单元1020和收发单元1030。

其中,处理单元1010,用于根据数据块的获取时刻,确定用于传输所述数据块的协议报文的发送时刻;

计算单元1020,用于根据所述发送时刻,生成所述协议报文的协议头中的数据报文编号IPID;其中,所述IPID用于确定所述协议报文的传输时延;

收发单元1030,用于向接收端发送所述协议报文。

作为一种可能的实施方式,计算单元1020具体用于,在时延测量功能使能的情况下,将所述发送时刻作为所述协议报文的协议头中的IPID,以及将所述协议报文的协议头中分片标志最高位配置为设定取值;其中,所述设定取值,用于指示所述IPID的取值为发送时刻。

作为一种可能的实施方式,处理单元1010具体用于,根据IP层获取所述数据块的获取时刻,确定用于传输所述数据块的至少一个协议报文均对应所述发送时刻。

作为一种可能的实施方式,处理单元1010具体用于,确定所述IP层获取所述数据块的获取时刻相对最近同步时钟信号的时域偏移量,将所述时域偏移量作为用于传输所述数据块的至少一个协议报文对应的发送时刻。

需要说明的是,本申请实施例提供的上述时延测量装置,能够实现上述图5-图6方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行赘述。

需要说明的是,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络侧设备等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

根据本申请的实施例,本申请还提供了一种处理器可读存储介质。

其中,该处理器可读存储介质存储有计算机程序,该计算机程序用于使该处理器执行本申请上述图2,图4实施例所述的时延测量方法或者上述图5-图6实施例所述的时延测量方法。

其中,处理器可读存储介质可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。

这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机可执行指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机可执行指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些处理器可执行指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的处理器可读存储器中,使得存储在该处理器可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些处理器可执行指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

技术分类

06120115932205