跳转到: 导航, 搜索

Neutron/APIForServiceChaining

贡献者

Neutron networking-sfc 项目下一次 IRC 会议议程

  • 快速介绍新的感兴趣的贡献者
  • 规范更新和审查
  • SFC CLI 客户端和 Horizon 客户端对基础 Neutron CLI 和 Horizon 代码的依赖
  • OVS 驱动程序和 OVS 对分类器和 SFF 的支持。如果决定不使用带有链 ID 的 SFC 标头,那么 OVS 必须基于 5 元组或 n 元组构建转发表来进行流识别。

更新

请参阅 Meetings/ServiceFunctionChainingMeeting 以获取最新的会议议程和关于 openstack/networking-sfc 的信息。

IRC 会议记录

会议记录

Neutron 服务链 API 规范

蓝图

服务链 API

简介

目前 Neutron 不支持服务链。为了支持服务链,必须在网络的某些点连接服务 VM,然后将流量引导到这些连接点之间。请参考与此 规范 相关的 Neutron 服务链 BP 以及 服务链 Bug

概述

所有 Neutron 网络服务和 VM 都通过 Neutron 端口连接到 Neutron 网络。这使得能够创建仅使用 Neutron 端口的服务链流量引导模型。此流量引导模型不了解连接到这些 Neutron 端口的实际服务。

托管服务功能的 Service VM 被实例化和配置,然后将 VNIC 添加到 VM,然后这些 VNIC 通过 Neutron 端口连接到网络。一旦服务功能连接到 Neutron 端口,这些端口就可以包含在“端口链”中,以允许服务功能为用户的流量提供处理。

端口链(服务功能路径)由

  • 一组 Neutron 端口对,用于定义服务功能的序列
  • 一组流分类器,用于指定进入链的分类流量

如果服务功能具有一对端口,则端口对中的第一个端口是服务功能的入口端口,第二个端口是服务功能的出口端口。如果服务功能具有一个双向端口,则端口对中的两个端口具有相同的值。

端口链的第一个端口对的第一个端口是端口链的头部。端口链的最后一个端口对的第二个端口是端口链的尾部。

一个 Neutron 端口对可以关联到多个端口链,以允许服务功能成为多个链的一部分。双向服务链将由两个单向服务路径组成,每个路径使用一个“端口链”。

如果存在多个特定类型的服务功能实例来满足用户的服务需求,则它们的 Neutron 端口对包含在端口链中作为“端口组”。

流分类器用于选择可以访问链的流量。匹配任何流分类器的流量将被引导到链中的第一个端口。流分类器将是一个通用模块,可被不同的项目使用,例如 fw、QOS 等。

流分类器定义了可以进入端口链的流量的源和目标端点。

一个流分类器不能是两个不同的端口链的一部分。将进行检查以确保情况如此。

如果多个流通过一个端口链,那么该端口链将有多个流分类器。

模型

       +-------+        +--------+        +---------+
       | Port  |--------| Port   |--------| Neutron |
       | Chain |*      *| Groups |1      *|Port-pair|
       +-------+        +--------+        +---------+
         |1  |1
         |    --------------
         |*                 |1
      +--------------+  +----------+
      | Flow         |  | Chain    |
      | Classifiers  |  |Parameters|
      +--------------+  +----------+


用例

参考 Neutron/ServiceChainUseCases