我有一个小型 pc linux 盒子,比如 intel nuc Dualatom,我在其中运行一些防火墙设置。
之前这台机器运行的是 debian 9,一切正常。
我可以在另外 2 台机器中间使用这台机器以大约 50-70MB/s 的传输速率(千兆位以太网)以非常高的速度发送数据。
现在,自从我将设置移至 debian 12 后,我的速率下降到 9-10MB/s,通过寻找答案,我发现 ksoftirqd 占用了大量 cpu。
我尝试将 MTU 从 1500 提高到 3000,但只实现了很小的改进,如 16 MB/s(同时仍然最大化 CPU),并且我使用的一些适配器不支持超过 4000 的 MTU。我的观点是,有一些东西否则无法正常工作...
与 Debian 9 相比,有 2 个主要变化:
- iptables 现在是 nftables
- 如果我没记错的话,该机器上的驱动程序是从制造商安装的,现在通过非自由固件包直接在 debian 12 中提供
我可以检查哪些设置或日志来解决问题?是否可以更改某些设置以允许使用更多资源(例如 ram),以便允许更长的 irq 队列并提高吞吐量,或者告诉 nftables 以相同的方式处理相同类型的所有后续包,从而加快一切速度?