论文部分内容阅读
近年来,随着互联网技术的不断发展,互联网上所承载的数据流量出现了爆炸式的增长。为了应对新业务、新应用对网络的要求,传统网络变得越来越复杂,越来越难以适应未来的发展。在传统网络中,网络转发设备的控制逻辑与转发平面紧密耦合,并且网络转发设备还要受制于设备厂商,这些情况都使得网络难以编程管理。这些问题都促使软件定义网络(SDN)这一新技术的出现。在SDN中,控制与转发实现了分离。SDN还实现了网络的可编程性,这有助于开发人员管理网络。本文研究了SDN架构相关技术,简要介绍了OpenFlow交换机中使用的流表、协议消息,还对Floodlight控制器进行了研究。在小区网络中,不同的网络业务需要不同的网络服务质量(QoS),传统网络实现的QoS不能自动化配置,难于编程。基于OpenFlow易于编程的特点,本文使用DiffServ模型,设计并实现了一种基于SDN技术的QoS系统,并且详细阐述了QoS系统的设计和实现,同时为了方便用户配置管理QoS系统,本文设计实现了REST API接口。在小区网络中,用户可能大量使用P2P应用。使用P2P技术进行文件下载会消耗大量网络带宽,并且增大网络设备负荷,使网络易拥塞,最终降低用户体验。本文基于Floodlight控制器,设计并实现了P2P流量管控系统来解决这些问题。针对P2P流量的识别和控制,本文主要研究了端口识别法、应用层特征识别法、传输层行为特征识别法等三种识别方法。本文使用SDN技术,基于Floodlight控制器进行模块开发,设计实现了P2P流量识别控制模块。本文还详细介绍了此模块的设计和实现,以及各部分REST API(用于管理上述三种识别方法)的设计与实现,并对模块中使用的模式匹配算法进行了详解和实现,同时本文还详细介绍了在实现中使用的各种技术。为了验证QoS系统模块和P2P流量识别控制模块的功能,本文依据测试方案搭建了测试环境。将两个模块开启,分别进行测试。测试结果表明了用户可以使用REST API配置QoS系统,并且系统功能正常。同样,测试结果也表明小区中可以使用P2P流量识别控制模块来管理P2P流量。