SDN综述
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件定义网络综述
摘要:现有网络设备支持的协议体系庞大,导致高度复杂,不仅限制了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所示。其中控制面实现计算机ISO网络模型中3—7层的各种报文转发控制功能;例如支持二层物理主机地址学习更新MAC(media access control,介质访问控制)地址表,支持IP路由协议(如RIP/OSPF/ISIS/BGP等)更新路由表,根据用户配置和过滤功能静态或动态生成ACL(accesscontrol list,访问控制列表)等转发信息表。数据面依据控制面下发的转发信息表进行报文解析、查表、过滤匹配和端口映射等报文转发功能。管理面支持用户对网络设备的配置管理,如实现命令行接口(conlnland line interface,CLI)和简单网络管理协议(simple network management function,SNMP)功能。尽管交换设备从功能逻辑上进行了较好的划分,但是控制面需要支持的各种IETF RFC协议规范,如OSPF、BGP、组播、区分服务、流量工程、网络地址转换、防火墙、多协议标签交换、虚拟局域网等,已经使路由器的设计和实现都变得异常复杂。软件定义网络的目的就是把交换/路由设备的控制面功能从硬件中剥离出来,由可以在PC(personal computer,个人计算机)或服务器上程控制的“傻瓜型”交换设备。经过多年的研究和实践探索,由谷歌、微软、Facebook、雅虎与电信巨头Vefizon和德国电信于2011年3月份成立的非盈利性组织机构——开放网络基金会联盟(open network foun.dadon,ONF),在文献[3]中给出了软件定义网络(software de.fined networking,SDN)的体系架构,
如图2所示。ONF目标致力于推动SDN技术的发展,并负责标准化和市场化教育等相关工作。
设备功能模块结构图2软件定义网络体系结构
由图2可知,自底向上,SDN体系架构分为基础设施层、控制层和应用层三层。其中,控制层中控制软件与基础设施中的交换/路由等网络设备经由控制数据面接口(也被称为南向接口)交互,与应用层各种APP经由开放API(也被称为北向接口)交互;网络基础设施充当原交换/路由设计中的转发面角色,也被称为OpenFlow交换。OpenFlow交换由流表、安全通道和OpenFlow协议三部分组成,是整个OpenFlow 网络的核心部件,主要管理数据层的转发。OpenFlow交换接收到数据报文后,首先查找流表,找到转发报文的匹配,并执行相关动作。若找不到匹配表项,则把报文转发给控制层,由控制器决定转发行为。控制器通过OpenFlow标准协议更新OpenFlow交换中的流表,从而实现对整个网络流量的集中管控。控制层通过对底层网络基础设施进行
资源抽象,为上层应用提供全局的网络抽象视图,并由软件实现,摆脱硬件网络设备对网络控制功能的捆绑。应用层通过控制层提供的开放接口,对控制层提供的网络抽象进行编程,以操控各种流量模型和应用的网络流量,使得应用产生的流量对网络感知,实现网络智能化。SDN网络标准化工作主要由ONF推动。OpenFlow是开放网络基金会为SDN研究体系标准化的第一个接口规范,目前该规范的定义已经更新到1.3版本HJ。1.0版本中报文匹配的流表项由固定的头域构成,无法被灵活扩展,仅支持局域网报文转发。1.1版本扩充了对多流表、标记和隧道(e.g.多协议标签交换MPLS)和多路径流传输控制协议SCTP等的支持。1.2版本扩充了对IPv6基本协议的支持,并重新设计了流表报文匹配头域结构和抽象匹配后报文转发动作为指令集,可实现报文任意字段的灵活匹配和更通用的报文处理动作。1.3版本对交换和控制器间的能力协商描述格式进行了重构,增加了对流的度量和对IPv6扩展头域的支持。除了定义SDN体系架构和OpenFlow 技术规范外,为了实现对OpenFlow转发面的远程配置,使得OpenFlow 交换设备能够接入SDN网络,同时完成需要人工干预的配置(如与控制器相连的IP地址、端口号和OpenFlow通道传输协议等),还定义了OpenFlow管理和配置协议(OF—Config)”1,以便各厂商SDN交换设备遵行统一标准实现更好的互操作性。
三.软件定义网络发展方向
3.1 新的网络应用
SDN架构中真正使能网络创新的是应用层。目前,在应用层进