论文部分内容阅读
软件定义网络(Software-Defined Networking,SDN)将控制平面和转发平面解耦合,并提供了高度灵活性和可编程能力,SDN为网络管理提供便利的同时,也面临着新的安全威胁。目前SDN控制器的北向接口缺乏通用的加密、授权管理等安全服务,其次,当多种应用在应用层同时存在时,由于各应用的功能和逻辑各不相同,不同应用下发的流规则之间可能会存在直接冲突,另外,普通应用的流规则可能会与现有的防火墙流规则形成间接冲突,导致防火墙规则失效,从而威胁整个网络的安全。针对以上SDN安全威胁,本文设计了一种多应用下流规则冲突的全面检测方案,论文完成的主要工作分为以下四个方面:一、设计北向接口安全防护方案,当应用层用户调用北向接口进行流规则下发时,首先对用户进行认证、授权和安全审计,赋予应用相应的优先级,为流规则合法性检测提供基础二、分析交换机中流规则特征,建立通用数据模型对流规则进行形式化表示,同时,建立流规则之间关系判定模型,为流规则合法性检测与冲突解决提供理论依据三、设计全面的流规则合法性检测方案,在流规则真正部署到网络之前,对待下发的流规则进行静态冲突检测和动态冲突检测,若存在动态冲突则以应用优先级为基础,根据流规则之间的关系模型进行自动化地动态冲突解决。针对依赖冲突安全威胁,本文对经典的FortNox安全内核中的别名集算法进行改进,通过网络拓扑建立无向图,并模拟数据包的转发进行二次检测,消除了别名集算法存在的误报情况,提高了检测的准确率。四、将北向接口安全防护模块和流规则合法性检测模块集成到开源的RYU控制器中,并利用Mininet搭建仿真SDN网络进行系统功能和性能的测试,验证了流规则冲突检测功能的正确性,并且在网络安全性提高的前提下,控制器北向接口的吞吐量下降在20%左右。