CN104734919B - 一种测量网络时延的方法和设备 - Google Patents
一种测量网络时延的方法和设备 Download PDFInfo
- Publication number
- CN104734919B CN104734919B CN201510138151.8A CN201510138151A CN104734919B CN 104734919 B CN104734919 B CN 104734919B CN 201510138151 A CN201510138151 A CN 201510138151A CN 104734919 B CN104734919 B CN 104734919B
- Authority
- CN
- China
- Prior art keywords
- network
- under test
- delay
- equipment end
- available
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种测量网络时延的方法。该方法包括:查找网络中可用于测量网络时延的可用基础设施,并为各个可用基础设施及各个待测网络设备端构建网络坐标;基于各个可用基础设施及各个待测网络设备端的网络坐标,确定各个待测网络设备端最近的可用基础设施;对于任意两个可用基础设施,通过在两个可用基础设施之间传输用于测量的消息,测量两个可用基础设施之间的网络时延;对于任意两个待测网络设备端,将两个待测网络设备端最近的可用基础设施之间的网络时延确定为两个待测网络设备端之间的网络时延。本发明实施例提供的方法,可以在网络负载较小的情况下实现网络时延的准确测量。此外,本发明实施例还公开了一种测量网络时延的设备。
Description
技术领域
本发明涉及网络性能测试领域,特别是涉及一种测量网络时延的方法和设备。
背景技术
在互联网中,数据从一个网络设备端传输到另一个网络设备端之间需要一定的时间,该数据传输的时间即是该两个网络设备端之间的网络时延。网络时延能够体现网络设备端之间数据传输的性能,是网络性能的重要参考依据之一。因此,在许多实际的应用场景中需要测量网络时延,以便依据网络时延配置网络。例如,对于内容分发网络(ContentDelivery Network,简称CDN)来说,用户端与服务器端之间的网络时延是CDN网络性能的重要因素,因此,在因特网内容提供商(Internet Content Provider,简称ICP)选择CDN时,需要测量各备选的CDN中用户端与服务器端之间的网络时延。
目前,已经出现了一些测量网络时延的实现方式。例如,在一种现有的网络时延测量方式中,两个网络设备端之间的网络时延可以被认为是相当于网络中分别与该两个网络设备端最近的两个域名解析服务器(Domain Name Service,简称DNS)之间的网络时延。具体地,当需要测量两个网络设备端之间的网络时延时,先利用DNS反向解析技术分别查找到服务于该两个网络设备端的DNS服务器,然后,根据IP地址前缀的匹配,从查找到的DNS服务器中确定分别与该两个网络设备端最近的两个DNS服务器,最后,通过KING的方式测量该两个DNS服务器之间的网络时延,作为前述两个网络设备端的网络时延。可以理解的是,对于具有大量网络设备端的网络来说,整个网络的网络时延统计需要测量大量的网络设备端间的网络时延,而由于大量的网络设备端间的网络时延可以被相对少量的DNS服务器间网络时延所表示,因此,对于整个网络的网络时延统计就无需在大量的网络设备端间传输大量用于测量的消息,而仅需在相对少量的DNS服务器间传输相对少量用于测量的消息,从而减少了网络时延测量占用的网络负载,使得网络时延的测量开销得以减小。
需要说明的是,以DNS服务器间的网络时延测量替代网络设备端间的网络时延测量,实际上是忽略了网络设备端与DNS服务器之间的网络时延,因此,需要找到与网络设备端最近的DNS服务器来测量网络时延。在现有技术中,与网络设备端最近的DNS服务器是根据IP地址前缀的匹配从服务于网络设备端的DNS服务器中确定的,但是,IP地址前缀往往并不能反映出DNS服务器与网络设备端之间的实际距离,有时,即使网络设备端与DNS服务器两者的IP地址前缀互相匹配,两者之间往往实际距离也是很远的,两者之间的实际网络时延往往也很大,因此,现有技术中,通过IP地址前缀的匹配难以准确地找到与网络设备端最近的DNS服务器,导致用于测量的DNS服务器与网络设备端之间的网络时延较大,从而造成网络设备端之间网络时延测量不准确。
发明内容
本发明所要解决的技术问题是,提供一种测量网络时延的方法和设备,以解决按照现有技术中通过IP地址前缀的匹配来确定与网络设备端最近的DNS服务器而导致的无法准确地找到与网络设备端最近的DNS服务器以及无法准确地测量网络设备端之间网络时延的技术问题。
为解决上述技术问题,本发明实施例的第一方面,提供了一种测量网络时延的方法,该方法包括:
查找网络中可用于测量网络时延的可用基础设施,并为各个可用基础设施及各个待测网络设备端构建网络坐标;
基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;
对于任意两个可用基础设施,通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延;
对于任意两个待测网络设备端,将两个所述待测网络设备端最近的可用基础设施之间的网络时延确定为两个所述待测网络设备端之间的网络时延。
可选的,所述可用基础设施包括可控的测量节点、可控的测量终端和/或支持迭代查询的开放域名解析服务器。
可选的,所述测量节点和所述测量终端通过预先保存的网络配置信息查找,所述支持迭代查询的开放域名解析服务器通过DNS反向解析技术查找。
可选的,所述基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施,包括:
为每个可用基础设施建立一个聚类簇;
基于各个所述可用基础设施的网络坐标及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;
将各个所述待测网络设备端划分到各自最近的可用基础设施的聚类簇中。
可选的,所述对于任意两个可用基础设施,通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延,包括:
响应于两个所述可用基础设施中存在测量节点和/或测量终端,通过PING的方式测量两个所述可用基础设施之间的网络时延;
响应于两个所述可用基础设施均为开放域名解析服务器,通过KING的方式测量两个所述可用基础设施之间的网络时延。
可选的,所述方法还包括:
响应于所述可用基础设施的前一次查找距离当前时刻达到预设的更新时间,重新查找网络中可用于测量网络时延的可用基础设施,为各个当前查找到的可用基础设施重新构建网络坐标,并对于任意两个当前查找到的可用基础设施,通过在两个当前查找到的可用基础设施之间传输用于测量的消息,重新测量两个当前查找到的可用基础设施之间的网络时延。
本发明实施例的第二方面,提供了一种测量网络时延的方法,该方法包括:
以待测网络中的各个网络设备端作为待测网络设备端,利用前述第一方面任意一种实施方式的方法测量所述待测网络中各对网络设备端之间的网络时延;
基于所述待测网络中各对网络设备端之间的网络时延,计算所述待测网络的网络时延统计值。
可选的,所述待测网络的网络时延统计值包括:所述待测网络的网络时延平均值和/或所述待测网络的网络时延排位值;其中,所述待测网络的网络时延平均值表示所述待测网络中各对网络设备端之间的网络时延的平均值,所述待测网络的网络时延排位值表示在所述待测网络各对网络设备端之间网络时延的排序中处于特定排序位置的网络时延的数值。
本发明实施例的第三方面,提供了一种测量网络时延的设备,该设备包括:
查找模块,用于查找网络中可用于测量网络时延的可用基础设施;
构建模块,用于为各个可用基础设施及各个待测网络设备端构建网络坐标;
第一确定模块,用于基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;
第一测量模块,用于对于任意两个可用基础设施,通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延;
第二确定模块,用于对于任意两个待测网络设备端,将两个所述待测网络设备端最近的可用基础设施之间的网络时延确定为两个所述待测网络设备端之间的网络时延。
可选的,所述可用基础设施包括可控的测量节点、可控的测量终端和/或支持迭代查询的开放域名解析服务器。
可选的,所述测量节点和所述测量终端通过预先保存的网络配置信息查找;所述支持迭代查询的开放域名解析服务器通过DNS反向解析技术查找。
可选的,所述第一确定模块包括:
建立子模块,用于为每个可用基础设施建立一个聚类簇;
确定子模块,用于基于各个所述可用基础设施的网络坐标及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;
划分子模块,用于将各个所述待测网络设备端划分到各自最近的可用基础设施的聚类簇中。
可选的,所述第一测量模块包括:
第一发送模块,用于响应于两个所述可用基础设施中存在测量节点和/或测量终端,通过PING的方式测量两个所述可用基础设施之间的网络时延;
第二发送模块,用于响应于两个所述可用基础设施均为开放域名解析服务器,通过KING的方式测量两个所述可用基础设施之间的网络时延。
可选的,所述设备还包括:
更新模块,用于响应于所述可用基础设施的前一次查找距离当前时刻达到预设的更新时间,重新查找网络中可用于测量网络时延的可用基础设施,为各个当前查找到的可用基础设施重新构建网络坐标,并对于任意两个当前查找到的可用基础设施,通过在两个当前查找到的可用基础设施之间传输用于测量的消息,重新测量两个当前查找到的可用基础设施之间的网络时延。
本发明实施例的第四方面,提供了一种测量网络时延的设备,该设备包括:
第二测量模块,用于以待测网络中的各个网络设备端作为待测网络设备端,利用前述第一方面任意一种实施方式的方法测量所述待测网络中各对网络设备端之间的网络时延;
计算模块,用于基于所述待测网络中各对网络设备端之间的网络时延,计算所述待测网络的网络时延统计值。
可选的,所述待测网络的网络时延统计值包括:所述待测网络的网络时延平均值和/或所述待测网络的网络时延排位值;其中,所述待测网络的网络时延平均值表示所述待测网络中各对网络设备端之间的网络时延的平均值,所述待测网络的网络时延排位值表示在所述待测网络各对网络设备端之间网络时延的排序中处于特定排序位置的网络时延的数值。
与现有技术相比,本发明具有以下优点:
根据本发明实施方式提供的方法和设备,对于网络中可用于测量网络时延的DNS服务器等可用基础设施,可以为可用基础设施和待测网络设备端建立网络坐标,与待测网络设备端最近的可用基础设施就可以基于各可用基础设施及待测网络设备端的网络坐标来确定,由于网络坐标体现的即是各网络设备之间在网络中的实际距离,因此,通过网络坐标可以为待测网络设备端准确地确定其最近的可用基础设施,从而以准确的最近可用基础设施替代待测网络设备端来进行网络时延的测量,就可以保证待测网络设备端与确定出的最近可用基础设施之间的网络时延小到能够被忽略,从而使得网络设备端之间的网络时延能够被准确地测量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中测量网络时延的方法实施例1的流程图;
图2为本发明中测量网络时延的方法实施例2的流程图;
图3为本发明中测量网络时延的设备实施例1的结构图;
图4为本发明中测量网络时延的设备实施例2的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
发明人经过研究发现,为了能够以较小的测量开销实现网络时延的测量,需要忽略了网络设备端与DNS服务器之间的网络时延,以相对少量的DNS服务器间网络时延来表示相对大量的网络设备端间网络时延。而为了减小网络设备端与DNS服务器间网络时延的忽略对网络设备端间网络时延测量准确性的影响,需要找到与网络设备端最近的DNS服务器来测量网络设备端的网络时延。而现有技术之所以存在网络设备端间网络时延测量不准确的问题,原因就在于其无法准确地为网络设备端找到最近的DNS服务器,而其之所以无法准确地为网络设备端找到最近的DNS服务器,是因为其是根据IP地址前缀的匹配从服务于网络设备端的DNS服务器中确定的,但是,IP地址前缀往往并不能反映出DNS服务器与网络设备端之间的实际距离,有时,即使网络设备端与DNS服务器两者的IP地址前缀互相匹配,两者之间往往实际距离也是很远的,两者之间的实际网络时延往往也很大,可见,根据IP地址前缀的匹配无法准确地为网络设备端找到最近的DNS服务器。
基于上述分析,本发明的主要思想之一在于:对于网络中可用于测量网络时延的DNS服务器等可用基础设施,可以为可用基础设施和待测网络设备端建立网络坐标,与待测网络设备端最近的可用基础设施可以基于各可用基础设施及待测网络设备端的网络坐标来确定,由于网络坐标体现的即是各网络设备之间在网络中的实际距离,因此,通过网络坐标可以为待测网络设备端准确地确定其最近的可用基础设施,从而以准确的最近可用基础设施替代待测网络设备端来进行网络时延的测量,就可以保证待测网络设备端与用于为其测量网络时延的可用基础设施之间网络时延小到能够被忽略,从而使得网络设备端之间的网络时延能够被准确地测量。
基于上述基本思想,本发明实施方式的应用场景之一,可以通过用于测量网络时延的服务器来实现。具体地,该服务器可以查找网络中可用于测量网络时延的可用基础设施,并为各个可用基础设施及各个待测网络设备端构建网络坐标,再基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;对于任意两个可用基础设施,该服务器可以通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延;对于任意两个待测网络设备端,该服务器可以将两个所述待测网络设备端最近的可用基础设施之间的网络时延确定为两个所述待测网络设备端之间的网络时延。
需要注意的是,此处的服务器仅是现有的、正在研发的或将来研发的、能够实现网络时延测量的设备或系统的一个示例。在本发明的实施方式中,该服务器可以是以单独的一个实体设备来实现,也可以是以多个实体设备组成的系统来实现。本发明的实施方式在此方面不受任何限制。
还需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
在介绍了本发明的主要思想以后,下面结合附图,详细说明本发明的各种非限制性实施方式。
参见图1,示出了本发明中测量网络时延的方法实施例1的流程图。在本实施例中,例如具体可以包括如下步骤:
S101、查找网络中可用于测量网络时延的可用基础设施,并为各个可用基础设施及各个待测网络设备端构建网络坐标。
在本实施例中,可用于测量网络时延的可用基础设施例如可以包括可控的测量节点、可控的测量终端和/或支持迭代查询的开放域名解析服务器。
对于测量节点和测量终端来说,可控的测量节点表示由网络服务提供商所提供的、用于测量网络时延的基础设施,可控的测量终端表示具有特定客户端程序的终端设备,该特定客户端程序是由网络服务器提供商所提供的客户端,其具有测量网络时延的功能。可以理解的是,测量节点与测量终端是网络服务提供商专门设置用于测量网络时延的,其对于网络服务提供商来说是可控的,因此,在本实施例的一些实施方式中,网络服务提供商例如可以将其设置的测量节点与测量终端都保存到网络配置信息中,此时,在需要测量网络时延时,所述测量节点和所述测量终端就可以通过预先保存的网络配置信息查找。
对于支持迭代查询的开放域名解析服务器来说,由于大部分DNS服务器并非网络服务提供商提供,为此,在本实施例的一些实施方式中,所述支持迭代查询的开放域名解析服务器例如可以通过DNS反向解析技术查找。具体地,开放域名解析服务器的查找方式,例如可以包括:对于为查找开放域名解析服务器而注册的主域名,为主域名搭建域名解析服务器;从IP地址库中随机抽取IP作为各检测IP,分别将各检测IP与主域名组成各检测IP,向各个检测IP发送其对应的检测域名的域名解析请求;在主域名的域名解析服务器中获取域名解析请求的解析日志,从解析日志中获取开放域名解析服务器及转发域名解析服务器,并将既属于开放域名解析服务器又属于转发域名解析服务器的域名解析服务器确定为支持迭代查询的开放域名服务器。其中,在域名解析请求被主域名的域名解析服务器发送到其检测IP对应的DNS服务器时,如果该DNS服务器是开放域名解析服务器,则该DNS服务器会将该域名解析请求发送到已配置的转发域名解析服务器,转发域名解析服务器则会将该域名解析请求发送到主域名的域名解析服务器,则主域名的域名解析服务器就可以记录下该域名解析请求到解析日志中,这样就使得开放域名解析服务器和转发域名解析服务器都被记录到了解析日志中。可以理解的是,将既属于开放域名解析服务器又属于转发域名解析服务器的域名解析服务器确定为支持迭代查询的开放域名服务器,是为了排除不可用于测量网络时延的转发器,从而避免以转发器测量网络时延导致的网络时延测量不准确。
为了前述支持迭代查询的开放域名解析服务器通过DNS反向解析技术查找的方式更便于理解,举例来说,假设主域名设置为“example.com”,这样主域名的域名解析服务器即可以为“*.example.com”提供域名解析,检测域名则可以为“检测IP.example.com”;假设主域名的域名解析服务器的解析日志中存在如下域名解析请求的记录:
01-Jan-2014 00:00:00.000,queries:
client 192.168.100.129#21958:
query:192-168-100-120.example.com
IN A-EDC(192.168.100.20)
从该域名解析请求的记录中可以看出:主域名的域名解析服务器的IP地址即为“192.168.100.20”,检测IP即为“192.168.100.120”,检测域名即为“192-168-100-120.example.com”;该域名解析请求发送到IP地址为“192.168.100.120”的DNS服务器,而IP地址为“192.168.100.120”的DNS服务器为开放域名解析服务器,其将该域名解析请求转发到了IP地址为“192.168.100.129”的DNS服务器,而IP地址为“192.168.100.129”的DNS服务器又将该域名解析请求相继转发给了IP地址为“192.168.100.20”的主域名的域名解析服务器,即IP地址为“192.168.100.129”的DNS服务器为转发域名解析服务器。可以理解的是,主域名的域名解析服务器接收了该域名解析请求之后,除了记录到解析日志之外,还可以将其解析结果通过IP地址为“192.168.100.129”的DNS服务器以及IP地址为“192.168.100.120”DNS服务器返回。当然,由于检测域名通常是不存在的,所以返回的解析结果通常是DNS解析错误。
需要说明的是,为可用基础设施、待测网络设备端等节点建立网络坐标,可以采用网络坐标技术(GNP)来实现。具体地,在本实施例的一些实施方式中,对于需要建立网络坐标的网络节点,网络坐标通过GNP技术建立的方式例如可以包括:从各个可控的测量节点中选取基准节点;控制基准节点发送探测包,以测量各基准节点之间的网络时延以及各基准节点与各网络节点之间的网络时延;调用GNP技术,根据各基准节点之间的网络时延以及各基准节点与各网络节点之间的网络时延,为各个基准点及各个网络节点确定网络坐标。
对于基准点的选取,例如可以遵循以下几个原则:1、最大分布原则,即保证基准点分布的广泛,例如,可以对网络覆盖区域进行划分而形成多个自治域或地理位置,各基准点应分布在不同的自治域或地理位置,这样可以保证基准点能够覆盖到更广泛的区域;2、最小距离原则(N-medians),即保证所选取的基准点到各未被选取为基准点的测量节点的距离之和最小;3、簇中心原则(N-cluster-medians),即,如果将各备选节点划分成多个节点簇,则基准点为每个节点簇的中心节点。
对于基准点间网络时延及基准点与网络节点间网络时延的测量,为了更准确地获得网络的静态特性,在一些实施方式中,例如可以使基准点在一天的不同时刻发送多组探测包,从而获得不同时刻的多组网络时延测量数据,而在确定网络坐标时,对于两个基准点以及一个基准点与一个网络节点组成的节点对,可以从各个节点对的多组测量数据中选取时延最小的测量数据作为其两个节点之间的网络时延,这样可以保证用于建立网络坐标的网络时延能够表示在网络无拥塞情况下的网络距离,从而使得网络坐标基于静态网络建立,保证网络坐标的准确。
对于基准点间网络时延以及基准点与网络节点间网络时延的测量,为了排除测量误差的干扰,在又一些实施方式中,例如可以使基准点发送多组探测包,从而获得多组网络时延测量数据,而在确定网络坐标时,可以剔除测量异常的网络节点,例如剔除测量期间始终没有上线的网络设备端、由于防火墙或其他原因不能被测量节点访问到的网络设备端、测量存在明显误差的网络设备端等,这样就可以排除测量误差的干扰。
可以理解的是,在为待测网络设备端建立网络坐标之后,虽然通过待测网络设备端的网络坐标能够估计出待测网络设备端之间的网络时延,但是,由于网络路径非对称以及反三角等因素的影响,使得通过待测网络设备端的网络坐标而估计出的待测网络设备端间网络时延很不准确,故,本实施例中待测网络设备端之间的网络时延是通过实际测量其最近的可用基础设施之间的网络时延来确定的,而为可用基础设施和待测网络设备端建立的网络坐标则是用于为待测网络设备端确定其最近的可用基础设施。
需要说明的是,为了进一步降低网络时延测量占用的网络负载,在本实施例的一些实施方式中,可用基础设施的更新例如可以间隔一定的时间,而在这段时间内如果存在多次待测网络设备端间网络时延需要测量,也无需在每次测量时都去更新可用基础设施,从而避免了可用基础设施的查找与网络坐标建立对网络负载的占用,从而降低网络负载。具体地,本实施例例如还可以包括:响应于所述可用基础设施的前一次查找距离当前时刻达到预设的更新时间,重新查找网络中可用于测量网络时延的可用基础设施,为各个当前查找到的可用基础设施重新构建网络坐标。
S102、基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施。
可以理解的是,通常每次需要测量的网络时延都涉及了许多待测网络设备端,并且多个待测网络设备端最近的可用基础设施可能都是同一个可用基础设施,由于这些待测网络设备端在测量网络时延时都是以其最近的同一个可用基础设施所替代,因此,同一可用基础设施的多个待测网络设备可以被统一处理,这样能够进一步降低网络负载。为了便于这种统一处理,为待测网络设备确定最近的可用基础设施,例如可以是通过聚类的方式实现,也即,可以基于各个所述可用基础设施以及各个所述待测网络设备端的网络坐标,以各个所述可用基础设施为聚类中心,对各个所述待测网络设备端进行聚类,以使得各个所述待测网络设备端映射到各自最近的可用基础设施上。具体地,聚类的方式例如可以包括:为每个可用基础设施建立一个聚类簇;基于各个所述可用基础设施的网络坐标及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;将各个所述待测网络设备端划分到各自最近的可用基础设施的聚类簇中。
S103、对于任意两个可用基础设施,通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延。
可以理解的是,由于待测网络设备端间网络时延是以其最近的可用基础设施间网络时延来表示的,因此,就需要测量可用基础设施之间的网络时延。在一些实施方式中,例如可以针对需要测量网络时延的每对待测网络设备端,测量该对待测网络设备段最近的两个可用基础设施之间的网络时延。在另一些实施方式中,考虑到通常每次需测量网络时延的待测网络设备端有许多对,这些待测网络设备端通常会覆盖到大部分可用基础网络设施,例如也可以将所有的可用基础设施两两组合成各个可用基础设施对,并测量出所有可用基础设施对中两个可用基础设施之间的网络时延,这样所有可用基础设施对的网络时延不仅可以用于本次网络设备端间网络时延的测量,也可以用于后续网络设备端间网络时延的测量,从而整体上减小了网络负载。
可以理解的是,在一次测量出的可用基础设施间网络时延用于多次网络设备端间网络时延测量的实施方式中,可用基础设施间网络时延例如可以仅在可用基础设施进行更新时进行再次测量,而可用基础设施则可以隔一段时间更新一次。具体地,本实施例中例如还可以包括:响应于所述可用基础设施的前一次查找距离当前时刻达到预设的更新时间,重新查找网络中可用于测量网络时延的可用基础设施,为各个当前查找到的可用基础设施重新构建网络坐标,并对于任意两个当前查找到的可用基础设施,通过在两个当前查找到的可用基础设施之间传输用于测量的消息,重新测量两个当前查找到的可用基础设施之间的网络时延。
需要说明的是,一方面,考虑到支持迭代查询的开放DNS服务器可能不够广泛覆盖整个网络的网络设备端,另一方面,考虑到DNS服务器本身的限制越来越大,为此,在本实施例的一些实施方式中,除了在网络中搜索支持迭代查询的开放DNS服务器作为可用基础设施之外,例如还可以由网络服务提供商在网络中提供一些可控的测量节点和可控的测量终端,也作为可用基础设施。对于可用基础设施同时包括DNS服务器和测量节点、测量终端的实施方式,测量节点、测量终端与DNS服务器相比可以采用不同的网络时延测量方式。具体地,S103例如可以包括:响应于两个所述可用基础设施中存在测量节点和/或测量终端,通过PING的方式测量两个所述可用基础设施之间的网络时延;响应于两个所述可用基础设施均为开放域名解析服务器,通过KING的方式测量两个所述可用基础设施之间的网络时延。
其中,通过PING的方式测量两个可用基础设施之间的网络时延,例如具体可以包括:通过一个作为测量节点或测量终端的可用基础设施向另一个可用基础设施发送PING消息,此时接收PING消息的可用基础设施将向发送PING消息的测量节点或测量终端返回一个反馈消息,测量节点或测量终端根据发送PING消息与接收反馈消息的时间来确定两个可用基础设施之间的网络时延。
此外,通过KING的方式测量两个可用基础设施,例如具体可以包括:对于两个作为开放域名解析服务器的可用基础设施A和B来说,测量服务器可以向可用基础设施A发送用于测量的消息(例如可以是PING消息),此时可用基础设施A会向测量服务器会返回一个反馈消息,测量服务器根据该用于测量的消息与该反馈消息可以测量出测量服务器与可用基础设施A之间的网络时延,并且,测量服务器通过可用基础设施A向可用基础设施B发送DNS消息,此时可用基础设施B会通过可用基础设施A向测量服务器返回一个DNS反馈消息,测量服务器根据该DNS消息及DNS反馈消息可以测量出测量服务器与可用基础设施B之间经过可用基础设施A时的网络时延,这样,测量服务器将上述两个网络时延做差就可以得到可用基础设施A和B之间的网络时延。
S104、对于任意两个待测网络设备端,将两个所述待测网络设备端最近的可用基础设施之间的网络时延确定为两个所述待测网络设备端之间的网络时延。
在本实施例的一些实施方式中,例如可以是在每次需要测量网络设备间网络时延时,对于需要测量网络时延的两个待测网络设备端,先确定两个待测网络设备端最近的两个可用基础设施,然后再测量最近的两个可用基础设施间的网络时延,作为两个待测网络设备间的网络时延。
在本实施例的另一些实施方式中,例如可以是在更新可用基础设施时,将更新的所有可用基础设施两两组合成各可用基础设施对,再测量出所有可用基础设施对的网络时延并记录下来,当需要测量网络设备间网络时延时,对于需要测量网络时延的两个待测网络设备端,可以确定两个待测网络设备端最近的两个可用基础设施,再从记录中查找最近的两个可用基础设施间的网络时延,作为两个待测网络设备间的网络时延。
通过本实施例的技术方案,对于网络中可用于测量网络时延的DNS服务器等可用基础设施,可以为可用基础设施和待测网络设备端建立网络坐标,与待测网络设备端最近的可用基础设施可以基于各可用基础设施及待测网络设备端的网络坐标来确定,由于网络坐标体现的即是各网络设备之间在网络中的实际距离,因此,通过网络坐标可以为待测网络设备端准确地确定其最近的可用基础设施,从而以准确的最近可用基础设施替代待测网络设备端来进行网络时延的测量,就可以保证待测网络设备端与用于为其测量网络时延的可用基础设施之间网络时延小到能够被忽略,从而使得网络设备端之间的网络时延能够被准确地测量。
可以理解的是,整个网络整体上的网络时延情况也需要了解。为此,在前述实施例介绍了测量网络设备间网络时延的示例性方法之后,下面介绍统计网络整体上网络时延的示例性方法。
参见图2,示出了本发明中测量网络时延的方法实施例2的流程图。在本实施例中,例如具体可以包括如下步骤:
S201、以待测网络中的各个网络设备端作为待测网络设备端,利用前述图1所示的实施例来测量所述待测网络中各对网络设备端之间的网络时延。
可以理解的是,对于待测网络中任意一对网络设备端间的网络延时,可以参照前述图1所示的实施例中任意一种实施方式来测量,本实施例在此不再赘述。
S202、基于所述待测网络中各对网络设备端之间的网络时延,计算所述待测网络的网络时延统计值。
可以理解的是,网络时延统计值需要能够体现整个待测网络的网络时延情况。例如,在本实施例的一些实施方式中,所述待测网络的网络时延统计值可以包括所述待测网络的网络时延平均值,其中,所述待测网络的网络时延平均值表示所述待测网络中各对网络设备端之间的网络时延的平均值。又如,在本实施例的又一些实施方式中,所述待测网络的网络时延统计值可以包括所述待测网络的网络时延排位值,其中,所述待测网络的网络时延排位值表示在所述待测网络各对网络设备端之间网络时延的排序中处于特定排序位置的网络时延的数值。具体地,待测网络的网络时延排位值例如可以是待测网络的X%时延(X-percentile latency),X%时延表示的是待测网络的所有网络设备端间网络时延排序中排在第X%处的时延值,如99%时延、95%时延等。
通过本实施例的技术方案,不仅能够保证待测网络中网络设备端与用于为其测量网络时延的可用基础设施之间的网络时延小到能够被忽略,从而保证了待测网络中各网络设备端间网络时延的测量准确性,而且通过待测网络的网络时延统计值也能够展现待测网络整体上的网络时延。
在介绍了本发明实施方式的示例性方法之后,下面将对本发明实施方式的、用于测量网络设备的示例性设备进行介绍。
参见图3,示出了本发明中测量网络时延的设备实施例1的结构图。在本实施例中,所述设备例如具体可以包括:
查找模块301,用于查找网络中可用于测量网络时延的可用基础设施;
构建模块302,用于为各个可用基础设施及各个待测网络设备端构建网络坐标;
第一确定模块303,用于基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标304,确定各个所述待测网络设备端最近的可用基础设施;
第一测量模块305,用于对于任意两个可用基础设施,通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延;
第二确定模块306,用于对于任意两个待测网络设备端,将两个所述待测网络设备端最近的可用基础设施之间的网络时延确定为两个所述待测网络设备端之间的网络时延。
在本实施例的一些实施方式中,所述可用基础设施例如可以包括可控的测量节点、可控的测量终端和/或支持迭代查询的开放域名解析服务器。
在本实施例的另一些实施方式中,所述可用基础设施例如可以包括可控的测量节点和可控的测量终端的基础上,所述测量节点和所述测量终端例如可以通过预先保存的网络配置信息查找;在所述可用基础设施包括支持迭代查询的开放域名解析服务器的基础上,所述支持迭代查询的开放域名解析服务器例如可以通过DNS反向解析技术查找。
在本实施例的又一些实施方式中,所述第一确定模块303例如具体可以包括:
建立子模块,用于为每个可用基础设施建立一个聚类簇;
确定子模块,用于基于各个所述可用基础设施的网络坐标及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;
划分子模块,用于将各个所述待测网络设备端划分到各自最近的可用基础设施的聚类簇中。
在本实施例的再一些实施方式中,所述第一测量模块305例如具体可以包括:
第一发送模块,用于响应于两个所述可用基础设施中存在测量节点和/或测量终端,通过PING的方式测量两个所述可用基础设施之间的网络时延;
第二发送模块,用于响应于两个所述可用基础设施均为开放域名解析服务器,通过KING的方式测量两个所述可用基础设施之间的网络时延。
在本实施例的又再一些实施方式中,所述设备例如还可以包括:
更新模块,用于响应于所述可用基础设施的前一次查找距离当前时刻达到预设的更新时间,重新查找网络中可用于测量网络时延的可用基础设施,为各个当前查找到的可用基础设施重新构建网络坐标,并对于任意两个当前查找到的可用基础设施,通过在两个当前查找到的可用基础设施之间传输用于测量的消息,重新测量两个当前查找到的可用基础设施之间的网络时延。
参见图4,示出了本发明中测量网络时延的设备实施例2的结构图。在本实施例中,所述设备例如具体可以包括:
第二测量模块401,用于以待测网络中的各个网络设备端作为待测网络设备端,利用前述图1所示的实施例来测量所述待测网络中各对网络设备端之间的网络时延;
计算模块402,用于基于所述待测网络中各对网络设备端之间的网络时延,计算所述待测网络的网络时延统计值。
在本实施例的一些实施方式中,所述待测网络的网络时延统计值例如具体可以包括:所述待测网络的网络时延平均值和/或所述待测网络的网络时延排位值;其中,所述待测网络的网络时延平均值表示所述待测网络中各对网络设备端之间的网络时延的平均值,所述待测网络的网络时延排位值表示在所述待测网络各对网络设备端之间网络时延的排序中处于特定排序位置的网络时延的数值。
通过本实施例的技术方案,对于网络中可用于测量网络时延的DNS服务器等可用基础设施,可以为可用基础设施和待测网络设备端建立网络坐标,与待测网络设备端最近的可用基础设施可以基于各可用基础设施及待测网络设备端的网络坐标来确定,由于网络坐标体现的即是各网络设备之间在网络中的实际距离,因此,通过网络坐标可以为待测网络设备端准确地确定其最近的可用基础设施,从而以准确的最近可用基础设施替代待测网络设备端来进行网络时延的测量,就可以保证待测网络设备端与用于为其测量网络时延的可用基础设施之间网络时延小到能够被忽略,从而使得网络设备端之间的网络时延能够被准确地测量。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对于系统实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种测量网络时延的方法,其特征在于,包括:
查找网络中可用于测量网络时延的可用基础设施,并为各个可用基础设施及各个待测网络设备端构建网络坐标;
基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;
对于任意两个可用基础设施,通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延;
对于任意两个待测网络设备端,将两个所述待测网络设备端最近的可用基础设施之间的网络时延确定为两个所述待测网络设备端之间的网络时延。
2.根据权利要求1所述的方法,其特征在于,所述可用基础设施包括可控的测量节点、可控的测量终端和/或支持迭代查询的开放域名解析服务器。
3.根据权利要求2所述的方法,其特征在于,所述测量节点和所述测量终端通过预先保存的网络配置信息查找,所述支持迭代查询的开放域名解析服务器通过DNS反向解析技术查找。
4.根据权利要求1所述的方法,其特征在于,所述基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施,包括:
为每个可用基础设施建立一个聚类簇;
基于各个所述可用基础设施的网络坐标及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;
将各个所述待测网络设备端划分到各自最近的可用基础设施的聚类簇中。
5.根据权利要求1所述的方法,其特征在于,所述对于任意两个可用基础设施,通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延,包括:
响应于两个所述可用基础设施中存在测量节点和/或测量终端,通过PING的方式测量两个所述可用基础设施之间的网络时延;
响应于两个所述可用基础设施均为开放域名解析服务器,通过KING的方式测量两个所述可用基础设施之间的网络时延。
6.根据权利要求1所述的方法,其特征在于,还包括:
响应于所述可用基础设施的前一次查找距离当前时刻达到预设的更新时间,重新查找网络中可用于测量网络时延的可用基础设施,为各个当前查找到的可用基础设施重新构建网络坐标,并对于任意两个当前查找到的可用基础设施,通过在两个当前查找到的可用基础设施之间传输用于测量的消息,重新测量两个当前查找到的可用基础设施之间的网络时延。
7.一种测量网络时延的方法,其特征在于,包括:
以待测网络中的各个网络设备端作为待测网络设备端,利用如权利要求1所述的方法测量所述待测网络中各对网络设备端之间的网络时延;
基于利用权利要求1的方法测量获得的所述待测网络中各对网络设备端之间的网络时延,计算所述待测网络的网络时延统计值。
8.根据权利要求7所述的方法,其特征在于,所述待测网络的网络时延统计值包括:所述待测网络的网络时延平均值和/或所述待测网络的网络时延排位值;其中,所述待测网络的网络时延平均值表示所述待测网络中各对网络设备端之间的网络时延的平均值,所述待测网络的网络时延排位值表示在所述待测网络各对网络设备端之间网络时延的排序中处于特定排序位置的网络时延的数值。
9.一种测量网络时延的设备,其特征在于,包括:
查找模块,用于查找网络中可用于测量网络时延的可用基础设施;
构建模块,用于为各个可用基础设施及各个待测网络设备端构建网络坐标;
第一确定模块,用于基于各个所述可用基础设施及各个所述待测网络设备端的网络坐标,确定各个所述待测网络设备端最近的可用基础设施;
第一测量模块,用于对于任意两个可用基础设施,通过在两个所述可用基础设施之间传输用于测量的消息,测量两个所述可用基础设施之间的网络时延;
第二确定模块,用于对于任意两个待测网络设备端,将两个所述待测网络设备端最近的可用基础设施之间的网络时延确定为两个所述待测网络设备端之间的网络时延。
10.一种测量网络时延的设备,其特征在于,包括:
第二测量模块,用于以待测网络中的各个网络设备端作为待测网络设备端,利用如权利要求1所述的方法测量所述待测网络中各对网络设备端之间的网络时延;
计算模块,用于基于所述第二测量模块测量获得的所述待测网络中各对网络设备端之间的网络时延,计算所述待测网络的网络时延统计值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510138151.8A CN104734919B (zh) | 2015-03-26 | 2015-03-26 | 一种测量网络时延的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510138151.8A CN104734919B (zh) | 2015-03-26 | 2015-03-26 | 一种测量网络时延的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104734919A CN104734919A (zh) | 2015-06-24 |
CN104734919B true CN104734919B (zh) | 2018-07-03 |
Family
ID=53458373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510138151.8A Active CN104734919B (zh) | 2015-03-26 | 2015-03-26 | 一种测量网络时延的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104734919B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107615731B (zh) * | 2016-04-25 | 2020-06-26 | 华为技术有限公司 | 一种组播时延诊断方法及装置 |
CN112565012A (zh) * | 2020-12-01 | 2021-03-26 | 重庆芯讯通无线科技有限公司 | 模块首次找网时间的自动测试方法、系统、介质及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101989951A (zh) * | 2010-10-28 | 2011-03-23 | 北京瑞汛世纪科技有限公司 | 一种选择服务节点的方法、系统和设备 |
CN102075359A (zh) * | 2011-01-17 | 2011-05-25 | 北京瑞汛世纪科技有限公司 | 一种基于网络坐标的服务器部署方法及装置 |
CN103491202A (zh) * | 2013-09-09 | 2014-01-01 | 中国科学院计算机网络信息中心 | 一种基于网络测量的dns节点选址方法 |
CN104065737A (zh) * | 2014-07-03 | 2014-09-24 | 北京瑞汛世纪科技有限公司 | 确定服务节点部署方案的方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7079275B2 (en) * | 2000-03-28 | 2006-07-18 | Mongonet | Method and system for facilitating paper to electronic communications |
-
2015
- 2015-03-26 CN CN201510138151.8A patent/CN104734919B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101989951A (zh) * | 2010-10-28 | 2011-03-23 | 北京瑞汛世纪科技有限公司 | 一种选择服务节点的方法、系统和设备 |
CN102075359A (zh) * | 2011-01-17 | 2011-05-25 | 北京瑞汛世纪科技有限公司 | 一种基于网络坐标的服务器部署方法及装置 |
CN103491202A (zh) * | 2013-09-09 | 2014-01-01 | 中国科学院计算机网络信息中心 | 一种基于网络测量的dns节点选址方法 |
CN104065737A (zh) * | 2014-07-03 | 2014-09-24 | 北京瑞汛世纪科技有限公司 | 确定服务节点部署方案的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104734919A (zh) | 2015-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108027800B (zh) | 使用跟踪路由进行地理定位的方法、系统和装置 | |
US9729504B2 (en) | Method of near real-time automated global geographical IP address discovery and lookup by executing computer-executable instructions stored on a non-transitory computer-readable medium | |
Huffaker et al. | DRoP: DNS-based router positioning | |
WO2018210265A1 (zh) | 调度控制方法、装置和系统 | |
CN102216923B (zh) | 请求路由和利用客户位置信息来更新路由信息 | |
CN104270291B (zh) | Cdn网络质量监控方法 | |
WO2019028683A1 (zh) | 一种获取并收集客户端本地dns服务器的方法以及系统 | |
US20120054266A1 (en) | Optimized Content Distribution Based on Metrics Derived from the End User | |
US20100153540A1 (en) | Geolocation mapping of network devices | |
US20120054265A1 (en) | Optimized Content Distribution Based on Metrics Derived from the End User | |
CN108476146A (zh) | 使用实时用户监控数据进行实时流量引导的方法和装置 | |
CN103973837A (zh) | 一种确定物理位置信息的方法和装置 | |
CN103825975A (zh) | Cdn节点分配服务器及系统 | |
CN103873604B (zh) | 一种基于分析cdn网络数据的网络访问方法 | |
CN102136969A (zh) | 探测链路质量的方法、装置和系统 | |
CN107786678A (zh) | 域名解析方法、装置及系统 | |
US11336579B2 (en) | Predictive Anycast traffic shaping | |
CN104734919B (zh) | 一种测量网络时延的方法和设备 | |
US9729652B2 (en) | Dynamically affinitizing users to a version of a website | |
Vermeulen et al. | Internet scale reverse traceroute | |
Cicalese et al. | A longitudinal study of ip anycast | |
CN105991365A (zh) | 路径探测的方法、设备和系统 | |
Deri et al. | A distributed dns traffic monitoring system | |
CN109818821A (zh) | 一种网站cdn架构的检测方法及装置 | |
Komosny et al. | On geographic coordinates of PlanetLab Europe |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20160722 Address after: 410208 Hunan, Changsha, Yuelu science and Technology Industrial Park, No. 8, Changsha science and Technology Park, including science and Technology Industrial Park Development and Construction Co., Ltd., general services building, room 6018 Applicant after: Hunan Network Technology Co., Ltd. Address before: 100084, building 2, No. 66, Zhongguancun East Road, Beijing, Haidian District 0605 Applicant before: Beijing Ruixun Century Science and Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |