本发明属于通信网络数据传输领域,具体涉及一种针对cdn公司的测量区域任播区域划分的方法。
背景技术:
随着网络用户的日益增长,网络需求也在不断发生变化。各类网络应用如在线视频会议软件、视频播放软件、线上购物平台软件、文件共享备份软件、游戏软件等均需通过cdn公司代理提升服务质量。cdn公司依靠部署在全球的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户响应速度和命中率。在cdn中,如何将客户定向到最近的边缘服务器是关乎cdn服务质量的重要内容,目前世界上的主流cdn公司主要通过任播将客户定向到附近边缘服务器。
传统任播通过在多个服务器宣告相同的ip地址,使得客户端与服务器的映射受互联网路由协议(主要为bgp协议)的支配。这种基于任播部署边缘服务器的方法既简便又便宜,除了部署边缘服务器外不需要其他基础设施投资,并且在实践中,任播方法已经被证明相对可靠。
然而将任播用于客户端定向也存在许多问题:首先,bgp对底层拓扑的缺乏了解导致任播做出次优选择。其次,isp的域内路由策略导致选择了网络的远程对等点。这些问题使得无法将客户定向到附近的边缘服务器,导致传输时延增加,降低cdn的服务质量。因此,有的公司开发出区域任播用于解决任播存在的问题。区域任播是对基本任播模型的改进,通过区域任播,网络被划分为多个虚拟集群,每个虚拟集群对应于特定的地理区域,每个区域对外宣告不同的ip地址,当客户请求服务时,cdn权威域名解析器会返回客户所在区域边缘服务器的ip地址,而在区域内部,通过普通任播将客户流量定向到附近的边缘服务器。
技术实现要素:
本发明针对现有技术中的不足,提供一种基于域名解析的区域测量方法,该方法简单易懂并且无需cdn公司的内部资料,仅需使用cdn服务的域名即可。
为实现上述目的,本发明采用以下技术方案:
一种基于域名解析的任播区域划分测量方法,其特征在于,包括如下步骤:
第一步:筛选出使用了所需测量的cdn服务的网站域名;
第二步:选择全球各地多个探测点,分别对第一步得到的域名做本地dns解析;
第三步:对于第二步域名解析所得到的相同ip地址的探测点所属地,归为同一区域;
第四步:将不同ip地址赋予不同的颜色并在地图上进行标注,得到所需cdn区域任播的区域划分图。
为优化上述技术方案,采取的具体措施还包括:
进一步地,第一步中,从alex官网下载网站,从网站中筛选出使用了所需测量的cdn服务的域名并进行记录。
进一步地,第一步中,采用如下方式获取网站所采用的cdn服务:根据cdn公司官网列举的服务网站,或者通过对网站域名进行dns解析获得该域名的cname、ns属性,从属性中直接得到该网站使用的cdn服务。
进一步地,第二步中,从ripeatlas实验平台选择全球各地共150个探测点,选择的探测点分布在全球尽量多的国家。
进一步地,第二步中,对于每一个探测点的域名解析都指定通过其ldns完成,而不指定公共dns完成解析。
进一步地,第三步中,在获取解析得到的ip地址之后,将具有相同ip地址的探测点归为一类,对于仅仅出现一次的ip地址,作为误差排除在外;对于正常的数据,将国家作为区域划分的最小粒度。
进一步地,第四步中,通过绘图软件,将不同ip地址标注不同颜色,并为不同区域上色,全部上色之后得到最终的区域划分图。
进一步地,第四步中,不同区域可以被多次上色。
本发明的有益效果是:本发明首次提出测量区域任播区域划分的方法,并将划分结果可视化,更直观的反应各cdn公司的划分策略。本发明无需额外资源,容易复现,允许以更低粒度进行区域划分测量,具有很强的可操作性。
附图说明
图1是本发明第一步的一个常用网站示意图。
图2是本发明实验部分示意图。
图3是本发明的根据ip进行分类的示意图。
图4是本发明的一个区域划分的最终结果示意图。
具体实施方式
现在结合附图对本发明作进一步详细的说明。
本发明是一种基于域名解析的任播区域划分测量方法,其特征在于,包括如下步骤:
第一步,从alex官网(国外常用网站排行榜)上筛选出使用了所需测量的cdn公司服务的网站域名。
第二步,从ripeatlas实验平台选择全球各地共150个探测点分别对第二步得到的域名做本地dns解析。由于cdn必须以ldns(本地dns)粒度进行决策,即返回的区域任播地址是根据ldns的所在地确定的,因此基于dns的重定向会面临一些挑战:ldns可能与客户端相距很远,这种情况在公共dns中很常见。一旦,客户指定公共dns解析且该公共dns离客户端不属于同一区域,那很有可能返回得到的ip地址并不属于客户所在区域。所以在第二步中,我们对于每一个探测点的域名解析都指定通过其ldns完成,而不指定公共dns完成解析。
第三步,对于第二步域名解析得到相同ip的探测点所属地归为同一区域。在获取解析得到的ip地址之后,将具有相同的ip的探测点归为一类,但是由于实验存在的误差或者实验平台给出的探测点信息有误,有些ip地址仅仅出现一次,这时就应该将这些误差排除在外避免影响最后一步的区域划分可视化。对于正常的数据,以国家为粒度进行整理,因为我们认为国家是区域划分的最小粒度,如果小于这个粒度会增加cdn的部署成本。
第四步,将不同ip赋予不同的颜色并在地图上进行标注即可得到所需cdn区域任播的区域划分图。通过绘图软件,将不同ip标注不同颜色,并为不同国家上色,全部上色之后就可以得到最终的区域划分图。需要注意的是,在一开始选择域名时选择了不止一个的域名对应的解析结果也会有多个,所以同一区域会被多次上色,最终结果是多个颜色混合的结果。
图1是从alex官网下载的前几名网站,从这些网站中筛选出使用了所需测量的cdn服务的域名并进行记录,对于如何获取网站采用了哪个cdn进行服务,有两种解决方式,第一:一般cdn公司都会通过官网列举它的服务网站;第二:通过对域名进行dns解析获得该域名的cname,ns等属性,从这些属性中可以直接得到该网站使用的cdn服务。
图2是在ripeatlas上进行实验的操作截图,我们对第一步得到的域名分别进行解析,需要注意的是在选择dns进行域名解析时要通过探测点的本地dns进行解析,没有必要通过指定公共dns的方式进行解析。另外在选择探测点进行实验的时候也需要注意探测点的分布情况,实验的目的是为了测量区域任播在全球范围内的区域划分,所以选择的探测点需要分布在全球尽量多的国家。
图3是对域名解析得到的结果按照ip进行分类。将解析得到相同ip的探测点归为一类并标注每一个探测点所在国家。
图4是将第三步得到的数据导入到画图软件中的最终结果。每一种不同的颜色表示不同的ip,通过不同的颜色可以很清楚的观察到该区域任播在全球范围内的划分情况。需要注意的是,图中部分国家空白的原因是无法在ripeatlas上选择这些国家的探测点,也就无法进行域名解析。
本发明的创新之处在于此方法基于域名解析,除域名外不需要其他信息就可以实现任播的区域测量。
需要注意的是,发明中所引用的如“上”、“下”、“左”、“右”、“前”、“后”等的用语,亦仅为便于叙述的明了,而非用以限定本发明可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本发明可实施的范畴。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。
1.一种基于域名解析的任播区域划分测量方法,其特征在于,包括如下步骤:
第一步:筛选出使用了所需测量的cdn服务的网站域名;
第二步:选择全球各地多个探测点,分别对第一步得到的域名做本地dns解析;
第三步:对于第二步域名解析所得到的相同ip地址的探测点所属地,归为同一区域;
第四步:将不同ip地址赋予不同的颜色并在地图上进行标注,得到所需cdn区域任播的区域划分图。
2.如权利要求1所述的一种基于域名解析的任播区域划分测量方法,其特征在于:第一步中,从alex官网下载网站,从网站中筛选出使用了所需测量的cdn服务的域名并进行记录。
3.如权利要求2所述的一种基于域名解析的任播区域划分测量方法,其特征在于:第一步中,采用如下方式获取网站所采用的cdn服务:根据cdn公司官网列举的服务网站,或者通过对网站域名进行dns解析获得该域名的cname、ns属性,从属性中直接得到该网站使用的cdn服务。
4.如权利要求1所述的一种基于域名解析的任播区域划分测量方法,其特征在于:第二步中,从ripeatlas实验平台选择全球各地共150个探测点,选择的探测点分布在全球尽量多的国家。
5.如权利要求1所述的一种基于域名解析的任播区域划分测量方法,其特征在于:第二步中,对于每一个探测点的域名解析都指定通过其ldns完成,而不指定公共dns完成解析。
6.如权利要求1所述的一种基于域名解析的任播区域划分测量方法,其特征在于:第三步中,在获取解析得到的ip地址之后,将具有相同ip地址的探测点归为一类,对于仅仅出现一次的ip地址,作为误差排除在外;对于正常的数据,将国家作为区域划分的最小粒度。
7.如权利要求1所述的一种基于域名解析的任播区域划分测量方法,其特征在于:第四步中,通过绘图软件,将不同ip地址标注不同颜色,并为不同区域上色,全部上色之后得到最终的区域划分图。
8.如权利要求7所述的一种基于域名解析的任播区域划分测量方法,其特征在于:第四步中,不同区域可以被多次上色。
技术总结