APP下载

软件定义网络发展现状与分析

2016-09-18奎丽萍罗桂兰

实验科学与技术 2016年1期
关键词:底层虚拟化架构

奎丽萍,罗桂兰

(大理学院 数学与计算机学院,云南 大理 671003)



软件定义网络发展现状与分析

奎丽萍,罗桂兰

(大理学院数学与计算机学院,云南大理671003)

因特网的出现使世界上几乎所有的东西都能相互联系起来,从而诞生了数字化的社会,给人们的生活与交流带来极大的方便。然而传统的IP因特网结构不仅复杂而且难以管理,表现在根据预先定义好的策略来对网络进行配置是极其困难的。新型的基于控制与转发分离的软件定义网络(SDN)能够有效地改变这种状况。该新型网络能够使网络管理变得容易且还能更好地促进网络的演进。该文介绍了SDN的发展历史、特征及研究方向等,重点对SDN的体系结构、关键技术及应用进行了介绍。

软件定义网络;应用面;控制面;数据面

2006年,软件定义网络(SDN)诞生于由美国GENI项目资助的斯坦福大学Clean Slate课题。该研究团队提出了开放流(OpenFlow)的概念并将其应用于校园网络的试验创新,后续基于OpenFlow给网络带来可编程特性的SDN概念应运而生。随着SDN技术的不断进步和成熟,许多研究者将SDN与传统的网络相结合,以提高网络的服务质量[1]、网络吞吐量[2]及降低能耗[3]等。2009年,SDN概念入围Technology Review年度十大前沿技术,自此获得了学术界和工业界的广泛认可和大力支持。国际上的科研机构和IT企业纷纷对SDN进行研究。2011年3月,由Google、德国电信、微软、雅虎、NTT等96家单位共同成立了开放网络基金会(ONF),致力于推动SDN架构、技术规划及相关的开发工作。2012年,SDN完成了从实验技术向网络部署的重大跨域:覆盖美国上百所高校的INTERNET2部署了SDN网络;德国电信等运营商开始开发和部署SDN;谷歌主干网络已经全面运行在OpenFlow上。我国的研究机构和互联网企业也十分重视SDN的发展。中国电信主导提出在现有网络(NGN)中引入SDN的需求和架构研究。中国移动则提出了“SDN在WLAN网络上的应用”等课题。

1 SDN的特点

在SDN网络中,控制面与数据面相互分离,网络的配置与演进也更为容易。SDN具有以下4个特点[4-6]。

1)集中控制。

集中的控制面能够控制全网的转发设备,获得网络资源的全局信息,并根据业务需求进行资源的全局调配和优化控制。

2)开放接口。

开放的南向CDPI和北向API接口,能够实现应用和网络的无缝集成,使得应用能告知网络如何运行才能更好地满足应用的需求。

3)网络虚拟化。

通过南向接口的统一和开放,屏蔽了底层物理转发设备的差异,实现了底层网络对上层应用的透明化。

4)可编程化。

网络接口开放,能按软件编程的方式对网络进行动态调节,便于网络技术的创新以及网络能力的提升。

SDN与传统网络的最大区别就在于它可以通过编写软件的方式来灵活定义网络设备的转发功能。在传统网络中,控制平面功能是分布式地运行在各个网络节点(Hub、交换机和路由器)中的,因此新型网络功能的部署需要所有相应网络设备的升级,导致网络创新难以实现。而SDN将网络设备的控制平面与转发平面分离,并将控制平面集中实现,这样新型网络功能的部署只需要在控制节点进行集中的软件升级,从而实现快速灵活地定制网络功能。

2 SDN体系结构

SDN体系结构由3个层面构成,从上到下依次为应用面、控制面和数据面。应用面与控制面通过应用可编程接口(API)相连接,控制面与数据面通过控制数据面接口(CDPI)相连接。另外,API接口又称北向接口,CDPI接口又称南向接口。SDN基本体系结构如图1所示[7]。

图1 SDN基本体系结构示意图

数据面(DP)内网络元素指的是数据转发设备,可以通过无线方式或者有线方式相连接。控制数据面接口(CDPI)定义了转发设备的指令集以及转发设备与控制面设备之间的通信协议。控制面(CP)被看作是整个SDN网络的“大脑”,它通过CDPI接口对数据面的转发设备进行编程。CP内的所有控制逻辑都是建立在应用程序和控制器上;网络操作系统是CP内的系统软件,为应用程序开发员提供了API,该接口是作为开发应用程序的公用接口,可对底层的指令集进行抽象化。应用面(AP)是应用程序的集合,应用面内的应用程序利用由API接口提供的功能来执行相关的网络操作。应用程序包含路由、防火墙、负载平衡和监听等。

上述是目前业界对SDN技术的基本共识,当然不同的标准化组织都有自己的参考架构,研究和关注的侧重点也各不相同。其中,相对最有影响力的ONF组织在SDN的标准化进程中占有重要地位,它所理解的SDN主要是从网络用户角度出发进行定义的,可以对底层网络资源进行灵活地定义与操作。ONF组织对SDN核心架构进行了明确的定义,同时还定义了完全开放的SDN南向接口协议——OpenFlow,并致力于推进其标准化。此外,由思科、IBM、微软等厂商联手推出了名为OpenDaylight的开源SDN项目,虽然该项目并非以制定标准为目标,但很有可能对业界产生深远的影响。

根据每个层面内部的各个执行功能,SDN又可以分成6个层次,如图2所示。下面按照从下至上的顺序对这6个层次的运行功能进行详细介绍[8]。

图2 SDN层次结构示意图

与传统网络一样,SDN网络基础设施是由一系列网络设备(如交换机、路由器等)组合而成。在SDN中,数据面内的网络设备仅具有转发数据的功能,其他的智能功能被转移到控制面。网络基础设施具有开放的标准接口,确保在不同的数据面和控制面的设备之间实现配置和通信的兼容性。这些开放的标准接口能使控制实体动态地对不同的转发设备进行编程。在SDN/OpenFlow 架构中,主要有控制器和转发设备两个元素。控制器是一个运行在硬件平台上的软件栈,转发设备是硬件或软件元素。具有OpenFlow协议的转发设备是一个基于流表的管道,每个数据流表入口包含匹配规则、执行匹配数据包行为和数据包统计计数器3个部分。

南向接口是控制元素与转发元素的连接桥梁,是控制面和数据面功能分离的关键工具。SDN的南向接口一般采用OpenFlow协议作为其接口标准,为转发设备的执行以及数据面和控制面之间的通信信道提供共同的规划。向控制层的网络操作系统提供流表信息是南向接口的一个非常重要的功能。流表信息包含3个信息资源:1)当一个链路或者端口发生变化时,基于事件的报文就会从转发设备发送到控制器;2)当有数据流统计产生时报文就由转发设备发给控制器;3)当封装的数据报文不知道如何处理新到达的数据流或者在流表的匹配条目中有一个明确的“发送给控制器”的行为时,发送设备就会将报文发送给控制器。

网络管理程序能使不同的虚拟机共享同样的硬件资源。在一个云计算服务器中,每个用户从计算到存储都有自己的虚拟资源。SDN的网络管理程序能使供应商更好地使用物理基础设施,不再需要通过大幅提高成本来获得新的收入。如今,虚拟技术最令人感兴趣的特征之一就是虚拟机可以很容易地从一台物理服务器转移到另一台物理服务器上,并且可以按要求被创建或撤销,能够使服务提供变得灵活和容易管理。FlowVisor 是最早应用于SDN的虚拟化技术之一。该技术允许多个逻辑网络共享OpenFlow网络基础设施,并提供抽象层。基于OpenFlow使交换机数据面进行切片,因FlowVisor具有这些优点而变得更加容易。

在SDN网络中,网络操作系统是最核心的网络元素。它提供了一种逻辑集中控制的功能,便于对SDN网络进行管理。与传统的网络操作系统一样,SDN网络操作系统(NOS)的重要价值也是给供应商提供一系列服务的接口。一般的功能都由NOS来提供,如网络状态、网络拓扑信息、设备发现和网络配置等。NOS定义了开放的网络策略,使得程序开发员不再需要关心底层路由元素之间的数据分布细节,并且能快速地促进网络创新,降低新型网络协议创建及网络管理的复杂度。

SDN北向接口是一套具有为开发者提供网络高层的逻辑抽象和业务模型的可编程接口。北向接口在SDN控制器中的作用是便于网络管理者对网络的设计与管理。相比于传统的网络,SDN则为开放者提供更大的灵活性。控制器的北向接口可以实现一些基本的、更为通用的网络物理/逻辑抽象,如拓扑视图、虚拟化网络切片、链路/网络层数据库接口,以API的形式开放出强大的二次开发能力,使开发者可以着力关注更高层的应用业务而非底层硬件实现。与计算机操作系统类似,只要有足够的网络应用,SDN控制器才会有强大的生命力,而友好、完备的北向接口是吸引SDN应用开发者的关键。

虚拟化技术在传统的网络中大致可分为虚拟局域网、虚拟私有网及虚拟路由转发3类。但传统网络虚拟化技术还远远不能满足SDN网络的需求。为了实现网络资源价值的最大化,虚拟化必须是端到端的,并且能够像服务器虚拟化技术一样抽象和池化网络资源。这些能力能够创建出满足用户需求的、拓扑与底层物理网络解耦的虚拟网络,同时还使得管理人员能够动态地创建基于策略的虚拟网络以满足广泛的需求。将虚拟网络和物理网络解耦的另一个优势是,网络管理人员能够在不影响现有数据流的前提下对物理网络进行调整(如扩充容量)。另外,支持面向特定用户的网络虚拟化也有助于实现不同租户网络的隔离。

在SDN网络中,程序语言能更好地解决一些具有挑战性的问题,如在一个基于纯OpenFlow的SDN网络中,很难保证一个多任务系统之间不会出现相互干扰,而程序语言就有助于解决这个问题。程序语言虚拟化可以提供虚拟网络拓扑创建和程序编写的能力。这种概念与面向对象的程序设计语言相类似,能使程序员只集中于解决一个特殊的问题而不需要去关心数据结构。高级程序语言要能实现以下多个目标:1)避免与传统网络一样采用低级别和特殊装置对整个SDN网络进行配置;2)提供由网络策略来完成的各种管理抽象;3)对多任务的解耦(如路由、接入控制和流量工程);4)实现更高级别的程序设计接口;5)解决数据转发规则问题;6)解决分布系统中固有的各种竞争问题;7)提高分布式决策环境中冲突分解技术;8)提供数据面路径设置上的本地容错能力;9)降低数据流处理中的延迟时间;10)状态应用程序的创建应宽松(如状态防火墙应用程序)。

资源管理的核心是基于SDN控制器北向接口编排资源管理流程,使得它能够及时有效地将上层云计算业务的资源需求反馈给控制器,并对网络设备和链路进行调配。考虑到云计算等典型业务通常需要计算、存储、网络等多种类型资源的协调交互,因此对SDN控制能力的调用需要被封装为独立的组件,并与相应计算资源控制组件、存储资源控制组件,以及其他一些功能组件共同工作。在资源管理的主要功能中,对SDN架构底层网络设备的配置控制是一个重要方面,同时它还需要具备更完善的管理功能,如性能管理、故障管理和安全管理等。它们都将是单独的流程,需要在合适的地方调用SDN控制器的北向接口。一般而言,资源管理通过远程调用基于REST API的控制器接口,在架构上实现与控制器的松耦合,使系统部署更方便,更具有扩张性。

通过以上的分析可以看出,SDN体系架构最突出的特点就是标准化的南向接口协议。它希望所有的底层网络设备都能实现一个标准化的接口协议,这样控制平面和应用平面就不再依赖于底层具体厂商的交互设备。控制平面可以使用标准的南向接口协议来控制底层数据平面的设备,从而任何实现了这套标准化的接口协议的设备都可以进入市场并投入使用。交换设备生成厂商可以专注于底层的硬件设备,甚至交换设备能够逐步向白盒化的方向发展。

3 SDN的研究方向

目前,对SDN的研究热点主要集中在服务质量(QoS)、吞吐量、带宽利用率、可靠性、安全性和节能等方面。文献[9]提出了AQSDN和PCaQoS协议,通过实验分析得出这两种协议能够在简单的网络环境中提高QoS。文献[10]针对实时性要求较高的应用提出了ROIA协议算法,通过实验仿真得出该协议可以很好地提高SDN底层网络的QoS。在提高SDN网络吞吐量方面,文献[11]提出了可编程通用转发器(ProGFE)技术,它可以在传输大数据帧的条件下获得更高的吞吐量。在提高SDN网络带宽利用率方面,文献[12]提出了一种具有可扩展的SDN控制器技术,它能够在确保传输性能的前提下提高带宽利用率。文献[13]针对SDN网络可靠性方面提出了一种新型的控制路径损耗预期百分比策略技术。该技术通过优化SDN网络控制器的存放位置来达到最大限度地提高网络的可靠性。文献[14]通过利用SDN的特征来整合SDN网络架构以解决无线移动SDN网络通信安全问题。文献[15]提出了选择性贪婪算法和全局贪婪算法,通过理论分析得出这两种算法能很好地降低SDN网络控制层的能量损耗。

4 SDN研究的关键技术

4.1交换机及南向接口技术

SDN交换机是SDN网络中负责数据转发处理的设备。与传统的交换机设备存在差异的是,设备中的各个表项是由远程控制器统一下发的,因此各种复杂的控制逻辑都无须在SDN交换机中实现。SDN交换机只需关注基于表项的数据处理,而数据处理的性能也就成为评价SDN交换机优劣的最关键指标。另外,考虑到SDN和传统网络的混合工作问题,支持混合模式的SDN交互机也是当前设备层技术研发的焦点。同时,随着虚拟化技术的出现和完善,虚拟化环境将是SDN交换机的一个重要应用场景,因此SDN交换机可能会有硬件、软件等多种形态。

SDN交换机需要在远程控制器的管控下工作,与之相关的设备状态和控制指令都需要经由SDN的南向接口传达。当前,最知名的南向接口协议是OpenFlow。作为一个开放的协议,OpenFlow突破了传统网络设备厂商对设备能力接口的壁垒,能够全面解决SDN网络中面临的各种问题。

4.2控制器及北向接口技术

SDN控制器负责整个网络的运行,是提升SDN网络效率的关键。许多SDN研究人员投身于控制器的设计与实现。用于网络集中控制的控制器作为SDN网络的核心,其性能和安全性非常重要,其可能存在的负载过大、单点失效等问题一直是SDN领域中亟待解决的问题。

SDN北向接口是通过控制器向上层业务应用开放的接口,其目标是使得业务应用能够便利地调用底层的网络资源。北向接口是直接为业务应用服务的,其设计需要密切联系业务应用需求,具有多样性的特征。同时,北向接口的设计是否合理、便捷,会直接影响到SDN控制器厂商的市场前景。目前,北向接口还缺少业界公认的标准,成为当前SDN领域竞争的焦点。虽然北向接口标准当前还很难达成共识,但是充分的开放性、便捷性、灵活性将是衡量接口优劣的重要标准。

4.3业务应用和资源管理技术

SDN网络的最终目标是服务于多样化的业务应用创新。因此,随着SDN技术的部署和推广,将会有越来越多的业务应用被研发。这类应用将能够便捷地通过SDN北向接口调用底层网络能力,按需使用网络资源。

