期刊鉴别 论文检测 免费论文 特惠期刊 学术答疑 发表流程

软件定义网络(SDN)研究进展

时间:2015-12-25 16:10 文章来源:http://www.lunwenbuluo.com 作者:张朝昆,崔勇,唐翯祎, 点击次数:

  摘要:网络抽象促使软件定义网络(software-definednetworking,简称SDN)的产生.SDN将数据平面与控制平面解耦合,简化了网络管理.首先从SDN诞生发展的背景入手,梳理了SDN的体系结构,包括数据层、控制层和应用层,并按照SDN的层次结构深入阐述其关键技术,特别分析了一致性、可用性和容错性等特性.然后,论述了SDN在不同应用场景下的最新研究成果.最后,展望未来研究工作.

  关键词:软件定义网络;接口;交换机;控制器;网络抽象

  传统网络的层次结构是互联网取得巨大成功的关键.但是随着网络规模的不断扩大,封闭的网络设备内置了过多的复杂协议,增加了运营商定制优化网络的难度,科研人员无法在真实环境中规模部署新协议.同时,互联网流量的快速增长(预计到2018年,全球流量将达到1.6′1021字节),用户对流量的需求不断扩大,各种新型服务不断出现,增加了网络运维成本.

  SDN起源于2006年斯坦福大学的CleanSlate研究课题.2009年,Mckeown教授正式提出了SDN概念.

  利用分层的思想,SDN将数据与控制相分离.在控制层,包括具有逻辑中心化和可编程的控制器,可掌握全局网络信息,方便运营商和科研人员管理配置网络和部署新协议等.在数据层,包括哑的(dumb)交换机(与传统的二层交换机不同,专指用于转发数据的设备).交换机仅提供简单的数据转发功能,可以快速处理匹配的数据包,适应流量日益增长的需求.两层之间采用开放的统一接口(如OpenFlow等)进行交互.控制器通过标准接口向交换机下发统一标准规则,交换机仅需按照这些规则执行相应的动作即可.因此,SDN技术能够有效降低设备负载,协助网络运营商更好地控制基础设施,降低整体运营成本,成为最具前途的网络技术之一.因此,SDN被MIT列为“改变世界的十大创新技术之一”.SDN相关技术研究迅速开展起来,成为近年来的研究热点.2013年,SIGCOMM会议收录了多篇相关文章,甚至将SDN列为专题来研讨,带动了SDN相关研究的蓬勃发展.

  1、SDN体系结构

  SDN是当前最热门的网络技术之一,它解放了手工操作,减少了配置错误,易于统一快速部署.本节首先论述了SDN诞生发展的背景,指出SDN的产生及快速发展的必然性定律.接下来探讨了SDN主流的体系结构.由于SDN标准接口机制确保层次之间既保持相对独立,又能正常通信,因此,标准接口设计的好坏是SDN成功设计的关键.

  1.1SDN诞生发展的背景

  随着网络的快速发展,传统互联网出现了如传统网络配置复杂度高等诸多问题[6],这些问题说明网络架构需要革新,可编程网络的相关研究为SDN的产生提供了可参考的理论依据.主动网络允许数据包携带用户程序,并能够由网络设备自动执行.用户可以通过编程方式动态地配置网络,达到了方便管理网络的目的.然而由于需求低、协议兼容性差等问题,并未在工业界实际部署.4D架构将可编程的决策平面(即控制层)从数据平面分离,使控制平面逻辑中心化与自动化,其设计思想产生SDN控制器的雏形.

  借鉴计算机系统的抽象结构,未来的网络结构将存在转发抽象、分布状态抽象和配置抽象这3类虚拟化概念.转发抽象剥离了传统交换机的控制功能,将控制功能交由控制层来完成,并在数据层和控制层之间提供了标准接口,确保交换机完成识别转发数据的任务.控制层需要将设备的分布状态抽象成全网视图,以便众多应用能够通过全网信息进行网络的统一配置.配置抽象进一步简化了网络模型,用户仅需通过控制层提供的应用接口对网络进行简单配置,就可自动完成沿路径转发设备的统一部署.因此,网络抽象思想解耦了路径依赖,成为数据控制分离且接口统一架构(即SDN)产生的决定因素.

  此外,众多标准化组织已经加入到SDN相关标准的制订当中.专门负责订制SDN接口标准的著名组织是开放网络基金会(OpenNetworkingFoundation,简称ONF),该组织制订的OpenFlow协议业已成为SDN接口的主流标准,许多运营商和生产厂商根据该标准进行研发.互联网工程任务组(InternetEngineeringTaskForce,简称IETF)的ForCES工作组、互联网研究专门工作组(InternetResearchTaskForce,简称IRTF)的SDNRG研究组以及国际电信联盟远程通信标准化组织(ITUTelecommunicationStandardizationSector,简称ITU-T)的多个工作组同样针对SDN的新方法和新应用等展开研究.标准化组织的跟进,促使了SDN市场的快速发展.据悉,SDN市场已于2013年达到约2亿美元的产值,预计到2016年将达到20亿美元,市场需求确保SDN有足够的发展空间.由此可见,SDN具有广阔的发展前景和巨大的研究价值.

  1.2体系结构概述

  针对不同的需求,许多组织提出了相应的SDN参考架构.SDN架构最先由ONF组织提出,并已经成为学术界和产业界普遍认可的架构.除此之外,欧洲电信标准化组织(EuropeanTelecommunicationsStandardsInstitute,简称ETSI)提出的NFV架构随之发展起来,该体系结构主要针对运营商网络,并得到了业界的支持.

  由各大设备厂商和软件公司共同提出了OpenDaylight,目的是为了具体实现SDN架构,以便用于实际部署.

  ONF组织最初在白皮书中提到SDN体系结构,并于2013年底发布最新版本.SDN由下到上(或称由南向北)分为数据平面、控制平面和应用平面.数据平面与控制平面之间利用SDN控制数据平面接口(control-data-planeinterface,简称CDPI)进行通信,CDPI具有统一的通信标准,目前主要采用OpenFlow协64JournalofSoftware软件学报Vol.26,No.1,January2015议.控制平面与应用平面之间由SDN北向接口(northboundinterface,简称NBI)负责通信,NBI允许用户按实际需求定制开发.

  数据平面由交换机等网络元素组成,各网络元素之间由不同规则形成的SDN网络数据通路形成连接.控制平面包含逻辑中心的控制器,负责运行控制逻辑策略,维护着全网视图.控制器将全网视图抽象成网络服务,通过访问CDPI代理来调用相应的网络数据通路,并为运营商、科研人员及第三方等提供易用的NBI,方便这些人员订制私有化应用,实现对网络的逻辑管理.应用平面包含着各类基于SDN的网络应用,用户无需关心底层设备的技术细节,仅通过简单的编程就能实现新应用的快速部署.CDPI负责将转发规则从网络操作系统发送到网络设备,它要求能够匹配不同厂商和型号的设备,而并不影响控制层及以上的逻辑.NBI允许第三方开发个人网络管理软件和应用,为管理人员提供更多的选择.网络抽象特性允许用户可以根据需求选择不同的网络操作系统,而并不影响物理设备的正常运行.

  NFV是针对运营商网络出现的问题而提出的SDN解决方案.网络运营商的网络由专属设备来部署,随着各种新型网络服务的产生,这些专属设备功能变得繁杂,而管理这些繁杂的硬件设备造成运营成本及能耗的增加,从而导致运营商网络的发展遇到瓶颈.针对上述问题,NFV将传统网络设备的软件与硬件相分离,使网络功能更新独立于硬件设备.为此,NFV采用了资源虚拟化的方式,在硬件设备中建立一个网络虚拟层,负责将硬件资源虚拟化,形成虚拟计算资源、虚拟存储资源和虚拟网络资源等,运营商通过软件来管理这些虚拟资源.由于采用的是通用硬件设备,NFV降低了设备成本,减少了能耗,缩短了新网络服务的部署周期,从而适应网络运营商的发展需求.在接口设计方面,NFV既可以基于非OpenFlow协议,又能与OpenFlow协同工作,同时还支持ForCES等多种传统接口标准化协议,以便适应网络运营商对设备的不同需求,并与ONF的SDN保持相对独立的发展.

  OpenDaylight的目标是通过SDN的开源开发,推进业界可部署方案具体实施,其架构由设备厂商提出并得到众多IT软件厂商的支持.考虑到兼容性问题,OpenDaylight继承了SDN架构形式,同时又结合了NFV的特点.架构共分为3个层次,分别是网络应用与业务流程(即应用层)、控制平台(即控制层)和物理与虚拟网络设备(即数据层).OpenDaylight的控制平台直接由自带的Java虚拟机实现.针对不同的网络任务,控制器自身携带了一系列可插入模块,并兼容第三方模块以增强SDN的功能.与ONF的SDN架构最大的不同在于:OpenDaylight控制器的南向接口除了支持OpenFlow协议之外,还支持NETCONF等配置协议和BGP等路由协议,并支持生产厂商的专有协议(如思科的OnePK协议).为了能够处理不同的标准协议,OpenDaylight增加了服务抽象层SAL,它负责将不同的底层协议标准转换成OpenDaylight控制层所理解的请求服务,保持了底层协议的透明性,并提高了整体架构的可扩展性.

  SDN,NFV和OpenDaylight的对比.由于NFV与ONF的SDN分别负责不同的网络,两种架构的协同工作能够获得更好的网络体验,将两者结合可以降低设备成本.通过利用通用交换机等设备和软件代替原有设备,使得设备的升级与网络应用的拓展相对独立.OpenDaylight具有开源性,因此,它可以兼容SDN,NFV以及未来与SDN并行的体系结构.总之,无论是哪个组织提出的SDN体系结构,实现的目标是一致的.SDN使得数据控制相分离的网络具有开放性和可编程性,科研人员及运营商可以通过PC机、手机、Web网页或未来可能出现的各种途径进行网络部署,而部署工作也仅是应用软件的简单开发或配置.可以预见:针对SDN并行架构的研究,是未来研究进展的重要趋势之一.

  1.3开放式接口与协议设计

  SDN中的接口具有开放性,以控制器为逻辑中心,南向负责与数据层通信,北向负责与应用层通信.此外,由于单一控制机制容易造成控制节点失效,严重影响性能,可采用多控制器方式,此时,多控制器之间将采用东西向通信方式.开放式接口的研究,必然进一步推动SDN的深入发展.

  在这些开放式接口研究中,控制器南向接口作为数据与控制分离的核心被广泛研究,成为业界关注的焦点.

  由于控制层与数据层解耦合,使得针对这两层的改进相对独立,在层与层之间仅需提供标准南向接口即可.南向接口是SDN分层架构的关键元素,然而逻辑上,它既要保证数据层与控制层之间的正常通信,又要支持两层独立更新;物理上,设备生产厂商需要开发支持这种标准接口的设备,因为传统网络设备是不能在SDN网络之中运行的.因此,研发南向标准接口成为SDN基础研究中的重要内容之一.

  许多组织着手制订南向标准接口.ONF提出的CDPI成为了主流南向接口,它采用OpenFlow协议.

  OpenFlow是SDN中第一个广泛使用的数据控制层接口协议,得到学术界普遍关注,它将单一集成和封闭的网络设备成为灵活可控的通信设备.OpenFlow协议是基于流的概念来匹配规则的,因此,交换机需要维护一个流表(flowtable)来支持OpenFlow,并按流表进行数据转发,而流表的建立、维护及下发均由控制器来完成.

  为了便于设备生产厂商开发支持OpenFlow的设备,ONF开始提供OpenFlow协议标准.OpenFlow1.0.0规定流表头为12元组(如源/目的IP地址、源/目的MAC地址等),在一定程度上满足了用户对SDN网络的需求.然而,1.0.0版本还不完善,如支持的规则和动作过少、仅支持单表、无关联动作的组合容易造成组合爆炸等问题.因此,OpenFlow1.1.0增加了部分规则,并开始支持多级流表、群组表和动作集等功能.IPv6是下一代互联网的核心元素,因此从1.2版本开始,OpenFlow增加了对IPv6源/目的地址的支持.网络拥塞一直是传统互联网需要面临的问题之一,在SDN网络中也是如此,因此,从1.3版本开始支持流控机制.在1.4.0版本中,OpenFlow66JournalofSoftware软件学报Vol.26,No.1,January2015协议增加了流表删除和复制机制,并考虑了流表一致性问题.总的来说,OpenFlow支持的功能越来越全,机制也在不断地更新完善.然而,随着OpenFlow支持的功能不断增加,流表将容易产生负载过重的问题.如何支持不同粒度、任意组合的功能,是OpenFlow下一步发展的关键所在.此外,OpenFlow允许控制器利用流表指定网络的数据通路,但并未指定如何配置和管理转发设备环境,因此,ONF提出了OF-CONFIG协议[31].作为配置协议,OF-CONFIG扩展了NETCONF标准,采用XML配置交换机环境,填补了OpenFlow在配置方面的缺失.

  针对南向接口,除了ONF提出的OpenFlow协议和OF-CONFIG协议外,IETF提出了ForCES协议[16],思科公司提出了OnePK协议.ForCES对网络设备内部结构重新定义,将转发元素(forwardingelement,简称FE)和控制元素(controlelement,简称CE)分离,形成两个独立的逻辑实体,两个逻辑实体之间依靠ForCES协议通信.

  该协议工作在主从模式下,即,CE通过ForCES协议主动将指令下发给FE,FE被动接受这些指令,并通过硬件执行每数据包级的分组转发.OnePK则是思科公司针对SDN产品专门开发的接口协议,该协议可以运行在思科所研发的专属平台上,并支持开发者用C或Java编写的程序.OnePK除了支持专有的OnePK协议之外,还可支持OpenFlow协议等.

  OnePK未提及每流双向通信是是Cisco专用接口除了南向接口相关研究之外,控制器北向接口及控制器间东西向接口同样是研究重点.北向接口负责控制层与各种业务应用之间的通信,应用层各项业务通过编程方式调用所需网络抽象资源,掌握全网信息,方便用户对网络配置和应用部署等业务的快速推进.然而,由于应用业务具有多样性,使得北向接口亦呈现多样性,开发难度较大.起初,SDN允许用户针对不同应用场景定制适合的北向接口标准.统一的北向接口标准将直接影响着各项应用业务的顺利开展.为了统一北向接口,各组织开始制订北向接口标准,如ONF的NBI接口标准和OpenDaylight的REST接口标准等.然而,这些标准仅对功能作了描述,而未详细说明实现方式.因此,如何实现统一的北向接口标准,成为业界下一步主要推动的工作.与南北向接口通信的方式不同,东西向接口负责控制器间的通信.由于单一控制器性能有限,无法满足大规模SDN网络部署,东西向接口标准的制订使控制器具有可扩展能力,并为负载均衡和性能提升等方面提供了技术保障.

  2、数据层关键技术研究

  在SDN中,数据层与控制层分离,交换机将繁重的控制策略部分交由控制器来负责,而它仅根据控制器下发的规则对数据包进行快速转发.为了避免交换机与控制器频繁交互,双方约定的规则是基于流的,而并非基于每个数据包的.SDN数据层的功能相对简单,相关技术研究主要集中在交换机和转发规则方面:首先是交换机设计研究,即设计可扩展的快速转发设备,它既可以灵活匹配规则,又能快速转发数据流;其次是转发规则的相关研究,例如规则失效后的一致性更新问题等.下面详细讨论数据层相关的研究成果.

  2.1交换机设计问题

  SDN交换机位于数据层面,用来负责数据流的转发.通常可采用硬件和软件两种方式进行转发.对于硬件来说,具有速度快、成本低和功耗小等优点.一般来说,交换机芯片的处理速度比CPU处理速度快两个数量级,比网络处理器(networkprocessor,简称NP)快一个数量级,并且这种差异将持续很长时间.在灵活性方面,硬件则远远低于CPU和NP等可编程器件.如何设计交换机,做到既保证硬件的转发速率,同时还能确保识别转发规则的灵活性,成为目前研究的热点问题.

  利用硬件处理数据,可以保证转发效率,但亟需解决处理规则不够灵活的问题.为了使硬件能够灵活解决数据层的转发规则匹配严格和动作集元素数量太少等限制性问题,Bosshart等人针对数据平面转发提出了RMT模型.该模型实现了一个可重新配置的匹配表,它允许在流水线(pipeline)阶段支持任意宽度和深度的流表.

  重新配置数据层涉及4个方面:①允许随意替换或增加域定义;②允许指定流表的数量、拓扑、宽度和深度,仅仅受限于芯片的整体资源(如芯片内存大小等);③允许创建新动作;④可以随意将数据包放到不同的队列中,并指定发送端口.RMT模型如图2所示.从结构上看,理想的RMT模型是由解析器、多个逻辑匹配部件以及可配置输出队列组成.具体的可配置性体现在:通过修改解析器来增加域定义,修改逻辑匹配部件的匹配表来完成新域的匹配,修改逻辑匹配部件的动作集来实现新的动作,修改队列规则来产生新的队列.这样容易模拟网关、路由器和防火墙等设备,也能够使用多标记头或非标准的协议.所有更新操作是通过解析器来实现的,无需修改硬件,只需在芯片设计时留出可配置的接口即可,实现了硬件对数据的灵活处理.


  •   论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
  •   论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
  •  
  •   论文投稿客服QQ: 论文投稿2863358778 论文投稿2316118108
  •  
  •   论文投稿电话:15380085870
  •  
  •   论文投稿邮箱:lunwenbuluo@126.com

联系方式

  • 论文投稿客服QQ: 论文投稿2863358778
  • 论文投稿客服QQ: 论文投稿2316118108
  • 论文投稿电话:15380085870
  • 论文投稿邮箱:lunwenbuluo@126.com

热门排行

 
QQ在线咨询
咨询热线:
15380085870
微信号咨询:
lunwenbuluoli