Linux Kernel TCP/IP Stack — L2 Layer — switchdev L2 Offload

Linux 4.0 引入的 switchdev 框架为具有交换能力的硬件提供了通用接口,使得交换机能够被内核识别为 net_device。通过该框架,可以将端口绑定、桥接、隧道化或划分子网,并将 FDB 映射到硬件,实现二层交换功能的卸载,提高性能。switchdev 最初在 QEMU 的 Rocker 软交换机上得到支持,后续 Mellanox 和 Broadcom 等公司也提供了支持。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

switchdev 框架(二层交换 Offload 实现)

Linux 4.0 引入了 switchdev 框架,它代表对一类拥有 “交换” 能力芯片的多网口设备的抽象。其中每一个网口就是一个 Port,在 switchdev 框架中被注册成为一个 net_device。

switchdev 起源于 Open vSwitch 项目,由 Jiři Pirko 在 2014 年 9 月首次提出。在 2015 年 2 月的 Netdev 0.1 会议上,网络开发人员决定扩展并采用 switchdev 作为硬件交换机芯片的通用解决方案。

switchdev 驱动模型出现之前,Linux 需要交换机厂商的专门工具套件操作交换机,而在 switchdev 驱动模型之后,通用接口被实现。交换机正式纳入 Linux 网络设备体系,Linux 可以用标准接口实现交换机的控制面和管理面。

在 switchdev 驱动框架下,硬件交换机设备上的每个物理端口都在内核中注册为一个 net_device,就像对现有的网卡设备所做的那样。可以使用现有的指令工具(e.g. brctl、ip 和 iproute2)将端口绑定或桥接、隧道化或划分 VLAN。

switchdev 驱动程序的优点是这样的交换结构可以被卸载到交换机硬件上。因此,驱动程序将 F

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

范桂飓

文章对您有帮助就请一键三连:)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值