找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 8924|回复: 27

mtk硬件加速问题

[复制链接]
想请教各位一个困扰很久的问题,就是mt7981(360T7使用这个芯片)和mt7986有两个ppe。我测试过LAN<->WAN, LAN<->WLAN 和 WLAN<->WAN,似乎都offload到ppe0. 所以ppe1到底在什么情况下会被offload呢?
我的恩山、我的无线 The best wifi forum is right here.
MT7981和MT7986都是支持网络协议栈 offload 的多功能芯片,而它们的两个 PPE(Packet Processing Engine)可以用于对网络流量进行并行处理,提高网络性能。一般情况下,PPE0 负责处理网络数据包的转发、路由、过滤等功能,而 PPE1 则主要用于处理网络安全相关的功能,如加密解密、防火墙等。

在实际应用中,哪个 PPE 会被使用取决于具体的网络应用场景和配置。一些网络应用可能更加注重网络安全功能,比如 virtual**、防火墙等,这时候就可能会使用 PPE1 来处理相关的数据包。另外,如果你的应用中有一些特定的数据包需要进行特殊处理,也可以选择将这些数据包发送到 PPE1 进行处理。

需要注意的是,PPE1 一般不会被用于处理普通的网络数据包转发等功能,因为这些功能已经被 PPE0 充分覆盖了。如果你测试的场景没有涉及到特殊的网络安全功能或者特定的数据包处理,那么就很可能只会使用到 PPE0。

点评

非常感谢你的回复。你说ppe1注重网络安全相关的功能。恰好我对网络安全相关也非常有兴趣。请问有谁的固件或者代码已经实现利用了这个ppe1吗?本人会编译,openwrt经验也算比较丰富。  详情 回复 发表于 2023-5-9 15:53
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
纯今老师 发表于 2023-5-9 15:46
MT7981和MT7986都是支持网络协议栈 offload 的多功能芯片,而它们的两个 PPE(Packet Processing Engine) ...

非常感谢你的回复。你说ppe1注重网络安全相关的功能。恰好我对网络安全相关也非常有兴趣。请问有谁的固件或者代码已经实现利用了这个ppe1吗?本人会编译,openwrt经验也算比较丰富。

点评

MT7981和MT7986的PPE1主要用于网络安全相关的功能,如加密解密、防火墙等。在实际应用中,如果需要利用PPE1实现这些功能,需要编写相应的代码来实现。这些代码可以通过在驱动程序中添加支持PPE1的代码来实现,或者在  详情 回复 发表于 2023-5-9 15:57
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

huangya 发表于 2023-5-9 15:53
非常感谢你的回复。你说ppe1注重网络安全相关的功能。恰好我对网络安全相关也非常有兴趣。请问有谁的固件 ...

MT7981和MT7986的PPE1主要用于网络安全相关的功能,如加密解密、防火墙等。在实际应用中,如果需要利用PPE1实现这些功能,需要编写相应的代码来实现。这些代码可以通过在驱动程序中添加支持PPE1的代码来实现,或者在应用程序中使用DPDK等高性能数据包处理框架来编写相应的应用程序。

对于MT7981和MT7986这两款芯片,由于其性能较为强大,应用领域也比较广泛,因此有很多开源的固件和代码可以用于参考和学习。例如,OpenWrt是一款基于Linux的自由软件,其支持MT7981和MT7986芯片,并且提供了相应的驱动程序和工具链。你可以从OpenWrt社区中获取相关的代码和固件,进行学习和实验。

此外,MTK官方也提供了一些相关的开发文档和示例代码,可以用于参考和学习。你可以访问MTK官网获取更多信息。

点评

我研究过openwrt官方的ethernet和wireless驱动代码。似乎对于从有线发起的包,调用下列函数 其中mtk_flow_offload_cmd(eth, cls, 0) 第三个参数就是ppe的号码。这里写死是0. 对于从无线发起的包,调用下次函数 这里  详情 回复 发表于 2023-5-9 16:21
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

如果HNAT+HQOS同时开启,能用上两个ppe吗?

点评

这个我不确定。但是至少可以用一个ppe。  详情 回复 发表于 2023-5-9 16:23
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
纯今老师 发表于 2023-5-9 15:57
MT7981和MT7986的PPE1主要用于网络安全相关的功能,如加密解密、防火墙等。在实际应用中,如果需要利用PP ...

我研究过openwrt官方的ethernet和wireless驱动代码。似乎对于从有线发起的包,调用下列函数
  1. static int
  2. mtk_eth_setup_tc_block_cb(enum tc_setup_type type, void *type_data, void *cb_priv)
  3. {
  4.         struct flow_cls_offload *cls = type_data;
  5.         struct net_device *dev = cb_priv;
  6.         struct mtk_mac *mac;
  7.         struct mtk_eth *eth;

  8.         mac = netdev_priv(dev);
  9.         eth = mac->hw;

  10.         if (!tc_can_offload(dev))
  11.                 return -EOPNOTSUPP;

  12.         if (type != TC_SETUP_CLSFLOWER)
  13.                 return -EOPNOTSUPP;

  14.         return mtk_flow_offload_cmd(eth, cls, 0);
  15. }
复制代码
其中mtk_flow_offload_cmd(eth, cls, 0) 第三个参数就是ppe的号码。这里写死是0.

对于从无线发起的包,调用下次函数
  1. static int
  2. mtk_wed_setup_tc_block_cb(enum tc_setup_type type, void *type_data, void *cb_priv)
  3. {
  4.         struct mtk_wed_flow_block_priv *priv = cb_priv;
  5.         struct flow_cls_offload *cls = type_data;
  6.         struct mtk_wed_hw *hw = priv->hw;

  7.         if (!tc_can_offload(priv->dev))
  8.                 return -EOPNOTSUPP;

  9.         if (type != TC_SETUP_CLSFLOWER)
  10.                 return -EOPNOTSUPP;

  11.         return mtk_flow_offload_cmd(hw->eth, cls, hw->index);
  12. }
复制代码
这里没有写死,是由一个hw->index决定。具体不知道怎么过来的。但实际测试,我加了打印,似乎hw->index一直是0.不管无线是2.4g还是5g。不知道你是否知道。

另外,你说MTK官网有示例代码,可以麻烦提供一下链接吗?


我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
finalazy 发表于 2023-5-9 15:58
如果HNAT+HQOS同时开启,能用上两个ppe吗?

这个我不确定。但是至少可以用一个ppe。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
两个ppe之间的数据沟通很难搞,所以默认只开启一个。高通的双核npu也是让不用核心处理不同类型的任务,规避这个问题。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

7986/7981要第二个无线网卡才会走ppe1,也就是三频的。不同ppe之间独立的,不存在数据交流。

点评

1. 请问为什么说是第二个网卡呢?应该是第三个网卡吧?mt7986/mt7981 soc内置双频了。 2. 根据你的说法,所以ppe1不是专门用于前面恩山网友所说的"网络安全相关“?  详情 回复 发表于 2023-5-9 17:05
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
237176253 发表于 2023-5-9 16:40
7986/7981要第二个无线网卡才会走ppe1,也就是三频的。不同ppe之间独立的,不存在数据交流。 ...

1. 请问为什么说是第二个网卡呢?应该是第三个网卡吧?mt7986/mt7981 soc内置双频了。
2. 根据你的说法,所以ppe1不是专门用于前面恩山网友所说的"网络安全相关“?

点评

7981/7986是dbdc,单网卡双频段。两个ppe一样的,都是只能处理nat或者桥接的流量。上面那个回复一看就是AI。  详情 回复 发表于 2023-5-9 17:08
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

huangya 发表于 2023-5-9 17:05
1. 请问为什么说是第二个网卡呢?应该是第三个网卡吧?mt7986/mt7981 soc内置双频了。
2. 根据你的说法, ...

7981/7986是dbdc,单网卡双频段。两个ppe一样的,都是只能处理nat或者桥接的流量。上面那个回复一看就是AI。

点评

非常感谢点拨。 如果要测试的话,是不是要买这款3频的?https://www.acwifi.net/23805.html。还有一个测试办法,我使用的MT7986是BPI-R3。带M.2接口。感觉可以用一个M.2转接pcie接那种带bb/mac和RF的ap网卡,不过有  详情 回复 发表于 2023-5-9 17:38
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
237176253 发表于 2023-5-9 17:08
7981/7986是dbdc,单网卡双频段。两个ppe一样的,都是只能处理nat或者桥接的流量。上面那个回复一看就是A ...

非常感谢点拨。
如果要测试的话,是不是要买这款3频的?https://www.acwifi.net/23805.html。还有一个测试办法,我使用的MT7986是BPI-R3。带M.2接口。感觉可以用一个M.2转接pcie接那种带bb/mac和RF的ap网卡,不过有点贵:https://item.taobao.com/item.htm ... abbucket=19&mt=

顺便吐槽一下,我说怎么前面的回复那么一本正经。AI回复不知可否举报。

点评

没注意开源驱动怎么写的,闭源驱动是可以在配置无线参数的dat文件里指定无线走哪个ppe。  详情 回复 发表于 2023-5-9 18:01
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

huangya 发表于 2023-5-9 17:38
非常感谢点拨。
如果要测试的话,是不是要买这款3频的?https://www.acwifi.net/23805.html。还有一个测 ...

没注意开源驱动怎么写的,闭源驱动是可以在配置无线参数的dat文件里指定无线走哪个ppe。

点评

闭源驱动的dts方便share吗?。应该还好吧,不是c代码。  详情 回复 发表于 2023-5-9 18:19
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
237176253 发表于 2023-5-9 18:01
没注意开源驱动怎么写的,闭源驱动是可以在配置无线参数的dat文件里指定无线走哪个ppe。 ...

闭源驱动的dts方便share吗?。应该还好吧,不是c代码。

点评

闭源是配置无线密码等的dat文件里配置的,不是dts。开源不是用的dat文件配置。  详情 回复 发表于 2023-5-9 18:25
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

huangya 发表于 2023-5-9 18:19
闭源驱动的dts方便share吗?。应该还好吧,不是c代码。

闭源是配置无线密码等的dat文件里配置的,不是dts。开源不是用的dat文件配置。

点评

哦,第一次接触mtk闭源驱动才了解到dat. 搜索了一下,这里有:https://github.com/hanwckf/immortalwrt-mt798x package/mtk/drivers/wifi-profile/files 下面grep了一下 似乎只有PPEnable, 没有定义使用哪个PPE。  详情 回复 发表于 2023-5-9 18:34
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-28 21:17

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表