End-to-end logical block guard checking question
Edward A. Gardner
eag at ophidian.com
Fri Jan 23 13:40:43 PST 2004
* From the T10 Reflector (t10 at t10.org), posted by:
* "Edward A. Gardner" <eag at ophidian.com>
At 13:09 23-01-2004, Sheffield, Robert L wrote:
>* From the T10 Reflector (t10 at t10.org), posted by:
>* "Sheffield, Robert L" <robert.l.sheffield at intel.com>
>Ed, I think you're on to something.
>In the SAM-3 section on Service Delivery Subsystem there's a diagram
>Transport layer sitting between the SCSI Application Layer and the
>Interconnect Layer (a.k.a. Service Delivery Subsystem). Looking at the
>Transport Layer services as defined, there's no requirement even for the
>Transport Layer to have any notion of data-blocks. SAM-3 leaves it up to
I think you're looking at SAM-3 Figure 25 in clause 4.15. SAM-3 clause 5.4
gives more details.
The service delivery subsystem comprises the SCSI Transport Protocol Layer
and the underlying things that the transport protocol uses, shown as the
Interconnect Layer in Figure 25. Clause 5.4 specifies (in an abstract
architectural sense) the interface between the SCSI Application Layer
(application client or device server) and the SCSI Transport Protocol Layer.
Clause 5.4.3 defines the data transfer protocol services. The paragraph
beginning "Random buffer access..." on SAM-3 page 65, immediately following
Editor's Note 1, defines random buffer access vs. sequential buffer
access. EMDP controls whether random buffer access is allowed. Sequential
buffer access is always allowed.
Getting back to your question, the device server can request out of order
data transfers (random buffer access), when EMDP is set to one, and it will
of course see blocks out of order if it does so. But the device server
explicitly chose to make the out of order request, so it should know how to
deal with the result. And the initiator chose to allow it to make that
choice, so the initiator should know how to deal with the result as well.
Within each data transfer request, the underlying transport protocol (or
the Interconnect Layer below it) restores data order, if necessary, before
the application layer sees the data.
Edward A. Gardner eag at ophidian dot com
Ophidian Designs 719 593-8866 voice
1262 Hofstead Terrace 719 210-7200 cell
Colorado Springs, CO 80907
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org
More information about the T10