String Profile for Internet Small Computer Systems Interface (iSCSI) Names
RFC 3722
Document | Type | RFC - Proposed Standard (April 2004; No errata) | |
---|---|---|---|
Author | Mark Bakke | ||
Last updated | 2015-10-14 | ||
Stream | IETF | ||
Formats | plain text html pdf htmlized bibtex | ||
Stream | WG state | (None) | |
Document shepherd | No shepherd assigned | ||
IESG | IESG state | RFC 3722 (Proposed Standard) | |
Action Holders |
(None)
|
||
Consensus Boilerplate | Unknown | ||
Telechat date | |||
Responsible AD | Allison Mankin | ||
Send notices to | <ElizabethRodriguez@ieee.org> |
Network Working Group M. Bakke Request for Comments: 3722 Cisco Category: Standards Track April 2004 String Profile for Internet Small Computer Systems Interface (iSCSI) Names Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2004). All Rights Reserved. Abstract This document describes how to prepare internationalized iSCSI names to increase the likelihood that name input and comparison work in ways that make sense for typical users throughout the world. The Internet Small Computer Systems Interface (iSCSI) protocol provides a way for hosts to access SCSI devices over an IP network. The iSCSI end-points, called initiators and targets, each have a globally-unique name that must be transcribable, as well as easily compared. 1. Introduction The iSCSI protocol [RFC3720] provides a way for hosts to access SCSI [SAM2] devices over an IP network. The iSCSI end-points, called initiators and targets, each have a globally-unique name, defined in [RFC3721]. An iSCSI name is a string of UTF-8 [RFC3629] characters that includes a type designator, a naming authority based on domain names, and a unique part within the naming authority. The unique part may be generated based on anything the naming authority deems useful, and may include user input. These names may need to be transcribed (sent between two administrators via email, voice, paper, etc), so a case-insensitive comparison would be desirable. However, these names must often be Bakke Standards Track [Page 1] RFC 3722 String Profile for iSCSI Names April 2004 compared by initiator and target implementations, most of which are done in simple, embedded software. This makes case-sensitive comparison highly desirable for these implementors. However, a completely case-sensitive implementation would result in identifiers such as "example-name" and "Example-Name" being different, which could lead to confusion as these names are transcribed. The goal, then, is to generate iSCSI names that can be transcribed and entered by users, and also compared byte-for-byte, with minimal confusion. To attain these goals, iSCSI names are generalized using a normalized character set (converted to lower case or equivalent), with no white space allowed, and very limited punctuation. For those using only ASCII characters (U+0000 to U+007F), the following characters are allowed: - ASCII dash character ('-' = U+002d) - ASCII dot character ('.' = U+002e) - ASCII colon character (':' = U+003a) - ASCII lower-case characters ('a'..'z' = U+0061..U+007a) - ASCII digit characters ('0'..'9' = U+0030..U+0039) In addition, any upper-case characters input via a user interface MUST be mapped to their lower-case equivalents. This document specifies the valid character set for iSCSI names, along with the rules for normalizing and generating iSCSI names based on user input or other information that contains international characters. In particular, it defines the following, as required by [RFC3454]: - The intended applicability of the profile: internationalized iSCSI names. - The character repertoire that is the input and output to stringprep: Unicode 3.2, specified in section 3. - The mappings used: specified in section 4. - The Unicode normalization used: specified in section 5. - The characters that are prohibited as output: specified in section 6. This profile MUST be used with the iSCSI protocol. Bakke Standards Track [Page 2] RFC 3722 String Profile for iSCSI Names April 2004 2. Terminology The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. Examples in this document use the notation for code points and names from the Unicode Standard [Unicode3.2] and ISO/IEC 10646 [ISO10646]. For example, the letter "a" may be represented as either "U+0061" or "LATIN SMALL LETTER A". In the lists of prohibited characters, the "U+" is left off to make the lists easier to read. The comments for character ranges are shown in square brackets (such as "[SYMBOLS]") and do not come from the standards.Show full document text