OpenContrail是juniper以$176 million高价收购的一个SDN产品。研究了架构,感觉还真是不错。
Neutron和OpenContrail的思想很相近,但OpenContrail感觉比Neutron要牛逼地多,当然,Neutron现在也正在完善,很多特性也都跟上来了。
OpenContrail的虚拟路由器相当于Neutron dvr agent,是将三层打通了的,更像是DragonFlow,更牛叉的是,在虚拟overlay层面,它不仅可以运行VxLAN,还能运行MPLS over GRE/UDP,控制器与控制器之间通过iBGP对接,多个数据中心之间通过BGP或XMPP协议分发MPLS标签对接,这是类似Google B4直接在广域网上打通三层功能的节奏啊。DragonFlow急需结合Quagga也做到这一层次。
OpenContrail的服务链也做的比Neutron要完善的多,如深度包检测(DPI),入侵检测(IDP),入侵防护(IPS),广域网优化和负载均衡等。
OpenContrail使用的协议都很标准,例如:从控制器到vRouter的南向高层数据模型(虚拟网络,连接策略或者安全策略等)是基于XMPP协议;从vRouter到控制器的南向低层数据模型(例如BGP的路由标记(RT)或者VXLAN的网络标识或者流量工程TE-LSP等)采用了可信的IF-MAP协议;今后也会考虑使用YANG作为模型化语言;
OpenContrail是一个使用了Java,C等各种编程语言的大杂烩,在vRouter中也使用Intel dpdk实现了类似于snabb switch的用户态网络栈,性能应该也是可以期待的。
不过在安装过程中,由于文档都比较过时,坑比较多,还没有安装起来,待续。安装起来之后,我相信产品稳定性还是可期待的。
[1], http://blog.163.com/s_zhchluo/blog/static/15014708201411144244468/
[2], http://www.opencontrail.org/opencontrail-architecture-documentation/
[3], http://www.opencontrail.org/opencontrail-and-devstack/