Subject: iSCSI: v15 issue: iqn. name format inconsistencies

From: "KRUEGER,MARJORIE (HP-Roseville,ex1)" <[email-masked]>
Date: Tue, 16 Jul 2002 14:44:37 -0700

There is currently an inconsistency in the way iSCSI "iqn."-formatted names
are illustrated and described between the iSCSI protocol document and the
iSCSI Naming and Discovery document.  In particular, the separator character
between the reversed-domain name and the rest of the string is defined to be
"." but some examples in the N&D document describe it as ":".

I remember discussion (among the N&D team) that this separator should be ":"
in order to distinguish the reversed domain name from the rest of the
string, but this got lost somewhere along the line.  If there are no
objections to changing this in the main draft, this translates into changes
for both the iSCSI main draft and the N&D draft in cleaning up the examples
and making sure they are consistent (some use "." and some use ":").

Here are the changes I recommend to the main draft:
In section 2.2.6.3

     The iSCSI qualified name string consists of:
       -  The string "iqn."
       -  A date code, in yyyy-mm format.  This date MUST be a date
          during which the naming authority owned the domain name used
          in this format, and SHOULD be the date on which the domain
          name was acquired by this naming authority.  This date code
          uses the Gregorian calendar.  All four digits in the year must
          be present.  Both digits of the month must be present, with
          January == "01" and December == "12".  The dash must be
          included.
       -  A dot ".".
       -  The reversed domain name of the naming authority (person or
          organization) creating this iSCSI name.
       -  A colon ":".
       -  Any string, within the character set and length boundaries,
          that the owner of the domain name deems appropriate.  This may
          contain product types, serial numbers, host identifiers, soft-
          ware keys, or anything else that makes sense to uniquely iden-
          tify the initiator or target.  Everything after "<reversed
          domain name>:", can be assigned as desired by the owner of
          the domain name.  It is the responsibility of the entity that
          is the naming authority to ensure that the iSCSI names it
          assigns are world wide unique.

     For example, "ACME Storage Arrays, Inc.", might own the domain name
     "acme.com". The following are examples of iSCSI qualified names that
     might be generated by "ACME Storage Arrays, Inc."
                   
                    Organization   
                        Naming     String defined by
          Type  Date     Auth      "acme.com" naming authority
          +--++-----+ +------+ +--------------------------------+
          |  ||     | |      | |                                |
          
          iqn.2001-04.com.acme:storage.diskarrays-sn-a8675309
          iqn.2001-04.com.acme:server.megafast900.i95874

In section 11.4 TargetName

     Examples:

       TargetName=iqn.1993-11.com.diskvendor:diskarrays.sn.45678

In section 11.5 InitiatorName

     Examples:

       InitiatorName=iqn.1992-04.com.osvendor:plan9.cdrom.12345
       InitiatorName=iqn.2001-02.com.ssp:users.customer235.host90

<Julian, make sure to delete the last example in the current text, as it's
invalid>

In appendix C

     In the first example, the initiator and target authenticate each other
     via Kerberos:

       I-> Login (CSG,NSG=0,1 T=1)
           InitiatorName=iqn.1999-07.com.os:hostid.77
           TargetName=iqn.1999-07.com.acme:diskarray.sn.88
           AuthMethod=KRB5,SRP,None

etc - all these Login examples that contain iSCSI names need to be fixed.

In appendix D

     Target sends a text response that contains:

       TargetName=iqn.1993-11.com.acme:diskarray.sn.8675309

etc - all TargetName examples need to be fixed.

Several examples in the Naming and Discovery draft need to be fixed - I'll
address that in a separate email.
     
Marjorie Krueger
Networked Storage Architecture
Networked Storage Solutions
Hewlett-Packard

---

From: "Julian Satran" <[email-masked]>
Date: Wed, 17 Jul 2002 11:14:11 +0300

I am completely confused! Marjorie has included the colon as mandatory in 
the format!

Julo

John Hufferd/San Jose/IBM@IBMUS
Sent by: [email-masked]
07/17/2002 10:51 AM

        To:     "KRUEGER,MARJORIE (HP-Roseville,ex1)" <[email-masked]>
        cc:     "Ips Reflector (E-mail)" <[email-masked]>
        Subject:        Re: iSCSI: v15 issue: iqn. name format inconsistencies

Marjorie,
I think it is OK to make some of the example changes you have indicated,
but it is not required to always use the ":"  It depends on the way your
company manages their sub domain names.   It is still valid to use an all
dotted name.

The ":" was needed since a company can hand out subdomains with names like
"mother" and "mother.wonder" to different departments and therefore it
would be possible for both departments to create a name like
"com.ajax.mother.wonder.mydiskarray".  The use of ":" permits the
departments to make their names unique by placing the ":" following their
subdomain portions.  That is, they can use the same characters but
separated with a colon as follows "com.ajax.mother:wonder.mydiskarray" and
"com.ajax.mother.wonder:mydiskarray".

Therefore, I do not think that all examples should include a colon.

.
.
.
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, Cell: (408) 499-9702
Internet address: [email-masked]

"KRUEGER,MARJORIE (HP-Roseville,ex1)" 
<[email-masked]>@ece.cmu.edu
on 07/16/2002 02:44:37 PM

Sent by:    [email-masked]

To:    "Ips Reflector (E-mail)" <[email-masked]>
cc:
Subject:    iSCSI: v15 issue: iqn. name format inconsistencies

There is currently an inconsistency in the way iSCSI  "iqn."-formatted
names are illustrated and described between the iSCSI protocol  document
and the iSCSI Naming and Discovery document.  In particular, the separator
character between the reversed-domain name and the rest of the string  is
defined to be "." but some examples in the N&D document describe it as
":".

I remember discussion (among the N&D team) that this separator  should be
":" in order to distinguish the reversed domain name from the rest of  the
string, but this got lost somewhere along the line.  If there are no
objections to changing this in the main draft, this translates into 
changes
for  both the iSCSI main draft and the N&D draft in cleaning up the
examples and  making sure they are consistent (some use "." and some use
":").

                     Organization
                         Naming     String defined  by
           |  ||     | |      |  |

      Examples:

      Examples:

<Julian, make sure to delete the last example in the current  text, as 
it's
invalid>

In appendix

     In the first  example, the initiator and target authenticate each
other
     via  Kerberos:

In appendix

Several examples in the Naming and Discovery draft need to  be fixed - 
I'll
address that in a separate  email.

Marjorie Krueger

---

From: "Julian Satran" <[email-masked]>
Date: Wed, 17 Jul 2002 11:14:06 +0300

Marjorie,

Here is a differential.
Please check (fast!).

Julo

Type "iqn." (iSCSI Qualified Name) 
This iSCSI name type can be used by any organization which owns a domain 
name. This naming format is useful when an end user or ser-vice provider 
wishes to assign iSCSI names for targets and/or initia-tors. 

To generate names of this type, the person or organization generat-ing the 
name must own a DNS domain name. This domain name does not have to be 
active, and does not have to resolve to an address; it just needs to be 
reserved to prevent others from generating iSCSI names using the same 
domain name.

Because a domain name can expire, be acquired by another entity, and might 
be used to generate iSCSI names by both owners, the domain name must be 
additionally qualified by a date during which the naming authority owned 
the domain name. A date code is provided as part of the "iqn." format for 
this reason.

- The string "iqn.", used to distinguish these names from "eui." formatted 
names. 
- A date code, in yyyy-mm format. This date MUST be a date dur-ing which 
the naming authority owned the domain name used in this format, and SHOULD 
be the first month in which the domain name was owned by this naming 
authority at 00:01 GMT of the first day of the month. This date code uses 
the Grego-rian calendar. All four digits in the year must be present. Both 
digits of the month must be present, with January == "01" and December == 
"12". The dash must be included. 
- A dot ".". 
- The reversed domain name of the naming authority (person or 
organization) creating this iSCSI name.
- A colon ":".
- Any string, within the character set and length boundaries, that the 
owner of the domain name deems appropriate. This may contain product 
types, serial numbers, host identifiers, software keys, or anything else 
that makes sense to uniquely identify the initiator or target. Everything 
after the reversed domain name, followed by colon ":", can be assigned as 
desired by the owner of the domain name. It is the respon-sibility of the 
entity that is the naming authority to ensure that the iSCSI names it 
assigns are worldwide unique. For example, "ACME Storage Arrays, Inc.", 
might own the domain name "acme.com". 
 
The following are examples of iSCSI qualified names that might be
generated by "ACME Storage Arrays, Inc."
 
          Organization    Subgroup Naming Authority 
              Naming      and/or string defined by 
Type  Date     Auth       "acme.com" Naming Authority 
+--++-----+ +------+ +--------------------------------+ 
|  ||     | |      | |                                | 
 
iqn.2001-04.com.acme:storage.diskarrays-sn-a8675309 
iqn.2001-04.com.acme:storage.tape.sys1.xyz 
iqn.2001-04.com.acme:storage.tape.sys1.xyz 

"KRUEGER,MARJORIE (HP-Roseville,ex1)" <[email-masked]>
Sent by: [email-masked]
07/17/2002 12:44 AM

