Subject: Re: iSCSI: Case-sensitivity in iSCSI names

From: "Julian Satran" <[email-masked]>
Date: Wed, 18 Jul 2001 18:42:29 +0300

John,

Case insesitive is bad for I18N

Julo

"John Hufferd" <[email-masked]> on 18-07-2001 08:53:56

Please respond to "John Hufferd" <[email-masked]>

To:   Mark Bakke <[email-masked]>
cc:   IPS <[email-masked]>
Subject:  Re: iSCSI: Case-sensitivity in iSCSI names

Mark,
You are talking about things that are entered by administrators.  They will
have a lot of finger checks.  I do not see why we would like to encourage
admin problems by making these things Case Sensitive.  Imagine, one
administrator trying to tell another over the phone, what the name should
be used.

I would vote for Case insensitive names.

.
.
.
John L. Hufferd
Senior Technical Staff Member (STSM)
IBM/SSG San Jose Ca
Main Office (408) 256-0403, Tie: 276-0403,  eFax: (408) 904-4688
Home Office (408) 997-6136
Internet address: [email-masked]

Mark Bakke <[email-masked]>@ece.cmu.edu on 07/17/2001 01:28:52 PM

Sent by:  [email-masked]

To:   IPS <[email-masked]>
cc:
Subject:  iSCSI: Case-sensitivity in iSCSI names

We are attempting to wrap up all of the issues surrounding
the creation and comparison of iSCSI initiator and target
names.  One of these is whether the names are case-sensitive.

The last naming & discovery draft stated that the names are
case-insensitive; this was to allow better transcribability
in cases where names were communicated outside the automated
discovery processes.

This comes at some expense, particularly since these names
are defined to allow UTF-8 encoding of international character
sets.  Initiators and targets would have to include code to
compare these sets.

To simplify implementation and interoperability, it has been
recommended that we make iSCSI names case-sensitive instead.

I am fine with doing this, and I think that we could even
get some of the usability back by adding these rules:

- iSCSI names MUST be case-sensitive, and compared strictly
  byte-for-byte.

- iSCSI names SHOULD be generated in a case-insensitive
  manner.

I'm not sure how to properly word the latter, but the intent
is that someone generating the names would not produce both:

  iqn.9.com.cisco.myiscsithing

and

  iqn.9.com.cisco.MyIscsiThing

since a user would be likely to confuse these.  Again, it doesn't
affect the protocol itself, just its usability.

Any thoughts?  Will it hurt anyone's plans if iSCSI names were
case-sensitive?

--
Mark A. Bakke
Cisco Systems
[email-masked]
763.398.1054

---

From: Mark Bakke <[email-masked]>
Date: Wed, 18 Jul 2001 16:18:23 -0500

Here are the new rules:

- iSCSI names are case-sensitive.
- iSCSI names are UTF-8 encoded.
- iSCSI names are compared byte-for-byte; there is no need
  to translate them to upper or lower case.

The above will keep iSCSI implementations simpler.

Now, from the user side, we don't want to see conflicts like

  iqn.0.com.acme.foo42

and

  iqn.0.com.acme.Foo42

The above are technically not the same name to an iSCSI
implementation.

However, it would not be in anyone's best interest for
acme.com to assign two names that are identical if they
were both translated to lower case.

So we need a few MUSTs, or at least SHOULDs, to make this
easier on anyone having to type these in:

- An iSCSI name MUST NOT be generated such that if converted
  to lower case, it conflicts with any other iSCSI name
  converted to lower case.

- iSCSI names SHOULD be generated to use lower case of their
  appropriate character set.

- An iSCSI implementation MAY accept an iSCSI name that, if
  converted to lower case, matches another iSCSI name that it
  recognized.

The third rule depends on the first being implemented, and
gives implementations the flexibility to do case-insensitive
comparisons if they so choose.

What do you think?

Mark

-- 
Mark A. Bakke
Cisco Systems
[email-masked]
763.398.1054