域名查询方法、系统、电子设备以及非瞬时机器可读介质技术方案

技术编号:38162458 阅读:8 留言:0更新日期:2023-07-13 09:36
本申请涉及一种域名查询方法、系统、电子设备以及非瞬时机器可读介质。该方法包括:接收域名查询消息,其中,域名查询消息包括查询域名和查询类型;使用查询域名查询否定缓存节点;判断否定缓存节点中是否存在查询域名;若否定缓存节点中存在查询域名,则计算出查询类型对应的位标识;判断否定缓存节点中是否存在查询类型对应的位标识;若否定缓存节点中存在查询类型对应的位标识,则返回域名查询消息的否定应答内容。通过本申请,解决了相关技术中域名不存在否定缓存作用域过大且否定缓存节点重复,无效占用内存的技术问题,达到了能够减小域名不存在否定缓存的作用域,相同域名下不同类型的否定缓存共享缓存内容,节省内存的技术效果。技术效果。技术效果。

【技术实现步骤摘要】
域名查询方法、系统、电子设备以及非瞬时机器可读介质


[0001]本申请涉及计算机网络
,特别是涉及一种域名查询方法、系统、电子设备以及非瞬时机器可读介质。

技术介绍

[0002]域名解析系统(Domain Name System,DNS)协议标准定义,DNS否定缓存的意义主要在于,通过在响应DNS否定应答场景下减少递归DNS服务器到外部权威DNS服务器的查询交互,降低客户端该场景下的DNS解析响应时间。DNS否定缓存分为两种类型:(1)域名不存在缓存:该类型否定缓存的作用域为整个域名,即在缓存未过期之前,所有查询该域名的请求都命中该缓存。后续提出的DNS协议标准进一步扩大了该类型否定缓存的作用域。由于域名系统的组织形式为一棵倒树,如果树上的父节点不存在,那么对应的该节点的所有叶子节点应该都不存在。
[0003]如图1所示,如果taobao.com这个节点不存在,那么它的子节点www.taobao.com一定不存在。按照这样的协议规定,域名不存在缓存的作用域进一步被放大,从影响域名本身到影响域名本身和所有他的子域名。
[0004]按照DNS协议规定,否定缓存的TTL为SOA记录本身的TTL和SOA记录中minimum TTL字段的更小值。在实际的DNS服务运营过程中,时常会遇到某些权威DNS服务器实现不规范,否定应答TTL并未按照上述的更小值逻辑进行设置。或者SOA记录中minimum TTL字段设置不合理(1天或更长时间)。一旦递归DNS服务器从权威DNS服务器获取了否定应答,过大的否定应答TTL会导致该应答在递归DNS服务器作为否定缓存存活的时间过长,同时由于否定缓存的作用域为整个域名甚至域名下所有的子域名,在否定缓存存活期间,该域名本身甚至域名下的所有子域名的DNS解析都受到影响。DNS服务域名的添加和DNS解析为异步发生,有极大的可能DNS解析发生在DNS服务域名添加生效之前,因此类似域名否定缓存导致域名生效变慢的问题在DNS服务运行过程中高频次出现。
[0005](2)类型不存在缓存:该类型的否定缓存以<查询域名,查询类型>为索引,即在缓存未过期之前,所有查询相同<查询域名,查询类型>的请求都命中该缓存。通常递归DNS服务器对于该类型的否定缓存以<查询域名,查询类型>为索引进行存储和查询。
[0006]如图2所示,www.taobao.com域名下A,AAAA,TXT类型记录均不存在,递归DNS服务器会按照<查询域名,查询类型>为索引存在相同域名(www.taobao.com)不同类型(A, AAAA, TXT)的独立缓存节点,不同类型的否定缓存节点内容都为SOA记录,TTL可能都不相同。按照DNS协议规定查询类型在DNS报文中按照16位无符号整数(2字节)组织,其理论取值范围为[0, 65535],而已定义的可查询最大有效DNS记录类型为257(CAA),也就是说对于相同域名,在递归DNS服务器侧,按照<查询域名,查询类型>为索引,类型不存在否定缓存最多可能存在257

1=256个缓存节点,而这些节点的内容均为相同SOA记录。不同类型的否定缓存节点其内容都相同却需要单独存储,内存使用存在浪费,有优化空间。
[0007]综上可知,递归DNS服务器上域名不存在类型否定缓存作用域过大,导致域名变更
实际生效变慢;以及递归DNS服务器上查询类型不存在否定缓存在多种查询类型场景下缓存节点重复,无效占用内存。
[0008]针对上述的问题,尚未提出有效地解决方案。

技术实现思路

