CN110602264A - 传递域名解析地址权重信息的方法、装置、设备和介质 - Google Patents
传递域名解析地址权重信息的方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN110602264A CN110602264A CN201910821824.8A CN201910821824A CN110602264A CN 110602264 A CN110602264 A CN 110602264A CN 201910821824 A CN201910821824 A CN 201910821824A CN 110602264 A CN110602264 A CN 110602264A
- Authority
- CN
- China
- Prior art keywords
- domain name
- resolver
- weight
- option
- query request
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了传递域名解析地址权重信息的方法、装置、设备和介质。该方法用于转发解析器,包括:接收末端解析器发送的DNS查询请求,DNS查询请求包括请求的域名;根据域名确定是否在向递归解析器发送的DNS查询请求中加入权重选项;若确定,且转发解析器识别权重选项时,向递归解析器发送的DNS查询请求中加入权重选项,并向递归解析器发送第一DNS查询请求,第一DNS查询请求包括请求的域名和权重选项;接收递归解析器发送的第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息;根据权重信息调整至少一个解析地址在首位的比例,向末端解析器发送DNS应答消息,能够将业务流量按照各业务节点承载能力分配调度。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种传递域名解析地址权重信息的方法、装置、设备和计算机可读存储介质。
背景技术
随着互联网的发展,热门的互联网应用需要服务全国甚至全球的海量用户,单个的系统已经无法承载这样的业务流量,因此这类应用会部署在广域网络的多个数据中心节点上。域名系统(Domain Name System,DNS)作为互联网的一个基础设施,在流量调度中承担了核心作用。特别在广域范围(跨城市、跨省直至跨国)的数据中心、内容分发网络(Content Delivery Network,CDN)节点流量调度中DNS几乎是唯一的手段。
基于DNS的流量调度一般有两种策略,一种是按照地理位置就近调度,一种是轮询调度。就近调度就是将流量调度到最近的数据中心,轮询调度就是将流量均等的调度给多个数据中心。
但现网普遍存在这样的情况,分布于广域网络的多个数据中心或CDN节点共同承载一个业务,各个节点能力不同,导致业务量分配不合理。
发明内容
本发明实施例提供了一种传递域名解析地址权重信息的方法、装置、设备和计算机可读存储介质,能够将业务流量按照各业务节点承载能力精确地分配调度,合理利用服务器资源,同时不存在兼容性问题。
第一方面,提供一种传递域名解析地址权重信息的方法,用于转发解析器,包括:接收末端解析器发送的域名系统DNS查询请求,DNS查询请求包括请求的域名;根据域名确定是否在转发解析器向递归解析器发送的DNS查询请求中加入权重选项;当确定在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,且转发解析器识别权重选项时,在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,并向递归解析器发送第一DNS查询请求,第一DNS查询请求包括请求的域名和权重选项,用于通过递归解析器向权威服务器请求域名的至少一个解析地址的权重信息的消息;接收递归解析器发送的第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息;根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例,向末端解析器发送DNS应答消息。
根据上述第一方面,根据域名确定是否在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,包括:确定权重域名列表中是否包含域名;若权重域名列表中包含域名,则确定在转发解析器向递归解析器发送的DNS查询请求中加入权重选项。
根据上述第一方面,权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
根据上述第一方面,扩展选项中还包括客户端子系统ECS选项。
根据上述第一方面,所述方法还包括:当转发解析器不识别权重选项时,向递归解析器发送第二DNS查询请求,第二DNS查询请求包括请求的域名;接收递归解析器发送的第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位比例后的消息;向末端解析器发送DNS应答消息,DNS应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
第二方面,提供一种传递域名解析地址权重信息的方法,用于递归解析器,包括:接收转发解析器发送的第一DNS查询请求,第一DNS查询请求包括请求的域名和权重选项;当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项,用于向权威服务器请求域名的至少一个解析地址的权重信息;接收权威服务器发送的第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息;向转发解析器发送第一应答消息。
或者,
接收转发解析器发送的第二DNS查询请求,第二DNS查询请求包括请求的域名;当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项;接收权威服务器发送的第一应答消息;向转发解析器发送第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
根据上述第二方面,权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
根据上述第二方面,扩展选项中还包括客户端子系统ECS选项。
根据上述第二方面,所述方法还包括:当递归解析器不识别权重选项时,向权威服务器发送第二DNS迭代查询请求,第二DNS迭代查询请求包括请求的域名;接收权威服务器发送的第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息;向转发解析器发送第二应答消息。
第三方面,提供一种传递域名解析地址权重信息的方法,用于权威服务器,包括:接收递归解析器发送的第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项;根据域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息;当确定在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,且权威服务器识别权重选项时,在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,向递归解析器发送第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息。
或者,
接收递归解析器发送的第二DNS迭代查询请求,第二DNS迭代查询请求包括请求的域名;根据域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息;当确定在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息且权威服务器识别权重选项时,向递归解析器发送第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
根据上述第三方面,权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
根据上述第三方面,扩展选项中还包括客户端子系统ECS选项。
第四方面,提供一种传递域名解析地址权重信息的装置,用于转发解析器,包括:第一接收模块,用于接收末端解析器发送的域名系统DNS查询请求,DNS查询请求包括请求的域名;确定模块,用于根据域名确定是否在转发解析器向递归解析器发送的DNS查询请求中加入权重选项;第一发送模块,用于当确定在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,且转发解析器识别权重选项时,在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,并向递归解析器发送第一DNS查询请求,第一DNS查询请求包括请求的域名和权重选项,用于通过递归解析器向权威服务器请求域名的至少一个解析地址的权重信息的消息;第二接收模块,用于接收递归解析器发送的第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息;调整模块,用于根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例,向末端解析器发送DNS应答消息。
根据上述第四方面,确定模块进一步用于:确定权重域名列表中是否包含域名;若权重域名列表中包含域名,则确定在转发解析器向递归解析器发送的DNS查询请求中加入权重选项。
根据上述第四方面,权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
根据上述第四方面,扩展选项中还包括客户端子系统ECS选项。
根据上述第四方面,第一发送模块还用于当转发解析器不识别权重选项时,向递归解析器发送第二DNS查询请求,第二DNS查询请求包括请求的域名;第二接收模块还用于接收递归解析器发送的第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位比例后的消息;调整模块还用于向末端解析器发送DNS应答消息,DNS应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
第五方面,提供一种传递域名解析地址权重信息的装置,用于递归解析器,包括:第一接收模块,用于接收转发解析器发送的第一DNS查询请求,第一DNS查询请求包括请求的域名和权重选项;第一发送模块,用于当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项,用于向权威服务器请求域名的至少一个解析地址的权重信息;第二接收模块,用于接收权威服务器发送的第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息;第二发送模块,用于向转发解析器发送第一应答消息。
或者,
第一接收模块,用于接收转发解析器发送的第二DNS查询请求,第二DNS查询请求包括请求的域名;第一发送模块,用于当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项;第二接收模块,用于接收权威服务器发送的第一应答消息;第二发送模块,用于向转发解析器发送第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
根据上述第五方面,权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
根据上述第五方面,扩展选项中还包括客户端子系统ECS选项。
根据上述第五方面,第一发送模块还用于当转发解析器不识别权重选项时,向递归解析器发送第二DNS查询请求,第二DNS查询请求包括请求的域名;第二接收模块还用于接收递归解析器发送的第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位比例后的消息;调整模块还用于向末端解析器发送DNS应答消息,DNS应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
第六方面,提供一种传递域名解析地址权重信息的装置,用于权威服务器,包括:接收模块,用于接收递归解析器发送的第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项;确定模块,用于根据域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息;发送模块,用于当确定在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,且权威服务器识别权重选项时,在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,向递归解析器发送第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息。
或者,
接收模块,用于接收递归解析器发送的第二DNS迭代查询请求,第二DNS迭代查询请求包括请求的域名;确定模块,用于根据域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息;发送模块,用于当确定在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,且权威服务器识别权重选项时,向递归解析器发送第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
根据上述第六方面,权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
根据上述第六方面,扩展选项中还包括客户端子系统ECS选项。
第七方面,提供一种传递域名解析地址权重信息的设备,该设备包括:处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时实现第一、第二、第三方面提供的传递域名解析地址权重信息的方法。
第八方面,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一、第二、第三方面提供的传递域名解析地址权重信息的方法。
本发明涉及计算机领域,尤其涉及一种传递域名解析地址权重信息的方法、装置、设备和计算机可读存储介质,通过向识别权重选项,支持权重扩展的权威服务器传递包括权重选项的查询请求,可以获得包括域名的至少一个解析地址权重信息的应答消息,根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例,能够将业务流量按照各业务节点承载能力精确地分配调度,实现服务器资源的合理利用,同时不存在兼容性问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种传递域名解析地址权重信息的方法的流程示意图;
图2是本发明实施例报文权重选项示意图;
图3是本发明实施例请求报文的权重选项示意图;
图4是本发明实施例应答报文的权重选项示意图;
图5是本发明实施例提供的另一种传递域名解析地址权重信息的方法的流程示意图;
图6是本发明实施例提供的另一种传递域名解析地址权重信息的方法的流程示意图;
图7是本发明实施例提供的一种传递域名解析地址权重信息的装置的结构示意图;
图8是本发明实施例提供的另一种传递域名解析地址权重信息的装置的结构示意图;
图9是本发明实施例提供的另一种传递域名解析地址权重信息的装置的结构示意图;
图10是本发明实施例提供的一种传递域名解析地址权重信息的设备的硬件结构示意图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了清楚地展示本发明实施例的方案和有益效果,在具体展开说明本发明实施例之前,首先对一些术语进行解释:
权威服务器(Authoritative Nameserver):一个或多个DNS区的权威名字服务器。具体描述见【RFC1035】,Section6章节。
递归解析器(Recursive Resolver):沿着域授权链为客户端进行域名解析的名字服务器。具体描述见【RFC1035】,Section7章节。
末端解析器(Stub Resolver):遵循【RFC1034】的Section5.3.1章节描述,在客户端的一个简单DNS协议实现。
转发解析器(Forwarding Resolver):不自己进行迭代解析,而是将请求转发给其他递归解析器进行迭代解析的名字服务器,在【RFC2308】,Section1章节中称为转发解析器。
下面对本发明实施例所提供的传递域名解析地址权重信息的方法进行介绍。
图1是本发明实施例提供的一种传递域名解析地址权重信息的方法的流程示意图;如图1所示,该传递域名解析地址权重信息的方法可以包括:
S401,转发解析器接收末端解析器发送的域名系统DNS查询请求,DNS查询请求包括请求的域名,开始域名解析地址的查询流程。
其中,末端解析器可以是用户端或客户端,转发解析器可以是本地域名服务器(Local Domain Name Server,Local DNS)的前端缓存服务器。
需要注意的是,末端解析器发送的DNS查询请求通常为普通DNS查询请求,基于普通请求报文格式,不包括权重选项。
S402,根据域名确定是否在转发解析器向递归解析器发送的DNS查询请求中加入权重选项。
首先,需要确定权重域名列表中是否包含请求的域名,若权重域名列表中包含请求的域名,则可以确定在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,也就是说可以在请求报文中加入权重选项。换句话说,将该请求域名与权重域名列表匹配,若在列表中匹配到,则可以认为,该请求域名启用带权重选项的DNS查询请求。
在本发明的实施例中,权重选项包含于基于域名系统扩展机制(ExtensionMechanisms for DNS,EDNS)的扩展选项(OPTION,OPT)中。具体地,本发明实施例中的权重选项能够借助一个新扩展的EDNS0选项(OPTION)实现,用于标识通信双方是否支持DNS报文中携带权重信息以及携带域名各个解析地址权重信息。
具体地,在报文中加入权重选项,通常在报文的附加部分(additional section)中加入EDNS要求的OPT类型伪资源记录,在OPT资源记录中加入权重选项数据。如果还支持其他EDNS扩展功能,例如客户端子系统(EDNS Client Subnet,ECS),那么在OPT资源记录中,进而在扩展选项中,同时包括权重选项和ECS选项。如果OPT资源记录中同时包括多个选项,各个选项的先后顺序可以是任意的,发送方和接收方不能对顺序有任何假设。
图2是本发明实施例报文权重选项示意图,如图2所示,权重选项的报文格式为:选项代码(OPTION-CODE)在RFC6891中定义,占两个字节;选项数据长度(OPTION-LENGTH)在RFC6891中定义,占两个字节,包括了整个OPTION-DATA的字节长度;选项数据(OPTION-DATA)在RFC6891中定义,所占字节由OPTION-LENGTH确定。
图3是本发明实施例请求报文的权重选项示意图,图4是本发明实施例应答报文的权重选项示意图。如图3和图4所示,请求报文中的权重选项和应答报文中的权重选项使用不同的OPTION-DATA内容。对于请求报文,不包含OPTION-DATA数据;对于应答报文,可以包含域名每个解析地址的权重信息。在请求报文权重选项中,OPTION-LENGTH设置为零,OPTION-DATA为空。在包括权重信息的应答报文权重选项中,OPTION-LENGTH为n*2,整个OPTION-DATA长度为n*2字节长度,n为应答报文中回复部分(answer section)中的解析地址数量),每个解析地址权重使用两个字节表示。可选地,权重为一个正整数,使用两个字节中的低位字节,范围从1到255,高位字节设置为0。权重信息在OPTION-DATA中的数量和应答报文中answer section部分包含的解析地址资源记录数量相等。作为一个示例,如果应答中answer section部分包含5条解析地址资源记录,那么OPTION-DATA也包含5个对应的权重。此外,权重信息在OPTION-DATA中的顺序和解析地址资源记录在应答报文answersection中出现的位置一致。即OPTION-DATA中第一个权重对应answer section中第一条解析地址记录,以此类推。如果包括权重信息的应答报文权重选项的OPTION-DATA不符合上面规定(包括权重为0,权重数量和解析地址数量不相同等情况),那么代表请求者的末端解析器将所有解析地址设置为相同权重处理。
S403,当确定在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,且转发解析器识别权重选项时,在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,并向递归解析器发送第一DNS查询请求,第一DNS查询请求包括请求的域名和权重选项。
这里,转发解析器识别权重选项,可以理解为其支持权重扩展。而在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,可以理解为在请求报文中加入权重选项,继而可以获得第一DNS查询请求。其中,第一DNS查询请求可以用于通过递归解析器向权威服务器请求域名的至少一个解析地址的权重信息。
S404,转发解析器向递归解析器发送第一DNS查询请求。
S405,当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项。
递归解析器接收到转发解析器发送的第一DNS查询请求时,递归解析器确定在递归解析器向权威服务器发送的DNS迭代查询请求中是否加入权重选项。如果递归解析器能够识别权重选项,这里可以理解为其支持权重扩展时,确定在递归解析器向权威服务器发送的DNS迭代查询请求中加入权重选项。继而,加入权重选项,并向权威服务器发送第一DNS迭代查询请求。其中,递归解析器可以是Local DNS后端递归服务器。
可以理解为在请求报文中加入权重选项,继而可以获得第一DNS迭代查询请求。其中,该第一DNS迭代查询请求可以用于向权威服务器请求域名的至少一个解析地址的权重信息。
S406,递归解析器向权威服务器发送第一DNS迭代查询请求。
S407,根据第一DNS迭代查询请求中的域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息。
首先,权威服务器确定权重域名列表中是否包含第一DNS迭代查询请求中的域名,若权重域名列表中包含请求的域名,则可以确定在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,也就是说可以在应答报文中加入权重信息。换句话说,将该请求域名与权重域名列表匹配,若在列表中匹配到,则可以认为,该请求域名在权威服务器上启用带权重选项的DNS查询请求,支持权重扩展。需要注意得是,权重域名列表是基于权威服务器设置的。
S408,当确定在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,且权威服务器识别权重选项时,在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,向递归解析器发送第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息。
这里,权威服务器识别权重选项,可以理解为其支持权重扩展。而在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,可以理解为在应答报文中加入权重选项,进一步,可以在权重选项中的OPTION-DATA处加入域名的每个解析地址的权重信息,继而可以获得第一应答消息,并向递归解析器发送第一应答消息。
需要注意的是,当权威服务器可以识别权重选项,支持权重扩展,但待查询域名在权威服务器上不启用权重选项,不支持权重扩展时,应答报文包括权重选项,但是应答报文权重选项不包括一个或多个解析地址的权重信息。具体地,权威服务器在应答报文中还是应该包含权重扩展选项头(报文中包括OPTION-CODE),但是将权重数据字段设置为空(报文中设置OPTION-LENGTH为0,OPTION-DATA为空)。如此操作,权威服务器向下游查询发起方,如递归解析器,转发解析器等,明确标识权威服务器支持权重扩展,但是待查询域名不支持权重扩展。
S409,权威服务器向递归解析器发送第一应答消息。
S410,递归解析器接收权威服务器发送的第一应答消息。
S411,递归解析器向转发解析器发送第一应答消息。
S412,转发解析器接收递归解析器发送的第一应答消息。
转发解析器根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例,向末端解析器发送DNS应答消息。
具体地,转发解析器可以根据第一应答消息中携带的请求域名的每个解析地址的权重信息,执行协议回落,即控制每次应答报文中不同解析地址出现在首位的比例实现对每个解析地址按照权重分配流量。此外,转发解析器向末端解析器发送的DNS应答消息是经协议回落后的基于普通DNS协议的应答报文。
作为一个示例,一个域名两个解析地址(a1,a2),对应的权重设置为(2,1)。那么服务器执行协议回落就是保证收到的每3个不含权重选项的查询请求,2个应答报文中a1地址排在首位,1个应答报文中a2地址排在首位。其中,该应答报文不包括权重选项,进而不包括权重信息,如此执行协议回落后,基于普通DNS协议处理,就不会出现协议不兼容的问题。
上述传递域名解析地址权重信息的方法,通过向识别权重选项,支持权重扩展的权威服务器传递包括权重选项的查询请求,可以获得包括域名的至少一个解析地址权重信息的应答消息,根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例,以末端解析器,即用户为分配颗粒度,能够将业务流量按照各业务节点承载能力精确地分配调度,实现服务器资源的合理利用,同时不存在兼容性问题。
在一些实施例中,当转发解析器或递归解析器接收到上游服务器发送的含权重信息的应答消息时,可以将该应答消息缓存下来,以便以后遇到同样的域名查询时,可以直接在本地查询,节约服务器资源,提高查询效率。而且,对于在缓存中含权重选项的域名,如果下游查询请求含权重选项,则转发解析器或递归解析器的应答消息应该包含权重选项。对于在缓存中含权重选项的域名,如果下游查询请求不含权重选项,则转发解析器或递归解析器应答消息不含权重选项,执行协议回落,使用基于普通DNS协议的报文进行应答。
需要注意的是,权重选项完全依附于应答报文中answer section部分的A或AAAA类型的资源记录,可以把权重选项看作资源记录的一个扩展属性。因此如果资源记录TTL过期,则该资源记录的权重选项也同时失效。
在一些实施例中,转发解析器、递归解析器、权威服务器可以使用自动协商机制判断通信双方是否识别权重选项,支持权重扩展。其中自动协商协议就是支持权重扩展的查询发起者可以发送带权重选项的查询请求,如果应答者支持权重扩展,则会在应答报文中包含权重选项,这样完成一个基于权重的DNS查询流程。后续双方可以继续进行基于权重的DNS查询流程。
作为一个示例:如果递归解析器接收来自转发解析器的请求包含权重选项,则认为转发解析器能够识别权重选项,可以支持权重扩展。如果转发解析器收到递归解析器的应答包含权重选项,和/或,权威服务器收到递归解析器的请求包含权重选项,则认为递归解析器能够识别权重选项,可以支持权重扩展。如果递归解析器收到权威服务器的应答包含权重选项,则认为权威服务器能够识别权重选项,可以支持权重扩展。
需要注意的是,支持权重扩展的权威服务器、递归解析器、转发解析器均能够支持协议回落。如果DNS查询参与者中有不识别权重选项,不支持权重扩展的,则协议回落是重要的的调度方法,可以避免出现兼容性问题。因此按照权重调度流量的应用中权重扩展和协议回落是一个硬币的两个面,共同构成一个完备的整体,因此一个服务器支持权重扩展同时能够支持协议回落。
可以理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
图5是本发明实施例提供的另一种传递域名解析地址权重信息的方法的流程示意图,如图5所示,本方法与图1所示的方法的主要区别在于:图1所示的方法在转发解析器与末端解析器之间执行协议回落,而本方法在递归解析器与转发解析器之间执行协议回落。
图5所示方法主要包括以下步骤:
S501:接收末端解析器发送DNS查询请求,DNS查询请求包括请求的域名。
S502:转发解析器根据DNS查询请求中的域名确定转发解析器向递归解析器发送的DNS查询请求中是否加入权重选项,并确定转发解析器是否识别权重选项。当转发解析器不识别权重选项时,向递归解析器发送第二DNS查询请求,第二DNS查询请求包括请求的域名。
这里,转发解析器不能识别权重选项,可以理解为其不支持权重扩展。此时,无论根据域名确定的结果是什么,转发解析器向递归解析器发送的第二DNS查询请求都不包括权重选项。
S503:转发解析器向递归解析器发送第二DNS查询请求。
S504:递归解析器接收转发解析器发送的第二DNS查询请求。当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项。
S505:递归解析器向权威服务器发送第一DNS迭代查询请求。
S506:权威解析器根据第一DNS迭代查询请求中的域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息。
S507:若确定,且权威服务器识别权重选项时,在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,向递归解析器发送第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息。
S508:权威服务器向递归解析器发送第一应答消息。
S509:递归解析器接收权威服务器发送的第一应答消息。
如图1和图5所示,步骤S501与步骤S401,步骤S504与步骤S405中的当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求一致,步骤S505-S509与步骤S406-S410一致,为了简洁,在此不做赘述。
S510:递归解析器向转发解析器发送第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
这里,递归解析器可以根据第一应答消息中携带的请求域名的不同解析地址的权重信息,执行协议回落,即控制每次应答报文中不同解析地址出现在首位的比例实现对每个解析地址按照权重分配流量。此外,递归解析器向转发解析器发送的第二应答消息是经协议回落后的基于普通DNS协议的应答报文。其中,第二应答消息不包括权重选项,进而不包括权重信息。
S511:转发解析器接收递归解析器发送的第二应答消息。转发解析器向末端解析器发送DNS应答消息,DNS应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
这里,转发解析器向末端解析器发送的DNS应答消息是经协议回落后的基于普通DNS协议的应答报文。其中,DNS应答消息不包括权重选项,进而不包括权重信息。如此执行协议回落后,基于普通DNS协议处理,就不会出现协议不兼容的问题。
上述传递域名解析地址权重信息的方法,在递归解析器与转发解析器之间执行协议回落,能够将业务流量按照各业务节点承载能力精确地分配调度,实现服务器资源的合理利用,同时不存在兼容性问题。
图6是本发明实施例提供的另一种传递域名解析地址权重信息的方法的流程示意图,如图6所示,本方法与图1、5所示的方法的主要区别在于:本方法在权威服务器与递归解析器之间执行协议回落。
主要包括以下步骤:
S601:转发解析器向递归解析器发送第一或二DNS查询请求。
S602:递归解析器接收转发解析器发送的第一或二DNS查询请求。当递归解析器不识别权重选项时,向权威服务器发送第二DNS迭代查询请求,第二DNS迭代查询请求包括请求的域名。
这里,当递归解析器不识别权重选项时,无论转发解析器发送第一或者第二DNS查询请求,递归解析器发送的第二DNS迭代查询请求都不包括权重选项。其中,第一DNS查询请求中包括所请求的域名和权重选项,所述第二DNS查询请求中包括所请求的域名。
S603:递归解析器向权威服务器发送第二DNS迭代查询请求。
S604:权威服务器接收递归解析器发送的第二DNS迭代查询请求。根据域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息。
S605:若确定,且权威服务器识别权重选项时,向递归解析器发送第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
这里,当确定在权威服务器向递归解析器发送的应答消息中可以加入请求域名的至少一个解析地址的权重信息时,即认为域名在权威服务器上启用权重选项,支持权重扩展,且权威服务器识别权重选项,支持权重扩展时,并不能向不识别权重选项的递归解析器发送第一应答消息,而是要在权威服务器与递归解析器处执行协议回落,即控制每次应答报文中不同解析地址出现在首位的比例实现对每个解析地址按照权重分配流量。接着,向递归解析器发送第二应答消息。
需要注意的是,只要请求域名和权威服务器之间任意一个不支持权重扩展,则权威服务器回复的应答消息不包括域名的解析地址的权重信息,基于普通DNS协议执行查询流程。
S606:权威服务器向递归解析器发送第二应答消息。
S607:递归解析器接收权威服务器发送的第二应答消息。
S608:递归解析器向转发解析器发送第二应答消息。
S609:转发解析器接收递归解析器发送的第二应答消息。转发解析器向末端解析器发送DNS应答消息,DNS应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
如图1、5、6所示,步骤S604与步骤S407中的根据域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息一致,步骤S608-609与步骤S510-S511一致,为了简洁,在此不做赘述。
上述传递域名解析地址权重信息的方法,在权威服务器与递归解析器之间执行协议回落,能够将业务流量按照各业务节点承载能力精确地分配调度,实现服务器资源的合理利用,同时不存在兼容性问题。
图7是本发明实施例提供的一种传递域名解析地址权重信息的装置的结构示意图,该装置用于转发解析器。如图7所示,该传递域名解析地址权重信息的装置700包括:第一接收模块710,确定模块720,第一发送模块730,第二接收模块740,调整模块750。
其中,第一接收模块710,用于接收末端解析器发送的域名系统DNS查询请求,DNS查询请求包括请求的域名。确定模块720,用于根据域名确定是否在转发解析器向递归解析器发送的DNS查询请求中加入权重选项。第一发送模块730,用于当确定在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,且转发解析器识别权重选项时,在转发解析器向递归解析器发送的DNS查询请求中加入权重选项,并向递归解析器发送第一DNS查询请求,第一DNS查询请求包括请求的域名和权重选项,用于通过递归解析器向权威服务器请求域名的至少一个解析地址的权重信息的消息。第二接收模块740,用于接收递归解析器发送的第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息。调整模块750,用于根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例,向末端解析器发送DNS应答消息。
在一些实施例中,确定模块720进一步用于:确定权重域名列表中是否包含请求的域名。若权重域名列表中包含请求的域名,则确定在转发解析器向递归解析器发送的DNS查询请求中加入权重选项。
在一些实施例中,权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
在一些实施例中,扩展选项中还包括客户端子系统ECS选项。
在一些实施例中,第一发送模块730还用于当转发解析器不识别权重选项时,向递归解析器发送第二DNS查询请求,第二DNS查询请求包括请求的域名。第二接收模块740还用于接收递归解析器发送的第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位比例后的消息。调整模块750还用于向末端解析器发送DNS应答消息,DNS应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
图8是本发明实施例提供的另一种传递域名解析地址权重信息的装置的结构示意图,该装置用于递归解析器。如图8所示,该传递域名解析地址权重信息的装置800包括:第一接收模块810,第一发送模块820,第二接收模块830,第二发送模块840,
在一个实施例中,第一接收模块810,用于接收转发解析器发送的第一DNS查询请求,第一DNS查询请求包括请求的域名和权重选项。第一发送模块820,用于当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项,用于向权威服务器请求域名的至少一个解析地址的权重信息。第二接收模块830,用于接收权威服务器发送的第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息。第二发送模块840,用于向转发解析器发送第一应答消息。
在另一个实施例中,第一接收模块810,用于接收转发解析器发送的第二DNS查询请求,第二DNS查询请求包括请求的域名。第一发送模块820,用于当递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项。第二接收模块830,用于接收权威服务器发送的第一应答消息。第二发送模块840,用于向转发解析器发送第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
在一些实施例中,第一发送模块820还用于当递归解析器不识别权重选项时,向权威服务器发送第二DNS迭代查询请求,第二DNS迭代查询请求包括请求的域名。第二接收模块830还用于接收权威服务器发送的第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。第二发送模块840还用于向转发解析器发送第二应答消息。
图9是本发明实施例提供的另一种传递域名解析地址权重信息的装置的结构示意图,该装置用于权威服务器。如图9所示,该传递域名解析地址权重信息的装置900包括:接收模块910,确定模块920,发送模块930。
在一个实施例中,接收模块910,用于接收递归解析器发送的第一DNS迭代查询请求,第一DNS迭代查询请求包括请求的域名和权重选项。确定模块920,用于根据域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息。发送模块930,用于当确定在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,且权威服务器识别权重选项时,在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,向递归解析器发送第一应答消息,第一应答消息包括域名的至少一个解析地址的权重信息。
在另一个实施例中,接收模块910,用于接收递归解析器发送的第二DNS迭代查询请求,第二DNS迭代查询请求包括请求的域名。确定模块920,用于根据域名确定是否在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息。发送模块930,用于当确定在权威服务器向递归解析器发送的应答消息中加入域名的至少一个解析地址的权重信息,且权威服务器识别权重选项时,向递归解析器发送第二应答消息,第二应答消息是根据至少一个解析地址的权重信息调整至少一个解析地址在首位的比例后的消息。
另外,图7、8、9中各实施例的传递域名解析地址权重信息的装置可作为图1、5、6中各传递域名解析地址权重信息的方法中的执行主体,可以实现各个方法中的相应流程,为了简洁,此方面内容不再赘述。
本发明实施例中的传递域名解析地址权重信息的装置,能够将业务流量按照各业务节点承载能力精确地分配调度,实现服务器资源的合理利用,同时不存在兼容性问题。
图10是本发明实施例提供的一种传递域名解析地址权重信息的设备的硬件结构示意图。
如图10所示,本实施例中的传递域名解析地址权重信息的设备1000包括输入设备1001、输入接口1002、中央处理器1003、存储器1004、输出接口1005、以及输出设备1006。其中,输入接口1002、中央处理器1003、存储器1004、以及输出接口1005通过总线1010相互连接,输入设备1001和输出设备1006分别通过输入接口1002和输出接口1005与总线1010连接,进而与传递域名解析地址权重信息的设备1000的其他组件连接。
具体地,输入设备1001接收来自外部的输入信息,并通过输入接口1002将输入信息传送到中央处理器1003;中央处理器1003基于存储器1004中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器1004中,然后通过输出接口1005将输出信息传送到输出设备1006;输出设备1006将输出信息输出到传递域名解析地址权重信息的设备1000的外部供用户使用。
也就是说,图10所示的传递域名解析地址权重信息的设备也可以被实现为包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现结合图1、5、6和图7、8、9描述的传递域名解析地址权重信息的方法和装置。
在一个实施例中,图10所示的传递域名解析地址权重信息的设备1000包括:存储器1004,用于存储程序;处理器1003,用于运行存储器中存储的程序,以执行本发明实施例传递域名解析地址权重信息的方法。
本发明实施例提供的传递域名解析地址权重信息的设备,能够将业务流量按照各业务节点承载能力精确地分配调度,实现服务器资源的合理利用,同时不存在兼容性问题。
本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本发明实施例提供的传递域名解析地址权重信息的方法。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。
Claims (26)
1.一种传递域名解析地址权重信息的方法,用于转发解析器,其特征在于,包括:
接收末端解析器发送的域名系统DNS查询请求,所述DNS查询请求包括请求的域名;
根据所述域名确定是否在所述转发解析器向递归解析器发送的DNS查询请求中加入权重选项;
当确定在所述转发解析器向所述递归解析器发送的DNS查询请求中加入权重选项,且所述转发解析器识别权重选项时,在所述转发解析器向所述递归解析器发送的DNS查询请求中加入权重选项,并向所述递归解析器发送第一DNS查询请求,所述第一DNS查询请求包括请求的域名和权重选项,用于通过所述递归解析器向权威服务器请求所述域名的至少一个解析地址的权重信息的消息;
接收所述递归解析器发送的第一应答消息,所述第一应答消息包括所述域名的至少一个解析地址的权重信息;
根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例,向所述末端解析器发送DNS应答消息。
2.根据权利要求1所述的方法,其特征在于,根据所述域名确定是否在所述转发解析器向递归解析器发送的DNS查询请求中加入权重选项,包括:
确定权重域名列表中是否包含所述域名;
若所述权重域名列表中包含所述域名,则确定在所述转发解析器向所述递归解析器发送的DNS查询请求中加入权重选项。
3.根据权利要求1所述的方法,其特征在于,所述权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
4.根据权利要求3所述的方法,其特征在于,所述扩展选项中还包括客户端子系统ECS选项。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述转发解析器不识别权重选项时,向所述递归解析器发送第二DNS查询请求,所述第二DNS查询请求包括请求的域名;
接收所述递归解析器发送的第二应答消息,所述第二应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位比例后的消息;
向所述末端解析器发送所述DNS应答消息,所述DNS应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例后的消息。
6.一种传递域名解析地址权重信息的方法,用于递归解析器,其特征在于,包括:
接收转发解析器发送的第一DNS查询请求,所述第一DNS查询请求包括请求的域名和权重选项;
当所述递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,所述第一DNS迭代查询请求包括请求的域名和权重选项,用于向所述权威服务器请求所述域名的至少一个解析地址的权重信息;
接收所述权威服务器发送的第一应答消息,所述第一应答消息包括所述域名的至少一个解析地址的权重信息;
向所述转发解析器发送所述第一应答消息;
或者,
接收所述转发解析器发送的第二DNS查询请求,所述第二DNS查询请求包括请求的域名;
当所述递归解析器识别权重选项时,向所述权威服务器发送第一DNS迭代查询请求,所述第一DNS迭代查询请求包括请求的域名和权重选项;
接收所述权威服务器发送的所述第一应答消息;
向所述转发解析器发送第二应答消息,所述第二应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例后的消息。
7.根据权利要求6所述的方法,其特征在于,所述权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
8.根据权利要求7所述的方法,其特征在于,所述扩展选项中还包括客户端子系统ECS选项。
9.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当所述递归解析器不识别权重选项时,向所述权威服务器发送第二DNS迭代查询请求,所述第二DNS迭代查询请求包括请求的域名;
接收所述权威服务器发送的第二应答消息,所述第二应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例后的消息;
向所述转发解析器发送所述第二应答消息。
10.一种传递域名解析地址权重信息的方法,用于权威服务器,其特征在于,包括:
接收递归解析器发送的第一DNS迭代查询请求,所述第一DNS迭代查询请求包括请求的域名和权重选项;
根据所述域名确定是否在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息;
当确定在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息,且所述权威服务器识别权重选项时,在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息,向所述递归解析器发送第一应答消息,所述第一应答消息包括所述域名的至少一个解析地址的权重信息;
或者,
接收所述递归解析器发送的第二DNS迭代查询请求,所述第二DNS迭代查询请求包括请求的域名;
根据所述域名确定是否在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息;
当确定在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息,且所述权威服务器识别权重选项时,向所述递归解析器发送第二应答消息,所述第二应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例后的消息。
11.根据权利要求10所述的方法,其特征在于,所述权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
12.根据权利要求11所述的方法,其特征在于,所述扩展选项中还包括客户端子系统ECS选项。
13.一种传递域名解析地址权重信息的装置,用于转发解析器,其特征在于,包括:
第一接收模块,用于接收末端解析器发送的域名系统DNS查询请求,所述DNS查询请求包括请求的域名;
确定模块,用于根据所述域名确定是否在所述转发解析器向递归解析器发送的DNS查询请求中加入权重选项;
第一发送模块,用于当确定在所述转发解析器向所述递归解析器发送的DNS查询请求中加入权重选项,且所述转发解析器识别权重选项时,在所述转发解析器向所述递归解析器发送的DNS查询请求中加入权重选项,并向所述递归解析器发送第一DNS查询请求,所述第一DNS查询请求包括请求的域名和权重选项,用于通过所述递归解析器向权威服务器请求所述域名的至少一个解析地址的权重信息的消息;
第二接收模块,用于接收所述递归解析器发送的第一应答消息,所述第一应答消息包括所述域名的至少一个解析地址的权重信息;
调整模块,用于根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例,向所述末端解析器发送DNS应答消息。
14.根据权利要求13所述的装置,其特征在于,所述确定模块进一步用于:
确定权重域名列表中是否包含所述域名;
若所述权重域名列表中包含所述域名,则确定在所述转发解析器向所述递归解析器发送的DNS查询请求中加入权重选项。
15.根据权利要求13所述的装置,其特征在于,所述权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
16.根据权利要求15所述的装置,其特征在于,所述扩展选项中还包括客户端子系统ECS选项。
17.根据权利要求13所述的装置,其特征在于,所述第一发送模块还用于当所述转发解析器不识别权重选项时,向所述递归解析器发送第二DNS查询请求,所述第二DNS查询请求包括请求的域名;
所述第二接收模块还用于接收所述递归解析器发送的第二应答消息,所述第二应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位比例后的消息;
所述调整模块还用于向所述末端解析器发送所述DNS应答消息,所述DNS应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例后的消息。
18.一种传递域名解析地址权重信息的装置,用于递归解析器,其特征在于,包括:
第一接收模块,用于接收转发解析器发送的第一DNS查询请求,所述第一DNS查询请求包括请求的域名和权重选项;
第一发送模块,用于当所述递归解析器识别权重选项时,向权威服务器发送第一DNS迭代查询请求,所述第一DNS迭代查询请求包括请求的域名和权重选项,用于向所述权威服务器请求所述域名的至少一个解析地址的权重信息;
第二接收模块,用于接收所述权威服务器发送的第一应答消息,所述第一应答消息包括所述域名的至少一个解析地址的权重信息;
第二发送模块,用于向所述转发解析器发送所述第一应答消息;
或者,
所述第一接收模块,用于接收所述转发解析器发送的第二DNS查询请求,所述第二DNS查询请求包括请求的域名;
所述第一发送模块,用于当所述递归解析器识别权重选项时,向所述权威服务器发送第一DNS迭代查询请求,所述第一DNS迭代查询请求包括请求的域名和权重选项;
所述第二接收模块,用于接收所述权威服务器发送的所述第一应答消息;
所述第二发送模块,用于向所述转发解析器发送第二应答消息,所述第二应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例后的消息。
19.根据权利要求18所述的装置,其特征在于,所述权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
20.根据权利要求19所述的装置,其特征在于,所述扩展选项中还包括客户端子系统ECS选项。
21.根据权利要求18所述的装置,其特征在于,所述第一发送模块还用于当所述递归解析器不识别权重选项时,向所述权威服务器发送第二DNS迭代查询请求,所述第二DNS迭代查询请求包括请求的域名;
所述第二接收模块还用于接收所述权威服务器发送的第二应答消息,所述第二应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例后的消息;
所述第二发送模块还用于向所述转发解析器发送所述第二应答消息。
22.一种传递域名解析地址权重信息的装置,用于权威服务器,其特征在于,包括:
接收模块,用于接收递归解析器发送的第一DNS迭代查询请求,所述第一DNS迭代查询请求包括请求的域名和权重选项;
确定模块,用于根据所述域名确定是否在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息;
发送模块,用于当确定在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息,且所述权威服务器识别权重选项时,在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息,向所述递归解析器发送第一应答消息,所述第一应答消息包括所述域名的至少一个解析地址的权重信息;
或者,
所述接收模块,用于接收所述递归解析器发送的第二DNS迭代查询请求,所述第二DNS迭代查询请求包括请求的域名;
所述确定模块,用于根据所述域名确定是否在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息;
所述发送模块,用于当确定在所述权威服务器向所述递归解析器发送的应答消息中加入所述域名的至少一个解析地址的权重信息,且所述权威服务器识别权重选项时,向所述递归解析器发送第二应答消息,所述第二应答消息是根据所述至少一个解析地址的权重信息调整所述至少一个解析地址在首位的比例后的消息。
23.根据权利要求22所述的装置,其特征在于,所述权重选项包含于基于域名系统扩展机制扩展EDNS的扩展选项中。
24.根据权利要求23所述的装置,其特征在于,所述扩展选项中还包括客户端子系统ECS选项。
25.一种传递域名解析地址权重信息的设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;
所述处理器执行所述计算机程序指令时实现如权利要求1-12任意一项所述的传递域名解析地址权重信息的方法。
26.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-12任意一项所述的传递域名解析地址权重信息的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910821824.8A CN110602264B (zh) | 2019-09-02 | 2019-09-02 | 传递域名解析地址权重信息的方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910821824.8A CN110602264B (zh) | 2019-09-02 | 2019-09-02 | 传递域名解析地址权重信息的方法、装置、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110602264A true CN110602264A (zh) | 2019-12-20 |
CN110602264B CN110602264B (zh) | 2022-05-10 |
Family
ID=68856873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910821824.8A Active CN110602264B (zh) | 2019-09-02 | 2019-09-02 | 传递域名解析地址权重信息的方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110602264B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711706A (zh) * | 2020-04-30 | 2020-09-25 | 广州根链国际网络研究院有限公司 | Dns递归请求方法及系统 |
CN114268605A (zh) * | 2021-12-16 | 2022-04-01 | 云盾智慧安全科技有限公司 | 一种智能dns实现方法、装置及计算机存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932451A (zh) * | 2012-10-31 | 2013-02-13 | 北龙中网(北京)科技有限责任公司 | 一种针对内容分发网络的解决系统 |
US20130268675A1 (en) * | 2012-04-05 | 2013-10-10 | Institute For Information Industry | Method and System for Tracing Domain Names and Computer Readable Storage Medium Storing the Method |
CN103826320A (zh) * | 2012-11-16 | 2014-05-28 | 中国移动通信集团河南有限公司 | 建立通用分组无线服务gprs连接方法及装置 |
CN105262851A (zh) * | 2015-09-16 | 2016-01-20 | 互联网域名系统北京市工程研究中心有限公司 | 一种基于多策略的dns转发方法及系统 |
CN108124020A (zh) * | 2016-11-28 | 2018-06-05 | 中国电信股份有限公司 | 域名解析方法、系统及设备 |
CN108667946A (zh) * | 2017-03-31 | 2018-10-16 | 贵州白山云科技有限公司 | 一种多域名互备解析管理方法、装置及系统 |
CN109547583A (zh) * | 2018-11-22 | 2019-03-29 | 中国移动通信集团江苏有限公司 | 域名资源查询方法、装置、设备及计算机存储介质 |
-
2019
- 2019-09-02 CN CN201910821824.8A patent/CN110602264B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130268675A1 (en) * | 2012-04-05 | 2013-10-10 | Institute For Information Industry | Method and System for Tracing Domain Names and Computer Readable Storage Medium Storing the Method |
CN102932451A (zh) * | 2012-10-31 | 2013-02-13 | 北龙中网(北京)科技有限责任公司 | 一种针对内容分发网络的解决系统 |
CN103826320A (zh) * | 2012-11-16 | 2014-05-28 | 中国移动通信集团河南有限公司 | 建立通用分组无线服务gprs连接方法及装置 |
CN105262851A (zh) * | 2015-09-16 | 2016-01-20 | 互联网域名系统北京市工程研究中心有限公司 | 一种基于多策略的dns转发方法及系统 |
CN108124020A (zh) * | 2016-11-28 | 2018-06-05 | 中国电信股份有限公司 | 域名解析方法、系统及设备 |
CN108667946A (zh) * | 2017-03-31 | 2018-10-16 | 贵州白山云科技有限公司 | 一种多域名互备解析管理方法、装置及系统 |
CN109547583A (zh) * | 2018-11-22 | 2019-03-29 | 中国移动通信集团江苏有限公司 | 域名资源查询方法、装置、设备及计算机存储介质 |
Non-Patent Citations (1)
Title |
---|
翁源: "基于DNS的园区网多出口流量调度系统的研究与实现", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711706A (zh) * | 2020-04-30 | 2020-09-25 | 广州根链国际网络研究院有限公司 | Dns递归请求方法及系统 |
CN114268605A (zh) * | 2021-12-16 | 2022-04-01 | 云盾智慧安全科技有限公司 | 一种智能dns实现方法、装置及计算机存储介质 |
CN114268605B (zh) * | 2021-12-16 | 2023-11-24 | 云盾智慧安全科技有限公司 | 一种智能dns实现方法、装置及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110602264B (zh) | 2022-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11811657B2 (en) | Updating routing information based on client location | |
US20220272146A1 (en) | Point of presence management in request routing | |
US10931738B2 (en) | Point of presence management in request routing | |
EP3567881B1 (en) | Request routing and updating routing information utilizing client location information | |
US20190044787A1 (en) | Point of presence management in request routing | |
EP2266064B1 (en) | Request routing | |
US20120124165A1 (en) | Managing content delivery network service providers by a content broker | |
WO2012044587A1 (en) | Request routing in a networked environment | |
CN110602264B (zh) | 传递域名解析地址权重信息的方法、装置、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |