CN113179306B - 基于http请求内容的流量分发方法 - Google Patents

基于http请求内容的流量分发方法 Download PDF

Info

Publication number
CN113179306B
CN113179306B CN202110439567.9A CN202110439567A CN113179306B CN 113179306 B CN113179306 B CN 113179306B CN 202110439567 A CN202110439567 A CN 202110439567A CN 113179306 B CN113179306 B CN 113179306B
Authority
CN
China
Prior art keywords
http request
preset
analysis engine
content
content analysis
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
Application number
CN202110439567.9A
Other languages
English (en)
Other versions
CN113179306A (zh
Inventor
王佳君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Zhongtongji Network Technology Co Ltd
Original Assignee
Shanghai Zhongtongji Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Zhongtongji Network Technology Co Ltd filed Critical Shanghai Zhongtongji Network Technology Co Ltd
Priority to CN202110439567.9A priority Critical patent/CN113179306B/zh
Publication of CN113179306A publication Critical patent/CN113179306A/zh
Application granted granted Critical
Publication of CN113179306B publication Critical patent/CN113179306B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种基于HTTP请求内容的流量分发方法,包括:获取HTTP请求;基于预设的内容分析引擎,对所述HTTP请求的内容进行分析聚合;基于预设的内容分析引擎,按照预设的转发逻辑将HTTP请求转发之对应的后端处理程序。本发明采用以上技术方案,通过引入高级条件表达式实现的内容分析引擎,可以实现分析HTTP请求内容,进而实现根据业务场景、风控策略的流量分发。

Description

基于HTTP请求内容的流量分发方法
技术领域
本发明涉及互联网相关技术领域,具体涉及一种基于HTTP请求内容的流量分发方法。
背景技术
在互联网时代,所有的网络请求即HTTP请求都要经过反向代理才能访问处于内网的程序,内网的程序同样通过反向代理才能将数据返回给用户。数以百计的内网程序被不同的域名和路径划分了类别,在反向代理的配置过程中,系统管理员根据请求的路径和域名对网络流量进行分组然后转发给后端的业务程序。但是,通过域名和HTTP请求路径进行流量分发只适合简单的业务场景,无法做到根据请求的header,body,以及对应风控策略进行流量转发。对于大型互联网公司,很多场景需要对请求数据进行分析计算后才能确定如何转发流量,目前的反向代理软件无法实现此类需求。
发明内容
有鉴于此,提供一种基于HTTP请求内容的流量分发方法,以解决相关技术中的问题。
本发明采用如下技术方案:
本发明实施例提供了一种基于HTTP请求内容的流量分发方法,包括:
获取HTTP请求;
基于预设的内容分析引擎,对所述HTTP请求的内容进行分析聚合;
基于预设的内容分析引擎,按照预设的转发逻辑将HTTP请求转发之对应的后端处理程序。
可选的,所述内容分析引擎采用的基本的内置条件判断单元。
可选的,所述内容分析引擎支持预设内置的条件原语,同时支持用户自定义条件原语。
可选的,所述内容分析引擎的预设转发逻辑包括:
如果HTTP请求内容中包含手机号则把请求转发至第一预设后端处理程序:
如果HTTP请求内容中包含邮箱则把请求转发至第二预设后端处理程序:
如果HTTP请求内容中包含地址信息,且地址信息为预设地址,则把请求转发至第三预设后端处理程序。
可选的,所述内容分析引擎中,条件原语的返回值必定为布尔值,该布尔值用于进行逻辑运算;
所述内容分析引擎中条件表达式是多个条件原语与操作符的组合;
所述内容分析引擎中条件变量为将条件原语的结果赋值给的变量;
所述内容分析引擎中高级条件表达式为由多个条件原语、条件变量、操作符构成的组合。
本发明采用以上技术方案,通过引入高级条件表达式实现的内容分析引擎,可以实现分析HTTP请求内容,进而实现根据业务场景、风控策略的流量分发。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种智基于HTTP请求内容的流量分发方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
首先对本发明实施例的应用场景进行说明,用户通过域名访问企业的服务时,请求会经过互联网指向到企业部署的反向代理上,然后反向代理根据设置的分组策略将流量转发至对应的后端服务软件。本技术方案是部署在反向代理上的一套算法实现(以下简称内容分析引擎),该内容分析引擎通过高级条件表达式,链式处理HTTP请求,对数据进行分析聚合后按照设置的转发逻辑将流量转发至对应的后端处理程序。但是,通过域名和HTTP请求路径进行流量分发只适合简单的业务场景,无法做到根据请求的header,body,以及对应风控策略进行流量转发。对于大型互联网公司,很多场景需要对请求数据进行分析计算后才能确定如何转发流量,目前的反向代理软件无法实现此类需求。本申请针对这一问题提出了对应的解决方案。
实施例
图1是本发明实施例提供的一种智基于HTTP请求内容的流量分发方法的流程图。参考图1,该方法具体可以包括如下步骤:
S101、获取HTTP请求;
S102、基于预设的内容分析引擎,对所述HTTP请求的内容进行分析聚合;
S103、基于预设的内容分析引擎,按照预设的转发逻辑将HTTP请求转发之对应的后端处理程序。
具体的,所述内容分析引擎采用的基本的内置条件判断单元。内容分析引擎概念具体如下:
条件原语:内容分析引擎采用的基本的内置条件判断单元,条件原语的返回值必定为布尔值,该布尔值用于进行逻辑运算。本内容分析引擎支持一系列内置的条件原语,同时支持用户自定义条件原语。
条件表达式:条件表达式是多个条件原语与操作符(例如:与、或、非)的组合。
条件变量:可以将条件原语的结果赋值给一个变量,这个变量即为条件变量。
高级条件表达式:由多个条件原语、条件变量、操作符(例如:与、或、非)构成的组合。
其中,所述内容分析引擎的预设转发逻辑为根据业务场景、风控策略指定的,所述预设转发逻辑包括:
如果HTTP请求内容中包含手机号则把请求转发至第一预设后端处理程序:
如果HTTP请求内容中包含邮箱则把请求转发至第二预设后端处理程序:
如果HTTP请求内容中包含地址信息,且地址信息为预设地址,则把请求转发至第三预设后端处理程序。
具体的,内容分析引擎的语法说明如下:
条件原语采用形如func_name(params)的格式,其中:func_name是条件原语的名称;params是条件原语的参数,可能是0个或多个;返回值类型是bool。
条件表达式的语法定义如下:
CE=CE&&CE
|CE||CE
|(CE)
|!CE
|ConditionPrimitive
高级条件表达式的定义如下:
ACE=ACE&&ACE
|ACE||ACE
|(ACE)
|!ACE
|ConditionPrimitive
|ConditionVariable
操作符优先级定义:
操作符的优先级和结合律与C语言中类似,以下为所有操作符的优先级和结合律,优先级按降序排列。具体如下表:
优先级 操作符 含义 结合律
1 () 括号 从左至右
2 逻辑非 从右至左
3 && 逻辑与 从左至右
4 || 逻辑或 从左至右
以下为一个完整的根据HTTP内容进行转发的配置示例:
Figure BDA0003034500460000051
该示例表示如果HTTP请求内容中包含手机号则把请求转发至cluster.risk_ctl风控集群。
本套方法的核心是基于高级条件表达式的内容分析引擎,该内容分析引擎能够按照指定的语法生成的规则对HTTP请求内容进行聚类,相同聚类的请求会被转发至后端对应的业务程序。
本申请提供的方案中提供了高级条件表达式的实现原理、基于高级条件表达式聚类HTTP请求内容的方法、高级条件表达式的语法定义和反向代理中采用高级表达式。本方法的具有如下优点:1、灵活度高,可以通过条件原语的组合实现复杂的内容分析算法;2、能够做到现有技术方案无法做到到根据内容分析聚类3、配置简单,容易上手。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (2)

1.一种基于HTTP请求内容的流量分发方法,其特征在于,包括:
获取HTTP请求;
基于预设的内容分析引擎,对所述HTTP请求的内容进行分析聚合;
基于预设的内容分析引擎,按照预设的转发逻辑将HTTP请求转发之对应的后端处理程序;
其中,所述内容分析引擎采用的基本的内置条件判断单元;
其中,所述内容分析引擎支持预设内置的条件原语,同时支持用户自定义条件原语;
其中,所述内容分析引擎中,条件原语的返回值必定为布尔值,该布尔值用于进行逻辑运算;
所述内容分析引擎中条件表达式是多个条件原语与操作符的组合;
所述内容分析引擎中条件变量为将条件原语的结果赋值给的变量;
所述内容分析引擎中高级条件表达式为由多个条件原语、条件变量、操作符构成的组合。
2.根据权利要求1所述的基于HTTP请求内容的流量分发方法,其特征在于,所述内容分析引擎的预设转发逻辑为根据业务场景、风控策略指定的,所述预设转发逻辑包括:
如果HTTP请求内容中包含手机号则把请求转发至第一预设后端处理程序:
如果HTTP请求内容中包含邮箱则把请求转发至第二预设后端处理程序:
如果HTTP请求内容中包含地址信息,且地址信息为预设地址,则把请求转发至第三预设后端处理程序。
CN202110439567.9A 2021-04-23 2021-04-23 基于http请求内容的流量分发方法 Active CN113179306B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110439567.9A CN113179306B (zh) 2021-04-23 2021-04-23 基于http请求内容的流量分发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110439567.9A CN113179306B (zh) 2021-04-23 2021-04-23 基于http请求内容的流量分发方法

Publications (2)

Publication Number Publication Date
CN113179306A CN113179306A (zh) 2021-07-27
CN113179306B true CN113179306B (zh) 2022-12-06

Family

ID=76924236

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110439567.9A Active CN113179306B (zh) 2021-04-23 2021-04-23 基于http请求内容的流量分发方法

Country Status (1)

Country Link
CN (1) CN113179306B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104717647A (zh) * 2013-12-13 2015-06-17 中国电信股份有限公司 业务能力鉴权方法、设备及系统
CN105119916A (zh) * 2015-08-21 2015-12-02 福建天晴数码有限公司 一种基于http的认证方法及系统
CN106302613A (zh) * 2015-06-10 2017-01-04 网宿科技股份有限公司 一种基于Windows Phone 8平台的引导应用流量的方法
CN106961395A (zh) * 2016-01-08 2017-07-18 中国移动通信集团黑龙江有限公司 一种移动互联网流量引导方法、装置及系统
CN108156038A (zh) * 2017-12-29 2018-06-12 广东欧珀移动通信有限公司 请求分发方法、装置、接入网关及存储介质
CN110120917A (zh) * 2019-06-28 2019-08-13 北京百度网讯科技有限公司 基于内容的路由方法及装置
US10666620B1 (en) * 2012-11-30 2020-05-26 United Services Automobile Association (Usaa) Private network request forwarding
CN111865990A (zh) * 2020-07-23 2020-10-30 上海中通吉网络技术有限公司 内网恶意反向连接行为的管控方法、装置、设备和系统
CN112235408A (zh) * 2020-10-19 2021-01-15 新华三信息安全技术有限公司 网络系统、反向代理方法及反向代理服务器
CN112242972A (zh) * 2019-07-16 2021-01-19 腾讯科技(武汉)有限公司 网络请求处理方法、装置、存储介质及终端
CN112328910A (zh) * 2020-10-10 2021-02-05 深圳航天智慧城市系统技术研究院有限公司 一种涵盖aoi和poi标准地址匹配引擎的方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402444B2 (en) * 2009-10-09 2013-03-19 Microsoft Corporation Program analysis through predicate abstraction and refinement
CN102014053A (zh) * 2010-11-17 2011-04-13 华为技术有限公司 业务下发方法、装置及通信系统
CN102843391B (zh) * 2011-06-21 2017-04-05 中兴通讯股份有限公司 一种信息发送方法及网关
US10044760B2 (en) * 2013-12-04 2018-08-07 Hewlett Packard Enterprise Development Lp Policy rule based on a requested behavior

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10666620B1 (en) * 2012-11-30 2020-05-26 United Services Automobile Association (Usaa) Private network request forwarding
CN104717647A (zh) * 2013-12-13 2015-06-17 中国电信股份有限公司 业务能力鉴权方法、设备及系统
CN106302613A (zh) * 2015-06-10 2017-01-04 网宿科技股份有限公司 一种基于Windows Phone 8平台的引导应用流量的方法
CN105119916A (zh) * 2015-08-21 2015-12-02 福建天晴数码有限公司 一种基于http的认证方法及系统
CN106961395A (zh) * 2016-01-08 2017-07-18 中国移动通信集团黑龙江有限公司 一种移动互联网流量引导方法、装置及系统
CN108156038A (zh) * 2017-12-29 2018-06-12 广东欧珀移动通信有限公司 请求分发方法、装置、接入网关及存储介质
CN110120917A (zh) * 2019-06-28 2019-08-13 北京百度网讯科技有限公司 基于内容的路由方法及装置
CN112242972A (zh) * 2019-07-16 2021-01-19 腾讯科技(武汉)有限公司 网络请求处理方法、装置、存储介质及终端
CN111865990A (zh) * 2020-07-23 2020-10-30 上海中通吉网络技术有限公司 内网恶意反向连接行为的管控方法、装置、设备和系统
CN112328910A (zh) * 2020-10-10 2021-02-05 深圳航天智慧城市系统技术研究院有限公司 一种涵盖aoi和poi标准地址匹配引擎的方法及系统
CN112235408A (zh) * 2020-10-19 2021-01-15 新华三信息安全技术有限公司 网络系统、反向代理方法及反向代理服务器

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HTTP内容分发——《HTTP权威指南》系列;weixin_33854644;《CSDN》;20160901;全文 *
基于Linux系统的TCP迁移的研究与实现;刘雄;《汕头大学学报(自然科学版)》;20060228(第01期);全文 *
基于有限DPI的小代价精确用户行为识别方案的研究与实现;王福荣;《科技经济导刊》;20171015(第29期);全文 *

Also Published As

Publication number Publication date
CN113179306A (zh) 2021-07-27

Similar Documents

Publication Publication Date Title
US11240117B2 (en) Intelligent analytic cloud provisioning
US8713182B2 (en) Selection of a suitable node to host a virtual machine in an environment containing a large number of nodes
CN111427766B (zh) 一种请求处理方法、装置和代理服务器
AU2015247639B2 (en) Processing data from multiple sources
CN106576054B (zh) 用于动态网络设备配置的系统和方法
US7899763B2 (en) System, method and computer program product for evaluating a storage policy based on simulation
KR20150054998A (ko) 클라우드 내에서 지리적으로 분산된 애플리케이션의 자동화 배치를 위한 방법 및 장치
CN111459986B (zh) 数据计算系统及方法
US20140330827A1 (en) Methods and systems to operate on group-by sets with high cardinality
US10334013B2 (en) Avoiding web request failures before they occur by component analysis
US8959229B1 (en) Intelligently provisioning cloud information services
US11868310B2 (en) Composite storage of objects in multi-tenant devices
US20210203714A1 (en) System and method for identifying capabilities and limitations of an orchestration based application integration
CN109947804A (zh) 数据集合查询的优化方法、装置、服务器和存储介质
US20200219011A1 (en) Methods and systems for advanced content cacheability determination
CN115048254B (zh) 数据分配策略的仿真测试方法、系统、设备和可读介质
CN106856438A (zh) 一种网络业务实例化的方法、装置及nfv系统
CN110232106A (zh) 一种基于MongoDB和Solr的海量数据存储及快速检索方法
CN110750431B (zh) 数据埋点配置方法及装置
US11025500B2 (en) Provisioning infrastructure from visual diagrams
WO2012165937A1 (en) System and method for optimizing physical resources of virtual machines
CN113179306B (zh) 基于http请求内容的流量分发方法
CN109815241A (zh) 数据查询方法、装置、设备和存储介质
US20210209103A1 (en) Data segment-based indexing
CN110196863A (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
GR01 Patent grant
GR01 Patent grant