[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Google
  Web www.spinics.net

Re: Reg: Bidirectional command format ?





Eddy Quicksall wrote:

Is anyone aware of any bidi SCSI commands?


Look at the OSD command set (on the T10 site). I think all the OSD commands are bidi. I think that's the only command set now with bidi commands.

Paul


Eddy

----- Original Message ----- From: "William Studenmund" <wrstuden@wasabisystems.com>
To: "Praveen Madhavan" <praveenm78@yahoo.com>
Cc: <ips@ietf.org>
Sent: Friday, June 16, 2006 3:04 PM
Subject: Re:  Reg: Bidirectional command format ?


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Jun 16, 2006, at 5:37 AM, Praveen Madhavan wrote:

Hi Folks,

Can any one point me the frame format of bidirectional command in case of iSCSI & FCP ?.. I was trying to route bidirectional command recv'd from iSCSI initiator to FC Target..

Here is the iSCSI PDU format for bi-direct command recv from initiator
---------------------------------------------------------------------- -------------------------- | BHS (48bytes) | | R & W bit set to ONE, | | Expected xfer len = 0x200 | | Total AHS Length = 2 (8bytes) |
|        SCSI CDB = Write(10)  Transfer length = 00 01 ( 512 bytes)  |
---------------------------------------------------------------------- --------------------------| | AHS ( 8 bytes) | | Expected Read data length = 0x200(512 bytes) | ---------------------------------------------------------------------- ----------------------------

Here is the FCP format for bi-direct command that i frame for sending it to target.

---------------------------------------------------------------------- -------------------------- | FC-Header (24bytes) | |--------------------------------------------------------------------- --------------------------- | FCP-Header(36 bytes) | | R & W bit set to ONE, | | Additional CDB length = 0 | | SCSI CDB = Write(10) Transfer length = 00 01 ( 512 bytes) | | FCP_DL = 0x200 ( 512 bytes) |
|        FCP_BIDIRECTIONAL_READ_DL = 0x200(512)                     |
---------------------------------------------------------------------- ---------------------------|

Well, I am not quite sure about the CDB values in case Bidir commands..
Will Bi directional cmds use Write CDB(10) or Read CDB (10) ? ..


No. Read and Write in normal sizes (6, 10, 12, 16) are unidirectional.

Each specific command has either no data phase (test unit ready), has at most a data-out phase (Write for instance), at most a data-in phase (Read), or is bidirectional.

How can i control following bidi- operation in case of iSCSI & FCP ?
1.bidirectional command with read before write operation
2.bidirectional command with write before read operation


You really don't need to do anything different for BiDi commands, other than be able to keep both a Write and a Read residual. As you note, the SCSI Command Request will indicate what data phases the initiator expects, you need only map them along.

How does the target announce/control data flow in FCP? You need only pass that information on to the iSCSI layer. If the FCP target sends you data, then you send the initiator a bunch of Data-In PDUs. However it is that FCP controls data openings translates into R2Ts to the iSCSI initiator.

Take care,

Bill
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Darwin)

iD8DBQFEkwDZDJT2Egh26K0RAjqYAJ4yfTh+dkihI/Ha0RGhZN5NJ22zUQCfRc1L
7fPzAAxZZUa3mX6JsaEMPYs=
=a55F
-----END PGP SIGNATURE-----

_______________________________________________
Ips mailing list
Ips@ietf.org
https://www1.ietf.org/mailman/listinfo/ips


_______________________________________________
Ips mailing list
Ips@ietf.org
https://www1.ietf.org/mailman/listinfo/ips


_______________________________________________
Ips mailing list
Ips@ietf.org
https://www1.ietf.org/mailman/listinfo/ips

[IETF]     [Linux iSCSI]     [Linux SCSI]     [Linux Resources]     [Yosemite News]     [IETF Announcements]     [IETF Discussion]     [SCSI]

Add to Google Powered by Linux