一种域名解析方法及装置与流程

文档序号:17299193发布日期:2019-04-03 04:45阅读:195来源:国知局
一种域名解析方法及装置与流程

本说明书实施例涉及网络通信技术领域,尤其涉及一种域名解析方法及装置。



背景技术:

dns(domainnamesystem,域名系统)是一个将网络中主机的域名和ip地址相互映射的分布式数据库,通过便于人记忆、输入的域名与便于计算机处理的ip地址间的映射关系,使人们更方便地访问网络。

域名到ip地址的映射存储在dns服务器中,现有技术中,当用户需要通过用户设备访问某个域名时,用户设备将向dns服务器发送请求报文,dns服务器根据所存储的映射关系,向用户设备返回包括对应ip地址或者上游dns服务器的应答报文。

但是,存在大量相似域名解析需求的网络环境中,各台用户设备可能会在短时间内,向dns服务器发送大量相同域名的解析请求,dns服务器通过现有技术的方案进行应答,可能会导致应答效率低下、浪费网络带宽等。



技术实现要素:

有鉴于此,本说明书实施例提供一种域名解析方法及装置,技术方案如下:

一种域名解析方法,其特征在于,所述方法将至少2个目标用户设备与dns服务器加入1个组播组,该方法包括:

任一所述目标用户设备在确定需要进行域名解析的情况下,在本地预先存储的域名解析结果中,查询是否已存储需要解析的域名;

所述任一目标用户设备在查询到未存储的情况下,向所述dns服务器发送dns请求报文;

所述dns服务器在接收到dns请求报文的情况下,以组播方式回复dns应答报文;

任一所述目标用户设备在监听到组播dns应答报文的情况下,获得所述dns应答报文,并根据该dns应答报文更新本地存储的域名解析结果。

一种域名解析系统,其特征在于,所述系统包括至少2个目标用户设备与dns服务器,并且所述目标用户设备与dns服务器加入1个组播组:

任一所述目标用户设备在确定需要进行域名解析的情况下,在本地预先存储的域名解析结果中,查询是否已存储需要解析的域名;

所述任一目标用户设备在查询到未存储的情况下,向所述dns服务器发送dns请求报文;

所述dns服务器在接收到dns请求报文的情况下,以组播方式回复dns应答报文;

任一所述目标用户设备在监听到组播dns应答报文的情况下,获得所述dns应答报文,并根据该dns应答报文更新本地存储的域名解析结果。

本说明书实施例所提供的技术方案,将具有相似域名解析请求的用户设备,以及dns服务器加入同一组播组中,并且dns服务器通过组播方式返回dns应答报文,以使组播组中的各台用户设备可以更少地向dns服务器请求相同的域名解析结果,从而节约网络带宽与用户设备访问网页的时间。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。

此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。

附图说明

为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1是本说明书实施例的域名解析系统的结构示意图;

图2是本说明书实施例域名解析方法的流程示意图;

图3是本说明书实施例域名解析装置的一种结构示意图;

图4是本说明书实施例域名解析装置的另一种结构示意图;

图5是用于配置本说明书实施例装置的一种设备的结构示意图。

具体实施方式

为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。

针对现有技术存在的问题,本说明书提供一种域名解析方案。

在本说明书的实施例中,域名解析流程涉及至少2台目标用户设备、以及dns服务器,对应的系统架构示意图如图1所示,包括用户设备11、12、……1n,以及dns服务器20。可以理解的是,本说明书实施例中所称的用户设备,可以为手机、平板电脑、笔记本电脑、等等可以通过域名访问网站的电子设备,dns服务器的具体形式,可以是特定的一台服务器或服务器集群等形式。

本说明书实施例的域名解析方案,可以应用于存在大量相似域名解析需求的网络环境中,针对具有相似域名解析需求的2台或者更多台用户设备,可以将这至少2台用户设备和dns服务器加入一个组播组中,dns服务器采用组播技术来发送dns应答报文,同时所有用户设备监听组播的dns应答报文,从而通过组播节省大量带宽。

此外,在确定加入同一组播组的目标用户设备(即具有相似域名解析需求的用户设备)时,可以由运营人员根据各用户、及各台设备的域名解析需求,判断是否存在相似域名解析需求、以及是否加入同一组播组等;也可以通过提取域名解析需求的特征,如常访问的网址、或常访问的网页类型、等等,通过一定的及其算法(如训练模型)确定对应用户设备是否存在相似域名解析需求、以及是否加入同一组播组等;本说明书实施例对此不做限定。

图2为本说明书实施例提供的域名解析方法的交互流程图,具体可以包括以下步骤:

s201,任一所述目标用户设备在确定需要进行域名解析的情况下,在本地预先存储的域名解析结果中,查询是否已存储需要解析的域名;

