Patent ID: 7765336

Claim:
An apparatus for transmitting data between a host and a target over a frame-based communications network, comprising: a local processor configured for receiving a data transmission request from the host or the target to transmit data over the frame-based communications network; one or more hardware-based frame transmit engines coupled to the processor, each frame transmit engine configured for, in response to the request received at the processor, automatically mapping the data into frames to be transmitted without involving the processor, wherein each frame transmit engine is further configured for: determining one or more addresses, byte counts and a protection scheme of the data to be transmitted in a particular sequence of frames, determining a frame size of the frames to be transmitted, determining one or more free frame buffers for storing the frames prior to transmission, generating and storing headers for the frames to be transmitted, and combining the headers, data and check bytes determined by the protection scheme into the frames for transmission over the network; and a direct memory access (DMA) engine coupled to the one or more frame transmit engines and configured for reading the data to be transmitted in accordance with the addresses and byte counts determined by one of the frame transmit engines, calculating the check bytes for the data in accordance with the protection scheme, and storing the data and check bytes into the one or more free frame buffers in a local memory accessible to the processor.