Fibre Channel IDs – Cisco Fibre Channel Protocol Fundamentals

Fibre Channel IDs

Besides the physical WWN addresses, there is also a second addressing mechanism. It can be called logical, as the addresses are not hard-coded in the hardware; instead, they are generated by the switched fabric and assigned to the FC devices. These addresses are called Fibre Channel IDs (FCIDs) and are used for the purposes of FCP routing and frame transmission. An analogy can be made with the IP addresses in the LAN networks. Used for the same purpose, they are also generated in the network; the differences are that the two addressing schemes are used by different protocols and that the IP addresses are either manually assigned by the network administrators or automatically distributed by DHCP servers. The addressing is defined in the FC-FS-3 standard, where the FCID is referred to as an “address identifier” and has a size of 24 bits. The address identifier, or the FCID, is divided into three 8-bit parts that allow the location of the FC node to be uniquely specified. Here are the three parts (see Figure 11-6):

  

Figure 11-6 FCID Structure

  • Domain_ID: When the switch fabric is created by having one or more FC switches to connect, interact together, and achieve convergence, it becomes one whole entity. As it consists of multiple switches, and each switch has multiple ports, an identifier for each of the switches inside the switched fabric is needed. This is the domain ID—a unique ID assigned to the switch based on a specific mechanism. In general, the switches (if it’s a single-switch fabric, there will be a single domain ID), when first connected, establish links between each other and elect a principal switch. The principal switch becomes responsible for the domain IDs selected by the switches in the fabric being unique. Therefore, each switch in an FC fabric has a unique domain ID. Theoretically, there can be up to 239 domain IDs in a switched fabric, as the hex values for the Domain_ID are in the range of 01 to EF, but in reality the most Domain_IDs (switches) operating in a fabric achieved by Cisco is just 100 switches making up the FC switched fabric. Domain_IDs 00 and F0–FF are reserved for the switch fabric services.
  • Area_ID: Used to identify groups of N_Ports within a domain (switch). Areas are also used to uniquely identify fabric-attached arbitrated loops. Also, the Area_ID part can be used to encode specific vendor information for components that have specific behavior. Allowed values are in the range of 00–FF (hex).
  • Port_ID: Identifies an N_Port in a domain/switch. It can also be said that it specifies which F_Port is connected to the N_Port. This is also referred to as the F_Port:N_Port identifier; as in the FCP, one N_Port can be connected to only one F_Port.

When the N_Port establishes a successful link to the F_Port (the fabric switch), which is a successful login to the fabric (FLOGI process, which will be covered later), the N_Port uses an initial FCID of 0x000000 to request an FCID assigned to it. The address manager service, which runs on the switch, generates the FCID, as it uses the switch’s Domain_ID, the Area_ID for the switch, and the Port_ID to identify the F_Port: N_Port for the device.

The FCP services use FCIDs as well. These FCIDs are referred to as the well-known addresses. They cannot be used for anything other than their assigned and reserved service. Table 11-1 provides well-known addresses for some of the FCP services.

  

Table 11-1 FCP Service Addresses

Service

Address

Broadcast Alias

0xFFFFFF

Fabric Login Server

0xFFFFFE

Fabric Controller

0xFFFFFD

Name Server

0xFFFFFC

Time Server

0xFFFFFB

Management Server

0xFFFFFA

QoS Facilitator

0xFFFFF9

Alias Server

0xFFFFF8

Key Distribution Server

0xFFFFF7

Clock Synchronization Server

0xFFFFF6

Multicast Server

0xFFFFF5

The well-known addresses are the highest 16 addresses in the 24-bit address space for the FCIDs.

An essential service is the Fibre Channel Name Server (FCNS), also known as just the name server. This server runs in a distributed manner; each FC switch runs its own name server and synchronizes the database with the rest of the switches in the fabric. The FCNS database exchanges information for which WWPNs and WWNNs use which FCIDs, which services are supported, what connectivity is used, which VSAN the device belongs to, and so on. This is important information used by the PLOGI and PRLI processes as well as other FCP services. The information in the FCNS is also very useful for monitoring and troubleshooting the switched fabric.