Fibre Channel (FC) is network technology that originated in the mid 1980's and was designed to provide a connection between a host computer system and external storage systems, although it can also provide a connection between multiple computer systems as well. FC defines a five-layer protocol stack, as depicted in the graphic, and operates at gigabit transmission rates. Fibre Channel has been standardized by the International Committee for Information Technology Standards (INCITS), an standards committee accredited by the American National Standards Institute (ANSI). Although the name implies it is a fiber-based technology, there are also twisted-pair alternatives.
The goal of Fibre Channel is to provide a reliable interface to a remote operating system. This is done through the Fibre Channel host bus adapter (HBA), which serves a function similar to the Ethernet LAN adapter, and the appropriate software drivers for the host operating system. When all elements are working properly, the user sees the FC-based storage area network (SAN) as a locally attached drive (e.g., E: Drive), the operating system views the SAN as a SCSI bus and individual devices on the bus as Logical Unit Numbers (LUN), and the Fibre Channel network views the remote storage system as a combination of a destination ID and a LUN. When a user accesses data from the SAN, the operating system sends normal SCSI commands to the HBA, and the Fibre Channel protocol driver for the HBA translates those commands to the serial SCSI-3 format for delivery over the Fibre Channel network.
Fibre Channel Transmission Rates
Fibre channel defines several transmission rates. Because of its use as a SAN technology, these rates are often quoted based on their throughput in megabytes (MB) or gigabytes per second. The list below includes the equivalent bit rate for each Fibre Channel rate.
- 1GFC: 100 MBps throughput, 1.0625 Gbps transmission rate
- 2GFC: 200 MBps throughput, 2.125 Gbps transmission rate
- 4GFC: 400 MBps throughput, 4.25 Gbps transmission rate
- 8GFC: 800 MBps throughput, 8.5 Gbps transmission rate
- 10GFC Serial: 1 GBps throughput, 10.51875 Gbps transmission rate
- 10GFC Parallel: 1 GBps throughput, 12.75 GBps transmission rate
- 20GFC: 2 GBps throughput, 10.52 Gbps transmission rate
Fibre Channel topologies
Fibre Channel defines three topologies:
- Point-to-point: Two Fibre Channel devices are connected back-to-back across a single link with no switch or hub. This configuration might be found between a server and a single external storage device.
- Arbitrated loop: All Fibre Channel devices are arranged in a closed loop, much like that used for FDDI or Token Ring networks. Although there are techniques for providing some amount of resiliency, in its simplest configuration, the arbitrated loop is prone to interruption when devices are added or removed, or when a device or link fails. This topology also places some limits on communication to avoid two systems colliding over the ring. It also requires that all links in the loop operate at the same speed.
- Switched fabric: All Fibre Channel devices (or loops of devices) are connected to Fibre Channel switches. This configuration is very similar to that implemented by Ethernet switches in a LAN environment. This is the most common configuration for larger SAN environments. It provides for a rich communications fabric, isolation of failures, allows various FC transmission rates to be inter-worked, and is resilient (in some configurations). It does not, however, guarantee ordered delivery of frames, something both the point-to-point and arbitrated loop topologies can guaranty.
Fibre Channel layers
As has been noted, Fibre Channel is a layered protocol. It comprises five layers:
- FC0: Defined as the physical layer, including cables (fiber optics, twisted-pair), connectors, etc. In the language of the OSI Reference Model (OSI-RM), however, this layer is only part of what the OSI-RM calls the Physical Layer. Fibre Channel hubs operate at this layer only.
- FC1: Defined as the data link layer, this layer implements the 8B10B encoding and decoding of signals. In the language of the OSI-RM, however, this would be considered part of the Physical Layer.
- FC2: Defined as the network layer, this layer defines the main Fibre Channel framing, addressing, and control protocols. In the language of the OSI-RM, this would be considered the Data Link Layer. Fibre Channel switches operate on all of the layers up to this one.
- FC3: This is an auxiliary layer that provides common services like encryption or RAID.
- FC4: This is the protocol mapping layer where other protocols, such as SCSI, are encapsulated into an information unit for delivery to FC2 and transmission across a Fibre Channel network. It is this layer that gives Fibre Channel its flexibility as a networking technology compatible with other networking technologies. Fibre Channel routers operate on all of the Fibre Channel layers up to this one.
Fibre Channel Ports
In Fibre Channel, a port is any software or hardware entity that communicates over the Fibre Channel network. The term does not necessarily refer to a physical interface, but it is typically implemented in a storage device, an HBA installed in a server, or a Fibre Channel switch or router. The types of ports that can be found in a Fibre Channel network include:
- N_port: a port on a host computer or storage device in the point-to-point or fabric switched topologies. It is also known as a Node Port.
- NL_port: a port on a host computer or storage device in the arbitrated loop topology. It is also known as a Node Loop Port.
These ports are only found in the switched fabric topology. Many of these ports can auto-detect their role based on the type of port they are connected to. The port types in this classification include:
- F_port: a port on a switch that connects to an N_port. It is also known as a Fabric Port.
- FL_port: a port on the switch that connects to an NL_port. It is also known as a Fabric Loop Port. This type of port makes it possible to place a Fibre Channel switch on an arbitrated loop to connect all of the members of the loop to a larger network.
- E_port: a port on a switch that connects to another E_port. It forms the connection between two Fibre Channel switches and is also known as an Expansion Port. The link between two E_ports is referred to as an inter-switch link (ISL).
- EX_port: a port on a Fibre Channel router that connects to an E_port on a fibre channel switch.
- TE_port: multiple E_ports trunked together to create a high-bandwidth link between Fibre Channel switches. It is also known as a Trunking Expansion port.
- G_port: a port on a Fibre Channel switch that can operate either as an E_port or an F_port. It is also known as a Generic Port.
- L_port: a term used to refer to any port in an arbitrated loop topology (i.e., an NL_port or FL_port). It is also known as a Loop port.
- U_port: a term used for any arbitrated port. It is also known as a Universal port.
Fibre Channel Directors and Switches
Fibre Channel switches come in two basic flavors:
- Directors: These switches offer a high port-count in a modular chassis and typically are designed with high availability features (e.g., redundant power supplies, controllers, etc.).
- Switches: These are typically smaller and have a fixed number of ports. They are also less redundant in their architecture.
It should be noted that this classification is not part of the Fibre Channel standard and the line between the two is grey, at best. How a particular switch is classified is up to the manufacturer, and is largely a marketing issue.
Fibre Channel Storage Area Networks
There are several ways to create a Fibre Channel SAN, including direct point-to-point connections and using a switch (or hub) for interconnection of disk systems and hosts. By far the most common implementation is through the use of a fabric switch. Switches can either be high density, non-blocking devices such as Directors or core switches which are typically lower density, and potentially blocking. Switched fabrics are popular in Fibre Channel design, but they pose some significant hurdles. Most of these issues in some way relate to the technology’s scalability.
When a Fibre Channel device connects to a Fibre Channel switch, it must register itself with the switch. This registration includes host/storage identifiers such as the device network address, and a World Wide Name (WWN), a type of Fibre Channel host name. Communication parameters are also exchanged (e.g., the upper layer protocols the device supports in order to facilitate I/O). Since the Fibre Channel address space supports over 15 million devices, it is far more efficient for the host to register itself with a Simple Name Server (SNS), which serves as a database for all Fibre Channel devices attached to the SAN. The Fibre Channel switches perform the SNS function.
On a small SAN, an SNS may only have a couple of dozen entries. As the SAN grows and additional switches are added for performance and redundancy, the SNS must exchange host information with other switches to ensure reachability throughout the SAN, similar to the way a routing protocol would transmit network reachability information between routers. In fact, the SNS protocol used to transfer this information, Fabric Shortest Path First (FSPF), is modeled after the IP routing protocol known as Open Shortest Path First (OSPF).
Another challenge to consider when designing or installing a Fibre Channel SAN is potential for lack of interoperability between Fibre Channel vendor switch products. This includes the FSPF protocol, which enables a larger, more scalable Fibre Channel SAN. Without FSPF, switches require direct links to all other switches. Vendors attempting to retain market share have tried to increase the port count of their products so that they can provide more switch interconnection links instead of work with other vendors to ensure FSPF interoperability.
- Fibre Channel Industry Association (FCIA)
- INCITS T11 Committee (responsible for Fibre Channel standards)
- Storage Networking Industry Association (SNIA)
- Fibre Channel tutorial
|<mp3>http://podcast.hill-vt.com/podsnacks/2008q3/fibre_channel.mp3%7Cdownload</mp3> | Fibre Channel (FC)|