CN112019393B - 一种确定时延的方法及装置 - Google Patents
一种确定时延的方法及装置 Download PDFInfo
- Publication number
- CN112019393B CN112019393B CN201910459026.5A CN201910459026A CN112019393B CN 112019393 B CN112019393 B CN 112019393B CN 201910459026 A CN201910459026 A CN 201910459026A CN 112019393 B CN112019393 B CN 112019393B
- Authority
- CN
- China
- Prior art keywords
- information
- type
- receiving
- pieces
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及通信技术领域,公开了一种确定时延的方法及装置,用以解决中间网元需要解析数据包的数据部分计算传输时延或者不具备解析数据包能力导致不能计算传输时延的问题。该方法为:中间网元接收请求设备发送给提供设备的数据包和服务提供设备发送给服务请求设备的数据包;针对每个数据包记录接收时间、源地址、目的地址,协议类型;在连续记录的多条信息中提取第一类信息以及第二类信息,第一类信息与第二类信息需要满足一定的条件;然后根据第一类信息与第二类信息中的多个接收时间,确定提供设备与请求设备之间的传输时延信息,从而无需中间网元解析数据包的数据部分就可以计算传输时延,因此可以提高确定传输时延的灵活性和通用性。
Description
技术领域
本申请实施例涉及通信技术领域,尤其涉及一种确定时延的方法及装置。
背景技术
在日益增长的网络服务中,为了研究如何向用户提供更高质量的服务,确保服务能够得到用户的认可,以用户设备与服务提供设备间的传输时延来衡量服务质量是当前的迫切需要。时延是指某一设备从本端发出一个数据包,至接收到对端返回的针对该数据包的响应包所经历的时长。在衡量服务质量时,一个时延不具有代表性,可以根据一个数据流(连续的多个数据包)来确定多个时延,通过多个时延衡量服务质量。
需要说明的是,用户设备在请求服务时,用户设备需要将请求数据包发送至各种中间网元(例如,路由器、交换机等),由中间网元将请求数据包转发至服务提供设备,并且服务提供设备发送给用户设备的响应数据包也需要由中间网元进行转发至用户设备。
针对传输控制协议(transmission control protocol,TCP)的数据包,中间网元可以根据数据包包头中的包序号确定成对的请求数据包和响应数据包,确定传输时延,由于某些协议类型(例如,用户数据报协议(User Datagram Protocol,UDP)),数据包的头部中没有包序号,不保证数据包的有序性,中间网元不清楚哪两个数据包是一对,则需要解析数据包的数据部分,确定请求与响应成对的数据包,才能确定传输时延,甚至有的中间网元不具备数据包的数据部分的解析能力,根本无法确定传输时延。基于此,如何提高确定传输时延的灵活性,通用性是需要解决的问题。
发明内容
本申请实施例提供一种确定时延的方法及装置,用以解决中间网元需要解析数据包的数据部分计算传输时延或者不能计算传输时延的问题。
第一方面,本申请提供了一种确定时延的方法,中间网元接收服务请求设备发送给服务提供设备的数据包,以及接收服务提供设备发送给服务请求设备的数据包;中间网元可以针对接收到的每个数据包记录一条信息,记录的该条信息包括:接收时间、源地址、目的地址,协议类型;源地址和目的地址可以是IP地址。中间网元可以在连续记录的多条信息中提取第一类信息以及第二类信息,其中,第一类信息与第二类信息中各包括多条信息,多条信息满足:所述第一类信息包括的多条信息之间的源地址相同、且目的地址相同;所述第二类信息包括的多条信息之间的源地址相同、且目的地址相同;所述第一类信息包括的多条信息的源地址与所述第二类信息包括的多条信息的目的地址相同,且所述第一类信息包括的多条信息的目的地址与所述第二类信息包括的多条信息的源地址相同;所述第一类信息包括的多条信息中的协议类型与所述第二类信息包括的多条信息中的协议类型相同;中间网元根据第一类信息与第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息。传输时延信息可以是传输时延值,也可以是优良差等。
在本申请实施例中,中间网元通过提取服务请求设备与服务提供设备间传输的数据包的包头信息中包含的源地址、目的地址、协议类型等信息,并记录对应的接收时间,从而形成记录信息,后续可以根据多条记录信息构成满足相应条件的第一类信息和第二类信息,并根据第一类信息与第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,从而无需中间网元解析服务请求设备与服务提供设备之间传输的数据包的数据部分,即中间网元不具备解析数据包的数据内容的能力时也可以计算服务请求设备与服务提供设备之间的传输时延,由此可以提高确定传输时延的灵活性,通用性。
在一种可能的实现中,中间网元针对每个数据包记录的一条信息中还可以包括:源端口号和目的端口号;
则第一类信息与第二类信息中各包括的多条信息,还满足以下条件:
所述第一类信息包括的多条信息之间的源端口号相同、且目的端口号相同;所述第二类信息包括的多条信息之间的源端口号相同、且目的端口号相同;
所述第一类信息包括的多条信息的源端口号与所述第二类信息包括的多条信息的目的端口号相同,且所述第一类信息包括的多条信息的目的端口号与所述第二类信息包括的多条信息的源端口号相同;
中间网元根据第一类信息与第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息时,具体可以根据第一类信息与第二类信息中的多个接收时间,确定源地址所标识的设备的源端口与目的地址所标识的设备的目的端口之间的传输时延信息,所述源端口为所述源端口号所标识的端口,所述目的端口为所述目的端口号所标识的端口。
通过端口号标识设备所提供的服务的端口,中间网元可以确定出服务提供设备在提供某种服务时,服务请求设备与服务提供设备间的传输时延信息。
在一种可能的实现中,所述一条信息还包括:数据包的预设比特位上的数值,所述预设比特位上承载的不同数值用于表征不同的服务;
第一类信息与第二类信息中各包括的多条信息,还满足:
所述第一类信息包括的多条信息中的预设比特位上的数值与第二类信息包括的多条信息中的预设比特位上的数值相同。
通过预设比特位上承载的数值表征服务提供设备所提供的服务,中间网元可以确定出服务提供设备在提供某种服务时,服务请求设备与服务提供设备间的传输时延信息。
在一种可能的实现中,中间网元可以将第一类信息和第二类信息分别包括的多条信息中的多个接收时间按照时间顺序排序;并确定排序后的多个接收时间中的有效首个接收时间;以排序后的所述有效首个接收时间为起点,以两个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组,各组中不存在相同的接收时间,各组中的第一个接收时间与第二个接收时间分别位于第一类信息和第二类信息中的不同类信息中,也就是如果第一个接收时间位于第一类信息中,则第二个接收时间位于第二类信息中;如果第一个接收时间位于第二类信息中,则第二个接收时间位于第一类信息中;中间网元可以先确定每组中包括的两个接收时间的时间差值的绝对值,然后确定多个差值的绝对值的平均值,将确定出的所述平均值确定为所述有效首个接收时间对应的目的地址所标识的设备与所述中间网元之间的传输时延信息;如果所述有效首个接收时间对应的目的地址所标识的设备为服务提供设备,则将确定出的传输时延信息称为第一传输时延值,如果所述有效首个接收时间对应的目的地址所标识的设备为服务请求设备,则将确定出的传输时延信息称为第二传输时延值。中间网元可以分别确定出第一传输时延值与第二传输时延值后,将第一传输时延值与第二传输时延值相加得到的和值,确定为所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息。
通过相邻的两个接收时间之间的差值的绝对值,分别确定出中间网元与服务提供设备间的传输时延,以及中间网元与服务请求设备间的传输时延,最终确定出服务请求设备与服务提供设备间的传输时延。
在一种可能的实现中,中间网元还可以确定第一类信息中的接收时间的数量与第二类信息中的接收时间的数量的比值等于1或接近1之后,再在以排序后的有效首个接收时间为起点,以两个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组。
上述中,中间网元在确定服务请求设备与服务提供设备间在传输数据包时,是遵循一个上行数据包对应一个下行数据包的原则后,才将排序后两个相邻接收时间分成一组,可以较好提高确定传输时延的准确性。
在一种可能的实现中,中间网元还可以将所述第一类信息和所述第二类信息分别包括的多条信息中的多个接收时间按照时间顺序排序;确定排序后的多个接收时间中的有效首个接收时间,例如,排序后的第一个接收时间为有效首个接收时间;以排序后的所述首个接收时间为起点,以三个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组,各组中不存在相同的接收时间,各组中的第一个接收时间与第二个接收时间分别位于第一类信息中和第二类信息中的不同类信息中,第一个接收时间与第三个接收时间分别位于第一类信息和第二类信息中的相同类信息中;也就是如果第一个接收时间位于第一类信息中,则第三个接收时间也位于第一类信息中,且第二个接收时间位于第二类信息中,如果第一个接收时间位于第二类信息中,则第三个接收时间也位于第二类信息中,且第二个接收时间位于第一类信息中;中间网元可以确定每组中包括的最晚的接收时间与最早的接收时间的时间差值的绝对值,再确定多个差值的绝对值的平均值,将确定出的所述平均值确定为所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息。
在一种可能的实现中,中间网元还可以确定所述第一类信息中的接收时间的数量与所述第二类信息中的接收时间的数量的比值等于0.5或等于2或接近0.5或接近2之后,再在以排序后的所述首个接收时间为起点,以三个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组。
上述中,通过中间网元先确定服务请求设备与服务提供设备间在传输数据包时,是遵循一个上行请求数据包对应一个下行响应数据包和一个上行响应数据包的原则或遵循一个下行数据包对应一个上行数据包和一个下行响应数据包的原则,才将排序后三个数据包分成一组,因此可以较好提高确定传输时延的准确性。
在一种可能的实现中,中间网元可以根据每组中的最早的接收时间,确定任意相邻的两组中的最早的接收时间的差值的绝对值,若任意相邻的两组中最早的接收时间的差值的绝对值相等或接近时,确定所述有效首个接收时间对应的源地址所标识的设备是周期性发送数据包的,则可以进一步确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,如果任意相邻的两组中最早的接收时间的差值的绝对值不相等且不接近,则确定分组后的接收时间不适宜用来确定传输时延信息。
通过在确定任意相邻的两组中最早的接收时间的差值的绝对值相等或接近时,才进行传输时延信息的确定,也可以较好提高确定传输时延信息的准确性。
在一种可能的实现中,中间网元在排序后的多个接收时间中确定有效首个接收时间,具体可以针对第i个接收时间,确定第i个接收时间与第i-1个接收时间的第一差值的绝对值,以及第i个接收时间与第i+1个接收时间的第二差值的绝对值;确定第一差值的绝对值与第二差值的绝对值的比值,所述i依次从2至N中取值正整数,N为第一类信息和第二类信息中接收时间的总数量;若i取值到n时,确定出的所述比值大于预设的阈值,则确定所述第n个接收时间为排序后的多个接收时间中的有效首个接收时间。
服务请求设备请求服务或服务提供设备提供服务一般是周期性的,该周期在s级别,但是网络交互的时延很短,一般在ms级别,相邻的三个接收时间中,如果前两个的差值绝对值相较于后两个的差值绝对值明显大很多,则可以在一定程度上说明前两个接收时间对应的数据包属于两次服务中的数据包,而后两个接收时间对应的数据包属于一次服务中的数据包,也就是三个中的第二个接收时间为有效首个接收时间,通过上述方式确定有效首个接收时间,提高了确定传输时延信息的准确性。
在一种可能的实现中,中间网元还可以根据所述第一类信息中的多个接收时间以及所述第二类信息中的多个接收时间,确定源地址所标识的设备与目的地址所标识的设备之间的传输属性信息,传输属性信息包括包抖动均值与包间隔均值的比值、包间隔、包间隔均值、包间隔方差、包抖动、包抖动均值、包抖动方差、包大小中一种或多种;
根据所述传输属性信息,以及预先学习的传输属性信息与传输时延信息的映射关系,确定源地址所标识的设备与目的地址所标识的设备之间的传输时延信息。
通过对一定数量或一个时间长度内的数据进行传输属性信息的计算,并使用机器学习的方法可以训练得到传输属性信息与传输时延信息的模型,该模型可以为映射关系,这样就可以基于该模型进行时延的预测,可以达到准确有效地评估传输时延的目的,提高确定传输时延的通用性,灵活性。
第二方面,提供了一种确定时延的装置,该装置具有实现上述各方面和各方面的任一种可能的实现中方法的功能模块。所述功能模块可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的实现中,该装置可以是芯片或者集成电路。
在一个可能的实现中,该装置包括处理器、存储器和通信接口;所述通信接口用于在所述处理器的接收数据包或发送数据包,所述存储器用于存储计算机程序,处理器用于执行存储器中的一组计算机程序,当程序被执行时,所述装置可以通过通信接口执行上述第一方面和第一方面的任一种可能的实现中的方法。
第三方面,提供了一种确定时延的装置,所述装置包括:处理模块,发送模块,接收模块。所述处理模块均可以通过上述第二方面及任一可能的实现中的处理器来实现,所述发送模块和接收模块可以通过第二方面及任一可能的实现中的通信接口来实现。所述处理模块可以基于发送模块和接收模块收发消息的功能,执行上述第一方面和第一方面的任一种可能的实现中的方法。
第四方面,提供了一种确定时延的***,所述***包括:执行上述第一方面和第一方面的任一种可能的实现中的方法中的中间网元,以及向所述中间网元发送数据包的服务请求设备和服务提供设备。
第五方面,提供一种计算机可读存储介质,所述计算机存储介质中存储有计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述各方面和各方面的任一可能的实现中所述的方法。
第六方面,提供一种计算机程序产品,当计算机读取并执行所述计算机程序产品时,使得计算机执行上述各方面和各方面的任一可能的实现中所述的方法。
第七方面,提供一种芯片,所述芯片与存储器耦合,用于读取并执行所述存储器中存储的软件程序,以实现上述各方面和各方面的任一可能的实现中所述的方法。
附图说明
图1A为本申请实施例中提供的一种业务场景示意图;
图1B为本申请实施例中提供的一种业务场景示意图;
图1C为本申请实施例中提供的一种业务场景示意图;
图1D为本申请实施例中提供的一种业务场景示意图;
图1E为本申请实施例中提供的一种确定时延的过程示意图;
图2A为本申请实施例中提供的一种确定时延的***结构示意图;
图2B为本申请实施例中提供的一种确定时延的***结构示意图;
图2C为本申请实施例中提供的一种确定时延的***结构示意图;
图2D为本申请实施例中提供的一种确定时延的***结构示意图;
图3为本申请实施例中提供的一种确定时延的过程示意图;
图4为本申请实施例中提供的一种确定时延的过程示意图;
图5为本申请实施例中提供的一种确定时延的过程示意图;
图6A为本申请实施例中提供的一种数据包传输机制时延图;
图6B为本申请实施例中提供的一种数据包传输机制时延图;
图7为本申请实施例中提供的一种决策树示意图;
图8为本申请实施例中提供的一种确定时延的装置示意图;
图9为本申请实施例中提供的一种确定时延的装置示意图。
具体实施方式
下面将结合附图,对本申请实施例进行详细描述。
本申请实施例提供了一种确定时延的方法及装置,用以解决现有技术中中间网元需要解析数据包的内容计算传输时延或者不能计算传输时延的问题。其中,方法和装置是基于同一技术构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。
本申请实施例的技术方案可以应用于各种通信***,例如:宽带码分多址移动通信***(wideband code division multiple access,WCDMA),演进的全球陆地无线接入网络(evolved universal terrestrial radio access network,E-UTRAN)***,下一代无线接入网络(next generation radio access network,NG-RAN)***,长期演进(long termevolution,LTE)***,全球互联微波接入(worldwide interoperability for microwaveaccess,WiMAX)通信***,未来的第五代(5th Generation,5G)***,如新一代无线接入技术(new radio access technology,NR),及未来的通信***,如6G***等。另外,在本申请实施例中,“示例的”一词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或实现方案不应被解释为比其它实施例或实现方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
为便于理解本申请实施例,以下对本申请实施例的部分用语进行解释说明,以便于本领域技术人员理解。
1)、服务请求设备,用于请求服务的设备,可以是实体设备,也可以是逻辑设备。逻辑设备例如可以是安装在实体设备上的应用程序(application,APP),例如微信,支付宝等,实体设备例如可以是终端设备,又称终端设备为用户设备(user equipment,UE),用户设备例如包括具有无线连接功能的手持式设备、车载设备等。目前,终端设备可以是:手机(mobile phone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internetdevice,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmentedreality,AR)设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端,或智慧家庭(smart home)中的无线终端等。
2)、服务提供设备,用于提供服务的设备,例如可以是服务提供商(serviceprovide,SP)服务器,内容提供商(content provider,CP)服务器等。
3)中间网元,用于转发服务请求设备与服务提供设备间的数据包的设备,中间网元可以是实体设备,例如,可以是路由器、交换机、集线器、基站等,中间网元也可以是逻辑设备,例如安装在实体设备上的应用程序APP。
4)端口是传输层与应用层的服务接口,一个IP地址的端口可以有65536个,端口通过端口号来标识,端口号只有整数,范围是从0到65535,IP地址可以用来标识一个设备,端口号可以用来标识一种服务,IP地址与服务是一对多的关系,可以通过“IP地址+端口号”来区分设备上的不同的服务,比如Web服务、文件传输协议(file transfer protocol,FTP)服务、简单邮件传输协议(simple mail transfer protocol,SMTP)服务。需要注意的是,一个数据包中的源端口号与目的端口号并不是完全相同的,比如用户设备向服务器发送的一个数据包中源端口号为80,目的端口号为3457,则可以表示服务器使用“80”端口与用户设备进行通信,但用户设备使用“3457”端口与服务器进行通信。
不同的协议类型有其对应的端口,例如TCP端口、UDP端口。不同协议类型的端口号是相互独立的,比如TCP协议有端口号为“235”的端口,UDP也可以有端口号为“235”的端口。
5)包间隔,用时间相邻的两个数据包到达的时间的差值的绝对值表示。
6)包抖动,用时间相邻的三个数据包对应的两个包间隔的差值的绝对值表示。
7)数据流:一段时间内源IP地址、目的IP地址、源端口号、目的端口号、传输协议类型一致的数据包的序列。
8)子流:同一条数据流中,具备相同特征或属性的数据包的序列,相同的特征或属性可以是数据包的预设比特位上的数值相同。例如可以通过设置偏移量offset的数值,以及字节数来表征预设比特位。偏移量指预设比特位的开始位,字节数指检查几个比特位。
需要注意的是,本申请中的传输时延与时延表示同一含义。
本申请中的“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请中所涉及的多个,是指两个或两个以上。
在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
为便于理解本申请实施例,接下来介绍本申请的业务场景。本申请实施例描述的业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
在互联网应用中,一次业务,同时在终端(服务请求设备)与服务器(服务提供设备)间存在多条数据流,伴随着大量频繁交互的数据包的产生。数据包的传输机制简单,在大部分时间会集中出现收发或发收两个一组,或者出现收发收或发收发三个一组的交互情况。可以通过位于一组的两个数据包,或位于一组的三个数据包,计算传输时延信息。
如图1A所示,介绍了一种本申请的业务场景,服务请求设备11主动向服务提供设备12请求服务,首先,服务请求设备11向服务提供设备12发送上行数据包(请求数据包),然后,服务提供设备12向服务请求设备11反馈下行数据包(响应数据包)。服务请求设备11与服务提供设备12在相互发送数据包时,均需要经过中间网元13的转发,中间网元13可以计算服务请求设备11发送给服务提供设备12的上行数据包到达中间网元13的时间t1,与服务提供设备12反馈给服务请求设备的下行数据包达到中间网元13的时间t2的差值绝对值,将t2-t1确定为中间网元13与服务提供设备12间的双向传输时延值。
如图1B所示,介绍了另一种本申请的应用场景,服务提供设备12主动向服务请求设备11下发服务,首先,服务提供设备12向服务请求设备11发送下行数据包,然后服务请求设备11向服务提供设备12发送上行数据包。服务请求设备11与服务提供设备12在相互发送数据包时,均需要经过中间网元13的转发,中间网元13可以计算服务提供设备12发送给服务请求设备11的下行数据包到达中间网元的时间t3,与服务请求设备11发送给服务提供设备的上行数据包达到中间网元13的时间t4的差值绝对值,将t4-t3确定为中间网元13与服务请求设备11间的双向传输时延值。
如图1C所示,介绍了再一种本申请的应用场景,服务请求设备11主动向服务提供设备12请求服务,首先,服务请求设备11向服务提供设备12发送上行数据包,然后,服务提供设备12向服务请求设备11反馈下行数据包,再然后,服务请求设备11向服务提供设备12反馈上行数据包。服务请求设备11发送给服务提供设备12的上行数据包到达中间网元13的时间为t5,服务提供设备12反馈给服务请求设备11的下行数据包达到中间网元13的时间为t6,服务请求设备11反馈给服务提供设备12的上行数据包达到中间网元13的时间为t7,服务请求设备11与服务提供设备12之间的双向传输时延值为t7-t5。
如图1D所示,介绍了再一种本申请的应用场景,服务提供设备12主动向服务请求设备11下发服务,首先,服务提供设备12向服务请求设备11发送下行数据包,然后,服务请求设备11向服务提供设备12反馈上行数据包,再然后,服务提供设备12向服务请求设备11反馈下行数据包。服务提供设备12发送给服务请求设备11的下行数据包达到中间网元13的时间为t8,服务请求设备11反馈给服务提供设备12的上行数据包到达中间网元的时间为t9,服务提供设备12反馈给服务请求设备11的下行数据包达到中间网元13的时间为t10,服务请求设备11与服务提供设备12间的双向传输时延值为t10-t8。
针对传输控制协议(transmission control protocol,TCP)的数据包,中间网元可以根据数据包包头中的包序号确定一组数据包,由于某些协议类型(例如,用户数据报协议(User Datagram Protocol,UDP)),数据包的头部中没有包序号,中间网元不清楚哪两个或哪三个数据包为一组,则需要解析数据包的数据部分进行确定,甚至有的中间网元不具备数据包的数据部分的解析能力,根本无法确定传输时延。基于此,本申请提出了一种确定时延的方式,以提高确定传输时延的灵活性,通用性。
在本申请中,中间网元在确定服务请求设备与服务提供设备间的传输时延时,需要提前记录服务请求设备与服务提供设备间传输的数据包的相关信息,例如接收数据包的时间(可称为接收时间),协议类型,源地址,目的地址,源端口号,目的端口号,预设比特位上的数值,包大小等,其中这些信息中间网元都是可以仅解析接收到的数据包的包头内容,而不需要解析数据包的具体数据内容就可以获得的,因此可以较为快速的获得这些记录信息项,或者中间网元根本无需具备解析数据包具体数据内容的能力即可。如图1E所示,将连续记录的多个数据包的相关信息作为确定传输时延的功能模块的源数据。并且可以在功能模块中配置待确定传输时延信息的服务提供设备的地址,服务请求设备的地址和服务协议类型,在配置传输协议的类型时,可以是配置字符“TCP”“UDP”“HTTP”“HTTPS”“COAP”等,还可以是配置用于表示协议类型的数值,例如0或1,其中0表示TCP,1表示UDP。可选的,还可以配置服务提供设备的端口号,服务请求设备的端口号等。可选的,还可以配置预设比特位上的数值。根据预先的配置,可以提取出符合配置要求的接收时间,根据一段时间或一定数量的数据包的接收时间,确定多个时延,根据多个时延,确定出服务请求设备与服务提供设备间的传输时延。示例的,还可以在提取出符合要求的接收时间后,根据提取的接收时间,进行传输属性信息的计算,并预先配置各种传输属性信息的阈值,各种传输属性信息可以包括包抖动均值与包间隔均值的比值、包间隔、包间隔均值、包间隔方差、包抖动、包抖动均值、包抖动方差等等,可选的,还可以传输属性信息还可以包括上下行包比例,也就是本申请下文提到的第一类信息中的接收时间的数量与第二类信息中接收时间的数量的比值,可选的,传输属性还包括包大小均值、上行数据包的总大小、下行数据包的总大小等等。根据一段时间或一定数量的数据包的接收时间确定各种传输属性信息,将确定的各种传输属性信息与对应的取值范围进行比较,确定这些接收时间是否满足确定传输时延信息的要求,采用满足确定传输时延计算要求的多个接收时间确定传输时延,进而提高确定传输时延的准确性。
由上描述可以得出,用于确定传输时延的功能模块具有存储数据包的相关信息的功能,根据配置的地址、端口号等提取信息的功能,传输属性信息计算的功能,将传输属性信息与阈值进行比较的功能,以及确定传输时延的功能。在通信网络中,数据流可以是从用户设备(服务请求设备)流出,流经基站进入路由器(router),然后达到核心网(corenetwork,CN),最后经过防火墙(firewall)到达服务提供设备。本申请用于确定时延的功能模块可以部署在上述的任一设备上。
如图2A所示,将功能模块部署在路由器上,由路由器进行传输时延的确定。
如图2B所示,将功能模块部署在核心网的用户面网元(UP NE)上,由用户面网元进行传输时延的确定。
如图2C所示,将功能模块部署在基站上,由基站进行传输时延的确定。
如图2D所示,将功能模块部署在用户设备上,可以以应用,或SDK,或动态库,或静态库的方式部署,可以通过监听APP进程占用的端口或终端网卡模块获取信息。
接下来以几个具体的实施例详细描述确定传输时延的过程。
如图3所示,提供了一种确定时延的流程示意图:
步骤31:中间网元接收服务请求设备发送给服务提供设备的数据包,以及接收服务提供设备发送给服务请求设备的数据包。
步骤32:中间网元针对接收到的每个数据包记录一条信息,其中,所述一条信息至少包括:接收时间、源地址、目的地址,协议类型。
由于中间网元可以转发多个服务请求设备与多个服务提供设备间传输的数据包,所以记录的多条信息中源地址之间可能相同,也可能不同,目的地址之间可能相同也可能不同。源地址与目的地址之间可能相同,也可能不同。
步骤33:中间网元根据分别标识服务请求设备与服务提供设备的两个地址,在连续记录的多条信息中提取第一类信息以及第二类信息。
此处的地址可以是IP地址,中间网元可以根据需要计算传输时延的两个设备的IP地址,在连续记录的多条信息中提取与这两个设备的IP地址相关的多条信息,可以是在连续记录的设定的时间范围内的多条信息中进行提取,例如10s、20s等;也可以是在连续记录的设定数量的多条信息中进行提取,例如200条、500条等。
假设,需要计算传输时延的两个设备分别为设备a和设备b,设备a的IP地址为10.001,设备b的IP地址为10.002。中间网元在进行信息提取时,例如可以将设备a的IP地址10.001作为源地址,将设备b的IP地址10.002作为目的地址,提取一类信息,提取该类信息中包括多条信息,该类信息中的多条信息中的源地址相同,均为10.001,该类信息中的多条信息中的目的地址相同,均为10.002。
中间网元再将设备a的IP地址10.001作为目的地址,将设备b的IP地址10.002作为源地址,提取另一类信息,提取该类信息中包括多条信息,该类信息中的多条信息中的源地址相同,均为10.002,该类信息中的多条信息中的目的地址相同,均为10.001。
中间网元提取了两类信息,分别称为第一类信息和第二类信息,第一类信息与第二类信息中各包括多条信息,且所述第一类信息包括的多条信息之间的源地址相同、且目的地址相同;所述第二类信息包括的多条信息之间的源地址相同、且目的地址相同;所述第一类信息包括的多条信息的源地址与所述第二类信息包括的多条信息的目的地址相同,且所述第一类信息包括的多条信息的目的地址与所述第二类信息包括的多条信息的源地址相同。
中间网元还可以针对特定协议类型计算传输时延,则在进行多条信息提取时,还考虑协议类型,所述第一类信息包括的多条信息中的协议类型与所述第二类信息包括的多条信息中的协议类型相同。
在本申请的一个实施例中,中间网元可以计算服务提供设备在提供某种服务时的时延,如果用不同的端口号表征不同的服务,中间网元针对每个数据包记录的一条信息中还可以包括:源端口号和目的端口号。
假设,需要计算传输时延的两个设备分别为设备a和设备b,设备a的IP地址为10.001,设备b的IP地址为10.002,在提供某种服务时,设备a通过端口号为23的端口与设备b进行通信,设备b通过端口号为56的端口与设备a进行通信。
中间网元在进行信息提取时,例如可以将设备a的IP地址10.001作为源地址,设备a的端口号23作为源端口号,并将设备b的IP地址10.002作为目的地址,设备b的端口号56作为目的端口号,提取一类信息,提取该类信息中包括多条信息,该组中的多条信息中的源地址相同,均为10.001,源端口号相同,均为23,该组中的多条信息中的目的地址相同,均为10.002,目的端口号相同,均为56。
中间网元再将设备a的IP地址10.001作为目的地址,a的端口号23作为目的端口号,并将设备b的IP地址10.002作为源地址,将设备b的端口号56作为源端口号,提取另一类信息,提取该类信息中包括多条信息,该组中的多条信息中的源地址相同,均为10.002,源端口号相同均为56,该组中的多条信息中的目的地址相同,均为10.001,目的端口号相同,均为23。
中间网元提取的第一类信息与第二类信息中各包括多条信息,第一类信息与第二信息满足:所述第一类信息包括的多条信息之间的源地址相同、目的地址相同、源端口号相同、目的端口号相同;所述第二类信息包括的多条信息之间的源地址相同、目的地址相同、源端口号相同、目的端口号相同;所述第一类信息包括的多条信息的源地址与所述第二类信息包括的多条信息的目的地址相同,且所述第一类信息包括的多条信息的目的地址与所述第二类信息包括的多条信息的源地址相同;所述第一类信息包括的多条信息的源端口号与所述第二类信息包括的多条信息的目的端口号相同,且所述第一类信息包括的多条信息的目的端口号与所述第二类信息包括的多条信息的源端口号相同。
相应的,中间网元在根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息时,具体可以是中间网元根据所述第一类信息与所述第二类信息中的多个接收时间,确定源地址所标识的设备的源端口与目的地址所标识的设备的目的端口之间的传输时延信息,所述源端口为所述源端口号所标识的端口,所述目的端口为所述目的端口号所标识的端口。
在本申请的一个实施例中,中间网元可以计算服务提供设备在提供某种服务时的时延,如果用数据包的预设比特位上承载的不同数值用于表征不同的服务,中间网元针对每个数据包记录的一条信息中还可以包括:数据包的预设比特位的数值。所述第一类信息包括的多条信息中的预设比特位的数值与所述第二类信息包括的多条信息中的预设比特位的数值相同。也就是中间网元确定出了一个子流的传输时延。
步骤34:将第一类信息和第二类信息分别包括的多条信息中的多个接收时间按照时间顺序排序。
中间网元在确定出第一类信息和第二类信息后,可以根据第一类信息与第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息。首先将第一类信息和第二类信息分别包括的多条信息中的多个接收时间按照时间顺序排序,假设第一类信息中包括5个接收时间,第二类信息中包括5个接收时间,则将这10个接收时间按照时间顺序进行排序。
步骤35:确定排序后的多个接收时间中的有效首个接收时间。
示例的,将排序后的第一个接收时间作为有效首个接收时间。
在提供服务时,有可能是服务请求设备主动请求服务,也可能是服务提供设备主动提供服务,在根据第一类信息与第二类信息确定传输时延之前,不知道第一类信息与第二类信息对应的数据包是服务请求设备主动请求服务时产生的数据包,还是服务提供设备主动提供服务是产生的数据包,并且在从记录的多条信息中提取第一类信息和第二类信息时,有可能第一类信息中的第一个接收时间不是实际提供服务中的有效的第一个数据包的接收时间,例如第一类信息为上行数据包的相关信息,第一类信息中的第一个接收时间为如图1B所示的t4,或如图1C所示的t7,或图1D所示的t9,同理,第二类信息中的第一个接收时间也可能不是实际提供服务中的有效的第一个数据包的接收时间。基于多种情况的出现,在将第一类信息与第二类信息中的接收时间进行排序后,排序后的第一个接收时间有可能不是服务提供时的有效的第一个数据包的接收时间,有效的第一个数据包的接收时间可称为有效首个接收时间。
服务请求设备请求服务或服务提供设备提供服务一般是周期性的,该周期在s级别,但是网络交互的时延很短,一般在ms级别。可以根据相邻的三个接收时间确定有效首个接收时间,示例的,针对第i个接收时间,确定第i个接收时间与第i-1个接收时间的第一差值的绝对值,以及第i个接收时间与第i+1个接收时间的第二差值的绝对值;
确定第一差值的绝对值与第二差值的绝对值的比值,所述i依次从2至N中取值正整数,N为第一类信息和第二类信息中接收时间的总数量;
若i取值为n时,确定出所述比值大于预设的阈值,则确定所述第n个接收时间为排序后的多个接收时间中的有效首个接收时间。
也就是,中间网元先确定排序后的第二个接收时间与排序后的第一个接收时间的第一差值的绝对值,排序后的第二个接收时间与排序后的第三个接收时间的第二差值的绝对值,再确定第一差值的绝对值与第二差值的绝对值的比值是否大于设定的比值,如果第一差值的绝对值与第二差值的绝对值的比值大于一个设定的阈值,则说明排序后的第二个接收时间为有效首个接收时间。如果第二接收时间包不是有效首个接收时间,则确定排序后的第三个接收时间是否为有效首个接收时间,示例的,确定排序第三个接收时间与排序后的第二个接收时间的第一差值的绝对值,以及排序后的第三个接收时间与排序后的第四个接收时间的第二差值的绝对值,如果第一差值的绝对值与第二差值的绝对值的比值大于一个设定的阈值,则说明该第三个接收时间为有效首个接收时间,按照排序后的每个接收时间,依次进行上述过程,直至确定出一个有效首个接收时间。
例如,阈值设置为2,第一类信息中的接收时间分别为10:01,10:08,第二类信息中的接收时间分别为10:00,10:10,排序后的接收时间为10:00,10:01,10:08,10:10,第一个接收时间10:00与第二接收时间10:01的差值的绝对值为0.1,第二个接收时间10:01与第三个接收时间10:08的差值的绝对值为0.7,0.1与0.7的比值小于2,则确第二接收时间10:01不是有效首个接收时间,然后再确定第三个接收时间10.08与第四个接收时间10:10的差值的绝对值为0.2,0.7与0.2的比值大于2,则确定第三个接收时间10:08为有效首个接收时间。
可选的,步骤36:确定第一类信息中接收时间的数量与第二类信息中接收时间的数量的比值是否等于0.5或等于2或接近0.5或接近2,如果有一个为是,则进行步骤37。
如果均不为是,参见图4中的步骤46,确定第一类信息中接收时间的数量与第二类信息中接收时间的数量的比值是否等于1或接近1。
第一类信息中的接收时间与第二类信息中的接收时间的比值等于0.5或等于2或接近0.5或接近2,则说明一个上行数据包与两个下行数据包构成一组数据包,或者两个上行数据包与一个下行数据包构成一组数据包。可以预设针对第一类信息中的接收时间的数量与第二类信息中接收时间的数量的比值设置一个比值阈值,例如[1.9,2.1],或者,[0.4,0.6]、或者[1.999,2.001]等。该取值范围用于表示服务请求设备与服务提供设备间传输数据包的机制,如果第一类信息中的接收时间的数量与第二类信息中接收时间的数量的比值位于预设的取值范围内,则确定第一类信息中的接收时间与第二类信息中的接收时间的比值等于0.5或等于2或接近0.5或接近2。
所述步骤36与步骤35的顺序不限,所述步骤36与步骤34顺序不限。
步骤37:以排序后的所述首个接收时间为起点,以三个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组。
在正常的数据传输中,如果以排序后的所述首个接收时间为起点,以三个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组,则各组一定满足以下条件:
各组中不存在相同的接收时间,各组中的第一个接收时间与第二个接收时间分别位于第一类信息中和第二类信息中的不同类信息中,第一个接收时间与第三个接收时间分别位于第一类信息和第二类信息中的相同类信息中,也就是第一个接收时间对应的包方向与第二个接收时间对应的数据包的包方向不同,第一个接收时间对应的包方向与第三个接收时间对应的数据包的包方向相同;且相邻的两组中的时间靠前的一组中的最晚的接收时间早于时间靠后的一组中的最早的接收时间,且各种组中的第一个接收时间对应的源地址相同,相应的,各种组中的第一个接收时间对应的目的地址相同。
但是在数据传输过程,可能有意外情况的出现,为了使分组后的各组仍然满足以上条件,则需要舍弃一个或多个接收时间。
例如,第一类信息中的接收时间分别为10:01,10:08,10:11,10:20,10.21,10:24,10:23。第二类信息中的接收时间分别为10:00,10:10,10:22,10.29。
根据上述举例,已确定第三个接收时间10.08为有效首个接收时间,然后以第三个接收时间10:08为起点,确定出的一组接收时间分别为10:08,10:10,10:11,再确定出的一组接收时间为10:20,10:22和10.24,舍弃了10:21和10:29。
再例如,第一类信息中的接收时间分别为10:01,10:08,10:11,10:12,10:20,10:24,10:23。第二类信息中的接收时间分别为10:00,10:10,10:22。
根据上述举例,已确定第三个接收时间10.08为有效首个接收时间,然后以第三个接收时间10:08为起点,确定出的一组接收时间分别为10:08,10:10,10:11,再确出的一组接收时间为10:12,10:22和10.24.,舍弃了10:20。
在该例子中,如果采用上述确定有效首个接收时间的方式对10:20进行计算,可能得出10:20也是有效首个接收时间。为了提高确定传输时延的准确性,在确定出了每组后,可选的,执行步骤38。
步骤38:根据每组中的最早的接收时间,确定任意相邻的两组中最早的接收时间的差值,确定任意相邻的两组中最早的接收时间的差值的绝对值是否相等或接近,如果均为是,则进行步骤39,如果否,则流程结束。
中间网元若确定任意相邻的两组中最早的接收时间的差值的绝对值相等或接近时,确定所述有效首个接收时间对应的源地址所标识的设备是周期性发送数据包的,则可以根据分组后的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,如果任意相邻的两组中最早的接收时间的差值的绝对值不相等且不接近,则确定分组后的接收时间不适宜用来确定传输时延信息。通过在确定任意相邻的两组中最早的接收时间的差值的绝对值相等或接近时,才确定传输时延信息,提高了确定传输时延信息的准确性。
中间网元为了提高确定传输时延的准确性,可以根据相邻的两组中的最早的接收时间,确定包间隔,包间隔表示所述有效首个接收时间对应的源地址所标识的设备发送数据包的周期。
如图6A所示,服务请求设备主动向服务提供设备请求服务,一次服务中,数据包分别为上行数据包,下行数据包,上行数据包,中间网元可以将相邻的两组中的最早的接收时间(接收到一组中的首个上行数据包的时间)的差值的绝对值确定为包间隔。包间隔1为组1与组2中的两个最早的接收时间的差值的绝对值,包间隔2为组2和组3中的两个最早的接收时间的差值的绝对值,包间隔3为组3和组4中的两个最早的接收时间的差值的绝对值。
示例的,中间网元还可以确定其他的传输属性信息,例如:包间隔均值、包间隔方差。
示例的,中间网元还可以确定其他的传输属性信息,例如:包抖动、包抖动均值、包抖动方差,还可以确定包抖动均值与包间隔均值的比值等等可以根据接收时间确定出的传输属性信息。
包抖动为相邻的两个包间隔的差值的绝对值,仍以图6A为例,包抖动1为包间隔1与包间隔2的差值的绝对值,包抖动2为包间隔2与包间隔3的差值的绝对值。
示例的,包抖动根据相邻的三个包间隔确定,例如,三个相邻的包间隔分别为a、b、c,包抖动=A*a+B*(c-b),其中,A和B为系数,可以是小数、分数、整数等,例如A=15/16,B=1/16,再例如,A=0.3,B=0.8,再例如A=1,B=3。
中间网元可以预先针对每种传输属性信息配置取值范围,并确定根据第一类信息和第二类信息确定出的每个传输属性信息是否在针对该传输属性信息配置的取值范围内,如果是,则说明符合确定传输时延的条件,如果不在,则确定不符合确定传输时延的条件,则可以结束流程。
例如,可以是配置包间隔的取值范围,当确定出多个包间隔后,可以确定是否所有或者设定数量的包间隔在包间隔的取值范围内,如果是,则确定符合确定传输时延的条件,进行后续的确定传输时延的过程,如果不符合确定传输时延的条件,则流程结束。包间隔的取值范围例如可以是[500,1500],单位为ms。在实际应用中,包间隔的取值范围的上下限可以灵活取值,上下限的取值范围位于[0,65535]中。
例如,可以是配置包间隔均值的取值范围,确定包间隔均值是否在包间隔均值的取值范围内,如果是,则确定符合确定传输时延的条件,进行后续的确定传输时延的过程,如果不符合确定传输时延的条件,则流程结束。包间隔均值的取值范围例如可以是[500,1500],单位为ms。在实际应用中,包间隔均值的取值范围的上下限可以灵活取值,上下限的取值范围位于[0,65535]中。
例如,可以配置包抖动均值与包间隔均值的比值,确定包抖动均值与包间隔均值的比值是否在设定的取值范围内,如果是,则确定符合确定传输时延的条件,进行后续的确定传输时延的过程,如果不符合确定传输时延的条件,则流程结束。包抖动均值与包间隔均值的比值的取值范围例如可以是[0,0.2]。在实际应用中,包抖动均值与包间隔均值的比值的取值范围的上下限可以灵活取值,上下限的取值范围位于[0,100]中。
中间网元也可以确定其他的传输属性信息是否位于为该传输属性信息配置的取值范围内,原理与上述的描述类似,在此不再进行介绍。
步骤39:确定所述源地址所标识的设备到所述目的地址所标识的设备之间的传输时延信息,所述传输时延信息为每组中包括的最晚的接收时间与最早的接收时间的时间差值的绝对值的平均值。
中间网元在确定出三个数据包为一组的多个分组后,可以确定每组中包括的最晚的接收时间与最早的接收时间的时间差值,该时间差值代表了源地址所标识的设备到所述目的地址所标识的设备之间的传输时延信息,为了使确定的传输时延更加准确,可以将多个时间差值的平均值作为所述源地址所标识的设备到所述目的地址所标识的设备之间的传输时延信息。
示例的,在确定出每组对应的传输时延值后,可以对多组对应的多个传输时延值进行统计,例如设置传输时延值的取值范围,确定位于每个取值范围内的传输时延值的数量,或者确定位于每个取值范围内的传输时延值的数量与传输时延值的总数量的比值,以此来衡量服务提供质量。例如设置,取值三段范围,分别为大于thd2,小于thd1,位于[thd1,thd2]。
示例的,在确定出每组对应的传输时延值后,可以对多组对应的多个传输时延值进行排序,通过传输时延值的最大值与最小值的差值来衡量服务提供质量。
经过如图3所示的过程,中间网元计算出了所述源地址所标识的设备到所述目的地址所标识的设备之间的传输时延信息。
如图4所示,提供了一种确定时延的流程示意图:
图4中的步骤41至步骤45,与如3中的步骤31至步骤35相同,具体过程可参见图3部分的描述,重复之处不再进行赘述。
可选的,步骤46:确定第一类信息中接收时间的数量与第二类信息中接收时间的数量的比值是否等于1或接近1,如果有一个为是,则进行步骤47。如果第一类信息中接收时间的数量与第二类信息中接收时间的数量的比值不满足等于0.5或等于2或等于1或接近0.5或接近2或接近1的任一情况,则流程结束。
第一类信息中的接收时间与第二类信息中的接收时间的比值等于1或接近1,则说明一个上行数据包与一个下行数据包构成一组数据包。可以预先针对第一类信息中的接收时间的数量与第二类信息中接收时间的数量的比值设置一个取值范围,例如[0.9,1.1]或者[0.999,1.001]等,该取值范围用于表示服务请求设备与服务提供设备间传输数据包的机制,如果第一类信息中的接收时间的数量与第二类信息中接收时间的数量的比值位于预设的取值范围内,则确定第一类信息中的接收时间与第二类信息中的接收时间的比值等于1或接近1。
步骤47:以排序后的所述有效首个接收时间为起点,以两个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组。
在正常的数据传输中,如果以排序后的所述首个接收时间为起点,以两个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组,则各组一定满足以下条件:
各组中不存在相同的接收时间,各组中的第一个接收时间与第二个接收时间分别位于第一类信息和第二类信息中的不同类信息中,也就是第一个接收时间对应的包方向与第二个接收时间对应的数据包的包方向不同;且相邻的两组中的时间靠前的一组中的最晚的接收时间早于时间靠后的一组中的最早的接收时间,且各种组中的第一个接收时间对应的源地址相同,相应的,各种组中的第一个接收时间对应的目的地址相同。
为了提高确定传输时延的准确性,在确定出了每组后,可选的,执行步骤48。
步骤48:根据每组中的最早的接收时间,确定任意相邻的两组中最早的接收时间的差值,确定任意相邻的两组中最早的接收时间的差值的绝对值是否相等或接近,如果均为是,则进行步骤49,如果否,则流程结束。
步骤48与图3中的步骤38相同,重复之处不再进行赘述。
如图6B所示,服务请求设备主动向服务提供设备请求服务,一次服务中,数据包分别为上行数据包和下行数据包,中间网元可以将相邻的两组中的最早的接收时间(接收到一组中的首个上行数据包的时间)的差值的绝对值确定为包间隔。包间隔1为组1与组2中的两个最早的接收时间的差值的绝对值,包间隔2为组2和组3中的两个最早的接收时间的差值的绝对值,包间隔3为组3和组4中的两个最早的接收时间的差值的绝对值。相邻的两个包间隔相等或接近,则可以进行后续确定传输时延的步骤。在该实施例中,也可以确定其他的传输属性信息,例如:包间隔均值、包间隔方差、包抖动、包抖动均值、包抖动方差,还可以确定包抖动均值与包间隔均值的比值等,也可以配置每种传输属性信息对应的取值范围,根据取值范围确定是否进行后续确定传输时延的步骤,其原理与图3中的步骤38处的描述类似,重复之处不再进行赘述。
步骤49:中间网元确定每组中包括的两个接收时间的时间差值的绝对值,然后确定多个差值的绝对值的平均值,将确定出的所述平均值确定为所述有效首个接收时间对应的目的地址所标识的设备与所述中间网元之间的传输时延信息。
中间网元在确定出两个数据包为一组的多个分组后,可以确定每组中包括的最晚的接收时间与最早的接收时间的时间差值,该时间差值代表了所述有效首个接收时间对应的目的地址所标识的设备与所述中间网元之间的传输时延信息,为了使确定的传输时延更加准确,可以将多个时间差值的平均值作为所述有效首个接收时间对应的目的地址所标识的设备与所述中间网元之间的传输时延信息。
如果所述有效首个接收时间对应的目的地址所标识的设备为服务提供设备,则将确定出的传输时延信息称为第一传输时延值,如果所述有效首个接收时间对应的目的地址所标识的设备为服务请求设备,则将确定出的传输时延信息称为第二传输时延值。中间网元可以分别确定出第一传输时延值与第二传输时延值,然后,将第一传输时延值与第二传输时延值相加得到的和值,确定为所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息。
也就是说中间网元在执行完第一遍步骤41至步骤49后,需要再重复执行步骤41至49。需要注意的是,重新执行步骤43时,待提取第一类信息与第二类信息的连续记录的多条信息,与之前执行的步骤43中的连续记录的多条信息不同,也就是重新选择一段连续记录的多条信息进行提取。在重新执行步骤45时,中间网元还需要识别重新确定出的有效首个接收时间对应的目的地址与上一次确出的有效首个接收时间对应的目的地址是否相同,如果相同,则舍弃提取的第一类信息与第二类信息,重新再次执行步骤41,再次提取第一类信息与第二类信息,直至确定的有效首个接收时间对应的目的地址与第一次确出的有效首个接收时间对应的目的地址不相同,则采用本次确定出的第一类信息与第二类信息,执行后续步骤46至步骤49,也就是两次确定的有效首个接收时间对应的目的地址所标识的设备不同,一次标识服务请求设备,另一次标识服务提供设备。
中间通过相邻的两个接收时间之间的差值的绝对值,分别确定出中间网元与服务提供设备间的传输时延,以及中间网元与服务请求设备间的传输时延,最终确定出服务请求设备与服务提供设备间的传输时延。
如图5所示,提供了一种确定时延的流程示意图:
步骤51至步骤53与图3中的步骤31值步骤33相同,重复之处不再进行描述。
步骤54:中间网元根据所述第一类信息中的多个接收时间以及所述第二类信息中的多个接收时间,确定源地址所标识的设备与目的地址所标识的设备之间的传输属性信息,传输属性信息包括包抖动均值与包间隔均值的比值、包间隔、包间隔均值、包间隔方差、包抖动、包抖动均值、包抖动方差,包大小、包大小均值、包大小方差中一种或多种;
步骤55:根据所述传输属性信息,以及预先学习的传输属性信息与传输时延信息的映射关系,确定源地址所标识的设备与目的地址所标识的设备之间的传输时延信息。
传输属性信息的确定过程参见上述图3中的步骤34至步骤38,图4中的步骤44至步骤48的内容,重复之处不再进行描述。
中间网元可以预先学习传输属性信息与传输时延信息的映射关系,示例的,可以是预先提取第三类信息和第四类信息,第三类信息与第四类信息满足以下条件:
所述第三类信息包括的多条信息之间的源地址相同、且目的地址相同;所述第四类信息包括的多条信息之间的源地址相同、且目的地址相同;
所述第三类信息包括的多条信息的源地址与所述第四类信息包括的多条信息的目的地址相同,且所述第三类信息包括的多条信息的目的地址与所述第四类信息包括的多条信息的源地址相同;
所述第三类信息包括的多条信息中的协议类型与所述第四类信息包括的多条信息中的协议类型相同;
可选的,所述第三类信息包括的多条信息之间的源端口号相同、且目的端口号相同;所述第四类信息包括的多条信息之间的源端口号相同、且目的端口号相同;
所述第三类信息包括的多条信息的源端口号与所述第四类信息包括的多条信息的目的端口号相同,且所述第三类信息包括的多条信息的目的端口号与所述第四类信息包括的多条信息的源端口号相同;
可选的,所述第三类信息包括的多条信息中的预设比特位上的数值与第四类信息包括的多条信息中的预设比特位上的数值相同。
中间网元根据所述第三类信息中的多个接收时间以及所述第四类信息中的多个接收时间,确定源地址所标识的设备与目的地址所标识的设备之间的样本传输属性信息,样本传输属性信息包括包抖动均值与包间隔均值的比值、包间隔、包间隔均值、包间隔方差、包抖动、包抖动均值、包抖动方差,包大小、包大小均值、包大小方差、所有数据包的总大小中一种或多种;其中包间隔分为上行包间隔,和下行包间隔,包抖动分为上行包抖动,或下行包抖动,包大小分为上行包大小和下行包大小。
采用所述样本传输属性信息,以及所述样本传输属性信息对应的传输时延信息标签,机器学习出传输属性信息与传输时延信息的映射关系,在进行机器学习时,需要提取多个第三类信息,和对应的第四类信息,确定出较多的样本传输属性信息进行机器学习。
在进行机器学习时,样本传输属性信息对应的传输时延信息可以是具体的传输时延值,也可以是传输时延代表的业务服务质量,例如优良差,或者好、较好、居中,或者等级1、等级2,或者是出现某种服务质量问题的事件标记,卡顿、黑屏、断线等。
如图7所示,提供了一种机器学习好的传输属性信息与传输时延信息的映射关系的决策树示意图,预先规定传输属性1、2、3……分别是指哪些传输属性信息,例如,传输属性1为上行包抖动均值,传输属性2为下行包抖动均值,传输属性3为下行包间隔均值,传输属性4为上行包大小总和,传输属性5为下行包大小总和。确定输入的与传输属性1相对应的数值是否大于切割点的数值28.05(注意单位一致),如果大于,则,则确定输入的与传输属性2相对应的数值是否大于切割点的设置30.5,如果不大于,则确定输入的与传输属性5对应的相对应的数值是否大于切割点的数值70,……直至中点,预测出传输时延值的大小。
也可以是通过if,else,或者基于传输属性信息的加减乘除等运算来计算传输时延值。
通过对一定数量或时间的数据进行传输属性信息的计算,并使用机器学习的方法进行时延的预测,达到了准确有效地评估传输时延的目的,提高了确定传输时延的通用性,灵活性。
可以通过执行多次上述实施例的流程,确定不同的服务请求设备与同一服务提供设备间的传输时延信息,进而表达这一服务提供设备的性能,也可以根据服务请求设备的IP地址,确定某一固定地址位置或逻辑内的服务请求设备的业务质量。还可以按照服务提供的设备的IP地址,确定IP地址相同,或IP地址网段相同,或APN地址相同的传输时延信息,用以表示提供某一特定业务的传输时延。还可以通过源地址,源端口号,目的地址,目的端口号,协议类型,关联用户标识,例如IMSI,IMEI,确定同一用户的传输时延。
基于与上述确定时延的方法的同一发明构思,如图8所示,本申请实施例还提供了一种确定时延的装置800,该确定时延的装置800,用于执行上述确定时延的方法中中间网元执行的图3、图4、图5中的操作。
该确定时延的装置800包括:处理模块801、发送模块802和接收模块803。
在一种可能的实现中,所述接收模块803,用于接收服务请求设备发送给服务提供设备的数据包,以及接收服务提供设备发送给服务请求设备的数据包;所述发送模块802,用于将从服务请求设备处接收到的数据包发送给服务提供设备,将从服务提供设备处接收到的数据包发送给服务请求设备。
所述处理模块801,用于针对接收到的每个数据包记录一条信息,其中,所述一条信息包括:接收时间、源地址、目的地址,协议类型;在连续记录的多条信息中提取第一类信息以及第二类信息,其中,所述第一类信息与所述第二类信息中各包括的多条信息,满足:
所述第一类信息包括的多条信息之间的源地址相同、且目的地址相同;所述第二类信息包括的多条信息之间的源地址相同、且目的地址相同;所述第一类信息包括的多条信息的源地址与所述第二类信息包括的多条信息的目的地址相同,且所述第一类信息包括的多条信息的目的地址与所述第二类信息包括的多条信息的源地址相同;所述第一类信息包括的多条信息中的协议类型与所述第二类信息包括的多条信息中的协议类型相同;
所述处理模块801,用于根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息。
在一种可能的实现中,所述处理模块801在用于根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息时,具体用于将所述第一类信息和所述第二类信息分别包括的多条信息中的多个接收时间按照时间顺序排序;确定排序后的多个接收时间中的有效首个接收时间;以排序后的所述有效首个接收时间为起点,以两个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组,各组中不存在相同的接收时间,各组中的第一个接收时间与第二个接收时间分别位于第一类信息和第二类信息中的不同类信息中;确定所述有效首个接收时间对应的目的地址所标识的设备与所述装置之间的传输时延信息,所述传输时延信息为每组中包括的两个接收时间的时间差值的绝对值的平均值;确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息为第一传输时延值与第二传输时延值的和值;其中,所述第一传输时延值为所述有效首个接收时间对应的目的地址所标识的设备为服务提供设备时,确定出的传输时延信息;所述第二传输时延值为所述有效首个接收时间对应的目的地址所标识的设备为服务请求设备时,确定出的传输时延信息。
在一种可能的实现中,所述处理模块801,还用于在以排序后的所述有效首个接收时间为起点,以两个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组之前,确定所述第一类信息中的接收时间的数量与所述第二类信息中的接收时间的数量的比值等于1或接近1。
在一种可能的实现中,所述处理模块801在用于根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息时,具体用于将所述第一类信息和所述第二类信息分别包括的多条信息中的多个接收时间按照时间顺序排序;确定排序后的多个接收时间中的有效首个接收时间;以排序后的所述首个接收时间为起点,以三个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组,各组中不存在相同的接收时间,各组中的第一个接收时间与第二个接收时间分别位于第一类信息中和第二类信息中的不同类信息中,第一个接收时间与第三个接收时间分别位于第一类信息和第二类信息中的相同类信息中;确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,所述传输时延信息为每组中包括的最晚的接收时间与最早的接收时间的时间差值的绝对值的平均值。
在一种可能的实现中,所述处理模块801,还用于在以排序后的所述首个接收时间为起点,以三个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组之前,确定所述第一类信息中的接收时间的数量与所述第二类信息中的接收时间的数量的比值等于0.5或等于2或接近0.5或接近2。
在一种可能的实现中,所述处理模块801,还用于在确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息之前,确定任意相邻的两组中最早的接收时间的差值的绝对值是否相等或接近,若任意相邻的两组中最早的接收时间的差值的绝对值相等或接近时,确定所述有效首个接收时间对应的源地址所标识的设备是周期性发送数据包的。
在一种可能的实现中,所述处理模块801,在用于确定排序后的多个接收时间中的有效首个接收时间时,具体用于针对第i个接收时间,确定第i个接收时间与第i-1个接收时间的第一差值的绝对值,以及第i个接收时间与第i+1个接收时间的第二差值的绝对值;确定第一差值的绝对值与第二差值的绝对值的比值,所述i依次从2至N中取值正整数,N为第一类信息和第二类信息中接收时间的总数量;若i取值为n时,确定出所述比值大于预设的阈值,则确定所述第n个接收时间为排序后的多个接收时间中的有效首个接收时间。
在一种可能的实现中,所述处理模块801,在用于根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息时,具体用于根据所述第一类信息中的多个接收时间以及所述第二类信息中的多个接收时间,确定源地址所标识的设备与目的地址所标识的设备之间的传输属性信息,传输属性信息包括包抖动均值与包间隔均值的比值、包间隔、包间隔均值、包间隔方差、包抖动、包抖动均值、包抖动方差、包大小中一种或多种;根据所述传输属性信息,以及预先学习的传输属性信息与传输时延信息的映射关系,确定源地址所标识的设备与目的地址所标识的设备之间的传输时延信息。
在一种可能的实现中,所述处理模块801,还用于在所述一条信息中记录源端口号和目的端口号;
所述第一类信息与所述第二类信息中各包括的多条信息,还满足:
所述第一类信息包括的多条信息之间的源端口号相同、且目的端口号相同;所述第二类信息包括的多条信息之间的源端口号相同、且目的端口号相同;
所述第一类信息包括的多条信息的源端口号与所述第二类信息包括的多条信息的目的端口号相同,且所述第一类信息包括的多条信息的目的端口号与所述第二类信息包括的多条信息的源端口号相同;
所述处理模块801,在用于根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息时,具体用于根据所述第一类信息与所述第二类信息中的多个接收时间,确定源地址所标识的设备的源端口与目的地址所标识的设备的目的端口之间的传输时延信息,所述源端口为所述源端口号所标识的端口,所述目的端口为所述目的端口号所标识的端口。
在一种可能的实现中,所述处理模块801,还用于在所述一条信息中记录数据包的预设比特位上的数值,所述预设比特位上承载的不同数值用于表征不同的服务;
所述第一类信息与所述第二类信息中各包括的多条信息,还满足:
所述第一类信息包括的多条信息中的预设比特位上的数值与第二类信息包括的多条信息中的预设比特位上的数值相同。
基于与上述确定时延的方法的同一发明构思,如图9所示,本申请实施例还提供了一种确定时延的装置900,该确定时延的装置900,用于执行上述确定时延的方法中中间网元执行的图3、图4、图5中的操作。
该确定时延的装置900包括:处理器901和通信接口902,所述通信接口902,用于在所述处理器的控制下接收数据包或发送数据包,可选的,还包括存储器903。处理器901用于调用一组程序,当程序被执行时,使得处理器901执行上述确确定时延的方法中中间网元执行的操作。存储器903用于存储处理器901执行的程序。图8中的处理模块801均可以通过处理器901来实现,发送模块802和接收模块803可以通过通信接口902来实现。
处理器可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。
处理器还可以进一步包括硬件芯片或其他通用处理器。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)及其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等或其任意组合。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。应注意,本申请描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本申请实施例提供了一种计算机存储介质,存储有计算机程序,该计算机程序包括用于执行上述确定时延的方法。
本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述提供的确定时延的方法。
本申请实施例提供的任一种确定时延的装置还可以是一种芯片。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (12)
1.一种确定时延的方法,其特征在于,包括:
中间网元接收服务请求设备发送给服务提供设备的数据包,以及接收服务提供设备发送给服务请求设备的数据包;
中间网元针对接收到的每个数据包记录一条信息,其中,所述一条信息包括:接收时间、源地址、目的地址,协议类型;
中间网元在连续记录的多条信息中提取第一类信息以及第二类信息,其中,所述第一类信息与所述第二类信息中各包括的多条信息,满足:
所述第一类信息包括的多条信息之间的源地址相同、且目的地址相同;所述第二类信息包括的多条信息之间的源地址相同、且目的地址相同;
所述第一类信息包括的多条信息的源地址与所述第二类信息包括的多条信息的目的地址相同,且所述第一类信息包括的多条信息的目的地址与所述第二类信息包括的多条信息的源地址相同;
所述第一类信息包括的多条信息中的协议类型与所述第二类信息包括的多条信息中的协议类型相同;
中间网元根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息;
其中,中间网元根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,包括:中间网元将所述第一类信息和所述第二类信息分别包括的多条信息中的多个接收时间按照时间顺序排序;确定排序后的多个接收时间中的有效首个接收时间;以排序后的所述有效首个接收时间为起点,以两个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组,各组中不存在相同的接收时间,各组中的第一个接收时间与第二个接收时间分别位于第一类信息和第二类信息中的不同类信息中;确定所述有效首个接收时间对应的目的地址所标识的设备与所述中间网元之间的传输时延信息,所述传输时延信息为每组中包括的两个接收时间的时间差值的绝对值的平均值;确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息为第一传输时延值与第二传输时延值的和值;其中,所述第一传输时延值为所述有效首个接收时间对应的目的地址所标识的设备为服务提供设备时,确定出的传输时延信息;所述第二传输时延值为所述有效首个接收时间对应的目的地址所标识的设备为服务请求设备时,确定出的传输时延信息;或者,
中间网元根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,包括:中间网元将所述第一类信息和所述第二类信息分别包括的多条信息中的多个接收时间按照时间顺序排序;确定排序后的多个接收时间中的有效首个接收时间;以排序后的所述有效首个接收时间为起点,以三个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组,各组中不存在相同的接收时间,各组中的第一个接收时间与第二个接收时间分别位于第一类信息中和第二类信息中的不同类信息中,第一个接收时间与第三个接收时间分别位于第一类信息和第二类信息中的相同类信息中;确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,所述传输时延信息为每组中包括的最晚的接收时间与最早的接收时间的时间差值的绝对值的平均值。
2.如权利要求1所述的方法,其特征在于,在以排序后的所述有效首个接收时间为起点,以两个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组之前,还包括:
中间网元确定所述第一类信息中的接收时间的数量与所述第二类信息中的接收时间的数量的比值等于1。
3.如权利要求1所述的方法,其特征在于,在以排序后的所述首个接收时间为起点,以三个相邻的接收时间为一组的原则对排序后的多个接收时间进行分组之前,还包括:
中间网元确定所述第一类信息中的接收时间的数量与所述第二类信息中的接收时间的数量的比值等于0.5或等于2。
4.如权利要求1-3任一项所述的方法,其特征在于,在确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息之前,还包括:
若任意相邻的两组中最早的接收时间的差值的绝对值相等时,确定所述有效首个接收时间对应的源地址所标识的设备是周期性发送数据包的。
5.如权利要求1-3任一项所述的方法,其特征在于,确定排序后的多个接收时间中的有效首个接收时间,包括:
针对第i个接收时间,确定第i个接收时间与第i-1个接收时间的第一差值的绝对值,以及第i个接收时间与第i+1个接收时间的第二差值的绝对值;
确定第一差值的绝对值与第二差值的绝对值的比值,所述i依次从2至N中取值正整数,N为第一类信息和第二类信息中接收时间的总数量;
若i取值为n时,确定出所述比值大于预设的阈值,则确定所述第n个接收时间为排序后的多个接收时间中的有效首个接收时间。
6.如权利要求1所述的方法,其特征在于,中间网元根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,包括:
中间网元根据所述第一类信息中的多个接收时间以及所述第二类信息中的多个接收时间,确定源地址所标识的设备与目的地址所标识的设备之间的传输属性信息,传输属性信息包括包抖动均值与包间隔均值的比值、包间隔、包间隔均值、包间隔方差、包抖动、包抖动均值、包抖动方差、包大小中一种或多种;
根据所述传输属性信息,以及预先学习的传输属性信息与传输时延信息的映射关系,确定源地址所标识的设备与目的地址所标识的设备之间的传输时延信息。
7.如权利要求1所述的方法,其特征在于,所述一条信息还包括:源端口号和目的端口号;
所述第一类信息与所述第二类信息中各包括的多条信息,还满足:
所述第一类信息包括的多条信息之间的源端口号相同、且目的端口号相同;所述第二类信息包括的多条信息之间的源端口号相同、且目的端口号相同;
所述第一类信息包括的多条信息的源端口号与所述第二类信息包括的多条信息的目的端口号相同,且所述第一类信息包括的多条信息的目的端口号与所述第二类信息包括的多条信息的源端口号相同;
中间网元根据所述第一类信息与所述第二类信息中的多个接收时间,确定所述源地址所标识的设备与所述目的地址所标识的设备之间的传输时延信息,包括:
中间网元根据所述第一类信息与所述第二类信息中的多个接收时间,确定源地址所标识的设备的源端口与目的地址所标识的设备的目的端口之间的传输时延信息,所述源端口为所述源端口号所标识的端口,所述目的端口为所述目的端口号所标识的端口。
8.如权利要求1所述的方法,其特征在于,所述一条信息还包括:数据包的预设比特位上的数值,所述预设比特位上承载的不同数值用于表征不同的服务;
所述第一类信息与所述第二类信息中各包括的多条信息,还满足:
所述第一类信息包括的多条信息中的预设比特位上的数值与第二类信息包括的多条信息中的预设比特位上的数值相同。
9.一种确定时延的装置,其特征在于,包括:处理器,存储器和通信接口;
所述通信接口,用于在所述处理器的控制下接收数据包或发送数据包;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中存储的计算机程序,通过所述通信接口实现上述权利要求1-8任一项所述的方法。
10.一种确定时延的***,其特征在于,包括:如权利要求9所述的确定时延的装置和用于向所述装置发送数据包的服务请求设备与服务提供设备。
11.一种计算机可读存储介质,其特征在于,所述计算机存储介质中存储有计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行如权利要求1-8任一项所述的方法。
12.一种芯片,其特征在于,所述芯片与存储器耦合,用于读取并执行所述存储器中存储的软件程序,以实现如权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910459026.5A CN112019393B (zh) | 2019-05-29 | 2019-05-29 | 一种确定时延的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910459026.5A CN112019393B (zh) | 2019-05-29 | 2019-05-29 | 一种确定时延的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112019393A CN112019393A (zh) | 2020-12-01 |
CN112019393B true CN112019393B (zh) | 2022-05-31 |
Family
ID=73501636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910459026.5A Active CN112019393B (zh) | 2019-05-29 | 2019-05-29 | 一种确定时延的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112019393B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4287577A4 (en) * | 2021-01-29 | 2024-01-24 | Beijing Xiaomi Mobile Software Co., Ltd. | DATA PACKET TRANSMISSION METHOD, DATA PACKET TRANSMISSION APPARATUS AND STORAGE MEDIUM |
WO2022178732A1 (zh) * | 2021-02-24 | 2022-09-01 | 华为技术有限公司 | 通信方法、装置及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6445681B1 (en) * | 1999-09-15 | 2002-09-03 | Vocaltec Communications Ltd. | Method for measuring delay parameters in a network |
CN101047491A (zh) * | 2006-06-06 | 2007-10-03 | 华为技术有限公司 | 通信处理***及其方法、以及网元间时间测量装置 |
CN103581142A (zh) * | 2012-08-03 | 2014-02-12 | 华为技术有限公司 | 数据业务体验评估方法、装置及网络设备 |
CN107078947A (zh) * | 2014-09-16 | 2017-08-18 | 三菱电机株式会社 | 延迟测定装置、测定对象装置以及通信*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7574504B2 (en) * | 2001-03-05 | 2009-08-11 | Compuware Corporation | Characterizing application performance within a network |
-
2019
- 2019-05-29 CN CN201910459026.5A patent/CN112019393B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6445681B1 (en) * | 1999-09-15 | 2002-09-03 | Vocaltec Communications Ltd. | Method for measuring delay parameters in a network |
CN101047491A (zh) * | 2006-06-06 | 2007-10-03 | 华为技术有限公司 | 通信处理***及其方法、以及网元间时间测量装置 |
CN103581142A (zh) * | 2012-08-03 | 2014-02-12 | 华为技术有限公司 | 数据业务体验评估方法、装置及网络设备 |
CN107078947A (zh) * | 2014-09-16 | 2017-08-18 | 三菱电机株式会社 | 延迟测定装置、测定对象装置以及通信*** |
Also Published As
Publication number | Publication date |
---|---|
CN112019393A (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200322237A1 (en) | Traffic detection method and traffic detection device | |
CN110324210B (zh) | 基于icmp协议进行隐蔽信道通信的检测方法及装置 | |
CN107624233B (zh) | 一种vpn传输隧道调度方法、装置以及vpn客户端服务器 | |
US20190190804A1 (en) | Non-intrusive mechanism to measure network function packet processing delay | |
CN112019393B (zh) | 一种确定时延的方法及装置 | |
CN108429701A (zh) | 网络加速*** | |
CN111641585B (zh) | 一种DDoS攻击检测方法及设备 | |
CN107113282A (zh) | 一种抽取数据报文的方法及装置 | |
CN107534587B (zh) | 时延测量***及方法 | |
CN108206788B (zh) | 一种流量的业务识别方法及相关设备 | |
US10298508B2 (en) | Communication system, receiving-side apparatus and transmission-side apparatus | |
Ageyev et al. | Infocommunication networks design with self-similar traffic | |
CN111209998B (zh) | 基于数据类型的机器学习模型的训练方法及装置 | |
CN110248379B (zh) | 无线局域网中基站的性能测试方法及装置 | |
CN109067625B (zh) | 一种业务通道性能的检测方法、设备及*** | |
CN110635972B (zh) | 网络测试方法、装置、网络测试仪及计算机可读存储介质 | |
CN109842511B (zh) | 一种tcp性能参数的确定方法及*** | |
CN108141377B (zh) | 网络流早期分类 | |
US10033665B2 (en) | System and a method of analysing a plurality of data packets | |
CN110138682A (zh) | 一种流量识别方法及装置 | |
CN107995053B (zh) | 一种基于软件定义网络侦测网路封包丢失方法及装置 | |
CN111988271B (zh) | 一种通信流处理方法及装置 | |
CN104753726A (zh) | 一种串行数据流的审计控制方法及*** | |
CN111447148B (zh) | 一种rtp数据包排序方法、***及存储介质 | |
CN113676341B (zh) | 一种质差评估方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |