Receive side scaling with cryptographically secure hashing
First Claim
1. A method for scheduling receive-side processing of data packets in a multiprocessor computer system comprising a network interface communicably coupled to a network to receive data packets, memory and at least two local processors, the method comprising the steps of:
- receiving a data packet from a remote requesting client over the network;
applying a cryptographically secure hashing function to the data packet, the cryptographically secure hashing function producing a hash value;
applying the hash value to a processor selection policy to identify the local processor as a selected processor to perform receive-side processing of the data packet;
directing the received data packet to the selected processor; and
processing the data packet.
2 Assignments
0 Petitions
Accused Products
Abstract
A new method and framework for scheduling receive-side processing of data streams received from a remote requesting client by a multiprocessor system computer is disclosed. The method receives data packets from the remote requesting client via a network and, for each data packet, applies a cryptographically secure hashing function to portions of the received data packet yielding a hash value. The method further applies the hash value to a processor selection policy to identify a processor in the multiprocessor system as a selected processor to perform receive-side processing of the data packet. The method queues the received data packet for processing by the selected processor and invokes a procedure call to initiate processing of the data packet.
-
Citations
17 Claims
-
1. A method for scheduling receive-side processing of data packets in a multiprocessor computer system comprising a network interface communicably coupled to a network to receive data packets, memory and at least two local processors, the method comprising the steps of:
-
receiving a data packet from a remote requesting client over the network;
applying a cryptographically secure hashing function to the data packet, the cryptographically secure hashing function producing a hash value;
applying the hash value to a processor selection policy to identify the local processor as a selected processor to perform receive-side processing of the data packet;
directing the received data packet to the selected processor; and
processing the data packet. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable medium having computer-executable instructions for facilitating scheduling receive-side processing of data packets in a multiprocessor system computer comprising a network interface communicably coupled to a network to receive data packets, memory and at least two local processors, the computer-readable medium having computer-executable instructions facilitating performing the steps of:
-
receiving a data packet from a remote requesting client over the network;
applying a cryptographically secure hashing function to the data packet, the cryptographically secure hashing function producing hash value;
applying the hash value to a processor selection policy to identify the local processor as a selected processor to perform receive-side processing of the data packet;
directing the received data packet to the selected processor; and
processing the data packet. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method for packet context lookup in a multiprocessor computer system comprising a network interface communicably coupled to a network to receive data streams, memory and at least two local processors, the method comprising the steps of:
-
receiving a data packet from a remote requesting client over the network connection;
applying a cryptographically secure hashing function to the data packet, the cryptographically secure hashing function producing a hash value; and
finding a packet context associated with the hash value by utilizing a packet context lookup table mapping a plurality of hash values to a plurality of packet contexts. - View Dependent Claims (16, 17)
-
Specification