[0009]本申请实施例提供的一种域名查询方法、系统、电子设备以及非瞬时机器可读介质,以至少解决相关技术中域名不存在否定缓存作用域过大且否定缓存节点重复,无效占用内存的问题。
[0010]根据本申请实施例的一个方面,提供了一种域名查询方法,包括:接收域名查询消息,其中,所述域名查询消息包括查询域名和查询类型;使用所述查询域名查询否定缓存节点,其中,所述否定缓存节点采用域名和记录类型位图作为索引存储所述域名查询消息的否定应答内容,所述记录类型位图中设置有查询类型对应的位标识;判断所述否定缓存节点中是否存在所述查询域名;若所述否定缓存节点中存在所述查询域名,则计算出所述查询类型对应的位标识;判断所述否定缓存节点中是否存在所述查询类型对应的位标识;若所述否定缓存节点中存在所述查询类型对应的位标识,则返回所述域名查询消息的否定应答内容。
[0011]根据本申请实施例的另一个方面,提供了一种域名查询系统,包括:客户端,用于发送域名查询消息,其中,所述域名查询消息包括查询域名和查询类型;递归服务器,与所述客户端连接,用于接收所述域名查询消息;使用所述查询域名查询否定缓存节点,其中,所述否定缓存节点采用域名和记录类型位图作为索引存储所述域名查询消息的否定应答内容,所述记录类型位图中设置有查询类型对应的位标识;判断所述否定缓存节点中是否存在所述查询域名;若所述否定缓存节点中存在所述查询域名,则计算出所述查询类型对应的位标识;判断所述否定缓存节点中是否存在所述查询类型对应的位标识;若所述否定缓存节点中存在所述查询类型对应的位标识,则返回所述域名查询消息的否定应答内容。
[0012]根据本申请实施例的另一个方面,提供了一种电子设备,包括:处理器,以及存储程序的存储器,其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行上述中所述的方法。
[0013]根据本申请实施例的另一个方面,提供了一种存储有计算机指令的非瞬时机器可读介质,其中,所述计算机指令用于使所述计算机执行上述中所述的方法。
[0014]在本申请实施例中,采用接收域名查询消息,其中,域名查询消息包括查询域名和查询类型;使用查询域名查询否定缓存节点,其中,否定缓存节点采用域名和记录类型位图作为索引存储域名查询消息的否定应答内容,记录类型位图中设置有查询类型对应的位标识;判断否定缓存节点中是否存在查询域名;若否定缓存节点中存在查询域名,则计算出查询类型对应的位标识;判断否定缓存节点中是否存在查询类型对应的位标识;若否定缓存节点中存在查询类型对应的位标识,则返回域名查询消息的否定应答内容。也就是说,本申请实施例以域名和记录类型位图为索引,将域名查询消息的否定应答内容存储至否定缓存节点中,通过以查询域名和查询类型为索引的域名查询消息查询否定缓存节点,在否定缓存节点中同时存在查询域名和查询类型对应的位标识时,返回该域名查询消息的否定应答内容,进而解决了相关技术中域名不存在否定缓存作用域过大且否定缓存节点重复,无效
占用内存的技术问题,达到了能够减小域名不存在否定缓存的作用域,相同域名下不同类型的否定缓存共享缓存内容,节省内存的技术效果。
附图说明
[0015]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种域名查询方法,包括:接收域名查询消息,其中,所述域名查询消息包括查询域名和查询类型;使用所述查询域名查询否定缓存节点,其中,所述否定缓存节点采用域名和记录类型位图作为索引存储所述域名查询消息的否定应答内容,所述记录类型位图中设置有查询类型对应的位标识;判断所述否定缓存节点中是否存在所述查询域名;若所述否定缓存节点中存在所述查询域名,则计算出所述查询类型对应的位标识;判断所述否定缓存节点中是否存在所述查询类型对应的位标识;若所述否定缓存节点中存在所述查询类型对应的位标识,则返回所述域名查询消息的否定应答内容。2.根据权利要求1所述的方法,其中,所述方法还包括:若所述否定缓存节点中不存在所述查询域名或者所述否定缓存节点中不存在所述查询类型对应的位标识,则使用所述域名查询消息查询肯定缓存节点,其中,所述肯定缓存节点采用域名和记录类型作为索引存储所述域名查询消息的肯定应答内容。3.根据权利要求2所述的方法,其中,使用所述域名查询消息查询肯定缓存节点,包括:判断所述肯定缓存节点中是否存在所述查询域名和所述查询类型;若所述肯定缓存节点中存在所述查询域名和所述查询类型,则返回所述域名查询消息的肯定应答内容。4.根据权利要求3所述的方法,其中,所述方法还包括:若所述肯定缓存节点中不存在所述查询域名或者不存在所述查询类型,则向权威服务器发送所述域名查询消息,获取所述域名查询消息的应答内容,并返回所述域名查询消息的应答内容。5.根据权利要求4所述的方法,其中,在获取所述域名查询消息的应答内容之后,所述方法还包括:基于所述域名查询消息的应答内容更新缓存节点。6.根据权利要求5所述的方法,其中,所述缓存节点包括所述否定缓存节点和肯定缓存节点,基于所述域名查询消息的应答内容更新缓存节点,包括:判断所述域名查询消息的应答内容是否为否定应答内容;若所述域名查询消息的应答内容为所述否定应答内容,则更新所述否定缓存节点;若所述域名查询消息的应答内容不为所述否定应答内容,则更新所述肯定缓存节点。7.根据权利要求6所述的方法,其中,更新所述否定缓存节点,包括:使用所述查询域名查询所述否定缓存节点;判断所述否定缓存节点是否存...

【专利技术属性】
技术研发人员:王楠
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1