加入组播组的用户设备,可以在本地预先存储部分常用的域名解析结果,用户设备确定需要进行域名解析的情况有多种,例如,用户设备为笔记本电脑,当用户打开电脑中安装的浏览器,在地址栏中输入域名并访问时,用户设备可以确定需要对用户输入的域名进行解析;又如,用户设备为智能手机,当用户通过某应用软件点击了某个网页链接(域名),则用户设备可以确定需要对用户点击的域名进行解析,从而访问该网页;等等。

当用户设备确定需要进行域名解析时,可以首先在本地预先存储的域名解析结果中进行查找,查询是否已存储了需要解析的域名,如果已存储了,则可以不需要向dns服务器发送域名解析请求,而直接使用预先存储的解析结果即可访问对应的网站。

s202,所述任一目标用户设备在查询到未存储的情况下,向所述dns服务器发送dns请求报文;

如果用户设备在本地预先存储的域名解析结果中,未查询到需要进行解析的域名对应的ip地址,则可以向同一组播组中的dns服务器发送dns请求报文,请求dns服务器返回该域名的解析结果。

s203,所述dns服务器在接收到dns请求报文的情况下,以组播方式回复dns应答报文;

本说明书实施例中dns服务器在接收到dns请求报文的情况下,具体可以通过多种方式,以组播方式回复dns应答报文。

在本说明书实施例的一种具体实施方式中,可以首先根据接收到的dns请求报文,确定需要解析的域名,然后在dns服务器本地与现存储的域名解析结果中,查询是否已存储需要解析的域名及该域名的解析结果,如果查询到已存储,则dns服务器可以以组播方式回复dns应答报文,所述应答报文中包括查询到的域名解析结果。

而如果未查询到已存储,则进一步地,可以确定本dns服务器系统的dns查询方式,然后根据所确定的dns查询方式,获得向用户设备返回的查询结果信息,并以组播方式回复查询结果信息。

例如,在确定dns查询结果为递归查询的情况下,具体地,可以首先根据接收到的dns请求报文,向上游dns服务器发送dns解析请求,然后在接收到上游dns服务器返回的dns解析结果的情况下,根据该dns解析结果,以组播方式回复dns应答报文,所述应答报文中包括所述返回的域名解析结果。

又如,在确定dns查询结果为迭代查询的情况下,具体地,可以首先获得上游dns服务器的地址,然后向发送所述dns请求报文的目标用户设备返回所获得的上游dns服务器的地址,以使该目标用户设备根据该地址向上游dns服务器查询域名解析结果。

s204,任一所述目标用户设备在监听到组播dns应答报文的情况下,获得所述dns应答报文,并根据该dns应答报文更新本地存储的域名解析结果。

如前面所述,本说明书实施例中,加入同一组播组的各用户设备,均具有相似的域名解析需求,因此dns服务器将dns应答报文以组播形式返回,并且组播组中的各目标用户设备均监听组播的dns应答报文。

组播组中的任一用户设备在监听到组播dns应答报文的情况下,可以获得该报文,并根据该dns应答报文更新本地存储的域名解析结果,例如,如果预先未存储该域名及其解析结果,则可以添加到本地存储中;又如,如果预先存储的域名对应的解析结果与该dns应答报文中的不一致,则可以通过该报文中的解析结果更新本地存储的解析结果,从而确保再次访问该域名时,可以访问到正确的ip地址,避免浪费流量又访问错误。

可见,应用本说明书实施例的方案,可以通过组播dns应答报文、及时更新本地存储等方式,节约用户设备获得域名解析结果、访问网页的带宽与时间。

相应于上述方法实施例,本说明书实施例还提供一种域名解析装置,应用于目标用户设备,参见图3所示,该装置可以包括:

域名查询模块110,用于在确定需要进行域名解析的情况下,在本地预先存储的域名解析结果中,查询是否已存储需要解析的域名;

报文发送模块120,用于在查询到未存储的情况下,向所述dns服务器发送dns请求报文,以使dns服务器在接收到dns请求报文的情况下以组播方式回复dns应答报文;

报文监听模块130,用于监听组播的dns应答报文,并在监听到组播dns应答报文的情况下,获得所述dns应答报文,并根据该dns应答报文更新本地存储的域名解析结果。

本说明书实施例还提供一种域名解析装置,应用于dns服务器,参见图4所示,该装置可以包括:

请求报文接收模块210,用于接收目标用户设备发送的dns请求报文;所述dns请求报文为任一所述目标用户设备在查询到本地未存储域名解析结果的情况下,向所述dns服务器发送的报文;

应答报文组播模块220,用于以组播方式回复dns应答报文,以使任一目标用户设备在监听到组播dns应答报文的情况下获得所述dns应答报文并根据该dns应答报文更新本地存储的域名解析结果。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

图5示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。

处理器1010可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。

存储器1020可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。

输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。

总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。

需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。

虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。

由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。

以上所述仅为本说明书实施例的较佳实施例而已,并不用以限制本说明书实施例,凡在本说明书实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书实施例保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1