软件定义网络

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件定义网络解决传统网络问题的探究

摘要

SDN是近年来继云计算后,学术界和产业界最为关注的网络技术。首先介绍了传统网络存在的问题;然后介绍了SDN的产生背景、体系架构以及关键技术;最后分析了SDN对传统网络问题的解决。

关键词:软件定义网络;OpenFlow;开放网络

第一章引言

软件定义网络(Software Defined Network,SDN),是由美国斯坦福大学CLean State课题研究组提出的一种新型网络创新架构,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,为核心网络及应用的创新提供了良好的平台。

传统网络的世界是水平标准和开放的,每个网元可以和周边网元进行完美互联;计算机的世界则不仅水平标准和开放,同时垂直也是标准和开放的,从下到上有硬件、驱动、操作系统、编程平台、应用软件等等,编程者可以很容易地创造各种应用。

和计算机对比,在垂直方向,从某个角度来说,网络是“相对封闭”和没有“框架”的,在垂直方向创造应用、部署业务是相对困难的。但SDN将在整个网络(不仅仅是网元)的垂直方向,让网络开放、标准化、可编程,从而让人们更容易、更有效地使用网络资源。所以,SDN不能丢掉网络水平方向标准、易互通、节点智能的优势。

第二章传统网络存在的问题

目前,随着互联网爆炸式地增长,除了规模和发展远超之前所有曾出现的数据网络,业务的快速创新也很令人眼花缭乱。近年来,随着各种实时业务如视频语音、云数据中心和移动业务的迅速发展,人们突然发现,传统网络已经无法满足当前的需求:

1、缺失的体验保证

到目前为止,绝大多数IP网络都是基于无连接的,只有基于大宽带的粗放带宽保障措施,质量保证和监控基本处于放弃状态。其后果就是,业务只有连通,而无体验的保证,从而导致业务质量受损。

2、低效的业务部署

由于网络和业务割裂,目前大部分网络的配置是通过命令行或者网管、由管理员手工配置的,本身是一个静态的网络。当遇到需要网络及时做出调整的动态业务时,就显得非常低效,甚至无法实施。

3、缓慢的业务适应

网络无法满足业务的需求,需求持续数年的特性和架构调整、引入新设备,才能满足新业务的需求。例如:云数据中心的虚拟机和虚拟网络运营业务,传统二层的VLAN机制无法满足扩展性,对交换机设备提出了新承载协议的要求,此时物理网络设备更加无法及时适应,靠软件实现的虚拟Switch、通过VxLAN或NvGRE的Overlay的方式,才绕过了物理

交换机对的限制。

多年来,人们确实想出了一些解决问题的办法,但是常常是解决了一个问题,另一个问题又冒出来了。因为大家忽略了这些问题是传统网络的基本属性决定的,以IP为代表(以太网也在其列)的这种业务无需知道网络、网络也无需知道业务的解耦模式,造就了互联网的快速业务创新,同时也造成了业务和网络的天然割裂,不从网络基础架构入手,问题很难得到根本的解决。

第三章SDN体系结构

3.1 SDN的产生背景

SDN是起源于美国斯坦福大学实验室的研究项目的技术,并不是在其产生时就具有该名称。2006年斯坦福的学生Casado M和他的导师Mc Keown N教授受其研究项目Ethane[1]启发,提出了Open Flow的概念。该项目试图通过一个集中式的控制器,让网络管理员可以方便地定义基于网络流的安全控制策略,并将这些安全策略应用到各种网络设备中,从而实现对整个网络通信的安全控制。在随后的2008年,Mc Keown N等人在ACM SIGCOMM 发表了题为Open Flow: enabling innovation in campus networks[2]的论文。文中首次详细地介绍Open Flow的概念,即将传统网络设备的数据平面和控制平面两个功能模块相分离,通过集中式的控制器(controller)以标准化的接口对各种网络设备进行管理和配置。这种网络架构为网络资源的设计、管理和使用提供更多的可能性,从而更容易推动网络的革新与发展。在此基础上,基于Open Flow为网络带来的可编程特性,Mc Keown教授进一步提出了SDN 最早的概念[3]。

由此可见,SDN的产生与Open Flow协议密切相关。现在业界普遍将基于Open Flow 协议的SDN视为狭义SDN。

随着SDN的发展,越来越多的厂商加入SDN的研究行列。由于不同行业、不同应用对SDN有着各自不同的需求,因此在谈论SDN时通常也有着不同的理解。在网络科研领域,利用SDN快速地部署和试验创新的网络架构与通信协议;大型互联网公司希望SDN提供掌握网络深层信息的可编程接口,以优化和提升业务体验;云服务提供商希望SDN提供网络虚拟化和自动配置,以适应其扩展性和多租户需求;ISP希望利用SDN简化网络管理以及实现快速灵活的业务提供;企业网用户希望SDN实现私有云的自动配置和降低设备采购成本。基于这些需求,在思科等厂商的推动下,IETF、IEEE等标准组织去除了SDN与Open Flow的必然联系,保留了可编程特性,从而扩展出SDN的广义概念,即泛指基于开放接口实现软件可编程的各种基础网络架构,进而将具备控制转发分离、逻辑集中控制、开放API 3个基本特征的网络纳入SDN的广义概念下,目前这一概念的发展由IETF主推。

3.2 SDN的网络架构及关键技术

3.2.1 SDN的网络架构

图1是业界广泛认同的SDN模型架构。该模型架构分为3层,其中基础设施层主要由支持Open Flow协议的SDN交换机组成。控制层主要包含Open Flow控制器及网络操作系统(network operation system, NOS)。控制器是一个平台,该平台向下可以直接与使用Open Flow协议的交换机(以下简称SDN交换机)进行会话;向上,为应用层软件提供开放接口,

用于应用程序检测网络状态、下发控制策略。位于顶层的应用层由众多应用软件构成,这些软件能够根据控制器提供的网络信息执行特定控制算法,并将结果通过控制器转化为流量控制命令,下发到基础设施层的实际设备中。根据上述论述,Open Flow协议、网络虚拟化技术和网络操作系统是SDN区别于传统网络架构的关键技术。

图1 SDN模型架构

3.2.2 OpenFlow协议

从SDN的起源可看出,Open Flow协议是SDN实现控制与转发分离的基础。业界为了推动SDN发展并统一Open Flow标准,组建了标准化组织开放网络基金会(Open Networking Fundation,ONF)[4]。目前,ONF已成为SDN标准制定的重要推动力量,其愿景就是使基于Open Flow协议的SDN成为网络新标准。自2009年10月发布Open Flow标准第一个版本以来,ONF先后发布了1.1、1.2、1.3等版本。Open Flow协议发表的详细情况如表1所示。

表1 OpenFlow协议发表情况

Open Flow规范主要由端口、流表、通信信道和数据结构4部分组成。由于篇幅原因,本文不对该规范做展开论述,主要介绍Open Flow的运行原理。

图2反映了Open Flow对数据分组的处理机制。

一个Open Flow交换机包括一个或者多个流表(flow table)和一个组表(group table)。流表中的每个流条目包括如下3个部分。

匹配(match):根据数据分组的输入端口、报头字段以及前一个流表传递的信息,匹配已有流条目。

相关文档
最新文档