神人软件之雷神加速器(万兆网卡跑不满原因之一)

神人软件之雷神加速器(万兆网卡跑不满原因之一)

如果有人喜欢和我一样,在主机里装一个雷神加速器,还喜欢插高规格网卡玩文件传输,那你可有的享福了🥵🥵

事情起因:俩月前买了牢英的E810和许多X520网卡,E810是双口25G版本的,X520就是传统万兆

这里我需要提前说明一下,英特尔的网卡驱动挺离谱的,首先X520是老网卡,给的驱动网页说过期了,英特尔将所有网卡驱动相关的东西打包到一起让人下载了,你需要去下载那个😅。这就算了它驱动包里文件分类也不直白,里面的proxgb代表万兆驱动、PROCGB是100Gbps的驱动,我需要分别打开这两个安装E810和X520的驱动。我就问打开这个包谁能一眼知道驱动在哪

将E810插在主机A上,x520插在主机B上,中间一个万兆光纤连接后,显而易见我就开始iperf打流测试了。提前说明,配置上A是14600k+96G内存+4060ti,B是Xeon gold 6230+512G内存+4090,原则上来说几乎不可能有性能瓶颈来干扰网卡发挥

于是乎搞笑了的来了,单路TCP打流测试里(就是iperf默认),A往B传有万兆(10Gbps),但B往A只有3 Gbps。而在多路下倒是都可以跑满10G


这下难绷了难道我e810的接受侧有问题?😰我尝试改了RX策略、RSS队列、电源策略、中断裁决率、接收缓冲以及各种乱七八糟的东西,基本上能在属性里面改的都改了,我甚至以为是主板南桥问题把网卡插在直连CPU的通道、甚至换个x520在主机A上。整整搞了两天一直是这个问题,直接心态爆炸😭

后面把巨型帧同时拉大倒是能解决,但只能解决一点:A的接收仅仅上升到5Gbps左右。这时我回过味来了,打开任务管理器发现有一个小核在测试时跑满了。我在后台设置半天,终于把网卡进程绑在大核上,这下速度倒是能上到6-7Gbps左右,配合巨型帧可以拉满到9.8。显然这就是一个典型CPU负载性能跟不上的问题…..吗?

一般人估计都这么认为,当时包括我也是。找的理由牵强赴会:什么工作站平台有优化、网上说x520上不开巨型帧是跑不满10G的等等。

我觉得诡异的点在于以14600k的性能,单核性能绝对是吊打服务器那些至强的,人家甚至还能睿频。哪怕是E核也不是吃素的,10G说实话真算不上高压负载。但是我排查半天只能把问题定位在主机本身身上。(其实当时应该在虚拟机里再做一次测试,这样可以把问题定位在软件身上,我一直在怀疑硬件问题)

我把问题汇总,受不了了:

codex——启动!

我把所有问题与排查过程喂给它,让他进后台找。第一轮就运行了俩小时,烧完了我所有的token。它排查到了一个关键问题:

“问题在主机 A 的接收侧内核网络处理路径,具体表现为某个 RSS 目标核心上的 DPC 饱和。”

GPT分析后认为是RSC出问题了,我试了一下发现确实:powersell里查找RSC是看不到e810这张网卡的。

算了继续让codex做,这次又找出一个问题:一个叫 NDIS.SYS!ndisInterruptDpc 的东西:占用了目标逻辑处理器约 74.96% 的单核容量,而 icea.sys 自身的独占占用只有约 5.51%。


它是什么

nfwfp.sys 是雷神加速器安装的 WFP 内核网络驱动

WFP在Windows网络栈中提供多个过滤挂载点,第三方 callout 驱动可以检查、分类、阻止、修改或重定向TCP/IP流量。匹配过滤条件时,Windows会调用驱动的分类函数;没有限制条件的过滤规则甚至可能对所有匹配层流量执行处理。

最合理的技术解释是:

  1. 每个接收数据包进入Windows网络栈时,都经过这个WFP过滤层;
  2. 在MTU 1500、10Gbps下,每秒需要处理大量数据包;
  3. 单条TCP连接又主要固定在一个RSS处理器上;
  4. 额外的过滤、分类、内存访问或路径变化,把单核NDIS DPC推到饱和;
  5. 接收缓冲区来不及处理,出现Receive Discards,吞吐下降。

WFP callout确实可以在内核中直接处理TCP/IP网络数据,甚至拦截传输层流量并将其排队到其他线程处理。

它还可能通过以下方式产生间接开销:

  • 让报文进入额外的WFP分类流程;
  • 改变NDIS批量收包方式;
  • 增加数据结构和内存访问;
  • 破坏或限制某些接收合并、快速路径;
  • 触发后续NETIO、TCPIP、NDIS工作。


删掉这个以后再测试马上就好了,网卡啥都不设置,默认状态仅用小核就能跑满!而且超级稳定。😭😭😭😭😭

另外说明,这玩意很难删除,不是简单的卸载或者强制清除的,你需要先阻止它下次加载到内核里,然后重启电脑再删除:

管理员打开powershell

sc.exe config nfwfp start= disabled

重启

sc.exe delete nfwfp

检查:sc.exe query nfwfp,如果输出未安装就对了

雷神的这个东西其实就是监测你的网络流量,发现是你加速的网址就走加速器渠道。但这玩意不能走代理实现吗?非要加在内核里,而且正常卸载也关不掉😅(我不清楚卸载后不输上面这些东西是不是重启后也行)

编辑于 2026-07-12 · 著作权归作者所有