本帖最后由 天青色等烟雨 于 2021-5-12 20:39 编辑
小编最近比较清闲,经过反反复复对Intel_X520SR1网卡的设置进行测试,得到一个比较理想的设置方案,供大家参考。
设置以后的效果是:
iperf测试内网速率(服务器网卡的接受速率)1000M/s~1200M/s之间。
hd_speed测试系统虚拟盘的速率(服务器网卡的发送速率)600M/s~650M/s之间。
客户机从DHCP...到桌面锁屏约12秒。
设置如下:
IPsec分载 开启→禁用
RSS处理器的最大数目 8→16
RSS队列的最大数目 8→16
传输缓冲区 512→16384
接受缓冲区 512→4096
大型发送分载V2(IPv4) 开启→禁用
大型发送分载V2(IPv6) 开启→禁用
启动RSS CPU 0→8
中断裁决 开启→禁用
下面是设置的主要选项的说明:IPsec分载 默认开启→禁用
按照微软的说法,IPsec分载技术在WS2016中已弃用,可能会对服务器和网络性能产生负面影响。 此外,MicROSoft 将来可能不支持这些技术。
RSS处理器的最大数目 8→16
RSS队列的最大数目 8→16
打开 "任务管理器" 并检查服务器上的逻辑处理器,而在接收流量看来没有充分利用,则可以尝试将 RSS 队列的数量从默认值从8增加到网络适配器支持的最大值。
传输缓冲区 512→16384
接受缓冲区 512→4096
现在我们主机内存大得很,所以直接开到最大。
微软资料:某些网络适配器将它们的接收缓冲区设置得较低以节省从主机分配的内存。 较低的值会导致数据包丢弃和性能降低。 因此,对于接收密集型的方案,我们建议你将接收缓冲区值增加到最大值。
大型发送分载V2(IPv4) 默认开启→禁用
大型发送分载V2(IPv6) 默认开启→禁用
启动RSS CPU 0→8
我的服务器是4核8线程,设置为8
微软资料:若要避免复杂情况 (和未在实际硬件中实现的非现实情况) (其中可用硬件接收队列数量小于 RSS Cpu 数量),管理员不得将 MaxNumRssCpus 值设置为大于16的值。
中断裁决 默认开启→禁用
微软资料: 使用中断裁决时,请考虑在主机 CPU 节省和延迟之间进行权衡,同时降低主机 CPU 的节省,因为有更多中断,延迟更少。 如果网络适配器不执行中断裁决,但它确实公开了缓冲区合并,则可以通过增加合并的缓冲区数来允许每个发送或接收更多的缓冲区,从而提高性能。
一直以来对于“流控制”网上的资料大多都是禁用,本人多次试验发现开启和禁用都没多大影响,禁用有时反而引起系统虚拟盘的速率下降,大家可以试试。至于其他什么的都保留原默认设置,TCP/UDP校验和也保持默认开启。这个网上资料也是说要关闭的,测试禁用和开启也没发现性能有什么变化。
|