|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: iSCSI: ISID progressDavid, More comments in line Jim Hafner Black_David@emc.com on 10/10/2001 03:48:55 pm To: Jim Hafner/Almaden/IBM@IBMUS, ips@ece.cmu.edu cc: Subject: iSCSI: ISID progress This message is shorter than my last one, so that's at least a superficial indication of progress ;-). Jim and Julian had four comments/objections to the notion of using a text key to indicate iSCSI Initiator Port Name. Summarizing and responding: Jim (a): Optional use of port name is ok as far as SAM-2 is concerned, but is odd. Indeed it is odd, but given the choice between an odd mapping of SAM-2 to iSCSI and allowing odd behavior of iSCSI implementations, I'll take the former. <JLH> I'm not sure what "odd behavior of iSCSI implementations" you're referring to here. </JLH> Jim (b): Would require at least as much coordination above the session level of iSCSI as ISIDs. That would be incorrect. 128 bits is sufficient to eliminate coordination. The reference for this is an expired Internet- Draft, draft-leach-uuids-guids-01.txt, that can still be found on the web at: http://casbah.org/cbRFC/misc/draft-leach-uuids-guids-01.txt http://globecom.net/ietf/draft/draft-leach-uuids-guids-01.html I'm not seriously proposing that port name generation be done in this fashion, but rather providing a widely used counter- example to Jim's statement. Note that a network interface MAC is likely to be available to many iSCSI implementations. <JLH> I glanced through that draft and certainly don't think it is the right approach to this problem. However, if you/we believe that by simply making the equivalent of the ISID field or portname text value big enough, we can find a solution to the "coordination problem", why can't we just *require* that sessions have a SCSI port name (extension to iSCSI Name) that is long enough to solve the weak or no coordination problem, instead of making this "TBD"? I've argued that having the SCSI Portname is valuable. I've argued that there wasn't any net value in putting the name in a key because I already had the ISID field as part of the "name space for the session endpoint". But if the claim is simply the ISID isn't big enough, then I don't have a problem with effectively making them bigger (either in the header or in a key value). I've even suggested one way to do that by embedding the initiator portal group tag in the value. But another way is to embed the OUI of the HBA (except for the cases where there isn't an HBA) or embed one of the MACs of one of the nics (except for the cases where there isn't a nic, e.g., dialup), etc. But we'd have to solve all the possible cases (all of which the NDT had to deal with for iSCSI Names in the first place). So, are we at the point where (for this alternative proposal): (a) we just need a bigger (than 2byte ISID) field for the SCSI portname extension (b) we just need an algorithm that lets each component that wants to generate such a name can do so without collision concerns? </JLH> Jim (c): How to describe model when the text key is optional? "Is it that all initiator session endpoints that don't provide this text key have *implicit* unique names and only when the text key is presented does the name get explicit (and then possibly not be unique)? In that case, the key would have to be supplied in login next to the InitiatorName. Yes and yes when it's used, in that order. Jim's comment (a) about this being odd applies. Julian: ... and have as much chances to blow a session as ISID That would also be incorrect. As previously stated, ISID conflict is fatal to one of the sessions involved (one cannot change the ISID and continue), and can occur in any system that opens parallel sessions. This text key conflict need not be fatal (one can change the text key and continue negotiation) and can only occur in systems that want to use the new port-spanning persistent reservation functionality, as other systems won't use the text key. Also see the draft noted in response to Jim (b) above; Julian's "have as much chance" language is incorrect. <JLH> I think this is somewhat misleading about the cost ("fatal"). If we could find a reasonable model for "reject: ISID in use" (rather than "blow away the old session"), then the "fatal to one of the sessions" is a nit. This would happen on the first exchange of a connection so starting over isn't any big deal (we may not even have to require connection drop, just restart of the initial message with new ISID). The same would happen with the key as that would have to be somewhere in the pre-full feature phase (but in this case it could happen anywhere in that phase). </JLH> As previously noted, I can also deal with requiring conservative reuse of ISIDs as a means to address this situation. Thanks, --David --------------------------------------------------- David L. Black, Senior Technologist EMC Corporation, 42 South St., Hopkinton, MA 01748 +1 (508) 435-1000 x75140 FAX: +1 (508) 497-8500 black_david@emc.com Mobile: +1 (978) 394-7754 ---------------------------------------------------
Home Last updated: Thu Oct 11 12:17:24 2001 7195 messages in chronological order |