Saturday, 4 July 2015

Identifying Vendor using WWN

Through this post I would like discuss the method of deciphering information from a WWN. For ex: how to identify the vendor from the WWN.

Introduction:

WWN is an address assigned to a FC port. It is burnt into the device and is unique to the device. For those who are familiar with networking, you can relate it to a MAC address. (Note: One difference between a MAC and WWN is that the data  is sent to the node based on their FC-ID (or FC address) and not on the WWN).

Different WWN formats:

WWN can be 8 byte or 16 byte address. The first four bits  in a WWN determine the format of WWN used. The first four bits is referred to as NAA (Network Address Authority).
Here are few examples:

1) 0001 --> NAA1
2) 0010 --> NAA2
3) 0101 --> NAA5
4) 0110 --> NAA6

For example:


1x:xx:xx:xx... uses NAA1
5x:xx....          uses NAA5
10000000c950c991 uses NAA1
2101001b3237ecc7 uses NAA2




Why is first four bits (NAA) important:


Each WWN address can be broken down into the following:
1) NAA value
2) OUI value
3) Vendor specific  number

Based on the NAA value, the placement of OUI and number of bits in a WWN change.
Let us step through each NAA vaules and understand the WWN formating.

NAA1: 

NAA1 uses 8 bytes to represent the WWN.  It is broken into 3 sections.

Section1: The first nibble is 1 and followed by zeroes to fill the first and second byte.
Section 2: It also specifies that bytes 3-5 of the 8 byte WWN  are used to identify the vendor.
Section 3:  Bytes 5-8 is a serial number specified by the vendor.
Let us understand this with the help of a WWN


 10:00:00:00:c9:50:c9:91
  --> 10:00 is section 1.  tells us that it uses NAA1 and hence it is 8 byte (64 bit address).

  --> 00:00:c9 is section 2 .Thus it identifies the vendor. This I know is Emulex. (How did I know? Check the wikipage https://en.wikipedia.org/wiki/World_Wide_Name

--> 50:C9:91 is section 3 and is a serial number specified by Emulex for the port.

NAA2: 


NAA2  uses 8 bytes to represent the WWN. It is broken into 4 sections.

Section 1: It is of 4 bits or 1 nibble and the value is 2.
Section 2: It specifies that 2nd, 3rd and 4th nibbles can be used as an extension of section 4.
Section 3: It specifies that bytes 3-5 of the 8 byte WWN  are used to identify the vendor.
Section 4: Bytes 5-8 is a serial number specified by the vendor.
Let us understand this with the help of a WWN
21:01:00:1b:32:37:ec:c7

--> 2  is section 1. Tells us that WWN format is NAA2 and hence it is a 8 byte (64bit) address.
--> 1:01 is section 2.  It is an extension of section 4. If you know what Qlogic uses 1:01 for, then please leave me a comment.
--> 00:1b:32 is section 3. Wikipedia tells me this number sequence belongs to Qlogic.
--> 37:ec:c7 is section 4 and is a serial number specified by Qlogic.

NAA5: 

NAA5  uses 8 bytes to represent the WWN. It is broken into 3 sections.
Section1: It consists of one nibble. The first nibble is 5.
Section 2: It specifies that bytes 0.5 to 3.5 of the 8 byte WWN  are used to identify the vendor.
Section 3:  Bytes 3.5-8 is a serial number specified by the vendor.
Let us understand this with the help of a WWN
50:06:0B:00:00:C2:62:00

--> 5 is section 1. Tells us that WWN format is NAA5 and hence it is a 8 byte address. 
--> 0:06:0B:0 is section 2. Wikipedia tells me it belongs to HP. 
--> 0:00:C2:62:00 is section 3 and is a value specified by HP. 

NAA6:

I have not seen it being used widely but I know it is a 16byte address. 


Conclusion: 

So, when you look at a WWN, you must first identify the NAA format. Then based on the NAA format, you will be able to locate the bits that represents the vendors 3 byte unique indentifier. Once you have identified the 3 byte unique identifier then use google search or wikipedia to identify the vendor. 


No comments:

Post a Comment

Commvault : DR backup to cloud fails to run

 The Commvault DR backup to cloud (an option within Control Panel of Commvault console) was reporting failures.  The CVCloudService.log repo...