changes for both the iSCSI main draft and the N&D draft in cleaning up the 

 
                    Organization 
                        Naming     String defined by

     Examples:

     Examples:

In appendix C

In appendix D

 
Marjorie Krueger

---

From: "John Hufferd" <[email-masked]>
Date: Wed, 17 Jul 2002 01:38:11 -0700

Julian,
when the ":" part was added to the spec.  we included it as if it was
required.  The text should say (see last line):

In section  2.2.6.3

       -  An optional  colon ":".

===============================================
Julian please add the words "An optional colon ":".
===============================================

To prove this is what was intended I submit the section from the NDT draft.
The NDT stuff says:

1.1.  Constructing iSCSI names using the iqn. format

   iSCSI has given the Organizational naming authority additional
   flexibility by permitting it to hand out local naming authority to
   subordinate organizations.  In this way it will be possible for the
   Organizational naming authority to assign for example, the string
   "storage", to one subgroup naming authority and "storage.tape" to
   another.  In this case the subgroups may add a ":" following their
   assigned subgroup string to ensure ongoing uniqueness. For example:
   "storage:" and "storage.tape:".  Also, additional sub-qualifiers can
   be assigned and separated by a "." as explained above.

   Using this approach, the subgroup with the sub-naming authority
   string of "storage" might, overtime, also create some Tape products.
   In this case, both subgroups might use the same qualifying names.  It
   would be expected in this case that a naming conflict might occur,
   however by using the ":" appropriately the conflicts can be avoided.
   In this example com.acme.storage:tape.sys1.xyz and
   com.acme.storage.tape:sys1.xyz would not be in conflict even though
   the same sub-names are used.

.
.
.
John L. Hufferd

---

From: "Julian Satran" <[email-masked]>
Date: Wed, 17 Jul 2002 16:43:46 +0300

John - it is still confusing - an optional column where? within the string 
(nothing has to be said - we can revert to the old form)?

Julo

07/17/2002 12:43 PM

        To:     Julian Satran/Haifa/IBM@IBMIL
        cc:     "KRUEGER,MARJORIE (HP-Roseville,ex1)" <[email-masked]>, 
[email-masked]
        Subject:        Re: iSCSI: v15 issue: iqn. name format inconsistencies

You need to say:

- An optional colon ":"

A colon is optional and not required.  Many organization will not need the
colon.

And I would recommend

iqn.2001-04.com.acme.storage:diskarrays-sn-a8675309
iqn.2001-04.com.acme.storage:tape.sys1.xyz
iqn.2001-04.com.acme.storage.tape:sys1.xyz
iqn.2001-04.com.small.eng.storage.unit5

In this example the subdomain names that would otherwise conflict are
"storage" and "storage.tape"
The company called small has no possible conflicts and everything is
handled with a "."

.
.
.
John L. Hufferd

Julian Satran/Haifa/IBM@[email-masked] on 07/17/2002 01:14:06 AM

cc:    [email-masked]

Marjorie,

Here is a differential.
Please check (fast!).

Julo

- The string "iqn.", used to distinguish these names from "eui." formatted
names.
- A date code, in yyyy-mm format. This date MUST be a date dur-ing which
the naming authority owned the domain name used in this format, and SHOULD
be the first month in which the domain name was owned by this naming
authority at 00:01 GMT of the first day of the month. This date code uses
the Grego-rian calendar. All four digits in the year must be present. Both
digits of the month must be present, with January == "01" and December
== "12". The dash must be included.
- A dot ".".
- The reversed domain name of the naming authority (person or 
organization)
creating this iSCSI name.
- A colon ":".
- Any string, within the character set and length boundaries, that the
owner of the domain name deems appropriate. This may contain product 
types,
serial numbers, host identifiers, software keys, or anything else that
makes sense to uniquely identify the initiator or target. Everything after
the reversed domain name, followed by colon ":", can be assigned as 
desired
by the owner of the domain name. It is the respon-sibility of the entity
that is the naming authority to ensure that the iSCSI names it assigns are
worldwide unique. For example, "ACME Storage Arrays, Inc.", might own the
domain name "acme.com".

 
       "KRUEGER,MARJORIE 
       (HP-Roseville,ex1)"                      To:        "Ips Reflector 
       <[email-masked]>        (E-mail)" <[email-masked]> 
       Sent by:                                 cc: 
       [email-masked]                    Subject:        iSCSI: v15 

                                        issue: iqn. name format 
       07/17/2002 12:44 AM              inconsistencies 

names
iSCSI Naming and Discovery document.  In particular, the separator

examples

                   Organization
                       Naming     String defined by

    Examples:

    Examples:

In appendix C

In appendix D

Marjorie Krueger

---

