Fibre Channel
Fibre Channel 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 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.
There are various upper-level protocols for Fibre Channel, including two for block storage. Fibre Channel Protocol 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, an American National Standards Institute -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 so that a receiver can determine when all the electrical signal values are "good". This challenge becomes evermore difficult in a mass-manufactured technology as data signal frequencies increase, with part of the technical compensation being ever reducing the supported connecting copper-parallel cable length. See Parallel SCSI. 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. By the time the standard was ratified lower speed versions were already growing out of use. Fibre Channel was the first serial storage transport to achieve gigabit speeds 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 and FICON, with SCSI 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 shows the progression of native Fibre Channel speeds:
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
Inter-Switch Links, ISLs, are usually multi-lane interconnects used for non-edge, core connections, and other high speed applications demanding maximum bandwidth. ISL’s 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 network connection on a server or a Fibre Channel switch.- . 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. 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 gen switches.
- Switched Fabric. 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 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 |
| Address size | 8-bit ALPA | 24-bit port ID | |
| Side effect of port failure | Link fails | Loop fails | |
| 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, SCSI, IP, and FICON are encapsulated into Information Units 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.;
Ports
Fibre Channel ports come in a variety of logical configurations. The most common types of ports are:- N_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 An F_Port is a switch port that is connected to an N_Port.
- E_Port Switch port that attaches to another E_Port to create an Inter-Switch Link.
- L_Port FC_Port that contains Arbitrated Loop functions associated with the Arbitrated Loop topology.
- FL_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 PN_Port that is operating a Loop port state machine.
- 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.
- PN_Port entity that includes a Link_Control_Facility and one or more Nx_Ports.
- VF_Port instance of the FC-2V sublevel that connects to one or more VN_Ports.
- VN_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.
- VE_Port instance of the FC-2V sublevel that connects to another VE_Port or to a B_Port to create an Inter-Switch Link.
- A_Port combination of one PA_Port and one VA_Port operating together.
- B_Port Fabric inter-element port used to connect bridge devices with E_Ports on a Switch.
- D_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 Switch port that may function either as an E_Port, A_Port, or as an F_Port.
- GL_Port Switch port that may function either as an E_Port, A_Port, or as an Fx_Port.
- PE_Port LCF within the Fabric that attaches to another PE_Port or to a B_Port through a link.
- PF_Port LCF within a Fabric that attaches to a PN_Port through a link.
- TE_Port A trunking expansion port that expands the functionality of E ports to support VSAN trunking, Transport quality of service parameters, and Fibre Channel trace feature.
- U_Port '' A port waiting to become another port type
- VA_Port instance of the FC-2V sublevel of Fibre Channel that connects to another VA_Port.
- VEX_Port VEX_Ports are no different from EX_Ports, except underlying transport is IP rather than FC.