一种新型dns递归服务器缓存方法和系统的制作方法

文档序号:9754841阅读:262来源:国知局
一种新型dns递归服务器缓存方法和系统的制作方法
【技术领域】
[0001]本发明属于网络技术、域名系统(DNS)技术领域,具体涉及一种新型DNS递归服务器缓存方法和系统。
【背景技术】
[0002]DNS递归服务器是DNS的重要组件之一,负责域名与IP地址之间映射记录的解析。DNS递归服务器会将来自权威服务器的响应信息记录暂存到其中的缓存中,这样当递归服务器再次接收到用户同样的解析请求时,就可以直接向用户回应相应的记录信息,而不需要再次向权威服务器发送查询请求,从而可以有效的提高域名解析的效率并减少带宽的消耗。DNS缓存的高效运转是保证递归域名服务乃至整体域名服务水平的一个关键因素。
[0003]目前DNS递归服务器缓存所采用的通用架构通常由单一缓存模块来构成,从权威服务器发来的响应信息记录会根据某种特定的算法(如典型的LRU算法,Least RecentlyUsed)存储到缓存队列中。通常情况下,查询频率较高的域名会被动态调整到缓存队列的前端,查询频率较低的域名会被逐渐调整到缓存队列的末端,直至该域名因为TTL到期而被删除或者由于缓存队列达到长度上限而被抛弃。这种缓存策略由于可以基本保证查询频率较高的域名能够一直保留在缓存队列中直至其TTL过期,因此被业内广泛采用。
[0004]近些年,临时域作为一类新型域,开始被越来越多的互联网业务(如病毒查杀、SP时通信等需要频繁更新的业务)频繁使用。通常情况下,临时域下存在海量的子域名,这些子域名通常根据特定的字符串生成规则产生,但每个子域名的使用频率却非常的低,有点类似于临时使用。通过对某大型公共递归服务器的查询日志分析得知,这类临时域名占到了全部域名总量的接近1/3。
[0005]由于目前DNS递归服务器缓存采用单一的缓存队列模块,普通域名和上述临时域名被共同存储在同一个缓存队列中处理。大量的临时查询域名的出现,势必会极大的挤占和增加缓存队列的存储空间,严重降低缓存队列的存取效率,同时使得一部分普通域名过早地被缓存剔除掉,从而会降低DNS缓存的整体命中率,对递归服务器的域名解析性能造成严重影响。

【发明内容】

