论文部分内容阅读
随着一些新型网络应用的出现,新的需求对网络的依赖已不再是单纯的数据转发性能,而是要求一个开放、灵活的网络来适应各种不同类型的业务请求。在此背景下,软件定义网络(SDN)的概念被提出,其核心思想是通过软件定义的方式实现网络资源的集中动态管理。由此,用户可通过编程动态地构建各种特性的数据转发网络,以满足网络对各种应用的承载需求。SDN一经提出,就受到了业界广泛的关注,并被看作是未来网络研究的发展方向。对于SDN体系架构的实现,目前仍旧是一个具有争议的课题。以OpenFlow为代表的众多技术被尝试用来实现SDN,转发与控制分离(ForCES)技术就是其中的后起之秀,它实现的是转发件(CE)与控制件(FE)的分离,并实行CE对FE的集中控制,而这分离、集中控制的思想也正好是SDN所倡导的架构。另外,ForCES对开放资源有着很好的抽象和定义,这为SDN实现网络虚拟化功能提供了良好的支持。因此,基于ForCES的SDN研究已经成为热点。本文在以ForCES技术实现SDN体系架构的大方向下,创新性地提出了基于ForCES的SDN总体架构。同时又以SDN网络虚拟化为目标,针对其中的两个关键技术进行了研究与实现。其一是以REST风格设计并实现了基于ForCES的SDN北向应用程序接口,为网络虚拟化请求的下发提供了通道。具体内容如下:首先经过对接口需求和形式的分析,选择以REST API作为SDN的北向接口;然后提出基于REST的北向接口框架,并对北向接口进行了规范化设计,即根据REST原则,以HTTP的四个常用方法作为有限操作组,访问被URL唯一标识的网络资源;接着为这些网络资源建立数据模型,以便REST服务器根据模型创建资源对象;最后利用REST软件实现框架Restlet完成整个北向接口的搭建。其二是基于LFB组合实现网络虚拟节点的构建。LFB是ForCES的特色与核心,作为ForCES中FE资源的离散化抽象,其本身就是一种虚拟化,因而LFB组合可以被看作是基于ForCES的SDN网络节点虚拟化的一种实现。LFB组合基于扩展的输入输出匹配算法,定义了LFB模型和形式化描述,以及LFB之间的一系列关系概念,在此基础上提出了单向顺序和双向并行两种LFB组合算法。本文最后对基于ForCES的SDN北向接口实现进行了测试,对两种LFB组合算法进行了仿真,同时测试比较了两者的执行效率。