Parsing a packet header
First Claim
1. A method for use with a computer system, comprising:
- receiving a packet that includes a header, the header indicating at least one characteristic that is associated with a layer of a multiple layer protocol stack;
parsing the packet with a network controller to extract said at least one characteristic; and
passing a handle from the network controller to indicate said at least one characteristic.
4 Assignments
0 Petitions
Accused Products
Abstract
An intelligent network interface card (INIC) or communication processing device (CPD) works with a host computer for data communication. The device provides a fast-path that avoids protocol processing for most messages, greatly accelerating data transfer and offloading time-intensive processing tasks from the host CPU. The host retains a fallback processing capability for messages that do not fit fast-path criteria, with the device providing assistance such as validation even for slow-path messages, and messages being selected for either fast-path or slow-path processing. A context for a connection is defined that allows the device to move data, free of headers, directly to or from a destination or source in the host. The context can be passed back to the host for message processing by the host. The device contains specialized hardware circuits that are much faster at their specific tasks than a general purpose CPU. A preferred embodiment includes a trio of pipelined processors devoted to transmit, receive and utility processing, providing full duplex communication for four Fast Ethernet nodes.
-
Citations
45 Claims
-
1. A method for use with a computer system, comprising:
-
receiving a packet that includes a header, the header indicating at least one characteristic that is associated with a layer of a multiple layer protocol stack;
parsing the packet with a network controller to extract said at least one characteristic; and
passing a handle from the network controller to indicate said at least one characteristic. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 36, 37, 38, 39, 40, 41, 42, 43)
-
-
15. An apparatus for use with a computer system capable of executing software of a protocol stack to extract at least one characteristic of a packet, comprising:
-
an interface adapted to receive the packet, the packet including a header indicating said at least one characteristic; and
a circuit adapted to;
parse the header to extract said at least one characteristic of the packet without causing the computer system to execute the software, and process the packet based on the extracted characteristic. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A computer system comprising:
-
a processor adapted to execute software of a network stack to extract at least one characteristic of a packet; and
a peripheral device adapted to;
receive the packet, the packet including a header indicating said at least one characteristic, parse the header to extract said at least one characteristic, and at least partially process the packet based on the at least one extracted characteristic. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
44. A method for use with a computer system, comprising:
-
receiving a packet that includes a header, the header including a TCP source port, a TCP destination port, an IP source address, and an IP destination address, and wherein a TCP connection is identified by the TCP source port, the TCP destination port, the IP source address, and the IP destination address;
parsing the packet with a network controller to extract said TCP source port, said TCP destination port, said IP source address and said IP destination address; and
passing an indication of the TCP connection from the network controller.
-
-
45. A computer system comprising:
-
a processor adapted to execute software of a protocol stack, the protocol stack having a TCP protocol processing layer; and
a peripheral device adapted to;
receive a packet from a network, the packet including a header, the header indicating a TCP source port, a TCP destination port, an IP source address, and an IP destination address;
parse the header to extract said TCP source port, said TCP destination port, said IP source address, and said IP destination address;
determine based at least in part on said TCP source port, said TCP destination port, said IP source address, and said IP destination address whether the packet is a fast-path packet; and
perform at least some TCP protocol processing on the packet if the packet is determined to be a fast-path packet.
-
Specification