CN105357146A - 出口网关内缓存队列饱和攻击防御方法、装置及系统 - Google Patents
出口网关内缓存队列饱和攻击防御方法、装置及系统 Download PDFInfo
- Publication number
- CN105357146A CN105357146A CN201510695082.0A CN201510695082A CN105357146A CN 105357146 A CN105357146 A CN 105357146A CN 201510695082 A CN201510695082 A CN 201510695082A CN 105357146 A CN105357146 A CN 105357146A
- Authority
- CN
- China
- Prior art keywords
- list item
- packet
- egress gateways
- flow table
- stream list
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种出口网关内缓存队列饱和攻击防御方法、设备及系统,属于网络安全领域。所述方法包括:接收终端发送的数据包;当数据包静态流表与动态流表中的流表项均不匹配时,则将该数据包发送至中心控制器;根据中心控制器反馈的流表项转发该数据包。本发明解决了当恶意用户发送大量目的地不同且携带较大载荷的数据包时,很容易造成缓存队列溢出,使得整个SDN网络过饱和的问题;达到了使常用数据包的匹配直接在出口网关中进行,而无须加入发送至中心控制器的缓存队列中,避免移动网络遭到非法终端的网络攻击时,由于出口网关突然接收到大量目的地不同的数据包,而造成缓存队列溢出的效果。
Description
技术领域
本发明涉及网络安全领域,特别涉及一种出口网关内缓存队列饱和攻击防御方法、装置及系统。
背景技术
为了更好的为第四代移动通信用户提供可靠互联网服务,在未来移动互联网设计中提出了通过集中控制来进行移动通信用户的访问。软件定义网络(英文:SoftwareDefinedNetwork,简称:SDN)采用了集中控制的思想,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制。
当来自用户平面的数据流到达交换机时,若交换机上存在与该数据流匹配的流表则进行转发,若没有与该数据流匹配的流表则在缓存队列中暂时缓存这些数据包,并把缓存队列中的数据包上传给中心控制器进行流表查询。中心控制器将查询到的流表发送给交换机,由交换机存储该流表。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:交换机中缓存队列的大小有限,当接收到大量目的地不同的数据包时,很容易造成缓存队列的溢出。
发明内容
为了解决现有技术中交换机的缓存队列大小有限,当恶意用户发送大量目的地不同且携带较大载荷的数据包时,很容易造成缓存队列溢出,进而加剧控制器的处理负担,使得整个SDN网络过饱和的问题,本发明实施例提供了一种出口网关内缓存队列饱和攻击防御方法、装置及系统。所述技术方案如下:
第一方面,提供了一种出口网关内缓存队列饱和攻击防御方法,应用于出口网关中,所述出口网关用于连接移动网络与软件定义网络,所述方法包括:
接收终端发送的数据包,将所述数据包与所述出口网关中存储的静态流表进行匹配,所述静态流表中每条流表项是中心控制器根据确定出的常用服务器的地址生成的;
当所述数据包与所述静态流表中的流表项均不匹配时,将所述数据包与所述出口网关中存储的动态流表进行匹配;
当所述数据包与所述动态流表中的流表项均不匹配时,则将所述数据包发送至所述中心控制器,所述数据包用于触发所述中心控制器根据所述数据包获取并反馈与所述数据包内目标地址对应的流表项;
接收所述中心控制器反馈的所述流表项,根据所述流表项转发所述数据包。
可选的,在所述接收所述中心控制器反馈的所述流表项之后,所述方法包括:
将所述流表项添加至所述动态流表中。
可选的,所述方法还包括:
当所述出口网关的缓存队列中数据包的容量与所述缓存队列的总容量的比值达到预定比值阈值时,则将所述缓存队列中所有数据包的包头和载荷进行拆分,丢弃拆分后得到的载荷,所述缓存队列中用于存储所述出口网关接收到的且与所述静态流表和所述动态流表均不匹配的数据包;
向所述中心控制器发送预警信息,所述预警信息中携带有拆分后得到的包头,所述预警信息用于触发所述中心控制器根据所述包头,分析所述终端是否为非法终端。
可选的,所述方法还包括:
根据所述动态流表中每个流表项被匹配成功的次数,累计所述流表项所对应的目标地址被访问的访问次数;
将每个目标地址的访问次数发送至所述中心控制器,由所述中心控制器获取所述目标地址的总访问次数,在判定所述目标地址的总访问次数达到预定阈值时,为所述目标地址生成流表项,向出口网关发送静态流表更新通知,所述静态流表更新通知中携带有所述流表项;
接收所述中心控制器发送的所述静态流表更新通知,将所述流表中的流表项添加至所述出口网关的所述静态流表中;
从所述动态流表中删除所述流表项。
可选的,所述方法还包括:
统计在统计时刻前预定时长内所述动态流表中各个流表项被匹配成功的匹配次数;
从所述动态流表中删除匹配次数少于预定阈值的流表项。
可选的,所述方法还包括:
接收所述中心控制器发送的非法终端的标识;
向移动管理实体(英文:MobilityManagementEntity,简称:MME)或归属签约用户服务器(英文:HomeSubscriberServer,简称:HSS)发送所述非法终端的标识,由所述MME或所述HSS通知所述非法终端所接入的基站禁止所述非法终端在预定时间段内进行访问。
第二方面,提供了一种出口网关内缓存队列饱和攻击防御方法,应用于中心控制器中,所述中心控制器位于通过出口网关与移动网络连接的软件定义网络中,所述方法包括:
接收所述出口网关发送的数据包,所述数据包是所述出口网关在确定所述数据包与所述出口网关内的静态流表和动态流表均不匹配时发送的;
获取与所述数据包的目标地址对应的流表项;
向所述出口网关发送所述流表项,所述流表项用于触发所述出口网关根据所述流表项对所述数据包进行转发。
可选的,所述方法还包括:
确定出各个常用服务器的地址;
以各个所述地址为目标地址生成流表项;
将生成的各个所述流表项发送至所述出口网关,所述流表项用于触发所述出口网关将所述流表项存储至所述出口网关的静态流表中。
可选的,所述确定出各个常用服务器的地址,包括:
接收服务器的注册请求,对发送所述注册请求的服务器的地址进行认证,将认证成功的服务器的地址确定为所述常用服务器的地址;和/或,
接收各个出口网关发送的目标地址的访问次数,将同一个目标地址的访问次数进行累加,得到每个目标地址的总访问次数,在判定所述目标地址的总访问次数达到预定阈值时,确定所述目标地址为所述常用服务器的地址,所述目标地址的访问次数是所述出口网关对所包含的动态流表中具有所述目标地址的流表项被访问的次数进行统计后得到的。
可选的,所述方法还包括:
接收所述出口网关发送的预警信息,所述预警信息中携带有包头,所述包头是所述出口网关在判定缓存队列中的数据包的容量与所述缓存队列的总容量的比值达到预定比值阈值时,对所述缓存队列中的数据包进行拆分后得到的;
根据所述包头中的源地址和目标地址,分析是否存在非法终端;
在确定出非法终端后,向所述出口网关发送所述非法终端的标识,所述非法终端的标识用于触发所述出口网关向移动管理节点功能MME或归属签约用户服务器HSS发送所述非法终端的标识,由所述MME或所述HSS通知所述非法终端所接入的基站禁止所述非法终端在预定时间段内进行访问。
第三方面,提供了一种出口网关内缓存队列饱和攻击防御装置,应用于出口网关中,所述出口网关用于连接移动网络与软件定义网络,所述装置包括:
第一接收模块,用于接收终端发送的数据包,将所述数据包与所述出口网关中存储的静态流表进行匹配,所述静态流表中每条流表项是中心控制器根据确定出的常用服务器的地址生成的;
匹配模块,用于当所述第一接收模块接收的所述数据包与所述静态流表中的流表项均不匹配时,将所述数据包与所述出口网关中存储的动态流表进行匹配;
第一发送模块,用于当所述第一接收模块接收的所述数据包与所述动态流表中的流表项均不匹配时,则将所述数据包发送至所述中心控制器,所述数据包用于触发所述中心控制器根据所述数据包获取并反馈与所述数据包内目标地址对应的流表项;
转发模块,用于接收所述中心控制器反馈的所述流表项,根据所述流表项转发所述数据包。
可选的,所述装置包括:
第一添加模块,用于在所述接收所述中心控制器反馈的所述流表项之后,将所述流表项添加至所述动态流表中。
可选的,所述装置还包括:
拆分模块,用于当所述出口网关的缓存队列中数据包的容量与所述缓存队列的总容量的比值达到预定比值阈值时,则将所述缓存队列中所有数据包的包头和载荷进行拆分,丢弃拆分后得到的载荷,所述缓存队列中用于存储所述出口网关接收到的且与所述静态流表和所述动态流表均不匹配的数据包;
第二发送模块,用于向所述中心控制器发送预警信息,所述预警信息中携带有拆分后得到的包头,所述预警信息用于触发所述中心控制器根据所述包头,分析所述终端是否为非法终端。
可选的,所述装置还包括:
累计模块,用于根据所述动态流表中每个流表项被匹配成功的次数,累计所述流表项所对应的目标地址被访问的访问次数;
第三发送模块,用于将所述累计模块累积的每个目标地址的访问次数发送至所述中心控制器,由所述中心控制器获取所述目标地址的总访问次数,在判定所述目标地址的总访问次数达到预定阈值时,为所述目标地址生成流表项,向出口网关发送静态流表更新通知,所述静态流表更新通知中携带有所述流表项;
第二添加模块,用于接收所述中心控制器发送的所述静态流表更新通知,将所述流表中的流表项添加至所述出口网关的所述静态流表中;
第一删除模块,用于从所述动态流表中删除所述流表项。
可选的,所述装置还包括:
统计模块,用于统计在统计时刻前预定时长内所述动态流表中各个流表项被匹配成功的匹配次数;
第二删除模块,用于从所述动态流表中删除匹配次数少于预定阈值的流表项。
可选的,所述装置还包括:
第二接收模块,用于接收所述中心控制器发送的非法终端的标识;
第四发送模块,用于向移动管理节点功能MME或归属签约用户服务器HSS发送所述第二接收模块接收的所述非法终端的标识,由所述MME或所述HSS通知所述非法终端所接入的基站禁止所述非法终端在预定时间段内进行访问。
第四方面,提供了一种出口网关内缓存队列饱和攻击防御装置,应用于中心控制器中,所述中心控制器位于通过出口网关与移动网络连接的软件定义网络中,所述装置包括:
第一接收模块,用于接收所述出口网关发送的数据包,所述数据包是所述出口网关在确定所述数据包与所述出口网关内的静态流表和动态流表均不匹配时发送的;
获取模块,用于获取与所述第一接收模块接收的所述数据包的目标地址对应的流表项;
第一发送模块,用于向所述出口网关发送所述获取模块获取的所述流表项,所述流表项用于触发所述出口网关根据所述流表项对所述数据包进行转发。
可选的,所述装置还包括:
确定模块,用于确定出各个常用服务器的地址;
生成模块,用于以所述确定模块确定的各个所述地址为目标地址生成流表项;
第二发送模块,用于将所述生成模块生成的各个所述流表项发送至所述出口网关,所述流表项用于触发所述出口网关将所述流表项存储至所述出口网关的静态流表中。
可选的,所述确定模块,包括:
第一确定单元,用于接收服务器的注册请求,对发送所述注册请求的服务器的地址进行认证,将认证成功的服务器的地址确定为所述常用服务器的地址;和/或,
第二确定单元,用于接收各个出口网关发送的目标地址的访问次数,将同一个目标地址的访问次数进行累加,得到每个目标地址的总访问次数,在判定所述目标地址的总访问次数达到预定阈值时,确定所述目标地址为所述常用服务器的地址,所述目标地址的访问次数是所述出口网关对所包含的动态流表中具有所述目标地址的流表项被访问的次数进行统计后得到的。
可选的,所述装置还包括:
第二接收模块,用于接收所述出口网关发送的预警信息,所述预警信息中携带有包头,所述包头是所述出口网关在判定缓存队列中的数据包的容量与所述缓存队列的总容量的比值达到预定比值阈值时,对所述缓存队列中的数据包进行拆分后得到的;
分析模块,用于根据所述第二接收模块接收的所述包头中的源地址和目标地址,分析是否存在非法终端;
第三发送模块,用于在所述分析模块确定出非法终端后,向所述出口网关发送所述非法终端的标识,所述非法终端的标识用于触发所述出口网关向移动管理节点功能MME或归属签约用户服务器HSS发送所述非法终端的标识,由所述MME或所述HSS通知所述非法终端所接入的基站禁止所述非法终端在预定时间段内进行访问。
第五方面,提供了一种出口网关内缓存队列饱和攻击防御系统,所述系统包括由如第三方面以及第三方面各种可选的实现方式中所描述的出口网关连接的移动网络和软件定义网络;
所述软件定义网络包括如第四方面以及第四方面各种可选的实现方式中所描述的中心控制器。
本发明实施例提供的技术方案带来的有益效果是:
通过出口网关存储静态流表和动态流表,当数据包与静态流表和动态流表中的流表项均不匹配时,则将该数据包发送至中心控制器,当接收到中心控制器反馈的流表项时,根据该流表项转发该数据包;由于静态流表存储了与常用服务器的地址生成对应的流表项,当对常用服务器进行访问时,可以避免再次将访问常用服务器的数据包存储至缓存队列,因此解决了相关技术中交换机中缓存队列的大小有限,当接收到大量目的地不同的数据包时,很容易造成缓存队列的溢出的问题;达到了使访问常用服务器的数据包直接转发,而无须加入缓存队列,避免移动网络遭到非法终端的网络攻击时,由于出口网关突然接收到大量目的地不同的数据包,而造成缓存队列溢出的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御方法所涉及的网络架构图;
图2是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御方法的方法流程图;
图3是本发明另一个实施例中提供的出口网关内缓存队列饱和攻击防御方法的方法流程图;
图4A是本发明再一个实施例中提供的出口网关内缓存队列饱和攻击防御方法的方法流程图;
图4B是本发明再一个实施例中提供的出口网关内缓存队列饱和攻击防御方法的方法流程图;
图5A是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御装置的结构方框图;
图5B是本发明另一个实施例中提供的出口网关内缓存队列饱和攻击防御装置的结构方框图;
图6A是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御装置的结构方框图;
图6B是本发明另一个实施例中提供的出口网关内缓存队列饱和攻击防御装置的结构方框图;
图7是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御系统的结构方框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
为了便于本发明的理解,首先对基于OpenFlow协议的SDN网络的结构进行如下说明:
基于OpenFlow协议的SDN网络包括OpenFlow交换机(英文:OpenFlowSwitch)和OpenFlow控制器(英文:OpenFlowController)。
其中,OpenFlow交换机负责依据存储的流表进行数据转发,OpenFlow控制器负责路由控制,也就是说OpenFlow控制器可以通过一条安全信道向OpenFlow交换机下发流表,从而达到控制OpenFlow交换机进行数据转发的目的,实现数据转发和路由控制的分离。OpenFlow协议则定义了OpenFlow交换机和OpenFlow控制器之间通信的安全信道(SecureChannel)。通过该通道,OpenFlow控制器可以实现对OpenFlow交换机的配置和管理,接收OpenFlow交换机发送的事件报告,以及与OpenFlow交换机进行数据报文的交互。
在本发明的各个实施例中,如无特殊说明,出口网关即为SDN网络中的OpenFlow交换机,中心控制器即为SDN网络中的OpenFlow控制器。
图1是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御方法所涉及的网络架构图,该网络架构包括移动网络110和软件定义网络120。
移动网络110通过出口网关130与软件定义网络120连接。
移动网络110可以为LTE(中文:通用移动通信技术的长期演进,英文:LongTermEvolution)网络、3G(中文名:第三代移动通信技术,外文名:3rd-Generation)或4G(中文:第四代移动通信技术,英文:The4thGenerationMobileCommunicationTechnology)网络等,本发明各个实施例对移动网络110的网络类型不进行限定。
移动终端110中还可以包括基站111、与基站连接的终端112、移动管理实体(英文:MobilityManagementEntity,简称:MME)113、网关(一般为非出口网关)114等。
软件定义网络120包括中心控制器121。
可选的,该网络架构的中心控制器121可以是相互独立的设备,也可以是同一个控制器中的各个部分,或者同属于一个控制器集群。
图2是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御方法的方法流程图,该出口网关内缓存队列饱和攻击防御方法应用于图1所示网络架构中的出口网关130中。该出口网关内缓存队列饱和攻击防御方法包括如下步骤:
步骤201,接收终端发送的数据包,将该数据包与出口网关中存储的静态流表进行匹配,该静态流表中每条流表项是中心控制器根据确定出的常用服务器的地址生成的。
步骤202,当数据包与静态流表中的流表项均不匹配时,将该数据包与出口网关中存储的动态流表进行匹配。
步骤203,当数据包与动态流表中的流表项均不匹配时,则将数据包发送至该中心控制器,该数据包用于触发该中心控制器根据该数据包获取并反馈与该数据包内目标地址对应的流表项。
步骤204,接收中心控制器反馈的流表项,根据该流表项转发该数据包。
综上所述,本发明实施例中提供的出口网关内缓存队列饱和攻击防御方法,通过出口网关存储静态流表和动态流表,当数据包与静态流表和动态流表中的流表项均不匹配时,则将该数据包发送至所述中心控制器,当接收到中心控制器反馈的流表项时,根据该流表项转发该数据包;由于静态流表存储了与常用服务器的地址生成对应的流表项,当对常用服务器进行访问时,可以避免再次将访问常用服务器的数据包存储至缓存队列,因此解决了相关技术中交换机中缓存队列的大小有限,当接收到大量目的地不同的数据包时,很容易造成缓存队列的溢出的问题;达到了使访问常用服务器的数据包直接转发,而无须加入缓存队列,避免移动网络遭到非法终端的网络攻击时,由于出口网关突然接收到大量目的地不同的数据包,而造成缓存队列溢出的效果。
图3是本发明另一个实施例中提供的出口网关内缓存队列饱和攻击防御方法的方法流程图,该出口网关内缓存队列饱和攻击防御方法应用于图1所示网络架构中的中心控制器121中。该出口网关内缓存队列饱和攻击防御方法包括如下步骤:
步骤301,接收出口网关发送的数据包,该数据包是该出口网关在确定该数据包与该出口网关内的静态流表和动态流表均不匹配时发送的。
步骤302,获取与数据包的目标地址对应的流表项。
步骤303,向出口网关发送流表项,该流表项用于触发该出口网关根据流表项对该数据包进行转发。
综上所述,本发明实施例中提供的出口网关内缓存队列饱和攻击防御方法,通过接收出口网关发送的数据包,获取与数据包的目标地址对应的流表项,向出口网关发送流表项;由于中心控制器只需处理与出口网管的流表不匹配的数据包,因此解决了相关技术中交换机的缓存队列大小有限,当恶意用户发送大量目的地不同且携带较大载荷的数据包时,很容易造成缓存队列溢出,进而加剧控制器的处理负担,使得整个SDN网络过饱和的问题;达到了实时更新出口网关所存储的静态流表和动态流表中的流表项,使常用数据包的匹配直接在出口网关中进行,而无须加入发送至中心控制器的缓存队列中,避免移动网络遭到非法终端的网络攻击时,由于出口网关突然接收到大量目的地不同的数据包,而造成缓存队列溢出的效果。
图4A是本发明再一个实施例中提供的出口网关内缓存队列饱和攻击防御方法的方法流程图,该出口网关内缓存队列饱和攻击防御方法应用于图1所示网络架构中的出口网关130中。该出口网关内缓存队列饱和攻击防御方法包括如下步骤:
步骤401,中心控制器确定出各个常用服务器的地址。
常用服务器通常为用户通常访问的服务器,或者说,常用服务器备用户访问的次数比较多。
步骤402,中心控制器以各个地址为目标地址生成流表项。
对于每个常用服务器的地址,中心控制器均以该地址为目标地址预先生成流表项。
步骤403,中心控制器将生成的各个流表项发送至出口网关。
通常情况下,人们对主流网站的点击次数会比一般网站的点击要多,即人们对常用服务器的访问请求次数较多。为了减少后续中心控制器的工作压力,中心控制器可以预先根据各个常用服务器的地址生成流表项,将所生成流表项发送至出口网关,这样出口网关可以将访问常用服务器的数据包进行成功匹配和转发,而中心控制器则只需处理目标地址是非常用服务器的数据包的即可。
步骤404,出口网关将各个流表项存储至静态流表中。
在实际应用中,出口网关与中心控制器连接上之后,可以从中心控制器获取到与常用服务器对应的流表项,并可以预先将这些流表项存储至静态流表中,以减少后续过程中向中心控制器上报的无法匹配的数据包。
步骤405,出口网关接收终端发送的数据包,将该数据包与出口网关中存储的静态流表进行匹配。
由于该静态流表中每条流表项是中心控制器根据常用服务器的地址生成的,且流表项中至少包括目标IP地址和下一跳网络设备的IP地址,因此静态流表中的每条流表项用于指示数据包在被转发至目标IP地址时的下一跳网络设备。
出口网关接收至少一个终端发送的数据包,出口网关在每接收一个数据包后,为了判定该数据包是否有合适的转发路径,或者为该数据包确定转发路径,出口网关通常会将接收到的数据包的目标IP地址与静态流表中的流表项的目标IP地址进行匹配,在匹配成功时,则按照流表项所指示的路径进行转发。
位于移动网络中的终端在访问SDN网络时,需要向连接移动网络和SDN网络的出口网关发送数据包。这里所讲的终端均是在移动网络进行过认证并成功接入至移动网络的基站中的终端,这些终端可以为智能手机、平板电脑、可穿戴式设备等,本实施例不对终端的类型进行限定。
步骤406,当数据包与静态流表中的流表项均不匹配时,出口网关将该数据包与出口网关中存储的动态流表进行匹配。
当数据包与静态流表中的流表项均不匹配时,出口网关会将该数据包与出口网关中存储的动态流表进行匹配。
这里所讲的动态流表中每条流表项均是出口网关在判定接收到的数据包与存储的流表项均不匹配时上报给中心控制器,由中心控制器获取并反馈的与该数据包中的目标地址对应的流表项。
步骤407,当数据包与动态流表中的流表项均不匹配时,出口网关将数据包发送至该中心控制器。
当数据包与动态流表中的流表项均不匹配时,说明出口网关无法判断转发该数据包时下一跳网络设备的地址,此时出口网关会将数据包发送至该中心控制器,由中心控制器获取并反馈的与该数据包中的目标地址对应的流表项。
步骤408,中心控制器获取与数据包的目标地址对应的流表项,将该流表项发送至出口网关。
在中心控制器接收到出口网关发送的数据包后,先查询与该数据包的目标地址对应的流表项,若查询到与该数据包的目标地址对应的流表项,则直接向出口网关发送该流表项,若未查询到与所述数据包的目标地址对应的流表项,则生成与该数据包的目标地址对应的流表项,并向出口网关发送该流表项。
步骤409,出口网关将该流表项添加至动态流表中。
由于中心控制器一旦接收到数据包,便会将与该数据包对应的流表项发送至出口网关的动态流表中,这样会容易造成存储过多的动态流表,进而增加出口网关的存储负担。
在一种情况下,考虑到用户可能仅在一段时间内访问某个非常用的服务器,而过一段时间后则不再访问该服务器的情况,此时为了减少动态流表对出口网关的存储占用,出口网关可以将动态流表中与该服务器的地址对应的流表项进行删除。在具体实现时,出口网关统计在统计时刻前预定时长内动态流表中各个流表项被匹配成功的匹配次数;从动态流表中删除匹配次数少于预定阈值的流表项。
在另一种情况下,考虑到某个服务器(未被服务器认定为常用服务器的服务器)尚未在中心控制器进行过认证,但该服务器受到越来越多用户的关注和访问,此时中心服务器则可以将该服务器的目标地址所对应的流表项推送至出口网关的静态流表中。该过程通常可以通过出口网关对该服务器访问次数的上报以及中心控制器对该服务器总访问次数的统计来实现,具体实现可以参见如下步骤410至步骤413。
步骤410,出口网关根据该动态流表中每个流表项被匹配成功的次数,累计该流表项所对应的目标地址被访问的访问次数。
实际实现时,动态流表中的流表项每被匹配成功一次,出口网关则将与该流表项对应的访问次数加1。
步骤411,出口网关将每个目标地址的访问次数发送至中心控制器。
为了降低出口网关与中心控制器之间的网络宽带的占用,出口网关可以每隔预定时间间隔将统计出的每个目标地址的访问次数发送至中心控制器。
可选的,出口网关在将目标地址的访问次数发送至中心控制器之后,将这些目标地址的访问次数清零,重新统计这些目标地址的访问次数。
步骤412,中心控制器获取目标地址的总访问次数,在判定该目标地址的总访问次数达到预定阈值时,为该目标地址生成流表项,向出口网关发送静态流表更新通知。
通常情况下,与中心控制器关联的出口网关数量不止一个,不同的出口网关可能会处理具有相同目标地址的数据包,也就是说,中心控制器可能会接收到不同的出口网关发送的同一个目标地址被访问的访问次数。
为了能说明该目标地址所对应的服务器被用户访问,具有成为常用服务器的条件,中心控制器可以将同一个目标地址的访问次数进行统计,得到每个目标地址的总访问次数。
当某目标地址的总访问次数达到预定阈值时,通常表明该目标地址所对应的服务器可能为常用服务器,此时可以将该目标地址的流表项作为常用服务器所对应的流表项,并推送给出口网关。
在中心控制器向出口网关推送最新确定的常用服务器的流表项时,可以在确定后直接推送,也可以在下次与出口网关连接时,与其他常用服务器的流表项一起推送给连接的出口网关。
步骤413,出口网关接收中心控制器发送的静态流表更新通知,将静态流表更新通知中的流表项添加至出口网关的静态流表中,从动态流表中删除流表项。
这里所讲的静态流表更新通知中携带有最新确定出的常用服务器的流表项。
当出口网关将该流表项存入静态流表后,会在动态流表中查询是否存在该最新存入静态流表中的流表项,若存在,则从动态流表中删除该流表项。
综上所述,本发明实施例中提供的出口网关内缓存队列饱和攻击防御方法,通过出口网关存储静态流表和动态流表,当数据包与静态流表和动态流表中的流表项均不匹配时,则将该数据包发送至所述中心控制器,当接收到中心控制器反馈的流表项时,根据该流表项转发该数据包;由于静态流表存储了与常用服务器的地址生成对应的流表项,当对常用服务器进行访问时,可以避免再次将访问常用服务器的数据包存储至缓存队列,因此解决了相关技术中交换机中缓存队列的大小有限,当接收到大量目的地不同的数据包时,很容易造成缓存队列的溢出的问题;达到了使访问常用服务器的数据包直接转发,而无须加入缓存队列,避免移动网络遭到非法终端的网络攻击时,由于出口网关突然接收到大量目的地不同的数据包,而造成缓存队列溢出的效果。
在本实施例中,由于中心控制器一旦接收到数据包,便会将与该数据包对应的流表项发送至出口网关的动态流表中,这样是增加不减少的方式容易造成动态流表的溢出,因此,出口网关会根据动态流表中的流表项会根据被匹配成功的次数是否达到预定阈值,选择是否保留该动态流表中的流表项,以避免动态流量表的溢出。
在一种可能实现方式中,在步骤401中,中心控制器可以通过以下两种方式获取常用服务器的地址。
第一种方式,接收服务器的注册请求,对发送该注册请求的服务器的地址进行认证,将认证成功的服务器的地址确定为常用服务器的地址。
中心控制器可以向服务器广播请求获取服务器的注册信息,并通过对服务器回复的注册请求或地址进行认证,将认证成功的服务器的地址确定为常用服务器的地址。
通常情况下,主流网站都是有合法公司幕后经营,合法公司具有合法的企业认证的信息。因此,该注册信息是该服务器的域名信息也可以是该服务器所对应公司的企业认证信息,本实施例对注册信息的具体内容不做限定。
第二种方式,接收各个出口网关发送的目标地址的访问次数,将同一个目标地址的访问次数进行累加,得到每个目标地址的总访问次数,在判定目标地址的总访问次数达到预定阈值时,确定该目标地址为常用服务器的地址。
该目标地址的访问次数是出口网关对所包含的动态流表中具有该目标地址的流表项被访问的次数进行统计后得到的。
该目标地址被访问的访问次数达到预定阈值时,说明该目标地址所对应的服务器可能为常用服务器,但静态流表中未存储与该目标地址对应的流表项,因此,中心控制器判定该目标地址的总访问次数达到预定阈值后,确定该目标地址为常用服务器的地址,并向出口网关发送携带有该流表项的静态流表更新通知,来触发出口网关更新所存储的静态流表。
在一种可能的实现方式中,当中心控制器来不及处理出口网关发送的数据包时,出口网关会将数据包暂存入缓存队列,等待中心控制器的处理,其中该缓存队列中用于存储该出口网关接收到的且与静态流表和动态流表均不匹配的数据包。当然,缓存队列的容量是有限的,当出口网关发送至中心控制器的数据包突然增多时,可能会造成缓存队列的溢出。为了避免缓存队列溢出的情况发生,可以仅保留数据包的包头信息,并向中心控制器进行报警。具体参见图4B中的描述。
图4B是本发明再一个实施例中提供的出口网关内缓存队列饱和攻击防御方法的方法流程图,该出口网关内缓存队列饱和攻击防御方法应用于图1所示网络架构中的中心控制器121中。该出口网关内缓存队列饱和攻击防御方法包括还如下步骤:
步骤414,当出口网关的缓存队列中数据包的容量与该缓存队列的总容量的比值达到预定比值阈值时,出口网关将该缓存队列中所有数据包的包头和载荷进行拆分,丢弃拆分后得到的载荷。
当出口网关的缓存队列中数据包的容量与该缓存队列的总容量的比值达到预定比值阈值时,通常表明若出口网关再继续向缓存队列存放数据包,则有可能造成缓存队列的溢出,缓存队列中部分数据包将会被丢弃。
数据包的载荷在数据包中占据较大容量,且载荷中通常存入的是数据信息而非协议信息,因此为了减少出口网关的缓存队列中数据包的容量,出口网关可以将缓存队列中所有数据包的载荷拆分后丢弃。
数据包的包头存储有数据包的源地址和目标地址,为了加快中心控制器的查询时间,出口网关可以将将缓存队列中所有数据包的包头拆分后发送至中心控制器,这样,中心控制器可以根据包头中的源地址和目标地址,查询并生成与这些包头对应的流表项。
可选的,当出口网关的缓存队列中数据包的容量与该缓存队列的总容量的比值达到预定比值阈值时,出口网关停止向缓存队列存入数据包。
可选的,当出口网关的缓存队列中数据包的容量与该缓存队列的总容量的比值达到预定比值阈值时,出口网关将统计拆分后的目标地址相同的包头数量,并将这些目标地址相同的包头划分到同一个包头群组中,将该包头群组与该包头群组中的包头个数发送至中心控制器。
这里出口网关先将拆分后的包头进行包头归类,将目标地址相同的包头划分到同一个包头群组中,再将包头群组分别发送至中心控制器,由于同一个包头群组中所有包头的目标地址相同,因此中心控制器只需对一个包头群组中的一个包头进行处理即可。
在出口网关发送包头群组至中心控制器之前,出口网关还可以对该包头群组中的包头数量进行统计,并将统计得到的包头数量与该包头群组发送至中心控制器,同一包头群组中的包头数量即为同一目标地址的总访问次数。
步骤415,出口网关向中心控制器发送预警信息。
该预警信息中携带有拆分后得到的包头,该预警信息用于触发该中心控制器根据该包头,分析终端是否为非法终端。
步骤416,中心控制器根据包头中的源地址和目标地址,分析是否存在非法终端。
一般来讲,存在攻击行为的终端通常会向不同的目的地发送数据包,也即存在攻击行为的终端在该预定时长内发送的数据包的目标IP地址的数量超过预定数量阈值。因此,若中心控制器根据包头中的源地址和目标地址,发现同一终端短时间内访问大量不同目的地址,则判定该终端为攻击者。
步骤417,中心控制器在确定出非法终端后,向出口网关发送该非法终端的标识。
该非法终端的标识可以是该非法终端的IP地址,该非法终端的标识用于触发该出口网关向移动管理节点功能MME或归属签约用户服务器HSS发送该非法终端的标识,由该MME或该HSS通知该非法终端所接入的基站禁止该非法终端在预定时间段内进行访问。
步骤418,出口网关向移动管理节点功能MME或归属签约用户服务器HSS发送非法终端的标识,由该MME或该HSS通知该非法终端所接入的基站禁止该非法终端在预定时间段内进行访问。
出口网关在接收到攻击信息之后,可以根据攻击信息中携带的IP地址,确定出具有该IP地址的终端所具有的国际移动用户识别码(英文:InternationalMobileSubscriberIdentificationNumber,简称:IMSI),而一般来讲,该终端的IP地址是出口网关在该终端接入网络时为该终端分配的。
出口网关向移动管理实体(英文:MobilityManagementEntity,简称:MME)发送携带有该IP地址的禁止访问消息,该禁止访问消息用于通知该MME查找与该IP地址对应的IMSI码,向与该IMSI码对应的基站发送禁止访问指令,该禁止访问指令用于触发该基站在预定时间段内禁止具有该IMSI码的终端访问所述软件定义网络。
综上所述,本发明实施例中提供的出口网关内缓存队列饱和攻击防御方法,通过中心控制器分析是否存在攻击行为的终端,将存在攻击行为的终端的标识发送至出口网关,出口网关将该标识通知给基站,以禁止具有该标识的终端继续访问网络信息;解决了因存在攻击行为造成出口网关中缓存队列容易溢出的问题,且进一步避免了中心控制器因短时间内需要处理过多的数据包而造成宕机的可能。
以下是针对本发明的装置实施例的描述,装置实施例中所涉及的相关内容可以参见上述方法实施例部分。
图5A是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御装置的结构方框图,该出口网关内缓存队列饱和攻击防御方法应用于图1所示网络架构中的出口网关130中。该出口网关内缓存队列饱和攻击防御装置包括:第一接收模块501、匹配模块502、第一发送模块503和转发模块504。
第一接收模块501,用于接收终端发送的数据包,将该数据包与出口网关中存储的静态流表进行匹配,该静态流表中每条流表项是中心控制器根据确定出的常用服务器的地址生成的;
匹配模块502,用于当该第一接收模块501接收的数据包与静态流表中的流表项均不匹配时,将该数据包与出口网关中存储的动态流表进行匹配;
第一发送模块503,用于当该第一接收模块501接收的数据包与动态流表中的流表项均不匹配时,则将数据包发送至该中心控制器,该数据包用于触发该中心控制器根据该数据包获取并反馈与该数据包内目标地址对应的流表项;
转发模块504,用于接收中心控制器反馈的流表项,根据该流表项转发该数据包。
在一种可能的实现放方式中,请参见图5B所示,其是本发明另一个实施例中提供的出口网关内缓存队列饱和攻击防御装置的结构方框图,该出口网关内缓存队列饱和攻击防御装置还包括:第一添加模块505。
第一添加模块505,用于在该接收中心控制器反馈的流表项之后,将该流表项添加至动态流表中。
在一种可能的实现放方式中,仍旧参见图5B所示,该出口网关内缓存队列饱和攻击防御装置还包括:拆分模块506和第二发送模块507。
拆分模块506,用于当出口网关的缓存队列中数据包的容量与该缓存队列的总容量的比值达到预定比值阈值时,则将该缓存队列中所有数据包的包头和载荷进行拆分,丢弃拆分后得到的载荷,该缓存队列中用于存储该出口网关接收到的且与静态流表和动态流表均不匹配的数据包;
第二发送模块507,用于向中心控制器发送预警信息,该预警信息中携带有拆分后得到的包头,该预警信息用于触发该中心控制器根据该包头,分析终端是否为非法终端。
在一种可能的实现放方式中,仍旧参见图5B所示,该出口网关内缓存队列饱和攻击防御装置还包括:累计模块508、第三发送模块509、第二添加模块510和第一删除模块511。
累计模块508,用于根据该动态流表中每个流表项被匹配成功的次数,累计该流表项所对应的目标地址被访问的访问次数;
第三发送模块509,用于将该累计模块508累积的每个目标地址的访问次数发送至中心控制器,由该中心控制器获取目标地址的总访问次数,在判定该目标地址的总访问次数达到预定阈值时,为该目标地址生成流表项,向出口网关发送静态流表更新通知,该静态流表更新通知中携带有该流表项;
第二添加模块510,用于接收中心控制器发送的静态流表更新通知,将流表中的流表项添加至出口网关的静态流表中;
第一删除模块511,用于从动态流表中删除流表项。
在一种可能的实现放方式中,仍旧参见图5B所示,该出口网关内缓存队列饱和攻击防御装置还包括:统计模块512和第二删除模块513。
统计模块512,用于统计在统计时刻前预定时长内动态流表中各个流表项被匹配成功的匹配次数;
第二删除模块513,用于从动态流表中删除匹配次数少于预定阈值的流表项。
在一种可能的实现放方式中,仍旧参见图5B所示,该出口网关内缓存队列饱和攻击防御装置还包括:第二接收模块514和第四发送模块515。
第二接收模块514,用于接收中心控制器发送的非法终端的标识;
第四发送模块515,用于向移动管理节点功能MME或归属签约用户服务器HSS发送该第二接收模块514接收的非法终端的标识,由该MME或该HSS通知该非法终端所接入的基站禁止该非法终端在预定时间段内进行访问。
综上所述,本发明实施例中提供的出口网关内缓存队列饱和攻击防御装置,通过出口网关存储静态流表和动态流表,当数据包与静态流表和动态流表中的流表项均不匹配时,则将该数据包发送至所述中心控制器,当接收到中心控制器反馈的流表项时,根据该流表项转发该数据包;由于静态流表存储了与常用服务器的地址生成对应的流表项,当对常用服务器进行访问时,可以避免再次将访问常用服务器的数据包存储至缓存队列,因此解决了相关技术中交换机中缓存队列的大小有限,当接收到大量目的地不同的数据包时,很容易造成缓存队列的溢出的问题;达到了使访问常用服务器的数据包直接转发,而无须加入缓存队列,避免移动网络遭到非法终端的网络攻击时,由于出口网关突然接收到大量目的地不同的数据包,而造成缓存队列溢出的效果。
此外,通过在中心控制器分析出存在攻击行为的终端后,接收中心控制器下发的非法终端的标识,出口网关将该标识通知给基站,以禁止具有该标识的终端继续访问网络信息;解决了因存在攻击行为造成出口网关中缓存队列容易溢出的问题,且进一步避免了中心控制器因短时间内需要处理过多的数据包而造成宕机的可能。
图6A本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御装置的结构方框图,该出口网关内缓存队列饱和攻击防御装置应用于图1所示网络架构中的中心控制器121中。该出口网关内缓存队列饱和攻击防御装置还包括:第一接收模块601、获取模块602和第一发送模块603。
第一接收模块601,用于接收出口网关发送的数据包,该数据包是该出口网关在确定该数据包与该出口网关内的静态流表和动态流表均不匹配时发送的;
获取模块602,用于获取与该第一接收模块601接收的数据包的目标地址对应的流表项;
第一发送模块603,用于向出口网关发送该获取模块602获取的流表项,该流表项用于触发该出口网关根据流表项对该数据包进行转发。
在一种可能的实现放方式中,请参见图6B所示,其是本发明另一个实施例中提供的出口网关内缓存队列饱和攻击防御装置的结构方框图,该中心控制器还包括:确定模块604、生成模块605和第二发送模块606。
确定模块604,用于确定出各个常用服务器的地址;
生成模块605,用于以该确定模块604确定的各个地址为目标地址生成流表项;
第二发送模块606,用于将该生成模块605生成的各个流表项发送至出口网关,该流表项用于触发该出口网关将该流表项存储至该出口网关的静态流表中。
在一种可能的实现放方式中,仍旧参见图6B所示,该确定模块604包括:第一确定单元604a和第二确定单元604b。
第一确定单元604a,用于接收服务器的注册请求,对发送该注册请求的服务器的地址进行认证,将认证成功的服务器的地址确定为常用服务器的地址;和/或,
第二确定单元604b,用于接收各个出口网关发送的目标地址的访问次数,将同一个目标地址的访问次数进行累加,得到每个目标地址的总访问次数,在判定目标地址的总访问次数达到预定阈值时,确定该目标地址为常用服务器的地址,该目标地址的访问次数是出口网关对所包含的动态流表中具有该目标地址的流表项被访问的次数进行统计后得到的。
在一种可能的实现放方式中,仍旧参见图6B所示,该中心控制器还包括:第二接收模块607、分析模块608和第三发送模块609。
第二接收模块607,用于接收出口网关发送的预警信息,该预警信息中携带有包头,该包头是该出口网关在判定缓存队列中的数据包的容量与该缓存队列的总容量的比值达到预定比值阈值时,对该缓存队列中的数据包进行拆分后得到的;
分析模块608,用于根据该第二接收模块607接收的包头中的源地址和目标地址,分析是否存在非法终端;
第三发送模块609,用于在该分析模块608确定出非法终端后,向出口网关发送该非法终端的标识,该非法终端的标识用于触发该出口网关向移动管理节点功能MME或归属签约用户服务器HSS发送该非法终端的标识,由该MME或该HSS通知该非法终端所接入的基站禁止该非法终端在预定时间段内进行访问。
综上所述,本发明实施例中提供的出口网关内缓存队列饱和攻击防御装置,通过接收出口网关发送的数据包,获取与数据包的目标地址对应的流表项,向出口网关发送流表项;由于中心控制器只需处理与出口网管的流表不匹配的数据包,因此解决了相关技术中交换机的缓存队列大小有限,当恶意用户发送大量目的地不同且携带较大载荷的数据包时,很容易造成缓存队列溢出,进而加剧控制器的处理负担,使得整个SDN网络过饱和的问题;达到了实时更新出口网关所存储的静态流表和动态流表中的流表项,使常用数据包的匹配直接在出口网关中进行,而无须加入发送至中心控制器的缓存队列中,避免移动网络遭到非法终端的网络攻击时,由于出口网关突然接收到大量目的地不同的数据包,而造成缓存队列溢出的效果。
此外,通过在中心控制器分析是否存在攻击行为的终端,若存在具有攻击行为的终端,则通知出口网关,由出口网关通知基站,以禁止该具有攻击行为的终端继续访问网络信息;解决了因存在攻击行为造成出口网关中缓存队列容易溢出的问题,且进一步避免了中心控制器因短时间内需要处理过多的数据包而造成宕机的可能。
需要说明的是:上述实施例中提供的出口网关内缓存队列饱和攻击防御装置在保护出口网关时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将出口网关、中心控制器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的出口网关内缓存队列饱和攻击防御装置为执行主体的出口网关内缓存队列饱和攻击防御方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图7是本发明一个实施例中提供的出口网关内缓存队列饱和攻击防御系统的结构方框图,该出口网关内缓存队列饱和攻击防御系统可以为图1所示网络架构中。该出口网关内缓存队列饱和攻击防御系统包括出口网关连接的移动网络701和软件定义网络702。
该移动网络701中的出口网关可以为图5A或图5B中各种可能的实现方式中所描述的出口网关。
该软件定义网络702包括如图6A或图6B中各种可能的实现方式中所描述的中心控制器。
综上所述,本发明实施例中提供的出口网关内缓存队列饱和攻击防御系统,通过为出口网关设置预警门限值,当预定时长内无法与刘表匹配的数据包的数量达到该预警门限值时,则向中心控制器发送预警信息,中心控制器与冗余控制器共同处理出口网关上报的数据包;由于在上报的数据包比较多时,也即存在攻击隐患时,中心控制器可以唤醒冗余控制器共同处理数据包,从而减轻了大量数据包对中心控制器的处理压力,因此解决了相关技术中只能防止非法用户越权访问组织内网中的信息,无线避免组织内网中的中心控制器遭受攻击的问题;达到了可以避免因攻击中心控制器导致中心控制器宕机的风险的效果。
此外,通过在中心控制器分析是否存在攻击行为的终端,若存在具有攻击行为的终端,则通知出口网关,由出口网关通知基站,以禁止该具有攻击行为的终端继续访问网络信息;解决了因存在攻击行为造成出口网关中缓存队列容易溢出的问题,且进一步避免了中心控制器因短时间内需要处理过多的数据包而造成宕机的可能。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (21)
1.一种出口网关内缓存队列饱和攻击防御方法,其特征在于,应用于出口网关中,所述出口网关用于连接移动网络与软件定义网络,所述方法包括:
接收终端发送的数据包,将所述数据包与所述出口网关中存储的静态流表进行匹配,所述静态流表中每条流表项是中心控制器根据确定出的常用服务器的地址生成的;
当所述数据包与所述静态流表中的流表项均不匹配时,将所述数据包与所述出口网关中存储的动态流表进行匹配;
当所述数据包与所述动态流表中的流表项均不匹配时,则将所述数据包发送至所述中心控制器,所述数据包用于触发所述中心控制器根据所述数据包获取并反馈与所述数据包内目标地址对应的流表项;
接收所述中心控制器反馈的所述流表项,根据所述流表项转发所述数据包。
2.根据权利要求1所述的方法,其特征在于,在所述接收所述中心控制器反馈的所述流表项之后,所述方法包括:
将所述流表项添加至所述动态流表中。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述出口网关的缓存队列中数据包的容量与所述缓存队列的总容量的比值达到预定比值阈值时,则将所述缓存队列中所有数据包的包头和载荷进行拆分,丢弃拆分后得到的载荷,所述缓存队列中用于存储所述出口网关接收到的且与所述静态流表和所述动态流表均不匹配的数据包;
向所述中心控制器发送预警信息,所述预警信息中携带有拆分后得到的包头,所述预警信息用于触发所述中心控制器根据所述包头,分析所述终端是否为非法终端。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述动态流表中每个流表项被匹配成功的次数,累计所述流表项所对应的目标地址被访问的访问次数;
将每个目标地址的访问次数发送至所述中心控制器,由所述中心控制器获取所述目标地址的总访问次数,在判定所述目标地址的总访问次数达到预定阈值时,为所述目标地址生成流表项,向出口网关发送静态流表更新通知,所述静态流表更新通知中携带有所述流表项;
接收所述中心控制器发送的所述静态流表更新通知,将所述流表中的流表项添加至所述出口网关的所述静态流表中;
从所述动态流表中删除所述流表项。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
统计在统计时刻前预定时长内所述动态流表中各个流表项被匹配成功的匹配次数;
从所述动态流表中删除匹配次数少于预定阈值的流表项。
6.根据权利要求1至5中任一所述的方法,其特征在于,所述方法还包括:
接收所述中心控制器发送的非法终端的标识;
向移动管理节点功能MME或归属签约用户服务器HSS发送所述非法终端的标识,由所述MME或所述HSS通知所述非法终端所接入的基站禁止所述非法终端在预定时间段内进行访问。
7.一种出口网关内缓存队列饱和攻击防御方法,其特征在于,应用于中心控制器中,所述中心控制器位于通过出口网关与移动网络连接的软件定义网络中,所述方法包括:
接收所述出口网关发送的数据包,所述数据包是所述出口网关在确定所述数据包与所述出口网关内的静态流表和动态流表均不匹配时发送的;
获取与所述数据包的目标地址对应的流表项;
向所述出口网关发送所述流表项,所述流表项用于触发所述出口网关根据所述流表项对所述数据包进行转发。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
确定出各个常用服务器的地址;
以各个所述地址为目标地址生成流表项;
将生成的各个所述流表项发送至所述出口网关,所述流表项用于触发所述出口网关将所述流表项存储至所述出口网关的静态流表中。
9.根据权利要求8所述的方法,其特征在于,所述确定出各个常用服务器的地址,包括:
接收服务器的注册请求,对发送所述注册请求的服务器的地址进行认证,将认证成功的服务器的地址确定为所述常用服务器的地址;和/或,
接收各个出口网关发送的目标地址的访问次数,将同一个目标地址的访问次数进行累加,得到每个目标地址的总访问次数,在判定所述目标地址的总访问次数达到预定阈值时,确定所述目标地址为所述常用服务器的地址,所述目标地址的访问次数是所述出口网关对所包含的动态流表中具有所述目标地址的流表项被访问的次数进行统计后得到的。
10.根据权利要求7至9中任一所述的方法,其特征在于,所述方法还包括:
接收所述出口网关发送的预警信息,所述预警信息中携带有包头,所述包头是所述出口网关在判定缓存队列中的数据包的容量与所述缓存队列的总容量的比值达到预定比值阈值时,对所述缓存队列中的数据包进行拆分后得到的;
根据所述包头中的源地址和目标地址,分析是否存在非法终端;
在确定出非法终端后,向所述出口网关发送所述非法终端的标识,所述非法终端的标识用于触发所述出口网关向移动管理节点功能MME或归属签约用户服务器HSS发送所述非法终端的标识,由所述MME或所述HSS通知所述非法终端所接入的基站禁止所述非法终端在预定时间段内进行访问。
11.一种出口网关内缓存队列饱和攻击防御装置,其特征在于,应用于出口网关中,所述出口网关用于连接移动网络与软件定义网络,所述装置包括:
第一接收模块,用于接收终端发送的数据包,将所述数据包与所述出口网关中存储的静态流表进行匹配,所述静态流表中每条流表项是中心控制器根据确定出的常用服务器的地址生成的;
匹配模块,用于当所述第一接收模块接收的所述数据包与所述静态流表中的流表项均不匹配时,将所述数据包与所述出口网关中存储的动态流表进行匹配;
第一发送模块,用于当所述第一接收模块接收的所述数据包与所述动态流表中的流表项均不匹配时,则将所述数据包发送至所述中心控制器,所述数据包用于触发所述中心控制器根据所述数据包获取并反馈与所述数据包内目标地址对应的流表项;
转发模块,用于接收所述中心控制器反馈的所述流表项,根据所述流表项转发所述数据包。
12.根据权利要求11所述的装置,其特征在于,所述装置包括:
第一添加模块,用于在所述接收所述中心控制器反馈的所述流表项之后,将所述流表项添加至所述动态流表中。
13.根据权利要求11所述的装置,其特征在于,所述装置还包括:
拆分模块,用于当所述出口网关的缓存队列中数据包的容量与所述缓存队列的总容量的比值达到预定比值阈值时,则将所述缓存队列中所有数据包的包头和载荷进行拆分,丢弃拆分后得到的载荷,所述缓存队列中用于存储所述出口网关接收到的且与所述静态流表和所述动态流表均不匹配的数据包;
第二发送模块,用于向所述中心控制器发送预警信息,所述预警信息中携带有拆分后得到的包头,所述预警信息用于触发所述中心控制器根据所述包头,分析所述终端是否为非法终端。
14.根据权利要求11所述的装置,其特征在于,所述装置还包括:
累计模块,用于根据所述动态流表中每个流表项被匹配成功的次数,累计所述流表项所对应的目标地址被访问的访问次数;
第三发送模块,用于将所述累计模块累积的每个目标地址的访问次数发送至所述中心控制器,由所述中心控制器获取所述目标地址的总访问次数,在判定所述目标地址的总访问次数达到预定阈值时,为所述目标地址生成流表项,向出口网关发送静态流表更新通知,所述静态流表更新通知中携带有所述流表项;
第二添加模块,用于接收所述中心控制器发送的所述静态流表更新通知,将所述流表中的流表项添加至所述出口网关的所述静态流表中;
第一删除模块,用于从所述动态流表中删除所述流表项。
15.根据权利要求11所述的装置,其特征在于,所述装置还包括:
统计模块,用于统计在统计时刻前预定时长内所述动态流表中各个流表项被匹配成功的匹配次数;
第二删除模块,用于从所述动态流表中删除匹配次数少于预定阈值的流表项。
16.根据权利要求11至15中任一所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于接收所述中心控制器发送的非法终端的标识;
第四发送模块,用于向移动管理节点功能MME或归属签约用户服务器HSS发送所述第二接收模块接收的所述非法终端的标识,由所述MME或所述HSS通知所述非法终端所接入的基站禁止所述非法终端在预定时间段内进行访问。
17.一种出口网关内缓存队列饱和攻击防御装置,其特征在于,应用于中心控制器中,所述中心控制器位于通过出口网关与移动网络连接的软件定义网络中,所述装置包括:
第一接收模块,用于接收所述出口网关发送的数据包,所述数据包是所述出口网关在确定所述数据包与所述出口网关内的静态流表和动态流表均不匹配时发送的;
获取模块,用于获取与所述第一接收模块接收的所述数据包的目标地址对应的流表项;
第一发送模块,用于向所述出口网关发送所述获取模块获取的所述流表项,所述流表项用于触发所述出口网关根据所述流表项对所述数据包进行转发。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括:
确定模块,用于确定出各个常用服务器的地址;
生成模块,用于以所述确定模块确定的各个所述地址为目标地址生成流表项;
第二发送模块,用于将所述生成模块生成的各个所述流表项发送至所述出口网关,所述流表项用于触发所述出口网关将所述流表项存储至所述出口网关的静态流表中。
19.根据权利要求18所述的装置,其特征在于,所述确定模块,包括:
第一确定单元,用于接收服务器的注册请求,对发送所述注册请求的服务器的地址进行认证,将认证成功的服务器的地址确定为所述常用服务器的地址;和/或,
第二确定单元,用于接收各个出口网关发送的目标地址的访问次数,将同一个目标地址的访问次数进行累加,得到每个目标地址的总访问次数,在判定所述目标地址的总访问次数达到预定阈值时,确定所述目标地址为所述常用服务器的地址,所述目标地址的访问次数是所述出口网关对所包含的动态流表中具有所述目标地址的流表项被访问的次数进行统计后得到的。
20.根据权利要求17至19中任一所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于接收所述出口网关发送的预警信息,所述预警信息中携带有包头,所述包头是所述出口网关在判定缓存队列中的数据包的容量与所述缓存队列的总容量的比值达到预定比值阈值时,对所述缓存队列中的数据包进行拆分后得到的;
分析模块,用于根据所述第二接收模块接收的所述包头中的源地址和目标地址,分析是否存在非法终端;
第三发送模块,用于在所述分析模块确定出非法终端后,向所述出口网关发送所述非法终端的标识,所述非法终端的标识用于触发所述出口网关向移动管理节点功能MME或归属签约用户服务器HSS发送所述非法终端的标识,由所述MME或所述HSS通知所述非法终端所接入的基站禁止所述非法终端在预定时间段内进行访问。
21.一种出口网关内缓存队列饱和攻击防御系统,其特征在于,所述系统包括由如权利要求11-16中任一所述的出口网关连接的移动网络和软件定义网络;
所述软件定义网络包括如权利要求17-20中任一所述的中心控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510695082.0A CN105357146B (zh) | 2015-10-21 | 2015-10-21 | 出口网关内缓存队列饱和攻击防御方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510695082.0A CN105357146B (zh) | 2015-10-21 | 2015-10-21 | 出口网关内缓存队列饱和攻击防御方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105357146A true CN105357146A (zh) | 2016-02-24 |
CN105357146B CN105357146B (zh) | 2018-10-09 |
Family
ID=55333016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510695082.0A Expired - Fee Related CN105357146B (zh) | 2015-10-21 | 2015-10-21 | 出口网关内缓存队列饱和攻击防御方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105357146B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106341335A (zh) * | 2016-08-23 | 2017-01-18 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的流量控制方法及流量控制系统 |
CN107276916A (zh) * | 2017-06-22 | 2017-10-20 | 中国科学技术大学 | 基于协议无感知转发技术的交换机流表管理方法 |
CN107395550A (zh) * | 2016-05-16 | 2017-11-24 | 腾讯科技(深圳)有限公司 | 一种网络攻击的防御方法及服务器 |
CN107682909A (zh) * | 2017-11-22 | 2018-02-09 | 广东欧珀移动通信有限公司 | 一种连接接入点的控制方法及装置 |
CN108616956A (zh) * | 2017-01-16 | 2018-10-02 | 普天信息技术有限公司 | 一种电力无线专网中业务隔离的方法 |
CN109275145A (zh) * | 2018-09-21 | 2019-01-25 | 腾讯科技(深圳)有限公司 | 设备行为检测及阻隔处理方法、介质及电子设备 |
CN111131074A (zh) * | 2018-10-31 | 2020-05-08 | 中移(杭州)信息技术有限公司 | 一种数据处理方法、装置、系统、服务器及可读存储介质 |
CN111327437A (zh) * | 2018-12-14 | 2020-06-23 | 中国电信股份有限公司 | 流表处理方法、流表处理装置以及sdn网络系统 |
CN112260948A (zh) * | 2020-10-16 | 2021-01-22 | 中国科学院声学研究所 | 一种基于批量更新的多核sdn交换机流表管理方法及系统 |
CN112838989A (zh) * | 2019-11-25 | 2021-05-25 | 中兴通讯股份有限公司 | 一种数据流管理方法、网络设备及存储介质 |
CN114726808A (zh) * | 2022-03-24 | 2022-07-08 | 融智通科技(北京)股份有限公司 | 一种在软件定义网络中减少封包转发流量的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101370016A (zh) * | 2008-10-17 | 2009-02-18 | 成都市华为赛门铁克科技有限公司 | 一种数据流表的老化方法、装置和系统 |
EP2408155A1 (en) * | 2009-03-09 | 2012-01-18 | Nec Corporation | Openflow communication system and openflow communication method |
CN104601468A (zh) * | 2015-01-13 | 2015-05-06 | 杭州华三通信技术有限公司 | 报文转发方法和设备 |
CN104734987A (zh) * | 2013-12-19 | 2015-06-24 | 上海宽带技术及应用工程研究中心 | 软件定义网络中的流量管理系统及方法 |
-
2015
- 2015-10-21 CN CN201510695082.0A patent/CN105357146B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101370016A (zh) * | 2008-10-17 | 2009-02-18 | 成都市华为赛门铁克科技有限公司 | 一种数据流表的老化方法、装置和系统 |
EP2408155A1 (en) * | 2009-03-09 | 2012-01-18 | Nec Corporation | Openflow communication system and openflow communication method |
CN104734987A (zh) * | 2013-12-19 | 2015-06-24 | 上海宽带技术及应用工程研究中心 | 软件定义网络中的流量管理系统及方法 |
CN104601468A (zh) * | 2015-01-13 | 2015-05-06 | 杭州华三通信技术有限公司 | 报文转发方法和设备 |
Non-Patent Citations (2)
Title |
---|
BEN PFAFF等: "The design and implementation of Open vSwitch", 《NSDI"15 PROCEEDINGS OF THE 12TH USENIX CONFERENCE ON NETWORKED SYSTEMS DESIGN AND IMPLEMENTATION》 * |
NICK SHELLY等: "Flow Caching for High Entropy Packet Fields", 《HOTSDN "14 PROCEEDINGS OF THE THIRD WORKSHOP ON HOT TOPICS IN SOFTWARE DEFINED NETWORKING》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107395550B (zh) * | 2016-05-16 | 2020-03-03 | 腾讯科技(深圳)有限公司 | 一种网络攻击的防御方法及服务器 |
CN107395550A (zh) * | 2016-05-16 | 2017-11-24 | 腾讯科技(深圳)有限公司 | 一种网络攻击的防御方法及服务器 |
CN106341335A (zh) * | 2016-08-23 | 2017-01-18 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的流量控制方法及流量控制系统 |
CN108616956B (zh) * | 2017-01-16 | 2020-10-20 | 普天信息技术有限公司 | 一种电力无线专网中业务隔离的方法 |
CN108616956A (zh) * | 2017-01-16 | 2018-10-02 | 普天信息技术有限公司 | 一种电力无线专网中业务隔离的方法 |
CN107276916B (zh) * | 2017-06-22 | 2020-05-12 | 中国科学技术大学 | 基于协议无感知转发技术的交换机流表管理方法 |
CN107276916A (zh) * | 2017-06-22 | 2017-10-20 | 中国科学技术大学 | 基于协议无感知转发技术的交换机流表管理方法 |
CN107682909A (zh) * | 2017-11-22 | 2018-02-09 | 广东欧珀移动通信有限公司 | 一种连接接入点的控制方法及装置 |
CN107682909B (zh) * | 2017-11-22 | 2020-06-26 | Oppo广东移动通信有限公司 | 一种连接接入点的控制方法及装置 |
CN109275145A (zh) * | 2018-09-21 | 2019-01-25 | 腾讯科技(深圳)有限公司 | 设备行为检测及阻隔处理方法、介质及电子设备 |
WO2020057177A1 (zh) * | 2018-09-21 | 2020-03-26 | 腾讯科技(深圳)有限公司 | 设备行为检测及阻隔处理方法、介质及电子设备 |
CN111131074B (zh) * | 2018-10-31 | 2023-04-11 | 中移(杭州)信息技术有限公司 | 一种数据处理方法、装置、系统、服务器及可读存储介质 |
CN111131074A (zh) * | 2018-10-31 | 2020-05-08 | 中移(杭州)信息技术有限公司 | 一种数据处理方法、装置、系统、服务器及可读存储介质 |
CN111327437A (zh) * | 2018-12-14 | 2020-06-23 | 中国电信股份有限公司 | 流表处理方法、流表处理装置以及sdn网络系统 |
CN111327437B (zh) * | 2018-12-14 | 2023-04-07 | 中国电信股份有限公司 | 流表处理方法、流表处理装置以及sdn网络系统 |
CN112838989A (zh) * | 2019-11-25 | 2021-05-25 | 中兴通讯股份有限公司 | 一种数据流管理方法、网络设备及存储介质 |
CN112260948A (zh) * | 2020-10-16 | 2021-01-22 | 中国科学院声学研究所 | 一种基于批量更新的多核sdn交换机流表管理方法及系统 |
CN114726808A (zh) * | 2022-03-24 | 2022-07-08 | 融智通科技(北京)股份有限公司 | 一种在软件定义网络中减少封包转发流量的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105357146B (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105357146A (zh) | 出口网关内缓存队列饱和攻击防御方法、装置及系统 | |
US9276852B2 (en) | Communication system, forwarding node, received packet process method, and program | |
US9521659B2 (en) | Methods and apparatuses for communicating content data to a communications terminal from a local data store | |
CN100555991C (zh) | 报文访问控制的方法、转发引擎装置和通信设备 | |
US8589503B2 (en) | Prioritizing network traffic | |
US10244537B2 (en) | Communication system, access control apparatus, switch, network control method, and program | |
US20140379915A1 (en) | Cloud based dynamic access control list management architecture | |
US20140241349A1 (en) | Openflow switch and packet processing method thereof | |
US20130188598A1 (en) | Local storage of content in a wireless network | |
EP2890168A1 (en) | Deep packet inspection parsing result sharing/acquiring method, system, and corresponding device thereof | |
CN101106518B (zh) | 为中央处理器提供负载保护的拒绝服务方法 | |
CN106130962B (zh) | 一种报文处理方法和装置 | |
CN107181804B (zh) | 资源的下载方法和装置 | |
JP2007184799A (ja) | パケット通信装置 | |
CN106685827B (zh) | 一种下行报文的转发方法及ap设备 | |
CN100499587C (zh) | 交换设备及其防止流量冲击的报文处理方法 | |
CN102006242A (zh) | 路由器的选路方法及路由器 | |
US20130188599A1 (en) | Wireless communication terminal to receive content data from an edge node | |
CN107920366A (zh) | 一种对移动终端的业务进行分流的方法及装置 | |
CN105684381A (zh) | 用于合法监听的装置和方法 | |
CN100499567C (zh) | 视频组播业务中频道切换的实现方法 | |
CN110601989A (zh) | 一种网络流量均衡方法及装置 | |
CN102355358B (zh) | 一种组播实现的方法和设备 | |
EP1993245A1 (en) | A system and method for realizing message service | |
CN111064825A (zh) | 一种基于arp实现dpi数据采集和控制方法和装置 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181009 Termination date: 20191021 |
|
CF01 | Termination of patent right due to non-payment of annual fee |