一种基于家庭网关的dns域名解析加速方法及装置制造方法

文档序号:7803437阅读:260来源:国知局
一种基于家庭网关的dns域名解析加速方法及装置制造方法
【专利摘要】本发明提供一种基于家庭网关的DNS域名解析加速方法及装置,涉及计算机网络【技术领域】。家庭网关监听用户的DNS域名解析请求,查找DNS缓存中是否存在与请求对应的响应信息,如果有,将缓存文件发送给用户;如果没有,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器,家庭网关接收来自DNS服务器响应返回给用户并存入一份副本到DNS缓存中;定时计算DNS日志中所有域名的权值,设用户设置DNS缓存容量大小为N,将权值排名前N的域名做预取并更新到DNS缓存中。
【专利说明】—种基于家庭网关的DNS域名解析加速方法及装置
【技术领域】
[0001]本发明涉及计算机网络技术,尤其是涉及域名解析加速技术。
【背景技术】
[0002]通信上的宽带接入网是指宽带接入端局(或模块局接入交换机等)到最终用户的这一段传输线路,即“最后一公里”。“最后一公里”传输速度低,传输时延大,“最后一公里”已经成为各种业务的时延瓶颈。
[0003]传统的家庭宽带用户执行一个完整的DNS (计算机域名系统)域名解析过程如下:当用户发起DNS域名解析请求时,首先会用ISP (互联网服务提供商)提供的本地DNS服务器进行解析,如果在本地DNS服务器的域名和IP地址映射表中查询到相应的域名的IP(互联网协议地址)地址,则立即可以返回给用户,如果在本地DNS服务器上没有查找到相应域名所对应的IP地址,则本地DNS服务器转发查询请求到根DNS服务器进行查询。
[0004]“最后一公里”这一段链路时延大,使用ISP提供给用户的本地DNS服务器进行DNS域名解析服务,花费时间直接受“最后一公里”这一段链路时延的影响,家庭网关处于家庭网络中,离用户的距离只有数米之间,在家庭网关上直接提供一种轻量级的DNS服务,并使用缓存和预取技术来减小DNS域名解析经历“最后一公里”的次数,从而提升用户DNS域名解析的速度。

【发明内容】

[0005]本发明要解决的技术问题:其一是在家庭网关上实现DNS服务;其二,由于家庭网关相对DNS服务器性能差很多,在家庭网关提供的DNS服务需要一种开销更小、效率更高的方法。
[0006]为了解决上述技术问题,本发明在家庭网关运用缓存和预取技术提高效率,一种基于家庭网关的DNS域名解析加速方法,包括步骤:家庭网关监听用户的DNS域名解析请求,查找DNS缓存中是否存在与请求对应的响应信息,如果有,将缓存文件发送给用户;如果没有,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器,家庭网关接收来自DNS服务器响应返回给用户并存入一份副本到DNS缓存中;定时计算DNS日志中所有域名的权值,将权值与DNS缓存容量N进行比较,权值排名前N的域名做预取并更新到DNS缓存中。
[0007]计算DNS日志中所有域名的权值具体包括:家庭网关记录用户DNS域名解析请求并更新域名解析次数到DNS日志,记录用户DNS域名解析响应并更新域名最近一次更新时间到DNS日志;根据域名η最近一次更新时间Tn,域名η总解析次数Cn,调用公式Rn=Cn/(T-Tn)计算域名η的权值Rn,其中,T为当前时间。对域名做预取包括步骤:对DNS日志中所有域名的权值从高到底进行排序,对权值排名前N名的域名通过调用域名解析命令nslookup执行DNS域名解析操作得到域名对应的IP地址信息,更新此IP地址信息到DNS缓存中。[0008]另一方面,本发明还提出一种DNS域名解析加速装置,包括:监听模块,用于家庭网关监听用户的DNS域名解析请求;查找模块,查找DNS缓存中是否存在与请求对应的IP地址;转发模块,用于转发用户的DNS域名解析请求,如果DNS缓存中存在与请求对应的IP地址,将缓存文件发送给用户,如果没有对应的IP地址,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器;权值计算模块,根据域名被请求次数和域名最近一次更新时间作为基数计算DNS日志中所有域名的权值;预取模块,将权值与DNS缓存容量N进行比较,对权值排名前N的域名做预取并更新到DNS缓存中;缓存模块,用于缓存包括IP地址在内的所有DNS响应信息。
[0009]本发明在家庭网关上直接提供一种轻量级的DNS服务,并减小DNS域名解析经历“最后一公里”的次数,从而提升用户DNS域名解析的速度。对权值排名前N的域名进行预取操作,DNS缓存只需要存储N个域名的内存空间,家庭网关开销小,通过预取操作同时也提高了缓存命中率,缓存效率高;通过家庭网关提供DNS服务,用户能更快的获得域名对应的IP地址,提升用户DNS域名解析速度。
【专利附图】

【附图说明】
[0010]图1为本发明一个实施例的应用场景图;
图2为本发明一个实施例的权值计算方法图;
图3为本发明;方法一个实施例的流程图;
图4为DNS域名解析加速设备一个实施例的装置结构图。
【具体实施方式】
[0011]以下结合附图对本发明实施例进行详细描述。
[0012]图1为本发明基于家庭网关的DNS域名解析加速方法一个实施例的应用场景图。在图1中,家庭网关(家庭路由器)12充当DNS服务器,并执行DNS服务器的基本职能。它转发来自用户11的请求和接受来自本地DNS服务器13的响应,并将本地DNS服务器13的响应返回给用户和拷贝一份副本到家庭网关的DNS缓存14中。用户11可以更快地获得域名对应的IP地址,从而加快DNS域名解析速度。
[0013]图2为本发明基于家庭网关的DNS域名解析加速方法的一个实施例的权值计算方法图。在图2中,家庭网关记录用户的解析请求,记录最近一次更新时间和统计解析次数到DNS日志21中。对当前时间T,获取域名η最近更新时间Τη、域名η总解析次数Cn,根据公式Rn=Cn/ (T-Tn)计算域名η的权值Rn。
[0014]图3为本发明基于家庭网关的DNS域名解析加速方法一个实施例的流程图。现结合图2和图3阐述基于家庭网关的DNS域名解析加速方法,该方法包括如下步骤。
[0015]步骤301:客户端发送DNS域名解析请求;
步骤302:家庭网关监听用户的DNS域名解析请求,并把本次请求的域名和请求时间记录到DNS日志中;
步骤303:对本次DNS域名解析请求,在网关DNS缓存中查找是否有本域名对应的IP地址信息,如果找到则执行步骤306 ;否则执行步骤304 ;
步骤304:向DNS服务器转发客户端本次DNS域名解析请求;并得到DNS服务器的回复数据;
步骤305:将DNS服务器的回复数据拷贝一份到DNS缓存中,更新DNS日志中该域名最近一次更新时间;
步骤306:返回本次请求的域名对应的IP地址给客户端;
步骤307:根据用户设置的预取频率,开始定时执行步骤308 ;
步骤308:根据DNS日志中的域名最近一次更新时间和总访问次数计算权值;
步骤309:如果用户设置DNS缓存容量大小为N,选取权值最高的N个域名进行预取操作;对权值排名前N名的域名通过内置的域名解析命令nslookup命令执行DNS域名解析操作获得域名对应的IP地址;
步骤310:通过上述步骤得到的预取结果为域名对应的IP地址信息,并更新此预取结果到缓存容量为N个域名的DNS缓存中。
[0016]图4为DNS域名解析加速设备一个实施例的装置结构图。如图4所示,该家庭网关包括以下模块:监听模块41、查找模块42、转发模块43、权值计算模块44、预取模块45、缓存模块46。监听模块41,用于监听家庭网中用户的DNS域名解析请求;查找模块42,用于查找DNS缓存中域名对应的IP地址,查找DNS缓存中是否存在与请求对应的响应信息,如果有,转发模块43:将缓存文件发送给用户,如果没有,转发用户的DNS域名解析请求给ISP提供给用户的DNS服务器;权值计算模块44,根据域名被请求次数和域名最近一次更新时间作为基数计算DNS日志中所有域名的权值,对当前时间T,获取域名η最近更新时间Τη、域名η总解析次数Cn,根据公式Rn=kl/(T-Tn)+k2*Cn计算域名η的权值Rn ;预取模块45,将权值排名前N名的域名做预取并更新到缓存容量为N个域名的DNS缓存中;缓存模块46,用于缓存包括IP地址在内的所有DNS响应信息。
[0017]本发明把权值前N名的域名做预取操作,DNS缓存只需要存储N个域名的内存空间,家庭网关开销小,通过预取操作同时也提高了缓存命中率,缓存效率高;通过基于家庭网关的提供DNS缓存服务,用户能更快的获得域名对应的IP地址,提升用户DNS域名解析速度。
【权利要求】
1.一种基于家庭网关的DNS域名解析加速方法,其特征在于:所述方法包括:家庭网关监听用户的DNS域名解析请求,查找DNS缓存中是否存在与请求对应的响应信息,如果有,将缓存文件发送给用户;如果没有,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器,家庭网关接收来自DNS服务器响应返回给用户并存入一份副本到DNS缓存中;定时计算DNS日志中所有域名的权值,将权值与DNS缓存容量N进行比较,权值排名前N的域名做预取并更新到DNS缓存中。
2.根据权利要求1所述的方法,其特征在于:计算DNS日志中所有域名的权值具体包括:家庭网关记录用户DNS域名解析请求并更新域名解析次数到DNS日志,记录用户DNS域名解析响应并更新域名最近一次更新时间到DNS日志;根据域名η最近一次更新时间Τη,域名η总解析次数Cn,调用公式Rn=Cn/ (T-Tn)计算域名η的权值Rn,其中,T为当前时间。
3.根据权利要求1所述的方法,其特征在于:对域名做预取包括步骤:对DNS日志中所有域名的权值从高到底进行排序,对权值排名前N名的域名通过调用域名解析命令nslookup执行DNS域名解析操作得到域名对应的IP地址信息,更新此IP地址信息到DNS缓存中。
4.一种DNS域名解析加速装置,其特征在于,所述装置包括:监听模块,用于家庭网关监听用户的DNS域名解析请求;查找模块,查找DNS缓存中是否存在与请求对应的IP地址;转发模块,用于转发用户的DNS域名解析请求,如果DNS缓存中存在与请求对应的IP地址,将缓存文件发送给用户,如果没有对应的IP地址,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器;权值计算模块,根据域名被请求次数和域名最近一次更新时间作为基数计算DNS日志中所有域名的权值;预取模块,将权值与DNS缓存容量N进行比较,对权值排名前N的域名做预取并更新到DNS缓存中;缓存模块,用于缓存包括IP地址在内的所有DNS响应信息。
5.根据权利要求4所述的装置,其特征在于:权值计算模块计算DNS日志中所有域名的权值具体包括:家庭网关记录用户DNS域名解析请求并更新域名解析次数到DNS日志,记录用户DNS域名解析响应并更新域名最近一次更新时间到DNS日志;根据域名η最近一次更新时间Tn,域名η总解析次数Cn,调用公式Rn=Cn/ (T-Tn)计算域名η的权值Rn,其中,T为当前时间。
6.根据权利要求4所述的装置,其特征在于:对域名做预取包括:对DNS日志中所有域名的权值从高到底进行排序,选择出排名前N的域名,调用nslookup命令执行DNS域名解析操作得到含有域名对应IP地址的响应信息,并更新响应信息到DNS缓存中。
【文档编号】H04L29/12GK103973834SQ201410197548
【公开日】2014年8月6日 申请日期:2014年5月12日 优先权日:2014年5月12日
【发明者】徐川, 王新恒, 赵国锋, 张广兴, 唐红 申请人:重庆邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1