Network interface device that fast-path processes solicited session layer read commands
First Claim
1. An apparatus comprising:
- a host computer having a protocol stack and a destination memory, the protocol stack including a session layer portion, the session layer portion being for processing the a session layer protocol; and
a network interface device coupled to the host computer, the network interface device performing fast-path processing on the response such that a data portion of the response is placed into the destination memory without the protocol stack of the host computer performing any network layer processing or any transport layer processing on the response.
3 Assignments
0 Petitions
Accused Products
Abstract
A network interface device connected to a host provides hardware and processing mechanisms for accelerating data transfers between the host and a network. Some data transfers are processed using a dedicated fast-path whereby the protocol stack of the host performs no network layer or transport layer processing. Other data transfers are, however, handled in a slow-path by the host protocol stack. In one embodiment, the host protocol stack has an ISCSI layer, but a response to a solicited ISCSI read request command is nevertheless processed by the network interface device in fast-path. In another embodiment, an initial portion of a response to a solicited command is handled using the dedicated fast-path and then after an error condidtion occurs a subsequent portion of the response is handled using the the slow-path. The interface device uses a command status message to communicate status to the host.
261 Citations
21 Claims
-
1. An apparatus comprising:
-
a host computer having a protocol stack and a destination memory, the protocol stack including a session layer portion, the session layer portion being for processing the a session layer protocol; and
a network interface device coupled to the host computer, the network interface device performing fast-path processing on the response such that a data portion of the response is placed into the destination memory without the protocol stack of the host computer performing any network layer processing or any transport layer processing on the response. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method, comprising:
-
issuing a read request to a network storage device, the read request passing through a network to the network storage device;
receiving on a network interface device a packet from the network storage device in response to the read request, the packet including data, the network interface device being coupled to a host computer by a bus, the host computer having a protocol stack for carrying out network layer and transport layer processing;
performing fast-path processing on the packet such that the data is placed into a destination memory without the protocol stack of the host computer doing any network layer processing on the packet and without the protocol stack of the host computer doing any transport layer processing on the packet;
receiving on the network interface device a subsequent packet from the network storage device in response to the read request, the subsequent packet including subsequent data; and
performing slow-path processing on the subsequent packet such that the protocol stack of the host computer does network layer processing and transport layer processing on the subsequent packet. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21-36. -36. (canceled)
Specification