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

    RE: iSCSI: MaxCmdSN rule

    This sentence should be changed to:
    "The target MUST NOT transmit a MaxCmdSN that is less than the last ExpCmdSN-1"
    The paragraph above this states:
    "If the PDU MaxCmdSN is less than the PDU ExpCmdSN-1 (in Serial Arithmetic Sense), they are both ignored."
    which allows MaxCmdSN = ExpCmdSN-1,valid, for the case when the target's command window is closed.
    -----Original Message-----
    From: []On Behalf Of Buck Landry
    Sent: Thursday, February 07, 2002 2:40 PM
    Subject: iSCSI: MaxCmdSN rule

    Hi all, I'm struggling over how to interpret this rule in section 1.2.2 of draft v10:
    >>> The target MUST NOT transmit a MaxCmdSN that is less than
            the last ExpCmdSN.
    This confuses me because it says to me (in some cases) that a target must be able to handle an unlimited number of commands.  For example, let's say the target has just about reached the limit of the commands it can handle:
    T=>(Nop-In) (MaxCmdSN = 1, ExpCmdSN = 1)
    I=>(Scsi Read Cmd) (CmdSN = 1)
    T=>(Data-in) (MaxCmdSN = 1, ExpCmdSN = 2 /* acknowledging scsi read cmd */)
    Now the target may have many more data-ins to transmit.  But according to the rule, since the last ExpCmdSN the target transmitted was 2, the target is now forced to send a MaxCmdSN of 2:
    T=>(Data-in) (MaxCmdSN = 2, ExpCmdSN = 2)
    But this allows the initiator to send another command, even though the target can't handle it!
    Obviously something is wrong with my reasoning here (perhaps my interpretation of 'last ExpCmdSN', or when I"m supposed to acknowledge the scsi cmd); can anybody clarify?


Last updated: Fri Feb 08 12:18:01 2002
8708 messages in chronological order