RSS通过一定的hash算法实现接收方向上的负载均衡,使报文尽量平均地分配到不同队列,从而对应到不同的CPU核,降低因CPU切换调度带来的性能损失。
RSS功能主要包含驱动的规则配置操作和队列接收操作,微码进行hash计算和查表选队列操作,MPU主要负责模板表、间接表的管理和相关驱动命令配置查询操作。
RSS业务相关的接口主要是Hash Function、Hash Type、Hash Key和Indirect Table的配置查询操作,与RSS强相关的关键数据如表1所示。
Hash Function
XOR\TOEP
Hash Type
IPV4\TCP_IPV4\UDP_IPV4\IPV6\TCP_IPV6
\UDP_IPV6\IPV6_EX\TCP_IPV6_EX\UDP_IPV6_EX(其中UDP_IPV6_EX Linux不支持)
Hash Key
40bytes
Indirect Table
256byte