论文部分内容阅读
现有网络体系架构庞大复杂,网络管理部署复杂度高,这与日益增长的网络规模和用户需求形成了尖锐的矛盾。软件定义网络(Software Defined Networking, SDN)提出了一种新型的网络架构,其基本特征之一,即是使用开放、标准的接口,如OpenFlow、ForCES (Forwarding and Control Element Separation),来替换各个设备供应商的私有配置语法,以达到简化网络配置任务的目的,这为未来网络的管理提供了一种新的解决方案。为深入开放网络设备来增强灵活性,OpenFlow、ForCES等南向协议定义了数量庞大、复杂、低层次的接口,这给SDN程序的开发人员带来了诸多的挑战。如何简化SDN编程,已成为了当前业界的一个研究热点。本文针对这个问题,首先分析比较了当前几种面向SDN的网络编程语言,如NetCore、Pyretic,并在此基础上,为OpenDaylight中的控制器设计了转发策略管理子系统,以使其提供基于高级网络编程语言的SDN网络控制功能。其次,本文基于NetCore策略语言的研究,详细描述了转发策略管理子系统的子模块,即转发策略服务,的语法、语义及实现,同时,针对转发策略服务的需求,对NetCore的策略组合算法进行修改:在不影响策略组合功能的情况下,使其可检测和提示策略冲突情况。接着,为提高转发策略管理子系统的适应性,本文选择ForCES协议作为研究对象,对转发策略转换的一些关键问题进行了深入研究。最后本文基于Pyretic项目,对修改后策略组合算法进行测试,实验结果表明,修改后的策略组合算法可有效检测并提示策略冲突问题。