Logo

Linux 内核

6.16.0-rc4

快速搜索

目录

  • 开发流程
  • 提交补丁
  • 行为准则
  • 维护者手册
  • 所有开发流程文档
  • 核心 API
  • 驱动 API
  • 子系统
    • 核心子系统
    • 人机接口
    • 网络接口
      • 网络
      • NetLabel
      • InfiniBand
      • ISDN
      • MHI
    • 存储接口
    • 其他子系统
  • 锁
  • 许可规则
  • 编写文档
  • 开发工具
  • 测试指南
  • 开发指南
  • 追踪
  • 故障注入
  • 热补丁
  • Rust
  • 管理
  • 构建系统
  • 报告问题
  • 用户空间工具
  • 用户空间 API
  • 固件
  • 固件和设备树
  • CPU 架构
  • 未分类文档
  • 翻译

本页

  • 显示源

Devlink E-Switch 属性¶

Devlink E-Switch 支持两种操作模式:传统模式 (legacy) 和 switchdev 模式。传统模式基于传统的 MAC/VLAN 转向规则运行。交换决策基于 MAC 地址、VLAN 等进行。将交换规则卸载到硬件的能力有限。

另一方面,switchdev 模式允许 E-Switch 将更高级的卸载功能实现到硬件中。在 switchdev 模式下,更多的交换规则和逻辑可以卸载到硬件交换 ASIC。它启用了代表设备虚拟功能 (VFs) 或可伸缩功能 (SFs) 慢速路径的代表网络设备 (representor netdevices)。更多信息请参阅 Documentation/networking/switchdev.rst 和 Documentation/networking/representors.rst。

此外,devlink E-Switch 还附带了以下部分中列出的其他属性。

属性说明¶

以下是 E-Switch 属性列表。

E-Switch 属性¶

名称

类型

描述

mode

枚举

设备的模式。模式可以是以下之一:

  • legacy 基于传统的 MAC/VLAN 转向规则运行。

  • switchdev 允许 E-Switch 将更高级的卸载功能实现到硬件中。

inline-mode

枚举

一些硬件需要 VF 驱动程序将部分数据包头放在 TX 描述符上,以便 e-switch 可以进行正确的匹配和转向。支持 switchdev 模式和传统模式 (legacy mode)。

  • none 无。

  • link L2 模式。

  • network L3 模式。

  • transport L4 模式。

encap-mode

枚举

设备的封装模式。支持 switchdev 模式和传统模式 (legacy mode)。模式可以是以下之一:

  • none 禁用封装支持。

  • basic 启用封装支持。

使用示例¶

# enable switchdev mode
$ devlink dev eswitch set pci/0000:08:00.0 mode switchdev

# set inline-mode and encap-mode
$ devlink dev eswitch set pci/0000:08:00.0 inline-mode none encap-mode basic

# display devlink device eswitch attributes
$ devlink dev eswitch show pci/0000:08:00.0
  pci/0000:08:00.0: mode switchdev inline-mode none encap-mode basic

# enable encap-mode with legacy mode
$ devlink dev eswitch set pci/0000:08:00.0 mode legacy inline-mode none encap-mode basic
© 内核开发社区。 | 由 Sphinx 5.3.0 & Alabaster 0.7.16 提供技术支持 | 页面源