CN109729183A - 请求处理方法、装置、设备及存储介质 - Google Patents
请求处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN109729183A CN109729183A CN201810472186.9A CN201810472186A CN109729183A CN 109729183 A CN109729183 A CN 109729183A CN 201810472186 A CN201810472186 A CN 201810472186A CN 109729183 A CN109729183 A CN 109729183A
- Authority
- CN
- China
- Prior art keywords
- domain name
- address
- access
- request
- data
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 25
- 238000012545 processing Methods 0.000 claims abstract description 48
- 238000000605 extraction Methods 0.000 claims abstract description 17
- 238000000034 method Methods 0.000 claims description 25
- 238000013507 mapping Methods 0.000 claims description 18
- 239000000284 extract Substances 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- 208000025174 PANDAS Diseases 0.000 description 1
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 description 1
- 240000000220 Panda oleosa Species 0.000 description 1
- 235000016496 Panda oleosa Nutrition 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种请求处理方法、装置、设备及存储介质,该请求处理方法包括:接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;提取请求数据中包含的应用标识,根据应用标识以及访问域名确定下一跳节点;将DNS请求报文发送至下一跳节点,由于是对符合DNS协议的DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据,然后根据该访问域名及请求数据确定出下一跳节点,并将DNS请求报文发送至查询到的下一跳节点,避免了通过自定义协议进行请求处理的成本投入,保证了请求处理的可靠性。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种请求处理方法、装置、设备及存储介质。
背景技术
近年来,网络直播作为一种新兴的网络社交方式,已经为大众所接受并喜爱,随着网络直播的兴起,网络直播平台也成为了一种崭新的社交媒体。在网络直播平台上,用户可以通过手机、平板电脑、个人电脑等上传直播数据,来实现对直播内容的分享。当全国各地的用户需要观看某个主播的直播内容时,就可通过客户端来点击获取相应的直播资源进行观看。
现有的直播网络,当网络中接收到用户请求的当前节点中不存在对应的直播资源时,就需要查询当前节点对应的下一跳节点,去下一跳节点中寻找该直播资源,若下一跳节点中仍不存在,就需要继续查询直至最终找到的节点中存放有该直播资源。目前,一般使用自定义协议去查询下一跳节点,但自定义协议在测试、开发、扩展性、兼容性、可靠性等方面存在投入大、难度大、复杂度高等问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供了一种请求处理方法、装置、设备及存储介质,旨在解决现有技术中对下一跳节点进行查询时,存在的投入高、可靠性低的技术问题。
为实现上述目的,本发明提供了一种请求处理方法,所述方法包括以下步骤:
接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;
提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点;
将所述DNS请求报文发送至所述下一跳节点。
优选地,所述接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据之前,所述方法还包括:
接收数据访问请求,提取所述数据访问请求对应的原始访问域名、原始请求数据以及原始源IP地址;
根据所述原始访问域名、所述原始请求数据以及所述原始源IP地址生成DNS请求报文。
优选地所述根据所述原始访问域名、所述原始请求数据以及所述原始源IP地址生成DNS请求报文的步骤包括:
提取所述原始请求数据中包含的原始应用标识;
对所述原始访问域名、所述原始应用标识以及所述原始源IP地址进行格式化,获得目标二进制数据;
根据所述目标二进制数据对预存DNS报文中的域名字段进行替换,生成DNS请求报文。
优选地,所述提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点的步骤包括:
提取所述请求数据中包含的应用标识;
在映射关系中查找与所述应用标识对应的内容分发网络,所述映射关系中存放有应用标识和内容分发网络之间的对应关系;
基于所述内容分发网络和所述访问域名确定下一跳节点。
优选地,所述基于所述内容分发网络和所述访问域名确定下一跳节点的步骤包括:
获取所述访问域名对应的目标IP地址,以及所述域名字段中包含的原始源IP地址;
基于所述内容分发网络、所述原始源IP地址以及所述目标IP地址确定目标访问路径;
根据所述目标访问路径,查找与当前节点对应的下一跳节点,所述当前节点为当前获取到所述DNS请求报文的节点。
优选地,所述基于所述内容分发网络、所述原始源IP地址以及所述目标IP地址确定目标访问路径的步骤包括:
基于所述内容分发网络,查找出所述原始源IP地址以及所述目标IP地址之间的若干条可用访问路径;
分别获取每条可用访问路径对应的当前网络负载,并将当前网络负载最小的可用访问路径作为目标访问路径。
优选地,所述接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据之后,所述方法还包括:
获取所述当前节点对应的当前IP地址以及所述访问域名对应的目标IP地址;
将所述当前IP地址与所述目标IP地址进行匹配;
在匹配成功时,获取与所述请求数据对应的资源数据,并将所述资源数据发送至所述原始源IP地址对应的用户终端;
在匹配失败时,执行所述提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点的步骤。
此外,为实现上述目的,本发明还提出一种请求处理装置,所述装置包括:报文解析模块、节点确定模块和报文处理模块;
所述报文解析模块,用于接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;
所述节点确定模块,用于提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点;
所述报文处理模块,用于将所述DNS请求报文发送至所述下一跳节点。
此外,为实现上述目的,本发明还提出一种请求处理设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的请求处理程序,所述请求处理程序配置为实现如上文所述的请求处理方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有请求处理程序,所述请求处理程序被处理器执行时实现如上文所述的请求处理方法的步骤。
本发明通过接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;提取请求数据中包含的应用标识,根据应用标识以及访问域名确定下一跳节点;将DNS请求报文发送至下一跳节点,由于是对符合DNS协议的DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据,然后根据该访问域名及请求数据确定出下一跳节点,并将DNS请求报文发送至查询到的下一跳节点,避免了通过自定义协议进行请求处理的成本投入,保证了请求处理的可靠性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的请求处理设备的结构示意图;
图2为本发明请求处理方法第一实施例的流程示意图;
图3为本发明请求处理方法第二实施例的流程示意图;
图4为本发明请求处理方法第三实施例的流程示意图;
图5为本发明请求处理方法第四实施例的流程示意图;
图6为本发明请求处理装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的请求处理设备结构示意图。
如图1所示,该请求处理设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对请求处理设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、数据存储模块、网络通信模块、用户接口模块以及请求处理程序。
在图1所示的请求处理设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明请求处理设备中的处理器1001、存储器1005可以设置在请求处理设备中,所述请求处理设备通过处理器1001调用存储器1005中存储的请求处理程序,并执行本发明实施例提供的请求处理方法。
本发明实施例提供了一种请求处理方法,参照图2,图2为本发明请求处理方法第一实施例的流程示意图。
本实施例中,所述方法包括以下步骤:
步骤S10:接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;
需要说明的是,本实施例方法的执行主体可以是(网络)节点,所述节点可以是一个拥有自己唯一网络地址的,与具有独立地址和具有传送或接收数据功能的网络(如,由众多服务器构成的直播网络,该直播网络可以是一种内容分发网络)相连的设备;也可以是直播网络服务商设置在不同地区的缓存服务器,这些缓存服务器可布置到用户访问相对集中的地区或网络中,在用户进行访问时,利用全局负载技术将用户的访问指向距离最近的工作正常的缓存服务器上,由缓存服务器直接响应用户请求。
在本实施例及下述各实施例中,将当前获取到域名系统(Domain Name System,DNS)请求报文的节点作为当前节点。
在具体实现中,当前节点在接收到上一跳节点发送的DNS请求报文时,对所述DNS请求报文进行解析以提取其对应的域名字段,然后根据提取出的域名字段确定出将要访问的域名以及请求的数据。
步骤S20:提取所述请求数据中携带的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点;
可以理解的是,一般情况下,不同的直播平台所对应的直播网络都不相同,例如:直播平台A所对应的直播网络为网络1,直播平台B所对应的直播网络可能为网络2,但实际情况中也可能存在同一服务器(节点)被不同直播平台的直播网络或被同一直播平台的直播网络中不同线路交叉使用的情况,因此为了使这些被交叉使用的服务器在接收到DNS请求报文时,能够快速准确地确定该DNS请求报文应该在哪一直播网络或线路中进行传输,可预先对每个直播平台配置一个应用标识,然后通过该应用标识对从该直播平台应用程序或客户端发出的数据访问请求进行标记,以便于每个接收到DNS请求报文的节点都可以快速准确地根据该应用标识确定出该直播平台应用程序或客户端所使用的直播网络或线路。
在具体实现中,当前节点可通过提取所述请求数据中携带的应用标识;然后根据应用标识确定当前节点所属的内容分发网络,再基于所述内容分发网络和所述访问域名确定下一跳节点。具体的,在确定出最终的内容分发网络后,当前节点即可根据该内容分发网络对应的网络拓扑以及所述访问域名对应的网络协议(Internet Protocol,IP)地址,从所述网络拓扑中确定出下一跳节点。
进一步的,当前节点在接收到DNS请求报文还将获取自身对应的当前IP地址以及所述访问域名对应的目标IP地址;将所述当前IP地址与所述目标IP地址进行匹配;在匹配成功时,获取与所述请求数据对应的资源数据,并将所述资源数据发送至所述原始源IP地址对应的用户终端;在匹配失败时,执行所述步骤S20。即每个接收到所述DNS请求报文的节点都会检测自身是否为该请求报文对应的响应节点或目标节点;若是,则解析该DNS请求报文获取对应的资源数据,并将该资源数据发送至所述原始源IP地址对应的用户终端;若不是,则继续将该DNS请求报文进行下发,直至找到最终的响应节点或目标节点。本实施例中,所述原始源IP地址为直播平台应用程序或客户端对应终端的IP地址。
步骤S30:将所述DNS请求报文发送至所述下一跳节点。
在具体实现中,当前节点在通过将自身对应的当前IP地址以及访问域名对应的目标IP地址进行匹配且匹配失败时,可继续将DNS请求报文发送至确定出的下一跳节点,由下一跳节点继续根据DNS请求报文确定自身是否为DNS请求报文对应的响应节点或目标节点,如此循环,直至将所述DNS请求报文发送至最终的响应节点或目标节点。
本实施例通过接收DNS请求报文,对DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;提取请求数据中包含的应用标识,根据应用标识以及访问域名确定下一跳节点;然后将DNS请求报文发送至下一跳节点;由于是通过规范的DNS协议进行下一跳节点的查询,然后将DNS请求报文发送至查询到的下一跳节点,因而能够实现对请求的快速处理,与现有的通过自定义协议进行节点查询与请求处理方式相比,大大降低了请求的处理成本及处理难度。
参考图3,图3为本发明请求处理方法第二实施例的流程示意图。
基于上述第一实施例,本实施例提出的请求处理方法,在所述步骤S10之前,还包括:
步骤S01:接收数据访问请求,提取所述数据访问请求对应的原始访问域名、原始请求数据以及原始源IP地址;
应理解的是,作为一种二进制协议,DNS协议的信息结构除了域名字段部分是可变的,其他已经固定不可更改。本发明为了使用DNS协议实现对数据访问请求进行调度,采用将直播网络中查询下一站地址需要的访问域名、请求数据以及原始源IP等信息进行重新规范,然后将规范后的信息数据放入DNS协议的域名字段部分生成DNS请求报文,以使每个接收到该DNS请求报文的节点都可以根据规范后的信息数据顺利地查询出下一跳节点,实现对数据访问请求的响应。
需要说明的是,所述数据访问请求可以为用户通过直播平台应用程序或客户端发起的访问请求,所述数据访问请求中包含待访问的原始域名地址,原始请求数据以及原始源IP地址等信息。
在具体实现中,接收到所述数据访问请求的节点对所述数据访问请求进行解析,提取其中包含的原始访问域名、原始请求数据以及原始源IP地址等信息。
步骤S02:根据所述原始访问域名、所述原始请求数据以及所述原始源IP地址生成DNS请求报文。
在本步骤中,最先接收到所述数据访问请求的节点(以下称为初始节点)在获取到所述原始访问域名、原始请求数据以及原始源IP地址后,可按照预设规则对所述数据访问请求进行重新定义获得DNS请求报文,具体的,初始节点可通过提取所述请求数据中包含的原始应用标识;对所述原始访问域名、所述原始应用标识以及所述原始源IP地址进行格式化,获得满足二进制格式的目标数字数据,即目标二进制数据;然后根据所述目标二进制数据对DNS报文中的域名字段进行替换,生成新的DNS请求报文。
进一步地,在生成所述目标二进制数据后,初始节点还会对所述目标二进制数据的字节长度进行检测,检测所述字节长度是否超过DNS协议域名字段部分规定的字节长度;在不超过时,再根据所述目标二进制数据对DNS报文中的域名字段进行替换,生成DNS请求报文;在超过时,则对所述原始访问域名进行压缩,然后将压缩后的访问域名、原始请求数据以及原始源IP地址进行二进制格式化,再利用格式化后的数字数据对DNS报文中的域名字段进行替换,生成DNS请求报文。
本实施例通过接收数据访问请求,提取数据访问请求对应的原始访问域名、原始请求数据以及原始源IP地址;根据所述原始访问域名、原始请求数据以及原始源IP地址生成DNS请求报文,通过对现有DNS协议进行规范定义来通过重新规范后的DNS请求报文传递访问请求,进一步降低了对请求的处理成本。
参考图4,图4为本发明请求处理方法第三实施例的流程示意图。
基于上述各实施例,本实施例提出的请求处理方法中,所述步骤S20具体包括以下步骤:
步骤S201:提取所述请求数据中包含的应用标识;
在具体实现中,当前节点对请求数据进行信息提取,获取所述请求数据中包含的应用标识,所述应用标识可以是用户发送所述数据访问请求的直播平台应用程序或客户端对应的标识信息,例如,快手直播:KSTV、斗鱼直播:DYTV、熊猫直播XMTV或PandaTV等,所述标识信息的具体表现形式本实施例不做限制。
步骤S202:在映射关系中查找与所述应用标识对应的内容分发网络,所述映射关系中存放有应用标识和内容分发网络之间的对应关系;
需要说明的是,所述映射关系可以是预先建立的一种两个元素的集之间元素相互“对应”的关系,在本实施例中,映射端源为直播平台的应用标识,目标端源为直播平台所使用的内容分发网络,即所述,所述映射关系中存放有应用标识和内容分发网络之间的对应关系,且该映射关系可预先保存在每一个节点的存储空间中。
在具体实现中,当前节点通过在本地存储的映射关系中查找与所述应用标识对应的内容分发网络,以实现对自身所在内容分发网络的快速确定。
步骤S203:基于所述内容分发网络和所述访问域名确定下一跳节点。
在具体实现中,当前节点确定出内容分发网络后,即可根据该内容分发网络对应的网络拓扑以及所述访问域名对应的IP地址,从所述网络拓扑中确定出下一跳节点。
本实施例当前节点提取所述请求数据中包含的应用标识;在映射关系中查找与所述应用标识对应的内容分发网络;基于所述内容分发网络和所述访问域名确定下一跳节点,实现了对下一跳节点快速准确的获取。
参考图5,图5为本发明请求处理方法第四实施例的流程示意图。
基于上述各实施例,本实施例提出的请求处理方法中,所述步骤S203可具体包括:
步骤S2031:获取所述访问域名对应的目标IP地址,以及所述域名字段中包含的原始源IP地址;
应理解的是,当前节点在获取到访问域名时,可通过所述域名查询出该域名对应的IP地址,即所述目标IP地址,又或是将所述访问域名发送至域名解析服务器由其解析成IP地址,例如访问域名为:www.baidu.com,对应的IP地址则为119.75.218.70。
在具体实现中,当前节点可通过域名查询工具(如,nslookup、dig、bind等)查询出访问域名对应的目标IP地址。
步骤S2032:基于所述内容分发网络、所述原始源IP地址以及所述目标IP地址确定目标访问路径;
应理解的是,内容分发网络(Content Delivery Network,CDN)是由通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地获取网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等信息。
具体的,在确定出所属的内容分发网络后,当前节点可基于所述内容分发网络,查找出原始源IP地址以及目标IP地址之间的若干条可用访问路径;所述可用访问路径可以是当前时刻能够将原始源IP地址与目标IP地址进行连接的网路路径。
可理解的是,网络负载越大表明当前时间节点该网络路径越拥堵。本实施例为了实现对DNS请求报文的快速处理,在筛选出若干条可用访问路径后,当前节点可分别获取每条可用访问路径对应的当前网络负载,并将当前网络负载最小的可用访问路径作为目标访问路径。
步骤S2033:根据所述目标访问路径,查找与当前节点对应的下一跳节点。
在具体实现中,当前节点在确定最终的目标访问路径后,即可根据该目标访问路径确定出对应的下一跳节点,并将DNS请求报文发送至所述下一跳节点,本实施例中所述当前节点为当前获取到所述DNS请求报文的节点。
本实施例当前节点获取访问域名对应的目标IP地址,以及域名字段中包含的原始源IP地址;基于内容分发网络、原始源IP地址以及目标IP地址确定目标访问路径,然后根据目标访问路径查找与当前节点对应的下一跳节点,由于是根据原始源IP地址以及目标IP地址确定目标访问路径,再基于该目标访问路径查询出下一跳节点,避免了对当前节点相邻的所有节点进行遍历查询,获得下一跳节点的繁琐操作。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有请求处理程序,所述请求处理程序被处理器执行时实现如上文所述的请求处理方法的步骤。
参照图6,图6为本发明请求处理装置第一实施例的结构框图。
如图6所示,本发明实施例提出的请求处理装置包括:报文解析模块601、节点确定模块602和报文处理模块603;
所述报文解析模块601,用于接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;
在具体实现中,报文解析模块601在接收到上一跳节点发送的DNS请求报文时,对所述DNS请求报文进行解析以提取其对应的域名字段,然后根据提取出的域名字段确定出将要访问的域名以及请求的数据。
所述节点确定模块602,用于提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点;
在具体实现中,节点确定模块602可通过提取所述请求数据中携带的应用标识;然后根据应用标识确定当前节点所属的内容分发网络,再基于所述内容分发网络和所述访问域名确定下一跳节点。具体的,在确定出最终的内容分发网络后,当前节点即可根据该内容分发网络对应的网络拓扑以及所述访问域名对应的网络协议地址,从所述网络拓扑中确定出下一跳节点。
进一步的,节点确定模块602在接收到DNS请求报文还将获取自身对应的当前IP地址以及所述访问域名对应的目标IP地址;将所述当前IP地址与所述目标IP地址进行匹配;在匹配成功时,获取与所述请求数据对应的资源数据,并将所述资源数据发送至所述源IP地址对应的用户终端。
所述报文处理模块603,用于将所述DNS请求报文发送至所述下一跳节点。
在具体实现中,节点确定模块602在通过将自身对应的当前IP地址以及访问域名对应的目标IP地址进行匹配且匹配失败时,可由报文处理模块603将DNS请求报文发送至确定出的下一跳节点,由下一跳节点继续根据DNS请求报文确定自身是否为DNS请求报文对应的响应节点或目标节点,如此循环,直至将所述DNS请求报文发送至最终的响应节点或目标节点。
本实施例用户请求处理装置通过获取DNS请求报文对DNS请求报文进行解析,获取与DNS请求报文对应的访问域名以及请求数据;提取请求数据中携带的用户标识,根据用户标识以及访问域名确定下一跳节点;由于是通过规范的DNS协议进行下一跳节点的查询,然后将DNS请求报文发送至查询到的下一跳节点,因而能够实现对用户请求的快速处理,与现有的通过自定义协议进行节点查询与请求处理方式相比,大大降低了用户请求的处理成本及处理难度。
基于上述请求处理装置第一实施例,提出请求处理装置第二实施例。
在本实施例中,所述请求处理装置还包括报文生成模块,所述报文生成模块,用于接收数据访问请求,提取所述数据访问请求对应的原始访问域名、原始请求数据以及原始源IP地址,根据所述原始访问域名、所述原始请求数据以及所述原始源IP地址生成DNS请求报文。
具体的,报文生成模块对所述数据访问请求进行解析,提取其中包含的原始访问域名、原始请求数据以及原始源IP地址等信息。
在具体实现中,所述报文生成模块还可通过提取所述请求数据中包含的原始应用标识;对所述原始访问域名、所述原始应用标识以及所述原始源IP地址进行格式化,获得满足二进制格式的目标数字数据,即目标二进制数据;然后根据所述目标二进制数据对DNS报文中的域名字段进行替换,生成新的DNS请求报文。
进一步地,在生成所述目标二进制数据后,所述报文生成模块还会对所述目标二进制数据的字节长度进行检测,检测所述字节长度是否超过DNS协议域名字段部分规定的字节长度;在不超过时,再根据所述目标二进制数据对DNS报文中的域名字段进行替换,生成DNS请求报文;在超过时,则对所述原始访问域名进行压缩,然后将压缩后的访问域名、原始请求数据以及原始源IP地址进行二进制格式化,再利用格式化后的数字数据对DNS报文中的域名字段进行替换,生成DNS请求报文。
进一步地,在本实施例中所述节点确定模块602,还用于提取所述请求数据中包含的应用标识,在映射关系中查找与所述应用标识对应的内容分发网络,基于所述内容分发网络和所述访问域名确定下一跳节点。;
需要说明的是,所述映射关系可以是预先建立的一种两个元素的集之间元素相互“对应”的关系,在本实施例中,映射端源为直播平台的应用标识,目标端源为直播平台所使用的内容分发网络,即所述,所述映射关系中存放有应用标识和内容分发网络之间的对应关系,且该映射关系可预先保存在每一个节点的存储空间中。
在具体实现中,节点确定模块602通过在本地存储的映射关系中查找与所述应用标识对应的内容分发网络,以实现对自身所在内容分发网络的快速确定,且在确定出内容分发网络后,根据该内容分发网络对应的网络拓扑以及所述访问域名对应的IP地址,从所述网络拓扑中确定出下一跳节点。
进一步地,所述节点确定模块602,还用于获取所述访问域名对应的目标IP地址,以及所述域名字段中包含的原始源IP地址,基于所述内容分发网络、所述原始源IP地址以及所述目标IP地址确定目标访问路径,根据所述目标访问路径,查找与当前节点对应的下一跳节点。
应理解的是,节点确定模块602在获取到访问域名时,可通过所述域名查询出该域名对应的IP地址,即所述目标IP地址,又或是将所述访问域名发送至域名解析服务器由其解析成IP地址,例如访问域名为:www.baidu.com,对应的IP地址则为119.75.218.70。
在具体实现中,节点确定模块602可通过域名查询工具(如,nslookup、dig、bind等)查询出访问域名对应的目标IP地址。
可理解的是,内容分发网络是由通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地获取网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等信息。
具体的,在确定出所属的内容分发网络后,节点确定模块602还可基于所述内容分发网络,查找出原始源IP地址以及目标IP地址之间的若干条可用访问路径;所述可用访问路径可以是当前时刻能够将原始源IP地址与目标IP地址进行连接的网路路径。
需要说明的是,网络负载越大表明当前时间节点该网络路径越拥堵。本实施例为了实现对DNS请求报文的快速处理,在筛选出若干条可用访问路径后,节点确定模块602还用于分别获取每条可用访问路径对应的当前网络负载,并将当前网络负载最小的可用访问路径作为目标访问路径,然后可根据该目标访问路径确定出对应的下一跳节点,并将DNS请求报文发送至所述下一跳节点。
本实施例请求处理装置通过获取访问域名对应的目标IP地址,以及域名字段中包含的原始源IP地址;基于内容分发网络、原始源IP地址以及目标IP地址确定目标访问路径,然后根据目标访问路径查找与当前节点对应的下一跳节点,由于是根据原始源IP地址以及目标IP地址确定目标访问路径,再基于该目标访问路径查询出下一跳节点,避免了对当前节点相邻的所有节点进行遍历查询,获得下一跳节点的繁琐操作。
本发明请求处理装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种请求处理方法,其特征在于,所述方法包括:
接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;
提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点;
将所述DNS请求报文发送至所述下一跳节点。
2.如权利要求1所述的方法,其特征在于,所述接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据之前,所述方法还包括:
接收数据访问请求,提取所述数据访问请求对应的原始访问域名、原始请求数据以及原始源IP地址;
根据所述原始访问域名、所述原始请求数据以及所述原始源IP地址生成DNS请求报文。
3.如权利要求2所述的方法,其特征在于,所述根据所述原始访问域名、所述原始请求数据以及所述原始源IP地址生成DNS请求报文的步骤包括:
提取所述原始请求数据中包含的原始应用标识;
对所述原始访问域名、所述原始应用标识以及所述原始源IP地址进行格式化,获得目标二进制数据;
根据所述目标二进制数据对预存DNS报文中的域名字段进行替换,生成DNS请求报文。
4.如权利要求1所述的方法,其特征在于,所述提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点的步骤包括:
提取所述请求数据中包含的应用标识;
在映射关系中查找与所述应用标识对应的内容分发网络,所述映射关系中存放有应用标识和内容分发网络之间的对应关系;
基于所述内容分发网络和所述访问域名确定下一跳节点。
5.如权利要求4所述的方法,其特征在于,所述基于所述内容分发网络和所述访问域名确定下一跳节点的步骤包括:
获取所述访问域名对应的目标IP地址,以及所述域名字段中包含的原始源IP地址;
基于所述内容分发网络、所述原始源IP地址以及所述目标IP地址确定目标访问路径;
根据所述目标访问路径,查找与当前节点对应的下一跳节点,所述当前节点为当前获取到所述DNS请求报文的节点。
6.如权利要求5所述的方法,其特征在于,所述基于所述内容分发网络、所述原始源IP地址以及所述目标IP地址确定目标访问路径的步骤包括:
基于所述内容分发网络,查找出所述原始源IP地址以及所述目标IP地址之间的若干条可用访问路径;
分别获取每条可用访问路径对应的当前网络负载,并将当前网络负载最小的可用访问路径作为目标访问路径。
7.如权利要求6所述的方法,其特征在于,所述接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据之后,所述方法还包括:
获取所述当前节点对应的当前IP地址以及所述访问域名对应的目标IP地址;
将所述当前IP地址与所述目标IP地址进行匹配;
在匹配成功时,获取与所述请求数据对应的资源数据,并将所述资源数据发送至所述原始源IP地址对应的用户终端;
在匹配失败时,执行所述提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点的步骤。
8.一种请求处理装置,其特征在于,所述装置包括:报文解析模块、节点确定模块和报文处理模块;
所述报文解析模块,用于接收DNS请求报文,对所述DNS请求报文进行域名字段提取,并根据提取出的域名字段确定访问域名以及请求数据;
所述节点确定模块,用于提取所述请求数据中包含的应用标识,根据所述应用标识以及所述访问域名确定下一跳节点;
所述报文处理模块,用于将所述DNS请求报文发送至所述下一跳节点。
9.一种请求处理设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的请求处理程序,所述请求处理程序配置为实现如权利要求1至7中任一项所述的请求处理方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有请求处理程序,所述请求处理程序被处理器执行时实现如权利要求1至7任一项所述的请求处理方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810472186.9A CN109729183B (zh) | 2018-05-16 | 2018-05-16 | 请求处理方法、装置、设备及存储介质 |
PCT/CN2018/094724 WO2019218441A1 (zh) | 2018-05-16 | 2018-07-06 | 请求处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810472186.9A CN109729183B (zh) | 2018-05-16 | 2018-05-16 | 请求处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109729183A true CN109729183A (zh) | 2019-05-07 |
CN109729183B CN109729183B (zh) | 2021-10-26 |
Family
ID=66293794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810472186.9A Active CN109729183B (zh) | 2018-05-16 | 2018-05-16 | 请求处理方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109729183B (zh) |
WO (1) | WO2019218441A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110896412A (zh) * | 2019-08-08 | 2020-03-20 | 腾讯科技(深圳)有限公司 | 网络请求处理方法及装置、电子设备 |
CN111131907A (zh) * | 2019-12-31 | 2020-05-08 | 广州市百果园信息技术有限公司 | 一种直播内容引入方法、装置、存储介质及设备 |
CN117749762A (zh) * | 2023-10-19 | 2024-03-22 | 天翼安全科技有限公司 | 一种dns访问请求处理方法、装置、设备及存储介质 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113132447A (zh) * | 2020-01-15 | 2021-07-16 | 北京沃东天骏信息技术有限公司 | 反向代理的方法和系统 |
CN111966445B (zh) * | 2020-06-30 | 2023-07-25 | 北京百度网讯科技有限公司 | 调用应用程序接口的处理方法和装置 |
CN112104605B (zh) * | 2020-08-10 | 2023-02-03 | 深信服科技股份有限公司 | 网络管理方法、设备及存储介质 |
CN112910718B (zh) * | 2021-03-17 | 2022-10-11 | 中国电子信息产业集团有限公司第六研究所 | 一种基于dns系统的网络空间测绘方法 |
CN113676561A (zh) * | 2021-07-16 | 2021-11-19 | 阿里巴巴新加坡控股有限公司 | 域名访问控制方法及装置 |
CN114553727B (zh) * | 2022-02-18 | 2024-08-09 | 网宿科技股份有限公司 | 一种基于内容分发网络的数据处理方法及装置 |
CN114466018B (zh) * | 2022-03-22 | 2024-08-20 | 北京有竹居网络技术有限公司 | 内容分发网络的调度方法、装置、存储介质及电子设备 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101237442A (zh) * | 2007-01-29 | 2008-08-06 | 华为技术有限公司 | 一体化网络中终端标识解析和业务传输方法、系统及装置 |
CN101841548A (zh) * | 2010-05-18 | 2010-09-22 | 中国科学院软件研究所 | 主机标识到网络地址的映射方法 |
CN102077189A (zh) * | 2008-06-30 | 2011-05-25 | 亚马逊技术有限公司 | 使用网络计算组件的请求路由 |
US20110202669A1 (en) * | 2008-08-11 | 2011-08-18 | Shanghai Kelu Software Co., Ltd. | Method for Network Domain Name Resolution and the Resolution Device Thereof |
CN102388632A (zh) * | 2011-08-26 | 2012-03-21 | 华为技术有限公司 | 应用信息推送方法、系统和网元 |
CN103338213A (zh) * | 2013-07-19 | 2013-10-02 | 中国人民解放军理工大学 | 本地设备与ims网络互通的方法、系统及接入网关 |
CN103634214A (zh) * | 2013-11-25 | 2014-03-12 | 北京神州绿盟信息安全科技股份有限公司 | 一种路由信息生成方法及装置 |
CN103747273A (zh) * | 2013-12-23 | 2014-04-23 | 乐视网信息技术(北京)股份有限公司 | 一种视频请求方法、设备及系统 |
CN105872735A (zh) * | 2016-04-25 | 2016-08-17 | 乐视控股(北京)有限公司 | 一种信息处理方法及电子设备 |
CN106331206A (zh) * | 2015-06-30 | 2017-01-11 | 杭州华三通信技术有限公司 | 域名管理方法及装置 |
US20170041333A1 (en) * | 2015-08-07 | 2017-02-09 | Cisco Technology, Inc. | Domain classification based on domain name system (dns) traffic |
WO2017184528A2 (en) * | 2016-04-19 | 2017-10-26 | Cisco Technology, Inc. | Content routing in an ip network |
CN107786678A (zh) * | 2016-08-24 | 2018-03-09 | 北京金山云网络技术有限公司 | 域名解析方法、装置及系统 |
-
2018
- 2018-05-16 CN CN201810472186.9A patent/CN109729183B/zh active Active
- 2018-07-06 WO PCT/CN2018/094724 patent/WO2019218441A1/zh active Application Filing
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101237442A (zh) * | 2007-01-29 | 2008-08-06 | 华为技术有限公司 | 一体化网络中终端标识解析和业务传输方法、系统及装置 |
CN102077189A (zh) * | 2008-06-30 | 2011-05-25 | 亚马逊技术有限公司 | 使用网络计算组件的请求路由 |
US20110202669A1 (en) * | 2008-08-11 | 2011-08-18 | Shanghai Kelu Software Co., Ltd. | Method for Network Domain Name Resolution and the Resolution Device Thereof |
CN101841548A (zh) * | 2010-05-18 | 2010-09-22 | 中国科学院软件研究所 | 主机标识到网络地址的映射方法 |
CN102388632A (zh) * | 2011-08-26 | 2012-03-21 | 华为技术有限公司 | 应用信息推送方法、系统和网元 |
CN103338213A (zh) * | 2013-07-19 | 2013-10-02 | 中国人民解放军理工大学 | 本地设备与ims网络互通的方法、系统及接入网关 |
CN103634214A (zh) * | 2013-11-25 | 2014-03-12 | 北京神州绿盟信息安全科技股份有限公司 | 一种路由信息生成方法及装置 |
CN103747273A (zh) * | 2013-12-23 | 2014-04-23 | 乐视网信息技术(北京)股份有限公司 | 一种视频请求方法、设备及系统 |
CN106331206A (zh) * | 2015-06-30 | 2017-01-11 | 杭州华三通信技术有限公司 | 域名管理方法及装置 |
US20170041333A1 (en) * | 2015-08-07 | 2017-02-09 | Cisco Technology, Inc. | Domain classification based on domain name system (dns) traffic |
WO2017184528A2 (en) * | 2016-04-19 | 2017-10-26 | Cisco Technology, Inc. | Content routing in an ip network |
CN105872735A (zh) * | 2016-04-25 | 2016-08-17 | 乐视控股(北京)有限公司 | 一种信息处理方法及电子设备 |
CN107786678A (zh) * | 2016-08-24 | 2018-03-09 | 北京金山云网络技术有限公司 | 域名解析方法、装置及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110896412A (zh) * | 2019-08-08 | 2020-03-20 | 腾讯科技(深圳)有限公司 | 网络请求处理方法及装置、电子设备 |
CN110896412B (zh) * | 2019-08-08 | 2021-07-30 | 腾讯科技(深圳)有限公司 | 网络请求处理方法及装置、电子设备 |
CN111131907A (zh) * | 2019-12-31 | 2020-05-08 | 广州市百果园信息技术有限公司 | 一种直播内容引入方法、装置、存储介质及设备 |
CN117749762A (zh) * | 2023-10-19 | 2024-03-22 | 天翼安全科技有限公司 | 一种dns访问请求处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109729183B (zh) | 2021-10-26 |
WO2019218441A1 (zh) | 2019-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109729183A (zh) | 请求处理方法、装置、设备及存储介质 | |
CN101981572B (zh) | 请求路由 | |
CN110580256B (zh) | 一种识别应用标识的方法、设备及系统 | |
CN104283723B (zh) | 网络访问日志处理方法及装置 | |
CN103685590B (zh) | 获取ip地址的方法及系统 | |
CN104283933A (zh) | 下载数据的方法、客户端及系统 | |
WO2020062582A1 (zh) | 信息引流、请求发送、通信加速方法、引流及节点服务器 | |
CN102695167B (zh) | 移动用户身份标识管理方法和装置 | |
CN102025793A (zh) | 一种ip网络中的域名解析方法、系统及dns服务器 | |
CN104303489A (zh) | 在网络中执行dns解析的方法、内容分发系统和用于在内容分发系统中进行部署的客户端终端 | |
CN107656981A (zh) | 一种基于标识技术的数据共享和管理方法及系统 | |
CN103957282B (zh) | 一种域内终端用户域名解析加速系统及其方法 | |
CN104539681A (zh) | 分布式gis加速系统和gis服务的处理方法 | |
CN102882974A (zh) | 一种通过网站识别版本号节省网站访问资源的方法 | |
CN112367684B (zh) | 流量控制方法、装置、存储介质及计算机设备 | |
CN103685511B (zh) | 一种数据分发方法、装置及系统 | |
CN104394182A (zh) | 一种实现内容分发网络加速的方法及源服务器 | |
KR20190002674A (ko) | 자원 구독 방법, 자원 구독 장치, 및 자원 구독 시스템 | |
CN110674427B (zh) | 响应网页访问请求的方法、装置、设备及存储介质 | |
CN109819068A (zh) | 用户终端及其区块链域名解析方法 | |
CN106357539A (zh) | 一种数据获取方法和设备 | |
CN102594885A (zh) | 传感器网络解析互通平台、传感器网络互通方法及系统 | |
CN113556413A (zh) | 一种报文处理方法及装置 | |
JP4009591B2 (ja) | データベースにアクセスするためのドメインネーミングシステム(dns) | |
KR101700198B1 (ko) | 장치 관리를 위한 노드의 주소 표현 방법 및 이를 위한 장치 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |