SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


    [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

    RE: iSCSI : Command Ordering Proposal.



    I'm confused on a couple of points:
    
    - Are we talking about 'CmdSN' (a field that doesn't exist unless I missed
    an update since iscsi-03) or 'CmdRN'?
    
    - Yes, CRN was added to SAM, but I see nothing in iSCSI that utilizes it.
    Is this thread suggesting a new field be added?  I certainly don't see how
    the current CmdRN field could fill the roll of SAM's CRN and its current
    roll concurrently (different rules on initial value, when to reset, etc.)
    
    Seems to me like adding a new CRN field for command ordering (if the
    application so chooses) and re-defining the CmdRN field to only provide the
    flow control satisfies the requirements without overloading the
    functionality of a single field.
    
    
    Charles Binford
    Blue Spruce Networks
    office/cell: (316) 210-6404
    e-fax: (509) 756-4425
    
    -----Original Message-----
    From: owner-ips@ece.cmu.edu [mailto:owner-ips@ece.cmu.edu]On Behalf Of
    csapuntz@cisco.com
    Sent: Friday, January 26, 2001 3:28 AM
    To: Santosh Rao
    Cc: csapuntz@cisco.com
    Subject: Re: iSCSI : Command Ordering Proposal.
    
    Santosh Rao <santoshr@cup.hp.com> writes:
    
    > [1  <text/plain; us-ascii (7bit)>]
    > Julian & All,
    >
    > Proposal :
    > =======
    > CmdSN should be used to enforce ordering only when the Ordered Task Tag
    > attribute is set in the SCSI Command PDU.
    
    
    Santosh,
    
    I believe you may be missing a subtlety to the SCSI task queueing model.
    I may also be missing a subtlety of your argument and, if so, please excuse
    this e-mail.
    
    Consider three commands sent down a FIFO SCSI transport:
    
    	1) Ordered Command
    	2) Simple Command
    	3) Simple command
    
    The ordered command is received first and then the two simple commands.
    The ordered command is guaranteed to be executed before either SIMPLE
    command.
    
    Relevant text from SAM-2 rev 14, sec 7.5.1
    
    "The [simple] task shall not enter the Enabled state until all older Head of
    Queue and older Ordered tasks have ended."
    
    Your proposed change means that CmdSN no longer is able express that
    the Ordered task is "older" that the "simple" task. Thus, an initiator
    might need to stop-and-wait before issuing #2 and #3.
    
    I say "might" because iSCSI now transports SCSI Command Reference
    Numbers (CRNs) in the command PDU. The CRN is a SAM-2 rev. 15 (and
    FCP) construct that tells us which commands are older than others. So,
    in some cases, the CmdSN may no longer be needed at all to tell which
    commands are "older" than others.
    
    Given that we have CRNs, why do we need CmdSNs? Well, CmdSNs provide
    a couple extra features:
    	- ordering on task management (SAM doesn't defined
              that CRNs are used with task management)
            - ordering when application doesn't support CRNs
           (though couldn't the iSCSI layer fabricate CRNs?)
    	- flow control of the iSCSI target queue
    
    -Costa
    
    
    


Home

Last updated: Tue Sep 04 01:05:41 2001
6315 messages in chronological order