Logo

Linux 内核

6.13.0-rc6

快速搜索

目录

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

本页

  • 显示源代码

Devlink E-Switch 属性¶

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

另一方面,switchdev 模式允许将 E-Switch 的更多高级卸载功能转移到硬件。在 switchdev 模式下,更多的转发规则和逻辑可以卸载到硬件交换 ASIC。它启用代表设备,这些设备代表设备的虚拟功能 (VF) 或可扩展功能 (SF) 的慢速路径。有关更多信息,请参阅 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 模式和传统模式。

  • none 无。

  • link L2 模式。

  • network L3 模式。

  • transport L4 模式。

encap-mode

枚举

设备的封装模式。支持 switchdev 模式和传统模式。该模式可以是以下之一

  • 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 驱动 | 页面源代码