Verifying the RSS Hash Calculation

You should verify your implementation of the RSS hash calculation. To verify your calculations for the NdisHashFunctionToeplitz hash function, use the following secret key data:

0x6d, 0x5a, 0x56, 0xda, 0x25, 0x5b, 0x0e, 0xc2,
0x41, 0x67, 0x25, 0x3d, 0x43, 0xa3, 0x8f, 0xb0,
0xd0, 0xca, 0x2b, 0xcb, 0xae, 0x7b, 0x30, 0xb4,
0x77, 0xcb, 0x2d, 0xa3, 0x80, 0x30, 0xf2, 0x0c,
0x6a, 0x42, 0xb7, 0x3b, 0xbe, 0xac, 0x01, 0xfa

The following table provides verification data for the IPv4 versions of the NdisHashFunctionToeplitz hash function. The destination and source columns contain the input data and the IPv4 columns contain the resulting hash value.

Destination Address :Port Source Address :Port IPv4 only IPv4 with TCP

161.142.100.80 :1766

66.9.149.187 :2794

0x323e8fc2

0x51ccc178

65.69.140.83 :4739

199.92.111.2 :14230

0xd718262a

0xc626b0ea

12.22.207.184 :38024

24.19.198.95 :12898

0xd2d0a5de

0x5c2b394a

209.142.163.6 :2217

38.27.205.30 :48228

0x82989176

0xafc7327f

202.188.127.2 :1303

153.39.163.191 :44251

0x5d1809c5

0x10e828a2

The following table contains verification data for the IPv6 versions of the RSS hash algorithm. The destination and source columns contain the input data and the IPv6 columns contain the resulting hash value. Note that the IPv6 addresses are provided for verification of the algorithm only; they might not make sense as actual addresses.

Destination Address (Port) Source Address (Port) IPv6 only IPv6 with TCP

3ffe:2501:200:3::1 (1766)

3ffe:2501:200:1fff::7 (2794)

0x2cc18cd5

0x40207d3d

ff02::1 (4739)

3ffe:501:8::260:97ff:fe40:efab (14230)

0x0f0c461c

0xdde51bbf

fe80::200:f8ff:fe21:67cf (38024)

3ffe:1900:4545:3:200:f8ff:fe21:67cf (44251)

0x4b61e985

0x02d1feef