《云数据中心网络与SDN:技术架构与实现》——2.3.6 业务可编程

举报
华章计算机 发表于 2019/06/06 14:18:01 2019/06/06
【摘要】 本书摘自《云数据中心网络与SDN: 技术架构与实现》——书中第2章,第2.3.6节,作者是张晨。

2.3.6 业务可编程

业务可编程是通常所说的北向接口,控制器把底层的一些接口组合在一起进行适当的封装,然后把高层的业务接口——暴露给开发者。从编程方式上来讲有“命令式编程”和“声明式编程”,命令式编程关注How,即业务的实施细节,而声明式编程关注的是What,即业务的最终目的。不过,哪些是What,哪些是How呢?实际上也并没有一个明确的界定。封装这件事其实只是为了方便人理解而已,机器是不需要什么封装的。对于不同的人,能够理解、愿意理解到的层面是不同的,因此封装是可以分出来很多层次的,这一层的How有可能就是下层的What。

目前圈子内流行的说法叫作“基于Intent的编程”,比如Cisco推的GBP和华为推的NEMO。从名义上来讲,两者都属于声明式编程,但GBP的封装层次要比NEMO更高一些。GBP的描述逻辑侧重于网络中不同应用间的通信策略,而NEMO的描述逻辑仍然要关注于物理网络的拓扑。当然,封装获得友好性是有代价的,封装层次越高,业务可以掌控的东西就越少。到底用什么呢?主要还是看业务场景。如果是云里面的多租户业务,那么网实际上只是辅助应用的,流量能跑通就可以了;如果是运营商的专线业务,那么网就处在核心地位了,自己做路径的规划就非常有必要了。

目前来看,GBP和NEMO都处在较为初级的阶段,技术上不是很成熟,暂时都还谈不上生态。其实业务可编程这块,实际上还是用户自己最了解需求,而无论是GBP还是NEMO都是SDN自己玩出来的,总是有些泛泛不着边际的感觉。相比之下,以场景为驱动的业务接口正在形成事实上的标准,比如云中的OpenStack Neutron、GBP和NEMO也都在积极地对接Neutron。运营商这边ONAP的轮子也已经开动了,未来不知道是否会发展成ISP的OpenStack。

业务可编程领域也有一些专用的建模语言,比如YANG和TOSCA。YANG前面介绍过了,TOSCA是OASIS为NFV推动的一种建模语言,和YANG相比主要多了编排的能力,YANG擅长描述一个网络业务,而TOSCA可以组合起多个业务。OpenStack已经使用了TOSCA,而YANG主要还是在OpenDaylight这块。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。