论文部分内容阅读
摘要:在网络多样化的趋势下,网络受众范围不断扩大,网络安全问题越来越突出。传统的安全架构已经难以应对复杂的网络安全现状,软件定义网络(Software Defined Network, SDN)为解决安全问题提供了一种新思路。基于SDN,提出了新型安全管理体系架构SDSM(Software Defined Security Management)。该架构能够为用户提供全面且可自定义的网络安全服务,以双控制器作为关键组件,可通过北向API接口提供多种多样的原子服务。针对防治DoS和DDoS攻击做出了详细介绍,并提出了解决SDN本身可能受到DDoS攻击的方法。相比于传统网络安全架构,SDN集中控制的特性使得SDSM简化了管理,增强了安全性,提升了网络安全服务能力。
关键词:网络安全;软件定义网络;双控制器;分布式拒绝服务攻击;拒绝服务
中图分类号:TN915.08 文献标识码:A
文章编号:1009-3044(2019)12-0051-04
The Security Management Architecture basing on SDN
ZHAO Hua-zheng , XU Xuan, QIAO Jun-bo, SUN Ling-xin
(Software and Applied Science and Technology Institute, Zhengzhou University, Zhengzhou 450003, China)
Abstract:In the trend of network’s diversification, the scope of the network users is expanding and the network security issues are becoming more and more prominent. Nowadays, it’s difficult for the traditional security architecture to deal with the complex network security issues. Software Defined Network (SDN) proposes a new way to solve these security problems. This paper presents a new security management system based on the architecture of SDN named SDSM (Software Defined Security Management), which can provide users with comprehensive and customizable network security services. With dual controllers as key components, SDSM can provide a large variety of atomic services through northbound API interface. This paper gives a detailed introduction to the prevention and control of DoS and DDoS attacks, and puts forward the solution to the possibility that DDoS attacks on SDN itself. Compared with traditional network security architectures, the centralized control of SDN helps SDSM simplify management, enhance security performance and improve network security service capability.
Key words:Internet security; Software Defined Network(SDN); dual controllers; Distributed Denial of Service(DDoS); Denial of Service(DoS)
1 引言
隨着近年来虚拟化技术、软件定义网络[1](Software Defined Network,SDN)的快速发展、逐渐应用和不断完善,如今,传统的安全防护方法已经无法较好地适应当下新的网络安全需求。为解决这一问题,学术研究领域和工业应用领域开始在软件定义安全(Software Defined Security,SDS)方面积极地开展探索与实践工作。
互联网工程任务组(IETF)于2012年11月发布了SDN架构的安全标准,主要研究了SDN控制器的安全性要求,以及应用与内嵌应用之间安全策略的可见性等安全问题,但并未给出应对SDN中安全威胁的方案。
软件定义安全( SDS) 架构虽然有极强的可塑性,但这也代表了它的不成熟以及未来发展的不确定。SDSM比SDS的初步架构更加完善,注意到了由于SDN的开放性,其本身也易受到DDoS攻击的问题,解决了其可能存在的安全隐患问题。
FRESCO框架[2]虽然具有模块化的可扩展编程结构,但未实现深层次的安全防护。虚拟化的安全设备( VSA)架构虽然与传统安全架构衔接紧密,但未在本质上改变传统架构,缺乏创新。
本文借鉴了Qiu Xiaofeng等人的基于SDN的新型web架构[3],使用双控制器:标准SDN控制器(NC)与安全与管理控制器(SMC),将安全服务作为原子服务发布;利用SDN极强的可编程性,定制多项安全服务。 2 SDSM安全管理体系架构
SDN控制器强大的可编程性在带来更多的创新服务的同时,也可能会因接口的滥用导致DDoS攻击相关问题。本文提出的SDSM(Software Defined Security Management)作为一个较为完整的安全管理体系架构,不仅在SDS的框架基础上进行了实现与改进,还注意到了SDN本身可能受到DDoS攻击时的相关问题,并提出了解决方案。
新型安全管理体系结构SDSM利用OpenFlow协议,通过北向REST API接口以及控制器的集中控制,实现了安全管理的集中化,并支持网络的编程与扩展。
SDSM的主要特点如下:
1) 利用SDN提供的可编程性,组合支持原子服务,更快速地进行服务开发;
2) 双SDN控制器,除了标准的SDN控制器(NC)外,还在体系结构中设计了安全与管理控制器(SMC);
3) 在使用SDN技术的同时考虑到了SDN开放性可能造成的DDoS攻击安全隐患问题。
如图1所示,为SDSM的整体架构设计,图1中的虚线部分为主要控制模块,其主要部件为SMC(安全管理控制器)。SDSM一共可分为三层:SDN基础设施层、资源协调控制层、原子服务层。
2.1 SDN基础设施层
在流的传递、阻塞或重复中,物理设备上产生的安全数据及事件可通过NC抽象为资源,同时感知流和包的状态,通过OpenFlow协议,将其抽象为网络数据资源,即NC控制了基础设施层的数据流量。
2.2 资源协调控制层
资源协调控制层作为连接原子服务层和SDN基础设施层的中心控制层,主要完成安全事件、安全数据等资源的分类管理,并完成资源同步等事项。
在资源协调控制层,我们使用双控制器结构[3]以实现更高效的安全管理,分别为传统SDN控制器(NC)和安全与管理控制器(SMC)。
安全与管理控制器(SMC)接收SDN基础设施层传输的各种信息,并将其抽象为不同的数据资源,放置在资源池中,同时提供相应的资源信息。而对资源的控制作用也被封装在REST API内,资源协调控制层通过北向接口与原子服务层相协调,资源池中的资源可以通过北向REST API被原子服务层调用,以此来实现应用层中的各种原子服务。
而对于传统SDN控制器(NC),我们在其中添加一个SMC代理,通过添加的SMC代理实现东西接口。SMC通過西行接口来完成两个控制器之间的信息交互,NC通过SMC传输回来的流处理命令,下发相应的调整策略,且负责控制和管理OpenFlow数据流,并构建出SDN网络的全局视图,让我们从宏观对网络进行把控。
综上,我们通过资源协调控制层整合SDN控制平面,加强对资源的控制和优化各种资源之间的协调。同时,基于全局信息的三层体系结构将各种原子服务关联在了一起,也为重构安全服务并将其与原子服务紧密结合提供了新的可能。
2.3 原子服务层
在SDSM三层架构中,安全原子服务可以通过软件定义的方法进行重组并发布。将各种安全服务按照各自的功能模块进行划分,并分类重组,将其作为安全原子服务发布,以更好地实现SDN提供的创新功能,而且能够更好地提高SDN安全管理体系架构的灵活性、可操作性并大大降低总成本。
2.4 安全管理控制器(SMC)
SMC提供南向接口与北向接口,分别服务于安全设备和普通应用程序。在此基础上,SMC借鉴了NC的OpenFlow交换机和应用程序接口,添加了西向的资源池接口,并为NC提供接口。
SMC的主要组成架构如图2所示。我们在NC中嵌入SMC代理来实现双控制器之间的信息交互。流轮询通过NC获取流条目,更新全局流状态表。事件调度程序负责将高级应用程序策略传递给策略解析器,策略解析器将其整理为流命令,直接下发给安全设备。通过推流器,由基于OpenFlow的流命令告知NC,来进行对流命令的事件是SMC内部的关键交互机制。如图2所示的事件调度程序是SMC的核心。在SMC事件总线中,不同组件之间的事件主要基于事件订阅和异步触发器进行交互。为了更好地服务于客户端和服务器,大多数组件提供REST API来实现松耦合结构。
3 实验分析
我们通过将以下三个原子服务模块与传统方式进行对比,来验证该架构的合理性。
3.1 模拟环境
该验证需在Mininet仿真环境中完成。首先创建两个虚拟机,分别命名为ODL和Mininet。在ODL中选择安装OpenDaylight Carbon版本的控制器并带有wireshark,在Mininet中安装支持OpenFlow1.3协议的Mininet和wireshark。
3.2 DoS攻击防治服务模块
DoS攻击即拒绝服务攻击,包括SYN FLOOD、IP欺骗、ICMP FLOOD等,攻击报文主要可分为破坏报文、欺骗报文、异常报文三类。
3.2.1 具体解决方案
通过策略服务输入安全策略,反DoS应用程序使用粗粒度模式订阅数据。例如,当只需要保护部分重要网关时,反DoS应用程序可以通过进行flow.dstAddr = ref.netAddr来实现,其中ref.netAddr是受保护的网关的IP地址。流条目将通过FlowPolling从NC的API中轮询,并通过SMC中的事件调度器推送到反DoS服务器中。我们可设置FlowPolling每5秒查询一次流表信息。
在检查粗粒度模式后,流监控器和检测器可以进行基于流的细粒度模式匹配。首先利用NC的OpenFlow计数器,进行带宽流量统计。接着为每个客户端建立相应的征信系统。在如表1所示的违规次数哈希表中统计每台主机的违规次数。设置阙值为S(i)=r1*C(i) r2*M(i) (r1 r2=1)其中,S(i)是第i个服务器的负载量,C(i)是第i个服务器的CPU的使用率,M(i)是第i台内存的使用率。 当检测器检测到该主机的违规次数达到阙值时,将触发相应的安全策略。然后,策略解析器将策略解析为标准的OpenFlow命令,并将其推到NC上的SMC代理上,从而控制打开虚拟交换机以相应地将流传递、删除或重定向,以便进一步检测或清理。
3.2.2 SDSM解决DoS攻击的优势
NC将控制层与数据转发层分离以获得全局视图。通过这种方式,可以集中控制整个网络的数据转发,这有助于检测网络安全问题。当遇到DoS攻击时,可以制定出相应策略并将其及时传递到每个网络节点,以快速调整资源的部署,例如带宽等。使得网络拥塞、冲突等问题得到快速解决,为用户提供更优质、舒适的网络使用体验。同时,开放的北向REST API接口为引入第三方的流量监控设备和清理虚拟功能模块提供服务。并且虚拟化的解决方案使网络维护成本大幅降低,使得SDSM成为一种性价比极高的安全服务架构。
3.3 DDoS攻击防治服务模块
3.3.1 触发检测模块
在目前的网络环境中,DDoS攻击的方式呈现多样化,同时应对DDoS攻击的方法也更加复杂。本文提出了一种应对DDoS攻击的集检测,回溯为一体的新型解决方法。为实现这个解决方案的轻量化与动态化,我们针对检测模块提出了SD-T
关键词:网络安全;软件定义网络;双控制器;分布式拒绝服务攻击;拒绝服务
中图分类号:TN915.08 文献标识码:A
文章编号:1009-3044(2019)12-0051-04
The Security Management Architecture basing on SDN
ZHAO Hua-zheng , XU Xuan, QIAO Jun-bo, SUN Ling-xin
(Software and Applied Science and Technology Institute, Zhengzhou University, Zhengzhou 450003, China)
Abstract:In the trend of network’s diversification, the scope of the network users is expanding and the network security issues are becoming more and more prominent. Nowadays, it’s difficult for the traditional security architecture to deal with the complex network security issues. Software Defined Network (SDN) proposes a new way to solve these security problems. This paper presents a new security management system based on the architecture of SDN named SDSM (Software Defined Security Management), which can provide users with comprehensive and customizable network security services. With dual controllers as key components, SDSM can provide a large variety of atomic services through northbound API interface. This paper gives a detailed introduction to the prevention and control of DoS and DDoS attacks, and puts forward the solution to the possibility that DDoS attacks on SDN itself. Compared with traditional network security architectures, the centralized control of SDN helps SDSM simplify management, enhance security performance and improve network security service capability.
Key words:Internet security; Software Defined Network(SDN); dual controllers; Distributed Denial of Service(DDoS); Denial of Service(DoS)
1 引言
隨着近年来虚拟化技术、软件定义网络[1](Software Defined Network,SDN)的快速发展、逐渐应用和不断完善,如今,传统的安全防护方法已经无法较好地适应当下新的网络安全需求。为解决这一问题,学术研究领域和工业应用领域开始在软件定义安全(Software Defined Security,SDS)方面积极地开展探索与实践工作。
互联网工程任务组(IETF)于2012年11月发布了SDN架构的安全标准,主要研究了SDN控制器的安全性要求,以及应用与内嵌应用之间安全策略的可见性等安全问题,但并未给出应对SDN中安全威胁的方案。
软件定义安全( SDS) 架构虽然有极强的可塑性,但这也代表了它的不成熟以及未来发展的不确定。SDSM比SDS的初步架构更加完善,注意到了由于SDN的开放性,其本身也易受到DDoS攻击的问题,解决了其可能存在的安全隐患问题。
FRESCO框架[2]虽然具有模块化的可扩展编程结构,但未实现深层次的安全防护。虚拟化的安全设备( VSA)架构虽然与传统安全架构衔接紧密,但未在本质上改变传统架构,缺乏创新。
本文借鉴了Qiu Xiaofeng等人的基于SDN的新型web架构[3],使用双控制器:标准SDN控制器(NC)与安全与管理控制器(SMC),将安全服务作为原子服务发布;利用SDN极强的可编程性,定制多项安全服务。 2 SDSM安全管理体系架构
SDN控制器强大的可编程性在带来更多的创新服务的同时,也可能会因接口的滥用导致DDoS攻击相关问题。本文提出的SDSM(Software Defined Security Management)作为一个较为完整的安全管理体系架构,不仅在SDS的框架基础上进行了实现与改进,还注意到了SDN本身可能受到DDoS攻击时的相关问题,并提出了解决方案。
新型安全管理体系结构SDSM利用OpenFlow协议,通过北向REST API接口以及控制器的集中控制,实现了安全管理的集中化,并支持网络的编程与扩展。
SDSM的主要特点如下:
1) 利用SDN提供的可编程性,组合支持原子服务,更快速地进行服务开发;
2) 双SDN控制器,除了标准的SDN控制器(NC)外,还在体系结构中设计了安全与管理控制器(SMC);
3) 在使用SDN技术的同时考虑到了SDN开放性可能造成的DDoS攻击安全隐患问题。
如图1所示,为SDSM的整体架构设计,图1中的虚线部分为主要控制模块,其主要部件为SMC(安全管理控制器)。SDSM一共可分为三层:SDN基础设施层、资源协调控制层、原子服务层。
2.1 SDN基础设施层
在流的传递、阻塞或重复中,物理设备上产生的安全数据及事件可通过NC抽象为资源,同时感知流和包的状态,通过OpenFlow协议,将其抽象为网络数据资源,即NC控制了基础设施层的数据流量。
2.2 资源协调控制层
资源协调控制层作为连接原子服务层和SDN基础设施层的中心控制层,主要完成安全事件、安全数据等资源的分类管理,并完成资源同步等事项。
在资源协调控制层,我们使用双控制器结构[3]以实现更高效的安全管理,分别为传统SDN控制器(NC)和安全与管理控制器(SMC)。
安全与管理控制器(SMC)接收SDN基础设施层传输的各种信息,并将其抽象为不同的数据资源,放置在资源池中,同时提供相应的资源信息。而对资源的控制作用也被封装在REST API内,资源协调控制层通过北向接口与原子服务层相协调,资源池中的资源可以通过北向REST API被原子服务层调用,以此来实现应用层中的各种原子服务。
而对于传统SDN控制器(NC),我们在其中添加一个SMC代理,通过添加的SMC代理实现东西接口。SMC通過西行接口来完成两个控制器之间的信息交互,NC通过SMC传输回来的流处理命令,下发相应的调整策略,且负责控制和管理OpenFlow数据流,并构建出SDN网络的全局视图,让我们从宏观对网络进行把控。
综上,我们通过资源协调控制层整合SDN控制平面,加强对资源的控制和优化各种资源之间的协调。同时,基于全局信息的三层体系结构将各种原子服务关联在了一起,也为重构安全服务并将其与原子服务紧密结合提供了新的可能。
2.3 原子服务层
在SDSM三层架构中,安全原子服务可以通过软件定义的方法进行重组并发布。将各种安全服务按照各自的功能模块进行划分,并分类重组,将其作为安全原子服务发布,以更好地实现SDN提供的创新功能,而且能够更好地提高SDN安全管理体系架构的灵活性、可操作性并大大降低总成本。
2.4 安全管理控制器(SMC)
SMC提供南向接口与北向接口,分别服务于安全设备和普通应用程序。在此基础上,SMC借鉴了NC的OpenFlow交换机和应用程序接口,添加了西向的资源池接口,并为NC提供接口。
SMC的主要组成架构如图2所示。我们在NC中嵌入SMC代理来实现双控制器之间的信息交互。流轮询通过NC获取流条目,更新全局流状态表。事件调度程序负责将高级应用程序策略传递给策略解析器,策略解析器将其整理为流命令,直接下发给安全设备。通过推流器,由基于OpenFlow的流命令告知NC,来进行对流命令的事件是SMC内部的关键交互机制。如图2所示的事件调度程序是SMC的核心。在SMC事件总线中,不同组件之间的事件主要基于事件订阅和异步触发器进行交互。为了更好地服务于客户端和服务器,大多数组件提供REST API来实现松耦合结构。
3 实验分析
我们通过将以下三个原子服务模块与传统方式进行对比,来验证该架构的合理性。
3.1 模拟环境
该验证需在Mininet仿真环境中完成。首先创建两个虚拟机,分别命名为ODL和Mininet。在ODL中选择安装OpenDaylight Carbon版本的控制器并带有wireshark,在Mininet中安装支持OpenFlow1.3协议的Mininet和wireshark。
3.2 DoS攻击防治服务模块
DoS攻击即拒绝服务攻击,包括SYN FLOOD、IP欺骗、ICMP FLOOD等,攻击报文主要可分为破坏报文、欺骗报文、异常报文三类。
3.2.1 具体解决方案
通过策略服务输入安全策略,反DoS应用程序使用粗粒度模式订阅数据。例如,当只需要保护部分重要网关时,反DoS应用程序可以通过进行flow.dstAddr = ref.netAddr来实现,其中ref.netAddr是受保护的网关的IP地址。流条目将通过FlowPolling从NC的API中轮询,并通过SMC中的事件调度器推送到反DoS服务器中。我们可设置FlowPolling每5秒查询一次流表信息。
在检查粗粒度模式后,流监控器和检测器可以进行基于流的细粒度模式匹配。首先利用NC的OpenFlow计数器,进行带宽流量统计。接着为每个客户端建立相应的征信系统。在如表1所示的违规次数哈希表中统计每台主机的违规次数。设置阙值为S(i)=r1*C(i) r2*M(i) (r1 r2=1)其中,S(i)是第i个服务器的负载量,C(i)是第i个服务器的CPU的使用率,M(i)是第i台内存的使用率。 当检测器检测到该主机的违规次数达到阙值时,将触发相应的安全策略。然后,策略解析器将策略解析为标准的OpenFlow命令,并将其推到NC上的SMC代理上,从而控制打开虚拟交换机以相应地将流传递、删除或重定向,以便进一步检测或清理。
3.2.2 SDSM解决DoS攻击的优势
NC将控制层与数据转发层分离以获得全局视图。通过这种方式,可以集中控制整个网络的数据转发,这有助于检测网络安全问题。当遇到DoS攻击时,可以制定出相应策略并将其及时传递到每个网络节点,以快速调整资源的部署,例如带宽等。使得网络拥塞、冲突等问题得到快速解决,为用户提供更优质、舒适的网络使用体验。同时,开放的北向REST API接口为引入第三方的流量监控设备和清理虚拟功能模块提供服务。并且虚拟化的解决方案使网络维护成本大幅降低,使得SDSM成为一种性价比极高的安全服务架构。
3.3 DDoS攻击防治服务模块
3.3.1 触发检测模块
在目前的网络环境中,DDoS攻击的方式呈现多样化,同时应对DDoS攻击的方法也更加复杂。本文提出了一种应对DDoS攻击的集检测,回溯为一体的新型解决方法。为实现这个解决方案的轻量化与动态化,我们针对检测模块提出了SD-T