|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] iSCSI URL schemeWith my co-chair hat off ... I've had a long-running concern about the URL naming in iSCSI that Daniel's example allows me to express concisely ... > Let's imagine a large array of fast, reliable and featuresome storage---an > IBM Shark box say. B-) This box has many user accounts, and is being used > in the context of a storage service provider. The login sequence might go > something like this.... > > I: Hello Shark---I'm an initiator. My authentication ID is "Robert Smith, > Seattle, next to the donut store, hjhhaskjanbt112kg9d988". > > S: Hello initiator. I'll be your server---we need a secure connection: > switch to "hjcnneamchjsdkfsdsd394njsdf89423". (Trivial example.) > > I: <encrypted> Alright! I want to connect to > "scsi://niceshark.acme.com/bobsstorage/san3?wwn=0x7b4d72658a7410db" This query is a *major* departure from SCSI practice at this level. The SCSI approach would be more along the lines of: I: <encrypted> Alright! Show me all your LUNs that I can access. (i.e., REPORT LUNS) at which point the Initiator then does additional SCSI commands to figure out what each LUN actually is. One of these commands could be to read (or attempt to read) the WWN for each LUN. For disk storage that is under a volume manager, there's another round of discovery later on in which the volume manager reads the volume label and figures out what the storage is independent of any information that was used to discover it. Returning to the three examples: > Then we have a choice... > > S: <encrypted> Great---off you go and have a nice day. > > or > > S: <encrypted> Sorry---you haven't got permission to use that any more/it > doesn't exist. This is an authorization check that can be implemented by a combination of accepting/denying the connection based on the client authentication information and/or only reporting the LUNs to which the Initiator has access (and after an exhaustive search, the Initiator may discover that a LUN it used to have access to [based on WWN} doesn't seem to be there any more). Fibre Channel makes widespread use of a mechanism similar to the latter at the target discovery level (nameserver based soft zoning, where the fabric nameserver only tells an Initiator about Targets it can access, rather than all the Targets it knows about). > or (just after they buy more storage) > > S: <encrypted> Ok, that URL has been changed to > "scsi://bobstorage.san3.acme.com:9003/". Please come again. This is a common computer science solution to a large set of problems; introduce another level of indirection ;-). While I understand the solution, I'm not at all clear on what the problem is and why it needs to be solved in this fashion. There's been a lot of traffic on this, have I missed something? The counterbalance on the other side of this issue is that iSCSI should fit into existing SCSI frameworks for storage discovery, access, and management (e.g., in operating systems). Every time a new sort of naming is introduced, that integration difficulty goes up considerably. The worked example is that Fibre Channel had to introduce WWNs or their equivalent for some fairly obvious functional reasons, but introducing WWNs to operating systems that started out only understanding parallel SCSI caused no end of pain and suffering. Something that's going to rear its ugly head here is discovery. SCSI discovery is fundamentally based on a "bus walker" paradigm in which low level logic does discovery based on a comprehensive search (i.e., try every possible target on the parallel bus). When Fibre Channel introduced WWNs, this broke the "try every possible target" approach (can't iterate through every 64 bit WWN and still boot quickly), and it was fixed by a multi-round distributed address assignment scheme for FC-AL (don't ask ;-) ) and the ability to query the nameserver for all known ports in FC-SW. FWIW, FC-SW tried to use LDAP for nameservice and gave up; something considerably simpler was implemented. Among the practical problems that resulted from WWN introduction is that booting over Fibre Channel took a while to get working because FC broke the typical "first LUN of first target contains a boot image" mechanism used in boot code. iSCSI has the opportunity to repeat the Fibre Channel experience of changing the way things work in a fashion that will take a while to work its way through systems. If this is done, it needs to be done for a good reason. One question to think about is "If all SCSI targets are named by URLs on the server, where do the URLs come from?" An answer of the form "yet another config file or set of registry entries" is an obstacle to adoption, because tools have to be written to manage these, and administrators have to learn how to use them, and ... --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: Tue Sep 04 01:06:54 2001 6315 messages in chronological order |