一种域名系统dns的最优应用服务器选取方法和装置的制作方法

文档序号:7925532阅读:206来源:国知局

专利名称::一种域名系统dns的最优应用服务器选取方法和装置的制作方法
技术领域
:本申请涉及互联网域名解析的
技术领域
,特别是涉及一种域名系统DNS的最优应用服务器选取方法,及一种域名系统DNS的最优应用服务器选取装置。
背景技术
:在互联网的应用中,域名和IP地址是不可缺少的,因为人们访问网站必须要通过网站的域名和IP地址来查找登录。现有技术查找域名和IP地址的时候要运用到DNS,也就是域名系统(或称之为域名服务器)。DNS用于域名的解析,为hternet上的主机分配域名地址和IP地址。也就是说,当用户向DNS请求域名地址解析时,该系统就会自动把域名地址转为IP地址。在实际中,任何域名都至少有一个DNS来对域名进行解析,至少是两个。因为DNS可以轮回处理,第一个解析失败可以找第二个。这样只要有一个DNS解析正常,就不会影响域名的正常使用。DNS协议可以使用UDP协议和TCP协议作为传输层协议,现有技术中,Windows客户端主机系统仅实现了UDP协议作为DNS协议的传输层协议。UDP协议具有以下特性UUDP协议是一个无接连协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP协议传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP协议把每个消息段放在队列中,应用程序每次从队列中读一个消息段。2、由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。3、UDP协议信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包的额外开销很小。4、吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。5、UDP协议使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的链接状态表。6、UDP协议是面向报文的。发送方的UDP协议对应用程序交下来的报文,在添加首部后就向下交付给IP层。既不拆分,也不合并,而是保留这些报文的边界,因此,应用程序需要选择合适的报文大小。选择UDP协议作为DNS应用层协议的优点是速度快,但存在以下缺点1、由于Windows系统实现DNS协议是基于同步的,DNS服务器根据自身的负载情况把域名对应的IP地址集合随机散列返回给客户端,仅实现了基于服务器端的均衡负载,解析服务是同步的,因此在某些特定网络状况下,解析耗时比较长,因此DNS解析服务不可靠并且耗时时间较长;2,ffindows系统DNS解析服务是面向全系统的,不具备特定应用程序可配置DNS服务器,不能满足某些网络应用需求;3,Windows系统DNS解析服务存在漏洞,易被劫持篡改,安全性较低。因此,目前需要本领域技术人员迫切解决的一个技术问题就是实现一种域名系统DNS的最优应用服务器选取方法,以保证DNS解析服务可靠性并缩短耗时,同时能够满足一些特定的网络应用需求,并提高安全性。
发明内容本申请所要解决的技术问题是提供一种域名系统DNS的最优应用服务器选取方法,以保证DNS解析服务可靠性并缩短耗时,同时能够满足一些特定的网络应用需求,并提高安全性。相应的,本申请还提供一种域名系统DNS的最优应用服务器选取装置,以确保上述方法在实际中的应用及实现。为了解决上述问题,本申请公开了一种域名系统DNS的最优应用服务器选取方法,包括客户端向多个DNS服务器同时发送DNS查询请求,所述DNS查询请求中包括域名;当有DNS服务器根据所述DNS查询请求向客户端返回域名对应的IP地址,客户端根据所述IP地址生成候选IP地址列表;客户端根据所述候选IP地址列表,向各IP地址对应的应用服务器同时发送连接请求;依据各应用服务器对所述连接请求的响应状态信息,确定最优应用服务器。优选的,所述的方法,还包括将当前域名及对应最优服务器的IP地址写入客户端的缓存中,并记录所述域名及对应IP地址记录的生命周期TTL信息。优选的,在客户端向多个DNS服务器同时发送DNS查询请求的步骤之前,还包括客户端查询其缓存中是否有当前待请求查询的域名的对应IP地址的记录,若有,则判断所述域名及对应IP地址记录的生命周期TTL信息是否过期,若否,则直接提取所述IP地址。优选的,所述依据各应用服务器对所述连接请求的响应状态信息确定最优应用服务器的步骤包括若在预设时间内,有应用服务器第一时间响应所述连接请求,则中断与其它应用服务器的连接,将当前应用服务器确定为最优应用服务器。优选的,所述依据各应用服务器对所述连接请求的响应状态信息确定最优应用服务器的步骤包括若超出预设时间后,有多台应用服务器响应所述连接请求,则对各台应用服务器的连接时间进行排序,将连接时间最短的应用服务器确定为最优应用服务器。优选的,所述依据各应用服务器对所述连接请求的响应状态信息确定最优应用服务器的步骤包括当客户端所发送的DNS查询请求为基于HTTP协议的DNS查询请求时,获取响应所述连接请求的应用服务器的下载速度,将下载速度最快的应用服务器确定为最优应用服务器。优选的,所述客户端根据IP地址生成候选IP地址列表包括获取所述IP地址所属的网段;从各网段提取一个IP地址写入候选IP地址列表。本申请实施例还公开了一种域名系统DNS的最优应用服务器选取装置,包括域名请求模块用于由客户端向多个DNS服务器同时发送DNS查询请求,所述DNS查询请求中包括域名;候选IP地址列表生成模块用于在有DNS服务器根据所述DNS查询请求向客户端返回域名对应的IP地址,由客户端根据所述IP地址生成候选IP地址列表;IP地址连接请求模块用于由客户端根据所述候选IP地址列表,向各IP地址对应的应用服务器同时发送连接请求;最优应用服务器确定模块用于依据各应用服务器对所述连接请求的响应状态信息,确定最优应用服务器。优选的,所述的装置,还包括域名信息记录模块用于将当前域名及对应最优服务器的IP地址写入客户端的缓存中,并记录所述域名及对应IP地址记录的生命周期TTL信息。优选的,所述的装置,还包括客户端缓存查询模块用于客户端查询其缓存中是否有当前待请求查询的域名的对应IP地址的记录,若有,则判断所述域名及对应IP地址记录的生命周期TTL信息是否过期,若否,则直接提取所述IP地址。优选的,所述最优应用服务器确定模块进一步包括第一时间最优应用服务器确定子模块用于在预设时间内,有应用服务器第一时间响应所述连接请求时,中断与其它应用服务器的连接,将当前应用服务器确定为最优应用服务器。优选的,所述最优应用服务器确定模块进一步包括连接时间最优应用服务器确定子模块用于在超出预设时间后,有多台应用服务器响应所述连接请求时,对各台应用服务器的连接时间进行排序,将连接时间最短的应用服务器确定为最优应用服务器。优选的,所述最优应用服务器确定模块进一步包括下载速度最优应用服务器确定子模块用于在客户端所发送的DNS查询请求为基于HTTP协议的DNS查询请求时,获取响应所述连接请求的应用服务器的下载速度,将下载速度最快的应用服务器确定为最优应用服务器。优选的,所述候选IP地址列表生成模块包括网段获取子模块获取所述IP地址所属的网段;IP地址提取子模块用于从各网段提取一个IP地址写入候选IP地址列表。与现有技术相比,本申请包括以下优点本申请仍然采用UDP协议作为DNS协议的传输层协议,但是以异步并发方式发送多个DNS查询请求给多个DNS服务器,由于采用异步并发的方式实现,当有DNS服务器响应返回请求中域名对应的IP地址时,客户端立即解析,不受DNS服务器个数的增加而影响整体解析响应时间。由于每个DNS服务器的请求及响应时间不同,因而可以获得最快的DNS响应。从而解决了现有技术中Windows系统DNS解析服务不支持多DNS并发请求,解析服务不可靠并且耗时时间较长的缺陷。本申请实现了DNS服务器配置策略,并且不受DNS服务器个数的增加而影响整体解析速度。满足各种网络应用需求。从而解决了现有技术中Windows系统DNS解析服务是面向全系统的,不具备特定应用程序可配置DNS服务器,不能满足某些网络应用需求的缺陷。本申请解析DNS服务器返回的IP地址,相应建立与对应应用服务器的连接,根据连接时间最小作为最优应用服务器IP地址返回给调用者,实现了基于连接测速的优化策略。对于HTTP协议的DNS查询请求,本申请还支持根据最快的HTTPGET下载该域名根URL的下载速度作为最优应用服务器IP地址返回给调用者,实现了基于HTTPGET下载测速的优化策略。解决了现有技术中Windows系统DNS解析服务不提供任何加速优化策略的缺陷达到了网络加速的目的。可以自适应发现最短路径与响应最快的最优应用服务器对应的IP地址。可以运用于教育网加速应用、电信网通移动运营商网络资源优化访问。对用户而言,提供了更快的网络服务。本申请自行实现了DNS解析服务,并以加密方式保存经过优化的DNS解析结果。相比Windows系统DNS解析服务有更高的安全性。本申请解决了Windows系统DNS解析服务存在漏洞,易被劫持篡改的缺陷。图1是本申请一种域名系统DNS的最优应用服务器选取方法实施例1的步骤流程图;图2是本申请一种域名系统DNS的最优应用服务器选取方法实施例2的步骤流程图;图3是本申请一种域名系统DNS的最优应用服务器选取装置实施例的结构图。具体实施例方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。为使本领域技术人员更好地理解本申请,以下对域名系统(DNS)的相关技术进行说明。域名系统(DNS)是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换信息。通常,网络用户通过UDP协议(UserDatagramProtocol,用户数据包协议)和DNS服务器进行通信,服务器在特定的53端口监听,并返回用户所需的相关fn息οDNS分为Client(客户端)和Server(服务器),Client扮演发问的角色,也就是|、n]Server—fDomainName()白勺^iEIPjfttlt,ServerDomainName正IP地址。通常,当地的DNS先会查自己的资料库,如果自己的资料库没有此DomainName的真正IP地址,则会往该DNS上所设的DNS服务器询问,依此得到此DomainName的真正IP地址之后,将该DomainName对应的真正IP地址存起来,并回答客户。DNS服务器会根据不同的授权区(hne),记录所属该网域下的各名称资料,这个名称资料包括网域下的次网域名称以及主机名称,在每一个DNS名称服务器中都有一个快取缓存区(Cache),这个快取缓存区的主要目的是将该名称服务器所查询出来的名称及相对的IP地址记录在快取缓存区中,当下一次还有另外一个客户端到此服务器上去查询相同的名称时,服务器就不用在到别台主机上去寻找,而可以直接从快取缓存区中找到对应的名称记录资料,传回给客户端,从而加速客户端对名称查询的速度。例如,当DNS客户端向指定的DNS服务器查询网际网路上的某一台主机名称,DNS服务器会在该资料库中找寻用户所指定的名称,如果没有,该服务器会在自己的快取缓存区中查询有无该笔名称记录,如果找到对应的名称记录,则从DNS服务器直接将所对应到的IP地址传回给客户端,如果名称服务器在资料记录查不到,且快取缓存区中也没有对应的名称记录,服务器才会向别的名称服务器查询所要的名称。或如,DNS客户端向指定的DNS服务器查询网际网路上某台主机名称,当DNS服务器在该资料记录找不到用户所指定的名称时,会转向该服务器的快取缓存区找寻是否有该资料,当快取缓存区也找不到时,会向最接近的名称服务器去要求帮忙找寻该名称的IP地址,在另一台服务器上也用相同的动作执行查询操作,当查询到后会回复原本要求查询的源服务器,该源DNS服务器在接收到另一台DNS服务器查询的结果后,先将所查询到的主机名称及对应IP地址记录到快取缓存区中,最后在将所查询到的结果回复给客户端。本申请的主要思想在于,实现了不调用WindowsWinSockAPI实现DNS协议的机制,通过将需要解析的域名同时异步并发发送给多个DNS服务器,一旦有DNS服务器响应返回,则客户端解析IP地址,若IP地址多于1个,则根据不同网段进行筛选并存入候选IP地址列表,客户端遍历候选IP地址列表,异步发送建立连接服务器请求,并根据各应用服务器对所述连接请求的响应状态信息,确定最优应用服务器。参照图1,示出了本申请的一种域名系统DNS的最优应用服务器选取方法实施例1的步骤流程图,具体可以包括以下步骤步骤101客户端向多个DNS服务器同时发送DNS查询请求;在实际中,所述DNS查询请求中包括域名,可以由客户端根据预先设置的DNS服务器列表,向列表中指定的多个DNS服务器异步并发发送。在具体应用中,可以通过I/OCompletionport机制(完成端口)实现异步并发的发送机制。步骤102当有DNS服务器根据所述DNS查询请求向客户端返回域名对应的IP地址,客户端根据所述IP地址生成候选IP地址列表;若有DNS服务器根据客户端发起的DNS查询请求返回域名对应的IP地址,则客户端将接收到的IP地址,逐个插入候选IP地址列表,然后可以根据是否在同一网段进行排重处理。具体而言,在本申请的一种优选实施例中,所述客户端可以通过以下子步骤根据IP地址生成候选IP地址列表子步骤SOl获取所述IP地址所属的网段;子步骤S02从各网段提取一个IP地址写入候选IP地址列表。在具体实现中,同一网段的IP地址可以只保留第一个IP地址作为候选最优IP,并插入候选IP地址列表中。例如返回的IP地址集合为202.101.22.35202.101.22.36202.102.21.23202.102.21.25其中,202.101.22.35和202.101.22.36属于同一网段的IP地址,202.102.21.23和202.102.21.25属于同一网段的IP地址。提取各网段中的第一个IP地址,202.101.22.35和202.102.21.23,将这两个IP地址写入候选IP地址列表中,如下表所示202.101.22.35202.102.21.23在实际中,所述IP地址对应应用服务器的地址。在实际中,如果DNS服务器根据所述DNS查询请求在预设时间内向客户端未返回域名对应的IP地址,则向客户端返回错误提示信息。本申请仍然采用UDP协议作为DNS协议的传输层协议,但是以异步并发方式发送多个DNS查询请求给多个DNS服务器,由于采用异步并发的方式实现,当有DNS服务器响应返回请求中域名对应的IP地址时,客户端立即解析,不受DNS服务器个数的增加而影响整体解析响应时间。由于每个DNS服务器的请求及响应时间不同,因而可以获得最快的DNS响应。从而解决了现有技术中Windows系统DNS解析服务不支持多DNS并发请求,解析服务不可靠并且耗时时间较长的缺陷;再者,本申请实现了DNS服务器配置策略,并且不受DNS服务器个数的增加而影响整体解析速度。满足各种网络应用需求。从而解决了现有技术中Windows系统DNS解析服务是面向全系统的,不具备特定应用程序可配置DNS服务器,不能满足某些网络应用需求的缺陷。步骤103客户端根据所述候选IP地址列表,向各IP地址对应的应用服务器同时发送连接请求;客户端对候选IP地址列表中的所有候选IP地址进行遍历,并异步向各IP地址对应的应用服务器发起连接请求。步骤104依据各应用服务器对所述连接请求的响应状态信息,确定最优应用服务器。作为本申请实施例具体应用的示例,可以选择连接时间最少的应用服务器作为最优应用服务器,也可以选择下载速度最快的应用服务器作为最优应用服务器。具体而言,在本申请的一种优选实施例中,所述步骤103可以包括子步骤Sll若在预设时间内,有应用服务器第一时间响应所述连接请求,则中断与其它应用服务器的连接,将当前应用服务器确定为最优应用服务器。例如假设预设的接收应用服务器连接的时间为100ms,客户端向候选IP地址列表中各候选IP地址对应的应用服务器发出连接请求后,有一个候选IP地址对应的应用服务器A第一个作出了响应,其接收请求并作出响应的耗时是20ms。在收到这个应用服务器A的响应后,客户端立刻取消当前所有网络连接事件,不等待其它应用服务器的响应,把应用服务器A作为最优应用服务器返回给客户端。在本申请的另一种优选实施例中,所述步骤103还可以包括子步骤S12若超出预设时间后,有多台应用服务器响应所述连接请求,则对各台应用服务器的连接时间进行排序,将连接时间最短的应用服务器确定为最优应用服务器。例如假设预设的接收应用服务器连接的时间为100ms,客户端向候选IP地址列表中各候选IP地址对应的应用服务器发出连接请求后,等待了IOOms后未收到任何一个应用服务器作出的响应,但在IlOms时有一个应用服务器B作出了响应,在120ms时有一个应用服务器C作出了响应,在150ms时有一个应用服务器D作出了响应,在180ms时有一个应用服务器E作出了响应;在这种情况下,通过按照所述连接耗时进行排序,将连接时间最短的应用服务器作为最优应用服务器返回给客户端。本实施例通过选择连接时间最少的应用服务器作为最优应用服务器,当客户端再次提交同一DNS查询请求时,直接采用这个最优应用服务器的IP地址进行网络连接即可,而无需重新提交至DNS服务器解析查找对应的应用服务器,从而实现了DNS解析服务的加速优化,达到了网络加速的目的。在本申请的另一种优选实施例中,所述步骤103具体可以包括子步骤S21当客户端所发送的DNS查询请求为基于http协议的DNS查询请求时,获取响应所述连接请求的应用服务器的下载速度,将下载速度最快的应用服务器确定为最优应用化服务器。在具体应用中,当客户端所发送的DNS查询请求为基于HTTP协议的DNS查询请求时,则立即发起HTTPGet命令获取该域名的根URL,并根据每个候选IP地址对应的应用服务器的下载速度进行排序,选择下载速度最快的服务器地址作为最优应用服务器返回给客户端。在本申请的另一种优选实施例中,所述步骤104:客户端向多个DNS服务器同时发送DNS查询请求之前,还包括当接收到在后的同一DNS查询请求时,直接由所述最优应用服务器向客户端返回所请求域名的对应IP地址,所述IP地址为该最优应用服务器的地址;读取最优应用服务器的缓存,获得当前所请求的域名;判断所述域名及对应IP地址记录的生命周期TTL信息是否过期,若否,则将该最优服务器的IP地址返回给客户端;若判断所述域名及对应IP地址记录的生命周期TTL信息过期,则跳转上述实施例中101步骤,重新确定最优应用服务器。本实施例通过选择下载速度最快的应用服务器作为最优应用服务器,当客户端再次提交同一DNS查询请求时,直接采用这个最优应用服务器的IP地址进行网络连接即可,而无需重新提交至DNS服务器解析查找对应的应用服务器,从而实现了DNS解析服务的加速优化,达到了网络加速的目的。参照图2,示出了本申请的一种域名系统DNS的最优应用服务器选取方法实施例2的步骤流程图,具体可以包括以下步骤步骤201各客户端查询其缓存中是否有当前待请求查询的域名的对应IP地址的记录,若有,则执行步骤202;否则,执行步骤204;步骤202判断所述域名及对应IP地址记录的生命周期TTL信息是否过期,若否,则执行步骤203;若是,则执行步骤204;在实际中,若所述域名及对应IP地址记录的生命周期TTL信息已经过期,可以将其在客户端缓存中删除。步骤203直接提取所述IP地址;步骤204客户端向多个DNS服务器同时发送DNS查询请求;步骤205当有DNS服务器根据所述DNS查询请求向客户端返回域名对应的IP地址,客户端根据所述IP地址生成候选IP地址列表;步骤206客户端根据所述候选IP地址列表,向各IP地址对应的应用服务器同时发送连接请求;步骤207依据各应用服务器对所述连接请求的响应状态信息,确定最优应用服务器。步骤208将当前域名及对应最优服务器的IP地址写入客户端的缓存中,并记录所述域名及对应IP地址记录的生命周期TTL信息。在具体实现中,所述客户端的缓存可以为内存map,在host文件中记录了所述域名及对应IP地址的数据。可以以DLL(代码数据库)形式提供模块初始化、反初始化、DNS优化IP查询接口。一、模块初始化接口指定DNS缓存文件路径和模块配置文件路径。intlnit(TCHAR*szDnsCachePath,TCHAR^szConfigPath);1、创建加载DNS解析缓存初始化线程;其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”。因为当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从host文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。a、加载host文件(host是一个没有扩展名的系统文件)到内存map;b、加载DNS缓存文件保存记录到内存map;2、创建客户端与应用服务器之间的管道,等待客户端连接。上述步骤的作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”。因为当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从host文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。二、模块反初始化接口卸载模块。intUnInitO;1、保存内存map中保存的DNS服务器优化IP地址数据到DNS缓存文件中。内存map是在客户端;在每次需要解析域名的时候,首先读取缓存;如果缓存中存在该域名的DNS解析记录,则返回其IP地址;2、通知更新线程停止工作;3、通知管道服务器停止工作。三、获得优化IP(通过连接测速或下载测速获得的优选IP地址)1、先从内存map中查找域名是否命中,若命中,且生命周期未过期(TTL),则直接返回。否则继续下一步;2、检查nodename(获取特定结点类型的名称)是否为IP地址格式。若是,则直接返回;若不是,则继续下一步;3、检查nodename是否为localhost(—个特殊的DNS主机名,代表分配给引用这个名称的计算机的IP地址)或本地主机名。若是直接返回127.0.0.1;若不是,则继续下一步;4、遍历DNS服务器,构造用以或得IPV4地址的DNSA命令DNS查询包数据缓冲区,DNS服务器序列号累加;5、调用ParseDns(),以异步并发方式发送DNS查询包给多个DNS服务器;6、解析DNS服务器返回IP地址列表;7、调用WSACormectO,与应用服务器建立连接;8、建立连接成功后,立即关闭,记录连接耗时;9、根据耗时最小返回应用服务器IP地址;10、若域名解析请求发起者是HTTP协议,则建立连接后立即发起HTTPGET命令获取该域名的根URL。根据下载速度最快进行排序,选择下载速度最快的作为最优应用服务器IP地址返回给调用者。为使本领域技术人员更好地理解本申请,以下通过一个DNS网络加速时序图说明本申请实施例的优点。cipCandidateIP(候选IP)oipOptimizedIP(最优IP)tpType(0-parsefailed|I-Parseok,onlysingleip|2-parseok,acceptableconnecttime|3-parseok,sorted|4-parseOK,sortedhttpget|5-parseOK,parameterisipformat)ipIPaddress(optimized)dsDNSServerIpaddress(DNS服务器IP地址)ttlDNSparsedIPttl(DNS解析的IP地址的时间生存期)deDNSElapsed(ms)(DNS解析服务耗时)stDNSUDPSendTotimestamp(ms)(DNS解析请求系统时间戳)cbConnectbegintimestamp(ms)(连接DNS解析的IP地址应用服务器系统时间戳)rfDNSUDPRecfFromtimestamp(ms)(DNS解析应答系统时间戳)aeDNS+Connectelapsed(ms)(DNS解析以及连接应用服务器总耗时)ctConnectelapsed(ms)-Imeansnotconnected(连接应用月艮务器耗时)stIsconnected?(是否连接)Hhost(Jslc^)减号线是DNSUDP的发起到结束时间线等于号是连接DNS服务器解析IP的地址发起到结束时间线权利要求1.一种域名系统DNS的最优应用服务器选取方法,其特征在于,包括客户端向多个DNS服务器同时发送DNS查询请求,所述DNS查询请求中包括域名;当有DNS服务器根据所述DNS查询请求向客户端返回域名对应的IP地址,客户端根据所述IP地址生成候选IP地址列表;客户端根据所述候选IP地址列表,向各IP地址对应的应用服务器同时发送连接请求;依据各应用服务器对所述连接请求的响应状态信息,确定最优应用服务器。2.如权利要求1所述的方法,其特征在于,还包括将当前域名及对应最优服务器的IP地址写入客户端的缓存中,并记录所述域名及对应IP地址记录的生命周期TTL信息。3.如权利要求2所述的方法,其特征在于,在客户端向多个DNS服务器同时发送DNS查询请求的步骤之前,还包括客户端查询其缓存中是否有当前待请求查询的域名的对应IP地址的记录,若有,则判断所述域名及对应IP地址记录的生命周期TTL信息是否过期,若否,则直接提取所述IP地址。4.如权利要求1、2或3所述的方法,其特征在于,所述依据各应用服务器对所述连接请求的响应状态信息确定最优应用服务器的步骤包括若在预设时间内,有应用服务器第一时间响应所述连接请求,则中断与其它应用服务器的连接,将当前应用服务器确定为最优应用服务器。5.如权利要求1、2或3所述的方法,其特征在于,所述依据各应用服务器对所述连接请求的响应状态信息确定最优应用服务器的步骤包括若超出预设时间后,有多台应用服务器响应所述连接请求,则对各台应用服务器的连接时间进行排序,将连接时间最短的应用服务器确定为最优应用服务器。6.如权利要求1、2或3所述的方法,其特征在于,所述依据各应用服务器对所述连接请求的响应状态信息确定最优应用服务器的步骤包括当客户端所发送的DNS查询请求为基于HTTP协议的DNS查询请求时,获取响应所述连接请求的应用服务器的下载速度,将下载速度最快的应用服务器确定为最优应用服务器。7.如权利要求1、2或3所述的方法,其特征在于,所述客户端根据IP地址生成候选IP地址列表包括获取所述IP地址所属的网段;从各网段提取一个IP地址写入候选IP地址列表。8.—种域名系统DNS的最优应用服务器选取装置,其特征在于,包括域名请求模块用于由客户端向多个DNS服务器同时发送DNS查询请求,所述DNS查询请求中包括域名;候选IP地址列表生成模块用于在有DNS服务器根据所述DNS查询请求向客户端返回域名对应的IP地址,由客户端根据所述IP地址生成候选IP地址列表;IP地址连接请求模块用于由客户端根据所述候选IP地址列表,向各IP地址对应的应用服务器同时发送连接请求;最优应用服务器确定模块用于依据各应用服务器对所述连接请求的响应状态信息,确定最优应用服务器。9.如权利要求8所述的装置,其特征在于,还包括域名信息记录模块用于将当前域名及对应最优服务器的IP地址写入客户端的缓存中,并记录所述域名及对应IP地址记录的生命周期TTL信息。10.如权利要求9所述的装置,其特征在于,还包括客户端缓存查询模块用于客户端查询其缓存中是否有当前待请求查询的域名的对应IP地址的记录,若有,则判断所述域名及对应IP地址记录的生命周期TTL信息是否过期,若否,则直接提取所述IP地址。11.如权利要求8、9或10所述的装置,其特征在于,所述最优应用服务器确定模块进一步包括第一时间最优应用服务器确定子模块用于在预设时间内,有应用服务器第一时间响应所述连接请求时,中断与其它应用服务器的连接,将当前应用服务器确定为最优应用服务器。12.如权利要求8、9或10所述的方法,其特征在于,所述最优应用服务器确定模块进一步包括连接时间最优应用服务器确定子模块用于在超出预设时间后,有多台应用服务器响应所述连接请求时,对各台应用服务器的连接时间进行排序,将连接时间最短的应用服务器确定为最优应用服务器。13.如权利要求8、9或10所述的方法,其特征在于,所述最优应用服务器确定模块进一步包括下载速度最优应用服务器确定子模块用于在客户端所发送的DNS查询请求为基于HTTP协议的DNS查询请求时,获取响应所述连接请求的应用服务器的下载速度,将下载速度最快的应用服务器确定为最优应用服务器。14.如权利要求8、9或10所述的装置,其特征在于,所述候选IP地址列表生成模块包括网段获取子模块获取所述IP地址所属的网段;IP地址提取子模块用于从各网段提取一个IP地址写入候选IP地址列表。全文摘要本申请提供了一种域名系统DNS的最优应用服务器选取方法和装置,其中,所述方法包括客户端向多个DNS服务器同时发送DNS查询请求,所述DNS查询请求中包括域名;当有DNS服务器根据所述DNS查询请求向客户端返回域名对应的IP地址,客户端根据所述IP地址生成候选IP地址列表;客户端根据所述候选IP地址列表,向各IP地址对应的应用服务器同时发送连接请求;依据各应用服务器对所述连接请求的响应状态信息,确定最优应用服务器。本申请可以保证DNS解析服务可靠性并缩短耗时,同时能够满足一些特定的网络应用需求,并提高安全性。文档编号H04L29/12GK102340554SQ20111029480公开日2012年2月1日申请日期2011年9月29日优先权日2011年9月29日发明者孙鹏,董斌雁申请人:奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1