CN117119054A - 一种加速域名查询方法、装置、计算机设备和存储介质 - Google Patents
一种加速域名查询方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN117119054A CN117119054A CN202311167024.1A CN202311167024A CN117119054A CN 117119054 A CN117119054 A CN 117119054A CN 202311167024 A CN202311167024 A CN 202311167024A CN 117119054 A CN117119054 A CN 117119054A
- Authority
- CN
- China
- Prior art keywords
- domain name
- forwarding module
- target
- control module
- address
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000001133 acceleration Effects 0.000 claims abstract description 82
- 238000013507 mapping Methods 0.000 claims abstract description 63
- 230000004044 response Effects 0.000 claims abstract description 61
- 238000004590 computer program Methods 0.000 claims description 19
- 238000004891 communication Methods 0.000 claims description 9
- 230000007547 defect Effects 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000000977 initiatory effect Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- 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
本申请涉及一种加速域名查询方法、装置、计算机设备和存储介质,属于域名解析技术领域。所述方法应用于网络节点,网络节点至少包括控制模块和转发模块,包括:转发模块接收域名查询请求,确定待查询的目标域名;转发模块判断域名加速表中是否有目标域名及其对应的目标IP地址;如果有,转发模块则直接反馈目标IP地址,否则正常转发域名查询请求;转发模块接收远端返回的响应报文,向终端反馈响应报文;转发模块解析响应报文,将得到的域名和IP地址的映射关系传输至控制模块;控制模块基于映射关系更新域名加速表,并同步到转发模块。采用本方法能够有效应对现有的域名查询技术方案中存在的不足。
Description
技术领域
本申请涉及域名解析技术领域,特别是涉及一种加速域名查询方法、装置、计算机设备和存储介质。
背景技术
DNS(Domain Name System)是互联网中用于将易读的域名(如example.com)转换为IP地址(如192.168.0.1)的分布式系统,其是互联网基础设施的重要组成部分。当用户在浏览器中输入域名时,操作系统会向DNS解析器发送域名查询请求,从而DNS解析器会采用递归的方式向互联网中的DNS服务器进行查询,直到查询到该域名对应的IP,最终返回结果至浏览器。
由于DNS系统本质上是一个巨大的“分布式数据库”,查询过程会比较费时,因此通常会在本地部署专用的Local DNS服务器,并将DNS解析器的请求地址指向该Local DNS服务器,从而可以由Local DNS服务器执行域名查询并反馈查询结果给用户。然而,采用这种方式首先需要额外增设服务器,并且需要修改所有用户的DNS解析器的请求地址;其次是当域名查询请求比较多时,Local DNS服务器的负载压力会比较大,服务器的设备性能也将成为DNS解析的质量瓶颈,尤其是当出现大量域名查询请求都需要递归查询时,会导致域名查询非常耗时。
发明内容
基于此,有必要针对上述技术问题,提供一种加速域名查询方法、装置、计算机设备和存储介质,以应对现有的域名查询技术方案中存在的不足。
第一方面,本申请提供了一种加速域名查询方法。所述方法应用于网络节点,所述网络节点至少包括控制模块和转发模块,所述方法包括:
所述转发模块接收终端发送的域名查询请求,确定待查询的目标域名;
所述转发模块判断本地预存的域名加速表中是否缓存有所述目标域名及其对应的目标IP地址;
如果存在,所述转发模块则直接向所述终端反馈所述目标IP地址,否则正常转发所述域名查询请求;
所述转发模块接收远端返回的所述域名查询请求的响应报文,向所述终端反馈所述响应报文;
所述转发模块解析所述响应报文,将解析得到的域名和IP地址的映射关系传输至所述控制模块;
所述控制模块基于所述转发模块上报的映射关系更新域名加速表,并同步到所述转发模块;
所述转发模块基于更新后的域名加速表,判断是否直接响应终端发送的域名查询请求。
在其中一个实施例中,所述控制模块基于所述转发模块上报的映射关系更新域名加速表,包括:
所述控制模块统计所述目标域名的全局被查询状态;
当所述目标域名的全局被查询状态满足预设条件时,所述控制模块基于所述转发模块上报的所述目标域名对应的映射关系更新域名加速表。
在其中一个实施例中,所述控制模块基于所述转发模块上报的映射关系更新域名加速表,包括:
所述控制模块统计全局域名查询状态;
所述控制模块定期基于所述映射关系和所述全局域名查询状态更新域名加速表。
在其中一个实施例中,所述正常转发所述域名查询请求之前,还包括:
所述转发模块将目标域名和所述终端的通信地址添加至待响应表中;
所述转发模块接收远端返回的所述域名查询请求的响应报文,向所述终端反馈所述响应报文,包括:
所述转发模块接收远端返回的任意响应报文,确定所述响应报文的目的地址和携带的域名解析结果;
所述转发模块判断所述待响应表中是否存在与所述目的地址和域名解析结果对应的数据项;
如果存在,所述转发模块则向所述目的地址指向的终端反馈所述响应报文,否则丢弃所述响应报文。
在其中一个实施例中,所述方法还包括:
所述控制模块获取用户预设的优选域名,通过所述转发模块对所述优选域名进行域名查询;
所述控制模块将查询得到的优选域名和IP地址的映射关系,设置为所述域名加速表的常驻域名。
在其中一个实施例中,所述域名加速表包括通用域名加速子表和不同时段对应的域名加速子表;
所述转发模块判断本地预存的域名加速表中是否缓存有所述目标域名及其对应的目标IP地址,包括:
所述转发模块在当前时段对应的域名加速子表中,判断是否存在所述目标域名及其对应的目标IP地址;
如果不存在,所述转发模块则在所述通用域名加速子表中,判断是否存在所述目标域名及其对应的目标IP地址。
在其中一个实施例中,所述方法还包括:
所述控制模块统计全局域名查询状态;
所述控制模块定期根据所述全局域名查询状态更新时段划分标准,并更新不同时段对应的域名加速子表。
第二方面,本申请还提供了一种加速域名查询装置。所述装置包括控制模块和转发模块,其中,所述转发模块,用于:
接收终端发送的域名查询请求,确定待查询的目标域名;
判断本地预存的域名加速表中是否缓存有所述目标域名及其对应的目标IP地址;
如果存在,则直接向所述终端反馈所述目标IP地址,否则正常转发所述域名查询请求;
接收远端返回的所述域名查询请求的响应报文,向所述终端反馈所述响应报文;
解析所述响应报文,将解析得到的域名和IP地址的映射关系传输至所述控制模块;
所述控制模块,用于:
基于所述转发模块上报的映射关系更新域名加速表,并同步到所述转发模块,以使所述转发模块基于更新后的域名加速表,判断是否直接响应终端发送的域名查询请求。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述加速域名查询方法中的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述加速域名查询方法中的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述加速域名查询方法中的步骤。
上述加速域名查询方法中,网络节点的转发模块中预存域名加速表,当域名查询请求到达网络节点时,转发模块可以利用该域名加速表对部分的域名查询请求进行响应;当域名查询请求的响应报文达到网络节点时,转发模块可以解析其中的映射关系,并将映射关系提供给控制模块,以使控制模块更新域名加速表。这样,一方面,由网络节点利用域名加速表实现部分域名的加速查询,可以提高域名查询的效率,并降低带宽资源的占用;另一方面,将域名加速表部署在网络节点中的转发模块中,无需在终端上进行任何修改,整个过程对用户而言是无感知的,可以实现非侵入式的域名查询,因此用户体验更优;再一方面,由控制模块根据响应报文中的映射关系更新域名加速表,可以保证域名加速表更匹配用户的域名查询需求,从而可以进一步扩大前述优点。
附图说明
图1为一个实施例中加速域名查询方法的应用环境图;
图2为一个实施例中加速域名查询方法的流程示意图;
图3为一个实施例中转发响应报文的流程示意图;
图4为一个实施例中设置域名加速表的流程示意图;
图5为一个实施例中加速域名查询装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
域名查询是用户使用终端访问互联网时必不可少的一个过程,终端通过域名查询,可以将用户输入的域名信息转化为IP地址,从而可以利用IP地址进行访问。Local DNS服务器是一种部署在本地或者局域内网的、用于加速域名查询的服务器,用户在终端中输入想要访问的域名后,终端可以直接向本地域名服务器发起域名查询,由Local DNS服务器代为执行域名查询过程。然而,如果需要使用Local DNS服务器,一者需要设置单独的服务器,二者需要统一将终端的DNS解析器的请求地址修改为Local DNS服务器的IP地址,三者Local DNS服务器的负载压力会较大。针对这种情况,本申请实施例提供了一种加速域名查询方法,以提高域名查询的效率。
本申请实施例提供的加速域名查询方法,可以应用于如图1所示的网络节点上,并具体可以由网络节点包括的控制模块和转发模块共同实现。其中,网络节点是可以终端设备访问互联网时数据报文需要经过的任意节点设备,网络节点可以同时为多个终端设备提供服务,即可以接收、转发不同终端发来的请求报文,以及可以向不同终端反馈响应报文。网络节点可以是转发和控制分离架构,即包括控制模块和转发模块,其中控制模块具体可以是CPU芯片,转发模块具体可以是NP芯片,控制模块可以用于执行数据层面的计算、分析、整体等处理,转发模块可以用于通信层面的数据收发等处理。
在一个实施例中,如图2所示,提供了一种加速域名查询方法,以图1中的网络节点为路由器为例进行说明,包括以下步骤:
步骤202,转发模块接收终端发送的域名查询请求,确定待查询的目标域名。
在实施中,用户在终端上输入想要访问的域名(即目标域名)后,终端可以生成相应的域名查询请求,并向DNS服务器发送该域名查询请求。从而,当该域名查询请求传输经过网络节点时,网络节点的转发模块可以接收到该域名查询请求,并确定待查询的目标域名。
步骤204,转发模块判断本地预存的域名加速表中是否缓存有目标域名及其对应的目标IP地址。
在实施中,网络节点的转发模块中可以预存有域名加速表,该域名加速表可以缓存有至少一个域名和IP地址的对应关系,该域名加速表可以是网络节点的控制模块生成的,并由控制模块发送至转发模块进行存储。这样,网络节点的转发模块在确定了需要DNS解析的目标域名后,可以查询上述域名加速表,以判断其中是否缓存有目标域名及其对应的目标IP地址。
步骤206,如果存在,转发模块则直接向终端反馈目标IP地址,否则正常转发域名查询请求。
在实施中,网络节点的转发模块如果在域名加速表中查找到目标域名对应的IP地址,则可以直接构造域名查询请求的响应报文,以将目标IP地址反馈至域名查询请求的发起终端;而如果在域名加速表中未查找到目标域名对应的IP地址,转发模块则可以按照域名查询请求原有的目的地址,正常向DNS服务器转发该域名查询请求。
步骤208,转发模块接收远端返回的域名查询请求的响应报文,向终端反馈响应报文。
在实施中,DNS服务器在对域名查询请求进行解析后,可以将响应报文返回给域名查询请求的发起终端。相应的,转发模块可以接收到远端返回的域名查询请求的响应报文,并向发起域名查询请求的终端反馈响应报文。
步骤210,转发模块解析响应报文,将解析得到的域名和IP地址的映射关系传输至控制模块。
在实施中,转发模块接收到响应报文后,可以对响应报文进行解析,从而可以得到其中携带的域名和IP地址的映射关系,并进一步可以将该映射关系传输至控制模块。
步骤212,控制模块基于转发模块上报的映射关系更新域名加速表,并同步到转发模块。
在实施中,控制模块接收到转发模块上报的映射关系后,可以基于该映射关系更新域名加速表。其中,域名加速表的更新处理可以是对转发模块中的域名加速表的表项进行增删改,也可以是重新生成一份完整的域名加速表。基于映射关系更新域名加速表的处理,具体可以是在域名加速表新增该映射关系,或者从域名加速表中删除该映射关系,还可以是在域名加速表中调整与该映射关系相关的表项。之后,控制模块可以将更新后的域名加速表同步到转发模块。
步骤214,转发模块基于更新后的域名加速表,判断是否直接响应终端发送的域名查询请求。
在实施中,转发模块在获取到更新后的域名加速表后,可以将更新后的域名加速表替换本地已存的域名加速表,这样,后续在接收到终端发送的域名查询请求时,转发模块可以基于更新后的域名加速表,判断是否直接响应该域名查询请求。
上述加速域名查询方法中,网络节点的转发模块中预存域名加速表,当域名查询请求到达网络节点时,转发模块可以利用该域名加速表对部分的域名查询请求进行响应;当域名查询请求的响应报文达到网络节点时,转发模块可以解析其中的映射关系,并将映射关系提供给控制模块,以使控制模块更新域名加速表。这样,一方面,由网络节点利用域名加速表实现部分域名的加速查询,可以提高域名查询的效率,并降低带宽资源的占用;另一方面,将域名加速表部署在网络节点中的转发模块中,无需在终端上进行任何修改,整个过程对用户而言是无感知的,可以实现非侵入式的域名查询,因此用户体验更优;再一方面,由控制模块根据响应报文中的映射关系更新域名加速表,可以保证域名加速表更匹配用户的域名查询需求,从而可以进一步扩大前述优点。
在一个实施例中,控制模块可以基于每个域名的查询情况更新域名加速表,相应的,对于目标域名而言,步骤212的处理可以如下:控制模块统计目标域名的全局被查询状态;当目标域名的全局被查询状态满足预设条件时,控制模块基于转发模块上报的目标域名对应的映射关系更新域名加速表。
其中,目标域名的全局被查询状态可以是控制模块统计的,来自不同终端的所有传输经过网络节点的域名查询请求中,针对目标域名的查询次数、频率、时间、终端数等信息。
在实施中,控制模块每次接收到转发模块上传的域名和IP地址的映射关系后,均可以更新已统计的相关域名的全局被查询状态。以目标域名为例,当接收到目标域名对应的映射关系时,控制模块可以更新目标域名的全局被查询状态,并判断该全局被查询状态是否满足预设条件。此处,针对统计的不同全局被查询状态可以存在不同的预设条件,通过全局被查询状态和预设条件可以判断目标域名是否为热点域名。例如,如果统计的是目标域名的查询次数,则预设条件可以是查询次数大于预设次数;如果统计的是目标域名的查询频率,则预设条件可以是预设历史时长内查询频率大于预设频率;如果统计的是目标域名的查询时间和查询终端数,则预设条件可以是预设历史时长内总计的查询终端数大于预设数量。这样,当目标域名的全局被查询状态满足预设条件时,控制模块基于转发模块上报的目标域名对应的映射关系更新域名加速表。
在一个实施例中,控制模块可以统计所有域名的查询情况,并基于统计结果更新域名加速表。相应的,步骤212的处理可以如下:所述控制模块统计全局域名查询状态;所述控制模块基于所述映射关系和所述全局域名查询状态定期更新域名加速表。
其中,全局域名查询状态可以是控制模块统计的,来自不同终端的所有传输经过网络节点的域名查询请求中,各个域名的查询次数、频率、时间、终端数等信息。
在实施中,控制模块在接收到步骤210中转发模块传输的映射关系后,可以存储该映射关系,并同时更新已统计的全局域名查询状态。这样,控制模块可以定期基于已存储的映射关系和全局域名查询状态,更新域名加速表。不难理解,控制模块可以根据全局域名查询状态,定期判断各域名的热门程度,并按照热门程度由高至低更新域名加速表,以使转发模块基于域名加速表更为有效地对域名查询请求进行快速应答。当然,域名的热门程度的高低可以由全局域名查询状态而定,本实施例中不对具体的判定标准进行额外限定。
值得一提的是,域名加速表的更新还可以根据表中各项映射关系的TTL来触发,具体可以由控制模块在配置映射关系时,根据通信协议设定各项映射关系的TTL。后续如果某项映射关系的TTL超时,控制模块则可以主动在域名加速表中删除该项映射关系,再将删除映射关系后的域名加速表发送至转发模块。
在一个实施例中,网络节点也可以起到网络防火墙的作用,具体的,转发模块执行步骤206中继续转发域名查询请求的处理之前,可以将目标域名和终端的通信地址添加至待响应表中;而步骤208的处理可以同步变换为图3所示的流程,可以包括一下步骤:
步骤2081,转发模块接收远端返回的任意响应报文,确定响应报文的目的地址和携带的域名解析结果。
步骤2082,转发模块判断待响应表中是否存在与目的地址和域名解析结果对应的数据项。
步骤2083,如果存在,转发模块则向目的地址指向的终端反馈响应报文,否则丢弃响应报文。
在实施中,转发模块在接收到远端返回的任意域名查询请求的响应报文后,可以确定响应报文的目的地址和携带的域名解析结果。可以理解,响应报文的目的地址应为对应的域名查询请求的发起终端的网络地址;域名解析结果即为域名和IP地址的映射关系。之后,转发模块可以判断待响应表中是否存在同时包含目的地址和域名解析结果的数据项,如果存在,转发模块则可以向目的地址指向的终端发送响应报文,否则可以判定该响应报文为网络攻击者伪造的恶意攻击报文,从而可以丢弃该响应报文。
在一个实施例中,用户可以在网络节点处指定需要稳定加速的优选域名,相应的,如图4所示,可以包括如下步骤:
步骤402,控制模块获取用户预设的优选域名,通过转发模块对优选域名进行域名查询。
步骤404,控制模块将查询得到的优选域名和IP地址的映射关系,设置为域名加速表的常驻域名。
在实施中,网络节点的归属者可能会长期或临时存在指定域名的加速需求,该加速需求可以独立于控制模块对于域名加速表的更新机制之外。例如,网络节点为企业内部路由器时,企业管理者可以将企业官网设置为长期需要加速的域名;又例如网络节点为家庭内部路由器时,户主需要进行抢票、抢购等时效较快的上网操作时,可以将相关页面设置为需要加速的域名,并且可以进一步设定需要加速的时间段,即在指定时间段,将相关域名添加至域名加速表中。这样,用户在执行了相关的域名设定操作后,控制模块可以获取到用户预设的优选域名,并构造优选域名的域名查询请求,再将域名查询请求发送至转发模块。之后,转发模块可以DNS服务器发送该域名查询请求,以查询优选域名的IP地址。这样,控制模块在通过转发模块获取到优选域名和IP域名的映射关系后,可以将该映射关系设置为域名加速表的常驻域名。进一步的,如果用户设定了优选域名需要加速的时间段,控制模块则可以在该时间段到达时,再将相应映射关系设置为域名加速表的常驻域名。
在一个实施例中,域名加速表可以包括通用域名加速子表和不同时段对应的域名加速子表,即用户侧存在不同时段对应的不同域名加速需求,基于此,步骤204的处理可以如下:转发模块在当前时段对应的域名加速子表中,判断是否存在目标域名及其对应的目标IP地址;如果不存在,转发模块则在通用域名加速子表中,判断是否存在目标域名及其对应的目标IP地址。
在实施中,考虑到在不同时段用户会对不同的网站产生固定的访问需求,例如,当网络节点为家庭路由器时,用户可能会在每天早上查询天气和交通情况,在上午查看新闻内容,在下午访问技术网站,在晚上搜索娱乐相关;或者用户可能会在一周的不同天搜索查阅不同内容。这样,如果单纯按照域名的热点程度来更新域名加速表,那么转发模块需要相对频繁地通过DNS服务器进行域名解析,以及域名加速表需要频繁的进行更新。面对此种问题,可以将域名加速表分为所有时段的通用域名加速子表和不同时段对应的域名加速子表,在每天的不同时段可以优先在相应的域名加速子表中进行域名查询。具体来说,转发模块接收到终端发送的域名查询请求后,可以先在当前时段对应的域名加速子表中,判断是否存在目标域名及其对应的目标IP地址;如果不存在,转发模块则在通用域名加速子表中,判断是否存在目标域名及其对应的目标IP地址。之后,转发模块可以执行步骤206的处理。这样,先在时段对应的域名加速子表中查询域名,可以缩短域名查询所需时间,一定程度上提高域名加速的效率,同时设定通用域名加速子表,也可以同步保证热点域名的加速访问。
在一个实施例中,上述域名加速表包含通用域名加速子表和不同时段对应的域名加速子表,可以由控制模块自动生成和维护,相应的处理可以如下:控制模块统计全局域名查询状态;控制模块定期根据全局域名查询状态更新时段划分标准,并更新不同时段对应的域名加速子表。
其中,全局域名查询状态可以是控制模块统计的,来自不同终端的所有传输经过网络节点的域名查询请求中,各个域名的查询次数、频率、时间、终端数等信息。
在实施中,控制模块在接收到步骤210中转发模块传输的映射关系后,可以存储该映射关系,并同时更新已统计的全局域名查询状态。这样,控制模块可以定期根据全局域名查询状态来分析网络节点下所有终端的域名访问规律,并按照分析结果来更新时段的划分标准,即重新划分时段,同时更新不同时段对应的域名加速子表。可以理解,此处时段的划分并非是固定的,而是可以根据用户的实际上网情况来设定的,基于此种设定,可以灵活配置相应的域名加速子表,既可以避免在上网低谷期建立多余无效的域名加速子表,也可以保证建立的域名加速子表更为匹配用户的实际上网行为。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的加速域名查询方法的加速域名查询装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个加速域名查询装置实施例中的具体限定可以参见上文中对于加速域名查询方法的限定,在此不再赘述。
在一个实施例中,如图5所示,提供了一种加速域名查询装置500,所述装置500包括控制模块502和转发模块504,其中,所述转发模块504,用于:
接收终端发送的域名查询请求,确定待查询的目标域名;
判断本地预存的域名加速表中是否缓存有所述目标域名及其对应的目标IP地址;
如果存在,则直接向所述终端反馈所述目标IP地址,否则正常转发所述域名查询请求;
接收远端返回的所述域名查询请求的响应报文,向所述终端反馈所述响应报文;
解析所述响应报文,将解析得到的域名和IP地址的映射关系传输至所述控制模块502;
所述控制模块502,用于:
基于所述转发模块504上报的映射关系更新域名加速表,并同步到所述转发模块504,以使所述转发模块504基于更新后的域名加速表,判断是否直接响应终端发送的域名查询请求。
在其中一个实施例中,所述控制模块502,具体用于:
统计所述目标域名的全局被查询状态;
当所述目标域名的全局被查询状态满足预设条件时,基于所述转发模块上报的所述目标域名对应的映射关系更新域名加速表。
在其中一个实施例中,所述控制模块502,具体用于:
统计全局域名查询状态;
基于所述映射关系和所述全局域名查询状态定期更新域名加速表。
在其中一个实施例中,所述转发模块504,还用于在正常转发所述域名查询请求之前,将目标域名和所述终端的通信地址添加至待响应表中;
所述转发模块504,具体用于:
接收远端返回的任意响应报文,确定所述响应报文的目的地址和携带的域名解析结果;
判断所述待响应表中是否存在与所述目的地址和域名解析结果对应的数据项;
如果存在,则向所述目的地址指向的终端反馈所述响应报文,否则丢弃所述响应报文。
在其中一个实施例中,所述控制模块502,还用于:
获取用户预设的优选域名,通过所述转发模块504对所述优选域名进行域名查询;
将查询得到的优选域名和IP地址的映射关系,设置为所述域名加速表的常驻域名。
在其中一个实施例中,所述域名加速表包括通用域名加速子表和不同时段对应的域名加速子表;
所述转发模块504,具体用于:
在当前时段对应的域名加速子表中,判断是否存在所述目标域名及其对应的目标IP地址;
如果不存在,则在所述通用域名加速子表中,判断是否存在所述目标域名及其对应的目标IP地址。
在其中一个实施例中,所述控制模块502,具体用于:
统计全局域名查询状态;
定期根据所述全局域名查询状态更新时段划分标准,并更新不同时段对应的域名加速子表。
上述加速域名查询装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图6所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储域名加速表、待响应表、映射关系、全局被查询状态和全局域名查询状态等。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种加速域名查询方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种加速域名查询方法,其特征在于,所述方法应用于网络节点,所述网络节点至少包括控制模块和转发模块,所述方法包括:
所述转发模块接收终端发送的域名查询请求,确定待查询的目标域名;
所述转发模块判断本地预存的域名加速表中是否缓存有所述目标域名及其对应的目标IP地址;
如果存在,所述转发模块则直接向所述终端反馈所述目标IP地址,否则正常转发所述域名查询请求;
所述转发模块接收远端返回的所述域名查询请求的响应报文,向所述终端反馈所述响应报文;
所述转发模块解析所述响应报文,将解析得到的域名和IP地址的映射关系传输至所述控制模块;
所述控制模块基于所述转发模块上报的映射关系更新域名加速表,并同步到所述转发模块;
所述转发模块基于更新后的域名加速表,判断是否直接响应终端发送的域名查询请求。
2.根据权利要求1所述的方法,其特征在于,所述控制模块基于所述转发模块上报的映射关系更新域名加速表,包括:
所述控制模块统计所述目标域名的全局被查询状态;
当所述目标域名的全局被查询状态满足预设条件时,所述控制模块基于所述转发模块上报的所述目标域名对应的映射关系更新域名加速表。
3.根据权利要求1所述的方法,其特征在于,所述控制模块基于所述转发模块上报的映射关系更新域名加速表,包括:
所述控制模块统计全局域名查询状态;
所述控制模块基于所述映射关系和所述全局域名查询状态定期更新域名加速表。
4.根据权利要求1所述的方法,其特征在于,所述正常转发所述域名查询请求之前,还包括:
所述转发模块将目标域名和所述终端的通信地址添加至待响应表中;
所述转发模块接收远端返回的所述域名查询请求的响应报文,向所述终端反馈所述响应报文,包括:
所述转发模块接收远端返回的任意响应报文,确定所述响应报文的目的地址和携带的域名解析结果;
所述转发模块判断所述待响应表中是否存在与所述目的地址和域名解析结果对应的数据项;
如果存在,所述转发模块则向所述目的地址指向的终端反馈所述响应报文,否则丢弃所述响应报文。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述控制模块获取用户预设的优选域名,通过所述转发模块对所述优选域名进行域名查询;
所述控制模块将查询得到的优选域名和IP地址的映射关系,设置为所述域名加速表的常驻域名。
6.根据权利要求1所述的方法,其特征在于,所述域名加速表包括通用域名加速子表和不同时段对应的域名加速子表;
所述转发模块判断本地预存的域名加速表中是否缓存有所述目标域名及其对应的目标IP地址,包括:
所述转发模块在当前时段对应的域名加速子表中,判断是否存在所述目标域名及其对应的目标IP地址;
如果不存在,所述转发模块则在所述通用域名加速子表中,判断是否存在所述目标域名及其对应的目标IP地址。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述控制模块统计全局域名查询状态;
所述控制模块定期根据所述全局域名查询状态更新时段划分标准,并更新不同时段对应的域名加速子表。
8.一种加速域名查询装置,其特征在于,所述装置包括控制模块和转发模块,其中,所述转发模块,用于:
接收终端发送的域名查询请求,确定待查询的目标域名;
判断本地预存的域名加速表中是否缓存有所述目标域名及其对应的目标IP地址;
如果存在,则直接向所述终端反馈所述目标IP地址,否则正常转发所述域名查询请求;
接收远端返回的所述域名查询请求的响应报文,向所述终端反馈所述响应报文;
解析所述响应报文,将解析得到的域名和IP地址的映射关系传输至所述控制模块;
所述控制模块,用于:
基于所述转发模块上报的映射关系更新域名加速表,并同步到所述转发模块,以使所述转发模块基于更新后的域名加速表,判断是否直接响应终端发送的域名查询请求。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311167024.1A CN117119054A (zh) | 2023-09-08 | 2023-09-08 | 一种加速域名查询方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311167024.1A CN117119054A (zh) | 2023-09-08 | 2023-09-08 | 一种加速域名查询方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117119054A true CN117119054A (zh) | 2023-11-24 |
Family
ID=88794728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311167024.1A Pending CN117119054A (zh) | 2023-09-08 | 2023-09-08 | 一种加速域名查询方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117119054A (zh) |
-
2023
- 2023-09-08 CN CN202311167024.1A patent/CN117119054A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6275837B2 (ja) | サブスクリプション通知を実施するための方法および装置 | |
KR101858542B1 (ko) | 컨테이너 명칭 서버 및 컨테이너 명칭 해석 방법 | |
US8392448B2 (en) | Method and apparatus for transmitting packets in the network | |
US10560422B2 (en) | Enhanced inter-network monitoring and adaptive management of DNS traffic | |
US7958195B2 (en) | Method and apparatus for improving data transfers in peer-to-peer networks | |
US10079800B2 (en) | Client subnet efficiency by equivalence class aggregation | |
US9848059B2 (en) | Content handling method, apparatus, and system | |
WO2018214853A1 (zh) | 一种减小dns报文长度的方法、装置、介质及设备 | |
CN111885216B (zh) | Dns查询方法、装置、设备和存储介质 | |
CN108989220B (zh) | 路由方法和路由系统 | |
US20040122902A1 (en) | Method, apparatus and system for processing message bundles on a network | |
CN117119054A (zh) | 一种加速域名查询方法、装置、计算机设备和存储介质 | |
CN113542409B (zh) | 一种RocketMQ消息队列实例管理系统及处理方法 | |
CN112511440B (zh) | 报文转发方法、系统、存储介质和电子设备 | |
US11909623B2 (en) | Device presence method and system for mesh network management | |
CN114422437A (zh) | 一种异构报文的转发方法及装置 | |
CN113612811A (zh) | 一种在多通道中客户端挂载的方法、系统、设备及介质 | |
CN112714078A (zh) | 网络流量的识别方法、装置、存储介质及服务器 | |
US11652781B2 (en) | Data processing method based on MEC platform, device, and storage medium | |
CN115250265B (zh) | 一种域名系统dns数据同步方法及装置、域名系统 | |
CN109660410B (zh) | 确定网络拓扑的方法及装置 | |
US20230308413A1 (en) | Discovering services across networks based on a multicast domain name system protocol | |
US20220182353A1 (en) | Server connection resets based on domain name server (dns) information | |
CN111107174B (zh) | 一种地址解析方法、装置、电子设备及存储介质 | |
WO2018233844A1 (en) | METHODS AND APPARATUS EMPLOYED TO ANSWER DNS REQUEST AND MANAGE CONNECTION REQUEST |
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 |