系统设计¶
介绍¶
Neutron 动态路由支持将自服务(私有)网络前缀通告给支持动态路由协议(如路由器)的物理网络设备,从而消除了对静态路由的传统依赖。
它通告三类路由
托管在非 DVR 路由器上的浮动 IP 地址的主机路由,下一跳是中心化路由器。
托管在 DVR 路由器上的浮动 IP 地址的主机路由,下一跳是相应的计算节点。
具有地址范围的可直接路由的租户网络的前缀路由,下一跳是中心化路由器,DVR 和 CVR 相同。
有关详细信息,请参阅 路由通告。
Neutron 动态路由由 服务插件和代理组成。服务插件实现网络服务扩展,而代理管理动态路由协议对等会话。插件通过 RPC 与代理通信。
架构¶
下图显示了此功能的架构
Neutron dynamic Routing System Architecture
+---------------------------------------------------------------+
| Dynamic Routing plug-in |
| +---------------------------------------------------------+ |
| | Dynamic Routing API/Model | |
| +---------------------------------------------------------+ |
| | Dynamic Routing Agent Scheduler | |
| +---------------------------------------------------------+ |
| | |
+------------------------------|--------------------------------+
|
|
+-----------+
| RPC |
+-----------+
|
|
+----------------------|-------------------------+
| |
| |
+---------------------------+ +---------------------------+
| Dynamic Routing Agent1 | | Dynamic Routing Agent2 |
| | | |
| +---------------------+ | | +---------------------+ |
| | Driver Manager | | | | Driver Manager | |
| +---------------------+ | | +---------------------+ |
| | Common Driver API | | | | Common Driver API | |
| +---------------------+ | | +---------------------+ |
| | | | | |
| +---------+-----------+ | | +---------+-----------+ |
| | os-ken | Other | | | | os-ken | Other | |
| | Driver | Drivers | | | | Driver | Drivers | |
| +---------+-----------+ | | +---------+-----------+ |
| | | |
+---------------------------+ +---------------------------+
动态路由插件¶
使用动态路由插件,可以启用/禁用 Neutron 中动态路由协议的支持。
动态路由 API¶
动态路由 API 提供配置动态路由的 API。支持以下动态协议的 API。
BGP¶
BGP 功能提供三种类型的 API。有关详细信息,请参阅 API 文档。
BGP Speaker API 用于将 Neutron 路由通告到 Openstack 网络之外。
BGP Peer API 用于与远程路由器形成对等关系。
BGP DRAgentScheduler API 用于将 BGP Speaker(s) 调度到一个或多个运行动态路由代理的主机上。
注意
BGP 是当前唯一支持的动态路由协议。
动态路由模型¶
动态路由模型维护数据库并与动态路由代理通信。
动态路由代理调度器¶
动态路由代理调度器负责调度路由实体。有关详细信息,请参阅 代理调度器。
动态路由代理 (DR Agent)¶
动态路由可以驻留在具有或不具有其他网络服务代理的主机上。它通过 通用驱动程序 API 管理和配置不同的动态路由堆栈。
注意
目前,仅支持与 os-ken 的集成。