Fibre Channel (FC) is a high-speed data transfer protocol providing in-order, lossless delivery of raw block data. Fibre Channel is primarily used to connect computer data storage to servers in storage area networks (SAN) in commercial data centers.

Fibre Channel networks form a switched fabric because the switches in a network operate in unison as one big switch. Fibre Channel typically runs on optical fiber cables within and between data centers, but can also run on copper cabling. Supported data rates include 1, 2, 4, 8, 16, 32, 64, and 128 gigabit per second resulting from improvements in successive technology generations. The industry now notates this as Gigabit Fibre Channel (GFC).

There are various upper-level protocols for Fibre Channel, including two for block storage. Fibre Channel Protocol (FCP) is a protocol that transports SCSI commands over Fibre Channel networks. FICON is a protocol that transports ESCON commands, used by IBM mainframe computers, over Fibre Channel. Fibre Channel can be used to transport data from storage systems that use solid-state flash memory storage medium by transporting NVMe protocol commands.

Etymology When the technology was originally devised, it ran over optical fiber cables only and, as such, was called "Fiber Channel". Later, the ability to run over copper cabling was added to the specification. In order to avoid confusion and to create a unique name, the industry decided to change the spelling and use the British English fibre for the name of the standard.

History Fibre Channel is standardized in the T11 Technical Committee of the International Committee for Information Technology Standards (INCITS), an American National Standards Institute (ANSI)-accredited standards committee. Fibre Channel started in 1988, with ANSI standard approval in 1994, to merge the benefits of multiple physical layer implementations, including SCSI, HIPPI and ESCON.

Fibre Channel was designed as a serial interface to overcome limitations of the SCSI and HIPPI physical-layer parallel-signal copper wire interfaces. Such interfaces face the challenge of, among other things, maintaining signal timing coherence across all the data-signal wires (8, 16 and finally 32 for SCSI, 50 for HIPPI) so that a receiver can determine when all the electrical signal values are (stable and valid for simultaneous reception sampling). This challenge becomes ever more difficult in a mass-manufactured technology as data signal frequencies increase, with part of the technical compensation being reducing the supported cable length. FC was developed with leading-edge multi-mode optical fiber technologies that overcame the speed limitations of the ESCON protocol. By appealing to the large base of SCSI disk drives and leveraging mainframe technologies, Fibre Channel developed economies of scale for advanced technologies and deployments became economical and widespread.

Commercial products were released while the standard was still in draft.IBM 7319 Model 100 Fibre Channel Switch 16/266 and IBM Fibre Channel Adapter/266 By the time the standard was ratified, lower-speed versions were already growing out of use.Fibre Channel Physical and Signaling Interface (FC-PH) Rev 4.3, June 1, 1994 Fibre Channel was the first serial storage transport to achieve gigabit speedsTom Clark, Designing Storage Area Networks: A Practical Reference for Implementing Fibre Channel and IP SANs where it saw wide adoption, and its success grew with each successive speed. Fibre Channel has doubled in speed every few years since 1996.

In addition to a modern physical layer, Fibre Channel also added support for any number of "upper layer" protocols, including ATM, IP (IPFC) and FICON, with SCSI (FCP) being the predominant usage.

Fibre Channel has seen active development since its inception, with numerous speed improvements on a variety of underlying transport media. The following tables show the progression of native Fibre Channel speeds:

+ Fibre Channel Speedmap Name Line-rate (gigabaud) Line coding Nominal throughput per direction T11 Spec (Year) Market availability 0.1328125 rowspan=3 8b10b 12.5 rowspan=3 1993 0.265625 25 1994 0.53125 50 1GFC (Gen 1) 1.0625 NRZ 100 1996 1997 2GFC (Gen 2) 2.125 200 2000 2001 4GFC (Gen 3) 4.25 400 2003 2005 8GFC (Gen 4) 8.5 800 2006 2008 16GFC (Gen 5) 14.025 64b66b 1,600 2009 2011 32GFC (Gen 6) 28.05 256b257b 3,200 2013 2016Brocade 32Gb platform released, Storagereview.com 64GFC (Gen 7) 28.9 PAM-4 6,400 2017 2020 128GFC (Gen 8) 56.1128GFC: A Preview of the New Fibre Channel Speed 12,425 2022 2026 256GFC (Gen 9) 112.2 24,850 FC used throughout all applications for Fibre Channel infrastructure and devices, including edge and ISL interconnects. Each speed maintains backward compatibility at least two previous generations (I.e., 32GFC backward compatible to 16GFC and 8GFC)

+ Name Line-rate (gigabaud) Line coding Nominal throughput per direction T11 Spec (Year) Market availability 10GFC 10.51875 NRZ 64b66b 1,200 2003 2009 128GFC (Gen 6) 4 × 28.05 256b257b 12,800 2014 2016 256GFC (Gen 7) 4 × 28.9 PAM-4 25,600 2018 2020 Inter-Switch Links, ISLs, are usually multi-lane interconnects used for non-edge, core connections, and other high-speed applications demanding maximum bandwidth. ISLs utilize high bit-rates to accommodate the funneling of edge connections. Some ISL solutions are vendor-proprietary.

Characteristics Two major characteristics of Fibre Channel networks are in-order delivery and lossless delivery of raw block data. Lossless delivery of raw data block is achieved based on a credit mechanism.

Topologies There are three major Fibre Channel topologies, describing how a number of ports are connected together. A port in Fibre Channel terminology is any entity that actively communicates over the network, not necessarily a hardware port. This port is usually implemented in a device such as disk storage, a Host Bus Adapter (HBA) network connection on a server or a Fibre Channel switch.

(see FC-FS-3). Two devices are connected directly to each other using Node ports. This is the simplest topology, with limited connectivity. The bandwidth is dedicated. Arbitrated loop (see FC-AL-2). In this design, all devices are in a loop or ring, similar to Token Ring networking. Adding or removing a device from the loop causes all activity on the loop to be interrupted. The failure of one device causes a break in the ring. Fibre Channel hubs exist to connect multiple devices together and may bypass failed ports. A loop may also be made by cabling each port to the next in a ring. A minimal loop containing only two ports, while appearing to be similar to point-to-point, differs considerably in terms of the protocol. Only one pair of ports can communicate concurrently on a loop. Maximum speed of 8GFC. Arbitrated loop has been rarely used after 2010 and its support is being discontinued for new-generation switches. Switched Fabric (see FC-SW-6). In this design, all devices are connected to Fibre Channel switches, similar conceptually to modern Ethernet implementations. Advantages of this topology over point-to-point or arbitrated loop include: The Fabric can scale to tens of thousands of ports. The switches manage the state of the Fabric, providing optimized paths via Fabric Shortest Path First (FSPF) data routing protocol. The traffic between two ports flows through the switches and not through any other ports like in arbitrated loop. Failure of a port is isolated to a link and should not affect operation of other ports. Multiple pairs of ports may communicate simultaneously in a Fabric.

Attribute Point-to-point Arbitrated loop Switched fabric Max ports 2 127 ~16777216 (224) Address size 8-bit ALPA 24-bit port ID Side effect of port failure Link fails Loop fails (until port bypassed) Access to medium Dedicated Arbitrated Dedicated

Layers

Fibre Channel does not follow the OSI model layering, and is split into five layers: FC-4 – Protocol-mapping layer, in which upper-level protocols such as NVM Express (NVMe), SCSI, IP, and FICON are encapsulated into Information Units (IUs) for delivery to FC-2. Current FC-4s include FCP-4, FC-SB-5, and FC-NVMe. FC-3 – Common services layer, a thin layer that could eventually implement functions like encryption or RAID redundancy algorithms; multiport connections; FC-2 – Signaling Protocol, defined by the Fibre Channel Framing and Signaling standard, consists of the low level Fibre Channel network protocols; port to port connections; FC-1 – Transmission Protocol, which implements line coding of signals; FC-0 – physical layer, defined by Fibre Channel Physical Interfaces standard, includes cabling, connectors etc.;

Fibre Channel products are available at 1, 2, 4, 8, 10, 16, 32, 64 and ; these protocol flavors are called accordingly 1GFC, 2GFC, 4GFC, 8GFC, 10GFC, 16GFC, 32GFC, 64GFC or 128GFC. The 32GFC standard was approved by the INCITS T11 committee in 2013, and those products became available in 2016. The 1GFC, 2GFC, 4GFC, 8GFC designs all use 8b/10b encoding, while the 10GFC and 16GFC standard uses 64b/66b encoding. Unlike the 10GFC standards, 16GFC provides backward compatibility with 4GFC and 8GFC since it provides exactly twice the throughput of 8GFC or four times that of 4GFC.

Ports

Fibre Channel ports come in a variety of logical configurations. The most common types of ports are: N_Port (Node port) An N_Port is typically an HBA port that connects to a switch's F_Port or another N_Port. Nx_Port communicating through a PN_Port that is not operating a Loop Port State Machine. F_Port (Fabric port) An F_Port is a switch port that is connected to an N_Port. E_Port (Expansion port) Switch port that attaches to another E_Port to create an Inter-Switch Link.

Fibre Channel Loop protocols create multiple types of Loop Ports: L_Port (Loop port) FC_Port that contains arbitrated loop functions associated with the arbitrated loop topology. FL_Port (Fabric Loop port) L_Port that is able to perform the function of an F_Port, attached via a link to one or more NL_Ports in an arbitrated loop topology. NL_Port (Node Loop port) PN_Port that is operating a Loop port state machine.

If a port can support loop and non-loop functionality, the port is known as: Fx_Port switch port capable of operating as an F_Port or FL_Port. Nx_Port end point for Fibre Channel frame communication, having a distinct address identifier and Name_Identifier, providing an independent set of FC-2V functions to higher levels, and having the ability to act as an Originator, a Responder, or both.

Ports have virtual components and physical components and are described as: PN_Port entity that includes a Link_Control_Facility and one or more Nx_Ports. VF_Port (Virtual F_Port) instance of the FC-2V sublevel that connects to one or more VN_Ports. VN_Port (Virtual N_Port) instance of the FC-2V sublevel. VN_Port is used when it is desired to emphasize support for multiple Nx_Ports on a single Multiplexer (e.g., via a single PN_Port). VE_Port (Virtual E_Port) instance of the FC-2V sublevel that connects to another VE_Port or to a B_Port to create an Inter-Switch Link.

The following types of ports are also used in Fibre Channel: A_Port (Adjacent port) combination of one PA_Port and one VA_Port operating together.Fibre Channel - Switch Fabric 6 (FC-SW-6) B_Port (Bridge Port) Fabric inter-element port used to connect bridge devices with E_Ports on a Switch.Fibre Channel - Framing and Signaling - 4 (FC-FS-4) D_Port (Diagnostic Port) A configured port used to perform diagnostic tests on a link with another D_Port. EX_Port A type of E_Port used to connect to an FC router fabric. G_Port (Generic Fabric port) Switch port that may function either as an E_Port, A_Port, or as an F_Port. GL_Port (Generic Fabric Loop port) Switch port that may function either as an E_Port, A_Port, or as an Fx_Port.