加入收藏 | 设为首页 | 会员中心 | 我要投稿 三明站长网 (https://www.0598zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 网站设计 > 佳作 > 正文

SDN本质:让网络软件化、敏捷化

发布时间:2016-11-03 15:03:16 所属栏目:佳作 来源:站长网
导读:1 SDN的需求及驱动力 很多做网络的同仁在初次了解SDN(Software Defined Networking)的架构后都会产生一系列的疑问:1)SDN真正的客户需求在哪里,它到底能解决什么问题?2)集中控制和集中网管的本质区别是什么?3)它是不是和软交换差不多?这些疑问也不无道理

 1 SDN的需求及驱动力

很多做网络的同仁在初次了解SDN(Software Defined Networking)的架构后都会产生一系列的疑问:1)SDN真正的客户需求在哪里,它到底能解决什么问题?2)集中控制和集中网管的本质区别是什么?3)它是不是和软交换差不多?这些疑问也不无道理,简单地将控制和转发分离之后难道就能产生诸多神奇的效果?我想说的是SDN一点也不神奇,它是来自于IT领域的一种必然需求,是过去60多年来IT越来越去硬件化,以软件获得功能灵活性的一种必然趋势。SDN不能化腐朽为神奇,而仅仅是能够为IT产业增加一个更加灵活的网络部件,在局部来看,它似乎是个颠覆性的实现技术,但是从总体来看它不改变现有网络的体系结构,它只是提供了一个设备供应商之外的企业、运营商能够控制网络自行创新的平台,使得网络创新的周期由数年降低到数周,换句话说,企业、运营商创新是为了满足最终内外部用户的需求,网络创新周期缩短了、简化了,也就意味他们的竞争力更强、他们的客户更加满意。

SDN从最早的Ethane系统算起,至今已经4年多了,正是来自于不同群体的需求推动了其蓬勃的发展。

斯坦福SANE/Ethane项目

需求:提升企业网网络安全性,降低网络管理的复杂度

解决方案:用于企业网的集中控制管理,每个端点必须和网络进行认证,安全策略可以在单点进行控制,由网络设备负责执行策略。

校园网

需求:高校研究者的网络创新可以在校园网上实验而不必求助于设备提供商

解决方案:将网络设备的转发行为原语化,全部交由外部的计算机控制,研究者可以在基于通用操作系统的计算机上编程实现新的网络协议和转发行为,而不必修改转发面设备本身。OpenFlow由此而诞生。

 google、Facebook、Yahoo!等大型网络服务提供商

需求:1)大型数据中心(10K交换机)复杂的网络管理问题。2)云计算技术革新带来的对网络特性新的需求很难在短时间内满足,比如TRILL协议标准化用了7年,用户希望能网络特性增加能和自己修改软件特性一样快捷。3)IaaS服务所要求的资源调度包括对网络资源的动态按需调度,现有技术不能很好的满足。4)降低网络设备的成本。

解决方案:1)集中管理,网络设备即插即用、自动故障发现及流量切换、自动故障恢复处理。2)将网络的转发行为控制交由外部控制实体控制,并且这个外部实体是开放系统,Google、Facebook的工程师可以自己编程实现任何想要的网络特性,而不必去走提需求、标准化、测试、入网的冗长流程。3)网络资源池化,网络控制实体提供接口给应用,应用可以根据需要控制网络的转发行为。4)转发面设备标准化、同质化,将创新、差异化交给控制器软件,转发面成本如同PC一样可以大幅降低。

电信运营商

需求:1)缩短网络新功能的面市周期,希望CT创新也像互联网一样快捷、多样化。2)降低网络的管理成本。

解决方案:网络进一步软件化、通用化、集中化。

那么为什么不是网管来做到这一切。首先,目前没有一种网管是参与网络运行时的状态和策略控制的,比如说你根据报文在线决策其转发策略。参与运行时在线控制的需要和运行系统同样的可靠性及合理的性能、时延保证,在电信系统中,可靠性要求是≥99.999%。其次,参与系统运行时流程的”网管”不是网管,它是某种形式的控制面。第三,有人说那有什么本质区别,我仍然认为那是网管,那么好吧,那是在线网管服务器,未来的网管。

2 SDN本质

说到SDN,必然提到OpenFlow,但是SDN不等于OpenFlow,就如同互联网不等于IP协议,PSTN不等于7号信令,IMS不等于SIP,WEB体系不等于HTTP协议一样。OpenFlow仅仅是SDN中控制器控制转发面设备的协议而已,控制器本身的架构、网络拓扑算法、运行环境、编程工具,以及和上层应用的集成技术都是SDN的一部分,并且是架构上更为核心的部分。打个比方,存储程序控制是冯.诺依曼计算机体系的核心理念,至于你采用何种CPU指令集倒是其次,你可以采用古老的ENIAC、IBM system360指令集,也可以用现代的IBM Power、x86、MIPS、ARM指令集,每一种计算机系统都是冯.诺依曼体系架构的一个实例。

当然,对于SDN而言,不能仅仅只有抽象的架构,一定要有具体的实现实例,因此业界选择了OpenFlow协议作为指令集,并围绕其来建立一系列的操作系统、软件、编译器、外设框架和实现。那么,业界为什么没有选择IETF定义的控制转发分离协议FORCES(Forwarding and Control Element Separation)而是选择了OpenFlow?我理解主要原因有两点1)forces设计初衷在于设备的转发控制分离,侧重于现有功能的建模,而不是用来创造新的网络特性。2)推进者的力量不同,forces由Intel发起,但是随后其卖出了NP,再无推进的决心,而OpenFlow由硅谷的摇篮-斯坦福大学提出,由GENI项目通过试验床合同推进,进而吸引了Google、Facebook、微软这样多金的IT/互联网企业参与,最终形成了强大的产业联盟。理论上,我们也可以扩展forces实现类似的SDN功能,或者我们再定义其它的控制协议和转发模型来实现SDN,但是OpenFlow已经占住先机。

那么到底SDN的本质是什么?如前所述,SDN的本质就是让用户/应用可以通过软件编程充分控制网络的行为,让网络软件化,进而敏捷化。那么为什么网络需要软件化、敏捷化?当然是为了更加快速地满足最终客户的需求,附带地,降低Capex和Opex。也许有人会疑问,我的设备已经是可以软件编程,SDN有什么不同?当然不同。

Step 1:从设备提供商可编程转变为用户可编程

SDN通过将控制面从封闭的厂商设备中独立出来,并且可以完全控制转发面行为,使得新的网络协议的实现可以完全在控制面编程实现,而控制面是一个开放的、基于通用操作系统的可编程环境,目前的实现支持C++和Python脚本,不排除未来像Web编程一样支持多种脚本语言。故而有实力的IT/电信运营商/大型企业可以不求助于厂商和标准组织就自行实现新的功能。

Step2:从设备可编程转变为网络可编程

SDN的可编程不仅是针对单个网络节点而言的,而且是可以对整个网络进行编程,如下的图很好地阐述了这个理念。控制器具有全局的拓扑,可以计算任意端点之间的路由,并控制转发路径。同样其也可以控制每个端点的接入权限,无论你从那个节点接入,例如你可以将VLAN绑定、802.1x认证交由控制器实现,转发面设备完全不感知。

Step 3: 网络和IT应用的无缝集成

(编辑:三明站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读