SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    RE: iSCSI: DLB's [T.6] 2.3 iSCSI Session Types



    Ayman,
    
    > The issue that came up before was if a discovery session could be kept
    open,
    > why not allow the initiator and target to send NOPs, and allow the target
    to
    > send Async messages when new targets become available?
    > 
    > I don't mean to bring up this issue again at this stage, but using "MAY"
    > leaves room for implementations that want to support this. If we allow NOP
    > and Async PDUs on a discovery session, then changing "MAY" to "MUST" will
    be
    > fine.
    
    That would be fine with me as long as we spell out which Async PDUs are used
    and what they do - it looks like codes 1 (target requests logout), 3 (target
    is closing session) and 4 (target requests negotiation) would be acceptable,
    with code 4 having the meaning "please issue a Send Targets" when used on a
    discovery session.  The text to specify this needs to be more than just the
    single "MUST" in order to avoid applying a "MUST" to long-lived discovery
    session support.  Here's an attempt, but it's a bit long and could use
    some editing:
    
    On a discovery session, an Initiator:
    - MUST NOT issue PDUs other than Send Targets, a logout request to close
    	the session, and NOP-Out.
    - MAY ignore NOP-In and Async Message PDUs from the target, but MUST NOT
    	treat NOP-In and Async Message PDUs with codes 1, 3, and 4 as
    errors.
    	(Hmm ... ignoring code 1 [request logout] and 3 [target is closing
    	session] does not seem like a good idea, although it does work as
    	the target can time-out and tear down the session itself).
    - MUST treat an Async Message PDU with code 4 (negotiation request) as a
    	request to issue a Send Targets command, although the initiator MAY
    	ignore the request.
    - MUST treat as a protocol error (terminate session), any
    	received PDU other than (1) NOP-In, (2) Async Message and (3)
    	responses to PDUs issued by the Initiator.
    
    On a discovery session, a Target:
    - MUST accept and respond to Send Targets and a logout request to
    	close the session.
    - MAY ignore NOP-Out PDUs from the initiator, but MUST NOT treat them as
    	errors.
    - MUST NOT issue PDUs other than NOP-In, Async Message PDUs with codes 1
    	(request logout), 3 (announce session closure) and 4 (request
    	negotiation), and PDUs required to respond to Send Targets and
    	a logout request from the Initiator.
    - MUST treat as a protocol error (terminate session), any
    	received PDU other than (1) a text PDU containing Send Targets,
    	(2) a Logout Request to close the session, and (3) NOP-Out.
    
    My underlying motivation is that if we're going to allow long-lived
    discovery sessions, it behooves us to specify how they work sufficiently
    for interoperability.
    
    Thanks,
    --David
    ---------------------------------------------------
    David L. Black, Senior Technologist
    EMC Corporation, 42 South St., Hopkinton, MA  01748
    +1 (508) 249-6449            FAX: +1 (508) 497-8018
    black_david@emc.com       Mobile: +1 (978) 394-7754
    ---------------------------------------------------
    


Home

Last updated: Wed Jul 10 06:18:53 2002
11236 messages in chronological order