文档库 最新最全的文档下载
当前位置:文档库 › 软件定义网络_SDN_研究进展_张朝昆

软件定义网络_SDN_研究进展_张朝昆

软件定义网络_SDN_研究进展_张朝昆
软件定义网络_SDN_研究进展_张朝昆

软件学报ISSN 1000-9825, CODEN RUXUEW E-mail: jos@https://www.wendangku.net/doc/812039946.html, Journal of Software,2015,26(1):62-81 [doi: 10.13328/https://www.wendangku.net/doc/812039946.html,ki.jos.004701] https://www.wendangku.net/doc/812039946.html, ?中国科学院软件研究所版权所有. Tel: +86-10-62562563

*

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

张朝昆, 崔勇, 唐翯翯, 吴建平

(清华大学计算机科学与技术系,北京 100084)

通讯作者: 崔勇, E-mail: cuiyong@https://www.wendangku.net/doc/812039946.html,

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

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

中图法分类号: TP393

中文引用格式: 张朝昆,崔勇,唐翯祎,吴建平.软件定义网络(SDN)研究进展.软件学报,2015,26(1):62-81.https://www.wendangku.net/doc/812039946.html,. cn/1000-9825/4701.htm

英文引用格式: Zhang CK, Cui Y, Tang HY, Wu JP. State-of-the-Art survey on software-defined networking (SDN). Ruan Jian Xue Bao/Journal of Software, 2015,26(1):62-81 (in Chinese).https://www.wendangku.net/doc/812039946.html,/1000-9825/4701.htm

State-of-the-Art Survey on Software-Defined Networking (SDN)

ZHANG Chao-Kun, CUI Yong, TANG He-Yi, WU Jian-Ping

(Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China)

Abstract: Network abstraction brings about the naissance of software-defined networking. SDN decouples data plane and control plane, and simplifies network management. The paper starts with a discussion on the background in the naissance and developments of SDN, combing its architecture that includes data layer, control layer and application layer. Then their key technologies are elaborated according to the hierarchical architecture of SDN. The characteristics of consistency, availability, and tolerance are especially analyzed. Moreover, latest achievements for profiled scenes are introduced. The future works are summarized in the end.

Key words: SDN (software-defined networking); interface; switch; controller; network abstraction

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

SDN起源于2006年斯坦福大学的Clean Slate研究课题[2].2009年,Mckeown教授正式提出了SDN概念[3].利用分层的思想,SDN将数据与控制相分离.在控制层,包括具有逻辑中心化和可编程的控制器,可掌握全局网络信息,方便运营商和科研人员管理配置网络和部署新协议等.在数据层,包括哑的(dumb)交换机(与传统的二层交换机不同,专指用于转发数据的设备).交换机仅提供简单的数据转发功能,可以快速处理匹配的数据包,适应流量日益增长的需求.两层之间采用开放的统一接口(如OpenFlow[4]等)进行交互.控制器通过标准接口向交*基金项目: 国家自然科学基金(61120106008, 61161140454); 国家高技术研究发展计划(863)(2013AA010401); 国家下一代互联网示范工程(CNGI-12-03-003)

收稿时间:2014-02-28; 修改时间: 2014-04-19; 定稿时间: 2014-07-19; jos在线出版时间: 2014-08-19

CNKI网络优先出版: 2014-08-19 14:16, https://www.wendangku.net/doc/812039946.html,/kcms/doi/10.13328/https://www.wendangku.net/doc/812039946.html,ki.jos.004701.html

张朝昆等:软件定义网络(SDN)研究进展63

换机下发统一标准规则,交换机仅需按照这些规则执行相应的动作即可.因此,SDN技术能够有效降低设备负载,协助网络运营商更好地控制基础设施,降低整体运营成本,成为最具前途的网络技术之一.因此,SDN被MIT 列为“改变世界的十大创新技术之一”[5].SDN相关技术研究迅速开展起来,成为近年来的研究热点.2013年, SIGCOMM会议收录了多篇相关文章,甚至将SDN列为专题来研讨,带动了SDN相关研究的蓬勃发展.

本文第1节首先论述SDN诞生与发展的背景,以此提出SDN分层的体系结构,并讨论SDN开放式接口.第2节和第3节分别对SDN数据层和控制层的关键技术进行详细阐述.第4节论述SDN在不同场景下的应用.第5节针对未来工作提出见解.最后给出本文结论.

1 SDN体系结构

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

1.1 SDN诞生发展的背景

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

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

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

1.2 体系结构概述

针对不同的需求,许多组织提出了相应的SDN参考架构.SDN架构[19]最先由ONF组织提出,并已经成为学术界和产业界普遍认可的架构.除此之外,欧洲电信标准化组织(European Telecommunications Standards Institute,简称ETSI)提出的NFV架构[20]随之发展起来,该体系结构主要针对运营商网络,并得到了业界的支持.由各大设备厂商和软件公司共同提出了OpenDaylight[21],目的是为了具体实现SDN架构,以便用于实际部署.

ONF组织最初在白皮书中提到SDN体系结构[19],并于2013年底发布最新版本[22],其架构如图1所示.SDN 由下到上(或称由南向北)分为数据平面、控制平面和应用平面.数据平面与控制平面之间利用SDN控制数据平面接口(control-data-plane interface,简称CDPI)进行通信,CDPI具有统一的通信标准,目前主要采用OpenFlow协

64 Journal of Software软件学报V ol.26, No.1, January 2015

议[4].控制平面与应用平面之间由SDN北向接口(northbound interface,简称NBI)负责通信,NBI允许用户按实际需求定制开发.

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

Fig.1 SDN architecture

图1 SDN体系结构

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

OpenDaylight[21]的目标是通过SDN的开源开发,推进业界可部署方案具体实施,其架构由设备厂商提出并得到众多IT软件厂商的支持.考虑到兼容性问题,OpenDaylight继承了SDN架构形式,同时又结合了NFV的特

张朝昆等:软件定义网络(SDN)研究进展65

点.架构共分为3个层次,分别是网络应用与业务流程(即应用层)、控制平台(即控制层)和物理与虚拟网络设备(即数据层).OpenDaylight的控制平台直接由自带的Java虚拟机实现.针对不同的网络任务,控制器自身携带了一系列可插入模块,并兼容第三方模块以增强SDN的功能.与ONF的SDN架构最大的不同在于:OpenDaylight 控制器的南向接口除了支持OpenFlow协议之外,还支持NETCONF[23]等配置协议和BGP[24]等路由协议,并支持生产厂商的专有协议(如思科的OnePK协议[25]).为了能够处理不同的标准协议,OpenDaylight增加了服务抽象层SAL,它负责将不同的底层协议标准转换成OpenDaylight控制层所理解的请求服务,保持了底层协议的透明性,并提高了整体架构的可扩展性.

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

Table 1Comparison of SDN, NFV and OpenDaylight

表1SDN,NFV和OpenDaylight的对比

体系结构接口标准与SDN兼容性

相关背景介绍

特点应用领域发起人组织者

ONF SDN[22]OpenFlow - 校园网,企业网,

数据中心

高校科研人员ONF

强调控制与

数据分离等

NFV[20]多种接口协议,

支持可扩展

可协同

工作

运营商网络运营商

ETSI NFV

工作组

强调网络

功能虚拟化

OpenDaylight[21]多种接口协议,

支持可扩展

完全支持

OpenFlow

未来的互联网

设备生产厂商和

IT软件厂商

OpenDaylight

(Linux基金)

强调软件

开源及实现

1.3 开放式接口与协议设计

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

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

许多组织着手制订南向标准接口.ONF提出的CDPI成为了主流南向接口,它采用OpenFlow[4]协议. OpenFlow是SDN中第一个广泛使用的数据控制层接口协议,得到学术界普遍关注[27-29],它将单一集成和封闭的网络设备成为灵活可控的通信设备.OpenFlow协议是基于流的概念来匹配规则的,因此,交换机需要维护一个流表(flow table)来支持OpenFlow,并按流表进行数据转发,而流表的建立、维护及下发均由控制器来完成.

为了便于设备生产厂商开发支持OpenFlow的设备,ONF开始提供OpenFlow协议标准[30].OpenFlow 1.0.0规定流表头为12元组(如源/目的IP地址、源/目的MAC地址等),在一定程度上满足了用户对SDN网络的需求.然而,1.0.0版本还不完善,如支持的规则和动作过少、仅支持单表、无关联动作的组合容易造成组合爆炸等问题.因此,OpenFlow 1.1.0增加了部分规则,并开始支持多级流表、群组表和动作集等功能.IPv6是下一代互联网的核心元素,因此从1.2版本开始,OpenFlow增加了对IPv6源/目的地址的支持.网络拥塞一直是传统互联网需要面临的问题之一,在SDN网络中也是如此,因此,从1.3版本开始支持流控机制.在1.4.0版本中,OpenFlow

66 Journal of Software软件学报V ol.26, No.1, January 2015

协议增加了流表删除和复制机制,并考虑了流表一致性问题.总的来说,OpenFlow支持的功能越来越全,机制也在不断地更新完善.然而,随着OpenFlow支持的功能不断增加,流表将容易产生负载过重的问题.如何支持不同粒度、任意组合的功能,是OpenFlow下一步发展的关键所在.此外,OpenFlow允许控制器利用流表指定网络的数据通路,但并未指定如何配置和管理转发设备环境,因此,ONF提出了OF-CONFIG协议[31].作为配置协议, OF-CONFIG扩展了NETCONF标准[23],采用XML配置交换机环境,填补了OpenFlow在配置方面的缺失.

针对南向接口,除了ONF提出的OpenFlow协议和OF-CONFIG协议外,IETF提出了ForCES协议[16],思科公司提出了OnePK协议[25].ForCES对网络设备内部结构重新定义,将转发元素(forwarding element,简称FE)和控制元素(control element,简称CE)分离,形成两个独立的逻辑实体,两个逻辑实体之间依靠ForCES协议通信.该协议工作在主从模式下,即,CE通过ForCES协议主动将指令下发给FE,FE被动接受这些指令,并通过硬件执行每数据包级的分组转发.OnePK则是思科公司针对SDN产品专门开发的接口协议,该协议可以运行在思科所研发的专属平台上,并支持开发者用C或Java编写的程序.OnePK除了支持专有的OnePK协议之外,还可支持OpenFlow协议等.典型的南向接口协议对比见表2.

Table 2Comparison of general south interface protocols

表2典型的南向接口协议的对比

南向接口协议类型粒度通信方式与OpenFlow

兼容

是否改变

传统网络架构

组织特点

OpenFlow[30]流表每流双向通信- 是ONF

根据流表指定的数据通路传输数据

OF-CONFIG[31]XML 无关双向通信是是ONF 配置交换机环境

ForCES[16]传统报文每分组主从通信否否IETF 通过传统IP网络传输数据

OnePK[25]未提及每流双向通信是是Cisco 专用接口

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

2 数据层关键技术研究

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

2.1 交换机设计问题

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

张朝昆等:软件定义网络(SDN)研究进展67

灵活性,成为目前研究的热点问题.

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

逻辑阶段1逻辑阶段N

Fig.2 RMT model

图2 RMT模型

作为另一种利用硬件灵活处理技术,FlowAdapter[33]采用交换机分层的方式来实现高效、灵活的多表流水线业务.FlowAdapter交换机分为3层:最上层是可以通过更新来支持任何新协议的软件数据平面,底层是相对固定但转发效率高的硬件数据平面,位于中部的FlowAdapter层负责软件数据平面和硬件数据平面之间的通信.当控制器下发规则时,软件数据平面将存储这些规则,形成M个阶段的流表.由于这些规则相对灵活,不能全部由交换机直接转化成相应转发动作,而硬件数据平面可以实现规则的高速匹配转发.因此可利用中间层FlowAdapter将两个数据平面中的规则进行无缝转换,即,将相对灵活的M阶段的流表转换成能够被硬件所识别的N阶段的流表.为了达到转换目的,FlowAdapter首先检查软件数据平面的全部规则,然后根据完整的规则将M阶段的流表转换成1阶段流表,最后再将1阶段流表转换成N阶段流表发送给硬件数据平面.通过这种无缝转换,理论上解决了传统交换机硬件与控制器之间多表流水线技术不兼容的问题.另外,FlowAdapter相对控制器完全透明,对FlowAdapter交换机的更新不会影响控制器的正常运行.

与利用硬件设计交换机的观点不同,虽然软件处理的速度低于硬件,但是软件方式可以最大限度地提升规则处理的灵活性,同时又能避免由于硬件自身内存较小、流表大小受限[34]、无法有效处理突发流等问题,因而同样受到学术界的关注.利用交换机CPU[35]处理转发规则,可以避免硬件灵活性差的问题.由于CPU处理数据包的能力变得越来越强[36],商用交换机很自然地也会采用这种更强的CPU.这样,在软件处理转发速度与硬件差别变小的同时,灵活处理转发规则的能力得到提升.进一步地,还可以采用NP的处理方式[37].由于NP专门用来处理网络的各种任务,如数据包转发、路由查找和协议分析等,因此在网络处理方面,NP比CPU具有更高效的处理能力.无论采用CPU还是NP,应发挥处理方式灵活性的优势,同时尽量避免处理效率低而带来的影响.

此外,在数据平面中,哪些元素可以交给硬件处理,哪些元素可以交给软件处理,也是值得考虑的问题.例如,原本设计到硬件中的计数器功能并不合理[38],而应当放置到CPU中处理,这样既可以保证计数器的灵活性,又能节省硬件空间,降低复杂度,同时还能够避免硬件计数的限制.

68 Journal of Software软件学报V ol.26, No.1, January 2015

2.2 转发规则相关研究

与传统网络类似,SDN中也会出现网络节点失效的问题,导致网络中的转发规则被迫改变,严重影响了网络的可靠性.此外,流量负载转移或网络维护等也会带来转发规则的变化.SDN允许管理人员自主更新相关规则,但采用较低抽象层次(low-level)的管理方式来更新规则容易出现失误[39],导致出现规则更新不一致的现象.即便没有出现失误,由于存在更新延迟问题,在更新过程中,转发路径上有些交换机已经拥有新规则,而另一些交换机还使用旧规则,仍然会造成规则更新不一致性的问题.

将配置细节进行抽象,使管理人员能够使用较高抽象层次(high-level)的管理方式统一更新,就可防止低层管理引起的不一致性问题.一般采用两阶段提交方式来更新规则[40]:第1阶段,当某个规则需要更新时,控制器询问每个交换机是否处理完对应旧规则的流,并对处理完毕的所有交换机进行规则更新;第2阶段,当所有交换机都更新完毕时,才完成更新,否则将取消该更新操作.为了能够使用两阶段提交方式更新规则,在预处理阶段,对数据包打上标签以标示新旧策略的版本号.在转发过程中,交换机将检查标签的版本,并按照对应版本的规则执行相应的转发动作.当数据包从出口交换机转发出去时,则去掉标签.然而,这种方式需要等待旧规则的数据包全部处理完毕才能处理新规则的数据包,这样会造成规则空间被占用进而产生较高的成本.增量式一致性更新算法[41]可以解决规则空间成本较高的问题,该算法将规则更新分成多轮进行,每一轮都采用二阶段提交方式更新一个子集,这样可以节省规则空间,达到更新时间与规则空间的折中.McGeer提出了基于OpenFlow的安全更新协议[42]来完善抽象层两阶段提交方式的安全性,该协议将无法识别新旧规则的报文发送至控制器,来保证流转发的正确性.此外,规则更新过程需要考虑性能问题.Ghorbani等人[43]研究了虚拟机场景下规则更新算法,该算法可以确保在更新过程中拥有足够的带宽,同时不会影响到其他流的正常转发.

由于OpenFlow无法主动增加未知协议,为保证新协议能在SDN中使用,OpenFlow只能将该协议更新到接口的规格说明书当中,并未真正做到协议无关.因此,如何做到协议无关转发,成为数据平面可扩展的重要研究方向之一.在数据平面建立与协议无关的流指令集(flow instruction set,简称FIS),可以做到协议无关的转发[44].协议无关的FIS抽象了数据平面,每个协议相关的规则会转化成FIS中协议无关的指令,并被数据平面硬件所识别,从而实现快速转发.协议无关的FIS使规则与转发设备无关,提高了数据平面的可扩展性,真正实现了控制平面与数据平面的全面分离.

3 控制层关键技术研究

控制器是控制层的核心组件,通过控制器,用户可以逻辑上集中控制交换机,实现数据的快速转发,便捷安全地管理网络,提升网络的整体性能.本节首先详细阐述了以NOX控制器[12]为基础的两种技术改进方法:一种是采用多线程的控制模式,另一种是通过增加分布式控制器数量,实现扁平式和层次式控制模式.然后介绍了主流接口语言的研究发展,实现控制语言抽象.最后,深入分析了控制器的一致性、可用性和容错性等特性.

3.1 控制器设计问题

控制器的基本功能是为科研人员提供可用的编程平台.最早且广泛使用的控制器平台是NOX[12],能够提供一系列基本接口.用户通过NOX可以对全局网络信息进行获取、控制与管理,并利用这些接口编写定制的网络应用.随着SDN网络规模的扩展,单一结构集中控制的控制器(如NOX)处理能力受到限制,扩展困难,遇到了性能瓶颈,因此仅能用于小型企业网或科研人员进行仿真等.网络中可采用两种方式扩展单一集中式控制器:一种是通过提高自身控制器处理能力的方式,另一种是采用多控制器的方式来提升整体控制器的处理能力.

控制器拥有全网信息,能够处理全网海量数据,因此需要具有较高的处理能力.NOX-MT[45]提升了NOX的性能,它是具有多线程处理功能的NOX控制器.NOX-MT并未改变NOX控制器的基本结构,而是利用传统的并行技术提升性能,使NOX用户可以快速更新至NOX-MT,且不会由于控制器平台的更替产生不一致性问题[46].另一种并行控制器为Maestro[47],它通过良好的并行处理架构,充分发挥了高性能服务器的多核并行处理能力,使其在网络规模较大情况下的性能明显优于NOX.

张朝昆等:软件定义网络(SDN)研究进展69

对于众多中等规模的网络来说,一般使用一个控制器即可完成相应的控制功能,不会对性能产生明显影响[48].然而对于大规模网络来说,仅依靠多线程处理方式将无法保证性能.一个较大规模的网络可分为若干个域,如图3所示.若保持单一控制器集中控制的方式来处理交换机请求,则该控制器将与其他域的交换机之间存在较大延迟,影响网络处理性能,这一影响将随着网络规模的进一步扩大变得无法忍受.此外,单一集中控制存在单点失效问题.通过扩展控制器的数量可以解决上述问题,也就是将控制器物理分布在整个网络中,仅需保持逻辑中心控制特性即可[49].这样可使每个交换机都与较近的控制器进行交互,从而提升网络的整体性能.

Fig.3 Single controller in SDN

图3 SDN中的单一控制器

分布式控制器一般可采用两类方式进行扩展[26],分别是扁平控制方式(如图4所示)和层次控制方式(如图5所示).对于扁平控制方式,所有控制器被放置在不相交的区域里,分别管理各自的网络.各控制器间的地位相等,并通过东西向接口进行通信.对于层次控制方式,控制器之间具有垂直管理的功能.也就是说,局部控制器负责各自的网络,全局控制器负责局部控制器,控制器之间的交互可通过全局控制器来完成.

Fig.4 Flat controllers in SDN Fig.5 Hierarchical controllers in SDN

图4 SDN中的扁平控制器图5 SDN中的层次控制器

扁平控制方式要求所有控制器都处于同一层次.虽然物理上各个控制器位于不同的区域,但逻辑上所有的控制器均作为全局控制器,掌握全网状态.当网络拓扑变化时,所有控制器将同步进行更新,而交换机仅需调整与控制器的地址映射即可,无需进行复杂的更新操作,因此,扁平分布式扩展对数据层的影响较小.Onix[50]作为首个SDN分布式控制器,支持扁平分布式控制器架构.它通过网络信息库(network information base,简称NIB)进行管理.每个控制器都有对应的NIB,通过保持NIB的一致性,实现控制器之间的同步更新.HyperFlow[51]允许网络运营商部署任意多个控制器,并将这些控制器分布在网络的各个角落.控制器之间保持着物理分离而逻辑集中的特点,因此仍然保持SDN集中控制的特点.HyperFlow通过注册和广播机制进行通信,并在某控制器失效时,通过手动配置的方式将失效控制器管理的交换机重新配置到新控制器上,保证了可用性.在扁平控制方式中,虽然每个控制器掌握全网状态,但只控制局部网络,造成了一定资源的浪费,增加了网络更新时控制器的整体负载.此外,在实际部署中,不同的域可能属于拥有不同经济实体的运营商,无法做到控制器在不同域之间的平等通信.

层次控制方式按照用途将控制器进行了分类.局部控制器相对靠近交换机,它负责本区域内包含的节点,仅掌握本区域的网络状态.例如,与临近交换机进行常规交互和下发高命中规则等.全局控制器负责全网信息的维

70 Journal of Software软件学报V ol.26, No.1, January 2015

护,可以完成需要全网信息的路由等操作.层次控制器交互存在两种方式:一种是局部控制器与全局控制器之间的交互,另一种是全局控制器之间的交互.对于不同运营商所属的域来说,仅需协商好全局控制器之间的信息交互方式即可.Kandoo[52]实现了层次分布式结构.当交换机转发报文时,首先询问较近的局部控制器.若该报文属于局部信息,局部控制器迅速做出回应.若局部控制器无法处理该报文,它将询问全局控制器,并将获取的信息下发给交换机.该方式避免了全局控制器的频繁交互,有效降低了流量负载.由于这种方式取决于局部控制器所处理信息的命中率,因此在局部应用较多的场景中具有较高的执行效率.

SDN网络操作系统应当具有实时运行所开发应用的能力,即,能够达到开发与执行的平衡.NOX采用Python或C++,使用Python时开发效率较高,执行效率较低;而使用C++时执行效率很高,开发效率却很低.于是,科研人员致力于开发通用的平台,尽可能地在开发与执行之间达到一个较好的平衡.Beacon[53]是一个基于Java 的通用平台,它向用户提供了一系列相关的库与接口用于开发,并提供运行时模块化的功能,使其在保证性能的情况下具有了实时运行的能力,实现了开发与执行两者之间的平衡.操作系统将资源形成文件系统,文件具有层次结构,方便操作系统随时读取与调用.控制器所管理的资源也具有类似特征,能够使得用户和应用通过标准的文件I/O进行交互.yanc[54]控制器即采用了文件系统的方式处理资源,它把网络应用视为不同的进程,每个进程被分隔成不同的视图或分片(slice).在yanc中,无论物理交换机还是数据流参数都将形成文件,不同的应用则根据自身的需求调用不同的文件.此外,SDN控制器平台已经存在大量实际开发,包括Floodlight[55],POX[56]和Ryu[57]等.典型控制器的对比情况见表3.

Table 3Comparison of general controller platforms

表3典型控制器平台对比

控制器线程分布实现语言开发团队

NOX单否C++/Python Nicira

NOX-MT[45]多否C++/Python Toronto

Maestro[47]多否Java Rice

Onix[50]单是C++/Python/Java Nicira

HyperFlow[51]单是C++ Toronto

Kandoo[52]单是C, C++ & Python Toronto

Beacon[53]多是Java Stanford

Floodlight[55]多是Java Big Switch

POX[56]多否Python Nicira

Ryu[57]多是Python NTT

3.2 接口语言

控制器提供了北向接口,方便用户配置网络.然而,当今的网络存在各式各样的应用,如流量监控、负载均衡、接入控制和路由等.传统的控制器平台(例如NOX[12])仅能提供低级配置接口,且使用像C++这种通用语言,抽象程度较低,造成网络配置成本并未大幅度降低.针对这种情况,科研人员致力于开发一种抽象的、高级配置语言.这些抽象语言能够统一北向接口,改善接口的性能,从而全面降低网络的配置成本.

耶鲁大学团队开发了一系列网络配置语言,旨在搭建具有优化性能的通用北向接口.Nettle[58]是描述性语言,采用了函数响应式编程(functional reactive programming,简称FRP)方式.FRP是基于事件响应的编程,符合控制器应对各种应用的实际响应情况.Nettle的目标是实现网络配置的可编程化,而可编程化的网络配置要求控制器性能足够高,因此,该团队又提出了McNettle[59],一种多核Nettle语言.McNettle并未改变描述性与FRP的特性,而是利用共享内存、多核处理的方式增强了用户开发体验.Procera[60]则进一步对语言抽象作了优化,采用高级的网络策略来应对各种应用.为了使控制器更好地发挥接口语言的性能,该团队提出了Maple[61],如图6所示.Maple对接口语言作了进一步抽象,允许用户使用自定义抽象策略.为了能够高效地将抽象策略分解成一系列规则,并下发到相应的分布式交换机上,Maple不但采用了高效的多核调度器,最关键的是,它采用了跟踪运行时优化器(tracing runtime optimizer)来优化性能.该优化器一方面通过记录可重用的策略,将负载尽可能地转移到交换机来处理.另一方面,通过动态跟踪抽象策略与数据内容及环境的依赖性,使流表始终处于最新状态,从

张朝昆等:软件定义网络(SDN)研究进展71 而确保抽象策略转成可用规则的效率.

Fig.6 Maple system components

图6 Maple系统组件

康奈尔大学与普林斯顿大学联合研究团队首先提出了Frenetic[62],与Nettle等语言类似,它也具有描述性和FRP特性.两者主要有3点不同:一是抽象层次,由于Frenetic是建立在NOX之上的语言,因此比Nettle抽象层次要高;二是Frenetic有查询语言和实时系统,这是Nettle所不具备的;三是Frenetic基于数据包,而Nettle基于事件流.NetCore[63]增强了Frenetic的能力,包括增加通配符匹配处理模式、主动生成规则和通用的语法结构等.由于Frenetic和NetCore都采用模块并行组装方式,这要求每个模块(即服务,如接入控制等)都各自生成所需包的备份,造成一定的资源浪费.Pyretic[64]则采用了模块顺序组装方式,使得每个应用可以顺序处理,也有效地避免了潜在应用冲突发生的可能.为了增强这类接口语言的理论基础,2014年初,该团队提出利用Kleene代数理论作为检测的NetKAT[65]语言,它改进了NetCore语言特性,可以利用数学理论验证配置的正确性,避免了网络配置潜在的问题.上述各类语言的对比情况见表4.

Table 4Comparison of interface languages

表4接口语言的对比

接口语言描述性语言FRP 实现语言抽象层次特点

NOX[12]否否C++/Python 低仅提供IP地址操作等低配置接口语言

Nettle[58]是是Haskell 较高较早采用描述性语言和FRP的抽象语言之一,基于事件流McNettle[59]是是Haskell 较高多核Nettle

Procera[60]是是FML[66]高与Frenetic采用包操作不同,采用事件流

Frenetic[62]是是Python 高比Nettle语言更抽象,有查询语言,实时系统,基于数据包NetCore[63]是否Haskell 高改进Frenetic,采用通配符匹配,主动生成规则等功能

Pyretic[64]是否Python 高采用顺序组合模式扩展了Frenetic和NetCore

NetKAT[65]是否任意高增加Kleene代数理论

3.3 控制层特性研究

控制层存在一致性、可用性和容错性等特性,而所提到的这3种特性的需求无法同时满足[67],达到三者之间的平衡,是今后的重要工作之一.多数情况下,科研人员是在一部分特性影响较小的前提下重点提升另一部分特性.因此,科研人员在对控制层特性研究中各有侧重.下面对控制层的一致性、可用性和容错性分别进行讨论.

1. 一致性

集中控制是SDN区别于其他网络架构的核心优势之一,通过集中控制,用户可以获取全局网络视图,并根据全网信息对网络进行统一设计与部署,理论上保证了网络配置的一致性问题.然而,分布式控制器仍然具有潜在的不一致性问题.由于不同控制器的设计对网络一致性要求有所不同,严格保证分布式状态全局统一的控制器,将无法保证网络性能;反之,如果控制器能够快速响应请求,下发策略,则无法保证全局状态一致性.性能无明显影响的情况下,保证状态一致性成为了SDN设计中的关键问题[49].

并发策略同样会导致一致性问题,可由控制层将策略形成规则,并按两阶段提交方式[40]解决.为了避免数据

72 Journal of Software软件学报V ol.26, No.1, January 2015

层过多的参与,控制层可直接通过并发策略组合的方式来解决[68],并可利用细粒度锁(fine-grained locking)确保组合策略无冲突发生.HFT[69]采用了层次策略方案,它将并发策略分解,组织成树的形式,树的每个节点都可独立形成转发规则.HFT首先对每个节点进行自定义冲突处理操作,这样,整个冲突处理过程就转化成利用自定义冲突处理规则逆向搜索树的过程,从而解决了并发策略一致性问题.

2. 可用性

规则备份可以提升网络的可用性.RuleBricks[70]针对规则备份提出一种高可用性方案.在RuleBricks中,不同的规则对应不同颜色的“砖块”,“砖块”的大小由通配符的地址空间大小决定,其中,最上层的“砖块”对应的规则是目前的活跃规则.如果因为网络节点失效导致某种颜色的“砖块”消失,则下面的备份“砖块”会显现出来成为新的活跃规则.通过对“砖块”的设定、选取和操作的优化,RuleBricks可以有效限制流的重分配和规则爆炸的问题.

控制器作为SDN的核心处理节点,需要处理来自交换机的大量请求,而过重的负载会影响SDN的可用性.利用分布式控制器可以平衡负载,提升SDN的整体性能.特别地,对于层次控制器(如Kandoo[52])来说,利用局部控制器承担交换机的多数请求,全局控制器则可以更好地为用户提供服务.然而,分布式控制器架构亦存在可用性问题.由于每个控制器需要处理不同的交换机,网络流量分布不均匀,导致某些控制器可用性降低.针对该问题,ElastiCon[71]采用负载窗口的方式来动态调整各控制器间的流量.ElastiCon周期性地检查负载窗口,当负载窗口的总负荷发生改变时,将动态扩充或压缩控制器池,以适应当前实际需求.如果负载超过控制器池最大值时,则需要另外增加新的控制器,以保证网络的可用性.

减少交换机的请求次数,可以提升控制层的可用性.DIFANE[72]架构旨在解决数据平面转发规则粒度过细和对集中控制依赖的问题.在DIFNAE中,对于SDN传统的流处理都交给了数据层,如交换机不再将每流的第1个数据包传到控制器等.控制器的任务仅是划分规则,并将规则主动下发到数据层面.因此,DIFANE可适应大规模的网络拓扑结构和处理更多的转发规则.DevoFlow[73]则按粒度将数据流分成长短流,并在转发器上建立一些特定规则,使数据层能够直接处理短流,仅有少量的长流才交由控制层处理.根据Zipf定律[74],长流数量远少于短流数量.因此,DevoFlow采用的策略可以最大程度地降低控制器负载,提升控制器的可用性.

3. 容错性

与传统的互联网类似,SDN同样面临着网络节点或链路失效的问题.然而,SDN控制器可以通过全网信息快速恢复失效节点,具有较强的容错能力.网络节点恢复收敛过程如图7所示:①当某台交换机失效时,其他交换机察觉出变化;②交换机将变化情况通知控制器;③控制器根据所掌握的信息,计算出需要恢复的规则;④将

.

更新发送给数据平面中受到影响的网络元素;⑤数据平面中受影响的元素分别更新流表信息

Fig.7 Convergence on a node or link failure

图7 失效节点或链路的收敛

张朝昆等:软件定义网络(SDN)研究进展73

从链路恢复过程可以看出:在SDN架构中,失效信息一般不是通过洪泛方式通知全网,而是直接发送给控制层,并由控制器来做恢复决策,因而不易出现路由振荡的现象.如果是交换机和控制器之间的链接失效,导致无法通信,则收敛过程相对困难.可以采用传统网络的IGP(如OSPF协议)通信,并通过洪泛方式恢复,也可以采用故障转移(failover)[50]方式,同样能够缓解链路失效收敛时间问题.通过在交换机上安装用于验证拓扑连接性的静态转发规则,可以更好地实现网络故障的快速收敛[75].

为了避免由于手动配置导致节点失效,控制层提供了一种高级网络容错语言FatTire[76].用户可以通过FatFire语言指定网络当前的容错度,并根据网络状况自主指定流路径.FatTire语言编译器具有网内快速恢复机制,可以将用户错误的网络配置迅速恢复回来,提升了控制层的容错性.

4 SDN应用研究

随着SDN的快速发展,SDN已应用到各个网络场景中,从小型的企业网和校园网扩展到数据中心与广域网,从有线网扩展到无线网.无论应用在任何场景中,大多数应用都采用了SDN控制层与数据层分离的方式获取全局视图来管理自己的网络.

4.1 企业网与校园网

在企业网或校园网的部署应用多见于早期的SDN研究中[4,12,77,78],为SDN研究发展提供了可参考的依据.在之后的实际部署中,由于不同企业或校园对SDN的需求存在差异性,无法根据自身的特点进行部署.针对该问题,研究人员完善了SDN的功能,支持对企业网和校园网的个性管理.精灵架构[79]允许企业网根据各自需求自主增加新功能,该架构采用外包的形式进行,并且支持企业网增加终端主机、部署中间件、增加交换机和路由器等.Kim等人[80]进一步研究了利用SDN改善网络管理,更好地支持校园网的部署.网络部署一致性问题同样引起了关注,用户通过SDN管理网络时仍然会出现网络转发拓扑循环和无效配置等问题.OF.CPP[81]则利用ACID(数据库事务正确执行的四要素)思想较好地修复了这些问题,有利于企业网络统一部署.

第二代中国教育和科研计算机网(China Education and Research Network II,简称CERNET2)采用4over6技术将百所院校连接在一起,提供了IPv4应用和IPv6应用接入和互通互访等服务.4over6[82]描述了IPv4网络向IPv6网络过渡的技术,如图8所示,它借鉴了SDN网络虚拟化的思想,将IPv4网络和IPv6网络从数据层分离出来.由于IPv4和IPv6传输数据的基本原理相同,因此数据层能够对IPv4和IPv6两者都提供传输服务,实现转发抽象.同时,还可分别为IPv4服务提供商和IPv6服务提供商提供更方便的管理机制,便于IPv4网络向IPv6网络的迁移,满足所有IPv6网络过渡的需求.

Fig.8 4over6 virtualization architecture

图8 4over6虚拟化体系结构

74 Journal of Software软件学报V ol.26, No.1, January 2015

4.2 数据中心与云

除了在企业网与校园网部署之外,数据中心由于设备繁杂且高度集中等特点,相关SDN部署同样面临着严峻的挑战.早期部署在数据中心的实例为基于NOX的SDN网络[83],随后,在数据中心的部署应用得到极大的发展[69,84-88].其中,性能和节能是部署过程中重点考虑的两个方面.

数据中心成千上万的机器会需要很高的带宽,如何合理利用带宽、节省资源、提高性能,是数据中心的另一个重要问题.Cui等人[84]通过对每台路由器和服务器进行信息缓存,利用SDN掌握全网缓存信息,能够有效解决数据中心的数据传输冗余问题.在数据中心,每个路由器和服务器都可以进行信息缓存.当两台服务器第1次通信时,所在路径的路由器将信息缓存下来.当服务器再次发起相关通信时,为了获取最近距离的缓存,SDN根据全网信息给出最优缓存任务分配.此时,服务器无需到目的地址去获取信息,从而消除了数据传输冗余. Hedera[85]采用了OpenFlow交换机,通过中央控制器掌握数据中心的全局信息,方便控制器优化带宽,比等价多路径(equal-cost multipath routing,简称ECMP)技术可提升至4倍的带宽能力.DevoFlow[73]考虑避免数据中心交换机对控制器过多的干扰,将大多数流处理放到交换机上处理,从而提高了数据中心传输的整体性能. zUpdate[86]则利用SDN确保在数据中心几乎无任何性能影响的情况下更新设备.

节能一直是数据中心研究中不容忽视的问题.由于数据中心具有大规模互联网服务稳定性和高效性等特性,常以浪费能源为代价.然而通过关闭暂时没有流量的端口,仅能节省少量能耗,最有效的办法是通过SDN掌握全局信息能力,实时关闭暂未使用的设备,当有需要时再打开,将会节省约一半的能耗[87].利用率低同样会导致数据中心能耗较高.在数据中心,每个流在每个时间片通过独占路由的方式,可提高路由链路的利用率[88].利用SDN掌握全网信息,公平调度每个流,使路由链路得到充分利用,进而节省了数据中心的能量.

有了数据中心作保障,用户可以通过云网络方便进行网络管理.不过,基于云环境的网络拓扑是多变的,而通过SDN可以获取全局信息,实现云网络管理[89].IBM[90]针对云网络管理提出了云控制器和网络控制器结合的SDN架构.云控制器用来方便用户配置信息,管理物理资源,设置虚拟机和分配存储空间等.网络控制器则用来将云控制器收集的指令转换成SDN设备可识别的指令.为了能够完成两个控制器之间的交互,IBM提供了一种共享图算法库NetGraph.该库支持多种网络服务,包括广播、路由计算、监控、服务质量及安全隔离等.此外,SDN 可以有效改善云性能,保证流量负载均衡[91,92].

4.3 广域网

广域网连接着众多数据中心,这些数据中心之间的高效连接与传输等流量工程问题,是众多大型互联网公司努力的目标[93].为了能够提供可靠的服务,应确保当任意链路或路由出现问题时仍能使网络高效运转.

传统的广域网以牺牲链路利用率为代价,使得广域网的平均利用率仅为30%~40%[94],繁忙时的链路利用率也仅为40%~60%[95].

为了提高利用率,Google公司搭建了基于SDN架构的B4系统[94].该系统利用SDN获取全局信息,并采用ECMP哈希技术来保证流量平衡,实现对每个私人应用的平等对待,确保每位用户的应用不会受到其他用户应用的影响.通过近些年实际的运行测试结果表明:该系统最高可达到几乎100%的资源使用率,长期使用率稳定在平均70%的水平上.此外,由于B4系统采用的是Google公司专用设备,保证提升利用率的效果达到最佳.

与B4系统基本原理类似,微软公司的SWAN系统[95]同样利用SDN体系结构实现数据中心间高效的利用率.它实现的手段是:当通过SDN全网信息观测到某条链路需求较低时,SWAN控制数据层的数据通路迅速切换至该链路来传输数据,从而保持所有链路长时间的高效利用率.SDN技术保障了SWAN能够进行全局观测以及流量工程的合理运用,确保资源利用率长期处于60%以上.相对于B4系统,SWAN系统采用的是传统设备,便于设备的更新与维护,更利于该系统的普及.

4.4 无线网络

SDN技术研究初期就开始部署在无线网络之中,目前已广泛应用在无线网络的各个方面.OpenRoads[96]利用OpenFlow和NOX在校园网搭建了无线SDN平台,该平台分别在WiFi热点和WiMAX基站增加OpenFlow

张朝昆等:软件定义网络(SDN)研究进展75

设备,并使用NOX控制器与OpenFlow设备进行无线通信.Odin[97]则利用SDN技术在企业网上搭建无线局域网(wireless local area network,简称WLAN),将企业WLAN服务作为网络应用来处理,确保网络的可管可控特性. SDN同样可以简化设计和管理LTE网络.Li等人[98]采用转发设备上建立代理的方式来缓解控制器负载、降低响应时延等,从而方便用户使用LTE网络.OpenRadio[99]讨论了可编程的无线数据平面问题,它将无线网络分成处理平面(即数据层)和决策平面(即控制层),并设计了可编程的无线接口.通过OpenRadio,运营商仅需编写相应的数据转发规则,降低了对无线网络配置的复杂度.无线接入网(wireless access network,简称RAN)一般采用分布式算法来管理频谱(如2.4G和5G)和切入任务,设备规模比较大时,这样的工作变得十分复杂.SoftRAN[100]可利用SDN的全局信息快速、准确地协调基站RAN所管理的无线接入设备,合理分配频谱资源,降低传输能耗.

5 未来工作

SDN目前已经得到各方面的关注,不仅在学术界对SDN关键技术进行了深入研究,而且在产业界已经开始了大规模应用.SDN技术的出现带来了诸多机遇,同时也面临着更多的挑战.

(1) SDN可扩展性研究

可扩展性决定着SDN的进一步发展[101].OpenFlow协议成为SDN普遍使用的南向接口规范,然而OpenFlow协议并不成熟,版本仍在不断更新中[15].由于OpenFlow对于新应用支持力度不足,需要借助交换机的软硬件技术[32]增强支持能力,为接口抽象技术[44]和支持通用协议的相关技术[16,21,25]带来发展契机.然而,应用的差异性增加了通用北向接口设计的难度,需要考虑灵活性与性能的平衡[61].提供数学理论支持的抽象接口语言[65]成为了一种研究趋势.分布式控制器结构避免了单点失效的问题,提升了单一控制时网络的性能.然而,分布式控制器带来的同步[50,51]和热备份等相关问题还需要进一步加以探索.

(2) SDN规模部署与跨域通信

鉴于SDN的种种优势,大规模部署SDN网络势在必行.实现由传统网络向SDN网络的转换,可以通过增量部署的方式完成[102,103].大规模部署SDN,需要充分考虑网络可靠性、节点失效和流量工程等问题[94,95],以适应未来网络的发展需求.此外,大规模SDN网络还存在跨域通信问题,如果不同域属于不同的经济利益实体,SDN 将无法准确获取对方域内的全部网络信息,从而导致SDN域间路由无法达到全局最优.因此,SDN跨域通信[104]将是亟待解决的问题之一.

(3) 传统网络与SDN共存问题研究

随着SDN的持续发展,传统网络将与SDN长期共存.为了使SDN设备与传统网络设备兼容,节约成本,大多数设备生产厂商选择在传统设备中嵌入SDN相关协议,这样造成传统网络设备更加臃肿.采用协议抽象技术[21]可确保各种协议安全、稳定地运行在统一模块中,从而可减轻设备负担,成为兼容性研究进展的趋势之一.

中间件(MiddleBox)在传统网络中扮演着重要角色,例如网络地址转换(network address translation,简称NAT)可以缓解IPv4地址危机问题、防火墙可以保证安全问题等.然而中间件种类繁多,且许多设备都被中间件屏蔽,无法灵活配置,造成SDN与传统网络无法兼容.建立标签机制,统一管理中间件,将逻辑中间件路由策略自动转换成所需的转发规则,以实现对存在中间件网络的高效管理[105-108].

(4) SDN在数据中心的应用研究

SDN具有集中式控制、全网信息获取和网络功能虚拟化等特性,利用这些特性,可以解决数据中心出现的各种问题.例如在数据中心网络中,可以利用SDN通过全局网络信息消除数据传输冗余[84],也可利用SDN网络功能虚拟化特性达到数据流可靠性与灵活性的平衡[109].可以预见,SDN在数据中心提升性能和绿色节能[88]等方面仍然扮演着十分重要的角色.

(5) 借鉴SDN思想融合IPv6过渡机制

传统互联网面临着IPv4地址耗尽的问题,解决这个问题最有效的办法是全网使用IPv6地址.然而IPv4互联网规模大、服务质量高,短时间内难以实现全网IPv6.为了实现平滑过渡,IPv6过渡技术成为当前互联网的热点[110].现存的IPv6过渡机制种类繁多,适用场景局限.利用SDN掌握全局信息的能力来融合各种过渡机制,可充

76 Journal of Software软件学报V ol.26, No.1, January 2015

分提升过渡系统的灵活性,最终实现IPv6网络的快速平稳过渡[111,112].因此,SDN将成为IPv6过渡技术中可借鉴的指导思想之一.

(6) SDN与其他新型网络架构融合

SDN与其他新型网络架构融合,可以使两种架构形成互补,推动未来网络的进一步发展.例如,主动网络[8,9]具有可编程性,虽然并未得到实际应用,但是该结构允许执行环境(即控制层)直接执行代码,具有很强的灵活性.借鉴主动网络可执行代码的思想,SDN可编程的灵活性将得到进一步增强.信息中心网络(information-centric networking,简称ICN)[113]是另一个未来的互联网发展方向,它采用了信息驱动的方式.ICN中同样存在数据转发与控制信息耦合的问题.在ICN中利用SDN技术分离控制信息,融合两种技术优势,将成为未来的网络值得探讨的问题[114,115].

(7) SDN网络安全

传统的网络设备是封闭的,然而开放式接口的引入会产生新一轮的网络攻击形式,造成SDN的脆弱性.由控制器向交换机发送蠕虫病毒[116]、通过交换机向控制器进行DDos攻击[117]、非法用户恶意占用整个SDN网络带宽[118]等,都会导致SDN全方位瘫痪.安全的认证机制[119]和框架[120]、安全策略的制定(如OpenFlow协议的传输层安全TLS[30])等,将成为SDN安全发展的重要保证.

此外,SDN的研究促进了业界的变革.SDN网络虚拟化技术缩短了网络配置周期,显著提升了新协议和新设备的部署效率.SDN开放式的研究降低了生产成本,扩充了生产规模,为中小型设备商带来了拓展市场和扩大生存空间的机遇.SDN技术变革使得各运营商和设备商的利益被再一次划分,将造就又一批业界巨头的产生.SDN 对传统网络设备市场占有率的冲击同样不容小觑,不具备SDN功能的传统路由器和交换机,其市场份额将被全面压缩,芯片厂商因此推出了具有SDN功能的芯片,在利益划分竞争中抢得先机.良好的SDN操作界面及易用的编程语言,加快了软件公司市场份额的竞争脚步.SDN还为网络公司各种应用业务提供了新的解决方案,使他们获得了拓展市场的良机.

6 结束语

SDN是当前网络领域最热门和最具发展前途的技术之一.作为新兴的技术,之所以能够得到长足发展,在于它具有传统网络无法比拟的优势:首先,数据控制解耦合使应用升级与设备更新换代相互独立,加快了新应用的快速部署;其次,网络抽象简化了网络模型,将运营商从繁杂的网络管理中解放出来,能够更加灵活地控制网络;最后,控制的逻辑中心化使用户和运营商等可以通过控制器获取全局网络信息,从而优化网络,提升网络性能.鉴于SDN巨大的发展潜力,学术界深入研究了数据层及控制层的关键技术,并将SDN成功地应用到企业网和数据中心等各个领域.然而,SDN要想成为下一代互联网主流技术还需要克服许多困难,包括SDN可扩展性、规则部署与跨域通信等关键性难题.因此,发挥SDN所具备的优势,尽量避免存在的风险,成为SDN未来发展的重要任务.只有这样,才能真正成为引领网络未来的互联网技术.

References:

[1] Cisco. Cisco Visual Networking Index: Forecast and Methodology, 2013-2018. 2013.

[2] Stanford University. Clean slate program. 2006. https://www.wendangku.net/doc/812039946.html,/

[3] McKeown N. Software-Defined metworking. In: Proc. of the INFOCOM Key Note. 2009. https://www.wendangku.net/doc/812039946.html,/

technicalProgram.htm

[4] McKeown N, Anderson T, Balakrishnan H, Parulkar G, Peterson L, Rexford J, Shenker S, Turner J. OpenFlow: Enabling

innovation in campus networks. ACM SIGCOMM CCR, 2008,38(2):69-74. [doi: 10.1145/1355734.1355746]

[5] MIT Technology Review. 10 breakthrough technologies, TR10: Software-defined networking. 2009. http://www2.technology

https://www.wendangku.net/doc/812039946.html,/article/412194/tr10-software-defined-networking/

[6] Jain R. Internet 3.0: Ten problems with current Internet architecture and solutions for the next generation. In: Proc. of the IEEE

MILCOM. 2006. 1-9. [doi: 10.1109/MILCOM.2006.301995]

张朝昆等:软件定义网络(SDN)研究进展77

[7] Nunes BAA, Mendonca M, Nguyen XN, Obraczka K, Turletti T. A survey of software-defined networking: Past, present, and future

of programmable networks. IEEE Communications Surveys and Tutorials, 2014,16(3):1617-1634. [doi: 10.1109/SURV.2014.

012214.00180]

[8] Tennenhouse DL, Wetherall DJ. Towards an active network architecture. In: Proc. of the IEEE DARPA Active Networks Conf. and

Exposition. 2002. 2-15. [doi: 10.1109/DANCE.2002.1003480]

[9] Tennenhouse DL, Smith JM, Sincoskie WD, Wetherall D, Minden GJ. A survey of active network research. IEEE Communications

Magazine, 1997,35(1):80-86. [doi: 10.1109/35.568214]

[10] Greenberg A, Hjalmtysson G, Maltz DA, Myers A, Rexford J, Xie G, Yan H, Zhan JB, Zhang H. A clean slate 4D approach to

network control and management. ACM SIGCOMM CCR, 2005,35(5):41-54. [doi: 10.1145/1096536.1096541]

[11] Yan H, Maltz DA, Ng TSE, Gogineni H, Zhang H, Cai Z. Tesseract: A 4D network control plane. In: Proc. of the USENIX NSDI.

2007. 369-382. https://https://www.wendangku.net/doc/812039946.html,/legacy/event/nsdi07/tech/full_papers/yan/yan_html/

[12] Gude N, Koponen T, Pettit J, Pfaff B, Casado M, McKeown N, Shenker S. NOX: Towards an operating system for networks. ACM

SIGCOMM CCR, 2008,38(3):105-110. [doi: 10.1145/1384609.1384625]

[13] Shenker S. The future of networking, and the past of protocols. In: Proc. of the Open Networking Summit. 2011. http://www.

https://www.wendangku.net/doc/812039946.html,/archives/apr12/site/talks/shenker-tue.pdf

[14] Open networking foundation. 2014. https://https://www.wendangku.net/doc/812039946.html,/

[15] Doria A, Salim JH, Haas R, Khosravi H, Wang W, Dong L, Gopal R, Halpern J. Forwarding and control element separation

(ForCES) protocol specification. IETF RFC 5810, 2010.

[16] Software-Defined networking research group (SDNRG). 2013. https://www.wendangku.net/doc/812039946.html,/sdnrg

[17] Software-Defined networking (SDN). 2012. http://www.itu.int/en/ITU-T/sdn/Pages/default.aspx

[18] ONS. SDN: Transforming networking to accelerate business agility. 2013. https://www.wendangku.net/doc/812039946.html,/archives/mar14/site/

why-sdn.html

[19] Open Networking Foundation. Software-Defined networking: The new norm for networks. ONF White Paper, 2012.

[20] ETSI. Network functions virtualisation. NFV White Paper, 2012.

[21] OpenDayLight. 2014. https://www.wendangku.net/doc/812039946.html,/

[22] Open Networking Foundation. SDN architecture overview, version 1.0. 2013.

[23] Enns R, Bjorklund M, Schoenwaelder J, Bierman A. Network configuration protocol (NETCONF). IETF RFC 6241, 2011.

[24] Rekhter Y, Li T, Hares S. A border gateway protocol 4 (BGP-4). IETF RFC 4271, 2006.

[25] Cisco. Cisco’s one platform kit (onePK). 2014. https://www.wendangku.net/doc/812039946.html,/en/US/prod/iosswrel/onepk.html

[26] Schmid S, Suomela J. Exploiting locality in distributed SDN control. In: Proc. of the ACM SIGCOMM Workshop on HotSDN.

2013. 121-126. [doi: 10.1145/2491185.2491198]

[27] Lara A, Kolasani A, Ramamurthy B. Network innovation using openflow: A survey. IEEE Communications Surveys and Tutorials,

2013,16(1):493-512. [doi: 10.1109/SURV.2013.081313.00105]

[28] Suzuki K, Sonoda K, Tomizawa N, Yakuwa Y, Uchida T, Higuchi Y, Tonouchi T, Shiimonishi H. A survey on OpenFlow

technologies. IEICE Trans. on Communications, 2014,97(2):375-386.

[29] Zuo QY, Chen M, Zhao GS, Xing CY, Zhang GM, Jiang PC. Research on OpenFlow-based SDN technologies. Ruan Jian Xue

Bao/Journal of Software, 2013,24(5):1078-1097 (in Chinese with English abstract). https://www.wendangku.net/doc/812039946.html,/1000-9825/4390.htm [doi: 10.3724/SP.J.1001.2013.04390]

[30] Open Networking Foundation. OpenFlow switch specification, version 1.4.0 (wire protocol 0x05). 2013.

[31] Open Networking Foundation. OF-CONFIG 1.2, OpenFlow management and configuration protocol. 2014.

[32] Bosshart P, Gibb G, Kim HS, Varghese G, McKeown N, Izzard M, Mujica F, Horowitz M. Forwarding metamorphosis: Fast

programmable match-action processing in hardware for SDN. In: Proc. of the ACM SIGCOMM. 2013. 99-110. [doi: 10.1145/ 2486001.2486011]

[33] Pan H, Guan HT, Liu JJ, Ding WF, Lin CY, Xie GG. The FlowAdapter: Enable flexible multi-table processing on legacy hardware.

In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013. 85-90. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2491209

[34] Cohen R, Lewin-Eytan L, Naor J, Raz D. On the effect of forwarding table size on SDN network utilization. In: Proc. of the IEEE

INFOCOM. 2014. 1734-1742. [doi: 10.1109/INFOCOM.2014.6848111]

78 Journal of Software软件学报V ol.26, No.1, January 2015

[35] Lu GH, Miao R, Xiong YQ, Guo CX. Using CPU as a traffic co-processing unit in commodity switches. In: Proc. of the ACM

SIGCOMM Workshop on HotSDN. 2012. 31-36. [doi: 10.1145/2342441.2342448]

[36] Dobrescu M, Egi N, Argyraki K, Chun BG, Fall K, Iannaccone G, Knies A, Manesh M, Ratnasamy S. RouteBricks: Exploiting

parallelism to scale software routers. In: Proc. of the ACM SOSP. 2009. 15-28. [doi: 10.1145/1629575.1629578]

[37] Pongrácz G, Molnár L, Kis ZL, Turáyi Z. Cheap silicon: Myth or reality? Picking the right data plane hardware for software

defined networking. In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013. 103-108. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id= 2491204

[38] Mogul JC, Congdon P. Hey, you darned counters!: Get off my ASIC!. In: Proc. of the ACM SIGCOMM Workshop on HotSDN.

2012. 25-30. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2342447

[39] Canini M, Venzano D, Peresini P, Kosti? D, Rexford J. A NICE way to test OpenFlow applications. In: Proc. of the USENIX NSDI.

2012. https://https://www.wendangku.net/doc/812039946.html,/system/files/conference/nsdi12/nsdi12-final105.pdf

[40] Reitblatt M, Foster N, Rexford J, Schlesinger C, Walker D. Abstractions for network update. In: Proc. of the ACM SIGCOMM.

2012. 323-334. [doi: 10.1145/2342356.2342427]

[41] Katta NP, Rexford J, Walker D. Incremental consistent updates. In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013.

49-54. [doi: 10.1145/2491185.2491191]

[42] McGeer R. A safe, efficient update protocol for openflow networks. In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2012.

61-66. [doi: 10.1145/2342441.2342454]

[43] Ghorbani S, Caesar M. Walk the line: Consistent network updates with bandwidth guarantees. In: Proc. of the ACM SIGCOMM

Workshop on HotSDN. 2012. 67-72. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2342455

[44] Song H. Protocol-Oblivious forwarding: Unleash the power of SDN through a future-proof forwarding plane. In: Proc. of the ACM

SIGCOMM Workshop on HotSDN. 2013. 127-132. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2491190

[45] Tootoonchian A, Gorbunov S, Ganjali Y, Casado M, Sherwood R. On controller performance in software-defined networks. In:

Proc. of the USENIX Hot-ICE. 2012. https://https://www.wendangku.net/doc/812039946.html,/system/files/conference/hot-ice12/hotice12-final33_0.pdf

[46] Vanbever L, Reich J, Benson T, Foster N, Rexford J. HotSwap: Correct and efficient controller upgrades for software-defined

networks. In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013. 133-137. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2491194

[47] Cai Z, Cox AL, Ng TSE. Maestro: A system for scalable OpenFlow control. Technical Report, TR10-08, Rice University, 2010.

[48] Heller B, Sherwood R, McKeown N. The controller placement problem. In: Proc. of the ACM SIGCOMM Workshop on HotSDN.

ACM Press, 2012. 7-12. [doi: 10.1145/2342441.2342444]

[49] Levin D, Wundsam A, Heller B. Logically centralized? State distribution trade-offs in software defined networks. In: Proc. of the

ACM SIGCOMM Workshop on HotSDN. 2012. 1-6. [doi: 10.1145/2342441.2342443]

[50] Koponen T, Casado M, Gude N, Stribing J, Poutievski L, Zhu M, Ramanathan R, Iwata Y, Inoue H, Hama T, Shenker S. Onix: A

distributed control platform for large-scale production networks. In: Proc. of the USENIX OSDI. 2010. https://www.wendangku.net/doc/812039946.html,/ events/osdi10/tech/full_papers/Koponen.pdf

[51] Tootoonchian A, Ganjali Y. HyperFlow: A distributed control plane for OpenFlow. In: Proc. of the USENIX INM Workshop on

WREN. 2010. https://https://www.wendangku.net/doc/812039946.html,/legacy/event/inmwren10/tech/full_papers/Tootoonchian.pdf

[52] Yeganeh SH, Ganjali Y. Kandoo: A framework for efficient and scalable offloading of control applications. In: Proc. of the ACM

SIGCOMM Workshop on HotSDN. 2012. 19-24. [doi: 10.1145/2342441.2342446]

[53] Erickson D. The beacon openflow controller. In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013. 13-18. http://dl.acm.

org/citation.cfm?id=2491189

[54] Monaco M, Michel O, Keller E. Applying operating system principles to SDN controller design. In: Proc. of the ACM Workshop

on HotNets. 2013. 1-7. [doi: 10.1145/2535771.2535789]

[55] Floodlight. 2014. https://www.wendangku.net/doc/812039946.html,/floodlight/

[56] POX. 2014. https://www.wendangku.net/doc/812039946.html,/pox/about-pox/

[57] Ryu. 2014. http://osrg.github.io/ryu/

[58] Voellmy A, Hudak P. Nettle: Taking the sting out of programming network routers. Springer PADL, 2011,6539:235-249. [doi: 10.

1007/978-3-642-18378-2_19]

[59] Voellmy A, Wang J. Scalable software defined network controllers. In: Proc. of the ACM SIGCOMM Demonstration. 2012.

289-290. [doi: 10.1145/2342356.2342414]

张朝昆等:软件定义网络(SDN)研究进展79

[60] Voellmy A, Kim H, Feamster N. Procera: A language for high-level reactive network control. In: Proc. of the ACM SIGCOMM

Workshop on HotSDN. 2012. 43-48. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2342451

[61] Voellmy A, Wang J, Yang YR, Ford B, Hudak P. Maple: Simplifying SDN programming using algorithmic policies. In: Proc. of

the ACM SIGCOMM. 2013. 87-98. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2486030

[62] Foster N, Harrison R, Freedman MJ, Monsanto C, Rexford J, Story A, Walker D. Frenetic: A network programming language. In:

Proc. of the ACM SIGPLAN Symp. on ICFP. 2011. 279-291. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2034812

[63] Monsanto C, Foster N, Harrison R, Walker D. A compiler and run-time system for network programming languages. In: Proc. of

the ACM SIGPLAN-SIGACT Symp. on POPL. 2012. 217-230. [doi: 10.1145/2103656.2103685]

[64] Monsanto C, Reich J, Foster N, Rexford J, Walker D. Composing software-defined networks. In: Proc. of the USENIX NSDI. 2013.

1-13. https://https://www.wendangku.net/doc/812039946.html,/system/files/conference/nsdi13/nsdi13-final232.pdf

[65] Anderson CJ, Foster N, Guha A, Jeannin JB, Kozen D, Schlesinger C, Walker D. NetKAT: Semantic foundations for networks. In:

Proc. of the ACM SIGPLAN-SIGACT Symp. on POPL. 2014. 113-126. [doi: 10.1145/2578855.2535862]

[66] Hinrichs TL, Gude NS, Casado M, Mitchell JC, Shenker S. Practical declarative network management. In: Proc. of the ACM

SIGCOMM Workshop on WREN. 2009. 1-10. [doi: 10.1145/1592681.1592683]

[67] Panda A, Scott C, Ghodsi A, Koponen T, Shenker S. CAP for networks. In: Proc. of the ACM SIGCOMM Workshop on HotSDN.

2013. 91-96. [doi: 10.1145/2491185.2491186]

[68] Canini M, Kuznetsov P, Levin D, Schmid S. Software transactional networking: Concurrent and consistent policy composition. In:

Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013. 1-6. [doi: 10.1145/2491185.2491200]

[69] Ferguson AD, Guha A, Liang C, Fonseca R, Krishnamurithi S. Hierarchical policies for software defined networks. In: Proc. of the

ACM SIGCOMM Workshop on HotSDN. 2012. 37-42. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2342450

[70] Williams D, Jamjoom H. Cementing high availability in OpenFlow with RuleBricks. In: Proc. of the ACM SIGCOMM Workshop

on HotSDN. 2013. 139-144. [doi: 10.1145/2491185.2491206]

[71] Dixit A, Hao F, Mukherjee S, Lakshman TV, Kompella R. Towards an elastic distributed sdn controller. In: Proc. of the ACM

SIGCOMM Workshop on HotSDN. 2013. 7-12. [doi: 10.1145/2534169.2491193]

[72] Yu M, Rexford J, Freedman MJ, Wang J. Scalable flow-based networking with DIFANE. In: Proc. of the ACM SIGCOMM. 2010.

351-362. [doi: 10.1145/1851182.1851224]

[73] Curtis AR, Mogul JC, Tourrilhes J, Yalagandula P, Sharma P, Banerjee S. DevoFlow: Scaling flow management for high-

performance networks. In: Proc. of the ACM SIGCOMM. 2011. 254-265. [doi: 10.1145/2018436.2018466]

[74] Sarrar N, Uhlig S, Feldmann A, Sherwood R, Huang X. Leveraging Zipf’s law for traffic offloading. ACM SIGCOMM CCR,

2012,42(1):16-22. [doi: 10.1145/2096149.2096152]

[75] Kozat UC, Liang G, K?kten K. On diagnosis of forwarding plane via static forwarding rules in software defined networks. In: Proc.

of the IEEE INFOCOM. 2014. 1716-1724. [doi: 10.1109/INFOCOM.2014.6848109]

[76] Reitblatt M, Canini M, Guha A, Foster N. FatTire: Declarative fault tolerance for software-defined networks . In: Proc. of the ACM

SIGCOMM Workshop on HotSDN. 2013. 109-114. [doi: 10.1145/2491185.2491187]

[77] Casado M, Freedman MJ, Pettit J, Luo JY, McKeown N, Shenker S. Ethane: Taking control of the enterprise. In: Proc. of the ACM

SIGCOMM. 2007. 1-12. [doi: 10.1145/1282427.1282382]

[78] Nayak A, Reimers A, Feamster N, Clark R. Resonance: Dynamic access control for enterprise networks. In: Proc. of the ACM

SIGCOMM Workshop on WREN. 2009. 11-18. [doi: 10.1145/1592681.1592684]

[79] Gibb G, Zeng H, McKeown N. Outsourcing network functionality. In: Proc. of the ACM SIGCOMM HotSDN. 2012. 73-78. [doi:

10.1145/2342441.2342457]

[80] Kim H, Feamster N. Improving network management with software defined networking. IEEE Communications Magazine, 2013,

51(2):114-119. [doi: 10.1109/MCOM.2013.6461195]

[81] Pere?íni P, Ku?niar M, Vasi? N, Canini M, Kosti? D. OF.CPP: Consistent packet processing for OpenFlow. In: Proc. of the ACM

SIGCOMM Workshop on HotSDN. 2013. 97-102. [doi: 10.1145/2491185.2491205]

[82] Cui Y, Wu P, Xu MW, Wu JP, Lee YL, Durand A, Metz C. 4over6: Network layer virtualization for IPv4-IPv6 coexistence. IEEE

Network, 2012,26(5):44-48. [doi: 10.1109/MNET.2012.6308074]

[83] Tavakoli A, Casado M, Koponen T, Shenker S. Applying NOX to the datacenter. In: Proc. of the ACM SIGCOMM Workshop on

HotNets. 2009. https://www.wendangku.net/doc/812039946.html,/courses/current/compsci590.4/838-CloudPapers/hotnets2009-final103.pdf

80 Journal of Software软件学报V ol.26, No.1, January 2015

[84] Cui Y, Xiao SH, Liao CP, Stojmenovic I, Li MM. Data centers as software defined networks: Traffic redundancy elimination with

wireless cards at routers. IEEE JSAC, 2013,31(12):2658-2672. [doi: 10.1109/JSAC.2013.131207]

[85] Al-Fares M, Radhakrishnan S, Raghavan B, Huang N, Vahdat A. Hedera: Dynamic flow scheduling for data center networks. In:

Proc. of the USENIX NSDI. 2010. https://https://www.wendangku.net/doc/812039946.html,/legacy/event/nsdi10/tech/full_papers/al-fares.pdf

[86] Liu HH, Wu X, Zhang M, Yuan LH, Wattenhofer R, Maltz DA. zUpdate: Updating data center networks with zero loss. In: Proc. of

the ACM SIGCOMM. 2013. 411-422. [doi: 10.1145/2486001.2486005]

[87] Heller B, Seetharaman S, Mahadevan P, Yiakoumis Y, Sharma P, Banerjee S, McKeown N. ElasticTree: Saving energy in data

center networks. In: Proc. of the USENIX NSDI. 2010. https://https://www.wendangku.net/doc/812039946.html,/event/nsdi10/tech/full_papers/heller.pdf

[88] Li D, Shang Y, Chen C. Software defined green data center network with exclusive routing. In: Proc. of the IEEE INFOCOM. 2014.

1743-1751. [doi: 10.1109/INFOCOM.2014.6848112]

[89] Banikazemi M, Olshefski D, Shaikh A, Tracey J, Wang GH. Meridian: An SDN platform for cloud network services. IEEE

Communications Magazine, 2013,51(2):120-127. [doi: 10.1109/MCOM.2013.6461196]

[90] Raghavendra R, Lobo J, Lee KW. Dynamic graph query primitives for sdn-based cloudnetwork management. In: Proc. of the ACM

SIGCOMM Workshop on HotSDN. 2012. 97-102. [doi: 10.1145/2342441.2342461]

[91] Wang Y, Zhang YP, Singh V, Lumezanu C, Jiang GF. NetFuse: Short-Circuiting traffic surges in the cloud. In: Proc. of the IEEE

ICC. 2013. 3514-3518. [doi: 10.1109/ICC.2013.6655095]

[92] Patel P, Bansal D, Yuan LH, Murthy A, Greenberg A, Maltz DA, Kern R, Kumar H, Zikos M, Wu HY, Kim C, Karri N. Ananta:

Cloud scale load balancing. In: Proc. of the ACM SIGCOMM. 2013. 207-218. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2486026

[93] Google. Inter-Datacenter WAN with centralized TE using SDN and OpenFlow. ONS, 2012.

[94] Jain S, Kumar A, Mandal S, Ong J, Poutievski L, Singh A, Venkata S, Wanderer J, Zhou J, Zhou M, Zolia J, H?lzle U, Stuart S,

Vahdat A. B4: Experience with a globally-deployed software defined WAN. In: Proc. of the ACM SIGCOMM. 2013. 3-14. [doi:

10.1145/2486001.2486019]

[95] Hong CY, Kandula S, Mahajan R, Zhang M, Gill V, Nanduri M, Wattenhofer R. Achieving high utilization with software-driven

WAN. In: Proc. of the ACM SIGCOMM. 2013. 15-26. [doi: 10.1145/2486001.2486012]

[96] Yap KK, Sherwood R, Kobayashi M, Huang TY, Chan M, Handigol N, McKeown N, Parulkar G. Blueprint for introducing

innovation into wireless mobile networks. In: Proc. of the ACM SIGCOMM Workshop on VISA. 2010. 25-32. [doi: 10.1145/ 1851399.1851404]

[97] Suresh L, Schulz-Zander J, Merz R, Feldmann A, Vazao T. Towards programmable enterprise WLANs with Odin. In: Proc. of the

ACM SIGCOMM Workshop on HotSDN. 2012. 115-120. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2342465

[98] Li LE, Mao ZM, Rexford J. Toward software-defined cellular networks. In: Proc. of the IEEE EWSDN. 2012. 7-12. [doi: 10.1109/

EWSDN.2012.28]

[99] Bansal M, Mehlman J, Katti S, Levis P. Openradio: A programmable wireless dataplane. In: Proc. of the ACM SIGCOMM

Workshop on HotSDN. 2012. 109-114. [doi: 10.1145/2342441.2342464]

[100] Gudipati A, Perry D, Li LE, Katti S. SoftRAN: Software defined radio access network. In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013. 25-30. [doi: 10.1145/2491185.2491207]

[101] Yeganeh SH, Tootoonchian A, Ganjali Y. On scalability of software-defined networking. IEEE Communications Magazine, 2013, 51(2):136-141. [doi: 10.1109/MCOM.2013.6461198]

[102] Levin D, Canini M, Schmid S, Feldmann A. Incremental SDN deployment in enterprise networks. In: Proc. of the ACM SIGCOMM Demonstration. 2013. 473-474. [doi: 10.1145/2486001.2491694]

[103] Lin P, Hart J, Krishnaswamy U, Murakami T, Kobayashi M, Al-Shabibi A, Wang KC, Bi J. Seamless interworking of SDN and IP.

In: Proc. of the ACM SIGCOMM Demonstration. 2013. 475-476. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2491703

[104] Bennesby R, Fonseca P, Mota E, Passito A. An inter-AS routing component for software-defined networks. In: Proc. of the IEEE NOMS. 2012. 138-145. [doi: 10.1109/NOMS.2012.6211892]

[105] Martins J, Ahmed M, Raiciu C, Huicj F. Enabling fast, dynamic network processing with ClickOS. In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013. 67-72. [doi: 10.1145/2491185.2491195]

[106] Sekar V, Egi N, Ratnasamy S, Reiter MK, Shi GY. Design and implementation of a consolidated middlebox architecture. In: Proc.

of the USENIX NSDI. 2012. https://https://www.wendangku.net/doc/812039946.html,/system/files/conference/nsdi12/nsdi12-final96.pdf

张朝昆 等:软件定义网络(SDN)研究进展

81

[107] Qazi ZA, Tu CC, Chiang L, Miao R, Sekar V, Yu M. SIMPLE-Fying middlebox policy enforcement using SDN. In: Proc. of the

ACM SIGCOMM. 2013. 27-38. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2486022

[108] Fayazbakhsh SK, Sekar V, Yu M, Mogul JC. FlowTags: Enforcing network-wide policies in the presence of dynamic middlebox

actions. In: Proc. of the ACM SIGCOMM Workshop on HotSDN. 2013. 19-24. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2491203

[109] Crisan D, Birke R, Cressier G, Minkenberg C, Gusat M. Got loss? Get zOVN!. In: Proc. of the ACM SIGCOMM. 2013. 423-434.

[doi: 10.1145/2486001.2486024]

[110] Wu P, Cui Y, Wu JP, Liu JC, Metz C. Transition from IPv4 to IPv6: A state-of-the-art survey. IEEE Communications Surveys and

Tutorial, 2013,15(3):1407-1424. [doi: 10.1109/SURV.2012.110112.00200]

[111] Xia W, Tsou T, Lopez DR, Sun Q, Lu F, Xie HY. A software defined approach to unified IPv6 transition. In: Proc. of the ACM

SIGCOMM Poster. 2013. 547-548. [doi: 10.1145/2486001.2491715]

[112] Cui Y, Chen Y. Unified IPv6 transition framework with flow-based forwarding. IETF draft, 2014.

[113] Jacobson V, Smetters DK, Thornton JD, Palss MF, Briggs NH, Braynard RL. Networking named content. In: Proc. of the ACM

CoNEXT. 2009. 1-12. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=1658941

[114] Syrivelis D, Parisis G, Trossen D, Flegkas P, Sourlas V, Korakis T, Tassiulas L. Pursuing a software defined information-centric

network. In: Proc. of the IEEE EWSDN. 2012. 103-108. [doi: 10.1109/EWSDN.2012.20]

[115] Veltri L, Morabito G, Salsano S, Blefari-Melazzi N, Detti A. Supporting information-centric functionality in software defined

networks. In: Proc. of the IEEE ICC. 2012. 6645-6650. [doi: 10.1109/ICC.2012.6364916]

[116] Kreutz D, Ramos F, Verissimo P. Towards secure and dependable software-defined networks. In: Proc. of the ACM SIGCOMM

Workshop on HotSDN. 2013. 55-60. [doi: 10.1145/2491185.2491199]

[117] Shin S, Yegneswaran V, Porras P, Gu GF. AVANT-GUARD: Scalable and vigilant switch flow management in software-defined

networks. In: Proc. of the ACM SIGSAC Conf. on CCS. 2013. 413-424. https://www.wendangku.net/doc/812039946.html,/citation.cfm?id=2516684

[118] Ferguson AD, Guha A, Liang C, Fonseca R, Krishnamurthi S. Participatory networking: An API for application control of SDNs. In:

Proc. of the ACM SIGCOMM. 2013. 327-338. [doi: 10.1145/2486001.2486003]

[119] Porras P, Shin S, Yegneswaran V, Fong M, Tyson M, Gu GF. A security enforcement kernel for OpenFlow networks. In: Proc. of

the ACM SIGCOMM Workshop on HotSDN. 2012. 121-126. [doi: 10.1145/2342441.2342466]

[120] Shin S, Porras P, Yegneswaran V, Fong M, Gu GF, Tyson M. Fresco: Modular composable security services for software-defined

networks. In: Proc. of the ISOC NDSS. 2013. https://www.wendangku.net/doc/812039946.html,/users/vinod/papers/fresco.pdf

附中文参考文献:

[29] 左青云,陈鸣,赵广松,邢长友,张国敏,蒋培成.基于OpenFlow 的SDN 技术研究.软件学报,2013,24(5):1078-1097. http://www.jos.

https://www.wendangku.net/doc/812039946.html,/1000-9825/4390.htm [doi: 10.3724/SP.J.1001.2013.04390]

 

 

张朝昆(1981-),男,河北石家庄人,博士

生,主要研究领域为软件定义网络,IPv6与

下一代互联网.

唐翯祎(1992-),男,博士生,主要研究领域为计算机网络体系结构,无线移动计算

.

崔勇(1976-),男,博士,教授,博士生导师, CCF 高级会员,主要研究领域为计算机网

络体系结构,IPv6与下一代互联网,无线移

动计算.

吴建平(1953-),男,博士,教授,博士生导师,CCF 会士,主要研究领域为计算机网络体系结构,IPv6与下一代互联网.

软件体系结构总结

第一章:1、软件体系结构的定义 国内普遍看法: 体系结构=构件+连接件+约束 2、软件体系结构涉及哪几种结构: 1、模块结构(Module) 系统如何被构造为一组代码或数据单元的决策 2、构件和连接件结构(Component-And-Connector,C&C) 系统如何被设计为一组具有运行时行为(构件)和交互(连接件)的元素 3、分配结构(Allocation) 展示如何将来自于模块结构或C&C结构的单元映射到非软件结构(硬件、开发组和文件系统) 3、视图视点模型 视点(View point) ISO/IEC 42010:2007 (IEEE-Std-1471-2000)中规定:视点是一个有关单个视图的规格说明。 视图是基于某一视点对整个系统的一种表达。一个视图可由一个或多个架构模型组成 架构模型 架构意义上的图及其文字描述(如软件架构结构图) 视图模型 一个视图是关于整个系统某一方面的表达,一个视图模型则是指一组用来构建 4、软件体系结构核心原模型 1、构件是具有某种功能的可复用的软件结构单元,表示了系统中主要的计算元素和数据存储。 2.连接件(Connector):表示构件之间的交互并实现构件

之间的连接 特性:1)方向性2)角色3)激发性4)响应特征 第二章 1、软件功能需求、质量属性需求、约束分别对软件架构产生的影响 功能性需求:系统必须实现的功能,以及系统在运行时接收外部激励时所做出的行为或响应。 质量属性需求:这些需求对功能或整个产品的质量描述。 约束:一种零度自由的设计决策,如使用特定的编程语言。 质量原意是指好的程度,与目标吻合的程度,在软件工程领域,目标自然就是需求。 对任何系统而言,能按照功能需求正确执行应是对其最基本的要求。 正确性是指软件按照需求正确执行任务的能力,这无疑是第一重要的软件质量属性。质量属性的优劣程度反映了设计是否成功以及软件系统的整体质量。 系统或软件架构的相关视图的集合,这样一组从不同视角表达系统的视图组合在一起构成对系统比较完整的表达

软件定义网络(SDN)的国内外研究与发展现状

题目:软件定义网络(SDN)的国内外研究与发展现状一、背景 Software Defined Networking是Kate Greene创造的一个词,在大约2009年提出的。它是指网络的控制平面与实际的物理上的拓扑结构互相分离。这种分离可以使控制平面用一种不同的方式实现,比如分布式的实现方式;另外,它还可以改变控制平面的运行环境,比如不再运行在传统交换机上的那种低功耗CPU上。 所以SDN的关键所在就是控制层与网络数据层是分离的,并不是传统的嵌入关系。并且这种关系在物理实现上也是分离的,这意味着控制层与网络数据在不同的服务器与路由器上操作。而连接两者的“协议”就是OpenFlow,OpenFlow的要点就是相当于给路由器安装一个小软件OpenFlow(后文详细论述),然后研究人员就可以很容易的改变路由器的路由规则等等,从而改善网络质量。而且这是看似没有新意的主意最大的新意就是大大开放了接口权限,所以面向众很广,门槛也比较低。 近年来,伴随着云计算、大数据的迅速兴起,人们对数据业务的流量要求越来越大。而相比于互联网日新月异,不断创新多变的应用层,网络层的发展却越来越跟不上步伐,显得愈发死板不够兼容灵活。而网络层日益落伍的根源则是控制网络运行的软件都是内嵌入路由器或是交换机中,并且交换器或是路由的软件操作标准又是不太一致的,所以就造成了路由器/交换机的复杂度大大提高,造成了很大的流量阻塞和资源浪费。所以SDN的作用不是由嵌入到路由器和交换机内部的软件来控制网络流量,而是来自设备外部的软件接手了这部分的工作。网络布局,或者说网络的形态分布,不再是植入在物理端。它将对实时的系统需求非常灵活且可调节。如果SDN实行得当的话,这意味着一个运行在云端自身内部的应用程序可以接管引导网络流量的任务。或者说一个第三方云端管理应用程序将能够完成这项任务。这样可以简化许多工作,诸如跨服务器装载平衡设备,以及自动地调节网络构造来适时给出最快最高效的数据路径。 二、文献引述 文献[1]主要重在介绍讨论了SDN在数据层、控制层以及应用层的一些关键技术,并从SDN的诞生背景引入,详细说明了SDN的发展历程。在文献[1]中在SDN的层次结构中,文章重点针对了其中的一致性、可用性以及容错性进行分析,并结合SDN的一些热门特性探讨未来的发展之路和新的潜力点。 文献[2]是一篇研究综述,主要阐述了SDN中的关键技术OpenFlow。并详细介绍了

软件设计师知识总结

软件设计师知识总结之计算机组成 计算机系统组成 运算器:算术/逻辑运算单元ALU、累加器ACC、寄存器组、多路转换器、数据总线组成。 控制器:计数器PC、时序产生器、微操作信号发生器,指令寄存器、指令译码器。 CPU的功能:程序控制、操作控制、时间控制、数据处理(最根本的)。 相联存储器是按内容访问的,用于高速缓冲存储器、在虚拟存储器中用来作段表页表或快表存储器、在数据库和知识库中。 CACHE高速缓存的地址映像方法:直接地址映像(主存分区,区分块)、全相联映像(主存分块)、组相联映像(主存分区,区分块、块成组,CACHE分块成组)。 替换算法:随机、先进先出、近期最少用、优化替换算法。 性能分析:H为CACHE命中率,tc为Cache存取时间、tm为主存访问时间,Cache等效访问时间ta=H tc +(1-H) tm 提高了tm/ta 倍。 虚拟存储器由主存、辅存、存储管理单元和操作系统软件组成。 RISC精简指令集:指令种类少、长度固定、寻址方式少、最少的访内指令、CPU内有大量寄存器、适合流水线操作。 内存与接口统一编址:都在一个公共的地址空间里,独立使用各自的地址空间。优点是内存指令可用于接口,缺点内存地址不连续,读程序要根据参数判断访内还是访接口。 廉价冗余磁盘阵列RAID:0级不具备容错能力但提高了传输率N 倍、1级镜像容错技术、2级汉明码作错误检测、3级只用一个检测盘、4级是独立地对组内各磁盘进行读写的阵列,用一个检测盘、5级无专门检测盘。 中断方式处理方法:多中断信号线法、中断软件查询法、菊花链法(硬件)、总线仲裁法、中断向量表法(保存各中断源的中断服务程序的入口地址)。 直接存储器存取DMA:内存与IO设备直接成块传送,无需CPU干涉。根据占据总线方法不同分为CPU停止法、总线周期分时法、总线周期挪用法。 输入输出处理机用于大型机:数据传送方式有字节多路方式、选择传送方式、数组多路方式。 指令流水线:操作周期是最慢的操作的时间。建立时间是达到最大吞吐率的时间。

软件定义网络SDN(特点、实现途径与展望)

软件定义网络SDN(特点、实现途径与展望) 2013/7/19 10:19:04 SDN软件定义网络简介 软件定义网络(SDN,Software Defined Network),是由美国斯坦福大学clean slate研究组提出的一种新型网络创新架构,其核心技术OpenFlow通过将路由器和交换机中的控制平面分离出数据平面,这个控制平面是开放的,并且受到集中控制,同时将命令和逻辑发送回硬件的数据平面。从而实现了网络流量的灵活控制,为核心网络及应用的创新提供了良好的平台。相关的概念还有:软件定义环境、软件定义存储、软件定义数据中心、OpenDaylight 开源SDN项目。 软件定义网络目的是将网络控制与物理网络拓扑分离,从而摆脱硬件对网络架构的限制。这样的话,企业就可以通过软件对网络架构修改,获得企业对网络的需求,达到底层交换机和理由器等硬件无需替换,为企业节省成本。软件定义网络能够从路由器和交换机中的控制平面分离出数据平面,这个控制平面原本是专有的,只有开发它们的供应商知道,而在SDN 中,控制平面将是开放的,并且受到集中控制,同时将命令和逻辑发送回硬件(路由器或交换机)的数据平面。 SDN软件定义网络强调两方面的能力: 1、控制转发分离:传统网络设备紧耦合的网络架构,被分拆成控制和转发两个平面。同时,在控制平面,增加集中控制器进行整体调度,将命令和逻辑发送回硬件(路由器或交换机)的数据转发平面。 2、开放API及软件定义:即通过基于SDN技术的对外开放的API进行软件编程,实现整个网络集中的管理能力,而不需要在每个路由器或交换机上分别以设备为中心进行管理。 软件定义网络的特点 简单化,可以实现中心控制,可以使得很多复杂的协议处理得到简化; 快速部署与维护; 灵活扩展,从一个机柜大的网络还可以扩展到像大的运营商的网络,也可以从一个控制器得到控制; 开放性,因OpenFlow是其重要的组成部分,它的数据转发功能和网络控制功能是分离的,由于这种分离可以分别由交换机来处理,分别由网络控制器处理,从而简化了网络的管理,由此可以使用户有更多的选择自定义网络节省他的投资,使用户选择多家设备共存,打破垄断。用户根据自己的需求和需要在任何时候方便升级。 软件定义网络的安全优势 拥有了自由移动的SDN软件定义网络后,工程师将能够通过快速且高水平地查看网络的所有区域以及修改网络来改变规则。 这种自由和控制还能为你的系统带来更好的安全性。通过快速限制以及从中央视角查看网络内部的能力,管理人员可以有效地作出更改。例如,如果你的网络中爆发了恶意软件,通过SDN软件定义网络和OpenFlow,你将能够迅速地从集中控制平面阻止这种流量来限制这种爆发,而不需要访问多个路由器或交换机。 快速对网络作出调整的能力使管理人员能够以更安全的方式来执行流量整形和数据包QoS.这种能力现在已经存在,但速度和效率不好,当管理人员在试图保护网络安全时,这将限制他们的能力。

软件定义网络

软件定义网络解决传统网络问题的探究 摘要 SDN是近年来继云计算后,学术界和产业界最为关注的网络技术。首先介绍了传统网络存在的问题;然后介绍了SDN的产生背景、体系架构以及关键技术;最后分析了SDN对传统网络问题的解决。 关键词:软件定义网络;OpenFlow;开放网络 第一章引言 软件定义网络(Software Defined Network,SDN),是由美国斯坦福大学CLean State课题研究组提出的一种新型网络创新架构,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,为核心网络及应用的创新提供了良好的平台。 传统网络的世界是水平标准和开放的,每个网元可以和周边网元进行完美互联;计算机的世界则不仅水平标准和开放,同时垂直也是标准和开放的,从下到上有硬件、驱动、操作系统、编程平台、应用软件等等,编程者可以很容易地创造各种应用。 和计算机对比,在垂直方向,从某个角度来说,网络是“相对封闭”和没有“框架”的,在垂直方向创造应用、部署业务是相对困难的。但SDN将在整个网络(不仅仅是网元)的垂直方向,让网络开放、标准化、可编程,从而让人们更容易、更有效地使用网络资源。所以,SDN不能丢掉网络水平方向标准、易互通、节点智能的优势。 第二章传统网络存在的问题 目前,随着互联网爆炸式地增长,除了规模和发展远超之前所有曾出现的数据网络,业务的快速创新也很令人眼花缭乱。近年来,随着各种实时业务如视频语音、云数据中心和移动业务的迅速发展,人们突然发现,传统网络已经无法满足当前的需求: 1、缺失的体验保证 到目前为止,绝大多数IP网络都是基于无连接的,只有基于大宽带的粗放带宽保障措施,质量保证和监控基本处于放弃状态。其后果就是,业务只有连通,而无体验的保证,从而导致业务质量受损。 2、低效的业务部署 由于网络和业务割裂,目前大部分网络的配置是通过命令行或者网管、由管理员手工配置的,本身是一个静态的网络。当遇到需要网络及时做出调整的动态业务时,就显得非常低效,甚至无法实施。 3、缓慢的业务适应 网络无法满足业务的需求,需求持续数年的特性和架构调整、引入新设备,才能满足新业务的需求。例如:云数据中心的虚拟机和虚拟网络运营业务,传统二层的VLAN机制无法满足扩展性,对交换机设备提出了新承载协议的要求,此时物理网络设备更加无法及时适应,靠软件实现的虚拟Switch、通过VxLAN或NvGRE的Overlay的方式,才绕过了物理

软件定义网络SDN文献综述

软件定义网络SDN研究 文献综述 1.引言 现有的网络设备(如交换机、路由器等)都是设备制造商在专门的硬件系统基础上高度集成大量网络协议、配备专用的设备控制系统,构成的一个相对独立封闭的网络设备[1]。在近几十年的发展过程中,云计算、移动互联网等相关技术的兴起和发展加快了网络技术的变革历程[2]。网络带宽需求的持续攀升、网络业务的丰富化、个性化等都给新一代网络提出了更高的要求。面对日益复杂的网络环境,这种紧耦合大型主机式的发展限制了IP网络创新技术的出现,更多的是通过不断增长的RFC数量对现行网络进行修修补补,造成了交换机/路由器设备控制功能的高度复杂。网络研究人员想要在真实网络中基于真实生产流量进行大规模网络实验几乎是不可能的,因为网络设备是封闭的,没有提供开放的API,无法对网络设备进行自动化配置和对网络流量进行实时操控。 为了适应今后互联网业务的需求,业形成了“现在是创新思考互联网基本体系结构、采用新的设计理念的时候”的主流意见[3],并对未来网络的体系架构提出了新的性质和功能需求[4]。软件定义网络[5]SDN的出现为人们提供了一种崭新的思路。 本文从SDN的起源和概念出发,分析了SDN的逻辑架构与技术特点、描述了SDN 的标准化进程,梳理了国外的研究进展与最新动态,在此基础上提出了SDN技术在未来的发展中面临的挑战并总结了可能的研究方向。 2.起源与概念 2.1起源 2006 年,斯坦福大学启动了名为“Clean-Slate Design for the Internet”项目,该项目旨在研究提出一种全新的网络技术,以突破目前互联网基础架构的限制,更好地支持新的技术应用和创新。通过该项目,来自斯坦福大学的学生 Martin Casado

工程师年终个人总结(软件、网络、电气工程师)

工程师年终个人总结(软件、网络、电气工程师)工程师年终个人总结(软件、网络、电气工程师)软件工程师: ★软件工程师范文 ★软件工程师年终个人工作总结范文 ★201X软件工程师年终个人总结范文 ★201X软件工程师年终总结范文 ★201X软件工程师个人年终总结范文 网络工程师: ★网络工程师范文 ★网络工程师年终个人工作总结范文 ★201X网络工程师年终个人总结范文 ★201X网络工程师年终总结范文 ★201X网络工程师个人年终总结范文 电气工程师: ★电气工程师范文 ★电气工程师年终个人工作总结范文 ★201X电气工程师年终总结范文 ★201X电气工程师年终个人总结范文 ★201X电气工程师个人年终总结范文 附送: 工程师年终工作总结

工程师年终工作总结 工程师工作总结工程师年终工作总结 工程师年终工作总结 进入公司已经有将近半年的时间,在公司领导的强有力的领导以及关心支持下,个人在**年度取得了不小的进步。本人在工作过程中,较好地完成了**年年度工作目标。现将个人工作情况作如下总结: 一、年度工作情况: 1、熟悉了解公司各项我于**年9月进入公司,为了更快更好地融入公司这个团队,为以后的工作打好铺垫,我加紧对公司的各项规章制度的了解,熟悉公司的企业文化。通过了解和熟悉,我为能进入公司这个团队感到自豪,同时也感到自身的压力。在以后的工作中,我将以公司的各项规章制度为准则,严格要求自己,廉洁自律,在坚持原则的情况下敢于创新,更快更好地完成工作任务。 2、熟悉项工程的结构,现场情况作为土建工程师,熟悉和了解现场对以后的工作是相当有利的。为了以后能更好地开展工作,我多次深入现场,对现场的布置做更深层次的了解。在掌握第一手现场资料之后,我查阅相关技术资料,对工程的结构情况进行研究,对以后施工重难点进行分析,对项目的基础形式进行分析,通过研究和分析,我对项目施工管理的实际情况做较为客观的预测,为下一步方案的编制提供了可靠的依据。 3、参加工程部管理制度的修改为了便于以后工程部管理,我结合公司的要求以及工程部的实际情况,并参考博爱以及其它比较知名

SDN关键技术_综述

SDN关键技术及趋势 摘要:随着信息通信技术中大量新型业务(如移动互联网、社交网络、云计算和大数据)的出现,未来网正面临着新的挑战,而随时访问性,高带宽,动态管理是至关重要的。然而,基于专有设备手动配置的传统方法是繁琐且易出错的,而且他们不能充分利用网络基础设施的能力。最近,软件定义网络(SDN)已经被称为未来互联网最有前途的解决方案之一。SDN具有两个显著的特点,包括控制平面从数据平面中解耦并且为网络应用程序开发提供了可编程性。因此,SDN被认为能提供更有效的配置,更好的性能和更高的灵活性以适应创新的网络设计。本文总结了SDN活跃研究领域的最新进展。我们首先通过介绍SDN的起源提出一个普遍接受的SDN定义。然后我们简要的介绍了SDN逻辑架构及其技术特征。接着详细介绍了SDN关键技术及其相关领域的研究成果。最后我们描述了我们将来面临的挑战和SDN的发展趋势。 关键词:软件定义网络;OpenFlow;关键技术; Key technologies and Development of SDN Abstract:Emerging mega-trends (e.g., mobile, social, cloud, and big data) in information and communication technologies (ICT) are commanding new challenges to future Internet, for which ubiquitous accessibility, high bandwidth, and dynamic management are crucial. However, traditional approaches based on manual configuration of proprietary devices are cumbersome and error-prone, and they cannot fully utilize the capability of physical network infrastructure. Recently, software-defined networking (SDN) has been touted as one of the most promising solutions for future Internet. SDN is characterized by its two distinguished features, including decoupling the control plane from the data plane and providing programmability for network application development. As a result, SDN is positioned to provide more efficient configuration, better performance, and higher flexibility to accommodate innovative network designs. This paper surveys latest developments in this active research area of SDN. We first present a generally accepted definition for SDN with introducing the origin of SDN. We then briefly present its logical architecture and technical characteristics. We then dwell on its key technologies, and the related research results. Finally, we describe the challenges we face and discuss futureresearch directions of this technology. Key words: Software-defined networking, OpenFlow. Key technologies 引言 随着社交网络、移动互联网、物联网、云计算[1]等业务领域的快速发展,大数据[3][4]正日益成为当前的焦点,其面向的海量数据处理也对网络提出了更高的要求。大数据应用依赖于预先定义好的计 算模式,在集中化的管理架构下运行,存在着大量的数据批量传输及相关的聚合/划分操作。数据的聚合和划分通常发生在一台服务器和一个拥有众多 服务器的服务器组之间,这也是大数据应用中最典型的网络流量模式。例如,在用于大数据处理的MapReduce算法的执行过程[2]中,来自众多mapper 服务器的中间结果需要集中汇总到一台reducer服务器上进行归约(Reduce)操作,而MapReduce 的洗牌(Shuffle)过程更是由mapper和reducer之前的多次数据聚合组合而成。大数据处理过程中的每一次聚合都将导致大量服务器之间的海量数据交换,从而需要极高的网络带宽支持,而如果按照超额认购(oversubscribe)带宽的方式为每台服务器预留网络资源,将导致网络成为瓶颈,同时造成资源浪费。因此,对于大数据业务而言,他更需要对网络进行快速、频繁的实时配置,按需调用网络资源。 但是,传统的网络却难以满足云计算、大数据,以及相关业务提出的灵活的资源需求,这主要是因为它已经过于复杂从而只能处于静态的运作模式。当前,网络中存在着大量各种各样的互不相干的协议,它们被用于在不同间隔距离、不同链路速度、不同拓扑结构的网络主机之间建立网络连接。因为历史原因,这些协议的研发和应用通常是彼此分离的,每个协议通常只是为了解决某个专门的问题而缺少对共性的抽象,这就导致了当前网络的复杂性。

射频识别总结(网络软件)

第一章 1.RFID从耦合方式、电源、频率三方面是如何分类的?耦合方式:电感耦合(近距离)、反向散射耦合(远距离)电源供电:无源、有源、半无源 频率:低频、高频、特高频、超高频 校园卡属于无源近距离电感耦合 2.RFID的基本构成 应答器(标签)、阅读器、后台数据库 应答器硬件框图 阅读器硬件框图 解调 解码 电源 电路 负载 调制 控制器编码器 存储器 射 频 前 端 时钟 发送通道 接收通道 时钟 电路振荡器 载波形成 天线M C U 动作控制 通信接口

第二章 1.应答器中电源电路的工作包括哪些方面? 整流、滤波、稳压 2.负载调制分类 ? 电阻负载调制、电容负载调制 3.串联谐振时电路特性 阻抗的模2 2221Z R X R L C ωω? ?=+=+- ??? =j Z R X + (1)谐振时,回路电抗X =0,阻抗Z =R 为最小值,且为纯阻 (2)谐振频率 0LC ω= (3)谐振时,回路电流最大,即1j j s s s V V V I Z R X R L C ωω= ==+? ?+- ??? (4)电感与电容两端电压的模值相等,且等于外加电压的Q 倍,即VQ 4.并联谐振时电路特性 R S R L I s V R 1 I LP I CP C ↑ S I ↑ C L R P S I (a )损耗电阻和电感串联 (b )损耗电阻和回路并联 L

111=j j p Y C Z L R ωω=++ 其中谐振电阻为纯阻性22 11 = p L L R CR R ω= (1)谐振时,回路电导Y=0,阻抗1 Z Y =为无穷大, Z=p R ,角频率0LC ω= ,谐振频率 2p f LC π= (2)谐振时,品质因数11 11 p L Q R C R ρ= = (3)电容电流值: j j j CP p p s p p p s I U C I CR Q I ωω=== 电感电流值:j LP p s I Q I =- 5.画出串并联阻抗等效互换电路图,并推导互换公式。 串转并: p p s s 111j j R X R X +=+ 222 s s p s 1s (1)R X R R Q R +==+ 2222p s s s s 1p s s s (1)R R R X R Q X X X X ++=== 并转串: 2 11P S R R Q = + 2 1 11P S X X Q =+ 1S P S P X R Q R X = = 电容:1 C C X W = 电感:L X WL = 6. 什么是负载调制,什么是电阻调制?画图说明电阻负载调制。 22 1 p L R R ω= 其中 A B R 1 A B X 2 R 2 (a )串联电路 (b )并联电路

软件定义网络的总结

什么是Openflow OpenFlow交换机将原来完全由交换机/路由器控制的报文转发过程转化为由OpenFlow交换机(OpenFlow Switch)和控制服务器(Controller)来共同完成,从而实现了快速数据包转发(数据面)和高水平路由决策(控制面)分离。控制器可以通过事先规定好的接口操作来控制OpenFlow交换机中的流表,从而达到控制数据转发的目的。 OpenFlow不能做的 OpenFlow不支持IPv6、MAC-in-MAC运营商骨干桥接、Q-in-Q虚拟局域网栈、服务质量、流量整形能力、容错和弹性等功能。 OpenFlow目前的阶段 1.OpenFlow与SDN目前还只是从实验室中成形并刚刚投产。OpenFlow尚不成熟,还未经 过大规模的网络部署测试,因此其规模化、容错性及安全性都受到一定质疑。它恐怕需要在生产环境中运转数年之后才能真正得到广泛的肯定与信任。 2.OpenFlow与SDN目前还只是从实验室中成形并刚刚投产,据媒体报道,戴尔戴尔亚太 区销售技术总监刘永道表示,SDN的市场才刚起步,预估需要3-5年才会进入成熟期。 3.企业表示它们仍然需要传统的多功能交换机和路由器,可以根据MAC地址表里的数据 决定转发。但那些支撑云环境的企业出于灵活性的考虑,愿意做一些尝试。 4.目前OpenFlow还并不完善,尚存在许多问题待解决,而且涉及的面非常广。要想实现 软件定义的互联网,还需要得到业界全方位的支持和努力才能梦想成真。 5.ISP们都在忙着从IPv4向IPv6过度,无暇顾及OpenFlow。 6.SDN到目前为止还没有准备好用于企业市场。” Openflow的一些弱点 1.OpenFlow最困难的一部分是写入控制器软件,可靠的SDN控制器是一个具有挑战性的 任务 2.SDN的杀手级应用很少 3.OpenFlow可以将对流量如何通过网络的控制权从交换机和路由器交还给网络拥有者或 者应用。它要求用户负责精心制定路径策略,去发现可用带宽、减少堵塞,以及最优转发路径。这就牵涉到用户需要有足够的软件开发力量,才能完成相关的工作。目前,对于拥有强大技术团队的运营商和服务提供商来说,这基本不是问题。但对于一般企业来讲,还是有一定难度的。

SDN综述

软件定义网络综述 摘要:现有网络设备支持的协议体系庞大,导致高度复杂,不仅限制了IP网络的技术发展,更无法满足当前云计算、大数据和服务器虚拟化等应用趋势。软件定义网络(Software Defined Network, SDN ),是一种新型网络创新架构,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,为核心网络及应用的创新提供了良好的平台。介绍了OpenFlow技术的产生背景、特点及发展现状,分析了基于OpenFlow的SDN体系结构和平台设计的关键技术,并探究了SDN技术在网络管理自动化、光网络传输与IP承载的统一控制、无线网络的平滑切换、网络虚拟化和QoS保证等方向的应用。 关键词:软件定义网络;OpenFlow;网络虚拟化;管理自动化;QoS 引言:目前,网络已经成为支撑现代社会发展以及技术进步的重要基础设施之一,它深深地改变了人们的生产、生活和学习方式;然而,传统网络架构越来越不能满足当今企业、运营商以及用户的需求。传统互联网由极其复杂的交换机、路由器、终端以及其他设备组成,这些网络设备使用着封闭、专有的内部接口,并运行着大量的分布式协议。在这种网络环境中,对于网络管理人员、第三方开发人员(包括研究人员),甚至设备商来说,网络创新都是十分困难的。例如,研究人员不能够验证他们的新想法;网络运营商难以针对其需求定制并优化网络,难以使得他们的收益最大化;甚至对于设备商来说。也不

能及时地创新以满足用户的需求。封闭的网络设备所带来的结果是:网络依旧面f临着诸多问题与挑战,如安全性、健壮性、可管理性以及移动性等等;网络维护成本仍然居高不下,网络管理需要大量的人工配置等等。近年来,逐渐兴起的SDN正试图打破这种僵局,并成为了近年来学术界和工业界讨论的热点。 一.软件定义网络的产生及巨大意义 软件定义网络(SDN)是由美国斯坦福大学Cleanslate研究组提出的一种新型网络架构,设计初衷是为了解决无法利用现有网络中的大规模真实流量和丰富应用进行实验,以便研究如何提高网络的速度、可靠性、能效和安全性等问题。其基本思想是把当前IP网络互连节点中决定报文如何转发的复杂控制逻辑从交换机/路由器等设备中分离出来,以便通过软件编程实现硬件对数据转发规则的控制,最终达到对流量进行自由操控的目的。SDN技术于2009年入选美国MIT主办的《技术评论》杂志十大新兴技术之一旧1。其核心技术OpenFlow?使能了交换/路由器的控制面与转发面功能的解耦,由集中控 制器(controller)下发统一的数据转发规则给交换设备,使得控制器与交换设备可独立发展。尽管SDN定义了一种新型的网络体系架构,属于下一代网络技术研究课题,但它并不革新原有IP分层网络的报文转发行为,只简化报文转发规则产生的复杂性。为此,随着IP网络研究的僵化和互连设备无法适应新应用如BYOD(bring your own device,自带设备到工作场所)、IrI'定制化、云计算、Bigdata、虚拟化服务器等的广泛出现,使得SDN技术在短短2—3年时间内就成为网络学术研

网络技术知识点总结

计算机三级网络技术备考复习资料 第一章计算机基础 1、计算机的四特点:有信息处理的特性,有广泛适应的特性,有灵活选择的特性。有正确应用的特性。(此条不需要知道) 2、计算机的发展阶段:经历了以下5个阶段(它们是并行关系): 大型机阶段(1946年ENIAC、1958年103、1959年104机)、 小型机阶段、微型机阶段(2005年5月1日联想完成了收购美国IBM公司的全球PC业务)、客户机/服务器阶段(对等网络与非对等网络的概念) 互联网阶段(Arpanet是1969年美国国防部运营,在1983年正式使用TCP/IP协议;在1991年6月我国第一条与国际互联网连接的专线建成,它从中国科学院高能物理研究所接到美国斯坦福大学的直线加速器中心;在1994年实现4大主干网互连,即全功能连接或正式连接;1993年WWW技术出现,网页浏览开始盛行。 3、计算机应用领域:科学计算(模拟核爆炸、模拟经济运行模型、中长期天气预报)、事务处理(不涉及复杂的数学问题,但数据量大、实时性强)、过程控制(常使用微控制器芯片或者低档微处理芯片)、辅助工程(CAD,CAM,CAE,CAI,CAT)、人工智能、网络应用、多媒体应用。 4、计算机种类: 按照传统的分类方法:分为6大类:大型主机、小型计算机、个人计算机、工作站、巨型计算机、小巨型机。 按照现实的分类方法:分为5大类:服务器、工作站(有大屏幕显示器)、台式机、笔记本、手持设备(PDA等)。 服务器:按应用范围分类:入门、工作组、部门、企业级服务器;按处理器结构分:CISC、RISC、VLIW(即EPIC)服务器; 按机箱结构分:台式、机架式、机柜式、刀片式(支持热插拔,每个刀片是一个主板,可以运行独立操作系统); 工作站:按软硬件平台:基于RISC和UNIX-OS的专业工作站;基于Intel和Windows-OS 的PC工作站。 5、计算机的技术指标: (1)字长:8个二进制位是一个字节。(2)速度:MIPS:单字长定点指令的平均执行速度,M:百万;MFLOPS:单字长浮点指令的平均执行速度。(3)容量:字节Byte用B表示,1TB=1024GB(以210换算)≈103GB≈106MB≈109KB≈1012B。 (4)带宽(数据传输率) :1Gbps(10亿)=103Mbps(百万)=106Kbps(千)=109bps。(5)可靠性:用平均无故障时间MTBF和平均故障修复时间MTTR来表示。(6)版本 6、微处理器简史:Intel8080(8位)→Intel8088(16位)→奔腾(32位)→安腾(64位)EPIC 7、奔腾芯片的技术特点:奔腾32位芯片,主要用于台式机和笔记本,奔腾采用了精简指令RISC技术。 (1)超标量技术:通过内置多条流水线来同时执行多个处理,其实质是用空间换取时间;两条整数指令流水线,一条浮点指令流水线。 (2)超流水线技术:通过细化流水,提高主频,使得机器在一个周期内完成一个甚至多个操作,其实质是用时间换取空间。 奔腾采用每条流水线分为四级流水:指令预取,译码,执行和写回结果。(3)分支预测:分值目标缓存器动态的预测程序分支的转移情况。(4)双cache哈佛结构:指令与数据分开存储。 (5)固化常用指令。(6)增强的64位数据总线:内部总线是32位,与存储器之间的外部总线

浅谈软件定义网络技术和应用领域

龙源期刊网 https://www.wendangku.net/doc/812039946.html, 浅谈软件定义网络技术和应用领域 作者:耿宇 来源:《科技资讯》2017年第20期 摘要:当今,传统的网络结构已经不能够满足对大数据、云计算、虚拟化技术的应用需求。可编程的软件定义网络(SDN,software defined network)作为新兴的网技术,强调数据 层面和控制层面分离,根据实际情况在API接口上编写特定的网络互联协议,提高实际网络的灵活性,进而提高网络链路的利用率。 关键词:SDN OpenFlow API 中图分类号:TP393 文献标识码:A 文章编号:1672-3791(2017)07(b)-0180-02 传统网络通信系统中离不开交换机、路由器等网络设备,能够保证用户对通信规则的不同要求不得不将众多的网络通信协议部署在交换机或者路由器上面。而现实中,普通用户需要的“规则”并不多,特定用户的特殊“规则”又无法及时添加。事实上,网络“规则”的控制面原本是专有的,只有开发它们的供应商知道,在这种封闭的网络环境中,网络管理者、第三方开发人员、甚至设备商研发和创新网络协议是很难得,改变网络的“规则”几乎是不可能的,即使后期能够部署也要经历数年之久才。由此可见,封闭的网络设备所带来的结果就是网络维护成本高、管理繁琐复杂、灵活性较差、不能够因地制宜的更新网络协议及时满足用户的需求。 针对以上情况,软件定义网络(SDN,Software Defined Network)提出了全新的探索思路:将网络设备控制部分与数据部分分离开来,以编程的方式对数据流量实现控制,构建成动态、灵活、开放、可控新的的网络结构。其中SND的核心技术OpenFlow中的控制平面是开放的,能够集中控制,并且数据平面能够接收控制面的命令和逻辑。实现物理设备的虚拟化,达到网络控制与物理拓扑分离,摆脱硬件结构对网络架构的限制。这样用户就可以通过软件对网络架构修改,获得对网络的需求。 1 SDN的关键技术OpenFlow OpenFlow交换机(OpenFlo wswitch)、网络虚拟化层(FlowVisor)和控制器(Controller)构成了OpenFlow的基本结构。其中,OpenFlow交换机进行数据的转发,实现 数据层功能;FlowVisor——网络虚拟化层能够抽象物理网络并划分虚拟络,即对物理网网络的虚拟化和抽象化;Controller——控制器对网络进行集中控制,即具备网络的调度功能。 1.1 OpenFlow交换机 机整个OpenFlow网络的核心设备是OpenFlow交换机。OpenFlow交换机的FlowTable (流表)由Controller(控制器)生成、维护和下发,FlowTable(流表)负责数据层的转发管理。在OpenFlow中定义了FlowTable10个关键字:输入端口号、MAC目的地址、MAC源地

SDN的特征、发展现状及趋势

SDN的特征、发展现状及趋势 1.引言 近年来,SDN(software defined networking,软件定义网络)的热度持续升温。2012年,国际研究机构Gartne:将其列为未来5年内IT领域十大关键技术之一。同年,谷歌宣布已在其内部骨干网络上使用SDN技术,标志着SDN进人商用化阶段。各大厂商也随之纷纷发布SDN战略并相继推出商用化产品。由于SDN的发展势头大大超出预期,电信领域知名的市场咨询公司IDC (International DataCorporation,国际数据公司)不得不将2016年SDN的市场预期从原来的20亿美元上调至37亿美元,增幅近90%。短短几年,SDN 这个从美国斯坦福大学实验室研究项目中诞生的产物,已经成为全球瞩目的网络技术热点。那么SDN到底代表了什么?为什么业界将其视为具有颠覆性的网络革命技术?它是否会彻底改变电信产业目前的产业链结构?本文从SDN的起源出发,尝试通过分析SDN的特征、关键技术和产业链状况对目前SDN的发展情况做一个全面的梳理,并简要预期其未来的发展趋势。 2.SDN的概念 SDN是起源于美国斯坦福大学实验室的研究项目的技术,并不是在其产生时就具有该名称。2006年斯坦福的学生Casado M和他的导师McKeown N教授受其研究项目Ethane 启发,提出了OpenFlow的概念。该项目试图通过一个集中式的控制器,让网络管理员可以方便地定义基于网络流的安全控制策略,并将这些安全策略应用到各种网络设备中,从而实现对整个网络通信的安全控制。在随后的2008年,McKeown N等人在ACM SIGCOMM 发表了题为OpenFlow: enabling innovation in campus networks的论文。文中首次详细地介绍OpenFlow的概念,即将传统网络设备的数据平面和控制平面两个功能模块相分离,通过集中式的控制器(controller)以标准化的接口对各种网络设备进行管理和配置,这种网络架构为网络资源的设计、管理和使用提供更多的可能性,从而更容易推动网络的革新与

软件需求分析总结范文

---------------------------------------------------------------范文最新推荐------------------------------------------------------ 软件需求分析总结范文 1. 引言 引言是对这份软件产品需求分析报告的概览,是为了帮助阅读者了解这份文档是如何编写的,并且应该如何阅读、理解和解释这份文档。 1.1 编写目的 说明这份软件产品需求分析报告是为哪个软件产品编写的,开发这个软件产品意义、作用、以及最终要达到的意图。通过这份软件产品需求分析报告详尽说明了该软件产品的需求规格,包括修正和(或)发行版本号,从而对该软件产品进行准确的定义。 如果这份软件产品需求分析报告只与整个系统的某一部分有关系,那么只定义软件产品需求分析报告中说明的那个部分或子系统。 1.2 项目风险 具体说明本软件开发项目的全部风险承担者,以及各自在本阶段所需要承担的主要风险,首要风险承担者包括: ● 任务提出者; ● 软件开发者; ● 产品使用者。 1.3 文档约定 描述编写文档时所采用的标准(如果有标准的话),或者各种排版 1 / 24

约定。排版约定应该包括: ● 正文风格; ● 提示方式; ● 重要符号; 也应该说明高层次需求是否可以被其所有细化的需求所继承,或者每个需求陈述是否都有其自己的优先级。 1.4 预期读者和阅读建议 列举本软件产品需求分析报告所针对的各种不同的预期读者,例如,可能包括: ● 用户; ● 开发人员; ● 项目经理; ● 营销人员; ● 测试人员; ● 文档编写入员。 并且描述了文档中,其余部分的内容及其组织结构,并且针对每一类读者提出最适合的文档阅读建议。 1.5 产品范围 说明该软件产品及其开发目的的简短描述,包括利益和目标。把软件产品开发与企业目标,或者业务策略相联系。 描述产品范围时需注意,可以参考项目视图和范围文档,但是不能将其内容复制到这里。

赵小凡:对“软件定义一切”的思考和理解

对“软件定义一切”的思考和理解 赵小凡 尽管我国软件产业起步晚,但政府一直高度重视,使得软件产业成为优惠政策最密集、持续时间最长、优惠力度最大的产业之一。国务院发布的《鼓励软件产业和集成电路产业发展的若干政策》(国发〔2000〕18号)和《进一步鼓励软件产业和集成电路产业发展的若干政策》(国发〔2011〕4号),以及各相关部门和各级地方政府相继发布的更为优惠的政策,都为软件产业快速、持续发展提供了强大的动力。2010年我国软件产业收入为1.33万亿元,2015年预计将超过5万亿元。5年翻两番,将是我国发展最快的产业。 软件是劳动工具 软件是加工数据、信息、知识(简称信息)的劳动工具,用于改变信息的形态和形式。通信也是劳动工具,用于改变信息的位置。而信息则是劳动对象。由于劳动对象和劳动工具都是非物质,劳动者为了更好地用信息技术(IT)处理信息,必须学习与农业系统和工业系统完全不同的信息系统中的IT知识和技能,并掌握软件工具和通信工具。 信息是非物质资源、无形资产、生产要素、社会财富,具有保值增值的属性。但是劳动工具会随时间而贬值,并且需要持续更新换代。例如,软件必须不断研发新版本,并随着用量增加而变得越来越便宜。所以,我们国家要重视对数据的积累和应用形成的大数据,重视对数据赋予语义而形成的信息,对信息进行推理所产生的知识体系,以及以此为基础升华成的智慧。 软件定义一切 软件定义(Software Defined)是近两年的热议话题。那么软件究竟能定义什么呢?从最早的软件定义无线电,到软件定义网络、数据中心、信息系统、世界。也就是说,软件可以定义一切。 为什么现在才提出软件定义一切呢?因为两个最为重要的条件近年来才基本具备。 第一个条件是硬件越来越小,功耗越来越低,散热越来越少,可靠性越来越高,加工工艺越来越成熟,成本越来越低,可以比前些年更加圆满地完成软件发出的指令。 第二个条件是通信网络已经完全打破了时空的限制,随时随地存在,而且带宽越来越高,可靠性越来越高,建设和运营成本越来越低。这当然也得益于软件,因为软件定义了频率,定义了传输交换。于是,软件不但可以指挥本地硬件实现各种功能,还可以通过通信网络指挥远处的信息系统协同实现各种功能。正是在硬件和网络的大力支持下,软件才进入了定义一切的时代。 人作为高级动物,可以主动地移动,这是与植物和非物质的主要区别。人际交往是人类的基本社会需求。随着软件定义逐渐普及、完善,信息系统会更好地为人的移动交际提供服务,更好地满足人的本能和需求。尽管在硬件和通信支持下,软件好像已经无所不能,但软件定义的世界才刚刚开始。人类社会还有很多尚未发现的真理、未曾发明的技术、有待掌握的知识技能。 我国的软件产业虽然发展很快,但是规模大而不强,企业多而不优,特别是在安全可靠和基础软件产品及服务等方面的问题依然严峻。必须认清我国软件产业的重要性、必要性、紧迫性、长期性、复杂性、艰巨性,切实以创新的观念、思维、模式,坚持不懈地努力,才能有所突破,有所作为。

相关文档