2006年,美国斯坦福大学启动了一个名叫clean slate的研究课题。
该课题由美国geni项目资助,目的非常明确且宏大,就是——“重塑互联网”。
▲ global environment for network innovations
当时的互联网,已经历经了30多年的高速发展,从最初的小型专用局域网络,变成了空前庞大和复杂的世界级网络。
网络规模的持续扩张,网络设备的不断增加,超过了早期设计的承受能力,也使得网络维护变得举步维艰。
于是,专家们开始探讨未来网络的可能性架构,希望在互联网崩溃之前,将它拉回正轨。而geni项目和clean slate课题,就是这些尝试之一。
2007年,斯坦福大学博士生martin casado等人提出了关于网络安全与管理的项目——ethane。
该项目试图通过一个集中式的控制器,将网络管理人员制定的安全控制策略,下发到各个网络设备中,从而实现对整个网络的安全控制。
2008年,clean slate课题的项目负责人,斯坦福大学教授nick mckeown及其团队,受到ethane项目的启发,提出了openflow的概念,并发布了那篇经典的文章——《openflow : enabling innovation in campus networks(openflow:校园网的创新使能)》。
▲nick mckeown和他的文章 openflow,字面意思就是“开放的流”。
2009年,基于openflow,nick mckeown教授正式提出了sdn(software defined network,软件定义网络)。
同年,sdn概念成功入围technology review年度十大前沿技术,获得了行业的广泛关注和重视。
12月份,openflow规范的1.0版本正式发布。这是首个可用于商业化产品的版本,具有里程碑意义。
在继续介绍sdn发展历程之前,我们还是要稍微介绍一下sdn的工作原理。
sdn的核心思想真的很简单,就是控制和转发分离。
我们知道,网络的作用就是连接。通过无数的节点(例如路由器、交换机),将数据从起点传送到终点,这就是网络的基本功能。
▲数据传输过程中,各节点不断接收和转发数据包。控制负责下命令,转发负责干活。
然而,考虑到安全冗余等因素,现实中的网络绝对不会是一条直线那么简单。它会是一个复杂的拓扑结构。
于是,命令该怎么下,直接决定了网络的效率。
传统网络中,各个转发节点都是独立工作的,内部管理命令和接口也是厂商私有的,不对外开放。
▲每个节点,都在说各自的“方言”
所以,我们可以把它理解为“各自为战”的模式。虽然“战略层面”的规划和设计可能是统一的,但“战术层面”的执行却是复杂且低效的。
而sdn网络,就是在网络之上建立了一个sdn控制器节点,统一管理和控制下层设备的数据转发。所有的下级节点,管理功能被剥离(交给了sdn控制器),只剩下转发功能。
sdn控制下的网络,变得更加简单。管理者只需要像配置软件一样,进行简单部署,就可以让网络实现新的路由转发策略。(如果是传统网络,每个网络设备都需要单独配置。)
除了简化部署之外,sdn更深层次的意义,是赋予了网络的“可编程性”。
也就是说,控制和转发分离之后,借助规范化的api接口,用户可以通过编写软件的方式,对网络进行管理。整个网络,就像个完整的机器人一样可供驱使。
我们具体来看看sdn的架构。
sdn网络的整体架构,分为三层,从上到下分别是应用平面、控制平面和转发平面。
整个架构的核心,就是sdn控制器。
上北下南,sdn控制器向上与应用平面进行通信的接口,叫做北向接口,也叫nbi接口(northbound interface)。sdn控制器向下与数据平面进行通信的接口,叫做南向接口,也叫cdpi接口(control-data-plane interface,控制数据平面接口)。
北向接口相对来说比较好搞,麻烦的是南向接口及其协议。因为它直接影响到sdn控制器的命令能否准确下达到无数的底层网络设备。
因此,sdn技术的发展史,简而言之,就是围绕sdn控制器和南向接口的“王位争夺史”。
在sdn被提出之后,第一个控制器平台是nox。它是一种单一集中式结构的控制器,南向接口采用的是openflow协议。
2011年,由google、facebook、微软等公司共同发起成立了一个对sdn影响深远的组织,那就是onf(open networking foundation,开放网络基金会)。
onf的主要发起成员是德国电信、facebook、google、微软、雅虎等公司。
这些公司要么是网络服务提供商,要么是运营商,没有一个是来自设备商的。他们成立onf的目的,是为了推动sdn和openflow协议的发展。他们不希望sdn这个网络新技术又被设备商控制,成为设备商的赚钱工具。
上述发起人里面,最值得一提的是google。
如果说nick mckeown教授是点燃sdn星星之火的人,那么,google显然是将星星之火烧遍全球的关键角色。
早在sdn被提出之外,google就在寻找提升自身网络效率的方法。当看到sdn之后,google确认,这就是他们想要的。于是,他们果断决定将sdn应用于自己的数据网络。
2010年,google开始将数据中心与数据中心之间的网路连线(g-scale),转换成sdn架构。整个改造分为三个阶段。到了2012年,整个google b4网络完全切换到了openflow网络。
▲google b4是一种横跨整个地球的连接到谷歌数据中心私有广域网。
改造之后,google b4网络的链路带宽利用率提高了3倍以上,接近100%。
这样的结果毫无疑问是令人震撼的,也坚定了行业对sdn的信心。
2013年,google在sigcomm上发表了论文《b4: experience with a globally-deployed software defined wan》,详细介绍了google的wan加速sdn方案。论文中提及,google使用的控制器名叫onix。
面对sdn和onf,设备商当然也不能无动于衷。
2013年4月8日,在linux基金会的支持下,作为网络设备商中的领导者,cisco与ibm、微软等公司一起,发起成立了开源组织opendaylight,共同开发sdn控制器。
▲odl的发起公司有:ibm、微软、big switch、博科、思杰、戴尔、爱立信、富士通、英特尔、juniper、nec、惠普、红帽和vmware……基本都是厂商
opendaylight提出,sdn不等于openflow,人们需要对sdn进行“重新定义”。
也就是说,opendaylight强调sdn控制器不仅仅局限于openflow,而是应该支持多种南向协议。
同时,opendaylight还强调,应该用分布式的控制平台,取代单实例的控制器。这样可以管理更大的网络,提供更强劲的性能,还能增强系统的安全性和可靠性。
opendaylight成立之后,成员数量增长迅速。但实际上,各个成员都有自己的小算盘。
cisco就不用说了,作为opendaylight项目的牵头人,它主导了其中大部分项目的开发。cisco也一直想推自家的opflex上位。
除了cisco之外,big switch推出big network controller以及对应的开源版本floodlight。juniper推出的是contrial以及对应的开源版本opencontrial。
总而言之,这一时期各种各样的sdn控制器处于百家争鸣的状态,发展势头一片大好。
▲当时比较主流的几种sdn控制器
仗着人多势众,opendaylight也成了行业里最具影响力的技术组织之一。
就在opendaylight风光无限的时候,又杀出了一个搅局者。
2014年12月5日,on.lab推出了一款创新性的网络操作系统——onos(open network operating system),对opendaylight发起了强有力的挑战。
▲onos直接将自身定位提升到网络操作系统层面。
on.lab是哪里冒出来的呢?on.lab全名是open networking lab(开放网络实验室),最初是由parulkar和nick mckeown共同成立的。没错,就是提出sdn的那个nick mckeown教授。
on.lab的某些职能和onf很类似。2016年10月19日,两个组织宣布正式合并,组成了新的onf。
就这样,围绕sdn控制器和协议,各大流派及厂商进行了十多年的明争暗斗,并最终形成了现在的局面。
从趋势来看,网络操作系统的概念深入人心,是大势所趋。sdn控制器作为网络操作系统的核心,重要性不言而喻。
未来,随着网络规模的扩大,sdn控制器肯定会继续往分布式的方向发展。控制器之间的分工协作会更加深入,甚至可能出现集群。控制器也会引入nfv虚拟化技术,与openstack等云平台进行整合。
好啦,关于sdn的大致发展过程,就介绍到这里。sdn的演进并没有结束,围绕sdn“正主”地位的争夺也没有结束。最终谁将主导未来网络?让我们拭目以待!
参考文献:
1、《谈谈大家想知道的、不知道的sdn》,谭培龙 2、《重构网络: sdn 架构与实现》,杨泽卫, 李呈 3、《sdn是什么》,李宗标 4、《sdn网络构架及发展历史》, 李呈 5、《sdn是什么依然值得讨论》,杨泽卫
https证书在线检测极致处理搜索引擎反复爬取难题滨海新区网站建设流程详解 看完不再迷茫友情链接交换如何防止被骗有哪些方法刷网站流量?北京网站建设,文字设计在网站中尤为重要!定制网站:如何做好企业网站建网站为什么需要策划