From: "KRUEGER,MARJORIE (HP-Roseville,ex1)" <[email-masked]>
Date: Wed, 17 Jul 2002 11:56:01 -0700

The reversed domain name is included in the name string for the purpose of
identifying the naming authority.  The intent of a colon separator after the
domain name was so that the identified naming authority was clearly
separable.  It isn't appropriate (or at least interesting) to identify the
companies' "sub-domain names" in the iSCSI names - they are NOT the names
that are registered with the qualifying date field.  Remember, this domain
name string is NOT intended to have any meaning within the string other than
identification of the naming authority - in the examples you have sited, the
naming authority is ajax.com, NOT mother.ajax.com.  Once the naming
authority is identified, anything beyond the reversed-domain name MUST be
guaranteed unique *by that naming authority*.  

Your intent seems to be to allow "sub-domain names" to be identified as
naming authoritys - I think that's not appropriate, not necessary (and not
particularly interesting to the other "naming authoritys").  If a particular
naming authority (ajax.com) wants to use that scheme it's free to do so, but
the responsible naming authority remains ONLY ajax.com.

I think your examples should be:

"com.ajax:mother:wonder.mydiskarray" and
 "com.ajax:mother.wonder:mydiskarray".

Although I think these are bad examples because it is not advisable for
ajax.com to construct a naming scheme using it's sub-domain names in that
manner.  A companies "sub-domain names" are typically organized in a manner
to facilitate the IT operations of a company, not to separate the business
units.  

Each company should construct a product naming scheme that makes sense for
their product divisions - for instance, a company manufacturing both servers
and storage might construct a naming scheme like:

iqn.1999-05.com.widget:storagearray.product1.<unique string>
for their storage array division and

iqn.1999-05.com.widget:server.fastestyet.<unique string>
for their server initiators.

I stand by my original recommendation.

Marjorie Krueger

> -----Original Message-----
> From: John Hufferd [mailto:[email-masked]]
> Sent: Wednesday, July 17, 2002 12:52 AM
> To: KRUEGER,MARJORIE (HP-Roseville,ex1)
> Cc: Ips Reflector (E-mail)

---

From: "KRUEGER,MARJORIE (HP-Roseville,ex1)" <[email-masked]>
Date: Wed, 17 Jul 2002 15:05:19 -0400

A few minor corrections:

-----Original Message-----
From: Julian Satran [mailto:[email-masked]]
Sent: Wednesday, July 17, 2002 1:14 AM
To: KRUEGER,MARJORIE (HP-Roseville,ex1)
Cc: [email-masked]
Subject: Re: iSCSI: v15 issue: iqn. name format inconsistencies

Marjorie, 

Here is a differential. 
Please check (fast!). 

Julo 

To generate names of this type, the person or organization generat-ing the
name must own a DNS domain name. This domain name does not 

                      ^^^^^ delete DNS, substitute "registered"

  have to be active, and does not have to resolve to an address; it just
needs to be reserved to prevent others from generating iSCSI names using the
same domain name. 

Because a domain name can expire, be acquired by another entity, and might
be used to generate iSCSI names by both owners, the domain name must be
additionally qualified by a date during which the naming authority owned the
domain name. A date code is provided as part of the "iqn." format for this
reason. 

- The string "iqn.", used to distinguish these names from "eui." formatted
names. 
- A date code, in yyyy-mm format. This date MUST be a date dur-ing which the
naming authority owned the domain name used in this format, and SHOULD be
the first month in which the domain name was owned by this naming authority
at 00:01 GMT of the first day of the month. This date code uses the
Grego-rian calendar. All four digits in the year must be present. Both
digits of the month must be present, with January == "01" and December ==
"12". The dash must be included. 
- A dot ".". 

             ^^^ remove the trailing period, it might be confusing    

- The reversed domain name of the naming authority (person or organization)
creating this iSCSI name. 
- A colon ":".  

               ^^^ remove the trailing period, it might be confusing  

 - Any string, within the character set and length boundaries, that the
owner of the domain name deems appropriate. This may contain product types,
serial numbers, host identifiers, software keys, or anything else that makes
sense to uniquely identify the initiator or target. Everything after the
reversed domain name, followed by colon ":", can be assigned as desired by
the owner of the domain name. It is the respon-sibility of the entity that
is the naming authority to ensure that the iSCSI names it assigns are
worldwide unique. For example, "ACME Storage Arrays, Inc.", might own the
domain name "acme.com". 

/begin delete 

/replace with

               Naming     String defined by

07/17/2002 12:44 AM 

                  
                   Organization   
                       Naming     String defined by

    Examples:

    Examples:

In appendix C

In appendix D

    
Marjorie Krueger