------------------------------------------------------------------------------------------------------
Use of the IEEE Registration Authority assigned "company_id"
with the ANSI X3.230 FC-PH Fibre Channel specification and its extensions
Bob Snively
February 24, 1997
-------------------------------------------------------------------------------------------------------
The IEEE administers the assignments of 24-bit company_id values. The assignments of these values are public, allowing a user of an identifier defined by ANSI X3.230 to identify the manufacturer that provided the value. The IEEE/RAC has no control over the assignments of the vendor-specified fields and assumes no liability for assignments of duplicate identifiers.
A company shall use the same IEEE company_id for all its IEEE Registration Authority based identifiers until the identifier spaces using that company_id are substantially exhausted.
The IEEE Registration Authority for a fee provides a registered number that is guaranteed to be unique. The unique number may be provided in either of two formats, depending on the requirements of the manufacturer. The number is provided as a 6 hexadecimal number value as the IEEE company_id. The number is provided as three hexadecimal-digit pairs representing the 3 octets of the 24-bit number as the IEEE Organizationally Unique Identifier (OUI). The same number is used by a manufacturer for all its products that use an IEEE registration. A manufacturer shall base all its identifiers on the same number, even if the identifiers have different formats. A manufacturer shall not purchase a new company_id until at least one of the identifier spaces using the company_id is substantially exhausted. Other identifier spaces shall continue using the original company_id until they are also exhausted.
The IEEE Registration Authority assigned "company_id" is the "IEEE company identifier" defined in the Fibre Channel Standard, ANSI X3.230-1994. Two formats are defined within FC-PH, while two additional formats are defined in the ANSI X3T11 document (X3T11/96-467) dated December 12, 1996, entitled "New identifier formats based on IEEE registration".
In the context of Fibre Channel, a set of unique world-wide identifiers is exchanged as part of the login process. A unique identifier is determined for each communicating node and for the port on each node through which the login is performed. Fibre Channel uses the Name Address Authority (NAA) field to select among several alternative registration authorities and to identify the format of the world-wide
identifier. The NAA field, defined and controlled by X3.230-1994, occupies the high order 4 bits (bits 60-63) of the unique world-wide identifier, assuring that the identifier is unique even if the 60-bit patterns derived using the registered IEEE company_id happen to be identical. The complete 64-bit or 128-bit pattern, including the NAA bits, shall be unique world wide.
The FC-PH formats shown in figure 1 use the IEEE company identifier as the direct or indirect basis for their unique values.
Figure 1 - FC-PH world-wide identifier formats
NAA Bits | FC-PH format name | IEEE basis for
| | format
63 62 62 60 | |
________________|_____________________________|______________________
| |
0 0 0 1 | IEEE | IEEE 803.2 48-bit id
0 0 1 0 | IEEE EXTENDED | IEEE 803.2 48-bit id
0 1 0 1 | IEEE Registered Name | IEEE company_id
0 1 1 0 | IEEE Registered Extended | IEEE company_id
Identified Company: The company that has purchased and is identified by a particular value of the IEEE company_id.
Formats of FC-PH identifiers:
The first two examples use the IEEE 802.3 48-bit identifier based on the IEEE company_id value. The second two examples use the IEEE company_id value more directly.
An example is provided for each format, showing how all fields are derived.
IEEE 48-bit identifier format:
This format is defined by ANSI X3.230-1994. The name represents a historical artifact from the FC document and does not imply that the 48-bit identifier is actually generated by IEEE.
The FC-PH IEEE 48-bit world-wide identifier uses the 48-bit IEEE 802.1 universal LAN MAC address (ULA), which in turn is constructed from the IEEE company_id. This value is typically used to uniquely identify a Fibre Channel node.
The format for the FC-PH IEEE 48-bit identifier is shown in figure 2.
Figure 2 - FC-PH IEEE 48-bit identifier format
| first byte | | | |
|63 56|55 48|47 40|39 32|
|________|________|________|________|_______|_________|________|_______|
| NAA = | Reserved | ULA Byte 0 | ULA Byte 1 |
| | | | |
| 0001 | 0000 | 0000 0000 |11 04|03 00|35 32|
|________|________|_________________|_________________|________|_______|
| | | | last byte |
|31 24|23 16|15 08|07 00|
|________|________|________|________|________|________|________|_______|
| ULA Byte 2 | ULA Byte 3 | ULA Byte 4 | ULA Byte 5 |
| | | | |
|31 24|23 16|15 08|07 00|
|_________________|_________________|_________________|________________|
ULA Bytes 0, 1, and 2 are generated using the IEEE company_id. ULA Bytes 3, 4, and 5 represent a unique value provided by the identified company.
With this mapping, the portion of the world-wide name that correspond to the special Ethernet address bits (if the ULA was to be used in that context) are as follows:
Bit 40 is the Individual/Group ID bit. The bit shall be zero when used with the FC-PH IEEE 48-bit address.
Bit 41 is the Universally Administered / Locally Administered Address bit. The bit shall be zero when used with the FC-PH IEEE 48-bit address.
This format is in common usage in X3.230 compliant Fibre Channel devices as a node identifier.
Example of IEEE 48-bit identifier format
In this example, the IEEE company_id value used is:
AC DE 48 (hexadecimal)
which has a binary representation of:
1010 1100 1101 1110 0100 1000
this value is combined with a value generated by the identified company of 00 00 80 to create a ULA of:
AC DE 48 00 00 80 (hexadecimal)
The bit order is not changed for the Fibre Channel identifier as it would be if transmitting a LAN address on an ethernet-based LAN link.
Using this ULA, the following 64-bit Fibre Channel IEEE 48-bit identifier format is created.
10 00 AC DE 48 00 00 80 (hexadecimal)
which would have a binary representation (in the format of figure 2) of:
first byte second byte ULA byte 0 ULA byte 1
0001 0000 0000 0000 1010 1100 1101 1110
ULA byte 2 ULA byte 3 ULA byte 4 ULA byte 5
0100 1000 0000 0000 0000 0000 1000 0000
The IEEE extended identifier format allows the high order 12 bits that are unused in the IEEE 48-bit format to be used as a vendor specified field that extends the vendor specified field contained in the ULA. The identified company shall ensure that the combination of the 12-bit vendor specified field and the 3-byte vendor specified portion of the ULA are unique company-wide. Together with the NAA and IEEE company_id portion of the ULA, this guarantees that the overall FC-PH IEEE extended
identifier shall be unique world wide.
Fibre Channel may use the vendor specified field to distinguish different ports to a node. The node may have an IEEE 48-bit FC-PH format and each port may be distinguished by an IEEE Extended format that uses the same ULA value as the node, but a unique vendor specified value for each port.
The vendor specified field may also be used by the identified company to extend the IEEE 48-bit ULA to a 60-bit field. The identified company shall manage the 12-bit vendor specified fields and ULA bytes 0 through 5 such that every 64-bit value IEEE extended identifier is unique world wide.
The format is shown in figure 3:
Figure 3 - FC-PH IEEE Extended identifier format
| first byte | | | |
|63 56|55 48|47 40|39 32|
|________|________|________|________|_______|_________|________|_______|
| NAA = | Vendor Specified | ULA Byte 0 | ULA Byte 1 |
| | | | |
| 0010 | | | |11 04|03 00|35 32|
|________|________|________|________|_________________|________|_______|
| | | | last byte |
|31 24|23 16|15 08|07 00|
|________|________|________|________|________|________|________|_______|
| ULA Byte 2 | ULA Byte 3 | ULA Byte 4 | ULA Byte 5 |
| | | | |
|31 24|23 16|15 08|07 00|
|_________________|_________________|_________________|________________|
ULA Bytes 0, 1, and 2 are generated using the IEEE company_id. ULA Bytes 3, 4, and 5 represent a unique value provided by the identified company.
With this mapping, the portions of the world-wide name that correspond to the special Ethernet address bits (if the ULA was to be used in that context) are as follows:
Bit 40 is the Individual/Group ID bit. The bit shall be zero when used with the FC-PH IEEE 48-bit address.
Bit 41 is the Universally Administered / Locally Administered Address bit. The bit shall be zero when used with the FC-PH IEEE 48-bit address.
This format is in common usage in X3.230 compliant Fibre Channel devices as a port identifier. Some applications also use this format as a node identifier.
In this example, the IEEE company_id value used is:
AC DE 48 (hexadecimal)
which has a binary representation of
1010 1100 1101 1110 0100 1000
this value is combined with a value generated by the identified company of 00 00 80 to create a ULA of:
AC DE 48 00 00 80 (hexadecimal)
The bit order is not changed for the Fibre Channel identifier as it would be in transmitting a LAN address on a LAN link.
Using this ULA, the following 64-bit Fibre Channel IEEE extended identifier can be created. In this example, the vendor specified value selected by the identified company is B17 hexadecimal, which has a binary representation of 1011 0001 0111. The resulting Fibre Channel IEEE extended identifier is:
2B 17 AC DE 48 00 00 80 (hexadecimal)
which would have a binary representation of:
first byte second byte ULA byte 0 ULA byte 1
0010 1011 0001 0111 1010 1100 1101 1110
ULA byte 2 ULA byte 3 ULA byte 4 ULA byte 5
0100 1000 0000 0000 0000 0000 1000 0000
The IEEE Registered identifier format provides a world-wide unique identifier typically used to identify any Fibre Channel object, including ports, nodes, and fabrics. This value is based directly on the IEEE company_id, avoiding the requirement for the identified company to maintain a 48-bit ULA registry. Instead, the identified company shall maintain a registry of vendor specified identifier values that guarantees that all identifiers are unique world wide. The registry mechanism should guarantee that the identified company uses substantially all of the identifiers that can be created with a single IEEE company_id before a new IEEE company_id is purchased and used.
When the NAA value indicates that the format is IEEE registered, the identifier shall contain the 24-bit IEEE company_id followed by a 36-bit vendor specified identifier (VSID) which uniquely indicates a Node, an N_Port, an F_Port, a Fabric, or other object.
The format for the IEEE registered identifier is shown in figure 4.
Figure 4 - FC-PH IEEE Registered identifier format
| byte 0 | Byte 1 | byte 2 | byte 3 |
|63 56|55 48|47 40|39 32|
|________|________|________|________|________|________|________|_______|
| NAA = | IEEE company_id | VSID |
| | | |
| 0101 |23 20|19 12|11 04|03 00|35 32|
|________|________|_________________|_________________|________|_______|
| byte 4 | byte 5 | byte 6 | byte 7 |
|31 24|23 16|15 08|07 00|
|________|________|________|________|________|________|________|_______|
| Vendor Specified Identifier |
| |
|31 24|23 16|15 08|07 00|
|_________________|_________________|_________________|________________|
This format is a new format specifically designed for identifying Fibre Channel objects, including ports and nodes. This format should be used except where historical usage makes the IEEE 48-bit identifier or the IEEE extended identifier more appropriate.
Example of IEEE registered format
In this example, the IEEE company_id value used is:
AC DE 48 (hexadecimal)
which has a binary representation of
1010 1100 1101 1110 0100 1000
In this example, the vendor specified value selected by the identified company is:
B 17 34 F6 2D (hexadecimal)
which has a binary representation of
1011 0001 0111 0011 0100 1111 0110 0010 1101
The resulting IEEE registered format is:
5A CD E4 8B 17 34 F6 2D (hexadecimal)
which would have a binary representation of:
byte 0 byte 1 byte 2 byte 3
0101 1010 1100 1101 1110 0100 1000 1011
byte 4 byte 5 byte 6 byte 7
0001 0111 0011 0100 1111 0110 0010 1101
The IEEE Registered Extended format is defined by the FC-PH documents, but is at present used only for SCSI objects attached by Fibre Channel. For information about the proper use of this format, see the "IEEE Tutorial for SCSI use of IEEE company_id".
Copies of the following documents can be obtained from ANSI: Approved ANSI standards, approved and draft international and regional standards (ISO, IEC, CEN/CENELEC, ITUT), and approved and draft foreign standards (including BSI, JIS, and DIN). For further information, contact ANSI Customer Service Department at 212-642-4900 (phone), 212-302-1286 (fax) or via the World Wide Web at http://www.ansi.org.
ANSI X3.230-1995, Fibre Channel Physical and Signaling Interface (FC-PH)
Copies of these X3T10 draft documents are available for purchase from Global Engineering Documents. For further information, contact Global Engineering Documents at 800-854-7179 (phone) or 303-792-2181 (phone) or by mail at 15 Inverness Way East, Englewood, CO 80122-5704. The document is also available on the SCSI web page at http://www.symbios.com/x3t10.
New identifier formats based on IEEE registration, Bob Snively, Feb. 24, 1997, X3T11/96-467,
revision 2.
Tutorial for SCSI use of IEEE registered company_id, Bob Snively, X3T10/97-101,
revision 2 or higher.