插件可以是核心插件也可以是扩展服务插件。核心插件实现“核心”的Neutron API——二层网络、子网、端口和IP地址管理。扩展服务插件提供“额外”的服务,如三层路由、负载均衡、VPN、防火墙和计费。核心组件也可以通过相关的API扩展提供这些网络服务。简而言之,组件运行在控制节点上,并且调用网络API,这些API会同Neutron服务器、数据库和代理进行交互。
1)插件代理(Plugin Agent):虚拟网络上数据包的处理是由这些插件代理来完成的,名字为neutron-*-agent。它在每个计算节点和网络节点上运行。一般来说,用户选择了什么插件,就需要选择相应的代理。代理与Neutron服务器及其插件的交互通过消息队列来支持。
2)DHCP代理(DHCP Agent):名称为neutron-dhcp-agent,为各个租户网络提供DHCP服务,部署在网络节点上,各个插件也使用这个代理。
3)三层代理(L3 Agent):名称为neutron-l3-agent,为客户机访问外部网络提供三层转发服务。也部署在网络节点上。
目前支持的插件包括:
·Big Switch插件。
·Open vSwitch插件。
·博科插件。
·思科UCS/Nexux。
·Linux Bridge插件。
·VMware NSX插件。
·ML2插件。
·NEC Openflow插件。
·Midonet插件。
·Mellanox插件。
·PLUMgrid插件。
·Ryu OpenFlow控制器。