Computer system and network interface supporting class of service queues
First Claim
1. A method of managing packet transmission, the method comprising:
- determining a classifier for an incoming packet comprising a data payload destined for an application;
storing the incoming packet in a buffer memory;
storing a plurality of lists of buffer descriptors for a plurality of packets stored in the buffer memory, the lists of buffer descriptors having respective priorities;
generating a pointer to a location in the buffer memory at which a predetermined data field in the incoming packet is found;
using the pointer to retrieve data associated with the predetermined data field from the buffer memory;
determining a priority for transferring the data payload associated with the retrieved data from the buffer memory to a host system memory based on data fields accessed from the plurality of packets and a rule parameter; and
using, by a processor, the pointer to transfer the data payload associated with the retrieved data from the buffer memory to an application running in the host system memory according to the determined priority; and
assigning the plurality of packets in the buffer memory to a buffer descriptor in one of said plurality of lists of descriptors according to the determined priority for transferring the data payload.
3 Assignments
0 Petitions
Accused Products
Abstract
A data processing system adapted for high-speed network communications, a method for managing a network interface and a network interface for such system, are provided, in which processing of packets received over the network is achieved by embedded logic at the network interface level. Incoming packets on the network interface are parsed and classified as they are stored in a buffer memory. Functional logic coupled to the buffer memory on the network interface is enabled to access any data field within a packet in a single cycle, using pointers and packet classification information produced by the parsing and classifying step. Results of operations on the data fields in the packets are available before the packets are transferred out of the buffer memory. A data processing system, a method for management of a network interface and a network interface are also provided by the present invention that include an embedded firewall at the network interface level of the system, which protects against inside and outside attacks on the security of data processing system. Furthermore, a data processing system, a method for management of a network interface and a network interface are a provided by the present invention that support class of service management for packets incoming from the network, by applying priority rules at the network interface level of the system.
80 Citations
17 Claims
-
1. A method of managing packet transmission, the method comprising:
-
determining a classifier for an incoming packet comprising a data payload destined for an application; storing the incoming packet in a buffer memory; storing a plurality of lists of buffer descriptors for a plurality of packets stored in the buffer memory, the lists of buffer descriptors having respective priorities; generating a pointer to a location in the buffer memory at which a predetermined data field in the incoming packet is found; using the pointer to retrieve data associated with the predetermined data field from the buffer memory; determining a priority for transferring the data payload associated with the retrieved data from the buffer memory to a host system memory based on data fields accessed from the plurality of packets and a rule parameter; and using, by a processor, the pointer to transfer the data payload associated with the retrieved data from the buffer memory to an application running in the host system memory according to the determined priority; and assigning the plurality of packets in the buffer memory to a buffer descriptor in one of said plurality of lists of descriptors according to the determined priority for transferring the data payload. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for transferring packets between a network medium and a host bus system, said method comprising:
-
accessing data fields in a plurality of packets stored in a buffer memory, wherein the buffer memory is to store packets in transit between the network medium and the host bus system; and determining, by a processor, a priority for transfer of the plurality of packets out of the buffer memory based on the accessed data fields and a rule parameter; storing a plurality of lists of buffer descriptors for the plurality of packets stored in the buffer memory, the lists of buffer descriptors having respective priorities; and assigning the plurality of packets in the buffer memory to a buffer descriptor in one of said plurality of lists of descriptors according to the determined priority for transfer. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification