SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    iSCSI: Out Of Sequence due to null sequence with multiple connections.


    • To: Ips <ips@ece.cmu.edu>
    • Subject: iSCSI: Out Of Sequence due to null sequence with multiple connections.
    • From: Douglas Otis <dotis@sanlight.net>
    • Date: Thu, 22 Mar 2001 14:41:32 -0800
    • Content-transfer-encoding: 7bit
    • Content-type: text/plain; charset="iso-8859-1"
    • Importance: Normal
    • Sender: owner-ips@ece.cmu.edu

    All,
    
    Out of Sequence caused by multiple connections for iSCSI:
    
    I attempted to discuss this issue at the IETF meetings but was tabled by
    David Black for the Wednesday meeting.  At the beginning of the second
    meeting, I was then told I should have attempted to discuss this issue at
    the first meeting, and upon reminding him, I was then advised to take this
    topic to the reflector.  So here it is and hopefully this will reach the
    reflector. If this becomes repeated, my apologies.
    
    Perhaps the inability of the iSCSI protocol to maintain sequence for
    immediate commands is not considered important as was already mentioned, it
    is seldom that it matters.  The point in time it is likely to matter however
    is during these seldom events.  Should a command appear to hang and the
    initiator attempts to bring the target into a known state, the likely method
    per iSCSI would be to issue an immediate command that carries nulled
    sequential information.  The management command could arrive before other
    commands that it was attempting to cancel and as such fail to do so.  Rather
    than bringing the target to a known state, the state becomes less known.
    
    Solutions-
    A) As suggested by David Black, deliver all messages to the target in
    sequence and depend on the task attributes to sort out any problem.  This
    would remove the use of the immediate command at the iSCSI level and thus
    remove a need for the null CmdSN.
    
    B) If the iSCSI sequencer is hung as a result of an unresolved hole in the
    sequence or due to a resource limitation delivering to the target, use a
    flag within transport to indicate the need for immediate processing but
    assign CmdSN to the next sequential value.  Commands normally before the
    immediate command pending a send to the target would then be rejected back
    to the initiator to allow the initiator to resolve their status.
    
    C) Place the immediate command on all connections and filter duplicates
    based on the initiator tag.  From the duplicate packets, the relative
    position of this management command could be deduced.
    
    I favor B myself as it assures the acknowledgement of these immediate
    commands as well as eliminates the need for sending duplicates.  David's
    solutions assumes there will not be a need to deal with the iSCSI sequencer
    in the event of a problem.  Sending commands back to the initiator by means
    of rejection should allow a freeing of the iSCSI sequencer lock and ensures
    the initiator can track the state of the target.  The present scheme does
    not allow management nor provide for condition created by multiple
    connections.
    
    Doug
    
    
    


Home

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