
Extending functionality with plugins
The OpenStack Networking project provides reference plugins and drivers that are developed and supported by the OpenStack community, and also supports third-party plugins and drivers that extend network functionality and implementation of the Neutron API. Plugins and drivers can be created that use a variety of software and hardware-based technologies to implement the network built by operators and users.
There are two major plugin types within the Neutron architecture:
- Core plugin
- Service plugin
A core plugin implements the core Neutron API, and is responsible for adapting the logical network described by networks, ports, and subnets into something that can be implemented by the L2 agent and IP address management system running on the host.
A service plugin provides additional network services such as routing, load balancing, firewalling, and more.
In this book, the following core plugin will be discussed:
- Modular Layer 2 Plugin
The following service plugins will be covered in later chapters:
- Router
- Load balancer
- Trunk