Hash Key Type 9: 5-Tuple Sorted

Napatech Link™ Software Features

product_line_custom
Intel® PAC
Napatech SmartNIC
category
Feature Description

Hash key data

Hash key type 9 is a 5-tuple where the hash key data is the contents of these packet header fields:

  • 32-bit IPv4 / 128-bit IPv6 source address
  • 32-bit IPv4 / 128-bit IPv6 destination address
  • 16-bit UDP, TCP or SCTP source port number
  • 16-bit UDP, TCP or SCTP destination port number
  • 8-bit IPv4/IPv6 protocol number / next header

The hash key data for hash key type 9 is the same as for hash key type 8 (see Hash Key Type 8: 5-Tuple) except that it is sorted, so that the IPv4/IPv6 address with the highest value is used as hash key data word 0 / 0 – 3 and the IPv4/IPv6 address with the lowest value is used as hash key data word 4 / 4 – 7. This means that frames sent from IP address A to IP address B will generate the same hash value as frames sent from IP address B to IP address A.

Note: The source and destination addresses and ports can be swapped after sorting (see Tuple Swap).

If the IPv4/IPv6 source address is used as hash key data word 0 / 0 – 3, the UDP/TCP/SCTP source port number is placed in the upper 16 bits of hash key data word 8, and the UDP/TCP/SCTP destination port number is placed in the lower 16 bits of hash key data word 8. If the IPv4/IPv6 destination address is used as hash key data word 0 / 0 – 3, the UDP/TCP/SCTP destination port number is placed in the upper 16 bits of hash key data word 8, and the UDP/TCP/SCTP source port number is placed in the lower 16 bits of hash key data word 8.

The IPv4/IPv6 protocol number / next header is placed in a separate 8-bit word.

For IPv4 packets, hash key data words 1 – 3, 5 – 7 and 9 are all zeros for hash key type 9. For IPv6 packets, hash key data word 9 is all zeros for hash key type 9.

Algorithm for hash value generation using hash key type 9 for IPv4 packets

This figure shows the algorithm for hash value generation based on hash key type 9 for IPv4 packets.


Flow chart showing how to generate the hash value based on hash key type 9 for IPv4 packets

Algorithm for hash value generation using hash key type 9 for IPv6 packets

This figure shows the algorithm for hash value generation based on hash key type 9 for IPv6 packets.


Flow chart showing how to generate the hash value based on hash key type 9 for IPv6 packets

Validity

Hash key type 9 is valid for frames containing an IPv4 packet or an IPv6 packet with a UDP, a TCP or an SCTP packet as payload.