CN103973834B - 一种基于家庭网关的dns域名解析加速方法及装置 - Google Patents
一种基于家庭网关的dns域名解析加速方法及装置 Download PDFInfo
- Publication number
- CN103973834B CN103973834B CN201410197548.XA CN201410197548A CN103973834B CN 103973834 B CN103973834 B CN 103973834B CN 201410197548 A CN201410197548 A CN 201410197548A CN 103973834 B CN103973834 B CN 103973834B
- Authority
- CN
- China
- Prior art keywords
- dns
- domain name
- weights
- cache
- user
- 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
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于家庭网关的DNS域名解析加速方法及装置,涉及计算机网络技术领域。家庭网关监听用户的DNS域名解析请求,查找DNS缓存中是否存在与请求对应的响应信息,如果有,将缓存文件发送给用户;如果没有,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器,家庭网关接收来自DNS 服务器响应返回给用户并存入一份副本到DNS缓存中;定时计算DNS日志中所有域名的权值,设用户设置DNS缓存容量大小为N,将权值排名前N的域名做预取并更新到DNS缓存中。
Description
技术领域
本发明涉及计算机网络技术,尤其是涉及域名解析加速技术。
背景技术
通信上的宽带接入网是指宽带接入端局(或模块局接入交换机等)到最终用户的这一段传输线路,即“最后一公里”。“最后一公里”传输速度低,传输时延大,“最后一公里”已经成为各种业务的时延瓶颈。
传统的家庭宽带用户执行一个完整的DNS(计算机域名系统)域名解析过程如下:当用户发起DNS域名解析请求时,首先会用ISP(互联网服务提供商)提供的本地DNS服务器进行解析,如果在本地DNS服务器的域名和IP地址映射表中查询到相应的域名的IP(互联网协议地址)地址,则立即可以返回给用户,如果在本地DNS服务器上没有查找到相应域名所对应的IP地址,则本地DNS服务器转发查询请求到根DNS服务器进行查询。
“最后一公里”这一段链路时延大, 使用ISP提供给用户的本地DNS服务器进行DNS域名解析服务,花费时间直接受“最后一公里”这一段链路时延的影响,家庭网关处于家庭网络中,离用户的距离只有数米之间,在家庭网关上直接提供一种轻量级的DNS服务,并使用缓存和预取技术来减小DNS域名解析经历“最后一公里”的次数,从而提升用户DNS域名解析的速度。
发明内容
本发明要解决的技术问题:其一是在家庭网关上实现DNS服务;其二,由于家庭网关相对DNS服务器性能差很多,在家庭网关提供的DNS服务需要一种开销更小、效率更高的方法。
为了解决上述技术问题,本发明在家庭网关运用缓存和预取技术提高效率,一种基于家庭网关的DNS域名解析加速方法,包括步骤:家庭网关监听用户的DNS域名解析请求,查找DNS缓存中是否存在与请求对应的响应信息,如果有,将缓存文件发送给用户;如果没有,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器,家庭网关接收来自DNS服务器响应返回给用户并存入一份副本到DNS缓存中;定时计算DNS日志中所有域名的权值,将权值与DNS缓存容量N进行比较,权值排名前N的域名做预取并更新到DNS缓存中。
计算DNS日志中所有域名的权值具体包括:家庭网关记录用户DNS域名解析请求并更新域名解析次数到DNS日志,记录用户DNS域名解析响应并更新域名最近一次更新时间到DNS日志;根据域名n最近一次更新时间Tn,域名n总解析次数Cn,调用公式Rn=Cn/(T-Tn)计算域名n的权值Rn,其中,T为当前时间。对域名做预取包括步骤:对DNS日志中所有域名的权值从高到底进行排序,对权值排名前N名的域名通过调用域名解析命令nslookup执行DNS域名解析操作得到域名对应的IP地址信息,更新此IP地址信息到DNS缓存中。
另一方面,本发明还提出一种DNS域名解析加速装置,包括:监听模块,用于家庭网关监听用户的DNS域名解析请求;查找模块,查找DNS缓存中是否存在与请求对应的IP地址;转发模块,用于转发用户的DNS域名解析请求,如果DNS缓存中存在与请求对应的IP地址,将缓存文件发送给用户,如果没有对应的IP地址,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器;权值计算模块,根据域名被请求次数和域名最近一次更新时间作为基数计算DNS日志中所有域名的权值;预取模块,将权值与DNS缓存容量N进行比较,对权值排名前N的域名做预取并更新到DNS缓存中;缓存模块,用于缓存包括IP地址在内的所有DNS响应信息。
本发明在家庭网关上直接提供一种轻量级的DNS服务,并减小DNS域名解析经历“最后一公里”的次数,从而提升用户DNS域名解析的速度。对权值排名前N的域名进行预取操作,DNS缓存只需要存储N个域名的内存空间,家庭网关开销小,通过预取操作同时也提高了缓存命中率,缓存效率高;通过家庭网关提供DNS服务,用户能更快的获得域名对应的IP地址,提升用户DNS域名解析速度。
附图说明
图1为本发明一个实施例的应用场景图;
图2为本发明一个实施例的权值计算方法图;
图3 为本发明;方法一个实施例的流程图;
图4 为DNS域名解析加速设备一个实施例的装置结构图。
具体实施方式
以下结合附图对本发明实施例进行详细描述。
图1为本发明基于家庭网关的DNS域名解析加速方法一个实施例的应用场景图。在图1 中,家庭网关(家庭路由器)12充当DNS服务器,并执行DNS服务器的基本职能。它转发来自用户11的请求和接受来自本地DNS服务器13的响应,并将本地DNS服务器13的响应返回给用户和拷贝一份副本到家庭网关的DNS缓存14中。用户11可以更快地获得域名对应的IP地址,从而加快DNS域名解析速度。
图2为本发明基于家庭网关的DNS域名解析加速方法的一个实施例的权值计算方法图。在图2中,家庭网关记录用户的解析请求,记录最近一次更新时间和统计解析次数到DNS日志21中。对当前时间T,获取域名n最近更新时间Tn、域名n总解析次数Cn,根据公式Rn=Cn/(T-Tn)计算域名n的权值Rn。
图3 为本发明基于家庭网关的DNS域名解析加速方法一个实施例的流程图。现结合图2 和图3 阐述基于家庭网关的DNS域名解析加速方法,该方法包括如下步骤。
步骤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缓存中。
图4 为DNS域名解析加速设备一个实施例的装置结构图。如图4所示,该家庭网关包括以下模块:监听模块41、查找模块42、转发模块43、权值计算模块44、预取模块45、缓存模块46。监听模块41,用于监听家庭网中用户的DNS域名解析请求;查找模块42,用于查找DNS缓存中域名对应的IP地址,查找DNS缓存中是否存在与请求对应的响应信息,如果有,转发模块43:将缓存文件发送给用户,如果没有,转发用户的DNS域名解析请求给ISP提供给用户的DNS服务器;权值计算模块44,根据域名被请求次数和域名最近一次更新时间作为基数计算DNS日志中所有域名的权值,对当前时间T,获取域名n最近更新时间Tn、域名n总解析次数Cn,根据公式Rn=k1/(T-Tn)+k2*Cn计算域名n的权值Rn;预取模块45,将权值排名前N名的域名做预取并更新到缓存容量为N个域名的DNS缓存中;缓存模块46,用于缓存包括IP地址在内的所有DNS响应信息。
本发明把权值前N名的域名做预取操作,DNS缓存只需要存储N个域名的内存空间,家庭网关开销小,通过预取操作同时也提高了缓存命中率,缓存效率高;通过基于家庭网关的提供DNS缓存服务,用户能更快的获得域名对应的IP地址,提升用户DNS域名解析速度。
Claims (2)
1.一种基于家庭网关的DNS域名解析加速方法,其特征在于:所述方法包括:家庭网关监听用户的DNS域名解析请求,查找DNS缓存中是否存在与请求对应的响应信息,如果有,将缓存文件发送给用户;如果没有,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器,家庭网关接收来自DNS服务器响应返回给用户并存入一份副本到DNS缓存中;定时计算DNS日志中所有域名的权值,将权值与DNS缓存容量N进行比较,权值排名前N的域名做预取,预取结果为域名对应的IP地址信息,并更新此预取结果到缓存容量为N个域名的DNS缓存中,所述计算DNS日志中所有域名的权值具体包括:家庭网关记录用户DNS域名解析请求并更新域名解析次数到DNS日志,记录用户DNS域名解析响应并更新域名最近一次更新时间到DNS日志;根据域名n最近一次更新时间Tn,域名n总解析次数Cn,调用公式Rn=Cn/(T-Tn)计算域名n的权值Rn,其中,T为当前时间;对域名做预取包括步骤:对DNS日志中所有域名的权值从高到底进行排序,对权值排名前N名的域名通过调用域名解析命令nslookup执行DNS域名解析操作得到域名对应的IP地址信息,更新此IP地址信息到DNS缓存中。
2.一种DNS域名解析加速装置,其特征在于,所述装置包括:监听模块,用于家庭网关监听用户的DNS域名解析请求;查找模块,查找DNS缓存中是否存在与请求对应的IP地址;转发模块,用于转发用户的DNS域名解析请求,如果DNS缓存中存在与请求对应的IP地址,将缓存文件发送给用户,如果没有对应的IP地址,家庭网关转发DNS域名解析请求给ISP提供给用户的DNS服务器;权值计算模块,根据域名被请求次数和域名最近一次更新时间作为基数计算DNS日志中所有域名的权值,权值计算模块计算DNS日志中所有域名的权值具体包括:家庭网关记录用户DNS域名解析请求并更新域名解析次数到DNS日志,记录用户DNS域名解析响应并更新域名最近一次更新时间到DNS日志;根据域名n最近一次更新时间Tn,域名n总解析次数Cn,调用公式Rn=Cn/(T-Tn)计算域名n的权值Rn,其中,T为当前时间;预取模块,将权值与DNS缓存容量N进行比较,对权值排名前N的域名做预取,预取结果为域名对应的IP地址信息,并更新此预取结果到缓存容量为N个域名的DNS缓存中,对域名做预取包括:对DNS日志中所有域名的权值从高到底进行排序,选择出排名前N的域名,调用nslookup命令执行DNS域名解析操作得到含有域名对应IP地址的响应信息,并更新响应信息到DNS缓存中;缓存模块,用于缓存包括IP地址在内的所有DNS响应信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410197548.XA CN103973834B (zh) | 2014-05-12 | 2014-05-12 | 一种基于家庭网关的dns域名解析加速方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410197548.XA CN103973834B (zh) | 2014-05-12 | 2014-05-12 | 一种基于家庭网关的dns域名解析加速方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103973834A CN103973834A (zh) | 2014-08-06 |
CN103973834B true CN103973834B (zh) | 2017-07-25 |
Family
ID=51242864
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410197548.XA Active CN103973834B (zh) | 2014-05-12 | 2014-05-12 | 一种基于家庭网关的dns域名解析加速方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103973834B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106161669A (zh) * | 2015-04-28 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种快速域名解析方法和系统、及其终端和服务器 |
CN104935683A (zh) * | 2015-06-29 | 2015-09-23 | 北京经天科技有限公司 | 用于域名解析的缓存处理方法和装置 |
CN105119829B (zh) * | 2015-09-07 | 2018-11-09 | 中国联合网络通信集团有限公司 | 数据传输方法、装置和系统 |
CN105224250B (zh) * | 2015-09-28 | 2021-06-01 | 域创科技(浙江)有限公司 | 高性能域名解析处理方法和装置 |
CN105262857A (zh) * | 2015-11-04 | 2016-01-20 | 北京汉柏科技有限公司 | 一种dns中继功能加速方法及装置 |
CN105681489A (zh) * | 2016-03-02 | 2016-06-15 | 北京网康科技有限公司 | 一种域名系统dns查询的方法及装置 |
CN106790749A (zh) * | 2016-12-13 | 2017-05-31 | 小咖秀(北京)科技有限公司 | 一种基于hosts更新优化域名解析速度的方法 |
CN106657321A (zh) * | 2016-12-16 | 2017-05-10 | 上海斐讯数据通信技术有限公司 | 无线ap中本地dns缓存方法、网站访问方法及无线ap |
CN108259528B (zh) * | 2016-12-28 | 2021-01-12 | 华为技术有限公司 | 一种资源缓存方法及装置 |
CN108156274A (zh) * | 2017-12-18 | 2018-06-12 | 杭州迪普科技股份有限公司 | 一种vpn网络中使设备获得域名解析结果的方法及装置 |
CN108234685B (zh) * | 2017-12-20 | 2021-04-27 | 中国移动通信集团江苏有限公司 | 用户终端网关设备dns调度的方法、装置、设备及介质 |
CN111130822B (zh) * | 2018-10-31 | 2022-10-04 | 中国电信股份有限公司 | 通信方法、装置、系统及计算机可读存储介质 |
CN110933156A (zh) * | 2019-11-26 | 2020-03-27 | 杭州迪普科技股份有限公司 | 一种域名解析的方法及装置 |
CN111885217B (zh) * | 2020-07-21 | 2023-11-07 | 深信服科技股份有限公司 | 一种数据通信方法、装置、设备及存储介质 |
CN112822309B (zh) * | 2021-04-19 | 2021-07-16 | 北京视界云天科技有限公司 | 域名解析方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101841577A (zh) * | 2010-06-07 | 2010-09-22 | 中兴通讯股份有限公司 | 一种实现域名解析代理功能的方法和装置 |
CN102143243A (zh) * | 2010-10-28 | 2011-08-03 | 华为终端有限公司 | 动态路由处理方法和装置及其家庭网关 |
CN102714663A (zh) * | 2010-01-19 | 2012-10-03 | 阿尔卡特朗讯公司 | 用于预防dns缓存投毒的方法和系统 |
CN102799662A (zh) * | 2012-07-10 | 2012-11-28 | 北京奇虎科技有限公司 | 推荐网址的方法、装置及系统 |
CN102843445A (zh) * | 2012-09-29 | 2012-12-26 | 北京奇虎科技有限公司 | 一种浏览器及其进行域名解析的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8677018B2 (en) * | 2008-08-25 | 2014-03-18 | Google Inc. | Parallel, side-effect based DNS pre-caching |
-
2014
- 2014-05-12 CN CN201410197548.XA patent/CN103973834B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102714663A (zh) * | 2010-01-19 | 2012-10-03 | 阿尔卡特朗讯公司 | 用于预防dns缓存投毒的方法和系统 |
CN101841577A (zh) * | 2010-06-07 | 2010-09-22 | 中兴通讯股份有限公司 | 一种实现域名解析代理功能的方法和装置 |
CN102143243A (zh) * | 2010-10-28 | 2011-08-03 | 华为终端有限公司 | 动态路由处理方法和装置及其家庭网关 |
CN102799662A (zh) * | 2012-07-10 | 2012-11-28 | 北京奇虎科技有限公司 | 推荐网址的方法、装置及系统 |
CN102843445A (zh) * | 2012-09-29 | 2012-12-26 | 北京奇虎科技有限公司 | 一种浏览器及其进行域名解析的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103973834A (zh) | 2014-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103973834B (zh) | 一种基于家庭网关的dns域名解析加速方法及装置 | |
US10791190B2 (en) | Systems and methods for avoiding server push of objects already cached at a client | |
US11134134B2 (en) | Routing for origin-facing points of presence | |
CN103929507B (zh) | 一种实现可离线化dns服务的方法及装置 | |
US10812580B2 (en) | Using resource timing data for server push | |
CN103051740B (zh) | 域名解析方法、dns服务器及域名解析系统 | |
CN105530324B (zh) | 处理资源请求的方法和系统 | |
CN105450780B (zh) | 一种cdn系统及其回源方法 | |
CN105376344B (zh) | 一种与源地址相关的递归域名服务器的解析方法及系统 | |
CN103593419B (zh) | 数据查询方法、装置、服务器及系统 | |
WO2019061522A1 (zh) | 域名解析方法、客户端、边缘节点及域名解析系统 | |
CN103338279B (zh) | 基于域名解析的优化排序方法及系统 | |
CN107395683A (zh) | 一种回源路径的选择方法及服务器 | |
US20110078327A1 (en) | Content delivery utilizing multiple content delivery networks | |
US20100106854A1 (en) | System and method for controlling non-existing domain traffic | |
CN102984286A (zh) | 一种dns服务器的缓存更新方法、装置及系统 | |
CN104821965B (zh) | 基于出口网络的dns智能解析方法 | |
CN103905439A (zh) | 一种基于家庭网关的加速网页浏览方法 | |
CN102394944B (zh) | 一种Web访问中的IP地址库修正方法和设备 | |
CN106713506A (zh) | 一种数据获取方法及系统 | |
CN107332843A (zh) | iOS网络请求拦截转发缓存方法及系统 | |
CN107665235A (zh) | 缓存处理方法、装置、计算机设备和存储介质 | |
CN103401953A (zh) | 一种基于双层结构的端到端的语音通信节点寻址方法 | |
CN110266799B (zh) | 一种基于缓存的幂等性实现的方法 | |
KR20140099834A (ko) | 분산형 공유 캐싱 시스템을 위한 적응적 콘텐츠 탐색 방법 및 시스템 |
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 |