OpenWrt 是一个专门面向嵌入式设备的 Linux 发行版。你可以将 OpenWrt 支持的型号的嵌入式设备,比如各种路由器上的系统,换成一个有更多可能性可以折腾的 Linux 系统。
OpenWrt 官方网站
huangya
V2EX  ›  OpenWrt

MT762x 中的硬件 offload 原理

  •  
  •   huangya · Oct 27, 2022 · 1747 views
    This topic created in 1292 days ago, the information mentioned may be changed or developed.
    最近在看 OpenWRT 中对 MT762x 中硬件 offload 的代码,看起来 PPE 对多种类型的 flow 可以 offload,包括 NAT/routed/bridged(包括 LAN-LAN 和 LAN-WLAN) flow.在这里我们考虑常用的 NAT flow.我看内核中的软件 offload 是在 FORWARD 链添加 entry 到软件 flow table 。比如一条 tcp 流,当有两个包的交汇时,在 contrack 中就有这条流的信息了,所以就可以把这条流对应的 entry 放到 flow table 里面了。对于硬件 offload, flow table 应该是存在于硬件中的,我想问的是,添加 entry 也是类似吗?也在 FORWARD 链吗?
    2 replies    2022-11-06 17:18:37 +08:00
    cwbsw
        1
    cwbsw  
       Nov 6, 2022
    用 linux kernel 的实现的话,是的。但是厂家自己的 sdk 好像是会自己实现一个内核模块。
    huangya
        2
    huangya  
    OP
       Nov 6, 2022
    @cwbsw hardware offload 是 linux 实现了一个框架,厂家似乎是在驱动里面具体实现。也就是 linux kernel 框架代码调用驱动。目前我搞不明白大体的流程。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5569 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 446ms · UTC 09:05 · PVG 17:05 · LAX 02:05 · JFK 05:05
    ♥ Do have faith in what you're doing.