6.6. OVS 硬件卸载的组件


用于配置和排除使用 Mellanox 智能 NIC 的 OVS HW Offload 组件的引用。

Nova

将 Nova 调度程序配置为使用 NovaPCIPassthrough 过滤器及 NUMATopologyFilterDerivePciWhitelistEnabled 参数。当您启用 OVS HW Offload 时,Nova 调度程序与生成实例的 SR-IOV 透传相似。

Neutron

启用 OVS HW Offload 时,使用 devlink cli 工具将 NIC e-switch 模式设置为 switchdevSwitchdev 模式建立 NIC 上的代表器端口,这些端口映射到 VF。

流程

  1. 要从启用了 switchdev-enabled NIC 分配端口,请创建一个 neutron 端口,其 绑定 配置集为 capabilities,并禁用端口安全性:

    $ openstack port create --network private --vnic-type=direct --binding-profile '{"capabilities": ["switchdev"]}' direct_port1 --disable-port-security

在创建实例时传递此端口信息。您可以将代表器端口与实例 VF 接口关联,并将代表端口连接到 OVS 网桥 br-int 以进行一次性 OVS 数据路径处理。VF 端口代表器功能,如物理"patch 面板"前端的软件版本。有关新实例创建的更多信息,请参阅: 为 SR-IOV 部署实例

OVS

在配置了硬件卸载的环境中,传输的第一个数据包会遍历 OVS 内核路径,此数据包则为实例流量的传入和传出流量建立 ml2 OVS 规则。建立流量流后,OVS 会使用流量控制(TC)流程序实用程序在 NIC 硬件上推送这些流。

流程

  1. 使用 director 在 OVS 上应用以下配置:

    $ sudo ovs-vsctl set Open_vSwitch . other_config:hw-offload=true
  2. 重启 以启用 HW Offload。

流量控制(TC)子系统

当您启用 hw-offload 标志时,OVS 将使用 TC 数据路径。TC Flower 是一个 iproute2 实用程序,用于在硬件上写入数据路径流。这样可确保在硬件和软件数据路径中编程了网络流,以实现冗余。

流程

  1. 应用以下配置。如果您没有显式配置 tc-policy,则这个选项:

    $ sudo ovs-vsctl set Open_vSwitch . other_config:tc-policy=none
  2. 重启 OVS。

NIC PF 和 VF 驱动程序

Mlx5_core 是 Mellanox ConnectX-5 NIC 的 PF 和 VF 驱动程序。mlx5_core 驱动程序执行以下任务:

  • 在硬件上创建路由表。
  • 管理网络流管理。
  • 配置以太网交换机设备驱动程序模型 switchdev
  • 创建块设备。

流程

  • 使用以下 devlink 命令查询 PCI 设备的模式。

    $ sudo devlink dev eswitch set pci/0000:03:00.0 mode switchdev
    $ sudo devlink dev eswitch show pci/0000:03:00.0
    pci/0000:03:00.0: mode switchdev inline-mode none encap enable

NIC 固件

NIC 固件执行以下任务:

  • 维护路由表和规则。
  • 修复表的管道。
  • 管理硬件资源。
  • 创建 VF。

固件可用于驱动程序来获得最佳性能。

虽然 NIC 固件不是易失性,但在重新引导后保留,但您可以在运行时修改配置。

流程

  • 在接口和代表端口上应用以下配置,以确保 TC 流器在端口级别推送流编程:

     $ sudo ethtool -K enp3s0f0 hw-tc-offload on
注意

请确定您更新固件。Yumdnf 更新可能无法完成固件更新。如需更多信息,请参阅您的厂商文档。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.