CN104378452B - 一种用于域名解析的方法、装置及系统 - Google Patents

一种用于域名解析的方法、装置及系统 Download PDF

Info

Publication number
CN104378452B
CN104378452B CN201310353887.8A CN201310353887A CN104378452B CN 104378452 B CN104378452 B CN 104378452B CN 201310353887 A CN201310353887 A CN 201310353887A CN 104378452 B CN104378452 B CN 104378452B
Authority
CN
China
Prior art keywords
domain name
name server
cluster
server cluster
mapping
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
Application number
CN201310353887.8A
Other languages
English (en)
Other versions
CN104378452A (zh
Inventor
王昕溥
李爽
汤明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910216592.3A priority Critical patent/CN110071986A/zh
Priority to CN201310353887.8A priority patent/CN104378452B/zh
Publication of CN104378452A publication Critical patent/CN104378452A/zh
Application granted granted Critical
Publication of CN104378452B publication Critical patent/CN104378452B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种用于域名解析的方法、装置及系统。该方法包括步骤:接收来自客户端的域名解析请求;根据域名解析请求在域名服务器缓存集群中查询域名解析结果;以及将域名解析结果返回给客户端。根据本申请,通过使用可由域名服务器集群中的各域名服务器共享的缓存集群来存储域名解析结果,从而克服了域名服务器单机缓存大小受限制以及单机缓存内容不能共享的问题,提高了域名服务器集群执行域名解析时的缓存命中率,减少了递归查询次数,进而提高了域名解析的速度。

Description

一种用于域名解析的方法、装置及系统
技术领域
本申请涉及互联网通信领域,尤其涉及一种用于域名解析的方法、装置及系统。
背景技术
域名是互联网上某一台计算机或计算机组的名称,它是由一串用点分隔的字母组成的,通常包含组织名称,而且,它包括两到三个字母的后缀,以指明组织的类型或该域所在的国家或地区。
域名系统(Domain Name System,DNS)是互联网中关键的基础服务之一,它为众多网络应用提供根本性支撑。DNS将域名与IP地址相互映射,使人们能够方便地访问互联网,而不必记忆复杂的IP地址。例如,域名为www.baidu.com,IP地址为115.239.210.26,DNS提供这两者之间的映射。客户端通过域名服务器(Domain Name Server)提供的域名解析服务,可以找到所需站点或资源的入口,进而对站点或资源进行访问。
域名解析服务是指将域名转换为IP地址的过程。通常,域名解析的具体过程为:当客户端向域名服务器发出域名解析请求,需要将一个域名映射为IP地址时,将待转换的域名放在域名解析请求中,以UDP(User Datagram Protocol,用户数据报协议)报文方式发给本地的域名服务器。本地的域名服务器在本地缓存中查到与该域名对应的IP地址后,将对应的IP地址放在应答报文中返回给客户端。与此同时,还存在本地的域名服务器向远程服务器进行递归查询的可能,即,若域名服务器的缓存中不存在与该域名对应的IP地址,从而不能应答该请求,则该域名服务器就向远程服务器即域名系统中的根域名服务器转发域名解析请求,根域名服务器可以查找到下面的所有二级域名的域名服务器。这样,以此类推,一直向下解析,直到查询到所请求的域名。另外,一旦本地的域名服务器通过上述递归查询取得一个域名解析结果,则将该域名解析结果存放在该本地域名服务器的缓存(通常为高速缓冲存储器(cache))中,以便在之后接收到来自客户端的相同域名解析请求时可以直接使用其缓存中的数据进行应答,而不必再进行递归查询。
在上述现有技术中,是将域名解析结果存储到域名服务器本机的缓存中。由于单独的域名服务器无法突破其单机缓存的大小限制,因此通常需要依靠大量增加域名服务器的数量即构建域名服务器集群来保障域名解析服务的可用率。然而,由于域名服务器集群中的各域名服务器之间无法共享各自单机中的缓存,所以导致当域名解析请求无法在单机缓存中命中时,就需要进行递归查询,这延长了域名解析的时间。
因此,需要一种改进方案,可以解决域名服务器集群机制中域名服务器单机缓存大小受限制和域名解析延时较长的问题。
发明内容
本申请的主要目的在于提供一种用于域名解析的技术,以解决域名服务器集群机制中单机缓存大小受限制和域名解析延时较长的技术问题。
根据本申请的第一方面,提供了一种用于域名解析的方法,其特征在于,包括步骤:接收来自客户端的域名解析请求;根据域名解析请求在域名服务器缓存集群中查询域名解析结果;以及将域名解析结果返回给客户端。
根据本申请的第二方面,提供了一种用于域名解析的装置,其特征在于,包括:接收模块,用于接收来自客户端的域名解析请求;查询模块,用于根据域名解析请求在域名服务器缓存集群中查询域名解析结果;以及返回模块,用于将域名解析结果返回给客户端。
根据本申请的第三方面,提供了一种用于域名解析的系统,其特征在于,包括:域名服务器集群,用于:接收来自客户端的域名解析请求;根据域名解析请求在域名服务器缓存集群中查询域名解析结果;将域名解析结果返回给客户端;以及域名服务器缓存集群,用于:存储域名服务器集群通过向远程服务器进行递归查询所获得的域名解析结果。
本申请提供的用于域名解析的技术,通过使用可由域名服务器集群中的各域名服务器共享的缓存集群来存储域名解析结果,从而克服了域名服务器单机缓存大小受限制以及单机缓存内容不能共享的问题,提高了域名服务器集群执行域名解析时的缓存命中率,减少了递归查询次数,进而提高了域名解析的速度。另外,通过在本地的域名服务器中预置部分顶级域名的结果文件,缩短了递归查询的耗时,进一步提高了域名解析速度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请一个实施例的用于域名解析的方法100的流程图;
图2是根据本申请更详细实施例的用于域名解析的方法200的流程图;
图3是根据本申请一个实施例的用于域名解析的装置300的结构框图;以及
图4是根据本申请一个实施例的用于域名解析的系统400的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,图1是根据本申请一个实施例的用于域名解析的方法100的流程图。如图1所示,方法100开始于步骤101。
在步骤101,接收来自客户端的域名解析请求。
域名服务器集群可以包括一台或多台域名服务器,其中每台域名服务器均可接收来自客户端的域名解析请求。域名解析请求的内容可以包含用户需要访问的资源的域名(或网址)。客户端可以以UDP报文方式将域名解析请求发给域名服务器集群。
根据本申请的一个实施例,域名服务器集群可以包括按照不同的网络运营商划分的域名服务器。具体地,可以通过域名解析请求所来自的客户端的IP地址,来识别该客户端属于哪个用户类型。如:属于电信用户IP地址集合的域名服务器、属于联通用户IP地址集合的域名服务器或属于其他网络运营商用户IP地址集合的域名服务器。当域名服务器接收到来自客户端的域名解析请求时,首先识别该请求发送端的用户类型,如果该用户属于电信用户,则由用于电信用户的域名服务器处理该域名解析请求,如果该用户属于联通用户,则由用于联通用户的域名服务器处理该域名解析请求。如果该用户属于其他网络运营商用户,则由用于该网络运营商用户的域名服务器处理该域名解析请求。如果接收到域名解析请求的域名服务器不是用于处理该网络运营商用户的请求的域名服务器,则将该域名解析请求转发给用于处理该网络运营商用户的请求的域名服务器。
根据本申请的另一个实施例,域名服务器集群可以包括按照不同地区IP地址集合来划分的域名服务器。具体操作方案与上述按照不同的网络运营商划分的域名服务器的方案类似。
在步骤102,根据域名解析请求在域名服务器缓存集群中查询域名解析结果。
域名服务器集群中的任一个域名服务器接收到来自客户端的域名解析请求后,可以首先在域名服务器缓存集群(以下称为缓存集群)中查询域名解析结果。
域名服务器缓存集群是域名服务器集群中的每个域名服务器所共享的缓存空间。
根据本申请的一个实施例中,缓存集群可以包括一个或多个诸如易失性或非易失性存储器之类的存储设备,优选地为一个或多个高速缓冲存储器,其中存储域名服务器集群中的各域名服务器针对其提供过域名解析服务的历史域名解析请求及其域名解析结果的结果文件,即存储有历史域名解析请求所涉及的域名与相应IP地址的映射关系。
优选地,可以将域名服务器中的至少一部分域名服务器的本地缓存作为缓存集群的一部分,为域名服务器集群提供共享的缓存空间。
在这里,缓存集群作为一个整体对外统一地提供一个接口,通过该接口接收和解析来自域名服务器集群中任一域名服务器的消息,并由此对缓存集群中的相应存储设备进行统配和管理。根据本申请的一个实施例,可以将缓存集群中的一个存储设备作为缓存集群的主存储设备,由这个主存储设备统一接收和解析来自域名服务器集群中任一域名服务器的消息,并且对缓存集群中的相应存储设备进行统配和管理。其中,该消息可以是域名服务器集群中任一域名服务器通过自定义协议发送的消息。
具体而言,在步骤102中,当需要根据域名解析请求在域名服务器缓存集群中查询域名解析结果时,可以通过自定义协议向缓存集群中的主存储设备发送特定的消息来进行查询。主存储设备作为缓存集群对外的接口接收该特定的消息,并且对该消息进行解析,然后根据解析结果在缓存集群中进行查询。
接下来,如果可以在缓存集群中查询到域名解析结果,即,在缓存集群中存在与该域名解析请求中的域名相对应的IP地址,则域名服务器集群中的该域名服务器可以从缓存集群中获取到该域名解析结果。
根据本申请的一个实施例,当在缓存集群中查询失败时,即当在缓存集群中不存在与该域名解析请求中的域名相对应的IP地址时,可以通过向远程服务器例如域名系统中的根域名服务器进行递归查询来获得相应的域名解析结果。递归查询通常是从顶级域名到目标IP地址的逐级查询。在本领域中,关于递归查询的具体实现过程是公知的,这里不再赘述。
根据本申请的一个实施例,当通过递归查询得到域名解析结果后,可以将域名解析结果存储到缓存集群,以供后续接收到相同域名解析请求时直接调用。
具体而言,当需要将通过递归查询得到的域名解析结果存储在域名服务器缓存集群中时,可以通过自定义协议向缓存集群中的主存储设备发送特定的消息来进行存储。主存储设备作为缓存集群对外的接口接收该特定的消息,并且对该消息进行解析,然后根据解析结果在缓存集群中进行存储。
在步骤103,将域名解析结果返回给客户端。
当域名服务器集群中的任一域名服务器在步骤102获取到域名解析结果后,可以将域名解析结果返回给客户端,以便客户端根据该域名解析结果访问目标网站或资源。
由此,在实际应用中,如果客户端发来的一个域名解析请求与之前某一历史域名解析请求的内容相同,则可以直接从缓存集群调用结果文件,从而获取到相应的域名解析结果,而无需向远端服务器进行递归查询。可见,根据本申请的域名服务器缓存集群可以为域名服务器集群中的各个域名服务器提供共享缓存空间,并且该缓存空间具有可扩展性。这样,可以突破现有技术中单机内存受限制的问题,提高域名服务器集群执行域名解析时的缓存命中率,减少递归查询次数,从而大大缩短域名解析的耗时,进而提高域名解析的速度。
参考图2,图2是根据本申请更详细实施例的用于域名解析的方法200的流程图。
方法200开始于步骤201。在步骤201,接收由前端域名服务器集群转发的来自客户端的域名解析请求。
在本实施例中,考虑到由于域名服务器集群通常会在很短的时间段内接收到大量的域名解析请求,为了均衡负载和提高域名解析速度的目的,可以将域名服务器集群从功能上划分为前端域名服务器集群和后端域名服务器集群,其中通过前端域名服务器集群执行对域名解析请求的分配和管理操作,而通过后端域名服务器集群完成具体的域名解析操作,由此通过二者的配合可以大大提高负载较大情况下的域名解析速度。
具体而言,在步骤201中,后端域名服务器集群中的任一个域名服务器可以经由前端域名服务器集群中的相应域名服务器接收来自客户端的域名解析请求。
更具体而言,前端域名服务器集群可以包括一台或多台域名服务器,其可以用于接收来自客户端的域名解析请求,并按照特定规则将该域名解析请求转发给后端域名服务器集群中的相应域名服务器,以由该域名服务器完成域名解析过程。
根据本申请的实施例,这里所描述的特定规则可以是对所接收到的域名解析请求按照使用不同的网络运营商(如,电信、联通等)的客户端用户进行划分。例如,当前端域名服务器集群接收到来自客户端的域名解析请求后,首先对该域名解析请求进行识别,确定该请求来自哪个网络运营商,然后按照确定结果将该请求转发给相对应的用于该网络运营商的后端域名服务器。需要说明的是,本申请对该特定规则并不做任何限制,本领域技术人员可以根据实际需要确定任意合适规则,只要有助于均衡负载和提高域名解析速度即可。
根据本申请的一个实施例,可以根据实际网络负载情况动态配置前端域名服务器集群内的服务器数量。
具体来说,当前端域名服务器集群实际接收的来自客户端的域名解析请求的数量大于或小于前端域名服务器集群当前可处理的数据量时,可根据域名服务器的数据处理能力和实际域名解析请求数量增加或减少前端域名服务器集群中域名服务器的数量。
根据本申请的另一个实施例,可以根据实际网络负载情况动态配置后端域名服务器集群内的服务器数量。
具体来说,当后端域名服务器集群实际接收的由前端域名服务器集群转发来的域名解析请求的数据量大于或小于后端域名服务器集群当前可处理的数据量时,可根据域名服务器的数据处理能力和实际域名解析请求数量增加或减少后端域名服务器集群中域名服务器的数量。
在步骤202,后端域名服务器集群中的该域名服务器可以根据域名解析请求在域名服务器缓存集群中查询,以确定是否存在域名解析结果。
当确定存在域名解析结果时,进行到步骤205。在步骤205中,后端域名服务器集群中的该域名服务器将域名解析结果返回给前端域名服务器集群中的相应域名服务器,以便由前端域名服务器集群中的相应域名服务器将域名解析结果返回给客户端。
当确定不存在域名解析结果时,进行到步骤203。在步骤203中,后端域名服务器集群中的该域名服务器通过向远程服务器进行递归查询来获得域名解析结果。
具体来说,当在缓存集群中找不到域名解析结果时,后端域名服务器集群中的该域名服务器可以通过向远程服务器进行递归查询来获得域名解析结果。
根据本申请的一个实施例,可以在后端域名服务器集群的每个域名服务器中预先设置顶级域名的结果文件。
具体而言,由于递归查询通常是从顶级域名到目标IP地址的逐级查询,因此,可以通过后端域名服务器集群中的每个域名服务器预先设置一部分顶级域名的结果文件来缩短递归查询的解析路径,从而缩短响应时间。
在一个具体实施例中,例如,可以在后端域名服务器集群中搭建一个拥有特定的顶级域名如根域、com域、net域等的结果文件的主域名服务器,并且可以每隔特定的时间段动态更新该主域名服务器上的这些顶级域名的结果文件。此外,主域名服务器可以将其上的顶级域名结果文件复制到作为从域名服务器的后端域名服务器集群中的其它域名服务器上,以供递归查询时使用。
可见,通过在后端域名服务器集群中的各域名服务器上预置顶级域名的结果文件,可以缩短递归查询的耗时,进一步提高域名解析速度。
当通过递归查询得到域名解析结果后,可以进行到步骤204,即,将域名解析结果存储到缓存集群,以供后续接收到相同域名解析请求时直接调用。本步骤的详细内容可参见有关图1中步骤102的描述,此处不再赘述。
然后进行到步骤205,由后端域名服务器集群中的该域名服务器将域名解析结果返回给前端域名服务器集群中的相应域名服务器,以便由前端域名服务器集群中的相应域名服务器将域名解析结果返回给客户端。
需要说明的是,步骤204不限于在步骤205之前进行,而是也可以与步骤205同时进行或者是在步骤205之后进行,即,将域名解析结果存储到域名服务器缓存集群的步骤可以在向前端域名服务器集群返回域名解析结果的步骤之前、同时或之后进行。
根据本申请的一个实施例,方法200可以进一步包括通过自定义协议对缓存集群进行操作和维护的步骤(图中未示出)。
当需要对缓存集群进行操作和维护例如进行增加、删除、修改、查询等操作时,可以通过自定义协议来实现。例如,当需要对缓存集群中存储的域名结果文件进行更新时,可以通过自定义后端域名服务器集群与缓存集群之间的通信协议,对指定的域名结果文件进行增加、删除或修改。同样,当需要在缓存集群中查询是否存在域名解析结果时,可以通过自定义与缓存集群之间的通信协议进行查询。根据本申请的一个实施例,缓存集群可以使用list(列表)结构。当后端域名服务器在缓存集群中查询是否存在域名解析结果时,如果现有域名的当前版本不存在,可提供该域名过去可使用的域名记录。
具体而言,当缓存集群中的主存储设备接收到上述来自域名服务器通过自定义协议发送的消息时,首先根据消息中的特定字段对该消息进行解析,然后根据解析结果在缓存集群中进行相应的操作和维护,如,进行增加、删除、查询、修改等操作。
至此描述了根据本申请另一实施例的用于域名解析的方法,其中将域名服务器集群从功能上划分为前端域名服务器集群和后端域名服务器集群,通过前端域名服务器集群执行对域名解析请求的分配和管理操作,而通过后端域名服务器集群完成具体的域名解析操作,由此通过二者的配合可以在负载较大情况下均衡负载和提高域名解析速度。
参考图3,图3是根据本申请一个实施例的用于域名解析的装置300的结构框图。
如图3所示,装置300可以包括:接收模块301,用于接收来自客户端的域名解析请求;查询模块301,用于根据域名解析请求在域名服务器缓存集群中查询域名解析结果;以及返回模块303,用于将域名解析结果返回给客户端。
根据本申请的一个实施例,接收模块301可以进一步包括:接收子模块,用于接收由前端域名服务器集群转发的来自客户端的域名解析请求;并且,查询模块进一步包括:返回子模块,用于将域名解析结果返回前端域名服务器集群,以便由前端域名服务器集群将域名解析结果返回给客户端。
根据本申请的一个实施例,装置300可以进一步包括:预置模块,用于预置顶级域的域名结果文件。
根据本申请的一个实施例,装置300可以进一步包括:递归查询模块,用于当在域名服务器缓存集群中查询失败时,通过向远程服务器进行递归查询来获得域名解析结果。
根据本申请的一个实施例,装置300可以进一步包括:存储模块,用于将域名解析结果存储到域名服务器缓存集群。
根据本申请的一个实施例,装置300可以进一步包括:操作和维护模块,用于通过自定义协议对域名服务器缓存集群进行操作和维护。
至此描述了根据本申请实施例的用于域名解析的装置,其中通过使用可由域名服务器集群中的各域名服务器共享的缓存集群来存储域名解析结果,从而也克服了域名服务器单机缓存大小受限制以及单机缓存内容不能共享的问题,提高了域名服务器集群执行域名解析时的缓存命中率,减少了递归查询次数,进而提高了域名解析的速度。
参考图4,图4是根据本申请一个实施例的用于域名解析的系统400的示意图。
如图4所示,系统400可以包括:域名服务器集群410,用于:接收来自客户端420的域名解析请求;根据域名解析请求在域名服务器缓存集群430中查询域名解析结果;将域名解析结果返回给客户端410;以及域名服务器缓存集群430,用于:存储域名服务器集群410通过递归查询所获得的域名解析结果。
根据本申请的一个实施例,域名服务器集群410可以进一步包括:前端域名服务器集群,用于:接收来自客户端420的域名解析请求;将域名解析请求转发给后端域名服务器集群;接收从后端域名服务器集群返回的域名解析结果;以及将域名解析结果返回给客户端;和后端域名服务器集,用于:接收来由前端域名服务器集群转发的来自客户端420的域名解析请求;根据域名解析请求在缓存集群430中查询域名解析结果;将域名解析结果返回给前端域名服务器集群。
根据本申请的一个实施例,后端域名服务器集群中的每个域名服务器可以预置有顶级域的域名结果文件。
根据本申请的一个实施例,后端域名服务器集群可以进一步用于:当在域名服务器缓存集群430中查询失败时,通过向远程服务器进行递归查询来获得域名解析结果。
根据本申请的一个实施例,域名服务器集群可以进一步用于将域名解析结果存储到域名服务器缓存集群430。
根据本申请的一个实施例,域名服务器集群可以进一步用于通过自定义协议对域名服务器缓存集群430进行操作和维护。
根据本申请实施例的用于域名解析的系统,同样可以克服域名服务器单机缓存大小受限制以及单机缓存内容不能共享的问题,提高域名服务器集群执行域名解析时的缓存命中率,减少递归查询次数,进而提高域名解析的速度。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (15)

1.一种用于域名解析的方法,其特征在于,应用于后端域名服务器集群,包括步骤:
接收由前端域名服务器集群转发的来自客户端的域名解析请求,其中,域名服务器集群从功能上划分为所述后端域名服务器集群和所述前端域名服务器集群,所述前端域名服务器集群用于执行对域名解析请求的分配和管理操作以实现域名解析请求分配的负载均衡,所述后端域名服务器集群用于完成域名解析操作;
根据所述域名解析请求在域名服务器缓存集群中查询域名解析结果,其中,所述域名服务器缓存集群是所述域名服务器集群中的域名服务器所共享的缓存空间;以及
将所述域名解析结果返回所述前端域名服务器集群,以便由所述前端域名服务器集群将所述域名解析结果返回给所述客户端。
2.根据权利要求1所述的方法,其特征在于,进一步包括步骤:
预置顶级域名的域名结果文件。
3.根据权利要求1或2所述的方法,其特征在于,进一步包括步骤:
当在所述域名服务器缓存集群中查询失败时,通过向远程服务器进行递归查询来获得所述域名解析结果。
4.根据权利要求3所述的方法,其特征在于,进一步包括步骤:
将所述域名解析结果存储到所述域名服务器缓存集群。
5.根据权利要求1所述的方法,其特征在于,进一步包括步骤:
通过自定义协议对所述域名服务器缓存集群进行操作和维护。
6.一种用于域名解析的装置,其特征在于,所述装置部署于后端域名服务器集群,所述装置包括:
接收模块,用于接收由前端域名服务器集群转发的来自客户端的域名解析请求,其中,域名服务器集群从功能上划分为所述后端域名服务器集群和所述前端域名服务器集群,所述前端域名服务器集群用于执行对域名解析请求的分配和管理操作以实现域名解析请求分配的负载均衡,所述后端域名服务器集群用于完成域名解析操作;
查询模块,用于根据所述域名解析请求在域名服务器缓存集群中查询域名解析结果,其中,所述域名服务器缓存集群是所述域名服务器集群中的域名服务器所共享的缓存空间;以及
返回模块,用于将所述域名解析结果返回所述前端域名服务器集群,以便由所述前端域名服务器集群将所述域名解析结果返回给所述客户端。
7.根据权利要求6所述的装置,其特征在于,进一步包括:
预置模块,用于预置顶级域名的域名结果文件。
8.根据权利要求6或7所述的装置,其特征在于,进一步包括:
递归查询模块,用于当在所述域名服务器缓存集群中查询失败时,通过向远程服务器进行递归查询来获得所述域名解析结果。
9.根据权利要求8所述的装置,其特征在于,进一步包括:
存储模块,用于将所述域名解析结果存储到所述域名服务器缓存集群。
10.根据权利要求6所述的装置,其特征在于,进一步包括:
操作和维护模块,用于通过自定义协议对所述域名服务器缓存集群进行操作和维护。
11.一种用于域名解析的系统,其特征在于,包括:
域名服务器缓存集群,用于:
存储域名服务器集群通过向远程服务器进行递归查询所获得的域名解析结果;
前端域名服务器集群,用于:
接收来自客户端的域名解析请求;
将所述域名解析请求转发给后端域名服务器集群;
接收从所述后端域名服务器集群返回的域名解析结果;以及
将所述域名解析结果返回给所述客户端;和
后端域名服务器集群,用于:
接收来由所述前端域名服务器集群转发的来自所述客户端的所述域名解析请求;
根据所述域名解析请求在所述域名服务器缓存集群中查询域名解析结果;以及
将所述域名解析结果返回给所述前端域名服务器集群;
其中,所述域名服务器缓存集群是所述域名服务器集群中的域名服务器所共享的缓存空间,域名服务器集群从功能上划分为所述后端域名服务器集群和所述前端域名服务器集群,所述前端域名服务器集群用于执行对域名解析请求的分配和管理操作以实现域名解析请求分配的负载均衡,所述后端域名服务器集群用于完成域名解析操作。
12.根据权利要求11所述的系统,其特征在于,所述后端域名服务器集群中的每个域名服务器预置有顶级域名的域名结果文件。
13.根据权利要求11或12所述的系统,其特征在于,所述后端域名服务器集群进一步用于:
当在所述域名服务器缓存集群中查询失败时,通过向远程服务器进行递归查询来获得所述域名解析结果。
14.根据权利要求13所述的系统,其特征在于,所述后端域名服务器集群进一步用于将所述域名解析结果存储到所述域名服务器缓存集群。
15.根据权利要求11所述的系统,其特征在于,所述后端域名服务器集群进一步用于通过自定义协议对所述域名服务器缓存集群进行操作和维护。
CN201310353887.8A 2013-08-14 2013-08-14 一种用于域名解析的方法、装置及系统 Active CN104378452B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910216592.3A CN110071986A (zh) 2013-08-14 2013-08-14 一种用于域名解析的系统
CN201310353887.8A CN104378452B (zh) 2013-08-14 2013-08-14 一种用于域名解析的方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310353887.8A CN104378452B (zh) 2013-08-14 2013-08-14 一种用于域名解析的方法、装置及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201910216592.3A Division CN110071986A (zh) 2013-08-14 2013-08-14 一种用于域名解析的系统

Publications (2)

Publication Number Publication Date
CN104378452A CN104378452A (zh) 2015-02-25
CN104378452B true CN104378452B (zh) 2019-02-15

Family

ID=52557098

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201310353887.8A Active CN104378452B (zh) 2013-08-14 2013-08-14 一种用于域名解析的方法、装置及系统
CN201910216592.3A Pending CN110071986A (zh) 2013-08-14 2013-08-14 一种用于域名解析的系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201910216592.3A Pending CN110071986A (zh) 2013-08-14 2013-08-14 一种用于域名解析的系统

Country Status (1)

Country Link
CN (2) CN104378452B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106331205B (zh) * 2015-07-01 2019-02-05 中兴通讯股份有限公司 域名资源记录缓存的集中管控方法、装置和相关设备
CN106357831A (zh) * 2015-07-14 2017-01-25 阿里巴巴集团控股有限公司 一种获取域名后缀的方法及装置
CN105072211B (zh) * 2015-08-12 2018-11-02 网宿科技股份有限公司 基于dns的域名部署系统及方法
CN105187523B (zh) * 2015-08-28 2019-02-22 北京奇艺世纪科技有限公司 一种目录访问方法及装置
CN105245631B (zh) * 2015-09-25 2018-10-26 中国互联网络信息中心 一种优化dns根服务访问的方法与系统
CN105224250B (zh) * 2015-09-28 2021-06-01 域创科技(浙江)有限公司 高性能域名解析处理方法和装置
BR112018074592A2 (pt) 2016-09-23 2019-04-09 Hewlett Packard Development Co acesso de endereço ip baseado em nível de segurança e em histórico de acessos
CN107181788A (zh) * 2017-03-31 2017-09-19 北京奇艺世纪科技有限公司 一种任务处理方法及装置
CN108616613B (zh) * 2018-04-13 2020-05-08 北京信息科技大学 一种基于区块链的去中心化根域名服务方法及系统
CN112311904A (zh) * 2019-07-25 2021-02-02 北京中关村科金技术有限公司 更新域名记录的方法、装置、存储介质以及域名管理系统
CN110636150B (zh) * 2019-10-24 2023-04-18 北京小米移动软件有限公司 域名解析方法、域名解析装置及存储介质
CN114513487A (zh) * 2020-10-28 2022-05-17 武汉斗鱼网络科技有限公司 一种加速域名解析的方法、装置、电子设备及计算机可读存储介质
CN112751948B (zh) * 2020-12-28 2022-11-01 互联网域名系统北京市工程研究中心有限公司 基于协同过滤的dns缓存推荐方法
CN112954049A (zh) * 2021-02-08 2021-06-11 上海石锤网络科技有限公司 一种域名解析的方法及装置
CN113268315A (zh) * 2021-06-10 2021-08-17 郑州市景安网络科技股份有限公司 一种虚拟主机在线迁移方法
CN113873052B (zh) * 2021-09-02 2024-01-30 杭州萤石软件有限公司 Kubernetes集群的域名解析方法、装置及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102523234A (zh) * 2011-12-29 2012-06-27 山东中创软件工程股份有限公司 一种应用服务器集群实现方法及系统
CN102629941A (zh) * 2012-03-20 2012-08-08 武汉邮电科学研究院 云计算系统中虚拟机镜像缓存的方法
CN102833364A (zh) * 2012-08-22 2012-12-19 深圳市共进电子股份有限公司 一种域名解析代理方法及网关设备
CN103051740A (zh) * 2012-12-13 2013-04-17 上海牙木通讯技术有限公司 域名解析方法、dns服务器及域名解析系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101640684A (zh) * 2009-08-21 2010-02-03 中国电信股份有限公司 内容分发方法、网络系统、gslb设备和域名服务器
CN102025793A (zh) * 2010-01-22 2011-04-20 中国移动通信集团北京有限公司 一种ip网络中的域名解析方法、系统及dns服务器
CN102469167B (zh) * 2010-11-01 2015-07-01 中国移动通信集团北京有限公司 域名查询的实现方法和系统
CN102137011A (zh) * 2011-02-18 2011-07-27 华为技术有限公司 网络中的报文转发方法、装置和系统
CN102301682B (zh) * 2011-04-29 2014-02-19 华为技术有限公司 网络缓存方法和系统及dns重定向子系统
CN102662992B (zh) * 2012-03-14 2014-10-08 北京搜狐新媒体信息技术有限公司 一种海量小文件的存储、访问方法及装置
CN102801823A (zh) * 2012-08-23 2012-11-28 神州数码网络(北京)有限公司 一种dns中继方法和装置
CN102891901A (zh) * 2012-09-25 2013-01-23 中国联合网络通信集团有限公司 动态域名解析方法、服务器及域名服务系统
CN103167036A (zh) * 2013-01-28 2013-06-19 浙江大学 基于分布式多级缓存系统的栅格数据存取方法
CN103118132B (zh) * 2013-02-28 2015-11-25 浙江大学 一种面向时空数据的分布式缓存系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102523234A (zh) * 2011-12-29 2012-06-27 山东中创软件工程股份有限公司 一种应用服务器集群实现方法及系统
CN102629941A (zh) * 2012-03-20 2012-08-08 武汉邮电科学研究院 云计算系统中虚拟机镜像缓存的方法
CN102833364A (zh) * 2012-08-22 2012-12-19 深圳市共进电子股份有限公司 一种域名解析代理方法及网关设备
CN103051740A (zh) * 2012-12-13 2013-04-17 上海牙木通讯技术有限公司 域名解析方法、dns服务器及域名解析系统

Also Published As

Publication number Publication date
CN104378452A (zh) 2015-02-25
CN110071986A (zh) 2019-07-30

Similar Documents

Publication Publication Date Title
CN104378452B (zh) 一种用于域名解析的方法、装置及系统
US10791190B2 (en) Systems and methods for avoiding server push of objects already cached at a client
CN109040343B (zh) 域名解析方法、装置、计算机可读存储介质及电子设备
CN102647482B (zh) 一种访问网站的方法和系统
CN102067094B (zh) 高速缓存优化
US10904352B2 (en) System and method for facilitating routing
CN103051740B (zh) 域名解析方法、dns服务器及域名解析系统
CN104424199B (zh) 搜索方法和装置
CA2741895C (en) Request routing and updating routing information utilizing client location information
US8065417B1 (en) Service provider registration by a content broker
CN103581213B (zh) 一种共享Hosts文件的应用方法、设备和系统
CN110019080B (zh) 数据访问方法和装置
CN108491450A (zh) 数据缓存方法、装置、服务器和存储介质
CN105530324A (zh) 基于类别请求路由
CN111885216B (zh) Dns查询方法、装置、设备和存储介质
CN105991660B (zh) 一种多云存储系统间资源共享的系统
CN104519146A (zh) 基于用户位置进行域名解析服务的方法与系统
CN108173952A (zh) 一种内容分发网络cdn的数据访问方法和装置
US20170061012A1 (en) Recyclable private memory heaps for dynamic search indexes
CN111209364A (zh) 一种基于众包地图更新的海量数据接入处理方法及系统
CN101895520A (zh) 微技系统的数据共享方法、服务器以及数据共享系统
US11303606B1 (en) Hashing name resolution requests according to an identified routing policy
CN108153825A (zh) 数据访问方法及装置
US11297131B2 (en) Method and apparatus for multi-vendor GTM fabric
CN109451089A (zh) 一种访问方法、装置、计算机设备及计算机存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant