一种链路洪泛攻击的SDN分段路由防御方法技术

技术编号:23027579 阅读:28 留言:0更新日期:2020-01-03 17:50
一种链路洪泛攻击的SDN分段路由防御方法。其包括对于一个给定的网络拓扑,将其构建为基于有向图的网络模型,获得链路的实体流量集合、容量和流量负载;利用基于SDN的系统防御模型对步骤1)中构建的网络模型进行监测,并判断网络模型是否被LFA攻击且链路出现严重拥塞,若判断结果为“是”,则利用SDN控制器和上述链路的实体流量集合、容量和流量负载对网络拓扑进行分段路由;否则继续进行监控等步骤。本发明专利技术方法在进行链路洪泛攻击防御时,利用SDN的分段路由策略疏解被攻击链路的拥塞负载,可避免全局路由可能造成的大量资源消耗,缓解链路拥塞,从而达到对于链路洪泛攻击的有效防御。

A defense method of SDN segment routing for link flooding attack

【技术实现步骤摘要】
一种链路洪泛攻击的SDN分段路由防御方法
本专利技术属于网络信息安全
,特别涉及一种链路洪泛攻击的SDN(软件定义网络)分段路由防御方法。
技术介绍
链路洪泛攻击(LinkFloodingAttack,LFA)是一种新型的DDoS攻击(分布式拒绝服务攻击),最近受到学术界和工业界的极大关注。其中Coremelt攻击和Crossfire攻击被视为最具威胁性的LFA。Coremelt攻击分三步启动:①选择核心网络中的目标链接;②选择可以产生遍历目标链路流量的僵尸机;③产生流量并洪泛目标链路。Crossfire是Coremelt的演变,具有流密度和滚动攻击的新概念。Crossfire攻击通常通过四个步骤启动:①构建链接图;②计算流密度并选择目标链接;③协调僵尸网络;④启动滚动攻击。LFA具有几个显著特征,使得LFA不同于传统的DDoS攻击,并且难以检测和防御。LFA攻击者通常会组织一个大规模的僵尸网络来生成低速率数据流,以洪泛关键网络链路,而不是将大量流量直接发送到目标服务器。传统的DDoS防御系统通常会尝试过滤由DDoS攻击者流动的僵尸机发送的非法流量,但是由于LFA中的僵尸机可以使用合法的流量,因此这种防御方式很难产生效果。对比之下,SDN是下一代互联网的革命性架构技术,可以通过操作流表灵活地细化网络设备的流转发功能。与此同时,分段路由(SegmentRerouting,SR)是一种创新的路由范例。如果利用SDN分段路由防御链路洪泛攻击,在灵活性,可扩展性和适用性方面将具有很大优势。但目前针对链路洪泛攻击尚缺少有效的防御机制。
技术实现思路
为了解决上述问题,本专利技术的目的在于提供一种链路洪泛攻击的SDN分段路由防御方法。为了达到上述目的,本专利技术提供的链路洪泛攻击的SDN分段路由防御方法包括按顺序进行的下列步骤:1)对于一个给定的网络拓扑,将其构建为基于有向图的网络模型,获得链路的实体流量集合、容量和流量负载;2)利用基于SDN的系统防御模型对步骤1)中构建的网络模型进行监测,并判断网络模型是否被LFA攻击且链路出现严重拥塞,若判断结果为“是”,则利用SDN控制器和上述链路的实体流量集合、容量和流量负载对网络拓扑进行分段路由;否则继续进行监控。在步骤1)中,所述的构建基于有向图的网络模型,获得链路的实体流量集合、容量和流量负载的方法如下:1-1)获取给定的网络拓扑中的SDN交换机分布信息、服务器分布信息、通信链路位置信息和通信业务信息;1-2)根据上述信息计算出基于G,l分别表示网络中路由器和交换机的网络路径;其中,链路r定义如下:r={vs,vs+1,…vd|d>=s+1}每条链路从源节点vs开始,以目标节点vd结束,至少经过两个节点;1-3)获取起点为源节点vs,终点为目标节点vd的链路r的实体流量集合,并将其定义如下:As,d={α|source(α)=vs∩destination(α)=vd};1-4)计算交换机G或者路由器l的节点与链路的容量矩阵C(p+q)×(p+q),用来表示链路的容量信息;若容量矩阵C(p+q)×(p+q)中的元素cij等于0,则表示节点vi和节点vj之间不存在直连链路;否则,cij表示节点vi和节点vj之间直连链路的容量;1-5)计算交换机G或者路由器l的节点与链路的容量矩阵D(p+q)×(p+q),用来表示链路的流量信息;若流量矩阵D(p+q)×(p+q)中的元素dij等于0,则表示节点vi和节点vj之间不存在直连链路;否则,dij表示节点vi和节点vj之间直连链路的流量负载。在步骤2)中,所述的利用SDN控制器和上述链路的实体流量集合、容量和流量负载对网络拓扑进行分段路由的方法如下:2-1)当基于SDN的系统防御模型中的拥塞监控组件检测到某链路出现严重阻塞时,SDN控制器通知路由调整模块来缓解拥塞;将以vs作为源节点,vd为作目标节点的出现严重拥塞的链路表示为r={source(α)=vs∩destination(α)=vd}或r={vs,vs+1,vs+2,…vs+n,vd};2-2)使用分段路由算法和上述链路的实体流量集合、容量和流量负载对出现严重拥塞的链路r={vs,vs+1,vs+2,…vs+n,vd}进行分段路由;分段路由的方法在于找到中间节点v’,使链路r={source(α)=vs∩destination(α)=v’}和r={source(α)=v’∩destination(α)=vs+1}分别按照SDN控制器自带的具有最短路径计算功能的Dijkstra算法局部重新路由;2-3)待出现严重阻塞的链路的拥塞得到缓解后,将分段路由路径上的一部分流量重新移动到上述出现严重拥塞的链路,由此共同分担流量负载。在步骤2-2)中,所述的使用分段路由算法和上述链路的实体流量集合、容量和流量负载对出现严重拥塞的链路r={vs,vs+1,vs+2,…vs+n,vd}进行分段路由的方法是根据出现严重拥塞的链路r={vs,vs+1,vs+2,…vs+n,vd}中源节点vs和目标节点vd是否直连分为以下情况进行处理:Ⅰ)如果n=0即d=s+1,这意味着源节点vs和目标节点vd直连,假设As,d={α|source(α)=vs∩destination(α)=vd}是在出现严重拥塞前的链路r={vs,vd}中经过的实体流量集合,实体流量集合As,d经过该链路的流量带宽为Ds,d;将V0定义为所有与源节点vs直连的节点集合,显然vd∈V0;任取一个源节点vs的上游节点并将它表示为vs-1,然后根据节点集合V0中的元素可以分为以下两种情况:①如果即节点集合V0中仅包括上游节点vs-1和目标节点vd,意味着源节点vs仅与目标节点vd和一个上游节点vs-1相连,这说明该链路r={vs,vd}的容量cs,d不足,因此分段路由时应直接跳过该链路,将经过链路r={vs,vd}的流量重新路由到链路r={vs-1,vd}上,并且删除链路r={vs,vd}和r={vs-1,vs},即将链路r={vs-1,vs,vd}处理简化为链路r={vs-1,vd},如图2(a)所示;然后判断链路通信是否恢复,如果没有恢复,再继续将链路r={vs-1,vd}按照上述进行分段路由的链路r={vs,vd}的方法进行处理;②如果即节点集合V0中不仅包括上游节点vs-1和目标节点vd,还包括n个与源节点vs直连的节点;因为链路是双向的,因此将直接与源节点vs相连的除了目标节点vd的上游或者下游节点之外的节点都使用vns-1表示(因为链路是双向的,因此除了源节点vs以外,其他直接与源节点vs相连的上游或者下游节点都可以使用vn表示),n表示与源节点vs直连的节点的序号;令Vns-1表示节点集合V0移除上游节点vs-1和目标节点vd两个元素后剩余元素的集合;在这里给出带宽利用率的定义:βij=dij/cij(1)其中,dij表示节点vi和节点vj之间直连的链路所经过的本文档来自技高网
...

