CN105812277A - 访问请求的控制方法和系统、通信设备 - Google Patents
访问请求的控制方法和系统、通信设备 Download PDFInfo
- Publication number
- CN105812277A CN105812277A CN201410852224.5A CN201410852224A CN105812277A CN 105812277 A CN105812277 A CN 105812277A CN 201410852224 A CN201410852224 A CN 201410852224A CN 105812277 A CN105812277 A CN 105812277A
- Authority
- CN
- China
- Prior art keywords
- address
- packet
- control instruction
- source
- access control
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种访问请求的控制方法和系统、通信设备,其中,方法包括:应用服务器前端的通信设备接收用户请求访问应用服务器的会话数据包,查询流表中预先设置的目的匹配表中是否包括数据包中的目的IP地址;若包括,查询数据包中目的IP地址对应的源匹配表中是否存在数据包中源IP地址对应的流记录;若存在,根据流记录中的访问控制指令对数据包进行相应的访问控制;若不存在,由应用控制器根据应用服务器当前的负载情况下发接纳控制指令,根据接纳控制指令在源匹配表中添加相应的流记录并对数据包进行相应的访问控制。本发明实施例可以解决访问量过大导致应用服务器崩溃的技术问题。
Description
技术领域
本发明涉及通信技术,尤其是一种访问请求的控制方法和系统、通信设备。
背景技术
现有互联网应用服务器可能因为突发性地大量访问而导致服务过载,甚至系统崩溃。目前解决这类问题的主流技术是网站应用服务器端自行限制会话数,但由于现有互联网是一种“尽力而为”的网络,基于逐包路由转发,所以网络并不感知应用会话和网站应用服务器的负载情况。当大量用户不断刷屏时,大量用户数据包仍然会抵达网站的应用服务器端,应用服务器对数据包的识别和分析也会耗尽其资源,导致其网站系统瘫痪。
发明内容
本发明实施例所要解决的一个技术问题是:提供一种访问请求的控制方法和系统、通信设备,以基于网站服务器的负载情况对用户访问该网站服务器的数据包进行控制,从而解决访问量过大导致网站服务器应用服务器崩溃的技术问题。
本发明实施例提供的一种访问请求的控制方法,包括:
应用服务器前端的通信设备接收用户请求访问应用服务器的会话数据包,所述数据包中包括所述应用服务器使用的目的IP地址和所述用户使用的源IP地址;
所述通信设备查询流表中预先设置的目的匹配表中是否包括所述数据包中的目的IP地址;所述流表包括所述目的匹配表和目的匹配表中各目的IP地址对应的源匹配表,所述目的匹配表中包括需要进行访问控制的应用服务器的目的IP地址,所述源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令;
若目的匹配表中包括所述数据包中的目的IP地址,通信设备查询所述数据包中目的IP地址对应的源匹配表中是否存在所述数据包中源IP地址对应的流记录;
若所述数据包中目的IP地址对应的源匹配表中存在所述数据包中源IP地址对应的流记录,通信设备根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制,所述访问控制指令包括转发或阻止;
否则,若所述数据包中目的IP地址对应的源匹配表中不存在所述数据包中源IP地址对应的流记录,通信设备向应用控制器转发所述数据包;
应用控制器根据所述应用服务器当前的负载情况向所述通信设备下发接纳控制指令,所述接纳控制指令包括所述数据包中的源IP地址和目的IP地址、以及对所述用户请求访问所述应用服务器的数据包的访问控制指令;
所述通信设备根据所述接纳控制指令在所述数据包中目的IP地址对应的源匹配表中添加所述源IP地址对应的流记录,并根据所述添加的流记录中的访问控制指令对所述数据包进行相应的访问控制,所述源IP地址对应的流记录包括所述数据包中的源IP地址和所述接纳控制指令中的访问控制指令。
基于上述方法的另一个实施例中,所述流记录还包括目的IP地址;
在所述数据包中目的IP地址对应的源匹配表中添加的所述源IP地址对应的流记录具体包括所述数据包中的源IP地址和目的IP地址、以及所述接纳控制指令中的访问控制指令。
基于上述方法的另一个实施例中,应用控制器中预先存储各需要进行访问控制的应用服务器的峰值会话数;
通信设备向应用控制器转发所述数据包时,还向所述应用控制器上报所述应用服务器的目的IP地址对应的源匹配表中的有效流记录数,所述有效流记录数为访问控制指令为转发且当前未失效的流记录的数量。
基于上述方法的另一个实施例中,所述应用服务器当前的负载情况具体为所述应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数;
所述应用控制器根据所述应用服务器当前的负载情况向所述通信设备下发接纳控制指令包括:
所述应用控制器识别所述应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数是否达到所述应用服务器的峰值会话数;
若所述应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数达到所述应用服务器的峰值会话数,确定对所述用户请求访问所述应用服务器的数据包的访问控制指令为阻止,并向所述通信设备下发访问控制指令为阻止的接纳控制指令;
否则,若所述应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数未达到所述应用服务器的峰值会话数,确定对所述用户请求访问所述应用服务器的数据包的访问控制指令为转发,并向所述通信设备下发访问控制指令为转发的接纳控制指令。
基于上述方法的另一个实施例中,还包括:
当所述用户请求访问所述应用服务器的会话结束时,结束的会话对应的源匹配表中的流记录失效,所述通信设备删除该失效的流记录。
基于上述方法的另一个实施例中,所述用户请求访问应用服务器的会话结束包括:
所述应用服务器的目的IP地址和所述用户的源IP地址对应的流记录在预设有效时长内未进行有效匹配。
基于上述方法的另一个实施例中,所述阻止具体为丢弃;
所述通信设备根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制具体为:通信设备丢弃所述数据包。
基于上述方法的另一个实施例中,所述阻止具体为缓存;
所述对应的流记录中的访问控制指令为阻止时,所述通信设备根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制具体为:所述通信设备按照接收到数据包的时间先后顺序将所述数据包加入缓存队列中。
基于上述方法的另一个实施例中,还包括:
通信设备中有流记录对应的会话结束时,通信设备向应用控制器上报已有用户的会话结束通知消息,并按照先入先出规则提取缓存队列中最先顺序的数据包发送给所述应用控制器;
应用控制器向所述通信设备下发针对所述最先顺序的数据包的接纳控制指令,针对所述最先顺序的数据包的接纳控制指令包括所述最先顺序的数据包中的源IP地址和目的IP地址、以及转发的访问控制指令;
所述通信设备根据所述最先顺序的数据包的接纳控制指令,在所述最先顺序的数据包中目的IP地址对应的源匹配表中添加所述最先顺序的数据包中源IP地址对应的流记录,并根据该添加的流记录中的访问控制指令对所述最先顺序的数据包进行转发。
基于上述方法的另一个实施例中,还包括:
若目的匹配表中不包括所述应用服务器使用的目的IP地址,对所述用户请求访问所述应用服务器的会话数据包进行正常转发。
基于上述方法的另一个实施例中,所述通信设备为所述应用服务器所在互联网数据中心IDC的网关路由器连接的OpenFlow交换机;
对所述数据包进行转发时,具体通过所述IDC的网关路由器基于所述数据包中的目的IP地址对所述数据包进行转发。
基于上述方法的另一个实施例中,所述通信设备还包括网络接入段的宽带接入服务器BRAS和业务路由器SR连接的OpenFlow交换机、以及与其他对等区域网络互连的网关GW连接的OpenFlow交换机中的任意一个或多个;
对所述数据包进行转发时,具体通过所述通信设备连接的、相应的网关路由器、BRAS、SR或GW基于所述数据包中的目的IP地址转发所述数据包。
本发明实施例提供的一种通信设备,包括:
接收单元,用于接收用户请求访问应用服务器的会话数据包,所述数据包中包括所述应用服务器使用的目的IP地址和所述用户使用的源IP地址;以及接收应用控制器根据所述应用服务器当前的负载情况下发的接纳控制指令,所述接纳控制指令包括所述数据包中的源IP地址和目的IP地址、以及对所述数据包的访问控制指令;
存储单元,用于存储流表,所述流表包括目的匹配表和目的匹配表中各目的IP地址对应的源匹配表,所述目的匹配表中包括需要进行访问控制的应用服务器的目的IP地址,所述源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令,所述访问控制指令包括转发或阻止;
查询单元,用于查询流表中预先设置的目的匹配表中是否包括所述数据包中的目的IP地址;若目的匹配表中包括所述数据包中的目的IP地址,查询所述数据包中目的IP地址对应的源匹配表中是否存在所述数据包中源IP地址对应的流记录;
控制单元,用于根据查询单元的查询结果,若所述数据包中目的IP地址对应的源匹配表中存在所述数据包中源IP地址对应的流记录,根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制;否则,若所述数据包中目的IP地址对应的源匹配表中不存在所述数据包中源IP地址对应的流记录,向应用控制器转发所述数据包;以及根据流表处理单元的请求,根据所述添加的流记录中的访问控制指令对所述数据包进行相应的访问控制;
流表处理单元,用于根据接收单元接收到的接纳控制指令在所述数据包中目的IP地址对应的源匹配表中添加所述源IP地址对应的流记录,所述源IP地址对应的流记录包括所述数据包中的源IP地址和所述接纳控制指令中的访问控制指令,并请求控制单元根据所述添加的流记录中的访问控制指令对所述数据包进行相应的访问控制。
基于上述设备的另一个实施例中,所述流表处理单元,还用于在所述用户请求访问所述应用服务器的会话结束时,确认结束的会话对应的源匹配表中的流记录失效,删除该失效的流记录。
基于上述设备的另一个实施例中,所述阻止具体为缓存;
所述设备还包括缓存单元,用于存储缓存队列;
所述对应的流记录中的访问控制指令为阻止时,所述控制单元根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制时,具体按照接收到数据包的时间先后顺序将所述数据包加入缓存队列中。
基于上述设备的另一个实施例中,还包括:
上报单元,用于在有流记录对应的会话结束时,向应用控制器上报已有用户的会话结束通知消息,并按照先入先出规则提取缓存队列中最先顺序的数据包发送给所述应用控制器;
所述接收单元,还用于接收应用控制器下发的针对所述最先顺序的数据包的接纳控制指令,针对所述最先顺序的数据包的接纳控制指令包括所述最先顺序的数据包中的源IP地址和目的IP地址、以及转发的访问控制指令;
所述流表处理单元,还用于根据所述最先顺序的数据包的接纳控制指令,在所述最先顺序的数据包中目的IP地址对应的源匹配表中添加所述最先顺序的数据包中源IP地址对应的流记录,并根据该添加的流记录中的访问控制指令对所述最先顺序的数据包进行转发。
基于上述设备的另一个实施例中,所述控制单元,还用于根据查询单元的查询结果,若目的匹配表中不包括所述应用服务器使用的目的IP地址,对所述用户请求访问所述应用服务器的会话数据包进行正常转发。
本发明实施例提供的一种访问请求的控制系统,包括应用控制器和通信设备,其中:
所述通信设备,位于应用服务器前端,用于接收用户请求访问应用服务器的会话数据包,所述数据包中包括所述应用服务器使用的目的IP地址和所述用户使用的源IP地址;存储流表,并查询该流表中预先设置的目的匹配表中是否包括所述数据包中的目的IP地址;所述流表包括所述目的匹配表和目的匹配表中各目的IP地址对应的源匹配表,所述目的匹配表中包括需要进行访问控制的应用服务器的目的IP地址,所述源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令;若目的匹配表中包括所述数据包中的目的IP地址,查询所述数据包中目的IP地址对应的源匹配表中是否存在所述数据包中源IP地址对应的流记录;若所述数据包中目的IP地址对应的源匹配表中存在所述数据包中源IP地址对应的流记录,根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制,所述访问控制指令包括转发或阻止;否则,若所述数据包中目的IP地址对应的源匹配表中不存在所述数据包中源IP地址对应的流记录,向应用控制器转发所述数据包;以及根据应用控制器下发的接纳控制指令在所述数据包中目的IP地址对应的源匹配表中添加所述源IP地址对应的流记录,并根据所述添加的流记录中的访问控制指令对所述数据包进行相应的访问控制,所述源IP地址对应的流记录包括所述数据包中的源IP地址和所述接纳控制指令中的访问控制指令;
应用控制器,用于根据所述应用服务器当前的负载情况向所述通信设备下发接纳控制指令,所述接纳控制指令包括所述数据包中的源IP地址和目的IP地址、以及对所述用户请求访问所述应用服务器的数据包的访问控制指令。
基于上述系统的另一个实施例中,所述应用服务器当前的负载情况具体为所述应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数;
所述通信设备,还用于在向应用控制器转发所述数据包时,上报所述应用服务器的目的IP地址对应的源匹配表中的有效流记录数,所述有效流记录数为访问控制指令为转发且当前未失效的流记录的数量;
所述应用控制器,还用于存储各需要进行访问控制的应用服务器的峰值会话数;根据所述应用服务器当前的负载情况向所述通信设备下发接纳控制指令时,具体用于:
识别所述应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数是否达到所述应用服务器的峰值会话数;若所述应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数达到所述应用服务器的峰值会话数,确定对所述用户请求访问所述应用服务器的数据包的访问控制指令为阻止,并向所述通信设备下发访问控制指令为阻止的接纳控制指令;
否则,若所述应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数未达到所述应用服务器的峰值会话数,确定对所述用户请求访问所述应用服务器的数据包的访问控制指令为转发,并向所述通信设备下发访问控制指令为转发的接纳控制指令。
基于上述系统的另一个实施例中,所述通信设备为OpenFlow交换机。
基于上述系统的另一个实施例中,所述OpenFlow交换机具体设置在所述应用服务器所在IDC的网关路由器中或者与该网关路由器串接;
所述OpenFlow交换机对所述数据包进行转发时,具体通过所述网关路由器基于所述数据包中的目的IP地址对所述数据包进行转发所述数据包。
基于上述系统的另一个实施例中,所述OpenFlow交换机为多个,多个OpenFlow交换机分别设置在以下网元中或与以下网元串接:
所述应用服务器所在IDC的网关路由器;和/或
网络接入段的BRAS和SR、以及与其他对等区域网络互连的GW;
所述OpenFlow交换机对所述数据包进行转发时,具体通过所述OpenFlow交换机连接的、相应的网关路由器、BRAS、SR或GW基于所述数据包中的目的IP地址转发。
基于本发明上述实施例提供的访问请求的控制方法和系统、通信设备,可以感知和基于网站服务器的负载情况控制应用流,在应用流数据包到达应用服务器前,就可以灵活控制数据包的转发。由此,本发明实施例基于网络感知和限制会话数的方法彻底地解决了访问量过大导致网站服务器应用系统崩溃的技术问题。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明访问请求的控制方法一个实施例的流程图。
图2为本发明实施例流记录中不包括目的IP地址的一个内容结构示例。
图3为本发明实施例流记录中包括目的IP地址的一个内容结构示例。
图4为本发明访问请求的控制方法另一个实施例的流程图。
图5为本发明通信设备一个实施例的结构示意图。
图6为本发明访问请求的控制系统一个实施例的结构示意图。
图7为现有技术的一个网络结构示意图。
图8为本发明访问请求的控制系统一个应用实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
SDN(软件定义网络)技术将传统IP网络的转发和路由控制进行分离,实现集中控制,分布转发。南向接口采用OpenFlow(网络虚拟化技术,简称:OF)可实现IP分组包二到四层的灵活匹配。因此,网络可以感知和控制应用流,在数据包到达应用系统前,就可以灵活控制数据包的转发。所以,基于网络感知和限制会话数的方法可更彻底地解决访问量过大导致系统崩溃的问题。
本发明实施例基于OpenFlow技术,使网络能够为特定互联网应用服务器提供最大负荷保障的增值服务,可以实时监控特定互联网应用服务器的负载,识别每个用户的应用会话流和会话状态,可对用户发起的会话请求进行相应的接纳控制。当遇到突发性大量访问时,确保特定互联网应用服务器系统不会崩溃,而是以最大负荷的状态持续高效平稳运行。
图1为本发明访问请求的控制方法一个实施例的流程图。如图1所示,该实施例访问请求的控制方法包括:
110,应用服务器前端的通信设备接收用户请求访问应用服务器的会话数据包,该数据包中包括该应用服务器使用的目的IP地址和该用户使用的源IP地址。
120,通信设备查询流表中预先设置的目的匹配表中是否包括数据包中的目的IP地址。
其中,流表包括目的匹配表和该目的匹配表中各目的IP地址对应的源匹配表,目的匹配表中包括需要进行访问控制的各应用服务器的目的IP地址,源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令,因此,目的匹配表中一条目的IP地址对应的源匹配表中的一条流记录表示包括一条源IP地址、一条目的IP地址和相应的访问控制指令,基于该流记录可以获知对使用该一条源IP地址的用户访问使用该一条目的IP地址的应用服务器的数据包的访问控制指令。
若目的匹配表中包括数据包中的目的IP地址,说明该应用服务器属于需要进行访问控制的应用服务器,执行130的操作。
130,通信设备查询数据包中目的IP地址对应的源匹配表中是否存在数据包中源IP地址对应的流记录。
若数据包中目的IP地址对应的源匹配表中存在数据包中源IP地址对应的流记录,说明该数据包为该用户请求访问该应用服务器的非首个数据包,执行140的操作。否则,若数据包中目的IP地址对应的源匹配表中不存在数据包中源IP地址对应的流记录,说明该数据包为该用户访问该应用服务器的首个数据包,执行150的操作。
140,通信设备根据对应的流记录中的访问控制指令对数据包进行相应的访问控制,该访问控制指令包括转发或阻止。
之后,不执行本实施例的后续流程,可以对该数据包进行正常转发。
150,通信设备向应用控制器转发该数据包。
160,应用控制器根据该应用服务器当前的负载情况向通信设备下发接纳控制指令,接纳控制指令包括数据包中的源IP地址和目的IP地址、以及对该用户请求访问该应用服务器的数据包的访问控制指令。
170,通信设备根据接纳控制指令在数据包中目的IP地址对应的源匹配表中添加源IP地址对应的流记录,并根据添加的流记录中的访问控制指令对该数据包进行相应的访问控制,其中,源IP地址对应的流记录包括该数据包中的源IP地址和接纳控制指令中的访问控制指令。
基于本发明上述实施例提供的访问请求的控制方法,可以在应用服务器前端的通信设备中设置流表,通信设备接收用户请求访问应用服务器的会话数据包后,根据流表中的目的匹配表和流记录,判断该数据包是否为用户访问需要保护的应用服务器的首个数据包,若是首个数据包,由统一的应用控制器根据该应用服务器当前的负载情况向通信设备下发接纳控制指令,指示转发或阻止该数据包,在应用流数据包到达应用服务器前,即实现灵活控制数据包的转发,彻底解决了访问量过大导致网站服务器应用系统崩溃的技术问题。
目的匹配表的匹配项为目的IP地址(即:被保护网站的IP地址),目的匹配表结合源匹配表的匹配项为目的IP地址(即:被保护网站IP地址)和源IP地址(访问网站的用户IP地址)。另外,流记录还可以包括目的IP地址,此时,在数据包中目的IP地址对应的源匹配表中添加的源IP地址对应的流记录具体包括数据包中的源IP地址和目的IP地址、以及接纳控制指令中的访问控制指令。
如图2所示,为流记录中不包括目的IP地址的一个内容结构示例。而
图3所示,为流记录中包括目的IP地址的一个内容结构示例。
本发明实施例中,每个用户的访问可以看成一个会话,并在流表中有一条对应的记录,即:每个访问被保护网站的用户对应一条流记录,由于可能存在同一用户访问多个被保护网站的情况,流记录的数量通常大于或等于用户数。
图4为本发明访问请求的控制方法另一个实施例的流程图。如图4所示,该实施例访问请求的控制方法包括:
210,应用服务器前端的通信设备接收用户请求访问应用服务器的会话数据包,该数据包中包括该应用服务器使用的目的IP地址和该用户使用的源IP地址。
220,通信设备查询流表中预先设置的目的匹配表中是否包括数据包中的目的IP地址。
其中,流表包括目的匹配表和该目的匹配表中各目的IP地址对应的源匹配表,目的匹配表中包括需要进行访问控制的各应用服务器的目的IP地址,源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令,因此,目的匹配表中一条目的IP地址对应的源匹配表中的一条流记录表示包括一条源IP地址、一条目的IP地址和相应的访问控制指令,基于该流记录可以获知对使用该一条源IP地址的用户访问使用该一条目的IP地址的应用服务器的数据包的访问控制指令。
若目的匹配表中包括数据包中的目的IP地址,说明该应用服务器属于需要进行访问控制的应用服务器,执行230的操作。否则,若目的匹配表中不包括数据包中的目的IP地址,说明该应用服务器不属于需要进行访问控制的应用服务器,对用户请求访问该应用服务器的会话数据包进行正常转发。
230,通信设备查询数据包中目的IP地址对应的源匹配表中是否存在数据包中源IP地址对应的流记录。
若数据包中目的IP地址对应的源匹配表中存在数据包中源IP地址对应的流记录,说明该数据包为该用户请求访问该应用服务器的非首个数据包,执行240的操作。否则,若数据包中目的IP地址对应的源匹配表中不存在数据包中源IP地址对应的流记录,说明该数据包为该用户访问该应用服务器的首个数据包,执行250的操作。
240,通信设备根据对应的流记录中的访问控制指令对数据包进行相应的访问控制,该访问控制指令包括转发或阻止。
之后,不执行本实施例的后续流程。
250,通信设备向应用控制器转发数据包,并向应用控制器上报应用服务器的目的IP地址对应的源匹配表中的有效流记录数(即:有效会话数)。
其中的有效流记录数为访问控制指令为转发且当前未失效的流记录的数量。
260,应用控制器从预先存储的各需要进行访问控制的应用服务器的峰值会话数信息中,查询获取该应用服务器的峰值会话数,即:该应用服务器可以承受的最大会话数。
270,应用控制器识别该应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数是否达到应用服务器的峰值会话数。
若应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数达到应用服务器的峰值会话数,确定对用户请求访问应用服务器的数据包的访问控制指令为阻止,执行280的操作。否则,若应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数未达到应用服务器的峰值会话数,确定对用户请求访问应用服务器的数据包的访问控制指令为转发,执行290的操作。
280,应用控制器向通信设备下发访问控制指令为阻止的接纳控制指令。
其中的阻止访问控制指令根据预设策略具体可以是缓存或丢弃。之后,执行300的操作。
290,应用控制器向通信设备下发访问控制指令为转发的接纳控制指令。
300,通信设备根据接纳控制指令在数据包中目的IP地址对应的源匹配表中添加源IP地址对应的流记录,并根据添加的流记录中的访问控制指令对该数据包进行相应的访问控制,其中,源IP地址对应的流记录包括该数据包中的源IP地址和接纳控制指令中的访问控制指令。
在本发明访问请求的控制方法的又一个实施例中,当用户请求访问应用服务器的会话结束时,结束的会话对应的源匹配表中的流记录失效,通信设备可以删除该失效的流记录。具体地,应用服务器的目的IP地址和用户的源IP地址对应的流记录在预设有效时长(例如30秒内)内未进行有效匹配时,可以认为用户请求访问应用服务器的会话结束。
示例性地,本发明上述各实施例访问请求的控制方法中,访问控制指令中阻止具体可以是丢弃或者缓存。当阻止的访问控制指令具体为丢弃时,通信设备根据对应的流记录中的访问控制指令对数据包进行相应的访问控制具体为:通信设备丢弃该数据包。
当阻止的访问控制指令具体为缓存时,通信设备根据对应的流记录中的访问控制指令对数据包进行相应的访问控制具体为:通信设备按照接收到数据包的时间先后顺序将数据包加入缓存队列中进行缓存。
进一步地,阻止的访问控制指令具体为缓存时,在本发明访问请求的控制方法的再一个实施例中,还可以包括:
通信设备中有流记录对应的会话结束时,向应用控制器上报已有用户的会话结束通知消息,并按照先入先出规则提取缓存队列中最先顺序的数据包发送给应用控制器;
应用控制器向通信设备下发针对该最先顺序的数据包的接纳控制指令,针对该最先顺序的数据包的接纳控制指令包括该最先顺序的数据包中的源IP地址和目的IP地址、以及具体为转发的访问控制指令;
通信设备根据该最先顺序的数据包的接纳控制指令,在该最先顺序的数据包中目的IP地址对应的源匹配表中添加该最先顺序的数据包中源IP地址对应的流记录,并根据该添加的流记录中的访问控制指令对该最先顺序的数据包进行转发。
上述实施例中,应用控制器可以感知应用服务器的负载情况,根据流表中的流记录有效识别已有用户会话(流表有相应的流记录,访问控制指令为转发)和新请求的用户会话(流表没有相应的流记录,将会作为首个数据包提交应用控制器进行接纳控制);当当前有效会话数达到应用服务器所能承受的峰值时,应用控制器阻止新用户的会话请求,并进行缓存排队;当某些已有用户会话结束时,应用控制器指示对缓存排队的用户数据包进行转发,从而基于应用服务器的峰值会话数实现了对新会话的接纳控制。
在本发明上述各访问请求的控制方法实施例的一个具体示例中,通信设备具体可以为应用服务器所在IDC(互联网数据中心)的网关路由器连接的OpenFlow交换机;相应地,对数据包进行转发时,具体通过该IDC的网关路由器基于数据包中的目的IP地址对该数据包进行转发。
上述具体示例中,在靠近应用服务器的OpenFlow交换机上实施感知和访问控制,就可以控制所有访问该应用服务器的用户会话,但可能造成该节点流表表项非常庞大的情况,甚至超出OpenFlow交换机的设备容量极限。为了避免这种情况出现,在本发明上述各访问请求的控制方法实施例的另一个具体示例中,可将部分流表前移至靠近用户的接入端的其它OpenFlow交换机,从而实现完善的分布控制,由应用控制器对所有OpenFlow交换机上的流表统一进行管理。具体地,在该另一个具体示例中,通信设备除了包括应用服务器所在IDC的网关路由器连接的OpenFlow交换机外,还可以进一步包括网络接入段的BRAS(宽带接入服务器)和SR(业务路由器)连接的OpenFlow交换机、以及与其他对等区域网络互连的GW(网关)、路由器(R)连接的OpenFlow交换机中的任意一个或多个。相应地,对数据包进行转发时,具体通过该通信设备连接的、相应的网关路由器、BRAS、SR或GW、R基于该数据包中的目的IP地址转发该数据包。
在上述部署实施例中,OpenFlow交换机具体可以和其连接的网关路由器、BRAS、SR、GW、R等路由器集成一体设置。
图5为本发明通信设备一个实施例的结构示意图。该实施例的通信设备可用于实现本发明上述各访问请求的控制方法实施例中通信设备的相应功能。如图5所示,该实施例的通信设备包括接收单元、存储单元、查询单元、控制单元和流表处理单元。其中:
接收单元,用于接收用户请求访问应用服务器的会话数据包,该数据包中包括该应用服务器使用的目的IP地址和该用户使用的源IP地址;以及接收应用控制器根据该应用服务器当前的负载情况下发的接纳控制指令,接纳控制指令包括数据包中的源IP地址和目的IP地址、以及对该数据包的访问控制指令。
存储单元,用于存储流表,该流表包括目的匹配表和该目的匹配表中各目的IP地址对应的源匹配表,其中的目的匹配表中包括需要进行访问控制的各应用服务器的目的IP地址,源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令,其中的访问控制指令包括转发或阻止。
查询单元,用于查询流表中预先设置的目的匹配表中是否包括数据包中的目的IP地址;若目的匹配表中包括数据包中的目的IP地址,查询该数据包中目的IP地址对应的源匹配表中是否存在数据包中源IP地址对应的流记录。
控制单元,用于根据查询单元的查询结果,若数据包中目的IP地址对应的源匹配表中存在数据包中源IP地址对应的流记录,根据该对应的流记录中的访问控制指令对数据包进行相应的访问控制;否则,若数据包中目的IP地址对应的源匹配表中不存在数据包中源IP地址对应的流记录,向应用控制器转发该数据包;以及根据流表处理单元的请求,根据添加的流记录中的访问控制指令对该数据包进行相应的访问控制。
流表处理单元,用于根据接收单元接收到的接纳控制指令在数据包中目的IP地址对应的源匹配表中添加源IP地址对应的流记录,该源IP地址对应的流记录包括数据包中的源IP地址和接纳控制指令中的访问控制指令,并请求控制单元根据添加的流记录中的访问控制指令对数据包进行相应的访问控制。
基于本发明上述实施例提供的访问请求的通信设备,可以预先设置流表,接收用户请求访问应用服务器的会话数据包后,根据流表中的目的匹配表和流记录,判断该数据包是否为用户访问需要保护的应用服务器的首个数据包,若是首个数据包,由统一的应用控制器根据该应用服务器当前的负载情况向通信设备下发接纳控制指令,指示转发或阻止该数据包,在应用流数据包到达应用服务器前,即实现灵活控制数据包的转发,彻底解决了访问量过大导致网站服务器应用系统崩溃的技术问题。
在本发明通信设备的另一个实施例中,流表处理单元还可用于在用户请求访问应用服务器的会话结束时,确认该结束的会话对应的源匹配表中的流记录失效,删除该失效的流记录。
本发明上述各实施例的通信设备中,访问控制指令中的阻止具体可以是丢弃或者缓存。当阻止的访问控制指令具体为缓存时,再参见图5,在本发明通信设备的又一个实施例中,通信设备还包括缓存单元,用于存储缓存队列。相应地,对应的流记录中的访问控制指令为阻止时,控制单元根据对应的流记录中的访问控制指令对数据包进行相应的访问控制时,具体按照接收到数据包的时间先后顺序将数据包加入缓存队列中。
另外,再参见图5,在本发明通信设备的再一个实施例中,通信设备还包括上报单元,用于在有流记录对应的会话结束时,向应用控制器上报已有用户的会话结束通知消息,并按照先入先出规则提取缓存队列中最先顺序的数据包发送给应用控制器。相应地,接收单元还用于接收应用控制器下发的针对该最先顺序的数据包的接纳控制指令,包括最先顺序的数据包中的源IP地址和目的IP地址、以及转发的访问控制指令。流表处理单元还用于根据该最先顺序的数据包的接纳控制指令,在该最先顺序的数据包中目的IP地址对应的源匹配表中添加该最先顺序的数据包中源IP地址对应的流记录,并请求控制单元根据该添加的流记录中的访问控制指令对该最先顺序的数据包进行转发。
进一步地,在上述本发明各通信设备实施例中,控制单元还可用于根据查询单元的查询结果,若目的匹配表中不包括应用服务器使用的目的IP地址,对用户请求访问应用服务器的会话数据包进行正常转发。
图6为本发明访问请求的控制系统一个实施例的结构示意图。该实施例的控制系统可用于实现本发明上述各实施例的控制方法流程。如图6所示,该实施例的控制系统包括应用控制器和通信设备。其中:
通信设备,位于应用服务器前端,用于接收用户请求访问应用服务器的会话数据包,该数据包中包括请求访问的应用服务器使用的目的IP地址和用户使用的源IP地址;以及存储流表,并查询该流表中预先设置的目的匹配表中是否包括数据包中的目的IP地址;流表包括目的匹配表和目的匹配表中各目的IP地址对应的源匹配表,目的匹配表中包括需要进行访问控制的应用服务器的目的IP地址,源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令;若目的匹配表中包括数据包中的目的IP地址,查询数据包中目的IP地址对应的源匹配表中是否存在数据包中源IP地址对应的流记录;若数据包中目的IP地址对应的源匹配表中存在数据包中源IP地址对应的流记录,根据对应的流记录中的访问控制指令对数据包进行相应的访问控制,访问控制指令包括转发或阻止;否则,若数据包中目的IP地址对应的源匹配表中不存在数据包中源IP地址对应的流记录,向应用控制器转发数据包;以及根据应用控制器下发的接纳控制指令在数据包中目的IP地址对应的源匹配表中添加源IP地址对应的流记录,并根据添加的流记录中的访问控制指令对数据包进行相应的访问控制,源IP地址对应的流记录包括数据包中的源IP地址和接纳控制指令中的访问控制指令。示例性地,该通信设备具体可以基于上述图5所示任一实施例的通信设备结构实现。
应用控制器,用于根据该应用服务器当前的负载情况向通信设备下发接纳控制指令,接纳控制指令包括数据包中的源IP地址和目的IP地址、以及对用户请求访问应用服务器的数据包的访问控制指令。
基于本发明上述实施例提供的访问请求的控制系统,可以在应用服务器前端的通信设备中设置流表,通信设备接收用户请求访问应用服务器的会话数据包后,根据流表中的目的匹配表和流记录,判断该数据包是否为用户访问需要保护的应用服务器的首个数据包,若是首个数据包,由统一的应用控制器根据该应用服务器当前的负载情况向通信设备下发接纳控制指令,指示转发或阻止该数据包,在应用流数据包到达应用服务器前,即实现灵活控制数据包的转发,彻底解决了访问量过大导致网站服务器应用系统崩溃的技术问题。
在上述控制系统实施例的一个具体示例中,应用服务器当前的负载情况具体为该应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数。相应地,通信设备还用于在向应用控制器转发数据包时,上报该应用服务器的目的IP地址对应的源匹配表中的有效流记录数,其中的有效流记录数为访问控制指令为转发且当前未失效的流记录的数量。应用控制器,还用于存储各需要进行访问控制的应用服务器的峰值会话数;根据应用服务器当前的负载情况向通信设备下发接纳控制指令时,具体用于:
识别应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数是否达到应用服务器的峰值会话数;若应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数达到应用服务器的峰值会话数,确定对用户请求访问应用服务器的数据包的访问控制指令为阻止,并向通信设备下发访问控制指令为阻止的接纳控制指令;
否则,若应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数未达到应用服务器的峰值会话数,确定对用户请求访问应用服务器的数据包的访问控制指令为转发,并向通信设备下发访问控制指令为转发的接纳控制指令。
在上述控制系统实施例的一个具体示例中,其中的通信设备具体为OpenFlow交换机。
示例性地,OpenFlow交换机具体可以设置在应用服务器所在IDC的网关路由器中或者与该网关路由器串接;相应地,OpenFlow交换机对数据包进行转发时,具体通过该网关路由器基于数据包中的目的IP地址对数据包进行转发。
另外,OpenFlow交换机具体可以是多个,该多个OpenFlow交换机分别设置在以下网元中或与以下网元串接:应用服务器所在IDC的网关路由器;和/或,网络接入段的BRAS和SR、以及与其他对等区域网络互连的GW、R。相应地,OpenFlow交换机对数据包进行转发时,具体通过该OpenFlow交换机连接的、相应的网关路由器、BRAS、SR、GW或R基于数据包中的目的IP地址转发。将OpenFlow交换机分布式部署在上述网元中或与上述网元串接时,对用户访问实现了分布式的访问控制。
图7为现有技术的一个网络结构示意图。图8为本发明访问请求的控制系统一个应用实施例的结构示意图。本发明具体实施时,可以将现有网络接入段的BRAS和SR、与其他对等区域网络互连的GW、特定互联网应用系统所在的IDC网关路由器等网元替换为OpenFlow交换机或者在现有网络的网元旁串入OpenFlow交换机。将上述网元替换为OpenFlow交换机时,该OpenFlow交换机相当于集成了上述网元的路由功能和OpenFlow交换机功能。另外,也可以只替换应用服务器所在IDC的网关路由器,但是这就需要大容量、高性能的OpenFlow交换机,具有一定的局限性,不能做分布式的源端阻断。基于北向接口开发的应用控制器,根据本发明实施例向OpenFlow交换机下发流表,由OpenFlow交换机根据流表中规定的访问控制指令进行相应数据包转发。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法、设备和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法、设备和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (23)
1.一种访问请求的控制方法,其特征在于,包括:
应用服务器前端的通信设备接收用户请求访问应用服务器的会话数据包,所述数据包中包括所述应用服务器使用的目的IP地址和所述用户使用的源IP地址;
所述通信设备查询流表中预先设置的目的匹配表中是否包括所述数据包中的目的IP地址;所述流表包括所述目的匹配表和目的匹配表中各目的IP地址对应的源匹配表,所述目的匹配表中包括需要进行访问控制的应用服务器的目的IP地址,所述源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令;
若目的匹配表中包括所述数据包中的目的IP地址,通信设备查询所述数据包中目的IP地址对应的源匹配表中是否存在所述数据包中源IP地址对应的流记录;
若所述数据包中目的IP地址对应的源匹配表中存在所述数据包中源IP地址对应的流记录,通信设备根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制,所述访问控制指令包括转发或阻止;
否则,若所述数据包中目的IP地址对应的源匹配表中不存在所述数据包中源IP地址对应的流记录,通信设备向应用控制器转发所述数据包;
应用控制器根据所述应用服务器当前的负载情况向所述通信设备下发接纳控制指令,所述接纳控制指令包括所述数据包中的源IP地址和目的IP地址、以及对所述用户请求访问所述应用服务器的数据包的访问控制指令;
所述通信设备根据所述接纳控制指令在所述数据包中目的IP地址对应的源匹配表中添加所述源IP地址对应的流记录,并根据所述添加的流记录中的访问控制指令对所述数据包进行相应的访问控制,所述源IP地址对应的流记录包括所述数据包中的源IP地址和所述接纳控制指令中的访问控制指令。
2.根据权利要求1所述的方法,其特征在于,所述流记录还包括目的IP地址;
在所述数据包中目的IP地址对应的源匹配表中添加的所述源IP地址对应的流记录具体包括所述数据包中的源IP地址和目的IP地址、以及所述接纳控制指令中的访问控制指令。
3.根据权利要求1或2所述的方法,其特征在于,应用控制器中预先存储各需要进行访问控制的应用服务器的峰值会话数;
通信设备向应用控制器转发所述数据包时,还向所述应用控制器上报所述应用服务器的目的IP地址对应的源匹配表中的有效流记录数,所述有效流记录数为访问控制指令为转发且当前未失效的流记录的数量。
4.根据权利要求3所述的方法,其特征在于,所述应用服务器当前的负载情况具体为所述应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数;
所述应用控制器根据所述应用服务器当前的负载情况向所述通信设备下发接纳控制指令包括:
所述应用控制器识别所述应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数是否达到所述应用服务器的峰值会话数;
若所述应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数达到所述应用服务器的峰值会话数,确定对所述用户请求访问所述应用服务器的数据包的访问控制指令为阻止,并向所述通信设备下发访问控制指令为阻止的接纳控制指令;
否则,若所述应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数未达到所述应用服务器的峰值会话数,确定对所述用户请求访问所述应用服务器的数据包的访问控制指令为转发,并向所述通信设备下发访问控制指令为转发的接纳控制指令。
5.根据权利要求1至4任意一项所述的方法,其特征在于,还包括:
当所述用户请求访问所述应用服务器的会话结束时,结束的会话对应的源匹配表中的流记录失效,所述通信设备删除该失效的流记录。
6.根据权利要求5所述的方法,其特征在于,所述用户请求访问应用服务器的会话结束包括:
所述应用服务器的目的IP地址和所述用户的源IP地址对应的流记录在预设有效时长内未进行有效匹配。
7.根据权利要求1至6任意一项所述的方法,其特征在于,所述阻止具体为丢弃;
所述通信设备根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制具体为:通信设备丢弃所述数据包。
8.根据权利要求1至6任意一项所述的方法,其特征在于,所述阻止具体为缓存;
所述对应的流记录中的访问控制指令为阻止时,所述通信设备根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制具体为:所述通信设备按照接收到数据包的时间先后顺序将所述数据包加入缓存队列中。
9.根据权利要求8所述的方法,其特征在于,还包括:
通信设备中有流记录对应的会话结束时,通信设备向应用控制器上报已有用户的会话结束通知消息,并按照先入先出规则提取缓存队列中最先顺序的数据包发送给所述应用控制器;
应用控制器向所述通信设备下发针对所述最先顺序的数据包的接纳控制指令,针对所述最先顺序的数据包的接纳控制指令包括所述最先顺序的数据包中的源IP地址和目的IP地址、以及转发的访问控制指令;
所述通信设备根据所述最先顺序的数据包的接纳控制指令,在所述最先顺序的数据包中目的IP地址对应的源匹配表中添加所述最先顺序的数据包中源IP地址对应的流记录,并根据该添加的流记录中的访问控制指令对所述最先顺序的数据包进行转发。
10.根据权利要求1至9任意一项所述的方法,其特征在于,还包括:
若目的匹配表中不包括所述应用服务器使用的目的IP地址,对所述用户请求访问所述应用服务器的会话数据包进行正常转发。
11.根据权利要求1至10任意一项所述的方法,其特征在于,所述通信设备为所述应用服务器所在互联网数据中心IDC的网关路由器连接的OpenFlow交换机;
对所述数据包进行转发时,具体通过所述IDC的网关路由器基于所述数据包中的目的IP地址对所述数据包进行转发。
12.根据权利要求10所述的方法,其特征在于,所述通信设备还包括网络接入段的宽带接入服务器BRAS和业务路由器SR连接的OpenFlow交换机、以及与其他对等区域网络互连的网关GW连接的OpenFlow交换机中的任意一个或多个;
对所述数据包进行转发时,具体通过所述通信设备连接的、相应的网关路由器、BRAS、SR或GW基于所述数据包中的目的IP地址转发该数据包。
13.一种通信设备,其特征在于,包括:
接收单元,用于接收用户请求访问应用服务器的会话数据包,所述数据包中包括所述应用服务器使用的目的IP地址和所述用户使用的源IP地址;以及接收应用控制器根据所述应用服务器当前的负载情况下发的接纳控制指令,所述接纳控制指令包括所述数据包中的源IP地址和目的IP地址、以及对所述数据包的访问控制指令;
存储单元,用于存储流表,所述流表包括目的匹配表和目的匹配表中各目的IP地址对应的源匹配表,所述目的匹配表中包括需要进行访问控制的应用服务器的目的IP地址,所述源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令,所述访问控制指令包括转发或阻止;
查询单元,用于查询流表中预先设置的目的匹配表中是否包括所述数据包中的目的IP地址;若目的匹配表中包括所述数据包中的目的IP地址,查询所述数据包中目的IP地址对应的源匹配表中是否存在所述数据包中源IP地址对应的流记录;
控制单元,用于根据查询单元的查询结果,若所述数据包中目的IP地址对应的源匹配表中存在所述数据包中源IP地址对应的流记录,根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制;否则,若所述数据包中目的IP地址对应的源匹配表中不存在所述数据包中源IP地址对应的流记录,向应用控制器转发所述数据包;以及根据流表处理单元的请求,根据所述添加的流记录中的访问控制指令对所述数据包进行相应的访问控制;
流表处理单元,用于根据接收单元接收到的接纳控制指令在所述数据包中目的IP地址对应的源匹配表中添加所述源IP地址对应的流记录,所述源IP地址对应的流记录包括所述数据包中的源IP地址和所述接纳控制指令中的访问控制指令,并请求控制单元根据所述添加的流记录中的访问控制指令对所述数据包进行相应的访问控制。
14.根据权利要求13所述的设备,其特征在于,所述流表处理单元,还用于在所述用户请求访问所述应用服务器的会话结束时,确认结束的会话对应的源匹配表中的流记录失效,删除该失效的流记录。
15.根据权利要求13或14所述的设备,其特征在于,所述阻止具体为缓存;
所述设备还包括缓存单元,用于存储缓存队列;
所述对应的流记录中的访问控制指令为阻止时,所述控制单元根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制时,具体按照接收到数据包的时间先后顺序将所述数据包加入缓存队列中。
16.根据权利要求15所述的设备,其特征在于,还包括:
上报单元,用于在有流记录对应的会话结束时,向应用控制器上报已有用户的会话结束通知消息,并按照先入先出规则提取缓存队列中最先顺序的数据包发送给所述应用控制器;
所述接收单元,还用于接收应用控制器下发的针对所述最先顺序的数据包的接纳控制指令,针对所述最先顺序的数据包的接纳控制指令包括所述最先顺序的数据包中的源IP地址和目的IP地址、以及转发的访问控制指令;
所述流表处理单元,还用于根据所述最先顺序的数据包的接纳控制指令,在所述最先顺序的数据包中目的IP地址对应的源匹配表中添加所述最先顺序的数据包中源IP地址对应的流记录,并根据该添加的流记录中的访问控制指令对所述最先顺序的数据包进行转发。
17.根据权利要求13至16任意一项所述的设备,其特征在于,所述控制单元,还用于根据查询单元的查询结果,若目的匹配表中不包括所述应用服务器使用的目的IP地址,对所述用户请求访问所述应用服务器的会话数据包进行正常转发。
18.一种访问请求的控制系统,其特征在于,包括应用控制器和通信设备,其中:
所述通信设备,位于应用服务器前端,用于接收用户请求访问应用服务器的会话数据包,所述数据包中包括所述应用服务器使用的目的IP地址和所述用户使用的源IP地址;存储流表,并查询该流表中预先设置的目的匹配表中是否包括所述数据包中的目的IP地址;所述流表包括所述目的匹配表和目的匹配表中各目的IP地址对应的源匹配表,所述目的匹配表中包括需要进行访问控制的应用服务器的目的IP地址,所述源匹配表包括一条以上流记录,每条流记录包括一条源IP地址和访问控制指令;若目的匹配表中包括所述数据包中的目的IP地址,查询所述数据包中目的IP地址对应的源匹配表中是否存在所述数据包中源IP地址对应的流记录;若所述数据包中目的IP地址对应的源匹配表中存在所述数据包中源IP地址对应的流记录,根据所述对应的流记录中的访问控制指令对所述数据包进行相应的访问控制,所述访问控制指令包括转发或阻止;否则,若所述数据包中目的IP地址对应的源匹配表中不存在所述数据包中源IP地址对应的流记录,向应用控制器转发所述数据包;以及根据应用控制器下发的接纳控制指令在所述数据包中目的IP地址对应的源匹配表中添加所述源IP地址对应的流记录,并根据所述添加的流记录中的访问控制指令对所述数据包进行相应的访问控制,所述源IP地址对应的流记录包括所述数据包中的源IP地址和所述接纳控制指令中的访问控制指令;
应用控制器,用于根据所述应用服务器当前的负载情况向所述通信设备下发接纳控制指令,所述接纳控制指令包括所述数据包中的源IP地址和目的IP地址、以及对所述用户请求访问所述应用服务器的数据包的访问控制指令。
19.根据权利要求18所述的系统,其特征在于,所述应用服务器当前的负载情况具体为所述应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数;
所述通信设备,还用于在向应用控制器转发所述数据包时,上报所述应用服务器的目的IP地址对应的源匹配表中的有效流记录数,所述有效流记录数为访问控制指令为转发且当前未失效的流记录的数量;
所述应用控制器,还用于存储各需要进行访问控制的应用服务器的峰值会话数;根据所述应用服务器当前的负载情况向所述通信设备下发接纳控制指令时,具体用于:
识别所述应用服务器的目的IP地址对应的源匹配表中当前的有效流记录数是否达到所述应用服务器的峰值会话数;若所述应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数达到所述应用服务器的峰值会话数,确定对所述用户请求访问所述应用服务器的数据包的访问控制指令为阻止,并向所述通信设备下发访问控制指令为阻止的接纳控制指令;
否则,若所述应用控制器的目的IP地址对应的源匹配表中当前的有效流记录数未达到所述应用服务器的峰值会话数,确定对所述用户请求访问所述应用服务器的数据包的访问控制指令为转发,并向所述通信设备下发访问控制指令为转发的接纳控制指令。
20.根据权利要求18或19所述的系统,其特征在于,所述通信设备为OpenFlow交换机。
21.根据权利要求20所述的系统,其特征在于,所述OpenFlow交换机具体设置在所述应用服务器所在IDC的网关路由器中或者与该网关路由器串接;
所述OpenFlow交换机对所述数据包进行转发时,具体通过所述网关路由器基于所述数据包中的目的IP地址对所述数据包进行转发。
22.根据权利要求20所述的系统,其特征在于,所述OpenFlow交换机为多个,多个OpenFlow交换机分别设置在以下网元中或与以下网元串接:
所述应用服务器所在IDC的网关路由器;和/或
网络接入段的BRAS和SR、以及与其他对等区域网络互连的GW;
所述OpenFlow交换机对所述数据包进行转发时,具体通过所述OpenFlow交换机连接的、相应的网关路由器、BRAS、SR或GW基于所述数据包中的目的IP地址转发所述数据包。
23.根据权利要求18至22任意一项所述的系统,其特征在于,所述通信设备具体为权利要求13至18任意一项所述的通信设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410852224.5A CN105812277B (zh) | 2014-12-31 | 2014-12-31 | 访问请求的控制方法和系统、通信设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410852224.5A CN105812277B (zh) | 2014-12-31 | 2014-12-31 | 访问请求的控制方法和系统、通信设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105812277A true CN105812277A (zh) | 2016-07-27 |
CN105812277B CN105812277B (zh) | 2019-04-12 |
Family
ID=56421597
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410852224.5A Active CN105812277B (zh) | 2014-12-31 | 2014-12-31 | 访问请求的控制方法和系统、通信设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105812277B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107948314A (zh) * | 2017-12-21 | 2018-04-20 | 泰康保险集团股份有限公司 | 基于规则文件的业务处理方法、装置及服务器 |
CN108111422A (zh) * | 2017-12-29 | 2018-06-01 | 北京明朝万达科技股份有限公司 | 一种基于dpdk的数据高速多路转发方法及装置 |
CN109510848A (zh) * | 2017-09-14 | 2019-03-22 | 大唐移动通信设备有限公司 | 一种通信系统、会话管理方法、数据发送方法及装置 |
CN110149248A (zh) * | 2019-06-06 | 2019-08-20 | 杭州商湾网络科技有限公司 | 一种快速统计分析路由器流量的方法 |
CN113472717A (zh) * | 2020-03-30 | 2021-10-01 | 中国电信股份有限公司 | Sdn访问控制方法、装置和计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102843298A (zh) * | 2012-09-12 | 2012-12-26 | 盛科网络(苏州)有限公司 | 实现交换机芯片Openflow流表优先级的方法及系统 |
CN103905317A (zh) * | 2012-12-28 | 2014-07-02 | 中兴通讯股份有限公司 | 一种软件定义网络的报文处理方法和系统 |
US8787388B1 (en) * | 2011-08-29 | 2014-07-22 | Big Switch Networks, Inc. | System and methods for forwarding packets through a network |
US20140269288A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Software defined network-based load balancing for physical and virtual networks |
CN104243337A (zh) * | 2013-06-09 | 2014-12-24 | 杭州华三通信技术有限公司 | 一种跨集群负载均衡的方法及装置 |
-
2014
- 2014-12-31 CN CN201410852224.5A patent/CN105812277B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8787388B1 (en) * | 2011-08-29 | 2014-07-22 | Big Switch Networks, Inc. | System and methods for forwarding packets through a network |
CN102843298A (zh) * | 2012-09-12 | 2012-12-26 | 盛科网络(苏州)有限公司 | 实现交换机芯片Openflow流表优先级的方法及系统 |
CN103905317A (zh) * | 2012-12-28 | 2014-07-02 | 中兴通讯股份有限公司 | 一种软件定义网络的报文处理方法和系统 |
US20140269288A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Software defined network-based load balancing for physical and virtual networks |
CN104243337A (zh) * | 2013-06-09 | 2014-12-24 | 杭州华三通信技术有限公司 | 一种跨集群负载均衡的方法及装置 |
Non-Patent Citations (1)
Title |
---|
ZHIHAO SHANG ET AL.: "Design and implementation of server cluster dynamic load balancing based on OpenFlow", 《IEEE ICAST-UMEDIA》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109510848A (zh) * | 2017-09-14 | 2019-03-22 | 大唐移动通信设备有限公司 | 一种通信系统、会话管理方法、数据发送方法及装置 |
CN107948314A (zh) * | 2017-12-21 | 2018-04-20 | 泰康保险集团股份有限公司 | 基于规则文件的业务处理方法、装置及服务器 |
CN107948314B (zh) * | 2017-12-21 | 2021-07-06 | 泰康保险集团股份有限公司 | 基于规则文件的业务处理方法、装置及服务器 |
CN108111422A (zh) * | 2017-12-29 | 2018-06-01 | 北京明朝万达科技股份有限公司 | 一种基于dpdk的数据高速多路转发方法及装置 |
CN110149248A (zh) * | 2019-06-06 | 2019-08-20 | 杭州商湾网络科技有限公司 | 一种快速统计分析路由器流量的方法 |
CN110149248B (zh) * | 2019-06-06 | 2020-03-03 | 杭州商湾网络科技有限公司 | 一种快速统计分析路由器流量的方法 |
CN113472717A (zh) * | 2020-03-30 | 2021-10-01 | 中国电信股份有限公司 | Sdn访问控制方法、装置和计算机可读存储介质 |
CN113472717B (zh) * | 2020-03-30 | 2022-09-23 | 中国电信股份有限公司 | Sdn访问控制方法、装置和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105812277B (zh) | 2019-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11522734B2 (en) | Method for controlling a remote service access path and relevant device | |
KR101987784B1 (ko) | 소프트웨어 정의 네트워크를 기반으로 내용 배포 네트워크를 구현하는 방법 및 시스템 | |
KR101962620B1 (ko) | 소프트웨어 정의 네트워크를 기반으로 내용 배포 네트워크를 구현하는 방법 및 시스템 | |
CN103476062B (zh) | 一种数据流调度的方法、设备和系统 | |
KR101494561B1 (ko) | 라우터에서 트래픽을 관리하는 기법 | |
KR101995145B1 (ko) | Ue들 및 고정 액세스 네트워크에서 작동하는 방법 | |
Song et al. | A congestion avoidance algorithm in SDN environment | |
CN105812277A (zh) | 访问请求的控制方法和系统、通信设备 | |
WO2014093900A1 (en) | Content based traffic engineering in software defined information centric networks | |
CN102726031A (zh) | 内容处理方法、装置和系统 | |
KR101959970B1 (ko) | 컨텐츠 전송 서비스 방법, 이를 위한 캐시 장치 | |
KR102376496B1 (ko) | 서비스 스트림 분산 포워딩 시스템 및 그 방법 | |
CN105763385A (zh) | 流量调度方法及装置 | |
Panchenko et al. | Method for adaptive client oriented management of quality of service in integrated SDN/CLOUD networks | |
CA2729229C (en) | Inter-office communication methods and devices | |
WO2020249128A1 (zh) | 一种服务路由方法及装置 | |
WO2011140910A1 (zh) | 业务处理单元和方法以及业务控制网关和负载均衡方法 | |
CN111741508B (zh) | 建立通信连接的方法、控制器、转发设备、设备及介质 | |
KR20220053383A (ko) | Nf 서비스 연동 지원장치 및 nf 서비스 연동 지원방법 | |
Almohaimeed et al. | Distribution Model for OpenFlow-Based Networks | |
EP3131344A1 (en) | Method and system for discovery of access aggregation points for bonding approaches in a telecommunication network | |
JP6128580B2 (ja) | 通信装置、通信制御方法およびプログラム | |
CN109150725A (zh) | 流量疏导方法及服务器 | |
JP6174522B2 (ja) | セッションボーダーコントローラシステム、その制御方法及びプログラム | |
CN105704176A (zh) | 一种保障带宽和服务质量的方法、决策设备和网络架构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |