信息谷 - ICITU

标题: 浅谈软件定义网络(SDN)技术研究现状和发展趋势 [打印本页]

作者: ucomxu    时间: 2021-10-31 14:21
标题: 浅谈软件定义网络(SDN)技术研究现状和发展趋势
长久以来,硬件在网络世界中保持着至高无上的地位。直到2008年斯坦福大学的学者提出 OpenFlow[1],并于2009年将其扩展为 SDN(software-defined networking)概念[2]之后,软件定义网络概念逐渐进入人们的视野,并作为一种新思维模式的突破慢慢改变着网络世界的格局。SDN是一种将网络控制平面与转发平面分开的技术,使得控制平面和数据平面可以独立演进,此外还设计了逻辑集中的、开放的、可编程的控制平面以及统一的、标准化的南向接口,实现了更加自动化的配置和基于策略的网络资源管理。SDN自提出以来,相关研究和产业化应用迅速展开,为未来网络的创新突破提供了新的方向。2012年4月,谷歌宣布其骨干网络整体运行在 Openflow 上,已经证明 SDN 逐步从学术概念走向实际应用。2015年,Google确认在其Jupiter & Andromeda项目里面采用SDN来管理大规模环境,并且当时具有一定研发实力的公司都逐渐倾向于自研自建网络架构,而不是完全依赖网络设备商,证明了SDN技术已经在一些大公司的实验室中逐渐发展成熟。特别是16年以来,SDN技术不断深入商业化市场并给投入公司带来了超乎预期的利润,典型的如“VMware 宣布其NSX 有2400+客户,带来了10亿美元销售额”这一重大事件。自21世纪以来,移动数据、物联网、大数据和云计算4个领域的兴起与发展,使得现代网络应用类型急剧丰富,网络规模迅速膨胀,网络需求不断增加。而作为现代计算机网络主体的互联网,其管控能力有限的弊病逐渐凸显出来,此外“新问题-打补丁-新问题”现象循环往复的出现使得当代的网络核心即路由器的功能和结构日益复杂,上述种种现象说明现有的传统网络体系结构亟待革新,而SDN作为一种理想的解决方案则顺应时代而生。

本文第1节首先论述SDN概念的诞生与发展,以此引出SDN分层的体系结构,并将SDN与传统网络架构进行对比以及优势分析。第2节对 SDN 数据层和控制层的关键技术进行详细阐述。第3节论述了SDN在现代比较流行的几种应用。第4节针对未来发展趋势提出见解。最后给出本文结论。

1 SDN体系架构

1.1概念介绍

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

SDN作为一种新型的网络架构,起源于当时的clean slate研究课题,自诞生以来,不断得到发展完善。SDN的核心技术是OpenFlow技术,实现了网络数据与网络设备的控制分离,极大促进了网络流量的可控性,从而更好地为应用提供更好网络应用。任何技术的产生和应用都有其技术背景,而软件定义网络技术则是为了解决当前网络中控制软件与网络设备的关联性,实现数据和设备的解耦,简化网络控制管理,促进网络部署速度,使得网络架构能够快速的进行迭代应用,同时提供了更为便捷以及开放的网络应用运行平台。总之,软件定义网络是对当前臃肿不堪的网络创新设计,并提供了广为广阔的网络应用平台。
       软件定义网络是由三层架构予以实现的,从上到下依次分为应用层(APP)、中间控制层以及底层设施。其中应用层主要是用下层接口来提供各种网络应用以及业务处理功能,中间控制层则是对数据平面资源的再整合,对网络拓扑的处理;最为底层主要包含了各种网络设备,主要是进行 FLOW 数据的处理、转发。软件定义网络与编程领域中的分层思想有异曲同工之妙,实现了控制转发过程的解耦。同时SDN还实现了硬件资源的虚拟化,通过编程的方式实现控制硬件设备。从此,网络设备以及网络处理控制将不再局限于各大具有绝对话语权的网络设备生产厂商,而是由通用性较强的软件系统来予以实现,从而提升了网络管理的便捷性。基于上述的因素,SDN技术被称为影响未来十年的创新型技术,目前各大网络信息公司都积极的部署其自身的SDN应用,为实现高可灵活性的网络控制进行前沿性的实验以及技术积累。



1.2 体系结构

SDN架构[9]最先由开放网络基金会提出,并已经得到学术界和产业界的普遍认可。除此之外,针对电信运营商网络, ETSI(European TelecommunicationsStandards Institute,欧洲电信标准化协会)提出的NFV(Netwrko Function Virtualization,网络功能虚拟化)架构[10]也已得到产业界的支持。开放网络基金会发布的SDN架构如图1所示,从下到上包括三个平面,即数据平面、控制平面和应用平面。控制平面和数据平面之间利用CDPI( Control-Data-Plane Interface,控制数据平面接口)进行通信。Open Flow协议[11]当前被作为控制数据平面接口统一的标准接口。控制平面和应用平面之间的利用NBI(NorthBound Interface,北向接口)进行通信。数据平面主要由交换机等网络单元构成,这些网络单元通过基于不同策略构建的网络数据通路进行连接。在数据平面,仅基于控制器分发的策略对数据包进行快速转发,以适应用户日益增长的流量需求。控制平面主要由涵盖控制器逻辑的SDN控制器组成,负责控制逻辑规则制定和管理全网视图,使得运营商能够方便地进行网络配置和新协议的部署。控制器能够为运营商等第三方提供便于使用的北向接口,该接口能够根据租户的具体需求进行定制开发,以使租户能够较为方便地定制特色私有化应用。应用平面的组成为各种各样基于SDN实现的网络应用,通过简单的编程,租户即可实现新应用的快速部署,而不需要去关注底层硬件设备的技术细节。控制数据平面接口主要负责将转发策略从网络操作系统分发到各个网络设备,同时可以进行不同厂商和型号的匹配。

SDN给运营商的发展带来诸多机遇。首先,运营商网络带宽利用率将大幅度提高。例如,传统企业的广域网平均利用率只有40%,而谷歌公司将SDN技术运用到其内部广域网后,带宽利用率提高到了90%以上,带宽利用率的提高将降低运营商的服务成本。其次,SDN新网络服务的部署周期将大大缩短。SDN通过将传统网络设备的硬件和软件分离,从而实现了网络功能的更新独立于硬件之外,因此软件和通用交换机等设备进行联合足以取代原有管道设备,可以更方便地对设备进行升级以及对网络应用进行拓展。同时,SDN技术方便运营商对基础设施进行管理,通过单个设备即可控制所有网络组件,物理和虚拟设备都可以通过单个API进行控制,使得网络管理员的生活更加轻松。由于虚拟化、云计算和移动设备的迅猛发展给信息安全带来了严峻的挑战,而SDN控制器提供单点控制,可以在整个组织中分发信息安全策略和规则,另外SDN控制器还提供了一个附加点,可以放置安全策略来解决特定的软件和应用程序漏洞,大大提高了整体网络的安全性。此外,SDN技术具有一定的可扩展性,由于使用的协议基于开放标准,程序员可以编写公共接口并管理多个设备,而无需了解网络上每个设备的复杂功能,更加容易满足针对个性化用户的需求。
(, 下载次数: 49)

1.3 软件定义网络对比传统网络架构以及优势分析

较之传统的网络架构,软件定义网络与之在许多方面都有着较大的差异,如表1所示。除此之外,从软件定义网络的硬件方式来看,其硬件仅仅实现了存储转发功能,因此其设备的廉价性优势可以充分的得以发挥,统一化和标准化的硬件设备成为软件定义网络的大趋势;从软件角度来看,软件定义网络是基于虚拟化网络资源设备的操作系统予以实现的,可以根据网络参数,实现更加个性化和优质化的网络服务,这是传统网络不具备的全局性控制优势。


软件定义网络使得新型网络使用更加灵活。软件定义网络在网络架构部署完成之后,所需要的管理控制、网络平台以及接口的应用都是建立在网络操作系统的基础之上的,用户可以根据自身的需求进行核心网络功能的高度软件化定制,使得整个网络应用层的使用、控制具有较高的灵活性。其次,软件定义网络有效降低了网络管理和营运开销,该技术对于网络设备的要求有所降低,仅仅需要实现控制转发即可,而不必过分关注于其他控制管理功能,这使得底层的网络设备可以进行标准化、统一化的设计生产,有利于当前网络设备近乎垄断的现状;同时利用软件定义网络的基本模式,网络在运营部署过程中基本实现了自动化的部署,一旦发生了运维故障,也可以实现故障自主诊断,这是一种高度自动化且具有创新意义的网络管理运营模式,极大降低了人工成本,有效降低了营运开销。再次,软件定义网络实现了网络层次的虚拟化技术,这与当前主流云计算技术所依赖的虚拟化技术具有高度的一致性。借助于底层的网络虚拟化技术,再整合网络中的计算资源和存储资源,能够极其方便地实现更高层次云计算网络。因此,软件定义网络改变了整个网络的服务模式,颠覆了传统网络功能,对于未来计算机信息服务业务具有革命性的意义。

2 数据层和控制层关键技术研究

2.1数据层关键技术研究

数据层的研究主要围绕交换机设计和转发策略设计两个方面展开。钟文清[12]等人对数据层交换机设计、转发策略设计、控制层控制器设计、控制层特性取舍所面临的问题进行了探索和研究,并基于交换机设计所依据的可扩展、快速转发原则和转发策略更新一致性的设计目标提出两种改进方法。
(1)交换机设计
       在SDN架构中,交换机位于数据层,作用主要是完成对数据流的转发。在交换机设计时,基于硬实现的方式转发速率快,但是存在进行转发策略匹配时过于严格、动作集元素体量太少等问题。因此,如何使交换机在达到一定转发速率的同时能够保持一定的灵活性,是交换机设计的关键挑战之一。针对上述挑战,所提出的两种改进方法如下:
    1)可重配匹配表的方法。为了根据需要重置数据层,需要满足四方面的要求:第一,能够根据需要变化或者新添域定义;第二,在硬件资源允许的条件下,能够指定流表的宽度、深度等特性;第三,支付新行为创建;第四,在对数据包的处理过程中,支持任意放置数据包的位置及指定传输端口。理想的模型如图2所示。
    图2中输出队列可以通过软件的方式进行定义,这种可定义的特性主要是:由解析器来完成添加域的操作,之后由逻辑匹配部件来对解析器添加的域进行匹配工作以及新的动作的完成。以上操作实现了路由的过程,这种通过软件模拟路由过程的方式,能够弥补硬件无法根据数据自助选择策略的缺陷,可以在不是规定协议、不变更硬件前提下,进行自主策略选择以及数据处理。
    2)基于硬件分层的方法。基本思想是通过对交换机进行分层,提供高效、灵活的多表流水线业务。该方法将交换机分解为三层,最上面一层为软数据层,通过策略更新来实现对任何新协议的部署;最下面一层为硬数据层,具有相对固定、转发效率较高的特点;中部的一层为流适配层,主要承担软数据层和硬数据层之间的数据通信。具体工作过程如下:若控制器进行策略下发,软数据层将这些策略进行存储,进而形成具有N个阶段的流表。硬数据层通过策略的高速匹配完成对应的转发行为。中间层充当中介,将软件和硬件两个层次中的策略进行无缝的映射,也就是把相对灵活的N阶流表映射成为硬件可以识别的N阶段流表。为了完成该映射过程,首先,流适配层需要对软件数据层的全部策略进行核查;其次,通过该完整的策略将N阶段的流表映射成为1阶段的流表;最后,把该1阶段流表映射成为M阶段流表,并进一步将其分发给硬件数据层。基于这种无缝映射,可以较完整地解决交换机的硬件与控制器两者之间多表流水线技术不兼容的问题。
(2)转发策略设计
      SDN支持较低抽象水平的方式对策略进行更新,例如,由管理人员手动进行更新,该方式容易造成失误,导致转发策略的不一致。即使没有失误,若网络中部分交换机的转发策略已更新,而部分交换机的转发策略尚未更新,也会导致转发策略的不一致。此外,网络节点失效也会造成转发策略的不一致。将较低层次的配置抽象为较高层次的管理方式是解决这个问题的方式之一。该方式具有两个步骤:第一步,在有更新策略需求时,控制器首先处理已完成旧策略下数据流处理任务对应交换机的更新;第二步,若所有交换机策略更新都已完成,则视为更新策略成功,否则更新策略失败。基于这种处理的方式,新策略对应数据的处理要等到旧策略数据处理完毕再进行。该处理方式的使用前提是,支持以标签化的方式对要转发的数据进行预处理,以此来标识新策略、旧策略的版本号。更新策略时,交换机首先通过检查数据的标签来确认策略的版本号,当把数据转发出去时,需要将数据的标签去掉。

2.2控制层关键技术研究

控制层的研究主要围绕控制器设计展开。随着网络的规模不断扩展,现有的SDN方案中,单一结构集中式控制方式的处理能力将无法满足系统需求。

对于大规模网络而言,通常会将控制器划分为多个组成域的形式(如图3所示)。当仅使用单一集中式控制器来处理交换机请求时,其他域的交换请求就会有较大延迟,从而影响其他域的网络处理性能,当网络规模进一步扩大时,这种延迟将变得无法忍受。此外,这种控制模式还有单点失效问题。如果在整个网络中分布多个控制器,并保持逻辑中心控制特性,这样每个交换机与自己毗邻的控制器进行交互,减小了延迟,避开了单点失效问题,从而整个网络的性能得以提升。针对上述挑战,钟文清[12]等人进行了深入研究并给出了基于集中式控制器的两种改进思路:

1)基于分布式控制器的扁平式控制模式
       扁平控制模式是将多个控制器放置在不相交的区域里,它们管理各自所在的网络区域(如图4所示)。在扁平控制方式中,控制器之间地位对等,利用东西向接口可实现相互通信,逻辑上都能监管整个网络的状态,相当于都是全局控制器。当网络拓扑变化时,所有控制器可同步更新,仅需重新配置交换机和控制器之间的地址映射,因此,该方式对数据层的影响较小。分布式控制器Onix[13]基于网络信息库来实现管理,支持扁平式控制架构。每个控制器都有自己的网络信息库,保持网络信息库的一致性即能实现控制器的同步更新。在扁平控制方式中,所有控制器掌握着全部的网络状态,却只控制其所在的局部网络,这就存在着资源浪费。此外,在进行网络更新时,这种控制方式会导致控制器的整体负载增大。

2)基于分布式控制器的层次控制模式

层次控制方式中的控制器之间具有垂直管理的功能,在层次控制方式中,控制器分为局部控制器与全局控制器。局部控制器在地理上较靠近交换机,负责管理本区域节点以及掌握本区域的网络状态(如图5所示)。全局控制器提供全网信息的路由,进行全网信息维护。在这种控制方式下,控制器之间的交互包括两种,局部控制器与全局控制器之间的交互,以及全局控制器与全局控制器之间的交互。局部控制器如果收到来自交换机的询问请求,首先判断所转发的报文是否属于其局部信息,若属于,则对这些信息进行处理;否则,该局部控制器将该询问请求转发给全局控制器,全局控制器将相应信息返回给局部控制器,局部控制器再将信息返回给交换机。该方式的优势在于降低了全局控制器的交互频率,并减轻了流量负载。
(, 下载次数: 50)


(, 下载次数: 52)

(, 下载次数: 49)



3 SDN现代应用研究

当前学术界、产业界和标准化组织竞相推动着SDN的发展,深刻改变了现有的网络生态圈,从传统网络架构到SDN的转型成为了新的市场增长点。以谷歌、腾讯、百度等为代表的互联网公司以AT&T、英国电信、德国电信、中国移动、中国电信、中国联通为代表的网络运营商加速向基于SDN/NFV的网络架构转型。总体来说,SDN技术与现代各行业领域的结合与创新在当今的科学界正掀起着一股前所未有的发展热潮。

3.1 针对数据中心场景的创新应用

随着互联网的高速发展,互联网内容提供商提供的应用也越来越丰富,其背后支撑这些业务的数据中心规模急速增长。当前,谷歌、微软、腾讯等互联网公司的数据中心都达到了

上万台物理服务器的量级。在此形势下,传统数据中心网络架构己经难以支撑企业、市场发展的需求。因此,在数据中心内部使用SDN实现高扩展性,提高网络资源利用率,支持虚拟化、多业务、多租户成为了新的发展趋势。

国际上,从2010年开始,谷歌在部署B4时应用了SDN技术架构以及OpenFlow南向协议交换机,并同时支持基础路由协议和动态流量工程功能。2014年4月,谷歌宣布推出基SDN和NFV技术的Andromeda虚拟化平台,用于提供、配置和管理虚拟网络以及网络中数据包处理的业务流程点。2014年6月,Facebook公布了新的开源网络交换技术,包括典型的交换机Wedge及基于Linux的网络操作系统FBOSS。

在中国,腾讯公司针对运营中遇到的问题,在其广域网中部署了基于SDN的广域网流量调度方案。该解决方案中,分布式的控制层上移形成了集中式的控制系统。集中控制系统基于全局路由算法、全局路径统一计算、资源合理调度,并实现链路自动调整,节省了带宽租用费用。此外,百度、阿巴巴等也都在其数据中心中创新性地使用了 SDN技术。

3.2 针对运营商网络场景的创新应用

随着SDN在数据中心的成功应用,越来越多的电信运营商开始全力拥抱SDN/NFV,新一代的基于软件化的运营商网络成了新的趋势。SDN己经在移动核心网、移动回传网、数据中心中进行了小规模的部署和验证,众多运营商也陆续发了一系列的愿景和计划。

其中,美国运营商AT&T提出的Domain2.0计划迈出了运营商网络软件化转型的第一步。该计划预计2016年将进入全速推动软件化的高速通道,到2020年网络75%的功能完由软件构成。到目前为止,AT&T已经发布了一个基于SDN的产品服务,这个服务使用户可以自己来添加或改变网络务类型。

中国运营商也在软件化网络和数据中心云化方面进行了积极的努力与探索。例如,中国联通在2015年9月发布了新一代网络架构CUBE-Net2.0白皮书,将基于SDN、云和超宽带技术实现网络重构,从3个维度来诠释构建以数据中心核心的网络。中国移动则在2015年正式推出下一代革新络NovoNet,自在通过融合新的技术手段,构建可全局按调度资源,网络能力完全开放的新一代网络。

3.3 实现产业界大规模商用部署

随着SDN技术的不断成熟和小规模成功部署,国外软件定义网路技术已经逐渐步入商业化发展模式,国际巨头纷纷加入软件定义网路的研究和投入,传统的通信供应商、芯片制造商以及IT公司都积极推出其自身了软件定义网络的产品,商业化气息严重,以Google为代表的互联网巨头在其数据中心部署软件定义网络产品,正式进入了其产业化发展轨道。与此同时,无论是传统的互联网设备和软件供应商,都致力于将软件定义网络作为其下一代产品的战略布局,为迎接新的网络架构,占领全球市场,不断完善自身产品线和解决方案。

根据调研公司IHS最新的调查报告显示,从2016年开始SDN的部署呈现飙升的趋势。仅通过一年时间SDN在云服务提供商和通信服务提供商的数据中心中的部署比例从2015的20%提髙到60%,同时,SDN的企业采用率也有17%左右的提高。预计2019年,应用于数据中心和企业局域网SDN领域的以太网交换机和控制器收入将达到122亿美元,其中交换机占82亿美元,SDN控制器占40亿美元。

4 未来发展趋势

4.1  智能网络理念推动SDN深入应用

未来几年,随着物联网、5G、人工智能等技术和理念的逐步普及,网络承载业务负载的类型和体量将不断变化,网络仅靠单纯的协议优化、功能完善已经很难解决所面临的问题。要想从根本上使网络适应于上层业务,必须从根本上进行网络架构的变革,让网络提升自动化、自优化能力,最终实现自主化的目标,换言之,最终实现智能网络。

而从目前来看,SDN的开放性、灵活性和便捷性,正是实现智能网络的前提,企业网络必须首先完成软件定义的变革,具备更加开放、灵活的特性,才能进入到智能网络的阶段,而SDN无疑是实现智能网络重要手段。随着企业网络向智能网络的演变,SDN也会在企业网络中继续深入应用,成为智能网络的重要使能技术。

4.2 SDN技术融合趋势进一步加剧

无论是人工智能还是智能网络,整个系统都是跨界融合,诸如无人驾驶,也是融合了车辆、道路、导航、视觉、网络等多种技术,网络领域的智能化应用不可避免的也一定是技术大融合的趋势,伴随着ICT的不断融合,CT和IT技术都深度影响着网络的发展和变化,其中最典型的就是运营商以NFV为技术基础进行网络重构,将原来的CT网元功能运行在IT基础设施上,目前国内运营商开展了NFV商用试点,是IT与CT技术融合的先行者和实践者。未来随着智能化应用的不断推出,网络还将不断融入包括DT、OT在内的更多技术。

4.3智慧城市和物联网带动SD-WAN应用落地

随着我国越来愈多的地区开始智慧城市的建设,大量的行业应用将迁移到城市级云平台,促使城市信息化建和引入越来越多的新技术,特别是在网络基础架构层面,随着城市级云计算中心、城市级大数据中心的建设,以城市为单位的数据交换、共享、处理将给现有网络带来巨大挑战,特别是在广域网层面,如何更好地在广域网传输数据和管理相关设备将成为智慧城市运营的关键,促进了城市网络架构进一步向部署SD-WAN解决方案演进。未来,SD-WAN将会在智慧城市建设中发挥更大的作用。

同时,智慧城市也带动了物联网的落地实践,尤其在城市的产业升级和改造方面,物联网将发挥更大的作用后,更多规模的终端和人的连接,会对边缘计算的普及起到推进作用,而SDN将会为边缘计算的深入落地起到至关重要的促进作用。

5 结束语

SDN的发展使得其在我国受到了非常广泛的关注,尤其是运营商给予的关注更高。然而运营商在衡量一个产品和技术时,主要是针对其能不能减少运营成本,为企业创造更多的经济利益进行考虑的,基于这一因素提出了对SDN进行路由器设备的更换。如何进行平滑的演进,在确保现有资产得到保护的同时解决其中各项问题,是目前我国运营商需要重点思考的问题。另外,SDN网络控制器在逻辑上是比较集中的,与核心网的网元非常的接近,有着非常重大的意义,需要对其进行不断的更新。

SDN作为一种新的网络技术与架构,其核心价值已经得到了学术界和工业界的广泛认 可。但是它在实际应用中仍然面临诸多挑战,各界对于其未来的发展也还存在褒贬不一的看法,有些人认为SDN只能停留在少数大型企业的专有骨干或数据中心网络中,或是成为运营商网络的一个附属功能,但也有人认为SDN技术必将掀起一场网络技术的革命。但不管SDN最终怎样,当前的发展趋势表明SDN将在运营商网络转型、产业互联网应用等方面发挥重要作用。
————————————————
版权声明:本文为CSDN博主「Miraitowa_Ming」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Dustin_Du/article/details/104304996






欢迎光临 信息谷 - ICITU (https://www.icitu.com/) Powered by Discuz! X3.4