SDN被广泛地应用在云数据中心、宽带传输网络、移动网络等种种场景中。SDN通过标准的南向接口屏蔽了底层物理转发设备的差异,实现了资源的虚拟化,同时开放了灵活的北向接口供上层业务按需进行网络配置并调用网络资源。云计算领域中的OpenStack就是可以工作在SDN应用层的云管理平台,通过在其网络资源管理组件中增加SDN管理插件,管理者和使用者可利用SDN北向接口便捷地调用SDN控制器对外开放的网络能力。因此,网络资源可以和其他类型的虚拟化资源一样,以抽象的资源能力呈现给业务应用开发者,开发者无须针对底层网络设备的差异耗费大量开销从事额外的适配工作。这有助于业务应用的快速创新。

5 SDN的应用

在SDN关键技术快速发展的同时,SDN的应用场景也变得越来越多。应用场景的多元化在促进SDN技术发展的同时,也决定了其未来发展的方向。SDN的应用场景主要是由其技术特点所决定的,表1列出了SDN技术适用的部分网络应用的分类、特征和可能的应用方式。

5.1SDN在光网络中的应用

北京邮电大学信息光子学与光通信国家重点实验室将灵活的网格光网络与具有时间意识的软件定义网络结合起来以支持数据中心应用。这种新型的结合网络可以实现数据中心选择、路径计算和带宽资源分配等功能。另外,即使在出现网络拥塞较大的情况下,该结合网络也能有效提高网络性能,保证各种应用服务的可靠性[16]。

5.2SDN在无线网络中的应用

NEC公司在移动网络中采用SDN集中控制器监控各种无线信道质量和负载状况,还可以在多种移动通信方式之间实现动态切换,保证终端用户的服务质量。此外,还利用OpenFlow智能流量管理功能对移动回传网络进行节能管理,如可以在通信量相对较少的夜晚对网络路径进行汇集,关闭多余的无线中转站点的电源,从而节省能源。

表1 SDN技术可能适用的网络应用一栏表

5.3SDN在虚拟化技术中的应用

中国电信股份有限公司北京研究院将SDN技术与虚拟化技术相融合,应用于移动核心网网络架构中,该架构可融合2G/3G、LTE及Wi-Fi等多种接入技术,解决了移动网络面临的大数据处理问题。该新型的网络架构在网络容量统筹调度、快速部署业务、提升网络智能等方面亦具有优势[17]。

6 结束语

软件定义网络的出现为解决长期存在于传统网络中的各种问题创造了一个很好的机会,将打破传

统网络设备软硬件一体化垂直开发模式。SDN网络只有数据层、控制层和应用层3层架构。在这种新型体系架构中,最底层交换设备只需要提供最基本、最简单的功能,实现稳定可靠的传输数据,所有复杂功能和智能化策略都由上层来处理。架构的中间为控制层,该层是整个网络最核心的组件,是主导整个网络系统的关键。架构的上层为应用层,该层是今后整个产业主要的利润来源。通过开放的网络操作系统,将极大地降低网络服务开放的门槛,会有大量的新型服务出现,满足用户的各种需求,获得商业价值。

SDN网络已经成功地为下一代网络铺平了道路,为研究创新和软件开发提供了平台,并促进其他领域的进步。在不久的将来,SDN网络会有更广泛的应用。目前,国外正在对SDN网络展开深入的研究,我国政府、科研院校和通信企业也应该重视SDN技术发展的重大意义,加大各方面资源的投入力度,抢占SDN技术的制高点。

[1]EGILMEZ H E,TEKALP A M.Distributed QoS architectures for multimedia streaming over software defined networks[J].IEEE Transactionon Multimedia,2014 ,16(6):1597-1609.

[2]RISDIANTO A C,MULYANA E.Implementation and analysis of control and forwarding plane for SDN[C]//International Conference on Telecommunication System,Services,and Applications(TSSA).Bail:IEEE,2012.

[3]LI Dan,SHANG Yunfei,CHEN Congjie.Software defined green data center network with exclusive routing[C]//IEEE Conference on INFOCOM.[S.l.]:IEEE,2014.