[0006]针对上述问题,本发明旨在提供一种新型的DNS递归服务器缓存方法和系统,以降低大量临时性域名对于DNS缓存的负面影响,提升DNS缓存的工作效率。
[0007]为实现上述目的,本发明采用的技术方案如下:
[0008]—种DNS递归服务器缓存方法,包括如下步骤:
[0009]I)将DNS递归服务器的缓存分为普通域名缓存队列和临时域列表;
[0010]2)递归服务器接收到来自用户的查询请求时,检查被查询的域名是否属于临时域列表中的某个临时域,以对普通域名和临时域名实现分别处理。
[0011]进一步地,步骤2)中,若被查询的域名属于临时域列表中的某个临时域,则递归服务器直接向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,但不加入普通域名缓存队列。
[0012]进一步地,步骤2)中,若被查询的域名不属于临时域列表中的某个临时域,则检查普通域名缓存队列中是否存在相应的响应信息:若存在,则直接向用户返回该响应信息,同时对该缓存队列进行更新;若不存在,则递归服务器向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,同时将相应的响应信息添加到普通域名缓存队列中。
[0013]一种DNS递归服务器缓存系统,包括DNS递归服务器,所述DNS递归服务器的缓存包括普通域名缓存队列和临时域列表;递归服务器接收到来自用户的查询请求时,检查被查询的域名是否属于临时域列表中的某个临时域,以对普通域名和临时域名实现分别处理。
[0014]进一步地,若被查询的域名属于临时域列表中的某个临时域,则递归服务器直接向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,但不加入普通域名缓存队列。
[0015]进一步地,若被查询的域名不属于临时域列表中的某个临时域,则检查普通域名缓存队列中是否存在相应的响应信息:若存在,则直接向用户返回该响应信息,同时对该缓存队列进行更新;若不存在,则递归服务器向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,同时将相应的响应信息添加到普通域名缓存队列中。
[0016]本发明提供的DNS递归服务器新型缓存架构,引入了一个临时域列表,所提供的递归服务器缓存能够通过临时域列表实现对普通域名和临时域名作分别的处理。与现有技术相比,本发明的优点如下:
[0017](I)本发明所提供的递归服务器缓存能够对普通域名和临时域名实现分别处理;
[0018](2)本发明能够缓解大量临时域名对于递归服务器缓存的冲击,提高递归服务器缓存的存取效率和命中率;
[0019](3)本发明能够提升递归服务器的域名解析性能。
【附图说明】
[0020]图1是本发明的递归服务器缓存架构示意图。
[0021 ]图2是本发明的DNS递归服务器进行缓存的步骤流程图。
【具体实施方式】
[0022]为使本发明的上述目的、特征和优点能够更加明显易懂,下面通过具体实施例和附图,对本发明做进一步说明。
[0023]本发明所提供的新型递归服务器缓存架构如附图1所示,其中临时域列表负责存储已知的临时域列表(临时域名),该列表可以通过配置实现定期更新。
[0024]图2是采用该系统进行缓存的步骤流程图。当递归服务器接收到来自用户的查询请求时,首先检查被查询的域名是否属于临时域列表中的某个临时域:
[0025]I)若属于,则递归服务器直接向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,但不加入LRU缓存队列;
[0026]2)若不属于,则检查LRU缓存队列中是否存在相应的响应信息。若存在,直接向用户返回该响应信息,同时对该缓存队列进行更新;若不存在,递归服务器向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,同时将相应的响应信息添加到域名LRU缓存队列中去。
[0027]本发明所提供的递归服务器缓存能够对普通域名和临时域名实现分别处理,能够缓解大量临时域名对于递归服务器缓存的冲击,提高递归服务器缓存的存取效率和命中率。本发明能够提升递归服务器的域名解析性能。
[0028]下面提供一个具体实施例。
[0029]首先用户向递归服务器发送域名查询请求(例如abc.example.cn),递归服务器首先检查临时域列表中是否存在example.cn:
[0030]I)如果存在,则判定abc.examp I e.cn为临时域名,递归服务器直接向权威服务器发送查询abc.example.cn的请求,并将权威服务器返回的响应信息返回给用户,但abc.example, cn的响应信息不被加入LRU缓存队列;
[0031 ] 2)如果不存在,则判定abc.example.cn为正常域名,递归服务器会首先检查LRU缓存队列中是否已经存在该域名相应的响应信息。若存在,递归服务器直接向用户返回该响应信息,同时对LRU缓存队列进行更新;若不存在,递归服务器则向权威服务器发送域名abc.example.cn的查询请求,并将权威服务器返回的响应信息返回给用户,同时将abc.example, cn相应的响应信息添加到LRU缓存队列中去。
[0032]以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。
【主权项】
1.一种DNS递归服务器缓存方法,其特征在于,包括如下步骤: 1)将DNS递归服务器的缓存分为普通域名缓存队列和临时域列表; 2)递归服务器接收到来自用户的查询请求时,检查被查询的域名是否属于临时域列表中的某个临时域,以对普通域名和临时域名实现分别处理。2.如权利要求1所述的方法,其特征在于:步骤2)中,若被查询的域名属于临时域列表中的某个临时域,则递归服务器直接向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,但不加入普通域名缓存队列。3.如权利要求1或2所述的方法,其特征在于:步骤2)中,若被查询的域名不属于临时域列表中的某个临时域,则检查普通域名缓存队列中是否存在相应的响应信息:若存在,则直接向用户返回该响应信息,同时对该缓存队列进行更新;若不存在,则递归服务器向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,同时将相应的响应信息添加到普通域名缓存队列中。4.一种DNS递归服务器缓存系统,包括DNS递归服务器,其特征在于,所述DNS递归服务器的缓存包括普通域名缓存队列和临时域列表;递归服务器接收到来自用户的查询请求时,检查被查询的域名是否属于临时域列表中的某个临时域,以对普通域名和临时域名实现分别处理。5.如权利要求4所述的系统,其特征在于:若被查询的域名属于临时域列表中的某个临时域,则递归服务器直接向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,但不加入普通域名缓存队列。6.如权利要求4或5所述的系统,其特征在于:若被查询的域名不属于临时域列表中的某个临时域,则检查普通域名缓存队列中是否存在相应的响应信息:若存在,则直接向用户返回该响应信息,同时对该缓存队列进行更新;若不存在,则递归服务器向权威服务器发送查询请求,并将权威服务器返回的响应信息返回给用户,同时将相应的响应信息添加到普通域名缓存队列中。
【专利摘要】本发明涉及一种新型DNS递归服务器缓存方法和系统。递归服务器接收到来自用户的查询请求时,检查被查询的域名是否属于临时域列表中的某个临时域,若属于则直接向权威服务器发送查询请求,并将响应信息返回给用户,但不加入普通域名缓存队列;若不属于则检查普通域名缓存队列中是否存在相应的响应信息,若存在则直接向用户返回该响应信息;若不存在则递归服务器向权威服务器发送查询请求,并将响应信息返回给用户,同时将响应信息添加到普通域名缓存队列中。本发明能够对普通域名和临时域名实现分别处理,能够缓解大量临时域名对于递归服务器缓存的冲击,提高递归服务器缓存的存取效率和命中率,能够提升递归服务器的域名解析性能。
【IPC分类】H04L29/12
【公开号】CN105516383
【申请号】CN201510818312
【发明人】李晓东, 尉迟学彪, 潘蓝兰
【申请人】中国互联网络信息中心
【公开日】2016年4月20日
【申请日】2015年11月23日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1