×

Matching port pick for RSS disaggregation hashing

  • US 9,712,460 B1
  • Filed: 08/26/2013
  • Issued: 07/18/2017
  • Est. Priority Date: 08/26/2013
  • Status: Active Grant
First Claim
Patent Images

1. A method for managing communications, the method comprising:

  • receiving, at a Processing Unit (PU) within a plurality of PUs, a first network packet from a network interface controller (NIC) card that is configured to perform a Receive Side Scaling (RSS) hash to select the PU;

    generating a first flow key based on data within the first network packet;

    selecting an initial source port number;

    generating a second flow key using the initial source port number and source network address information internal to the PU;

    performing a first RSS hash on at least a portion of the first flow key, and a second RSS hash on at least a portion of the second flow key;

    determining a delta error between the first RSS hash and the second RSS hash;

    when the delta error is determined to be non-zero, performing actions including;

    using the delta error as an index to a swizzle table to identify a local port correction value that is based on an initialization vector, wherein the swizzle table is populated with local port correction values that are valid for initialization vectors employed for selecting initial source port numbers;

    performing an exclusive-or on the initial source port number and the local port correction value to generate a modified source port number; and

    generating network packets using the source network address information internal to the PU and the modified source port number, to ensure that a second network packet returning to the network device is hashed using the RSS in the NIC to select the same PU as having received the first network packet, wherein the modified source port number is employed to generate headers for the network packets; and

    when the delta error is determined to be zero, generating network packets using the source network address information internal to the PU and the initial source port number to ensure that the second network packet returning to the network device is hashed using the RSS in the NIC to select the same PU as having received the first network packet.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×