域名服务的跟踪和聚合方法与流程

文档序号:12494555阅读:407来源:国知局
域名服务的跟踪和聚合方法与流程

本发明涉及互联网技术领域,尤其是涉及一种域名服务的跟踪和聚合方法。



背景技术:

随着社会的发展,互联网用户快速增长带动了互联网经济的蓬勃发展,移动互联网、电子商务、网络视频、品牌网络广告、网上招聘、网络游戏等在极短的时间得到快速发展并积累了众多用户,成为了人们生活中不可或缺的一部分。

在现有CDN技术中,需要通过调度系统对用户的ip地址进行分析,判断出ip地址来源于哪个区域,属于哪个运营商,从而实现对用户访问的就近调度,也就是在CDN领域经常提到的智能调度。而这里所谓的智能也就是根据请求用户来对同一域名作出相应不同的解析,所以CDN的调度准确性也就完全依赖于DNS智能解析的质量。但由于DNS是互联网上较早设计的协议,并没有考虑到今天网络的情况与应用,因此实际上其调度的准确性受到很大的影响。

在整个解析过程中,CDN使用DNS获取查询IP,根据IP对用户进行地域调度。公共DNS代替用户向根、顶级域、权威DNS去查询结果并把结果返回给用户,被查询的权威DNS服务器是无法知道具体是哪个用户来查询。因此这里获取的IP地址是DNS地址,而不是用户真实的IP地址。大多数情况下,我们假设用户通过会使用离自己网络最近的Local DNS进行解析,CDN调度基本还是准确的。

但在很多情况下,存在Local DNS设置错误的问题,或者用户使用google public dns(nameserver 8.8.8.8/8.8.4.4)或opendns进行DNS解析。比如国内很多用户设置nameserver为8.8.8.8(dig xxx.com@8.8.8.8),我们得到的DNS query IP是74.125.16.208,判断IP属于美国,加利福尼亚州山景市谷歌公司,这个时候,我们的DNS会返回离美国加州最近的CDN节点IP给用户,直接的后果就是将国内用户错误的调度到美国节点,这样CDN加速的效果就不是很理想。



技术实现要素:

本发明的目的在于提供一种域名服务的跟踪和聚合的方法,以解决上述背景技术中提出的问题和缺陷,跟踪域名在各个cdn厂商的权威dns的ip分布情况,根据这些ip的质量或其他策略,对这些ip进行聚合,对这个域名的流量在这些ip之间重新分配。

为实现上述目的,本发明提供如下技术方案:

一种域名服务的跟踪和聚合的方法,通过edns-client-subnet选项,用户在发起dns请求的时候将用户自己的ip放在dns请求中,发给权威dns服务器,权威dns服务器就根据用户ip的实际归属地返回给调度节点,调度节点依据用户ip地址的实际归属进行调度,这个ip地址是用户的真实ip地址,而不是公共DNS的ip地址,从而探测cdn厂商的某一域名针对特定区域用户出的ip地址,使调度更精准。

作为上述技术方案的进一步说明,本发明实施例的一种域名服务的跟踪和聚合的方法,探测cdn厂商的某一域名针对特定区域用户出的ip地址,步骤如下:

Q1:在探测节点构建一个dns请求,在该dns请求中添加edns-client-subnet选项,在该选项的ip地址设置为一个归属地是特定区域的ip地址;

Q2:将上述构建的携带edns-client-subnet选项的dns请求发送给该cdn厂商的权威dns服务器;

Q3:cdn厂商的权威dns服务器收到该dns请求后,解析该请求的edns-client-subnet选项,判断选项中的ip归属地为其特定区域,权威dns服务器根据归属地找到该域名在该区域的A记录;

Q4:cdn厂商的权威dns服务器将特定区域的A记录返回给探测节点;

Q5:最终探测节点得到cdn厂商的某个域名在特定区域的ip地址信息,从而可以通过该域名在特定区域的IP地址进行调度。

本发明的优点:

1、根据用户的实际IP地址进行调度,而不是根据公共DNS的IP地址进行调度,从而提高的调度的精准性。

2、通过权威dns服务器的响应机制,汇聚各个cdn厂商在全国各省运营商的调度ip及质量数据,形成IP地址池,从而全局掌握各个CDN厂商节点的服务质量。

3、支持从IP地址池中选取质量最好的IP地址响应用户的解析请求,绕过了cdn厂商的dns给用户提供ip地址的环节,提高了DNS响应速度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为一种域名服务的跟踪和聚合的方法装置的结构示意图。

图2为一种域名服务的跟踪和聚合的方法的示意图。

具体实施方式

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

请参阅图1,edns-client-subnet dns的edns-client-subnet是一份dns扩展协议,其目的是使权威智能dns服务器返回的ip地址离用户更近更精确。该协议允许DNS resolver传递用户的ip地址给authoritative DNS server。

其基本原理如下:edns-client-subnet是存在于dns报文中的一个选项,这个选项携带用户ip地址信息。权威dns服务器接收到携带edns-client-subnet选项的dns请求后,可以根据edns-client-subnet中的ip地址判断用户归属地,从而根据用户归属地返回离edns-client-subnet中的ip地址最近的ip地址。在本发明中利用edns-client-subnet dns的主要目的就是通过用户的真实ip地址而不是用户的dns服务器地址来进行dns查询,这样在CDN在进行DNS智能调度时可以大大提高调度的精准性。

本发明实施例给出一个实例,探测cdn厂商的某一域名针对北京电信的用户出的ip地址是多少,步骤如下:

Q1:在我们的探测节点构建一个dns请求,在该dns请求中添加edns-client-subnet选项,在该选项的ip地址设置为一个归属地是北京电信的ip地址;

Q2:将上述构建的携带edns-client-subnet选项的dns请求发送给该cdn厂商的权威dns服务器;

Q3:cdn厂商的权威dns服务器收到该dns请求后,解析该请求的edns-client-subnet选项,判断选项中的ip归属地为北京电信,权威dns服务器根据归属地找到该域名在北京电信区域的A记录;

Q4:cdn厂商的权威dns服务器将北京电信的A记录返回给我们的探测节点;

Q5:最终我们的探测节点得到cdn厂商的某个域名在北京电信的ip地址信息,从而可以通过该域名在北京电信的IP地址进行调度。

在本发明中,将需要加速的域名通过多个cname分配给多个cdn厂商,我们为每个省区域运营商选取样本ip,使用这些样本ip构造携带edns-client-subnet选项的dns请求发送给各cdn厂商的权威dns服务器,从权威dns服务器返回的响应中得到各个cdn厂商在全国各省运营商的调度ip。我们对全网所有这些ip的质量做监控分析,按质量、可用性等维度对这些ip进行分类。

我们在拿到全网ip以及这些ip质量数据之后形成一个ip地址池,我们的dns对这些ip进行聚合和流量重新分配。

用户向我们的dns发起对某域名的dns解析请求时,我们的dns根据用户归属地等属性按照一定策略从ip池中选取ip直接返回给用户。以上方案通过ip的分配策略实现流量在各省运营商及cdn厂商之间的分配,绕过了cdn厂商的dns给用户提供ip地址的环节。

以上所述仅为本发明的较佳实施方式作了详细说明,但是本发明并不限于上述实施方式,保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内,本发明实施例还可以在不脱离本专利宗旨的前提下做出各种变化。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1