【技术保护点】
1.一种链路洪泛攻击的SDN分段路由防御方法,其特征在于:所述的链路洪泛攻击的SDN分段路由防御方法包括按顺序进行的下列步骤:/n1)对于一个给定的网络拓扑,将其构建为基于有向图的网络模型,获得链路的实体流量集合、容量和流量负载;/n2)利用基于SDN的系统防御模型对步骤1)中构建的网络模型进行监测,并判断网络模型是否被LFA攻击且链路出现严重拥塞,若判断结果为“是”,则利用SDN控制器和上述链路的实体流量集合、容量和流量负载对网络拓扑进行分段路由;否则继续进行监控。/n

【技术特征摘要】
1.一种链路洪泛攻击的SDN分段路由防御方法,其特征在于:所述的链路洪泛攻击的SDN分段路由防御方法包括按顺序进行的下列步骤:
1)对于一个给定的网络拓扑,将其构建为基于有向图的网络模型,获得链路的实体流量集合、容量和流量负载;
2)利用基于SDN的系统防御模型对步骤1)中构建的网络模型进行监测,并判断网络模型是否被LFA攻击且链路出现严重拥塞,若判断结果为“是”,则利用SDN控制器和上述链路的实体流量集合、容量和流量负载对网络拓扑进行分段路由;否则继续进行监控。


