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 CPD provides a fast-path that avoids
protocol processing for most large multipacket messages, greatly
accelerating data communication. The CPD also assists the host CPU for
those message packets that are chosen for processing by host software
layers. A context for a message is defined that allows DMA controllers of
the CPD to move data, free of headers, directly to or from a destination
or source in the host. The context can be stored as a communication
control block (CCB) that is controlled by either the CPD or by the host
CPU. The CPD contains specialized hardware circuits that process media
access control, network and transport layer headers of a packet received
from the network, saving the host CPU from that processing for fast-path
messages.