Packet preprocessing interface for multiprocessor network handler
First Claim
1. A method for processing packets in a network, said network including a direct memory access (DMA) device including an input port, a memory unit, a plurality of processors, and an output port, said method comprising:
- receiving a packet through the input port;
performing a mapping function which includes assigning said packet based on information contained in said packet; and
sending said packet to one of said plurality of processors based on the assignment performed by said mapping function.
1 Assignment
0 Petitions
Accused Products
Abstract
A network handler uses a DMA device to assign packets to network processors in accordance with a mapping function which classifies packets based on its content, e.g., bits in one or more header fields. Preferably, the mapping function is implemented as a hash function, which uses a predetermined number of bits from packet as inputs. The result of this function specifies the processor to which the packet is assigned. To make implementation manageable in a high-traffic environment, each processor may be equipped with a queue, which holds pointer information. Such a pointer provides an indication of the area in memory where incoming packet resides. The network handler is particularly useful in a Fibre Channel environment, where the hash function may be implemented to assign all packets from the same sequence to the same processor, thereby resulting in improved processing efficiency.
102 Citations
17 Claims
-
1. A method for processing packets in a network, said network including a direct memory access (DMA) device including an input port, a memory unit, a plurality of processors, and an output port, said method comprising:
-
receiving a packet through the input port;
performing a mapping function which includes assigning said packet based on information contained in said packet; and
sending said packet to one of said plurality of processors based on the assignment performed by said mapping function. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A device for routing packets in a network, comprising:
-
an input port for receiving a packet that includes header information;
a plurality of processors;
a memory unit; and
a direct memory access (DMA) device which performs a mapping function that includes assigning said packet based on said header information, and which routes said packet to one of said plurality of processors based on the assignment performed by said mapping function. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
Specification