2.根据权利要求1所述的链路洪泛攻击的SDN分段路由防御方法,其特征在于:在步骤1)中,所述的构建基于有向图的网络模型,获得链路的实体流量集合、容量和流量负载的方法如下:
1-1)获取给定的网络拓扑中的SDN交换机分布信息、服务器分布信息、通信链路位置信息和通信业务信息;
1-2)根据上述信息计算出基于G,l分别表示网络中路由器和交换机的网络路径;其中,链路r定义如下:
r={vs,vs+1,…vd|d>=s+1}
每条链路从源节点vs开始,以目标节点vd结束,至少经过两个节点;
1-3)获取起点为源节点vs,终点为目标节点vd的链路r的实体流量集合,并将其定义如下:
As,d={α|source(α)=vs∩destination(α)=vd};
1-4)计算交换机G或者路由器l的节点与链路的容量矩阵C(p+q)×(p+q),用来表示链路的容量信息;若容量矩阵C(p+q)×(p+q)中的元素cij等于0,则表示节点vi和节点vj之间不存在直连链路;否则,cij表示节点vi和节点vj之间直连链路的容量;
1-5)计算交换机G或者路由器l的节点与链路的容量矩阵D(p+q)×(p+q),用来表示链路的流量信息;若流量矩阵D(p+q)×(p+q)中的元素dij等于0,则表示节点vi和节点vj之间不存在直连链路;否则,dij表示节点vi和节点vj之间直连链路的流量负载。


3.根据权利要求1所述的链路洪泛攻击的SDN分段路由防御方法,其特征在于:在步骤2)中,所述的利用SDN控制器和上述链路的实体流量集合、容量和流量负载对网络拓扑进行分段路由的方法如下:
2-1)当基于SDN的系统防御模型中的拥塞监控组件检测到某链路出现严重阻塞时,SDN控制器通知路由调整模块来缓解拥塞;将以vs作为源节点,vd为作目标节点的出现严重拥塞的链路表示为r={source(α)=vs∩destination(α)=vd}或r={vs,vs+1,vs+2,…vs+n,vd};
2-2)使用分段路由算法和上述链路的实体流量集合、容量和流量负载对出现严重拥塞的链路r={vs,vs+1,vs+2,…vs+n,vd}进行分段路由;分段路由的方法在于找到中间节点v’,使链路r={source(α)=vs∩destination(α)=v’}和r={source(α)=v’∩destination(α)=vs+1}分别按照SDN控制器自带的具有最短路径计算功能的Dijkstra算法局部重新路由;
2-3)待出现严重阻塞的链路的拥塞得到缓解后,将分段路由路径上的一部分流量重新移动到上述出现严重拥塞的链路,由此共同分担流量负载。


4.根据权利要求3所述的链路洪泛攻击的SDN分段路由防御方法,其特征在于:在步骤2-2)中,所述的使用分段路由算法和上述链路的实体流量集合、容量和流量负载对出现严重拥塞的链路r={vs,vs+1,vs+2,…vs+n,vd}进行分段路由的方法是根据出现严重拥塞的链路r={vs,vs+1,vs+2,…vs+n,vd}中源节点vs和目标节点vd是否直连分为以下情况进行处理:
Ⅰ)如果n=0即d=s+1,这意味着源节点vs和目标节点vd直连,假设As,d={α|source(α)=vs∩destination(α)=vd}是在出现严重拥塞前的链路r={vs,vd}中经过的实体流量集合,实体流量集合As,d经过该链路的流量带宽为Ds,d;将V0定义为所有与源节点vs直连的节点集合,显然vd∈V0;任取一个源节点vs的上游节点并将它表示为vs-1,然后根据节点集合V0中的元素可以分为以下两种情况:
①如果即节点集合V0中仅包括上游节点vs-1和目标节点vd,意味着源节点vs仅与目标节点vd和一个上游节点vs-1相连,这说明该链路r={vs,vd}的容量cs,d不足,因此分段路由时应直接跳过该链路,将经过链路r={vs,vd}的流量重新路由到链路r={vs-1,vd}上,并且删除链路r={vs,vd}...

【专利技术属性】
技术研发人员:谢丽霞丁颖杨宏宇
申请(专利权)人:中国民航大学
类型:发明
国别省市:天津;12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1