(作者简介:张卫峰,《深度解析sdn》一书作者,盛科网络软件总监,数据通信和芯片设计领域资深专家,有十几年的网络实践经验,对SDN、传统二三层交换机、数据传输设备,从管理面到协议控制面一直到芯片转发面,都有着深刻的理解。)
去年下半年,思科隆重推出了他们的秘密武器ACI(Application Centric Infrastructure),你说他是用ACI来对抗SDN也好,或者是拥抱SDN也好,反正他们自己宣称是既不同于VMware NSX,又不同于ONF OpenFlow的有思科特色的SDN。一时之间ACI成了一个大热的话题,众说纷纭,吸引了足够的眼球。
最近思科又联合IBM、Citrix、微软等向IETF提交了一个新的draft,名字叫OpFlex,号称是要取代OpenFlow(不知道是第三方的人这么讲的还是思科自己讲的)。但是跟ACI相比,算是低调多了,国内外讨论的人都比较少。甚至都看不到一篇正儿八经分析的文章。去年大张旗鼓推出硬的ACI,今年低调地推出软的OpFlex,两者之间有什么关系吗?
OpFlex这个draft篇幅不长,一共只有21页,去掉一些标题,引用之类的之后,有效页数不超过16页。如果你之前从来都不了解ACI,来读这篇draft的话,我相信就算你是个资深网络技术人员也会觉得不知所云,不是看不明白每一句话,而是不明白它的目的是什么,要解决什么问题。但是如果之前比较深入地了解过ACI,再看这个draft就会明白了,OpFlex其实就是ACI内部的策略控制协议,现在思科把它给标准化了。所谓的用OpFlex替代OpenFlow云云,本质上还是用ACI这种SDN去跟OpenFlow以及Vmware的NSX之类架构去竞争。这里要顺便吐槽一下,OpFlex这个draft写得真是坑爹,一般RFC都会把背景情况,来龙去脉交代的一清二楚,而OpFlex这个draft很多背景都直接省略掉了,因为它是基于一个已经存在的东西,作者潜意识里面觉得背景已经很清楚了。
这里简单分析一下ACI和OpFlex,我们先看看ACI的架构。
ACI是把数据中心中的物理网络视为一个封闭的Fabric系统,对用户来说是个黑盒,用户不需要关心里面是运行了什么协议,如何连接。这个封闭的Fabric系统就是ACI(Application Centric Infrastructure)。那如何对这个封闭系统进行控制呢?这里的控制分为两部分,一部分是配置传统路由交换功能,使得ACI中的各个物理设备彼此可达,这个时候是靠传统方式去配置的,而且这种配置通常是一次性的,配好之后就不用再动了。另外一部分则是用户业务的策略控制(比如基于ACI部署云计算网络),这部分不是靠传统网管,而是靠一个SDN控制器,这个控制器也有个名字,叫APIC(Application Policy Infrastructure Controller)。
APIC向上通过开放的Restful API跟各个第三方的系统或者工具进行集成,这些工具可以通过APIC来控制整个物理网络,应用策略,进而达到控制所有接入到该网络中的其它设备的目的。向下,APIC可以去控制整个ACI中的物理交换机(Spine/Leaf节点),不包括连接到这个物理网络中的其它设备(计算、存储、安全或者其它ACI之外的交换路由设备)。如上图中最下面那部分,外围的那一圈设备就不属于ACI的范畴,在APIC的架构中,这些接入到该Fabric中的用户设备,称为Endpoint(EP),相同类型的Endpoint组成一个Endpoint Group(EPG),比如所有的计算节点可以是一个EPG,或者所有具有相同Vlan的设备也可以是一个EPG,APIC并不规定EPG如何定义。
|