|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: iSCSI: DLB's [T.6] 2.3 iSCSI Session TypesAyman, > 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 |