Fast-path apparatus for receiving data corresponding to a TCP connection
First Claim
1. A system comprising:
- a network;
a host coupled to the network, the host containing a central processing unit (CPU); and
a device coupled as an interface between the host and the network, the device including a first processor that Transmission Control Protocol (TCP) processes a first TCP header that is contained in a first message packet, the device including a second processor that TCP processes a second TCP header that is contained in a second message packet.
3 Assignments
0 Petitions
Accused Products
Abstract
A system for protocol processing in a computer network has an intelligent network interface card (INIC) or communication processing device (CPD) associated with a host computer. The INIC provides a fast-path that avoids protocol processing for most large multi-packet messages, greatly accelerating data communication. The INIC also assists the host for those message packets that are chosen for processing by host software layers. A communication control block for a message is defined that allows DMA controllers of the INIC to move data, free of headers, directly to or from a destination or source in the host. The context is stored in the INIC as a communication control block (CCB) that can be passed back to the host for message processing by the host. The INIC 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 with separate processors devoted to transmit, receive and management processing, with full duplex communication for four fast Ethernet nodes.
-
Citations
25 Claims
-
1. A system comprising:
-
a network;
a host coupled to the network, the host containing a central processing unit (CPU); and
a device coupled as an interface between the host and the network, the device including a first processor that Transmission Control Protocol (TCP) processes a first TCP header that is contained in a first message packet, the device including a second processor that TCP processes a second TCP header that is contained in a second message packet. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
a network;
a host coupled to the network, the host containing a central processing unit (CPU); and
a device coupled as an interface between the host and the network, the device including a first mechanism that protocol processes a first packet received from the network, the first packet containing a first Transport Control Protocol (TCP) header, the device including a second mechanism that protocol processes a second packet transmitted to the network, the second packet containing a second TCP header, the second TCP header being TCP processed by the second mechanism at the same time as the first TCP header is TCP processed by the first mechanism. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system comprising:
-
a network;
a host coupled to the network, the host containing a central processing unit (CPU); and
a network interface device coupled between the host and the network, the network interface device including a first processor that processes a first Transmission Control Protocol (TCP) header that is included in a first packet, the network interface device including a second processor that processes a second TCP header that is included in a second packet, the network interface device including header processing hardware to parse the first packet and determine that the first packet includes the first TCP header. - View Dependent Claims (20, 21, 22, 23, 24, 25)
-
Specification