软件定义网络SDN各家实现的方式不一样,所以和云管理平台对接的方式也不一样。
1、比如:华三和华为的网络设备,实现SDN的话,都有一个SDN控制器,但是他们都支持开源开发的协议。如果与
OpenStack进行对接和管。只需要使用OpenStack的Neutron就可以了。Neutron使用ML2可以将多种网络实现以plugin方式纳入到Neutron来管理。即Neutron通过ML2可以管理各种网络(硬件或软件)实现,比如SDN网络:OpenvSwitch,Linux Bridge等。以华为和华三网络设备为主。
2、思考的SDN,思科自己有一套SDN管理工具,叫ACI。是一整套解决方案。例如:
(Nexus 9000系列交换机)+软件(APIC控制器)的网络解决方案(ACI fabric)。ACI里在网络之上创建了很多新的概念来让用户更好的使用网络。比如EPG、BD、Network、 Contract、Subject、Filter等。这些概念的底层实现其实依然是真实的物理网络。
但是思科直接卖ACI不是一套云的解决方案。所以想搭着OpenStack卖,但是OpenStack里没有ACI里的以应用为中心的网络方案的各种概念,两边概念不好对应,所以思科在社区提交了GBP项目。GBP的概念和ACI里的概念基本一致。GBP的概念更通用一些,OpenStack社区也容易接受。
GBP项目和Neutron项目很好的结合,这样OpenStack通过GBP+Neutron可以方便的管理ACI。