[4]雷葆华,王峰,王茜.SDN核心技术剖析和实战指南[M].北京:电子工业出版社,2013:7-8.

[5]黄韬,刘江,魏亮.软件定义网络核心原理与应用实践[M].北京:人民邮电出版社,2014:29-31.

[6]沈庆国,张高明,骆坚.SDN特征剖析及典型应用介绍[J].移动通信,2014(14):56-62.

[7]沈苏彬.软件定义联网的建模与分析[J].南京邮电大学学报(自然科学版).2014,34(3):1-9.

[8]KREUTZ D,RAMOS F M V,ESTEVES P V,et al.Software-defined networking:a comprehensive survey[DB/OL].[2014-10-15].http://arxiv.org/pdf/1406.0440v3.pdf.

[9]WANG Wengdong, QI Qinglei,GONG Xiangyang.Autonomic QoS management mechanism in software defined network[J].China Communication,2014:13-23.

[10]GORLATCH S,HUMERNBRUMT,GLINKA F.Improving QoS in real-time internet applications:from best-effort to software-defined networks[C]//International Conference on Computing,Networking and Communications(ICNC).Honolulu,H1:IEEE,2014:189-193.

[11]GELBERGER A,YEMINI N,GILADI R.Performance analysis of software-defined networking(SDN)[C]//IEEE 21 st International Symposium on Modelling,Analysis&Simulation of Computer and Telecommunication Systems (MASCOTS).San Francisco:IEEE ,2013:389-393.

[12]GUO Wei,WANG Bin,JIN Yaohui.Joint optimization of transmission performance and bandwidth utilization based on software defined networks[C]//Optical Fiber Communications Conference and Exhibition(OFC).San Francisco,CA:IEEE,2014:1-3.

[13] HU Yannan ,WANG Wendong,GONG Xiangyang.On reliability-optimized controller placement for software-defined networks[J].China Communications,2014:38-54.

[14]DING A Y,CROWCROFT J,TARKOMA S.Software defined networking for security enhancement in wireless mobile networks[J].Computer Networks.2014(66):94-101.

[15]WANG Rui,JIANG Zhipeng,GAO Suixing.A world of wireless,mobile and multimedia networks(WoWMoM) [C]//Sydney,NSW:IEEE,2014:1-6.

[16]ZHAO Yongli,ZHANG Jie,ZHOU Ting.Globecom Workshops(GC Wkshps)[C]//IEEE International Symposium on a World of Wireless,Mobile,and Multimedia Networks.Atlanta,GA:IEEE,2013:1221-1226.

[17]胡晓娟,张园,夏旭.基于SDN融合的虚拟化移动核心网络研究[J].电信科学,2013(9):51-54.

Development Status and Analysis of Soft Defined Network

KUI Liping,LUO Guilan

(School of Mathematics and Computer,Dali University,Dali 671003,China)

The Internet has led to the creation of a digital society,where almost everything is connected and is accessible from anywhere.Thus,it brings great convenience to people’s life and communication.However,traditional IP networks are complex and very hard to manage.It is very difficult to configure the network according to predefined policies.The new software-defined network (SDN) can efficiently change this state by separating the control from forwarding.This network can simplify network management and better facilitate network evolution.This paper describes the development history,characters and research direction of the soft defined network,and focuses on the introduction of the architecture,key technology and application.

soft defined network; application plane; control plane; data plane

2014-11-30

奎丽萍(1986-),女,硕士,主要从事SDN与网络通信方面的研究。

TP393.02

A

10.3969/j.issn.1672-4550.2016.01.030

猜你喜欢

底层虚拟化架构
基于FPGA的RNN硬件加速架构
航天企业提升采购能力的底层逻辑
功能架构在电子电气架构开发中的应用和实践
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨
WebGIS架构下的地理信息系统构建研究
H3C CAS 云计算管理平台上虚拟化安全防护的实现
存储虚拟化还有优势吗?
一种基于FPGA+ARM架构的μPMU实现
回到现实底层与悲悯情怀