CN112333051B - 一种单向网络延迟确定方法、装置和电子设备 - Google Patents
一种单向网络延迟确定方法、装置和电子设备 Download PDFInfo
- Publication number
- CN112333051B CN112333051B CN202110001053.5A CN202110001053A CN112333051B CN 112333051 B CN112333051 B CN 112333051B CN 202110001053 A CN202110001053 A CN 202110001053A CN 112333051 B CN112333051 B CN 112333051B
- Authority
- CN
- China
- Prior art keywords
- time
- ntp
- node
- local
- synchronization
- 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
- H04L43/0858—One way delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
Abstract
本发明提供了一种单向网络延迟确定方法、装置和电子设备,可以在发送探测网络延迟的探测数据包之前,先对探测节点自身的本地NTP时间进行精确调整,并将利用精确调整后的本地NTP时间生成的探测数据包发送到被探测节点,从而在精确调整后的本地NTP时间的基础上,对探测节点与所述被探测节点之间的单向网络延迟进行探测,以此保证探测得到的探测节点与所述被探测节点之间的单向网络延迟的准确性。
Description
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种单向网络延迟确定方法、装置和电子设备。
背景技术
目前,在互联网中常用的网络延迟估计方法采用往返延迟时间来判断两个网络终端之间的数据传输延迟时间。但是网络延迟并不是对称的,例如从设备A到设备B的往返延迟时间是400毫秒。那就会默认设备A到设备B的延迟时间是200毫秒,设备B到设备A的延迟时间是400毫秒,这其实是不对的;而且,在有些场景下(如:预测网络重传数据到达的时间的场景下),是需要知道准确的单向延迟时间的,但常用的网络延迟估计方法并不能得到准确的单向延迟时间。
发明内容
为解决上述问题,本发明实施例的目的在于提供一种单向网络延迟确定方法、装置和电子设备。
第一方面,本发明实施例提供了一种单向网络延迟确定方法,包括:
探测节点获取所述探测节点自身的第一本地网络时间协议(Network TimeProtocol,NTP)时间;
利用所述探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将生成的时间同步请求分别发送到至少两个NTP服务器中的各NTP服务器中;
获取各NTP服务器反馈的时间调整信息,计算各NTP服务器反馈的时间调整信息的标准差和平均值,并基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到探测节点自身的本地NTP时间的调整值;
利用所述调整值,对所述第一本地NTP时间进行调整,得到调整后的第二本地NTP时间;
利用所述第二本地NTP时间生成探测数据包,并将生成的探测数据包发送到被探测节点;
接收所述被探测节点反馈的探测反馈信息,并记录接收到所述探测反馈信息时的第三本地NTP时间;其中,所述探测反馈信息中记录有所述第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间;
利用所述第二本地NTP时间、所述第三本地NTP时间、所述被探测节点NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟。
第二方面,本发明实施例还提供了一种单向网络延迟确定装置,包括:
获取模块,用于获取所述探测节点自身的第一本地网络时间协议NTP时间;
第一发送模块,用于利用所述探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将生成的时间同步请求分别发送到至少两个NTP服务器中的各NTP服务器中;
计算模块,用于获取各NTP服务器反馈的时间调整信息,计算各NTP服务器反馈的时间调整信息的标准差和平均值,并基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到探测节点自身的本地NTP时间的调整值;
调整模块,用于利用所述调整值,对所述第一本地NTP时间进行调整,得到调整后的第二本地NTP时间;
第二发送模块,用于利用所述第二本地NTP时间生成探测数据包,并将生成的探测数据包发送到被探测节点;
接收模块,用于接收所述被探测节点反馈的探测反馈信息,并记录接收到所述探测反馈信息时的第三本地NTP时间;其中,所述探测反馈信息中记录有所述第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间;
处理模块,用于利用所述第二本地NTP时间、所述第三本地NTP时间、所述被探测节点NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟。
第三方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述第一方面所述的方法的步骤。
第四方面,本发明实施例还提供了一种电子设备,所述电子设备包括有存储器,处理器以及一个或者一个以上的程序,其中所述一个或者一个以上程序存储于所述存储器中,且经配置以由所述处理器执行上述第一方面所述的方法的步骤。
本发明实施例上述第一方面至第四方面提供的方案中,通过探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将该时间同步请求发送到至少两个NTP服务器,并根据至少两个NTP服务器反馈的时间调整信息,得到所述第一本地NTP时间的调整值,然后利用所述调整值,对第一本地NTP时间进行调整,得到调整后的第二本地NTP时间,然后将包括第二本地NTP时间的探测数据包发送到被探测节点,并利用被探测节点反馈的探测反馈信息中记录的第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间,以及接收到所述探测反馈信息时的第三本地NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟,与相关技术中将设备间的往返延迟时间的确定设备间的单向网络延迟的方式相比,在发送探测网络延迟的探测数据包之前,先对探测节点自身的本地NTP时间进行精确调整,并将利用精确调整后的本地NTP时间生成的探测数据包发送到被探测节点,从而在精确调整后的本地NTP时间的基础上,对探测节点与所述被探测节点之间的单向网络延迟进行探测,以此保证探测得到的探测节点与所述被探测节点之间的单向网络延迟的准确性。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例1所提供的一种单向网络延迟确定方法的流程图;
图2示出了本发明实施例2所提供的一种单向网络延迟确定装置的结构示意图;
图3示出了本发明实施例3所提供的一种电子设备的结构示意图。
具体实施方式
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
目前,在互联网中常用的网络延迟估计方法采用往返延迟时间来判断两个网络终端之间的数据传输延迟时间。但是网络延迟并不是对称的,例如从设备A到设备B的往返延迟时间是400毫秒。那就会默认设备A到设备B的延迟时间是200毫秒,设备B到设备A的延迟时间是400毫秒,这其实是不对的;而且,在有些场景下(如:预测网络重传数据到达的时间的场景下),是需要知道准确的单向延迟时间的,但常用的网络延迟估计方法并不能得到准确的单向延迟时间。
基于此,本申请各实施例提出一种单向网络延迟确定方法、装置和电子设备,通过探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将该时间同步请求发送到至少两个NTP服务器,并根据至少两个NTP服务器反馈的时间调整信息,得到所述第一本地NTP时间的调整值,然后利用所述调整值,对第一本地NTP时间进行调整,得到调整后的第二本地NTP时间,然后将包括第二本地NTP时间的探测数据包发送到被探测节点,并利用被探测节点反馈的探测反馈信息中记录的第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间,以及接收到所述探测反馈信息时的第三本地NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟,从而在精确调整后的本地NTP时间的基础上,对探测节点与所述被探测节点之间的单向网络延迟进行探测,以此保证探测得到的探测节点与所述被探测节点之间的单向网络延迟的准确性。
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请做进一步详细的说明。
实施例1
参见图1所示的一种单向网络延迟确定方法的流程图,本实施例提出一种单向网络延迟确定方法,包括以下具体步骤:
步骤100、探测节点获取所述探测节点自身的第一本地NTP时间。
在上述步骤100中,当所述探测节点启动时,就会获取所述探测节点自身的第一本地NTP时间,从而对探测节点自身的NTP时间进行调整。
所述第一本地NTP时间,就是探测节点安装的NTP客户端上的当前的NTP时间。
步骤102、利用所述探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将生成的时间同步请求分别发送到至少两个NTP服务器中的各NTP服务器中。
在上述步骤102中,为了将生成的时间同步请求分别发送到至少两个NTP服务器中的各NTP服务器中,可以执行以下步骤(1)至步骤(2):
(1)获取NTP服务器列表,其中,所述NTP服务器列表中记录有多个NTP服务器的地址信息;
(2)从所述NTP服务器列表获取至少两个NTP服务器的地址信息,并根据所述至少两个NTP服务器的地址信息,将所述时间同步请求发送到至少两个NTP服务器中的各NTP服务器中。
在上述步骤(1)中,所述NTP服务器列表,缓存在所述探测节点中。
所述NTP服务器的地址信息,可以是NTP服务器的IP地址;也可以是NTP服务器的域名。
在上述步骤(2)中,在一个实施方式中,所述探测节点获取的NTP服务器的地址信息的数量,最少是30个。
探测节点同时将所述时间同步请求发送到至少两个NTP服务器中的各NTP服务器中,保证探测过程中探测节点与获取的NTP服务器具有相同的网络出口状态分布,减小误差。
步骤104、获取各NTP服务器反馈的时间调整信息,计算各NTP服务器反馈的时间调整信息的标准差和平均值,并基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到探测节点自身的本地NTP时间的调整值。
在上述步骤104中,计算各NTP服务器反馈的时间调整信息的标准差和平均值的具体过程是现有技术,这里不再赘述。
具体地,为了得到所述第一本地NTP时间的调整值,上述步骤104.可以执行以下步骤(1)至步骤(9):
(1)保留各NTP服务器反馈的时间调整信息中,与各NTP服务器反馈的时间调整信息的平均值的差值小于等于各NTP服务器反馈的时间调整信息的标准差的时间调整信息,并计算保留的时间调整信息的调整平均值;
(2)对调整平均值与所述第一本地NTP时间进行求和计算,得到期望NTP时间,并生成期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系;
(3)对时间同步请求次数进行增量操作,得到增量操作后的时间同步请求次数;
(4)当增量操作后的时间同步请求次数小于同步次数阈值时,返回所述探测节点获取所述探测节点自身存储的第一本地NTP时间步骤;
(5)当增量操作后的时间同步请求次数等于同步次数阈值时,获取同步次数阈值数量的期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系;
(6)分别计算同步次数阈值数量的对应关系中各对应关系中记录的期望NTP时间与第一本地NTP时间的时间差值,从而得到同步次数阈值数量的时间差值;
(7)计算所述同步次数阈值数量的时间差值的标准差和平均值;
(8)保留所述同步次数阈值数量的时间差值中,与所述同步次数阈值数量的时间差值的平均值的差小于等于所述同步次数阈值数量的时间差值的标准差的时间差值;
(9)计算保留的时间差值的平均值,并将计算得到的时间差值的平均值确定为本地NTP时间的调整值。
在执行上述步骤(1)之前,在预设时长内,探测节点获取各NTP服务器反馈的时间调整信息,并根据获取到的各NTP服务器反馈的时间调整信息执行后续的步骤(1)至步骤(9)的流程;并在NTP服务器列表中,将预设时长内未反馈时间调整信息的NTP服务器标记为不可用,从而在后续发送时间同步请求时,不再向标记为不可用的NTP服务器发送时间同步请求。
在一个实施方式中,所述预设时长是10秒钟。
保留各NTP服务器反馈的时间调整信息中,与各NTP服务器反馈的时间调整信息的平均值的差值小于等于各NTP服务器反馈的时间调整信息的标准差的时间调整信息,就是:将各NTP服务器反馈的时间调整信息中,落入[各NTP服务器反馈的时间调整信息的平均值-各NTP服务器反馈的时间调整信息的标准差,各NTP服务器反馈的时间调整信息的平均值+各NTP服务器反馈的时间调整信息的标准差]数值范围的时间调整信息进行保留。
NTP服务器在获取到探测节点发送的时间同步请求后,会利用自身的NTP时间与时间同步请求中携带的第一本地NTP时间做差值计算,并将差值计算的计算结果作为时间调整信息反馈给探测节点。
因此,所述时间调整信息,用于表示探测节点的本体NTP时间的调整量。
所述调整平均值,就是被保留的时间调整信息的平均值。
在上述步骤(2)中,生成的期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系,缓存在探测节点中。
在上述步骤(3)中,时间同步请求次数,缓存在所述探测节点中,用于对探测节点向NTP服务器发送时间同步请求的次数进行记录。
在上述步骤(4)中,所述同步次数阈值,预先存储在探测节点中。
在一个实施方式中,所述同步次数阈值,可以设置为30到50之间的任意整数,这里不再赘述。
在上述步骤(7)中,计算所述同步次数阈值数量的时间差值的标准差和平均值的过程是现有技术,这里不再赘述。
在上述步骤(8)中,保留所述同步次数阈值数量的时间差值中,与所述同步次数阈值数量的时间差值的平均值的差小于等于所述同步次数阈值数量的时间差值的标准差的时间差值,就是:将所述同步次数阈值数量的时间差值中,落入[同步次数阈值数量的时间差值的平均值-同步次数阈值数量的时间差值的标准差,同步次数阈值数量的时间差值的平均值+同步次数阈值数量的时间差值的标准差]数值范围的时间差值进行保留。
通过以上步骤(1)至步骤(9)描述的流程可以看出,通过对与各NTP服务器反馈的时间调整信息的平均值的差值小于等于各NTP服务器反馈的时间调整信息的标准差的时间调整信息进行保留,并计算保留的时间调整信息的调整平均值,然后对计算保留的时间调整信息的调整平均值和探测节点的第一本地NTP时间进行求和计算,得到期望NTP时间,并在发送时间同步请求的次数达到同步次数阈值时,根据各次同步后得到的期望NTP时间与对应的第一本地NTP时间,计算得到本地NTP时间的调整值,可以利用得到的精准的本地NTP时间调整值,对本地NTP时间进行精确调整,对得到探测节点和被探测节点之间准确的单向网络延迟打下基础。
在得到探测节点自身的本地NTP时间的调整值后,可以继续执行以下步骤106,对探测节点自身的本地NTP时间进行调整。
步骤106、利用所述调整值,对探测节点自身的本地NTP时间进行调整,得到调整后的第二本地NTP时间。
在上述步骤106中,所述第二本地NTP时间,就是被精确调整后的探测节点自身的本地NTP时间。
在探测节点对自身的本地NTP时间进行调整的同时,被探测节点在启动后,也可以采用与上述步骤100至步骤106类似的流程,对被探测节点自身的本地NTP时间进行精确调整,具体过程这里不再赘述。
步骤108、利用所述第二本地NTP时间生成探测数据包,并将生成的探测数据包发送到被探测节点。
在上述步骤108中,被探测节点在接收到探测数据包后,将探测数据包中存储的第二本地NTP时间提取出来,从而根据提取出来的第二本地NTP时间以及该被探测节点接收到探测数据包时的被探测节点NTP时间生成探测反馈信息;然后将生成的探测反馈信息反馈给所述探测节点。
步骤110、接收所述被探测节点反馈的探测反馈信息,并记录接收到所述探测反馈信息时的第三本地NTP时间;其中,所述探测反馈信息中记录有所述第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间。
步骤112、利用所述第二本地NTP时间、所述第三本地NTP时间、所述被探测节点NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟。
在上述步骤112中,所述探测节点与所述被探测节点之间的单向网络延迟,包括:所述探测节点到所述被探测节点的单向网络延迟和所述被探测节点到所述探测节点的单向网络延迟。
具体地,为了确定所述探测节点与所述被探测节点之间的单向网络延迟,上述步骤112可以执行以下步骤(1)至步骤(2):
(1)计算所述被探测节点NTP时间与所述第二本地NTP时间的第一时间差,并将计算得到的所述第一时间差确定为所述探测节点到所述被探测节点的单向网络延迟;
(2)计算所述第三本地NTP时间与所述第二本地NTP时间的第二时间差,并将利用所述第二时间差减去所述第一时间差得到的结果,作为所述被探测节点到所述探测节点的单向网络延迟。
在上述步骤(2)中,所述被探测节点到所述探测节点的单向网络延迟=第三本地NTP时间-第二本地NTP时间-第一时间差。
综上所述,本实施例提出的一种单向网络延迟确定方法,通过探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将该时间同步请求发送到至少两个NTP服务器,并根据至少两个NTP服务器反馈的时间调整信息,得到所述第一本地NTP时间的调整值,然后利用所述调整值,对第一本地NTP时间进行调整,得到调整后的第二本地NTP时间,然后将包括第二本地NTP时间的探测数据包发送到被探测节点,并利用被探测节点反馈的探测反馈信息中记录的第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间,以及接收到所述探测反馈信息时的第三本地NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟,与相关技术中将设备间的往返延迟时间的确定设备间的单向网络延迟的方式相比,在发送探测网络延迟的探测数据包之前,先对探测节点自身的本地NTP时间进行精确调整,并将利用精确调整后的第二本地NTP时间生成的探测数据包发送到被探测节点,从而在精确调整后的本地NTP时间的基础上,对探测节点与所述被探测节点之间的单向网络延迟进行探测,以此保证探测得到的探测节点与所述被探测节点之间的单向网络延迟的准确性。
实施例2
本实施例提出一种单向网络延迟确定装置,用于执行上述实施例1提出的单向网络延迟确定方法。
参见图2所示的单向网络延迟确定装置的结构示意图,本实施例提出的单向网络延迟确定装置,包括:
获取模块200,用于获取探测节点的第一本地网络时间协议NTP时间;
第一发送模块202,用于利用所述探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将生成的时间同步请求分别发送到至少两个NTP服务器中的各NTP服务器中;
计算模块204,用于获取各NTP服务器反馈的时间调整信息,计算各NTP服务器反馈的时间调整信息的标准差和平均值,并基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到探测节点自身的本地NTP时间的调整值;
调整模块206,用于利用所述调整值,对所述第一本地NTP时间进行调整,得到调整后的第二本地NTP时间;
第二发送模块208,用于利用所述第二本地NTP时间生成探测数据包,并将生成的探测数据包发送到被探测节点;
接收模块210,用于接收所述被探测节点反馈的探测反馈信息,并记录接收到所述探测反馈信息时的第三本地NTP时间;其中,所述探测反馈信息中记录有所述第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间;
处理模块212,用于利用所述第二本地NTP时间、所述第三本地NTP时间、所述被探测节点NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟。
具体地,第一发送模块202,用于将生成的时间同步请求分别发送到至少两个NTP服务器节点中的各NTP服务器中,包括:
获取NTP服务器列表,其中,所述NTP服务器列表中记录有多个NTP服务器的地址信息;
从所述NTP服务器列表获取至少两个NTP服务器的地址信息,并根据所述至少两个NTP服务器的地址信息,将所述时间同步请求发送到至少两个NTP服务器中的各NTP服务器中。
具体地,所述计算模块204,用于基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到所述第一本地NTP时间的调整值,包括:
保留各NTP服务器反馈的时间调整信息中,与各NTP服务器反馈的时间调整信息的平均值的差值小于等于各NTP服务器反馈的时间调整信息的标准差的时间调整信息,并计算保留的时间调整信息的调整平均值;
对调整平均值与所述第一本地NTP时间进行求和计算,得到期望NTP时间,并生成期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系;
对时间同步请求次数进行增量操作,得到增量操作后的时间同步请求次数;
当增量操作后的时间同步请求次数小于同步次数阈值时,返回所述探测节点获取所述探测节点自身的第一本地NTP时间步骤;
当增量操作后的时间同步请求次数等于同步次数阈值时,获取同步次数阈值数量的期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系;
分别计算同步次数阈值数量的对应关系中各对应关系中记录的期望NTP时间与第一本地NTP时间的时间差值,从而得到同步次数阈值数量的时间差值;
计算所述同步次数阈值数量的时间差值的标准差和平均值;
保留所述同步次数阈值数量的时间差值中,与所述同步次数阈值数量的时间差值的平均值的差小于等于所述同步次数阈值数量的时间差值的标准差的时间差值;
计算保留的时间差值的平均值,并将计算得到的时间差值的平均值确定为所述第一本地NTP时间的调整值。
具体地,所述探测节点与所述被探测节点之间的单向网络延迟,包括:所述探测节点到所述被探测节点的单向网络延迟和所述被探测节点到所述探测节点的单向网络延迟;
所述处理模块212,具体用于:
计算所述被探测节点NTP时间与所述第二本地NTP时间的第一时间差,并将计算得到的所述第一时间差确定为所述探测节点到所述被探测节点的单向网络延迟;
计算所述第三本地NTP时间与所述第二本地NTP时间的第二时间差,并将利用所述第二时间差减去所述第一时间差得到的结果,作为所述被探测节点到所述探测节点的单向网络延迟。
综上所述,本实施例提出的一种单向网络延迟确定装置,通过探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将该时间同步请求发送到至少两个NTP服务器,并根据至少两个NTP服务器反馈的时间调整信息,得到所述第一本地NTP时间的调整值,然后利用所述调整值,对第一本地NTP时间进行调整,得到调整后的第二本地NTP时间,然后将包括第二本地NTP时间的探测数据包发送到被探测节点,并利用被探测节点反馈的探测反馈信息中记录的第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间,以及接收到所述探测反馈信息时的第三本地NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟,与相关技术中将设备间的往返延迟时间的确定设备间的单向网络延迟的方式相比,在发送探测网络延迟的探测数据包之前,先对探测节点自身的本地NTP时间进行精确调整,并将利用精确调整后的第二本地NTP时间生成的探测数据包发送到被探测节点,从而在精确调整后的本地NTP时间的基础上,对探测节点与所述被探测节点之间的单向网络延迟进行探测,以此保证探测得到的探测节点与所述被探测节点之间的单向网络延迟的准确性。
实施例3
本实施例提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述实施例1描述的单向网络延迟确定方法的步骤。具体实现可参见方法实施例1,在此不再赘述。
此外,参见图3所示的一种电子设备的结构示意图,本实施例还提出一种电子设备,上述电子设备包括总线51、处理器52、收发机53、总线接口54、存储器55和用户接口56。上述电子设备包括有存储器55。
本实施例中,上述电子设备还包括:存储在存储器55上并可在处理器52上运行的一个或者一个以上的程序,经配置以由上述处理器执行上述一个或者一个以上程序用于进行以下步骤(1)至步骤(7):
(1)探测节点获取所述探测节点自身的第一本地网络时间协议NTP时间;
(2)利用所述探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将生成的时间同步请求分别发送到至少两个NTP服务器中的各NTP服务器中;
(3)获取各NTP服务器反馈的时间调整信息,计算各NTP服务器反馈的时间调整信息的标准差和平均值,并基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到探测节点自身的本地NTP时间的调整值;
(4)利用所述调整值,对所述第一本地NTP时间进行调整,得到调整后的第二本地NTP时间;
(5)利用所述第二本地NTP时间生成探测数据包,并将生成的探测数据包发送到被探测节点;
(6)接收所述被探测节点反馈的探测反馈信息,并记录接收到所述探测反馈信息时的第三本地NTP时间;其中,所述探测反馈信息中记录有所述第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间;
(7)利用所述第二本地NTP时间、所述第三本地NTP时间、所述被探测节点NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟。
收发机53,用于在处理器52的控制下接收和发送数据。
其中,总线架构(用总线51来代表),总线51可以包括任意数量的互联的总线和桥,总线51将包括由处理器52代表的一个或多个处理器和存储器55代表的存储器的各种电路链接在一起。总线51还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本实施例不再对其进行进一步描述。总线接口54在总线51和收发机53之间提供接口。收发机53可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。例如:收发机53从其他设备接收外部数据。收发机53用于将处理器52处理后的数据发送给其他设备。取决于计算系统的性质,还可以提供用户接口56,例如小键盘、显示器、扬声器、麦克风、操纵杆。
处理器52负责管理总线51和通常的处理,如前述上述运行通用操作系统。而存储器55可以被用于存储处理器52在执行操作时所使用的数据。
可选的,处理器52可以是但不限于:中央处理器、单片机、微处理器或者可编程逻辑器件。
可以理解,本发明实施例中的存储器55可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(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,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本实施例描述的系统和方法的存储器55旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器55存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:操作系统551和应用程序552。
其中,操作系统551,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序552,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序552中。
综上所述,本实施例提出的一种电子设备和计算机可读存储介质,通过探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将该时间同步请求发送到至少两个NTP服务器,并根据至少两个NTP服务器反馈的时间调整信息,得到所述第一本地NTP时间的调整值,然后利用所述调整值,对第一本地NTP时间进行调整,得到调整后的第二本地NTP时间,然后将包括第二本地NTP时间的探测数据包发送到被探测节点,并利用被探测节点反馈的探测反馈信息中记录的第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间,以及接收到所述探测反馈信息时的第三本地NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟,与相关技术中将设备间的往返延迟时间的确定设备间的单向网络延迟的方式相比,在发送探测网络延迟的探测数据包之前,先对探测节点自身的本地NTP时间进行精确调整,并将利用精确调整后的第二本地NTP时间生成的探测数据包发送到被探测节点,从而在精确调整后的本地NTP时间的基础上,对探测节点与所述被探测节点之间的单向网络延迟进行探测,以此保证探测得到的探测节点与所述被探测节点之间的单向网络延迟的准确性。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种单向网络延迟确定方法,其特征在于,包括:
探测节点获取所述探测节点自身的第一本地网络时间协议NTP时间;
利用所述探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将生成的时间同步请求分别发送到至少两个NTP服务器中的各NTP服务器中;
获取各NTP服务器反馈的时间调整信息,计算各NTP服务器反馈的时间调整信息的标准差和平均值,并基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到探测节点自身的第一本地NTP时间的调整值;
利用所述调整值,对所述第一本地NTP时间进行调整,得到调整后的第二本地NTP时间;
利用所述第二本地NTP时间生成探测数据包,并将生成的探测数据包发送到被探测节点;
接收所述被探测节点反馈的探测反馈信息,并记录接收到所述探测反馈信息时的第三本地NTP时间;其中,所述探测反馈信息中记录有所述第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间;
利用所述第二本地NTP时间、所述第三本地NTP时间、所述被探测节点NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟。
2.根据权利要求1所述的方法,其特征在于,将生成的时间同步请求分别发送到至少两个NTP服务器节点中的各NTP服务器中,包括:
获取NTP服务器列表,其中,所述NTP服务器列表中记录有多个NTP服务器的地址信息;
从所述NTP服务器列表获取至少两个NTP服务器的地址信息,并根据所述至少两个NTP服务器的地址信息,将所述时间同步请求发送到至少两个NTP服务器中的各NTP服务器中。
3.根据权利要求1所述的方法,其特征在于,基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到所述第一本地NTP时间的调整值,包括:
保留各NTP服务器反馈的时间调整信息中,与各NTP服务器反馈的时间调整信息的平均值的差值小于等于各NTP服务器反馈的时间调整信息的标准差的时间调整信息,并计算保留的时间调整信息的调整平均值;
对调整平均值与所述第一本地NTP时间进行求和计算,得到期望NTP时间,并生成期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系;
对时间同步请求次数进行增量操作,得到增量操作后的时间同步请求次数;
当增量操作后的时间同步请求次数小于同步次数阈值时,返回所述探测节点获取所述探测节点自身的第一本地NTP时间步骤;
当增量操作后的时间同步请求次数等于同步次数阈值时,获取同步次数阈值数量的期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系;
分别计算同步次数阈值数量的对应关系中各对应关系中记录的期望NTP时间与第一本地NTP时间的时间差值,从而得到同步次数阈值数量的时间差值;
计算所述同步次数阈值数量的时间差值的标准差和平均值;
保留所述同步次数阈值数量的时间差值中,与所述同步次数阈值数量的时间差值的平均值的差小于等于所述同步次数阈值数量的时间差值的标准差的时间差值;
计算保留的时间差值的平均值,并将计算得到的时间差值的平均值确定为所述第一本地NTP时间的调整值。
4.根据权利要求1所述的方法,其特征在于,所述探测节点与所述被探测节点之间的单向网络延迟,包括:所述探测节点到所述被探测节点的单向网络延迟和所述被探测节点到所述探测节点的单向网络延迟;
利用所述第二本地NTP时间、所述第三本地NTP时间、所述被探测节点NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟,包括:
计算所述被探测节点NTP时间与所述第二本地NTP时间的第一时间差,并将计算得到的所述第一时间差确定为所述探测节点到所述被探测节点的单向网络延迟;
计算所述第三本地NTP时间与所述第二本地NTP时间的第二时间差,并将利用所述第二时间差减去所述第一时间差得到的结果,作为所述被探测节点到所述探测节点的单向网络延迟。
5.一种单向网络延迟确定装置,其特征在于,包括:
获取模块,用于获取探测节点的第一本地网络时间协议NTP时间;
第一发送模块,用于利用所述探测节点自身存储的第一本地NTP时间,生成时间同步请求,并将生成的时间同步请求分别发送到至少两个NTP服务器中的各NTP服务器中;
计算模块,用于获取各NTP服务器反馈的时间调整信息,计算各NTP服务器反馈的时间调整信息的标准差和平均值,并基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到探测节点自身的第一本地NTP时间的调整值;
调整模块,用于利用所述调整值,对所述第一本地NTP时间进行调整,得到调整后的第二本地NTP时间;
第二发送模块,用于利用所述第二本地NTP时间生成探测数据包,并将生成的探测数据包发送到被探测节点;
接收模块,用于接收所述被探测节点反馈的探测反馈信息,并记录接收到所述探测反馈信息时的第三本地NTP时间;其中,所述探测反馈信息中记录有所述第二本地NTP时间与所述被探测节点接收到所述探测数据包时的被探测节点NTP时间;
处理模块,用于利用所述第二本地NTP时间、所述第三本地NTP时间、所述被探测节点NTP时间,确定所述探测节点与所述被探测节点之间的单向网络延迟。
6.根据权利要求5所述的装置,其特征在于,第一发送模块,用于将生成的时间同步请求分别发送到至少两个NTP服务器节点中的各NTP服务器中,包括:
获取NTP服务器列表,其中,所述NTP服务器列表中记录有多个NTP服务器的地址信息;
从所述NTP服务器列表获取至少两个NTP服务器的地址信息,并根据所述至少两个NTP服务器的地址信息,将所述时间同步请求发送到至少两个NTP服务器中的各NTP服务器中。
7.根据权利要求5所述的装置,其特征在于,所述计算模块,用于基于各NTP服务器反馈的时间调整信息的标准差和平均值,得到所述第一本地NTP时间的调整值,包括:
保留各NTP服务器反馈的时间调整信息中,与各NTP服务器反馈的时间调整信息的平均值的差值小于等于各NTP服务器反馈的时间调整信息的标准差的时间调整信息,并计算保留的时间调整信息的调整平均值;
对调整平均值与所述第一本地NTP时间进行求和计算,得到期望NTP时间,并生成期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系;
对时间同步请求次数进行增量操作,得到增量操作后的时间同步请求次数;
当增量操作后的时间同步请求次数小于同步次数阈值时,返回所述探测节点获取所述探测节点自身的第一本地NTP时间步骤;
当增量操作后的时间同步请求次数等于同步次数阈值时,获取同步次数阈值数量的期望NTP时间与计算得到所述期望NTP时间的第一本地NTP时间的对应关系;
分别计算同步次数阈值数量的对应关系中各对应关系中记录的期望NTP时间与第一本地NTP时间的时间差值,从而得到同步次数阈值数量的时间差值;
计算所述同步次数阈值数量的时间差值的标准差和平均值;
保留所述同步次数阈值数量的时间差值中,与所述同步次数阈值数量的时间差值的平均值的差小于等于所述同步次数阈值数量的时间差值的标准差的时间差值;
计算保留的时间差值的平均值,并将计算得到的时间差值的平均值确定为所述第一本地NTP时间的调整值。
8.根据权利要求5所述的装置,其特征在于,所述探测节点与所述被探测节点之间的单向网络延迟,包括:所述探测节点到所述被探测节点的单向网络延迟和所述被探测节点到所述探测节点的单向网络延迟;
所述处理模块,具体用于:
计算所述被探测节点NTP时间与所述第二本地NTP时间的第一时间差,并将计算得到的所述第一时间差确定为所述探测节点到所述被探测节点的单向网络延迟;
计算所述第三本地NTP时间与所述第二本地NTP时间的第二时间差,并将利用所述第二时间差减去所述第一时间差得到的结果,作为所述被探测节点到所述探测节点的单向网络延迟。
9.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行上述权利要求1-4任一项所述的方法的步骤。
10.一种电子设备,其特征在于,所述电子设备包括有存储器,处理器以及一个或者一个以上的程序,其中所述一个或者一个以上程序存储于所述存储器中,且经配置以由所述处理器执行权利要求1-4任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110001053.5A CN112333051B (zh) | 2021-01-04 | 2021-01-04 | 一种单向网络延迟确定方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110001053.5A CN112333051B (zh) | 2021-01-04 | 2021-01-04 | 一种单向网络延迟确定方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112333051A CN112333051A (zh) | 2021-02-05 |
CN112333051B true CN112333051B (zh) | 2021-04-02 |
Family
ID=74302085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110001053.5A Active CN112333051B (zh) | 2021-01-04 | 2021-01-04 | 一种单向网络延迟确定方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112333051B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113890841B (zh) * | 2021-09-16 | 2023-03-24 | 清华大学 | 高效的大规模单向延迟测量方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101043317A (zh) * | 2006-06-12 | 2007-09-26 | 华为技术有限公司 | 一种时间同步设备精度测试方法及其系统 |
CN105141390A (zh) * | 2015-09-16 | 2015-12-09 | 浙江神州量子网络科技有限公司 | 一种量子网络中的时间同步方法 |
CN109075997A (zh) * | 2016-04-21 | 2018-12-21 | 思科技术公司 | 互联网协议流量的跳式延迟和往返时间的分布式无状态推断 |
CN110692252A (zh) * | 2017-04-03 | 2020-01-14 | 思妙公司 | 具有用于广域广播的延迟管理的视听协作方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BR0318619A (pt) * | 2003-11-27 | 2006-10-17 | Telecom Italia Spa | método e sistema para medir o tempo de percurso de ida e volta (rtt) na comunicação de pacotes entre portas de uma rede de comunicação de comutação por pacotes, e para gerir uma rede de comunicação de comutação por pacotes, rede de comunicação de comutação por pacote, e, produto de programa de computador |
CN102571468A (zh) * | 2010-12-23 | 2012-07-11 | 上海杉达学院 | 检测网络延迟的方法 |
IN2015CH03249A (zh) * | 2015-06-27 | 2015-07-10 | Wipro Ltd | |
CN109787867B (zh) * | 2019-02-28 | 2020-10-20 | 矩阵元技术(深圳)有限公司 | 区块生成方法、装置、计算机设备和存储介质 |
CN111447588A (zh) * | 2020-04-03 | 2020-07-24 | 成都信息工程大学 | 一种基于端信息跳变的车联网安全通信方法、系统及应用 |
-
2021
- 2021-01-04 CN CN202110001053.5A patent/CN112333051B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101043317A (zh) * | 2006-06-12 | 2007-09-26 | 华为技术有限公司 | 一种时间同步设备精度测试方法及其系统 |
CN105141390A (zh) * | 2015-09-16 | 2015-12-09 | 浙江神州量子网络科技有限公司 | 一种量子网络中的时间同步方法 |
CN109075997A (zh) * | 2016-04-21 | 2018-12-21 | 思科技术公司 | 互联网协议流量的跳式延迟和往返时间的分布式无状态推断 |
EP3446442A1 (en) * | 2016-04-21 | 2019-02-27 | Cisco Technology, Inc. | Distributed stateless inference of hop-wise delays and round-trip time for internet protocol traffic |
CN110692252A (zh) * | 2017-04-03 | 2020-01-14 | 思妙公司 | 具有用于广域广播的延迟管理的视听协作方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112333051A (zh) | 2021-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2706731B1 (en) | Systems and methods for load balancing using predictive routing | |
US7542430B2 (en) | System and method for measuring end-to-end network delay and user-perspective delay | |
US8160835B2 (en) | Method for measuring unidirectional transmission characteristics such as packet propagation time, fluctuations in propagation time and results derivable therefrom, in a telecommunications network | |
JP5161363B2 (ja) | 非同期分散システムにおけるクロックの同期 | |
CN112333051B (zh) | 一种单向网络延迟确定方法、装置和电子设备 | |
CN111078478B (zh) | 服务器压力测试方法、装置和计算机可读存储介质 | |
US10230602B2 (en) | Endpoint web monitoring system and method for measuring popularity of a service or application on a web server | |
WO2016168063A1 (en) | Methods, systems, and computer readable media for synchronizing timing among network interface cards (nics) in a network equipment test device | |
KR20100016364A (ko) | 한 네트워크 구성요소의 클록을 다른 네트워크 구성요소의 클록과 동기화시키기 위한 방법 및 이를 위한 네트워크 구성요소 | |
CN108319550A (zh) | 一种测试系统及测试方法 | |
US8682611B2 (en) | Distance metric estimating system, coordinate calculating node, distance metric estimating method, and program | |
US20040243335A1 (en) | Sustainable capacity estimation | |
JP4703634B2 (ja) | 負荷分散装置 | |
CN111274315B (zh) | 同步数据通道构建方法、装置、计算机设备和存储介质 | |
CN110891090B (zh) | 一种请求方法、装置、服务端、系统及存储介质 | |
CN112968747A (zh) | 一种时间校准方法、装置、计算机设备和存储介质 | |
CN110460487B (zh) | 服务节点的监控方法及系统、服务节点 | |
JP2005027252A (ja) | ネットワーク・トレースを解析する方法、ノード間の序列の判断方法、ネットワーク・トレースを解析するための処理装置、および該処理装置としてコンピュータを制御させるためのコンピュータ実行可能なプログラム、並びにネットワークにおけるノード間の時間差補正方法 | |
CN110677683A (zh) | 视频存储、视频访问方法及分布式存储、视频访问系统 | |
EP2721786A1 (en) | Evaluation of overall performance of interactive application service | |
TWI526035B (zh) | A method and apparatus for obtaining a real entity address of a network client | |
CN112187560A (zh) | Ntp网络授时评估系统、方法和授时评估装置 | |
EP4189418A1 (en) | Positioning and trustworthiness | |
JP4331702B2 (ja) | 片道転送遅延時間推定装置、方法、およびプログラム | |
CN112187815B (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 | ||
CB02 | Change of applicant information |
Address after: Room 804, 8th floor, building D, 2-2, Beijing Shichuang hi tech Development Corporation Applicant after: Beijing Chuangshi cloud Technology Co.,Ltd. Address before: 100085 room 804, Zhongguancun International Incubator, No.2, shangdixinxi Road, Haidian District, Beijing Applicant before: Beijing chuangshiyun Technology Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |