David Lenrow:ONOS社区及平台介绍

大家下午好!我是为华为工作的,但是今天,我是作为ONOS推广大师来为大家谈一下ONOS的社区以及它的平台。ONOS是一个开放的网络操作系统,我想,它可能就是像一个SDN控制器,大家可以直接把它当成一个SDN的控制器,它是一个网络操作系统。SDN控制器是我们今天讲的重点了。它其实,和OpenDaylight也很类似,我们的使命是一个服务提供商,这是我们ONOS强调一个独特的重点。我们的历史,是非常有意思的。这个项目最初由一家企业倡议的。也就是我们的系统的基础来自一个非常小的团队。它们建立起了东西,还要把它们做的更小。当然啦我们最开始是一个很小的团队,这倒是有好处的,但是后来我们去做了开源,在2014年开始做开源。就像SDN一样,我们历史还不是很久。作为一个开源的项目的话,我们的历史就更短了。OpenDaylight作为一个开源的平台,作为一个社区,比ONOS的历史要更久。但是,ONOS,能够提供第二种控制器的解决方案,以及相关的行业竞争。我们社区的关注点在于提供解决方案来作为集成解决特定的案例。

我们不仅仅要做广泛的大量的衍生化、特色化,我们的方式是选择一些小量的案例,来做出特定的解决方案,来做端到端的完整的解决方案,来可以做部署。我们现在隶属于Linux基金会,现在社区也做了很多的工作,和基金会合作,来改善我们的管理机制和领导机制,让它做的更加的多元化,更加注重我们的社区建设。所以现在我们的项目最开始,是由一群人发起的。我觉得这方面是我们的优势。我想,ONOS的一个特色之一就是,我们一直致力于提供工具箱来做抽象化,让大家能够更简单的建立起强有力的工具,让开发变得更加的高效。ONOS的生态体系大家可以看到,包含几个不同的方面,一个实验室的团队,也就是最开始的团队,主要的服务提供商,包括中国的一些服务提供商,还有大的网络厂商,各式各样独立的组织。它们都加入其中来建立,甚至创造,任何有兴趣的人都可以加入。我们是完全开放的平台,大家如果有兴趣的话,都能够很简单、很容易的加入我们。我们的总体目标,就是有一个每个季度的发放。

当然这可能不能说每一次都非常的精准到天,但是我们每一次的发布,大概都是在一季度左右。我们的发布,是根据鸟的名字来取名的。现在,我们的下一个要在今年8月份发布。叫喜鹊鸭子项目。所以ONOS在我们发布开始之前,整个社区都会贡献一系列的发布目标。所以我们是一个自上到下的一个协作,各个项目的贡献方来决定我们的重点是什么,我们要一起做什么工作,并不是所有的开源社区都是这么做的,有的可能是自下而上的方式,每个项目自己要知道自己的项目想做什么,是完全的一个自主的状态。但是对于ONOS来说,我们的过程,我们觉得更应该是从上自下,让所有的项目可以共同的协作,有一个共同的方向。

ONOS,主要是关注到服务提供商的网络,包括大规模的,需要高度的可靠性,当然不是说每一个SDN都需要这样子的特性,但是对于服务提供商网络来说必须要这样。例如服务提供商的网络,它们有不同的目标、不同的媒体的类型,但是我们看到,最终,有成千上万的路由器。成千上万,甚至上百万的端口,正是因为这样子的规模,我们就要创造独特的结构。和其它的应用之间是有区别的。所以说,这也是一个很大的问题。我们关注到,特定的这个方向,这方面,我们取得了非常大的进步。

最后我稍微的讲一下我们技术综述。当然今天我知道,在座的各位有来自不同的角度的,有的人可能想多听一点,但是在这方面,可能会比较的技术含量比较高。大家也可以去我们的网页来了解更多的信息,我们有更多的文件、视频来给大家提供更加深入的技术的解释。包括高层的各种解释,当然还有我们的原代码。

当然啦,我们来看,首先我们的结构的组成、结构的原则,之前我提到了,这是运营商的需求,大规模的。当然我们还有一个简约性,让开发商能够快速的建立、快速的开发,能够把复杂性简化。当然了,不是每个开发商都可以了解方方面面,我们的目标就是,你能够开发出符合功能,独立的开发符合协议的符合功能,我们要支持多协议、多设备,但是同时方式是透明的。对于开发商来说是透明的。开发商,它们会考虑到复合功能,而不是说其中的其它的附属体系的细节。同时,我们还要分离模块,让大家可以做到定制化,符合自己的需求,而不用创造其它一些相关的,但是并没有特色的一些项目。

昨天,我也谈到了,我们的生态体系的力量在于多少人在参与。每一次放弃一个项目的话,你就会减少这个生态系统的规模,所以我觉得要让大家做定制的需求,不断做私有的复制。

另外,我常常提到的一个方面就是,我们现在在发明一个全新的IT堆展,包括SDN控制器,我们现在这个时间就是OSN模块,已经成为了正确建立的一个模式。提供了清楚层面原则。例如说你在转发层面要做的东西。大家都知道现在应该怎么做约定俗成的规则是什么。我们有这个层面表,我们做新的IT堆展的话,我们看到,那就没有现成的这个平面了。没有真正的了解到,这个东西应该放到哪里。所以说,我们在ONOS项目当中,同时要做的就是,具体的跨层,要把这个东西放在哪里?我经常和运营商谈到的就是,它们常常变核心,它们想要把核心放到之上,来完全替代你控制器的所有软件,来修补一个bug的话,这个风险是很大的。运营商,它们当然都不喜欢风险。它们希望能够更好的控制,更加谨慎。

所以现在一个大的需求就是我们需要分离平台的核心,以及平台的层面,来依靠核心,只有在有必要的情况下才做出改变。能够快速的部署,不用改变现有的编码,如果现有的编码已经做的很好了,那我们当然不愿意用全新的东西来引入,这样的话可能带来新的bug,所以ONOS致力于做这样子的部署和推广。然后在核心之上,也可以做平面,和平面之外能够做数据包,这也就是我们提到的ONOS应用。ONOS应用就是提供我们的服务,以及支持我们的代码。这是分离出来的,ONOS应用,不要和用户应用和计算机应用相混淆。

这是在控制器之外的。这样子来说,给大家概括的讲一下大的动态,能够理解它们更好的运作。到底应用层面上,到底是什么,到底哪部分是核心层,应该怎么去描述呢?还有别的事情,把它称为ONOS的扩展,它是跟应用、驱动协议等等,它是对应的。然后包括很少有一定的改变,这些事情在中心改变非常少,因为能够确保整个核心的可持续性,还有能够经常的去传输和变动,所以说很明显的在整个上面的层面,SCBI,它是非常现实的感知,在整个系统内进行交互,是直接的进行对控制系统进行操控,所以说它也有一些可以去写,确保你能够进入所有不同的各个层面上,都可以去可视化去看,当然这是目标,不是说我跟大家讲,说整个接口多么好,或者是其它的不好,我只是给大家看了一下各种各样的系统,大家去使用,包括社区去用,它只是决定哪一种是最好的方法,跟我们的ONOS进行交互,取决于它们自己的需求。

所以说我觉得一个真实的ONOS的分布式的体系,包括整个计算的问题,如果你把很多的服务放在唯一的ONOS的节点上,或者是你发展一个服务,是在很多的击败ONOS的基础上,ONOS是一个开发商,它不仅仅是理解,去想,它只是提供一种我们需要的解决方案,你想一下,包括它功能怎么样,交互如何,包括必须确保它能够把两个系统之内,而不是把它分割出来,让这些事情建立自己的数据中心,把它在整个地理方面分割开来,这些因素都要考虑在内,所以这是非常有利的特征,这样的话可以确保,每个人都会变成整个分布式系统的一部分,大家可以去工作,SDN方面就可以真正的引进来,我们把人们去改变,我们有小的池子,这样的话对开发人员来讲,我觉得真的,ONOS提供的确实是有这样的理念,各种分布式计算的问题在这里就可以解决。对于开发商可以提供,可以依赖我们的系统,它是非常高的扩展性,也能够更好的进行分布式计算。

除此之外,另外一部分把它嵌入系统之外,它有自己相应的体系,它们需要,所以控制器如果出错的话,整个系统有时候会自动转换到别的体系,重新进行平衡,将负载进行平衡,整个系统仍然平衡,不是说单个人去发展一个应用,你要想有可能出错的情况下你必须考虑在整个运行方面,要把它嵌入到系统的库当中,这样的话整个复杂性是藏在底下的,实际上这些特征,包括可拓展性等等,在这方面确实让用户来讲更加简单,没有更多的改变和复杂度让它们去接受。

所以说如你所看,这是我们非常潜在的,大概4个ONOS的节点,可以看到这是应用,它们仅仅是在整个层面上一个大的逻辑方面的节点。所有的API可以看到,它是唯一的一个逻辑强大的交互节点,它是逻辑的虚拟节点,相当于节点到处都在,整个结果也是到处都在的。所以说它是具体的提供商协议跟个人的交互,这样系统就能够理解这些细节的交互,哪一个交换器可以联系在一起,整个系统相互连接等等这些信息。

当然有很多的信息,我讲的比较多,可能不一定特别好理解,谈一下整个分布式的结构,实际上已经提到,它已经开始设置起来,大概有很多的应用案例,它是非常系统化的设备,所以说每一个节点都可以更好的连接。比如说它失去一个节点,对整个系统实际上没有任何的影响,它们可以重新进行均衡。我们也不管客户在哪儿,也不管在系统中处于哪个位置,整个系统可以拓展,往上往下拓展,也可以去,主要是基本什么样的应用情况,我们把它进一步的进行开发。所以说更深的一层,谈到核心的系统你可以看到这儿有不同的分支体系。

有一些核心的服务,所以这是整个,如果你看到,这是一个本质现象,特别是,分布式的计算,包括整个分散式的计算,错误的计算,实际上有一定的改变,因为你加了一定的应用,特别在定义层面上,它是核心的一部分吧。并且,在整个核心内部你还可以看到,把它称之为平布式的运算架构,而不是数字式的计算。所以各种各样的服务放在里面,如果你想进行交互,如果你看拓扑等等,所有的都已经在整个系统当中建立起来,作为一部分了,而开发商不需要理解内部的结构,它需要把所有的部分都理解,但是它只要把用户接口API理解就可以真正的使用了。

所以说,这儿的蓝盒,提到的这些事件把它称之为ONOS的应用层面,你可以看到,(英)并不是说其它的交流,或者是媒体方面的,可能不是一个概念的,这个可能是另外一种应用的概念。是IPPVN或者是正式的交互,有一些是非常高层的,好像在整个初级的整体层面之外的,可能有一种非常好的,让人感兴趣,整个系统之外的交互的接口,进行一些更好的接口,也许能够在上面进行开发。

所以,关键的北向的,很多抽象的概念,对于ONOS来讲它们主要是有网络的图画,这样的概念主要是,所有的设备,所有的设备之间的连接,所有的基站,这好像就是今天基本上的信息,今天可以提供的服务,依赖于它简单的一站式的运输,这种拓扑,能够去跟随整个拓扑的改变,能够跟踪。相当于流动的目标它也是一部分的概念,我们想让它变得更加简单,能够理解所有服务其它的运营的细节,在具体的案例当中,我提出开放的OpenFlow平台,还有TPT项目在这方面的工作,可以建不同的流动通道,而且变得非常清楚,不同的销售商,不同的人们去建自己的管道,而且方式是不一样的,顺序也不一样,整个是非常高层的抽象,就是谈一下这是一种抽取,目前就是说我们想要做的事情,不是说具体的细节,包括怎么做,这是管道怎么做,这只是一种目的,我们目的就是说我们想要它发声,我们想要它其它的软件有可能帮助我们实现目标,这是我们将来的期望。

理解我们的基本概念就可以,解决问题,最后把它称之为我们的一个目的,就是说这个描述,这种连接性的方式,相互跟网络是独立出来的,你必须要持续去关注在整个应用的层面上去关注,比较辛苦,你要去理解,具体的哪一个点在哪儿分布,包括怎么把它连接在一起,有时候需要改变整个网络才能把网络层返回,把所有的事情重新做,所以比较困难,整个服务的目的,就是确保在动态化的能够进行一定的调整,确保这样的连接能够更好的调整,我觉得主要是自我感知、自我调整这样的方式,所以你能够感到到,使用某一种交互的界面,足够的抽象,给它一定的自由度,自己去改变和调整,这样的分布,有些时候如果有些错误的话,你需要改自己的路径,或者别人错了,你会受到影响,整个系统可以自动的进行重新均衡,这样的话时时的均衡。

所以说我觉得,我谈了很多的一些细节,然后而且谈了很多的目标,谈了我们自己的一些应用案例,其它的各种应用的情况,ONOS的接口,包括SDN对等接口等等一些应用,我们想要去建立一个SDN概念,建立一个非SDN的传统的网络模式。在这种层面上,它是非常透明的,所以整个现成的主机,如果看F,它们会觉得STBIP对等接口,在整个接口之内,它要知道,要跟OpenFlow或者是其它层面对接的,也需要去控制所有各种层面的网络,一个控制器不能说控制第一层或者是另外的控制器控制第三层,这样的话就比较困难,所以我们觉得一定要有这样的机会去控制。把这些不同步的控制,协调起来,所以说有很多的人们有一些控制器,都是在IP层面去控制,或者是必须要能够协同起来,确保用更好的方式去协议、去规划。同时还有内容方面的一些需求,包括整个虚拟化的网关、功能,还有宽带的控制,主要是基于保留的一些空间,而且不是说里面是,是提前给大家预留的空间才能更好的控制,你不是说一下子就明白,你会发现很多文档的例子进一步说明,谢谢大家!


  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。 本站中所有编译类文章仅用于学习和交流目的,编译工作遵照 CC 协议,如果有侵犯到您权益的地方,请及时联系我们。
  • 本文链接https://www.sdnlab.com/17010.html
分享到:
相关文章
条评论

登录后才可以评论

SDNLAB君 发表于16-06-02
0