软件定义网络(software defined networking,简称SDN)是一种新型的网络架构.SDN将控制层从数据层分离并开放网络接口,以实现网络集中控制并提高网络的可扩展性和编程性.但是SDN也面临诸多的网络安全威胁.异常流量检测技术可以保护网络安全,防御恶意流量攻击.对SDN异常流量检测进行了全面的研究,归纳了数据平面和控制平面可能遭受到的网络攻击;介绍并分析了位于应用平面、控制平面和中间平台的异常流量检测框架;探讨了异常流量识别机制、负载均衡机制、异常流量追溯机制和异常缓解机制;最后指明SDN异常流量检测在未来工作中的研究方向.
Software defined networking (SDN) is new network architecture. SDN separates control layer from data layer and opens network interfaces to realize centralized network control and improve the scalability and the programmability of the network. But SDN is also facing a lot of network security threats. Abnormal traffic detection technologies can protect the network against malicious traffic attacks. This paper presents a comprehensive survey on the abnormal traffic detection of SDN. The possible network attacks on data plane and control plane are overviewed. Abnormal traffic detection frameworks on application plane, control plane, and intermediate platform are introduced and analyzed. The mechanisms of abnormal traffic identification, load balancing, abnormal traffic traceback, and abnormal traffic mitigation are discussed. The future work direction of SDN abnormal traffic detection is pointed out at the end.
在当今信息时代, 云计算和大数据的出现, 使得计算机网络具有动态性、复杂性、并发性和实时性等特点, 这就要求网络管理员能够实施高级策略实现网络的自动配置.而传统网络配置更改复杂, 容易导致配置错误[
然而, SDN与传统网络一样面临着网络攻击的威胁[
异常流量检测技术是指通过有效的技术手段识别和过滤网络中的异常流量, 是一种保证网络安全的基本方法[
SDN网络架构、工作流程与传统网络有所不同, 利用网络漏洞进行网络攻击方面也存在显著差异, 因此SDN网络异常流量检测方法和框架也具有其独特性.本文在分析了SDN架构特点及其安全威胁的基础上, 对现有的SDN异常流量检测框架进行分析和归纳, 并对SDN异常流量检测过程中的主要机制及其实现方法进行总结和探讨, 希望能够为SDN网络的异常流量检测研究提供参考.
本文第1节简述和分析SDN的关键技术及其主要特点.第2节归纳SDN网络各层的异常流量安全威胁并分析其主要特征.第3节分析并探讨现有的SDN异常流量检测框架.第4节对SDN异常流量检测的主要机制及其实现方法进行归纳和分析.第5节提出SDN异常流量检测的未来工作方向.第6节对全文进行总结.
SDN的核心思想是:将控制平面从数据平面分离, 从而把控制功能从网络设备中移除, 使网络设备成为简单的转发单元.SDN的转发决定是基于流的, 流是由分组字段值中的匹配准则及动作指令来定义的.流抽象统一了不同类型的网络设备, 包括路由器、交换机、防火墙和中间件的行为, 使得网络管理更为灵活.SDN具有开放性、逻辑集中控制性、可编程性、可扩展性、抽象与虚拟化等特点[
SDN的基本架构由上至下可以分为应用平面、北向编程接口、控制平面、南向编程接口和数据平面[
SDN的基本架构[
Basic architecture of SDN[
● 应用平面包括各种服务和应用, 如云计算、深度数据包解析(deep packet inspection, 简称DPI)、入侵检测系统(intrusion detection system, 简称IDS)\入侵防御系统(intrusion prevention system, 简称IPS)、安全监测、负载均衡等;
● 控制平面主要包含SDN的控制器, 它负责底层转发设备的统一控制, 以及提供上层应用网络的呼叫能力;
● 数据平面主要包含交换机、路由器等网络转发单元[
应用程序和网络管理系统通过控制器提供的北向编程接口向控制器请求服务[
OpenFlow是SDN最重要的技术之一.如
控制器与转发单元之间通过OpenFlow协议[
Communication between the controller and the forwarding devices via OpenFlow protocol[
当分组到达转发单元时, 分组报头字段被提取并且与流表条目的匹配字段进行匹配[
SDN网络架构和OpenFlow技术使控制器能实时掌握全局网络状态、拓扑信息、应用需求, 并提供可编程的数据接口, 网络管理者可以根据网络状态动态分配网络资源, 这为异常流量检测和处理提供了基础[
SDN通过引入集中控制器即决策点、控制平面和数据平面之间的标准接口(OpenFlow)以及为网络管理应用提供统一的API, 使得网络具有逻辑集中性、可编程性、开放性等特点.而SDN这些特点也给SDN网络带来了安全问题, 例如, 基于OpenFlow的SDN的操作语义降低了在控制和数据平面上安装复杂攻击的障碍[
数据平面安全威胁主要以攻击交换机和用户个人计算机(personal computer, 简称PC)为主.如
数据平面的异常流量攻击
Abnormal flow attacks on the data plane
数据平面可能受到的网络攻击具体如下.
(1) SDN扫描
攻击原理:SDN扫描[
SDN扫描的流量特征:因为SDN扫描主要是扫描头域, 并根据每段头域扫描的相应时间计算误差, 因此, 网络上在某几个时间段内会有一定的流量从同一主机转向交换机, 且这几个时间段相隔时间较为相同.
(2) ARP攻击
攻击原理:地址解析协议(address resolution protocol, 简称ARP)攻击[
ARP攻击的流量特征:为了使交换机无法与合法用户进行通信, 网络上可能出现的大量ARP的请求和响应报文.另一方面, 攻击者为了劫持合法用户的数据, 则可能短时间内向交换机发送一定数量的ARP报文.
(3) 网络病毒攻击
攻击原理:网络病毒攻击的目的一般是攻击网络上尽可能多的计算机, SDN的客户端PC机较易成为病毒攻击的主要对象.以蠕虫攻击[
网络病毒攻击的流量特征:因为攻击者的计算机需要产生大量的IP地址进行探测, 因此在一定时间内, 攻击者的计算机会产生大量的网络流量, 并且这些网络流量中有很多空的或不可达的数据包.而被攻击的计算机或交换机的同一个端口, 则在某一时间段内会接收到来自同一IP地址计算机的大量的流量.
(4) 交换机劫持
攻击原理:为了防止广播风暴并节省能源, OpenFlow控制器提供了生成树服务[
交换机劫持的流量特征:网络上有大量的流量涌入原有的交换机造成该交换机无法输出流量, 而该交换机所属网络与控制器之间却有流量的正常传输.
控制平面安全威胁, 主要是指以网络中控制器为目标的网络攻击[
控制平面的异常流量攻击
Abnormal flow attacks on the control plane
控制平面可能受到的网络攻击具体如下.
(1) 面向控制器的DoS攻击
攻击原理:面向控制器的DoS攻击是最严重的威胁, 因为它会影响整个网络性能, 造成网络延迟和合法数据包的丢弃, 甚至可以导致整个网络被禁用或瘫痪.攻击者向控制器发起各种不同的DoS拒绝服务攻击[
DoS攻击流特征:在攻击期间, 会有海量流量转向被攻击的控制器, 且在一段时间后, 控制器所负载的流量将达到饱和状态.
(2) 控制器劫持
攻击原理:控制器劫持攻击[
控制器劫持流量特征:原有的合法控制器中无流量传输, 而其所管理的各个交换机在网络中却有流量输送.
(3) 恶意应用攻击
攻击原理:SDN使第三方应用能够被集成到网络体系结构[
恶意软件攻击流量特征:恶意应用攻击控制器时, 其流量特征必须根据恶意应用程序的具体功能才能判断.例如:如果攻击者利用恶意应用程序窃听信息, 那么网络流量就会从特定交换机转向特定的用户主机.如果攻击者使用恶意应用通过控制器攻击交换机, 那么网络上就可能会有大量的流量从各个交换机转向特定的交换机.
通过上一节的分析, 传统网络的解决方案不能直接适用于SDN, 因为传统的防御方案假设交换机是智能的, 而控制平面和数据平面的分离迫使SDN交换机成为只具备简单功能的转发实体, 且安全防御功能尚不是SDN架构中的内置功能, 所以安全性已成为SDN网络的一个重要问题.而可扩展的、灵活的SDN异常流量检测系统可以防御SDN网络所存在的安全威胁, 该系统需要在执行特定的流量分析时, 对分析结果进行及时反应.这就要求部署合理的系统框架, 并配置相关的系统组件实现系统功能.SDN异常流量检测框架应该具有以下特点.
(1) 灵活性——灵活的组件配置完成各类异常检测的任务, 例如, 主动反应定义路径的实例化; 在流表中部署特定或通用流规则; 以及管理流参数, 例如, 超时时间和数据速率;
(2) 准确性——针对不同的网络分析情况进行不同的流量处理, 保障网络安全;
(3) 功能完整性——部署不同的功能组件, 实现异常流量检测过程中的不同功能, 如异常识别、异常分析、异常缓解等;
(4) 高效性——高效性包括两个方面:一方面是指系统的响应时间应足够快; 另一方面是指性能开销应足够小, 而不应影响其他网络应用程序.
根据框架部署结构和实现原理的不同, 可以将SDN异常流量检测框架分为应用平面框架、控制平面框架和中间平台框架.
SDN异常流量检测框架对比
Comparison of frameworks of SDN abnormal traffic detection
框架名称 | 所属层次 | 主要技术 | 优点 | 缺点 |
SPHINX[ |
控制平面 | SPHINX动态学习新的网络行为, 并当检测到对网络控制平面行为的可疑更改时发出警报 | SPHINX能够以低性能开销实时检测SDN中的攻击, 并且不需要更改控制器进行部署 | 无法识别瞬态攻击, 不适用于大规模的SDN环境 |
PANDA[ |
控制平面 | 通过网络监控模块、网络入侵检测模块和网络入侵响应模块实现异常流量检测的基础功能 | 能满足网络动态检测的基础需求, 可扩展性高 | 功能性较为基础, 不能满足复杂的异常流量识别需求 |
SDN-MON[ |
控制平面 | 将监控信息与现有转发表相分离, 允许控制器根据应用要求定义任意一组监控匹配字段, 以便灵活地监控流量 | 监控模块可以更加灵活地为各种网络管理应用程序提供服务 | 只提供了一种流量监控功能, 不具备异常流量识别和防御功能 |
FLOWGUARD[ |
应用平面 | 检查网络流路径空间, 并为多种网络情况设计多种检测策略, 自动和实时地执行异常流量攻击的解决方案 | 框架功能性强, 集成度高, 提供SDN网络可视化、优化和迁移 | 因为框架的集成度高, 因此系统策略更新困难度大, 需要重新设计和部署检测框架 |
RAD[ |
应用平面 | 流量分析器根据攻击签名和网络监测情况识别异常流量; 流量管理器测量网络利用率和延迟, 以便在异常流量情况下确定多维路由和负载平衡的最佳路径; 规则管理器为选定的最佳路径生成并安装流规则 | 能实时监控和管理网络, 并在出现网络异常时提供相应的攻击防御方法 | 主要利用现有的网络流量分析工具, 因此网络流量检测功能相对较为简单, 不能对复杂的网络情况进行分析与处理 |
SDN-ecosystem[ |
应用平面 | 通过流量收集模块提取网络监控数据, 通过检测模块确定收集的流量是否为异常流量, 缓解模块通过丢包、修改流条目来缓解异常流量, 报告模块存储检测到的网络攻击及其流量特征 | 在对异常流量进行处理之后, 能够生成已识别攻击的报告, 以验证和审核系统的处理结果, 并实现SDN网络的自动化管理 | 异常流量检测模块使用正常流量特征配置文件进行异常识别, 其算法复杂度较大, 易造成CPU过载 |
ATLANTIC[ |
应用平面 | 结合信息熵的偏差和一系列机器学习算法来分类识别流量, 并对不同级别的异常流量使用不同的缓解处理方法 | 提供了精细化的异常流量识别方法, 提高了异常识别的精确度 | 不具备异常追溯功能, 没有考虑网络的负载均衡 |
Streamon[ |
控制平面与应用平面之间的中间平台 | 流量分析应用程序(状态跟踪、特性分析、异常条件等)的编程逻辑与基本原语(计数、匹配、事件生成等)相分离, 并通过部署自定义状态、相关状态转换、监视操作和触发条件来支持多阶段的实时跟踪和异常检测 | 该框架可用高级语言编写与平台无关的便携式监控设备的在线分析任务, 而不需要通过低级语言来访问监控设备内部以编程其监控逻辑 | 不能长时间监测网络流量, 且不提供复杂计算、统计分析和深度数据包解析的基本组件 |
FRESCO[ |
控制平面与应用平面之间的中间平台 | 提供了一个Click-inspired[ |
所需的代码量较小, 简化了安全功能的开发, 具有重定向、镜像和隔离等安全功能 | 没有考虑SDN异常检测过程中的数据平面和控制平面的负载均衡 |
PayLess[ |
控制平面与应用平面之间的中间平台 | 使用自适应算法收集流信息, 并为不同聚合级别的流信息的收集和统计提供了灵活的RESTful API | 使用自适应算法提供高度准确的信息, 而不会产生显著的网络开销 | 不具备恶意流量识别和分析的基本组件 |
Athena[ |
控制平面与应用平面之间的中间平台 | 南向组件用于监视网络行为包括控制平面, 从SDN控制消息中提取特征, 实现实时检测算法, 并调用缓解机制; 北向组件提供高级API, 以使应用程序能够执行异常检测任务; 分布式数据库集群提供网络特征访问; 由分布式并行计算集群运行Athena应用程序 | Athena采用分布式数据库和集群计算平台, 可以在网络中大规模部署分布式检测算法, 实现SDN的分布式异常流量检测 | 由于网络特征存储在分布式数据库中, 且应用程序运行在分布式集群中, 会造成较大的网络通信开销, 甚至导致网络通信堵塞 |
如
位于控制平面的SDN异常流量检测框架
SDN abnormal traffic detection framework on control plane
OpenFlow比传统通信协议简单得多, 且所有智能集中在控制器中, 网络更新则是可观察的, 这就显著地简化了SDN内控制消息的分析.因此, 在控制器中部署一个小的异常流量检测功能相对于全面的异常流量检测框架, 更易于检测控制消息的模式变化.
在控制平面, SPHINX[
SDN-Mon异常流量检测框架[
Abnormal traffic detection framework of SDN-Mon[
● 控制器侧模块具有SDN-Mon监控API, 该API在SDN控制器平台上运行, 以支持控制器中相关的监控应用程序;
● 交换机侧模块由3个组件组成:SDN-Mon本地控制应用程序、SDN-Mon监控API、SDN-Mon监控数据库.这些组件可以共同实现交换机中的监控功能.
由此, SDN-Mon可以通过控制器应用程序定义的监控字段来实现细粒度的网络监控.
由于SDN异常流量检测框架作为控制器的一个功能模块, 只能执行异常流量检测过程中的基础功能, 无法进行较为复杂的SDN异常流量检测计算, 以避免将流量数据输出到控制器核心区.因为核心区无法处理规模过于庞大的流量数据, 或提供具有严格的延迟要求的流量处理措施.
如
位于应用平面的SDN异常流量检测框架
SDN abnormal traffic detection framework on application plane
在应用平面, FLOWGUARD综合框架[
ATLANTIC异常流量监测框架[
Abnormal traffic detection framework of ATLANTIC[
虽然应用平面的异常流量检测框架的功能性强, 但与此同时, 高集成性导致框架不具备灵活性和可编程性.当异常流量检测的策略和功能发生变化时, 系统框架需要重新设计和部署.
如
位于中间平台的SDN异常流量检测框架
SDN abnormal traffic detection framework on intermediate platform
StreaMon[
FRESCO框架[
FRESCO异常流量监测框架[
Abnormal traffic detection framework of FRESCO[
PayLess[
(1) 请求解释器:负责将应用程序表示的高级基元转换为流级基元;
(2) 调度程序:根据从应用程序收到的请求确定要轮询的统计信息类型, 再由调度算法确定轮询时间戳;
(3) 交换机选择器:确定要轮询的交换机集, 以便在计划时间戳中获取所需的统计信息;
(4) 聚合器和数据存储:负责从所选交换机收集和存储原始数据.
Athena[
Athena异常流量监测框架[
Abnormal traffic detection framework of Athena[
● 南向组件用于监视网络行为, 包括控制平面, 从SDN控制消息中提取特征, 实现实时检测算法, 并调用缓解机制;
● 北向组件提供高级API, 以使应用程序能够执行异常检测任务;
● 第3类元素包括提供网络特征访问的分布式数据库集群和用于运行Athena应用程序的分布式并行计算集群.
因为作为中间平台的异常流量检测框架需要网络管理人员通过编写程序调用其相关组件才能实现异常流量的识别和分析, 所以提高了SDN管理的复杂度, 同时对网络管理员自身提出较高的要求.此外, 部分中间平台框架不提供复杂计算、统计分析和深度数据包解析(deep packet inspection)的基本组件, 这些需要通过软/硬件结合来解决.
SDN异常流量检测机制是指异常流量检测过程中所使用的主要功能, 主要包括异常流量识别机制、负载均衡机制、异常流量追溯机制和异常流量缓解机制.
异常流量识别机制一般是指通过各类算法来对流量特征进行提取, 并根据提取出的流量特征来对流量进行分类, 从而识别异常的流量.同时, 根据异常流量的表征来推断网络可能遭受的攻击, 并针对不同的攻击采取相应的安全防御措施.因此, 在控制平面和数据平面中的异常流量监测和识别, 是SDN网络安全的关键功能.
(1) 轻量级异常流量识别算法
轻量级异常流量识别算法是指算法复杂度较低、算法效率较高的异常流量识别算法, 但是该类算法不具备学习性, 可识别的异常流量种类较少, 功能性较低.轻量级异常流量识别主要包括基于参数统计的识别算法、基于信息熵的识别算法和基于标签统计的识别算法.
基于参数统计的异常流量识别算法是指在流量检测系统中设置与网络流量特征相关的参数, 并收集一段时间内正常流量的参数数据, 进行处理后作为统计阈值; 在流量检测过程中, 对特征参数进行观察与统计, 如果超过设定的阈值, 则被认定为异常流量.例如, 在Poster方案[
信息熵是信息论的重要概念, 它可以度量网络数据相关联度的不确定性或随机性[
基于标签统计的异常流量识别算法是指在转发单元的流条目中增加流标签, 通过流标签来识别和统计出入本网络的不同数据流, 从而对异常流量进行识别.基于标签统计的异常流量识别算法可以实现不同聚合级别的流统计, 以提高异常流量的检测精度.PathMon方案[
(2) 重量级异常流量识别算法
重量级异常流量识别算法是指算法复杂度大、算法精度高、识别的攻击类型广、功能性强的异常流量识别算法, 其中, 主要包括机器学习、数据挖掘等算法.该类算法可以通过训练数据集来自动构建模型, 并根据流量特征对流量进行分类识别, 根据历史数据对网络攻击进行检测[
基于机器学习的SDN异常流量识别主要研究对比
Comparison of abnormal traffic identifications in SDN based on machine learning
算法名称 | 优点 | 缺点 | 主要文献 |
神经网络 | 能够从有限、嘈杂及不完整的数据计算出最优解, 而不需要专家知识, 它可以找到未知或新的网络攻击 | 训练过程缓慢, 不适合实时检测, 且容易造成过度拟合 | [ |
贝叶斯 | 对变量之间的关联性概率关系进行编码, 该算法能够结合先前的数据和知识对网络攻击进行预测 | 对于流量的连续特征难以处理, 如果先验知识错误, 可能造成完全错误的流量分类 | [ |
支持向量机(SVM) | 具有良好的小样本学习能力和较高的决策率以及对输入数据维度的不敏感性 | 需要较长的数据训练时间, 大多数SVM算法使用的二进制分类器, 不能给出关于检测到的攻击类型的附加信息 | [ |
模糊算法 | 通过求解近似值来代替精确值, 从而降低算法的复杂度, 该算法对于探针攻击和端口扫描较为有效 | 规则的动态更新较为困难, 无法精确分类和识别部分网络攻击 | [ |
最邻近规则分类( |
通过周围有限的邻近的样本来确定所属类别, 因此能够对流量数量和时间等参数进行简单、有效的分类, 从而检测出异常流量, 此外, 通过对参数 |
当训练样本分布不均匀时, 异常检测结果会有较大误差; 算法复杂度高, 需要计算待检测数据与全体已知样本之间的距离, 因此单纯使用 |
[ |
神经网络算法可以较精确地检测异常流量或网络入侵攻击.Damian等人[
贝叶斯算法可以预测网络攻击, 从而可以定义SDN控制器的安全规则, 防止恶意用户访问网络.
Saurav等人[
支持向量机(support vector machine, 简称SVM)的泛化能力较强, 能够实现较小的分类误差且效率相对较高.Kokila[
① 数据训练阶段:执行数据预处理和签名分析.预处理包括:将符号特征转换为数值; 归一化标度; 特征数据被缩放到落入范围[-1, 1];攻击类型被识别为两个类别之一, 0为正常, 1为攻击.在签名分析中, 从原始特征中选择不同的特征子集, 以评估合格子集;
② 检测阶段:使用基于行为分析的模式来识别和分类SDN网络的入侵攻击.
为了进一步提高SVM分类的精确性, Li等人[
基于模糊算法使用模糊数学隶属度理论, 利用综合评价法将定性评价转化为定量评价, 即, 使用模糊综合评价方法来对由许多因素限制的事物或对象进行总体评价.该算法具有结果清晰、规则性强的特点, 适合解决网络攻击检测中各种不确定性问题.Qiao等人[
最邻近规则(
异常流量检测过程中, 交换机定时地给监视器发送流量信息, 这些信息一方面会引起网络过载; 另一方面, 由于SDN逻辑集中特性, 使得控制器或检测器在异常流量检测过程中的工作负载过大而易形成SDN瓶颈.这些将导致网络性能的降低, 甚至合法数据分组的丢失.网络监测过程中, 抽样和聚合方法常用来避免基础设施的过载, 然而这两种方法精确度不高, 可能影响异常流量检测的准确性.因此, 需要基于负载均衡的SDN异常流量检测机制来平衡网络负载和网络异常检测的精确性.
负载均衡机制分类
Classification of load balancing mechanisms
均衡方法 | 主要均衡范围 | 作用 | 主要文献 |
自适应流收集法 | SDN负载均衡 | 减轻整个SDN的网络负载, 其中包括控制器的工作量、交换机发送的数据量和网络链路传输的数据量 | [ |
网络切割分配法 | 控制器负载均衡 | 主要减轻单个控制器的工作量, 避免控制器成为网络瓶颈 | [ |
SDN异常流量检测过程中的负载均衡机制主要有两类:自适应流收集法和网络切割分配法.自适应控制包含两个方面.
1) 根据分组头部字段控制空间聚合, 根据监测情况对现有聚合规则加以放大或缩小;
2) 调整交换机的信息报告时间, 根据监测情况延长或缩短交换机的信息报告时间.
自适应流收集方法减少了网络内发送数据的数量, 可以解决SDN异常流量检测过程中, 整个网络的负载均衡问题.网络切割分配法主要是将所检测的网络进行划分并分配给多个控制器或检测器, 由于该方法并没有减少发送数据的数量, 主要是减轻了单个控制器或检测器的负担.
对于第1类方法, Zhang等人[
对于第2类方法, Hark等人[
MalwareMonitor架构[
Architecture of MalwareMonitor[
SDN异常流量检测过程中, 通过特殊的方式跟踪异常流量的传输路径, 搜寻流量的真实来源, 不仅可以减轻网络攻击, 还可以找到攻击者的确切位置, 从源头上阻止网络攻击的进行.
SDN异常流量追溯机制的主要研究对比
Comparison of SDN abnormal flow traceback mechanisms
文献 | 主要技术 | 优点 | 缺点 |
[ |
基于上下文的编码技术 | 使用分组的头部较小空间, 对流量本身影响较小 | 在溯源异常流量过程中, 相关的交换机会产生巨量的流条目 |
[ |
CherryPick路径选择, 路径ID标识和路径重建 | 交换机溯源规则可扩展性强; 相关的交换机在溯源过程中产生流条目数量相对较小 | 当发生数据包丢失时, 由于CherryPick选择性地挑选路径, 无法精确识别分组丢弃的位置 |
[ |
基于有向图模型的OpenFlow技术 | 无需查询IP地址就可以溯源攻击流量的所有路径 | 需要对大量的报头字段和流条目的字段进行匹配 |
[ |
反向策略, NetCore技术 | 可以跨自治域进行流量溯源, 溯源方法具有较强的扩展性 | 在控制器端需要进行较复杂的计算 |
[ |
标记技术, 全局网络拓扑计算 | 能有效抵御DDoS攻击, 算法复杂度较低 | 溯源的精确度较低, 易将合法的大数据量传输当作非法攻击 |
[ |
升级网络设备增加时钟同步和本地流记录日志, 并聚合本地日志形成全局日志 | 能够定量地重现数据平面的数据流传输过程和重现控制平面的控制事件交互过程 | 需要对SDN网络设备进行升级改造, 成本较高 |
如
异常流量追溯的一般模型
General model of abnormal flow traceback
例如, Zhang等人[
对于网络攻击的自动溯源, Francois等人[
SDN异常流量缓解机制是指在SDN发现异常流量之后, 网络设备自动地或者网络管理员人为地对异常流量采取措施, 防止异常流量进一步破坏网络, 维护网络的正常运行.异常流量缓解是异常流量检测过程中的重要步骤, 是阻止网络攻击的最后防线.SDN异常流量缓解机制的主要技术及其优缺点见
SDN异常流量缓解机制的主要技术分类
Classification of SDN abnormal flow mitigation mechanisms
异常流量缓解技术 | 优点 | 缺点 | 主要文献 |
丢弃攻击流量 | 操作简单, 效率高 | 对合法业务流影响较大, 易造成合法业务流的丢失 | [ |
基于流聚合的弹性缓解方法 | 分离攻击流和合法业务流, 采用弹性机制缓解异常流量的攻击 | 算法较为复杂, 设备开销较大 | [ |
转发至流过滤器 | 最大限度地降低对合法业务流的影响 | 会对网络通信造成额外开销 | [ |
直接丢弃攻击流量是异常缓解机制最常用的手段, 因为该方法网络设置简便, 执行效率高.
例如:在方案FlowTrApp[
基于流聚合的弹性缓解方法不直接丢弃全部的异常流量, 而是通过流聚合来分离攻击流和合法业务流, 并采用弹性机制来缓解异常流量对网络的攻击.例如, SDN-Guard方案[
为了减小异常缓解机制对交换机转发数据包的影响, 有些研究提出通过流过滤器来缓解异常流量对网络的影响, 即:把识别出的异常流量转发至流过滤器, 流过滤器根据检测情况对异常流量采取相应的措施.例如: Sahay等人[
对于跨域的分布式网络攻击, 单个SDN网络异常流量缓解技术并不能完全抵御恶意流量的攻击, 因为相互连接的SDN网络之间都有可能存在恶意流量的传输.因此, Giotis等人[
此外, 即使攻击流被成功阻止, 由攻击流生成的大量恶意流条目仍存在于交换机中.因此, 在异常缓解之后需要删除恶意流条目, 释放交换机的存储资源.此时要借助溯源机制找到恶意流的传输路径并删除相关流条目.
虽然现在已有各个研究团队对SDN异常流量检测做了大量的研究工作, 提出了很多有效的系统框架和管理机制, 但网络攻击呈现出多样化、复杂化、规模化等特点, 安全问题已成为制约SDN发展的关键因素.因此, 未来研究工作应该包括以下几项.
(1) 构建功能完整的SDN异常流量检测框架.
在未来的工作中, 应该在研究现有框架的基础上建立具有灵活性、准确性、功能完整性和高效性等特点的SDN异常流量检测框架.因此, 需要在控制层细化和抽象SDN控制器的功能模块, 使其进一步支持网络流量的检测; 在应用层建立功能完整并支持多种检测算法的异常流量检测应用, 该应用能够对各类异常流量进行自动化处理, 同时支持与网络管理员的交互操作, 因为管理员可能会更新参数或替换某些组件功能, 以提高检测的准确性; 需要对检测功能模块进行抽象并提供高级API, 使得网络管理人员能够针对复杂的网络情况进行二次开发, 对已有框架功能进行补充和改进; 该框架应包含异常流量特征集数据库, 并支持动态更新功能, 一旦系统检测并处理新类型的网络攻击时, 能够对数据库文件进行更新.
(2) 提高SDN异常流量检测效率.
SDN异常流量检测效率包括两方面:时间效率和准确率.现有的SDN异常流量检测机制主要是将传统的检测方法部署到SDN中, 然而由于SDN与传统网络架构特征有所不同, 这对检测效率会产生影响.因此, 针对SDN的网络特征, 在流量监测阶段需要权衡监测的精确度与网络通信效率, 在流量检测阶段需要权衡检测算法的复杂度与误报率.此外, 还需要进一步降低现有检测算法中的预处理、特征训练和异常识别等过程中的算法复杂度, 以提高SDN异常流量的检测效率.
(3) 研究在云计算环境中的SDN异常流量检测所面临的挑战.
云计算实现了网络资源的灵活共享、用户业务的快速开发与部署, 并且能够根据业务需求进行自动部署、弹性伸缩和故障隔离等.因为云计算中广泛的网络访问, 使得云计算网络容易受到异常流量的攻击, 尤其是DDoS攻击.而传统的流量检测技术因为缺乏灵活性和可编程性, 导致云计算网络中异常流量检测的精确度和效率较低, 且开发成本高昂.而基于SDN的异常流量检测技术提供了新的动态网络架构, 将传统的云网络骨干网转变为功能丰富的服务平台.然而由于SDN本身逻辑集中管理性和交换机资源有限性等特点, 云环境中使用SDN进行异常流量检测也面临着诸多挑战.因此需要结合云计算网络和SDN的网络特征, 研究在云计算环境中的SDN异常流量检测所面临的挑战, 其中包括:在动态的云计算环境中如何使用OpenFlow技术进行流量监测; 如何使用SDN实现云计算环境中的应用层攻击流量的检测; 如何实现在云计算环境中的SDN异常流量检测过程中的网络数据的隐私保护; 在云计算环境中如何防止控制器成为网络瓶颈等.在研究这些挑战的基础上, 再进一步研究相应的安全措施, 从而提高SDN异常流量检测技术在云计算环境中的安全性、可靠性与稳定性.
(4) 研究自适应的SDN异常流量检测机制.
入侵者往往会调整其网络攻击以逃避现有的检测方案, 流量异常的性质也会随着时间的推移而不断变化, 因此, 研究自适应的SDN异常流量检测机制也就成为重要课题.首先, 需要研究自适应的抽样算法, 该算法能够根据SDN网络流量变化情况自适应地调整抽样频率, 在确保抽样精确度的同时降低网络开销; 其次, 需要研究自适应的异常流量识别算法, 该算法需要将轻量级识别算法和重量级识别算法层次化地、有机地结合在一起, 例如通过轻量级识别算法来识别流量异常与否, 再通过重量级识别算法为异常流量进行分类, 其中, 需要为每类异常流量开发适当且快速的特征选择方法, 并改进现有的分类器, 使其能够高效、准确地对异常流量进行分类; 最后, 根据识别出的网络攻击类型及其网络状况, 选择恰当的异常流量处理方案.
(5) 研究跨域分布式的SDN异常流量检测机制.
现有的研究工作主要集中在单个控制器在局域网中的异常流量检测, 但对于规模较大的跨域网络攻击, 单个控制器难以溯源, 无法从源头进行控制.为了有效防御跨域网络攻击并减轻单个控制器的工作负载, 提高SDN的可扩展性, 跨域分布式SDN异常流量检测机制具有重要的研究意义.未来工作中, 需要将云计算技术与SDN异常流量检测技术相结合, 将异常流量检测框架和异常流量特征数据库部署在云端, 将流量监测功能模块部署在各控制器中, 通过云端与控制器的实时通信来收集各局域网的网络信息(其中, 包括流量信息和网络拓扑信息等), 并需要在云端开发异常流量并行检测算法.此外, 还需要进一步研究云端服务器如何与控制器有效通信, 在收集有效信息的同时, 尽可能减少通信开销, 从而避免网络过载.
(6) 研究大数据环境中的数据中心网络的SDN异常流量检测方法.
随着信息技术的发展, 数据数量不断增加, 网络规模不断扩大, 网络性能要求不断提高, 这就需要研究大数据环境中的数据中心网络的SDN异常流量检测方法.首先, 在研究软件定义网络的通信协议和通信架构的基础上对SDN协议进行扩展, 改进SDN转发规则, 使其能够支持海量数据在SDN中的转发和网络拓扑管理; 其次, 在研究OpenFlow流表特性的基础上, 实现数据中心网络中并行化的流量特征提取, 建立特征参数总集, 并对特征总集进行降维优化得到最优参数集; 此外, 在研究各类异常流量识别算法的基础上, 提出能够支持并行计算的异常流量检测算法, 并实现异常流量检测过程中的负载均衡, 防止在数据中心网络中进行异常流量检测而导致网络堵塞.
随着互联网、云计算和大数据等信息技术的发展, 软件定义网络架构的开发和部署也不断深入.SDN在提高网络可扩展性、灵活性、可编程性的同时也面临诸多的网络安全威胁, SDN异常流量检测技术可以防御恶意流量攻击, 保障网络安全.本文在分析数据平面和控制平面的网络攻击及其导致的流量变化的基础上, 对现有的SDN异常流量检测技术进行了有益探索, 首先分析了位于应用平面、控制平面和中间平台这3类SDN异常流量检测框架的主要技术及其优缺点, 总结了异常流量识别机制、负载均衡机制、异常流量追溯机制、异常缓解机制的主要实现方法.目前, SDN异常流量检测技术的研究还处在起步阶段, 例如:现有的异常流量的框架的研究主要集中在单个SDN网络, 对于跨域大型SDN网络的研究相对较少; 识别算法的应用相对比较单一, 无法识别动态变化的网络攻击.所以面对不断扩大的网络规模和复杂多样的网络攻击, 需要建立功能完整的SDN异常流量检测框架, 提高检测效率, 分析云计算环境中SDN异常流量检测所面临的挑战, 并进一步研究自适应、跨域分布式以及大数据环境中的SDN异常流量检测机制.
doi: 10.1145/2068816.2068863]]]>
Kreutz D, Ramos FM, Verissimo P, Rothenberg CE, Azodolmolky S, Uhlig S. Software-defined networking: A comprehensive survey. Proc. of the IEEE, 2015, 103(1):14-76.[doi: 10.1109/JPROC.2014.2371999]
Zhang CK, Cui Y, Tang HY, Wu J. State-of-the-art survey on software-defined networking (SDN). Ruan Jian Xue Bao/Journal of Software, 2015, 26(1):62-81 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/4701.htm[doi: 10.13328/j.cnki. jos.004701]
张朝昆, 崔勇, 唐翯翯, 吴建平.软件定义网络(SDN)研究进展.软件学报, 2015, 26(1):62-81. http://www.jos.org.cn/1000-9825/4701.htm[doi: 10.13328/j.cnki.jos.004701]
doi: 10.1109/SDN4FNS.2013.6702553]]]>
Bhuyan MH, Bhattacharyya DK, Kalita JK. Network anomaly detection: Methods, systems and tools. IEEE Communications Surveys & Tutorials, 2013, 16(1):303-336.[doi: 10.1109/SURV.2013.052213.00046]
Marnerides AK, Schaeffer-Filho A, Mauthe A. Traffic anomaly diagnosis in Internet backbone networks: A survey. Computer Networks, 2014, 73:224-243.[doi: 10.1016/j.comnet.2014.08.007]
doi: 9781449342302]]]>
Kim H, Feamster N. Improving network management with software defined networking. IEEE Communications Magazine, 2013, 51(2):114-119.[doi: 10.1109/MCOM.2013.6461195]
doi: 10.1109/ICOIN.2015.7057934]]]>
Bian S, Zhang P, Yan Z. A survey on software-defined networking security. In: Proc. of the 9th EAI Int'l Conf. on Mobile Multimedia Communications. Brussels, 2016. 190-198.
Nunes BAA, Mendonca M, Nguyen XM, Obraczka K, Turletti T. A survey of software-defined networking: Past, present, and future of programmable networks. IEEE Communications Surveys & Tutorials, 2014, 16(3):1617-1634.[doi: 10.1109/SURV.2014. 012214.00180]
doi: 10.1145/2670386.2670390]]]>
Zhou TQ, Cai ZP, Xia J, Xu M. Traffic engineering for software defined networks. Ruan Jian Xue Bao/Journal of Software, 2016, 27(2):394-417 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/4935.htm[doi: 10.13328/j.cnki.jos.004935]
周桐庆, 蔡志平, 夏竟, 徐明.基于软件定义网络的流量工程.软件学报, 2016, 27(2):394-417. http://www.jos.org.cn/1000-9825/4935.htm[doi: 10.13328/j.cnki.jos.004935]
Kalkan K, Gur G, Alagoz F. Defense mechanisms against DDoS attacks in SDN environment. IEEE Communications Magazine, 2017, 55(9):175-179.[doi: 10.1109/MCOM.2017.1600970]
Garg G, Garg R. Review on architecture and security issues in SDN. Int'l Journal of Innovative Research in Computer and Communication Engineering, 2014, 2(11):6519-6524.
doi: 10.1145/2491185.2491220]]]>
Alsmadi I, Xu D. Security of software defined networks: A survey. Computers & Security, 2015, 53:79-108.[doi: 10.1016/j.cose. 2015.05.006]
doi: 10.1109/SRDSW.2016.21]]]>
doi: 10.14722/ndss.2015.23283]]]>
Scott-Hayward S, Natarajan S, Sezer S. A survey of security in software defined networks. IEEE Communications Surveys & Tutorials, 2016, 18(1):623-654.[doi: 10.1109/COMST.2015.2453114]
doi: 10.1109/ICCE.2018.8326334]]]>
Wang MM, Liu JW, Chen J, Mao J, Mao KF. Software defined networking: Security model, threats and mechanism. Ruan Jian Xue Bao/Journal of Software, 2016, 27(4):969-992 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/5020.htm [doi: 10.13328/j.cnki.jos.005020]
王蒙蒙, 刘建伟, 陈杰, 毛剑, 毛可飞.软件定义网络:安全模型, 机制及研究进展.软件学报, 2016, 27(4):969-992. http://www.jos.org.cn/1000-9825/5020.htm[doi: 10.13328/j.cnki.jos.005020]
Khairi MHH, Ariffin SHS, Latiff NMA, Abdullah AS, Hassan MK. A review of anomaly detection techniques and distributed denial of service (DDoS) on software defined network (SDN). Engineering, Technology & Applied Science Research, 2018, 8(2): 2724-2730.
Ahmad I, Namal S, Ylianttila M, Gurtov A. Security in software defined networks: A survey. IEEE Communications Surveys & Tutorials, 2015, 17(4):2317-2346.[doi: 10.1109/COMST.2015.2474118]
doi: 10.1109/ICNP.2013.6733671]]]>
doi: 10.1109/NOTERE.2015.7293514]]]>
doi: 10.1109/EWSDN.2015.70]]]>
doi: 10.1109/ICNP.2014.98]]]>
doi: 10.14722/ndss.2015.23064]]]>
doi: 10.1109/ICNP.2015.58]]]>
Phan XT, Fukuda K. SDN-Mon: Fine-grained traffic monitoring framework in software-defined networks. Journal of Information Processing, 2017, 25:182-190.[doi: 10.2197/ipsjjip.25.182]
doi: 10.1145/2620728.2620749]]]>
Kim M, Park Y, Kotalwar R. Robust and agile system against fault and anomaly traffic in software defined networks. Applied Sciences, 2017, 7(3):266.[doi: 10.3390/app7030266]
Carvalho LF, Abrao T, de Souza Mendes L, Proenca Jr ML. An ecosystem for anomaly detection and mitigation in software- defined networking. Expert Systems with Applications, 2018, 104:121-133.[doi: 10.1016/j.eswa.2018.03.027]
doi: 10.1109/NOMS.2016.7502793]]]>
Bonola M, Bianchi G, Picierro G, Pontarelli S, Monaci M. StreaMon: A data-plane programming abstraction for software-defined stream monitoring. IEEE Trans. on Dependable and Secure Computing, 2015, 14(6):664-678.[doi: 10.1109/TDSC.2015.2499747]
Shin S, Porras P, Yegneswara V, Fong M, Gu G, Tyson M. Fresco: Modular composable security services for software-defined networks. In: Proc. of the 20th Annual Network & Distributed System Security Symp. Reston: Internet Society, 2013. 1-16.
Kohler E, Morris R, Chen B, Jannotti J, Kaashoek MF. The Click modular router. ACM Trans. on Computer Systems, 2000, 18(3): 263-297.[doi: 10.1145/354871.354874]
doi: 10.1109/NOMS.2014.6838227]]]>
doi: 10.1109/DSN.2017.42]]]>
Lu Z, Chen F, Wu J, Cheng G. Poster: A secure control plane with dynamic multi-NOS for SDN. In: Proc. of the Network and Distributed System Security Symp. Reston: Internet Society, 2017.
He H, Hu Y, Zheng LH, Xue ZY. Efficient DDoS attack detection and prevention scheme based on SDN in cloud environment. Tong Xin Xue Bao/Journal on Communications, 2018, 39(4):139-151 (in Chinese with English abstract). http://www.infocomm-journal.com/txxb/CN/10.11959/j.issn.1000-436x.2018068[doi: 10.11959/j.issn.1000-436x.2018068]
何亨, 胡艳, 郑良汉, 薛正元.云环境中基于SDN的高效DDoS攻击检测与防御方案.通信学报, 2018, 39(4):139-151. http://www.infocomm-journal.com/txxb/CN/10.11959/j.issn.1000-436x.2018068 [doi: 10.11959/j.issn.1000-436x.2018068]
doi: 10.1109/WMNC.2017.8248858]]]>
doi: 10.1109/CISP.2015.7408132]]]>
Navaz ASS, Sangeetha V, Prabhadevi C. Entropy based anomaly detection system to prevent DDoS attacks in cloud. Int'l Journal of Computer Applications, 2013, 62(15):42-47.[doi: 10.5120/10160-5084]
Mu XK, Wang JS, Xue YF, Huang W. Abnormal network traffic detection approach based on alive entropy. Tong Xin Xue Bao/ Journal on Communications, 2013, 34(2):51-57 (in Chinese with English abstract). http://www.infocomm-journal.com/txxb/CN/10.3969/j.issn.1000-436x.2013.Z2.011 [doi: 10.3969/j.issn.1000-436x.2013.z2.011]
穆祥昆, 王劲松, 薛羽丰, 黄玮.基于活跃熵的网络异常流量检测方法.通信学报, 2013, 34(2):51-57. http://www.infocomm-journal.com/txxb/CN/10.3969/j.issn.1000-436x.2013.Z2.011 [doi: 10.3969/j.issn.1000-436x.2013.z2.011]
doi: 10.1109/ICCNC.2015.7069319]]]>
doi: 10.1109/Trustcom.2015.389]]]>
doi: 10.1109/ICUFN.2016.7537143]]]>
Wang R, Zhang Z, Ju L, Jia Z. A novel OpenFlow-based DDoS flooding attack detection and response mechanism in software- defined networking. Int'l Journal of Information Security and Privacy, 2015, 9(3):21-40.[doi: 10.4018/IJISP.2015070102]
doi: 10.1109/ICC.2016.7510990]]]>
doi: 10.1109/NSEC.2014.6998241]]]>
Zheng L, Zou P, Jia Y, Han W. Traffic anomaly detection and containment using filter-ary-sketch. Procedia Engineering, 2012, 29: 4297-4306.[doi: 10.1016/j.proeng.2012.01.661]
Jankowski D, Amanowicz M. On efficiency of selected machine learning algorithms for intrusion detection in software defined networks. Int'l Journal of Electronics and Telecommunications, 2016, 62(3):247-252.[doi: 10.1515/eletel-2016-0033]
doi: 10.1109/WINCOM.2016.7777224]]]>
doi: 10.1109/NETSOFT.2018.8460090]]]>
doi: 10.1109/NFV-SDN.2016.7919493]]]>
doi: 10.1109/ICC.2015.7249162]]]>
doi: 10.1109/UIC-ATC-ScalCom-CBDCom-IoP.2015.195]]]>
doi: 10.1109/ICoAC.2014.7229711]]]>
doi: 10.1109/ICEBE.2016.020]]]>
doi: 10.2991/jimet-15.2015.63]]]>
Yan Q, Gong Q, Deng F. Detection of DDoS attacks against wireless SDN controllers based on the fuzzy synthetic evaluation decision-making model. Adhoc & Sensor Wireless Networks, 2016, 33:275-299.
doi: 10.1109/ICACT.2014.6778942]]]>
Schechter SE, Jung J, Berger AW. Fast detection of scanning worm infections. In: Proc. of the Int'l Workshop on Recent Advances in Intrusion Detection. Berlin: Springer-Verlag, 2004. 59-81.
doi: 10.1109/CSAC.2002.1176279]]]>
Latah M, Toker L. Towards an efficient anomaly-based intrusion detection for software-defined networks. IET Networks, 2018, 7(6): 453-459.[doi: 10.1049/iet-net.2018.5080]
Peng H, Sun Z, Zhao X, Tan S, Sun Z. A detection method for anomaly flow in software defined network. IEEE Access, 2018, 6: 27809-27817.[doi: 10.1109/ACCESS.2018.2839684]
doi: 10.1145/2535372.2535411]]]>
doi: 10.1109/ACCT.2015.98]]]>
Garg G, Garg R. Accurate anomaly detection using adaptive monitoring and fast switching in SDN. Int'l Journal of Information Technology and Computer Science (IJITCS), 2015, 7(11):34-42.[doi: 10.5815/ijitcs.2015.11.05]
doi: 10.1109/IFIPNetworking.2016.7497233]]]>
doi: 10.1145/2680821.2680829]]]>
doi: 10.1145/2620728.2620742]]]>
doi: 10.1145/2774993.2775066]]]>
doi: 10.1109/WIFS.2014.7084328]]]>
ftp://ftp.cs.princeton.edu/reports/2015/978.pdf]]>
Cui Y, Yan L, Li S, Xing H, Pan W, Zhu J, Zheng X. SD-Anti-DDoS: Fast and efficient DDoS defense in software-defined networks. Journal of Network and Computer Applications, 2016, 68:65-79.[doi: 10.1016/j.jnca.2016.04.005]
Weng X, Chen M, Zhang GM, Xu B, Xing CY. Design and implementation of a network measurement and analysis system in OpenFlow networks. Tong Xin Xue Bao/Journal on Communications, 2015, 36(3):81-88 (in Chinese with English abstract). http://www.infocomm-journal.com/txxb/CN/10.11959/j.issn.1000-436x.2015061[doi: 10.11959/j.issn.1000-436x.2015061]
翁溪, 陈鸣, 张国敏, 许博, 邢长友.OpenFlow网络测量分析系统的设计实现.通信学报, 2015, 36(3):81-88. http://www.infocomm-journal.com/txxb/CN/10.11959/j.issn.1000-436x.2015061 [doi: 10.11959/j.issn.1000-436x.2015061]
doi: 10.1109/SPIN.2016.7566750]]]>
doi: 10.1109/EWSDN.2014.24]]]>
Giotis K, Argyropoulos C, Androulidakis G, Kalogeras D, Maglaris V. Combining OpenFlow and sFlow for an effective and scalable anomaly detection and mitigation mechanism on SDN environments. Computer Networks, 2014, 62:122-136.[doi: 10. 1016/j.bjp.2013.10.014]
doi: 10.1109/ICC.2017.7997214]]]>
doi: 10.1109/CloudNet.2016.9]]]>
doi: 10.1109/CloudNet.2015.7335317]]]>
doi: 10.14722/sent.2015.23004]]]>
doi: 10.1109/APNOMS.2015.7275389]]]>
doi: 10.1109/NOMS.2016.7502849]]]>