CN116112467A - 一种消息处理***、方法、装置及设备 - Google Patents
一种消息处理***、方法、装置及设备 Download PDFInfo
- Publication number
- CN116112467A CN116112467A CN202211667867.3A CN202211667867A CN116112467A CN 116112467 A CN116112467 A CN 116112467A CN 202211667867 A CN202211667867 A CN 202211667867A CN 116112467 A CN116112467 A CN 116112467A
- Authority
- CN
- China
- Prior art keywords
- address
- target
- server
- request message
- request
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供一种消息处理***、方法、装置及设备,涉及通信技术领域,用于减少访问设备的资源开销。该消息处理***包括:访问设备用于向第一DNS服务器发送第一请求消息,第一请求消息指示请求访问目标域名;第一DNS服务器用于确定目标域名对应的第一IP地址和第二IP地址,并向访问设备发送第一响应消息,第一IP地址为目标应用服务器的地址,第二IP地址为目标代理服务器的地址,第一响应消息指示第一IP地址和第二IP地址;访问设备还用于存储目标域名、第一IP地址和第二IP地址之间的对应关系,并向目标代理服务器发送第二请求消息,第二请求消息指示第一IP地址;则目标代理服务器向目标应用服务器发送第三请求消息,指示请求访问目标域名。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种消息处理***、方法、装置及设备。
背景技术
域名解析是将用户请求访问的域名指向到各个网站的IP地址,提高了用户访问网站的便捷性。
目前,一种域名解析方式如下:本地域名***(domain name system,DNS)解析器接收携带用户访问的域名的请求消息之后,可以根据预配置的分流策略,匹配出与该请求消息对应的代理服务器以及对应的应用服务器的互联网协议(internet protocol,IP)地址,并将该请求消息发送给该代理服务器。但这种域名解析方式下,一方面,需要本地DNS解析器预存大量的分流策略,会占用本地DNS解析器的大量存储资源;另一方面,本地DNS解析器需要对所有的请求消息进行处理,导致本地DNS解析器的处理资源开销较大。总而言之,目前这种域名解析方式中,这导致本地DNS解析器的资源开销较大。
发明内容
本申请实施例提供一种消息处理***、方法、装置及设备,用于减少访问设备的资源开销。
第一方面,本申请实施例提供一种消息处理***,包括访问设备、第一DNS服务器、和目标代理服务器,其中:所述访问设备,用于向所述第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名;所述第一DNS服务器,用于确定所述目标域名对应的第一IP地址和第二IP地址,并向所述访问设备发送第一响应消息,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址,所述第一响应消息指示所述第一IP地址和所述第二IP地址;所述访问设备,还用于存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址;所述目标代理服务器,用于根据所述第一IP地址,向所述目标应用服务器发送第三请求消息,所述第三请求消息指示请求访问所述目标域名。
在本申请实施例中,访问设备中无需预先存储第一IP地址和第二IP地址的对应关系,进而减少了访问设备的对应关系的存储量,从而减少了访问设备的存储资源消耗。
在一种可能的实施方式中,所述访问设备运行有请求模块、本地DNS解析器和本地代理转发器;其中:所述本地DNS解析器,用于接收来自所述请求模块的第四请求消息,以及向所述第一DNS服务器发送所述第一请求消息,并接收来自所述第一DNS服务器的所述第一响应消息,所述第四请求消息指示请求目标域名;所述本地DNS解析器,还用于存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并向所述请求模块发送第二响应消息,所述第二响应消息指示所述第一IP地址;所述请求模块,还用于向所述本地代理转发器发送第五请求消息,所述第五请求消息指示所述第一IP地址;所述本地代理转发器,用于读取所述对应关系,根据所述第一IP地址,从所述对应关系中确定所述第二IP地址,并根据所述第二IP地址,向所述目标代理服务器发送所述第二请求消息。
在该实施方式中,本地DNS解析器(如本地DNS服务器)在接收到来自请求模块的请求访问目标域名的第四请求消息后,向第一DNS服务器发送第一请求消息,由第一DNS服务器确定目标域名对应的目标代理服务器的地址(第二IP地址),从第一DNS服务器直接接收第二IP地址,而无需在本地DNS解析器中预存大量的域名与代理服务器之间的对应关系,从而减少了本地DNS解析器需提前存储的对应关系,进而减少了访问设备的存储资源的消耗。另外,本地DNS解析器可直接从第一DNS服务器获取对应关系,无需由本地DNS解析器确定第二IP地址等,有利于减少本地DNS解析器的处理量,因此可减少本地DNS解析器的处理资源的消耗。
在一种可能的实施方式中,所述第一DNS服务器具体用于:向第二DNS服务器发送第六请求消息,所述第六请求消息指示请求解析所述目标域名;接收来自所述第二DNS服务器的第三响应消息,所述第三响应消息指示所述第一IP地址;从多个代理服务器中,确定所述目标代理服务器。
在该实施方式中,第一DNS服务器可向第二DNS服务器请求解析目标域名得到目标域名对应的目标应用服务器的地址(第一IP地址),无需第一DNS服务器解析目标域名,可相对减少第一DNS服务器的处理量。
在一种可能的实施方式中,所述第一DNS服务器具体用于:从所述多个代理服务器中,将负载小于或等于第一阈值,和/或与所述目标应用服务器之间的距离小于或等于第二阈值的代理服务器确定为所述目标代理服务器。
在该实施方式中,第一DNS服务器可将负载较小的代理服务器作为目标代理服务器,可保证目标代理服务器具有足够的处理资源处理请求消息,以保证目标代理服务器能够及时地处理请求消息,也有利于实现多个代理服务器的负载均衡。或者,第一DNS服务器可将距离较小的代理服务器作为目标代理服务器,如此可减少目标代理服务器与目标应用服务器之间的距离,以有利于减小目标代理服务器与目标应用服务器的通信时延,也就有利于提高目标代理服务器与目标应用服务器之间的交互效率。或者,第二DNS可将负载较小且距离较小的代理服务器作为目标代理服务器,如此,可实现负载均衡的同时,减少目标代理服务器与目标应用服务器的通信时延。
在一种可能的实施方式中,所述本地代理转发器还用于:若在预设时间段内,未接收来自所述请求模块的所述第四请求消息,则删除所述对应关系。
在该实施方式中,本地代理转发器在没有接收到第一IP地址的第三请求消息的情况下,表示该对应关系可能是多余的或者是错误存储的对应关系,因此本地代理转发器可删除对应关系,如此及时释放该对应关系占用的存储资源,避免浪费存储资源。
在一种可能的实施方式中,所述第一响应消息为符合扩展机制EDNS协议的消息,且所述第二IP地址被携带在所述第一响应消息的字段中。
在该实施方式中,第二IP地址可被携带在DNS应答包中的字段中,而无需通过专有的消息指示第二IP地址,有利于减少本地DNS解析器和第一DNS服务器之间的交互次数。
第二方面,本申请实施例提供一种消息处理方法,应用于第一DNS服务器,所述方法包括:接收来自访问设备的第一请求消息,所述第一请求消息指示请求访问目标域名;确定与所述目标域名对应的第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址;向所述访问设备发送第一响应消息,以使所述访问设备存储所述目标域名、所述第一IP地址和所述第二IP地址的对应关系,并向所述目标代理服务器发送第二请求消息,所述第一响应消息指示所述第一IP地址和所述第二IP地址,所述第二响应消息指示所述第一IP地址,所述第二请求消息指示第一IP地址。
在一种可能的实施方式中,确定与所述目标域名对应的第一IP地址和第二IP地址,包括:向第二DNS服务器发送第六请求消息,所述第六请求消息指示请求解析所述目标域名;接收来自所述第二DNS服务器的第三响应消息,所述第三响应消息指示所述第一IP地址;从多个代理服务器中,确定所述目标代理服务器。
在一种可能的实施方式中,从多个代理服务器中,确定所述目标代理服务器,包括:从所述多个代理服务器中,将负载小于或等于第一阈值,和/或与所述目标应用服务器之间的距离小于或等于第二阈值的代理服务器确定为所述目标代理服务器。
在一种可能的实施方式中,所述第一响应消息为符合扩展机制EDNS协议的消息,且所述第二IP地址被携带在所述第一响应消息的字段中。
第三方面,本申请实施例提供一种消息处理方法,应用于访问设备,所述方法包括:向第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名;接收来自所述第一DNS服务器的第一响应消息,所述第一响应消息指示第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址;存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址。
在一种可能的实施方式中,所述访问设备运行有请求模块、本地DNS解析器和本地代理转发器;向第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名,包括:所述本地DNS解析器,接收来自所述请求模块的第四请求消息,以及向所述第一DNS服务器发送所述第一请求消息,所述第四请求消息指示请求目标域名;接收来自所述第一DNS服务器的第一响应消息,所述第一响应消息指示第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址,包括:所述本地DNS解析器,接收来自所述第一DNS服务器的所述第一响应消息;存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址,包括:所述本地DNS解析器,存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并向所述请求模块发送第二响应消息,所述第二响应消息指示所述第一IP地址;所述请求模块,向所述本地代理转发器发送第五请求消息,所述第五请求消息指示所述第一IP地址;所述本地代理转发器,读取所述对应关系,根据所述第一IP地址,从所述对应关系中确定所述第二IP地址,并根据所述第二IP地址,向所述目标应用服务器发送所述第二请求消息。
第四方面,本申请实施例提供一种消息处理装置,包括:收发模块,用于接收来自访问设备的第一请求消息,所述第一请求消息指示请求访问目标域名;处理模块,用于确定与所述目标域名对应的第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址;所述收发模块,还用于向所述访问设备发送第一响应消息,以使所述访问设备存储所述目标域名、所述第一IP地址和所述第二IP地址的对应关系,并向所述目标代理服务器发送第二请求消息,所述第一响应消息指示所述第一IP地址和所述第二IP地址,所述第二响应消息指示所述第一IP地址,所述第二请求消息指示第一IP地址。
在一种可能的实施方式中,所述处理模块具体用于,向第二DNS服务器发送第六请求消息,所述第六请求消息指示请求解析所述目标域名;接收来自所述第二DNS服务器的第三响应消息,所述第三响应消息指示所述第一IP地址;从多个代理服务器中,确定所述目标代理服务器。
在一种可能的实施方式中,所述处理模块具体用于,从所述多个代理服务器中,将负载小于或等于第一阈值,和/或与所述目标应用服务器之间的距离小于或等于第二阈值的代理服务器确定为所述目标代理服务器。
在一种可能的实施方式中,所述第一响应消息为符合扩展机制EDNS协议的消息,且所述第二IP地址被携带在所述第一响应消息的字段中。
第五方面,本申请实施例提供一种消息处理装置,包括:收发模块,用于向第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名,以及接收来自所述第一DNS服务器的第一响应消息,所述第一响应消息指示第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址;处理模块,用于存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址。
在一种可能的实施方式中,所述访问设备运行有请求模块、本地DNS解析器和本地代理转发器;向第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名,包括:
所述收发模块,还用于接收来自所述请求模块的第四请求消息,以及向所述第一DNS服务器发送所述第一请求消息,所述第四请求消息指示请求目标域名;
接收来自所述第一DNS服务器的第一响应消息,所述第一响应消息指示第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址,包括:
所述收发模块,还用于接收来自所述第一DNS服务器的所述第一响应消息;
存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址,包括:
所述处理模块,还用于存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并向所述请求模块发送第二响应消息,所述第二响应消息指示所述第一IP地址;
所述收发模块,还用于向所述本地代理转发器发送第五请求消息,所述第五请求消息指示所述第一IP地址;
所述处理模块,还用于读取所述对应关系,根据所述第一IP地址,从所述对应关系中确定所述第二IP地址;
所述收发模块,还用于根据所述第二IP地址,向所述目标应用服务器发送所述第二请求消息。
第六方面,本申请实施例提供一种消息处理设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如第二方面至第三方面及任一可能的实施方式中任一项所述的方法。
第七方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如第二方面至第三方面及任一可能的实施方式中任一项所述的方法。
第八方面,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得上述第二方面至第三方面及任一可能的实施方式中的任一方法被实现。
关于第二方面至第八方面的有益效果可参照前文第一方面所论述的内容,此处不再赘述。
附图说明
图1为本申请实施例提供的一种消息处理***的部署示意图;
图2为本申请实施例提供的一种消息处理***的结构示意图一;
图3为本申请实施例提供的一种消息处理***的结构示意图二;
图4为本申请实施例提供的一种消息处理方法的流程示意图;
图5为本申请实施例提供的一种消息处理装置的结构示意图一;
图6为本申请实施例提供的一种消息处理装置的结构示意图二;
图7为本申请实施例提供的一种消息处理设备的结构示意图。
具体实施方式
为了更好的理解本申请实施例提供的技术方案,下面将结合说明书附图以及具体的实施方式进行详细地说明。
请参照图1,为本申请实施例提供的一种消息处理***的部署示意图。如图1所示,该示意图包括访问设备110、第一DNS服务器120、第二DNS服务器130、目标代理服务器140和目标应用服务器150。
其中,访问设备110可与第一DNS服务器120之间可相互通信,第一DNS服务器120与第二DNS服务器130之间可相互通信,访问设备110与目标代理服务器140之间可相互通信,目标代理服务器140与目标应用服务器150之间可相互通信。
访问设备110例如为终端设备,终端设备包括但不限于手机、个人计算机(personal computer,PC)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobileinternet device,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制中的无线终端设备、无人驾驶中的无线终端设备、智能电网中的无线终端设备、运输安全中的无线终端设备、智慧城市中的无线终端设备,或智慧家庭中的无线终端设备等。
第一DNS服务器120例如为高速缓存服务器(cache only server)。第二DNS服务器130是指具有域名解析功能的DNS服务器,例如为主域服务器(primary name server)或二级域名服务器(second name server)。主域服务器具体例如为运营商DNS服务器或根域名服务器。
目标代理服务器140是指具有消息转发功能的代理服务器(proxy server)。目标代理服务器140例如可支持超文本传输协议(hyper text transfer protocol,HTTP)、文件传输协议(file transfer protocol,FTP)、实时串流协议(Real Time StreamingProtocol,RTSP)、第3版本邮局协议(post office protocol version 3,POP3)、虚拟专用网络(virtual private network,VPN)和防火墙安全会话转换协议(protocol forsessions traversal across firewall securely,或称为SOCKS)中的至少一项。目标应用服务器150是指为用户访问的网站提供服务的服务器。
可选的,访问设备110包括请求模块111、本地DNS解析器112和本地代理转发器113。其中,请求模块111用于向本地DNS解析器112发送请求目标域名的请求消息,本地DNS解析器112用于向第一DNS服务器转发来自请求模块111的请求消息,本地代理转发器113用于向目标代理服务器140转发来自请求模块111的请求目标应用服务器150的请求消息。
其中,请求模块111、本地DNS解析器112和本地代理转发器113可以以软件的形式运行在访问设备110中。
请参照图2,为本申请实施例提供的一种消息处理***的结构示意图,或理解为一种消息处理***的应用场景示意图。如图2所示,该示意图包括消息处理***200、第二DNS服务器230、目标应用服务器250。其中,消息处理***200包括访问设备210、第一DNS服务器220和目标代理服务器240。
其中,图2所示的访问设备210例如为图1所示的访问设备101,图2所述的访问设备210例如为图1所示的访问设备110,图2所示的第一DNS服务器220例如为图1所示的第一DNS服务器120,图2所示的第二DNS服务器230例如为图1所示的第二DNS服务器130,图2所示的目标代理服务器240例如为图1所示的目标代理服务器140,图2所示的目标应用服务器250例如为图1所示的目标应用服务器150。
下面结合图2对消息处理***中各个设备的功能进行说明。
步骤1、访问设备210向第一DNS服务器220发送第一请求消息。相应的,第一DNS服务器220接收来自访问设备210的第一请求消息。
第一请求消息指示请求访问目标域名。示例性的,用户在访问设备210的页面上点击目标网址,访问设备210基于该用户的点击操作,根据该目标网址的目标域名生成第一请求消息,并向第一DNS服务器220发送第一请求消息。第一请求消息用于请求访问目标域名。目标域名例如为aaa.bbb.ccc。
步骤2,第一DNS服务器220确定第一IP地址和第二IP地址。
第一DNS服务器220接收来自本地DNS解析器的第二请求消息后,则可根据第二请求消息中指示的目标域名,确定目标域名对应的目标应用服务器250的IP地址,以及目标代理服务器240的IP地址。在本申请实施例中是以目标应用服务器250的IP地址为第一IP地址,目标代理服务器240的IP地址为第二IP地址进行示例。下面对第一DNS服务器220确定第一IP地址的方式进行介绍。
步骤3、第一DNS服务器220向第二DNS服务器230发送第六请求消息。相应的,第二DNS服务器230接收来自第一DNS服务器220的第六请求消息。
其中,第六请求消息指示请求解析目标域名。第二DNS服务器230可对目标域名进行解析,获得第一IP地址。
第二DNS服务器230可根据目标域名,从第一关系表中查询得到第一IP地址。其中,第一关系表包括域名与IP地址之间的对应关系。或者,第二DNS服务器230也可根据目标域名,从管理域名服务器获得第一IP地址。管理域名服务器可用于管理目标域名的域名服务器。管理域名服务器例如为com域名服务器、edu域名服务器或org域名服务器等。第二DNS服务器230获得第一IP地址之后,可根据第一IP地址生成第三响应消息。
需要说明的是,在第一DNS服务器220预存有第一IP地址的情况下,可无需向第二DNS服务器230发送第六请求消息,即步骤3为可选的步骤。
步骤4、第二DNS服务器230向第一DNS服务器220发送第三响应消息。相应的,第一DNS服务器220接收来自第二DNS服务器230的第三响应消息。
其中,第三响应消息指示第一IP地址。
需要说明的是,在第一DNS服务器220未向第二DNS服务器230发送第五请求消息的情况下,第二DNS服务器230不会向第一DNS服务器220发送第一响应消息,即步骤4为可选的步骤。
下面对第一DNS服务器220确定第二IP地址的方式进行介绍。
方式一、第一DNS服务器220可将默认的代理服务器的IP地址作为目标代理服务器240的第二IP地址,例如,第一DNS服务器220中预配置有第一IP地址与第二IP地址的对应关系,则第一DNS服务器220直接确定第一IP地址对应的第二IP地址。
方式二、第一DNS服务器220也可以是从多个代理服务器中,确定的目标代理服务器240,如此,获得目标代理服务器240的第二IP地址。
方式二下的第一种子方式,第一DNS服务器220根据负载,从多个代理服务器中确定目标代理服务器240。
示例性的,第一DNS服务器220可预存有多个代理服务器的负载状态。在这种情况下,第一DNS服务器220将多个代理服务器中负载小于或等于第一阈值的代理服务器确定为目标代理服务器240。
可选的,如果第一DNS服务器220确定负载小于或等于第一阈值的代理服务器有多个,在这种情况下,第一DNS服务器220可以从负载小于或等于第一阈值的多个代理服务器中随机选择一个代理服务器作为目标代理服务器240,也可以是对多个代理服务器的负载进行由大到小的排序后,选择负载最小的一个代理服务器作为目标代理服务器240,本申请实施例对此不作限定。
方式二下的第二种子方式,第一DNS服务器220根据距离,从多个代理服务器中确定目标代理服务器240。
第一DNS服务器220预存有多个代理服务器的位置信息以及多个应用服务器的位置信息,其中,多个应用服务器包括目标应用服务器250。在这种情况下,第一DNS服务器220根据预存的多个代理器的位置信息以及目标应用服务器250的位置信息,从多个代理服务器中选择与目标应用服务器250之间的距离小于或等于第二阈值的代理服务器为目标代理服务器240。
可选的,如果第一DNS服务器220确定与目标应用服务器250之间的距离小于或等于第二阈值的代理服务器有多个(为便于描述,将这距离小于或等于第二阈值的代理服务器称为多个候选服务器)。在这种情况下,第一DNS服务器220可以从多个候选代理服务器随机选择一个代理服务器作为目标代理服务器240,也可以从多个候选代理服务器中,选择与目标应用服务器250之间的距离最小的代理服务器为目标代理服务器240,本申请实施例对此不作限定。
方式二下的第三种子方式,第一DNS服务器220根据负载以及距离,从多个代理服务器中确定目标代理服务器240。
示例性的,第一DNS服务器220可预存有多个代理服务器的负载状态、多个代理服务器中每个代理服务器与多个应用服务器中每个应用服务器之间的距离。在这种情况下,第一DNS服务器220从多个代理服务器中选择负载小于或等于第一阈值且与目标应用服务器250之间的距离小于或等于第二阈值的代理服务器作为目标代理服务器240。
可选的,第一DNS服务器220确定负载小于或等于第一阈值且与目标应用服务器250之间的距离小于或等于第二阈值的代理服务器有多个(为便于描述,将这距离小于或等于第二阈值的代理服务器称为多个候选服务器),则可从这多个候选代理服务器中随机选择一个代理服务器作为目标代理服务器240,也可以从多个候选代理服务器中,选择负载最小且与目标应用服务器250之间的距离最小的代理服务器作为的目标代理服务器240,本申请实施例对此不作限定。
第一DNS服务器220在确定第一IP地址和第二IP地址后,可根据第一IP地址和第二IP地址,生成第一响应消息。
其中,第一响应消息是符合DNS扩展机制(extension mechanism for DNS,EDNS)协议的消息,第一DNS服务器220将第一IP地址可被承载在第一响应消息的字段(如第一字段)中。同理,第二IP地址也可被承载在第一响应消息的字段(如第二字段)中。例如,第一DNS服务器220通过EDNS协议将第二IP地址携带在第二字段中。第一字段和第二字段可以是第一响应消息的已有字段,或者是第一响应消息中的冗余字段,或者可以是第一响应消息中的新增字段。
步骤5、第一DNS服务器220向访问设备210发送第一响应消息。相应的,访问设备210接收来自第一DNS服务器220的第一响应消息。
其中,第一响应消息指示第一IP地址和第二IP地址。
步骤6、访问设备210存储目标域名、第一IP地址和第二IP地址的对应关系。
访问设备210根据第一IP地址和第二IP地址,确定目标域名、第一IP地址和第二IP地址之间的对应关系,并将该对应关系存储在第二关系表中。其中,一种第二关系表如下表1所示。
表1
域名 | 应用服务器的IP地址 | 代理服务器的IP地址 |
目标域名 | 第一IP地址 | 第二IP地址 |
如表1所示,目标域名对应的应用服务器的IP地址为第一IP地址,即对应目标应用服务器250;目标域名对应的代理服务器的IP地址为第二IP地址,即对应目标代理服务器240。
可选的,访问设备210接收第一响应消息之后,如果访问设备210再次请求访问目标域名,则可直接利用第一响应消息中的第一IP地址,无需再次向第一DNS服务器220发送请求消息,请求目标域名对应的目标应用服务器250的IP地址。
访问设备210接收第一响应消息后,则根据第一IP地址,生成第二请求消息,向目标应用服务器250请求访问目标域名。
步骤7、访问设备210向目标代理服务器240发送第二请求消息。相应的,目标代理服务器240接收来自本地代理转发器的第二请求消息。
目标代理服务器240根据第二请求消息指示的第一IP地址,确定访问设备210请求访问的目标域名对应的应用服务器为目标应用服务器250,生成第三请求消息。
步骤8、目标代理服务器240向目标应用服务器250发送第三请求消息。相应的,目标应用服务器250接收来自目标代理服务器240的第三请求消息。其中,第三请求消息指示请求访问目标域名。
在目标应用服务器250确定允许访问设备210访问目标域名,则确定向访问设备210提供目标域名对应的内容,这种情况下,第四响应消息指示所述内容。
或者,目标应用服务器250确定不允许访问设备210访问目标域名,目标应用服务器250还可拒绝访问设备210访问目标域名,在这种情况下,目标应用服务器250可生成第五响应消息,以及通过目标代理服务器240向访问设备210发送第五响应消息。第五响应消息指示拒绝访问设备210的访问。在本申请实施例中是以目标应用服务器250生成第四响应消息进行示例。
步骤9、目标应用服务器250向目标代理服务器240发送第四响应消息。相应的,目标代理服务器240接收来自目标应用服务器250的第四响应消息。
目标代理服务器240接收第四响应消息之后,则将该第四响应消息转发给本地代理转发器。
步骤10、目标代理服务器240向访问设备210发送第四响应消息。相应的,访问设备210接收来自目标代理服务器240的第四响应消息。
如果第四响应消息指示所述内容,访问设备210接收第四响应消息之后,可显示所述内容。
需要说明的是,在目标应用服务器250拒绝访问设备210访问目标域名的情况下,或者目标应用服务器250异常的情况下,目标应用服务器250不会向目标代理服务器240发送第四响应消息,进而访问设备210也不会接收第四响应消息,即不必执行步骤8-10,即均步骤8-10为可选的步骤。
在一种可能的实施方式中,访问设备210在预设时间段内未再次请求访问目标域名,可以删除对应关系。其中,预设时间段可以是预配置在访问设备210中的。
在一种可能的实施方式中,访问设备中运行有请求模块、本地DNS解析器和本地代理转发器。在这种情况下,请求模块、本地DNS解析器和本地代理转发器可实现前文访问设备的功能。下面结合图3所示的一种消息处理***的结构示意图对访问设备中的各个模块的功能进行说明。
步骤1、请求模块311向本地DNS解析器312发送第四请求消息。相应的,本地DNS解析器312接收来自请求模块311的第四请求消息。
第四请求消息指示请求访问目标域名。其中,第四请求消息的含义可对应参照前文第一请求消息的内容,目标域名的含义可参照前文。
步骤2、本地DNS解析器312向第一DNS服务器320发送第一请求消息,第一请求消息指示请求访问目标域名。相应的,第一DNS服务器320接收来自本地DNS解析器312的第一请求消息。
其中,第一请求消息可以是本地DNS解析器312根据目标域名生成的,也可以为第四请求消息。
第一请求消息为第四请求消息的情况下,本地DNS解析器312可直接进行透传,即将接收来自请求模块311的第四请求消息直接转发给第一DNS服务器320。
第一DNS服务器320接收来自本地DNS解析器312的第一请求消息后,则可根据目标域名,确定目标域名对应的目标应用服务器350的IP地址,以及目标代理服务器340的IP地址。在本申请实施例中是以目标应用服务器350的IP地址为第一IP地址,目标代理服务器340的IP地址为第二IP地址进行示例。下面对第一DNS服务器320确定第一IP地址的方式进行介绍。
步骤3、第一DNS服务器320向第二DNS服务器330发送第六请求消息。相应的,第二DNS服务器330接收来自第一DNS服务器320的第六请求消息。
其中,第六请求消息指示请求解析目标域名。第二DNS服务器330可对目标域名进行解析,获得第一IP地址。其中,第二DNS服务器330获得第一IP地址的内容可参照前文。
需要说明的是,在第一DNS服务器320预存有第一IP地址的情况下,可无需向第二DNS服务器330发送第五请求消息,即步骤3为可选的步骤。
步骤4、第二DNS服务器330向第一DNS服务器320发送第三响应消息。相应的,第一DNS服务器320接收来自第二DNS服务器330的第三响应消息。
其中,第三响应消息指示第一IP地址。
需要说明的是,在第一DNS服务器320未向第二DNS服务器330发送第五请求消息的情况下,第二DNS服务器330不会向第一DNS服务器320发送第一响应消息,即步骤4为可选的步骤。
第一DNS服务器320确定第二IP地址的内容可参照前文。
第一DNS服务器320在确定第一IP地址和第二IP地址后,可根据第一IP地址和第二IP地址,生成第一响应消息。
第一响应消息指示第一IP地址和第二IP地址。其中,第一响应消息的内容可参照前文。
步骤5、第一DNS服务器320向本地DNS解析器312发送第一响应消息。相应的,本地DNS解析器312接收来自第一DNS服务器320的第一响应消息。
其中,第一响应消息指示第一IP地址和第二IP地址。
步骤6、本地DNS解析器312存储目标域名、第一IP地址和第二IP地址的对应关系。
本地DNS解析器312根据第一IP地址和第二IP地址,确定目标域名、第一IP地址和第二IP地址之间的对应关系,并将该对应关系存储在第二关系表中。第二关系表可以是存储在本地资源缓存器314225中的。第二关系表的内容可参照前文。
可选的,本地DNS解析器312接收第一响应消息之后,如果本地DNS解析器312再次接收来自请求模块311的请求访问目标域名的请求消息,则可直接基于第一响应消息中的第一IP地址,向请求模块311发送指示第一IP地址的响应消息,无需再次向第一DNS服务器320发送请求消息,请求目标域名对应的目标应用服务器350的IP地址。
本地DNS解析器312接收第一响应消息后,则向请求模块311返回第一IP地址,即本地DNS解析器312根据第一IP地址生成第二响应消息。
步骤7、本地DNS解析器312向请求模块311发送第二响应消息。相应的,请求模块311接收来自本地DNS解析器312的第二响应消息。
其中,第二响应消息指示第一IP地址。
请求模块311根据第二响应消息,确定目标域名对应的目标应用服务器350的IP地址为第一IP地址,则根据第一IP地址,生成第五请求消息,请求访问目标域名。
步骤8、请求模块311向本地代理转发器313发送第五请求消息。相应的,本地代理转发器313接收来自请求模块311的第五请求消息。其中,第五请求消息指示第一IP地址。
步骤9、本地代理转发器313根据第一IP地址,从对应关系中获取第二IP地址。
本地代理转发器313读取本地资源缓存器314中的第二关系表,并从第二关系表中读取第一IP地址的对应关系,确定与第一IP地址对应的第二IP地址,则根据第二IP地址向目标代理服务器340转发第二请求消息。
步骤10、本地代理转发器313向目标代理服务器340发送第二请求消息。相应的,目标代理服务接收来自本地代理转发器313的第二请求消息。
目标代理服务器340根据第二请求消息指示的第一IP地址,确定请求模块311请求访问的目标域名对应的应用服务器为目标应用服务器350,生成第三请求消息。
步骤11、目标代理服务器340向目标应用服务器350发送第三请求消息。相应的,目标应用服务器350接收来自目标代理服务器340的第三请求消息。其中,第三请求消息指示请求访问目标域名。
在目标应用服务器350确定允许请求模块311访问目标域名,则确定向请求模块311提供目标域名对应的内容,这种情况下,第四响应消息指示所述内容。
或者,目标应用服务器350确定不允许请求模块311访问目标域名,目标应用服务器350还可拒绝请求模块311访问目标域名,在这种情况下,目标应用服务器350可生成第五响应消息,以及通过目标代理服务器340向请求模块311发送第五响应消息。第五响应消息指示拒绝请求模块311的访问。在本申请实施例中是以目标应用服务器350生成第四响应消息进行示例。
步骤12、目标应用服务器350向目标代理服务器340发送第四响应消息。相应的,目标代理服务器340接收来自目标应用服务器350的第四响应消息。
目标代理服务器340接收第四响应消息之后,则将该第四响应消息转发给本地代理转发器313。
步骤13、目标代理服务器340向本地代理转发器313发送第四响应消息。相应的,本地代理转发器313接收来自目标代理服务器340的第四响应消息。
本地代理转发器313接收第四响应消息之后,则将该第四响应消息转发给请求模块311。
步骤14、本地代理转发器313向请求模块311发送第四响应消息。相应的,请求模块311接收来自本地代理转发器313的第四响应消息。
如果第四响应消息指示所述内容,请求模块311210接收第四响应消息之后,可显示所述内容。
需要说明的是,在目标应用服务器350拒绝请求模块311访问目标域名的情况下,或者目标应用服务器350异常的情况下,目标应用服务器350不会向目标代理服务器340发送第四响应消息,进而请求模块311也不会接收第四响应消息,即不必执行步骤12-14,即均步骤12-14为可选的步骤。
在一种可能的实施方式中,本地代理转发器313在预设时间段内未接收来自请求模块311的第三请求消息,可以删除对应关系。
示例性的,本地代理转发器313可直接删除对应关系。或者,本地代理转发器313可指示本地DNS解析器312删除所述对应关系。
其中,预设时间段可以是预配置在本地代理转发器313中的。也就是说,本地代理转发器313在预设时间段没有接收到来自请求模块311的请求访问目标域名或是指示第一IP地址的请求消息,则将目标域名、第一IP地址和第二IP地址的对应关系从第二关系表中删除。
或者,本地代理转发器313在接收第三请求消息后,在预设时间段内未再次接收第三请求消息,则将目标域名、第一IP地址和第二IP地址的对应关系从第二关系表中删除,其中,未再次接收第三请求消息可以理解为未再次接收到请求访问目标域名或第一IP地址的请求消息。
示例性的,以预设时间段为一周为例,请求模块311210在一周内未访问目标域名,那么本地代理转发器313将目标域名、第一IP地址和第二IP地址的对应关系从第二关系表中删除。
基于同一发明构思,本申请实施例提供一种消息处理方法,该方法可应用于消息处理***中。消息处理***例如为前文图1至图2中的任一的消息处理***。请参照图4,为本申请实施例提供的消息处理方法的流程示意图。图4所示的实施例涉及的访问设备例如为图1所示的访问设备110,请求模块例如为图1所示的请求模块111,本地DNS解析器例如为图1所示的本地DNS解析器112,第一DNS服务器例如为图1所示的第一DNS服务器120,第二DNS服务器例如为图1所示的第二DNS服务器130,本地代理转发器例如为图1所示的本地代理转发器113,目标代理服务器例如为图1所示的目标代理服务器140,目标应用服务器例如为图1所示的目标应用服务器150。或者,图4所示的实施例所涉及的第一DNS服务器例如为图2所示的第一DNS服务器220,第二DNS服务器例如为图2所示的第二DNS服务器230,目标代理服务器例如为图2所示的目标代理服务器240,目标应用服务器例如为图2所示的目标应用服务器250。或者,图4所示实施例涉及的请求模块例如为图3所示的请求模块311,本地DNS解析器例如为图3所示的本地DNS解析器312,第一DNS服务器例如为图3所示的第一DNS服务器320,第二DNS服务器例如为图3所示的第二DNS服务器330,本地代理转发器例如为图3所示的本地代理转发器313,目标代理服务器例如为图3所示的目标代理服务器340,目标应用服务器例如为图3所示的目标应用服务器350。下面将结合图4对该方法进行说明。
S401,请求模块向本地DNS解析器发送第四请求消息。相应的,本地DNS解析器接收来自请求模块的第四请求消息。
其中,第四请求消息指示请求访问目标域名。第一请求消息的含义可参照前文。
S402,本地DNS解析器向第一DNS服务器发送第一请求消息。相应的,第一DNS服务器接收来自本地DNS解析器的第一请求消息。
其中,第一请求消息指示请求访问目标域名。第一请求消息的含义可参照前文。
S403,第一DNS服务器向第二DNS服务器发送第六请求消息。相应的,第二DNS服务器接收来自第一DNS服务器的第六请求消息。
第六请求消息指示请求解析目标域名。第六请求消息的含义可参照前文。
需要说明的是,在第一DNS服务器中预存有第一IP地址的情况下,第一DNS服务器无需向第二DNS服务器发送第五请求消息,即无需执行S303,即S403为可选的步骤。
S404,第二DNS服务器对目标域名进行解析,获得第一IP地址。
其中,第一IP地址的含义、以及第二DNS服务器获得第一IP地址的内容可参照前文所论述的内容,此处不再赘述。
需要说明的是,在第一DNS服务器未向第二DNS服务器发送第六请求消息的情况下,第二DNS服务器无需对目标域名进行解析,即无需执行S404,即S404为可选的步骤。
S405,第二DNS服务器向第一DNS服务器发送第三响应消息。相应的,第一DNS服务器接收来自第二DNS服务器的第三响应消息。
第三响应消息指示第一IP地址。第三响应消息的含义可参照前文。
需要说明的是,在第一DNS服务器未向第二DNS服务器发送第六请求消息的情况下,第二DNS服务器无需向第一DNS服务器发送第三响应消息,即无需执行S405,即S405为可选的步骤。
S406,第一DNS服务器从多个代理服务器中,确定目标代理服务器。
第一DNS服务器从多个代理服务器中,确定目标代理服务器的内容可参照前文所论述的内容,此处不再赘述。
S407,第一DNS服务器向本地DNS解析器发送第一响应消息。相应的,本地DNS解析器接收来自第一DNS服务器的第一响应消息。
第一响应消息指示第一IP地址和第二IP地址。第一响应消息的含义可参照前文。
S408,本地DNS解析器存储目标域名、第一IP地址和第二IP地址之间的对应关系。
本地DNS解析器存储目标域名、第一IP地址和第二IP地址之间的对应关系的内容可参照前文所论述的内容,此处不再赘述。
S409,本地DNS解析器向请求模块发送第二响应消息。相应的,请求模块接收来自本地DNS解析器的第二响应消息。
第二响应消息指示第一IP地址。第二响应消息的含义可参照前文。
S410,请求模块向本地代理转发器发送第五请求消息。相应的,本地代理转发器接收来自请求模块的第五请求消息。
第五请求消息指示第一IP地址。第五请求消息的含义可参照前文。
S411,本地代理转发器根据第一IP地址,从对应关系中确定第二IP地址。
其中,本地代理转发器确定第二IP地址的具体内容可参照前文所论述的内容,此处不再赘述。
S412,本地代理转发器向目标代理服务器发送第二请求消息。相应的,目标代理服务器接收来自本地代理转发器的第二请求消息。
第二请求消息的含义可参照前文。
S413,目标代理服务器向目标应用服务器发送第三请求消息。相应的,目标应用服务器接收来自目标代理服务器的第三请求消息。
第三请求消息指示请求访问目标域名。第三请求消息的含义可参照前文。
S414,目标应用服务器向目标代理服务器发送第四响应消息。相应的,目标代理服务器接收来自目标应用服务器的第四响应消息。
在目标应用服务器确定允许请求模块访问目标域名,则确定向请求模块提供目标域名对应的内容,这种情况下,第四响应消息指示所述内容。第四响应消息的含义可参照前文。
S415,目标代理服务器向本地代理转发器发送第四响应消息。相应的,本地代理转发器接收来自目标代理服务器的第四响应消息。
第四响应消息的含义可参照前文。
S416,本地代理转发器向请求模块发送第四响应消息。相应的,请求模块接收来自本地代理转发器的第四响应消息。
在第四响应消息指示目标域名对应的内容的情况下,请求模块可获得该内容,并显示该内容。其中,第四响应消息的含义可参照前文。
需要说明的是,在目标应用服务器拒绝请求模块访问目标域名的情况下,目标应用服务器不会向目标代理服务器发送第四响应消息,进而请求模块也不会接收到第四响应消息,即无需执行S414-S416,即S414-S416为可选的步骤。
S417,目标应用服务器向目标代理服务器发送第五响应消息。相应的,目标代理服务器接收来自目标应用服务器的第五响应消息。
第五响应消息指示拒绝请求模块访问目标域名。第五响应消息的含义可参照前文。
S418,目标代理服务器向本地代理转发器发送第五响应消息。相应的,本地代理转发器接收来自目标代理服务器的第五响应消息。
第五响应消息的含义可参照前文。
S419,本地代理转发器向请求模块发送第五响应消息。相应的,请求模块接收来自本地代理转发器的第五响应消息。
请求模块根据第五响应消息,确定目标应用服务器拒绝提供目标域名对应的内容。其中,第五响应消息的含义可参照前文。
需要说明的是,在目标应用服务器允许请求模块访问目标域名的情况下,目标应用服务器无需向目标代理服务器发送第五响应消息,进而请求模块也不会接收第五响应消息,即无需执行S417-S419,即S417-S419为可选的步骤。
基于同一发明构思,本申请实施例提供一种消息处理装置,该装置用于实现前文第一DNS服务器的功能,相应的,也可实现前文第一DNS服务器执行的步骤。
请参照图5,为本申请实施例提供的一种消息处理装置的结构示意图。如图5所示,该消息处理装置500包括处理模块501和收发模块502。
示例性的,收发模块502,用于接收来自访问设备的第一请求消息,第一请求消息指示请求访问目标域名;处理模块501,用于确定与目标域名对应的第一IP地址和第二IP地址,第一IP地址为目标应用服务器的地址,第二IP地址为目标代理服务器的地址;收发模块502,还用于向访问设备发送第一响应消息,以使访问设备存储目标域名、第一IP地址和第二IP地址的对应关系,并向目标代理服务器发送第二请求消息,第一响应消息指示第一IP地址和第二IP地址,第二响应消息指示第一IP地址,第二请求消息指示第一IP地址。
在一种可能的实施方式中,处理模块501具体用于,向第二DNS服务器发送第六请求消息,第六请求消息指示请求解析目标域名;接收来自第二DNS服务器的第三响应消息,第三响应消息指示第一IP地址;从多个代理服务器中,确定目标代理服务器。
在一种可能的实施方式中,处理模块501具体用于,从多个代理服务器中,将负载小于或等于第一阈值,和/或与目标应用服务器之间的距离小于或等于第二阈值的代理服务器确定为目标代理服务器。
在一种可能的实施方式中,第一响应消息为符合扩展机制EDNS协议的消息,且第二IP地址被携带在第一响应消息的字段中。
基于同一发明构思,本申请实施例提供一种消息处理装置,该装置用于实现前文访问设备的功能,相应的,也可实现前文访问设备执行的步骤。
请参照图6,为本申请实施例提供的一种消息处理装置的结构示意图。如图6所示,该消息处理装置600包括处理模块601和收发模块602。
示例性的,收发模块602,用于向第一DNS服务器发送第一请求消息,第一请求消息指示请求访问目标域名,以及接收来自第一DNS服务器的第一响应消息,第一响应消息指示第一IP地址和第二IP地址,第一IP地址为目标应用服务器的地址,第二IP地址为目标代理服务器的地址;处理模块601,用于存储目标域名、第一IP地址和第二IP地址之间的对应关系,并根据第二IP地址向目标代理服务器发送第二请求消息,第二请求消息指示第一IP地址。
在一种可能的实施方式中,访问设备运行有请求模块、本地DNS解析器和本地代理转发器;向第一DNS服务器发送第一请求消息,第一请求消息指示请求访问目标域名,包括:收发模块602,还用于接收来自请求模块的第四请求消息,以及向第一DNS服务器发送第一请求消息,第四请求消息指示请求目标域名;
接收来自第一DNS服务器的第一响应消息,第一响应消息指示第一IP地址和第二IP地址,第一IP地址为目标应用服务器的地址,第二IP地址为目标代理服务器的地址,包括:收发模块602,还用于接收来自第一DNS服务器的第一响应消息;
存储目标域名、第一IP地址和第二IP地址之间的对应关系,并根据第二IP地址向目标代理服务器发送第二请求消息,第二请求消息指示第一IP地址,包括:处理模块601,还用于存储目标域名、第一IP地址和第二IP地址之间的对应关系,并向请求模块发送第二响应消息,第二响应消息指示第一IP地址;收发模块602,还用于向本地代理转发器发送第五请求消息,第五请求消息指示第一IP地址;处理模块601,还用于读取对应关系,根据第一IP地址,从对应关系中确定第二IP地址;收发模块602,还用于根据第二IP地址,向目标应用服务器发送第二请求消息。
请参照图7,为本申请实施例提供的一种消息处理设备的结构示意图。如图7所示,该消息处理设备700包括至少一个处理器701,以及与至少一个处理器701通信连接的存储器702。
其中,处理器701可以是通用处理器或者专用处理器等。处理器701例如,包括:基带处理器或中央处理器等。所述基带处理器可以用于对通信协议以及通信数据进行处理。所述中央处理器可以用于对消息处理设备进行控制,执行软件程序和/或处理数据。不同的处理器可以是独立的器件,也可以是设置在一个或多个处理电路中,例如,集成在一个或多个专用集成电路上。
在一个实施例中,存储器702存储有可被至少一个处理器701执行的指令,至少一个处理器701通过执行存储器702存储的指令实现如前文第一DNS服务器的功能,相应的,也可实现前文第一DNS服务器执行的步骤。
这种实施例下,该消息处理设备700可实现前文消息处理装置500功能。并且,该消息处理设备700中的至少一个处理器701还可实现前文收发模块502和处理模块501的功能。
在另一个实施例中,存储器702存储有可被至少一个处理器701执行的指令,至少一个处理器701通过执行存储器702存储的指令实现如前文访问设备的功能,相应的,也可实现前文访问设备执行的步骤。
这种实施例下,该消息处理设备700可实现前文消息处理装置600的功能。并且,该消息处理设备700中的至少一个处理器701还可实现前文收发模块602和处理模块601的功能。
基于同一发明构思,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,当计算机指令在计算机上运行时,使得计算机执行如任一的消息处理方法,例如为图3所示的消息处理方法。
基于同一发明构思,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得上述如前文任一所述的消息处理方法,例如实现图3所示的消息处理方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (16)
1.一种消息处理***,其特征在于,包括访问设备、第一DNS服务器、和目标代理服务器,其中:
所述访问设备,用于向所述第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名;
所述第一DNS服务器,用于确定所述目标域名对应的第一IP地址和第二IP地址,并向所述访问设备发送第一响应消息,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址,所述第一响应消息指示所述第一IP地址和所述第二IP地址;
所述访问设备,还用于存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址;
所述目标代理服务器,用于根据所述第一IP地址,向所述目标应用服务器发送第三请求消息,所述第三请求消息指示请求访问所述目标域名。
2.根据权利要求1所述的***,其特征在于,所述访问设备运行有请求模块、本地DNS解析器和本地代理转发器;其中:
所述本地DNS解析器,用于接收来自所述请求模块的第四请求消息,以及向所述第一DNS服务器发送所述第一请求消息,并接收来自所述第一DNS服务器的所述第一响应消息,所述第四请求消息指示请求目标域名;
所述本地DNS解析器,还用于存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并向所述请求模块发送第二响应消息,所述第二响应消息指示所述第一IP地址;
所述请求模块,还用于向所述本地代理转发器发送第五请求消息,所述第五请求消息指示所述第一IP地址;
所述本地代理转发器,用于读取所述对应关系,根据所述第一IP地址,从所述对应关系中确定所述第二IP地址,并根据所述第二IP地址,向所述目标代理服务器发送所述第二请求消息。
3.根据权利要求1所述的***,其特征在于,所述第一DNS服务器具体用于:
向第二DNS服务器发送第六请求消息,所述第六请求消息指示请求解析所述目标域名;
接收来自所述第二DNS服务器的第三响应消息,所述第三响应消息指示所述第一IP地址;
从多个代理服务器中,确定所述目标代理服务器。
4.根据权利要求2所述的***,其特征在于,所述第一DNS服务器具体用于:
从所述多个代理服务器中,将负载小于或等于第一阈值,和/或与所述目标应用服务器之间的距离小于或等于第二阈值的代理服务器确定为所述目标代理服务器。
5.根据权利要求2所述的***,其特征在于,所述本地代理转发器还用于:
若在预设时间段内,未接收来自所述请求模块的所述第四请求消息,则删除所述对应关系。
6.根据权利要求1-5任一项所述的***,其特征在于,所述第一响应消息为符合扩展机制EDNS协议的消息,且所述第二IP地址被携带在所述第一响应消息的字段中。
7.一种消息处理方法,其特征在于,应用于第一DNS服务器,所述方法包括:
接收来自访问设备的第一请求消息,所述第一请求消息指示请求访问目标域名;
确定与所述目标域名对应的第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址;
向所述访问设备发送第一响应消息,以使所述访问设备存储所述目标域名、所述第一IP地址和所述第二IP地址的对应关系,并向所述目标代理服务器发送第二请求消息,所述第一响应消息指示所述第一IP地址和所述第二IP地址,所述第二响应消息指示所述第一IP地址,所述第二请求消息指示第一IP地址。
8.根据权利要求7所述的方法,其特征在于,确定与所述目标域名对应的第一IP地址和第二IP地址,包括:
向第二DNS服务器发送第六请求消息,所述第六请求消息指示请求解析所述目标域名;
接收来自所述第二DNS服务器的第三响应消息,所述第三响应消息指示所述第一IP地址;
从多个代理服务器中,确定所述目标代理服务器。
9.根据权利要求8所述的方法,其特征在于,从多个代理服务器中,确定所述目标代理服务器,包括:
从所述多个代理服务器中,将负载小于或等于第一阈值,和/或与所述目标应用服务器之间的距离小于或等于第二阈值的代理服务器确定为所述目标代理服务器。
10.根据权利要求7-9任一项所述的方法,其特征在于,所述第一响应消息为符合扩展机制EDNS协议的消息,且所述第二IP地址被携带在所述第一响应消息的字段中。
11.一种消息处理方法,其特征在于,应用于访问设备,所述方法包括:
向第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名;
接收来自所述第一DNS服务器的第一响应消息,所述第一响应消息指示第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址;
存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址。
12.根据权利要求11所述的方法,其特征在于,所述访问设备运行有请求模块、本地DNS解析器和本地代理转发器;向第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名,包括:
所述本地DNS解析器,接收来自所述请求模块的第四请求消息,以及向所述第一DNS服务器发送所述第一请求消息,所述第四请求消息指示请求目标域名;
接收来自所述第一DNS服务器的第一响应消息,所述第一响应消息指示第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址,包括:
所述本地DNS解析器,接收来自所述第一DNS服务器的所述第一响应消息;
存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址,包括:
所述本地DNS解析器,存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并向所述请求模块发送第二响应消息,所述第二响应消息指示所述第一IP地址;
所述请求模块,向所述本地代理转发器发送第五请求消息,所述第五请求消息指示所述第一IP地址;
所述本地代理转发器,读取所述对应关系,根据所述第一IP地址,从所述对应关系中确定所述第二IP地址,并根据所述第二IP地址,向所述目标应用服务器发送所述第二请求消息。
13.一种消息处理装置,其特征在于,包括:
收发模块,用于接收来自访问设备的第一请求消息,所述第一请求消息指示请求访问目标域名;
处理模块,用于确定与所述目标域名对应的第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址;
所述收发模块,还用于所述访问设备发送第一响应消息,以使所述访问设备存储所述目标域名、所述第一IP地址和所述第二IP地址的对应关系,并向所述目标代理服务器发送第二请求消息,所述第一响应消息指示所述第一IP地址和所述第二IP地址,所述第二响应消息指示所述第一IP地址,所述第二请求消息指示第一IP地址。
14.一种消息处理装置,其特征在于,包括:
收发模块,用于向第一DNS服务器发送第一请求消息,所述第一请求消息指示请求访问目标域名,以及接收来自所述第一DNS服务器的第一响应消息,所述第一响应消息指示第一IP地址和第二IP地址,所述第一IP地址为目标应用服务器的地址,所述第二IP地址为目标代理服务器的地址;
处理模块,用于存储所述目标域名、所述第一IP地址和所述第二IP地址之间的对应关系,并根据所述第二IP地址向所述目标代理服务器发送第二请求消息,所述第二请求消息指示所述第一IP地址。
15.一种消息处理设备,其特征在于,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如权利要求7-12中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如权利要求7-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211667867.3A CN116112467A (zh) | 2022-12-23 | 2022-12-23 | 一种消息处理***、方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211667867.3A CN116112467A (zh) | 2022-12-23 | 2022-12-23 | 一种消息处理***、方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116112467A true CN116112467A (zh) | 2023-05-12 |
Family
ID=86258962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211667867.3A Pending CN116112467A (zh) | 2022-12-23 | 2022-12-23 | 一种消息处理***、方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116112467A (zh) |
-
2022
- 2022-12-23 CN CN202211667867.3A patent/CN116112467A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111460460B (zh) | 任务访问方法、装置、代理服务器及机器可读存储介质 | |
US20110119306A1 (en) | User-Based DNS Server Access Control | |
US8228848B2 (en) | Method and apparatus for facilitating push communication across a network boundary | |
CN110677405B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
US10693834B2 (en) | Client subnet efficiency by equivalence class aggregation | |
CN102047243A (zh) | 基于类别请求路由 | |
US8935377B2 (en) | Dynamic registration of listener resources for cloud services | |
CN103229489B (zh) | 虚拟机控制策略的配置方法和交换机 | |
CN104378452A (zh) | 一种用于域名解析的方法、装置及*** | |
US11252127B2 (en) | Systems and methods for processing requests for content of a content distribution network | |
CN111212134A (zh) | 一种请求报文处理方法、装置、边缘计算***和电子设备 | |
CN109525684B (zh) | 报文转发方法和装置 | |
CN111327668B (zh) | 网络管理方法、装置、设备和存储介质 | |
CN110225150B (zh) | 不同网络协议间的通信方法、***和存储介质 | |
US20210051573A1 (en) | Inclusion of a message proxy in a service based architecture | |
CN110012118B (zh) | 一种提供网络地址转换nat服务的方法及控制器 | |
CN106027354B (zh) | Vpn客户端的回流方法及装置 | |
CN104995610A (zh) | 平台内的联网 | |
US10243920B1 (en) | Internet protocol address reassignment between virtual machine instances | |
US9860171B2 (en) | Large scale message routing in a distributed network | |
CN104079682A (zh) | 一种基于域名***dns的地址转换方法及装置 | |
US8972604B1 (en) | Network address retention and assignment | |
CN116112467A (zh) | 一种消息处理***、方法、装置及设备 | |
CN110995890B (zh) | 域名请求的调度方法及装置 | |
CN112954084B (zh) | 边缘计算的处理方法、网络功能实例及边缘服务管控中心 |
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 |