General Overview

Fibre Channel is a computer communications protocol designed to meet the many requirements related to the
ever increasing demand for high performance information transfer. The goals of Fibre Channel include:

Developing practical, inexpensive, yet expandable means of quickly transferring data between
workstations, mainframes, supercomputers, storage devices, desktop, displays and other peripherals.

Allowing many well-known existing channel and networking protocols to run over the same physical
interface and media

High bandwidth (100MB/s and beyond)

Flexible topologies

Connectivity over several kilometers

Support for multiple data rates, media types, and connectors

There are two basic types of data communications between processors and between processors and
peripherals: channels and networks.
A channel is a closed, direct, structured, and predictable mechanism for transmitting data between relatively
few entities. It provides a direct or switched point-to-point connection between the communicating devices.
Typically, once a channel is set up, there is very little decision making needed, thus allowing for a hardwareintensive environment and transports data at the high speed with low overhead.
Channels are commonly used to connect peripheral devices such as a disk drive, printer, tape drive, etc. to a
workstation. Common channel protocols are Small Computer System Interface (SCSI) and High Performance
Parallel Interface (HIPPI).
In contrast Networks are aggregations of distributed nodes(like workstations, file servers or peripherals) with
there own protocol that support interaction among these nodes. They are unstructured and unpredictable.
Networks are able to automatically adjust to changing environments and can support a larger number of
connected nodes. These factors require that much more decision making take place in order to successfully
route data from one point to another. Networks have relatively high overhead since they are software-intensive
where decision making is done making networks inherently slower than channels. Examples of common
networks are Ethernet, Token Ring, and Fiber Distributed Data Interface (FDDI).
Although its called Fibre Channel, it's architecture doesn't represent neither a channel nor a real network
topology. It allows for active intelligent interconnection scheme, called a Fabric, to connect devices. All a Fibre
channel port has to do is to manage a simple point-to-point connection between itself and the fabric. In general,
Fibre Channel attempts to combine the best of these two methods of communication into a new I/O interface
that meets the needs of channel users and also network users.
In 1988, the American National Standards Institute (ANSI) Task Group X3T11 began work on the Fibre Channel
standards. At this time, at least 20 separate documents, each defining an aspect of Fibre Channel, are either
proposed or in draft form. Although several of the standards are in their early stages, Fibre Channel products

real-time computing. Fibre Channel has very little transmission overhead.  Reliable . including well known storage and server suppliers.Real price performance is directly correlated to the efficiency of the technology. TCP/IP. reliable Fibre Channel technology. A list of companies involved in Fibre Channel can be found on the Fibre Channel Industry Association web site. A developed market exists for Fibre Channel with over 100 companies.Fibre Channel delivers data. Compared with traditional SCSI. networked storage.  Scalable . the benefits of mapping the SCSI command set onto Fibre Channel include:  faster speed  more devices can be connected together .Gigabit solutions are common in modern Fibre Channel solutions. economically and practically meets the challenge with these advantages:  Price Performance Leadership . sustains an enterprise with assured information delivery.Fibre Channel provides versatile connectivity with scalable performance. Fibre Channel.  Solutions Leadership . imaging.Fibre Channel.  Multiple Protocols . SCSI. using SCSI as an upper layer protocol. and scaled switched topologies meet application requirements. collaborative projects and CAD/CAE.From single point-to-point gigabit links to integrated enterprises with hundreds of servers.Fibre Channel delivers cost-effective solutions for storage and networks. a most reliable form of communications. most reliable solution for information storage and retrieval. in particular. the Fibre Channel protocol is specifically designed for highly efficient operation using hardware.  High Efficiency . Fibre channel is simply the easiest. Most important.  Gigabit Bandwidth Now . a powerful ANSI standard.  Congestion Free . integrated audio/video. Fibre Channel delivers unmatched performance.Dedicated point-to-point.Fibre Channel's credit-based flow control delivers data as fast as the destination buffer is able to receive it. and technologies can be seen supporting higher speeds up to 40 gigabit-per-second in the future. shared loops. which supply thousands of products.  Multiple Topologies . Fibre Channel is making the biggest impact in the storage arena. Today's data explosion presents unprecedented challenges incorporating data warehousing. This ensures that any investments made into this technology have staying power and will be safe and secure investments for the future. video. or raw data can all take advantage of high performance. Speeds up to 8 gigabit are frequently used.are being shipped today.

and Application. This is probably the biggest threat to its future. medical imaging. as well as disk drives and storage devices with Fibre Channel interfaces. which will make use of its benefits over traditional channel technologies such as SCSI. and scientific visualization. Both copper and optical cables come in a variety of flavors including single-mode and multi-mode fibers for the optical. while optical cabling is used for all connections over longer distances due to its noise immunity. Data Link. optical and electrical parameters for a variety of data rates. while FC-3 and FC-4 describe the interface with other applications. Unfortunately. Fibre Channel. Copper cables are mainly used for interconnecting storage devices over short distances. Many companies are already shipping SCSI adapter cards for several platforms and operating systems. Network. you can follow this link to see the UNH-IOL Fibre Channel test offerings: Fibre Channel Test Offerings. Fibre Channel Layers It is often easier to understand a communications protocol if it is first broken down into parts or layers. Each is described below along with the main functions it defines. Fibre Channel supports two types of cables: Copper and optical. Fibre Channel will most likely continue to expand into the storage markets. Although the ULP is independent of the topology. which breaks the communications puzzle into seven layers: Physical. Fibre Channel has advantages in disaster recover situations as storage devices can be placed remotely. and noise limits. Fibre Channel does not follow this model. several companies are selling Fibre Channel devices that run Internet Protocol (IP). Being able to access mass storage devices quicker and from greater distances is very attractive to such applications as multimedia. maximum transfer distances. SCSI and IP are pretty much the only two ULPs commercially used on Fibre Channel. Because of the greater distances allowed. Some people are familiar with the International Standards Organization (ISO) . In addition to using SCSI. larger distance allowed between devices Essentially. There is currently interest in connecting SCSI Tape devices as well. and shielded twisted pair and coaxial for copper. FC-2. Session. the protocol has been broken into five layers: FC-0. . Transport. a transmitting port at one end and a receiving port at the other end. FC-0 to FC-2 contains the physical description of Fibre Channel defined in the FC-PH and FC-PI standards. At the present time. as well as some protocol specific information. Detailed Discussion The UNH-IOL offers testing in many Fibre Channel areas. Presentation. using the Arbitrated Loop topology. FC-0 The lowest Fibre Channel layer defines the physical media used to link two Fibre Channel ports. and FC-4. FC-1. is simply being used as a replacement for SCSI. Each link must connect two Fibre Channel ports. FC-3.Open Systems Interconnect (OSI) model. IP is more commonly found in switched fabric environments. the current trend in Fibre Channel is to continue to define more and more standard documents that increase the complexity of the protocol. including cabling types. but instead.

the highest level in the FC structure defines the application interfaces that can execute over Fibre Channel. This improves efficiency by decreasing the chance of reaching a busy N_Port. The information transmitted over a fibre is encoded 8 bits at a time into a 10 bit Transmission Character. Login/Logout and Fibre Channel topologies. The layer defines most of the Fibre Channel specific handling like flow control.The framing rules of the data to be transferred between ports. including the definition of nodes. FC-2 The Signaling Protocol (FC-2) layer serves as the transport mechanism of Fibre Channel. The primary rationale for use of a transmission code is to improve the transmission characteristic of information across a fibre. special characters and error control. The layer also controls the media access. encapsulation of data into frames and sequence exchanges. FC-3 The FC-3 layer is intended to provide the common services required for advanced features such as:  Striping-To multiply bandwidth using multiple N_Ports in parallel to transmit a single information unit across multiple links. The following network and channel Upper Layer Protocols (ULP) mapping are currently specified or proposed as FC-4s. Fibre Channel is equally adept at transporting both network and channel information and allows both protocol types to be concurrently transported over the same physical interface. This includes sending to all N_Ports on a Fabric(broadcast) or to only a subset of the N_Ports on a Fabric. The layer provides Fibre Channel classes of service information. defining the receiving and transmitting ports and there operations.  Hunt groups-The ability for more than one Port to respond to the same alias address.  Small Computer System Interface (SCSI)  Internet Protocol (IP)  High Performance Parallel Interface (HIPPI)Framing Protocol  Link Encapsulation (FC-LE) . ports. The layer also defines the physical models for the Fibre Channel components. which allows a variety of different connection types and connection management options.  Multicast-Multicast delivers a single transmission to multiple destination ports.FC-1 FC-1 defines the transmission protocol including serial encoding and decoding rules. the different mechanisms for controlling the three service classes and the means of managing the sequence of a data transfer are defined by FC-2.It specifies the mapping of upper layer protocols using the FC levels below. segmentation and reassembly. FC-4 FC-4.

 IEEE 802. Future generations are under development for FC-PI to accommodate faster speeds and to anticipate future technologies.2) and FC-PH-3 (Project 1119-D.Physical and Signaling Interface 3). FC-3 is not really a layer at all.297-1997. Fibre Channel .230-1994. Fibre Channel.Physical and Signaling Interface). and much of it continues to undergo significant development to this day.Arbitrated Loop). These add various functions and features to the original FC-PH. It is still a largely undefined set of services for devices having more than one port. Several documents exist that describe how ULPs are to be mapped onto Fibre Channel:  SCSI-FCP ANSI X3. one can roughly think of the Fibre Channel layers defining up through the Transport layer of the OSI model.Physical and Signaling Interface . It extends the rules and definitions of FC-PH to accommodate the topology. FC-AL-2 (Project 1133-D. some of which have been adopted as standards.3 (IPI-3) (disk and tape)  Single Byte Command Code Sets (SBCCS)  future ULPs… FC-0 and FC-1 can be thought of as defining the Physical Layer of the OSI model. Thus. but instead became its own standard. and FC-2 layers. There are now well over 20 individual standards documents. it was not defined in FC-PH.5). currently up to FC-PI-5 (Project 2118-D. FC-1. however. Fibre Channel . two other Physical and Signaling Interface documents have been developed: FC-PH-2 (ANSI X3. does not define the concept of a MAC. FC-2 is similar to what other protocols define as a Media Access Control (MAC) layer. FC-4 defines how other well-known higher layer protocols are mapped onto and transmitted over Fibre Channel. It defines the FC-0.2) and FC-AL-3 (unassigned. Fibre Channel Arbitrated Loop . where data is transmitted out of all ports at the same time in order to increase bandwidth. This was done to separate and better define the electrical and optical standards for the physical layer of Fibre Channel technologies.2  Asynchronous Transfer Mode . Fibre Channel . The initial effort was started back in 1988. Another key document is FC-AL (ANSI X3.269-1996 Fibre Channel Protocol for SCSI . The main document by which all others are based is FC-PH (ANSI X3. The standards body under which the documents are being developed is the American National Standards Institute (ANSI). Fibre Channel .272-1996.Adaption Layer 5 (ATM-AAL5)  Intelligent Peripheral Interface . In addition to FC-PH. but many remain in draft form.3) are being developed to expand on the original. Fibre Channel . Organization of Fibre Channel Standards Fibre Channel without a doubt wins the award for the largest and most complex set of standards documents for a communications protocol. As a result. An example is striping.Arbitrated Loop . and was designed in Fibre Channel's early development to be a placeholder for future functions. which is typically the lower half of the Data Link layer. This describes the behavior of an Arbitrated Loop device. Physical Interface . This has since expanded into FC-PI. The Arbitrated Loop topology was an afterthought to the original design of Fibre Channel.

Fabric Generic Requirements  FC-AV Project 1237-D Fibre Channel .Link Encapsulation  FC-FP ANSI X3.271-1996 Fibre Channel Single-Byte Command Code Sets (SBCCS) Mapping Protocol There are many more projects in various stages of completion such as:  FC-GS ANSI X3.7  FC-FG ANSI X3.SCSI-3 Lightweight Protocol  FC-AE-RDMA Project 1651-DT Fibre Channel Avionics Environment .Encapsulation of Frames of the Fibre Channel Physical and Signaling Interface (FC-PH Encapsulation)  FC-SB ANSI X3. FC-PLDA Project 1162-DT Fibre Channel Private Loop Direct Attach  FC-LE ANSI X3.Generic Services .6  FC-GS-7 Project 2204-D Fibre Channel .Generic Services .289-1996 Fibre Channel .Avionics Environment (FC-AE)  FC-AE-1553 Project 1648-DT Fibre Channel Avionics Environment .283-1996 HIGH-PERFORMANCE PARALLEL INTERFACE .254-1994 Fibre Channel .SCSI-3 Remote Direct Memory Access  FC-SW Project 959-D FC Switch Fabric and Switch Control Requirements .Audio-Visual (FC-AV)  FC-AE Project 2009-DT Fibre Channel .Generic Services  FC-GS-2 Project 1134-D Fibre Channel .Generic Services .Generic Services .Generic Services .4  FC-GS-5 Project 1677-D Fibre Channel .Anonymous Subscriber Messaging  FC-AE-LP Project 1650-DT Fibre Channel Avionics Environment .to HIPPI-FC  HIPPI-FC ANSI X3.2  FC-GS-3 Project 1356-D Fibre Channel .5  FC-GS-6 Project 1833-D Fibre Channel .3  FC-GS-4 Project 1505-D Fibre Channel .Generic Services .Upper Layer Protocol MIL-STD1553  FC-AE-ASM Project 1649-DT Fibre Channel Avionics Environment .287-1996 Fibre Channel .Mapping .288-1996 Fibre Channel .

the media is shared among the devices. for a Loop to operate.6P 128 GFC Four Lane Parallel  and more… Fibre Channel Topologies Fibre Channel defines three topologies. Point-to-Point A Point-to-Point topology is the simplest of the three. When a device is ready to transmit data. where x = the Arbitrated Loop Physical Address (AL_PA) of the device. Arbitrated Loop. Not all devices are required to operate on an Arbitrated Loop. which allows the devices to enjoy the total bandwidth of the link. The transmit fibre of one device goes to the receive fibre of the other device. Once a device receives its own ARBx Primitive . Arbitrated Loop is not a token-passing scheme.Slotted Loop  FC-FLA Project 1235-DT Fibre Channel . it first must arbitrate and gain control of the Loop. Thus. the added functionality is optional. A simple link initialization is required of the two devices before communication can begin.Fibre Channel Physical Interfaces . and Fabric. all devices must be Loop devices.Backbone  FC-PI-6 Project 32GFC . It's a cost-effective way of connecting up to 127 ports in a single network without the need of a Fabric switch. There is no sharing of the media. FC-SL Project 1232-D Fibre Channel .Fabric Loop Attachment  FC-BB Project 1238-D Fibre Channel . Each of these is described below.6  FC-PI-6P Project 533-201x Fibre Channel Physical Interfaces . limiting each device's access. namely Point-to-Point. It does this by transmitting the Arbitrate (ARBx) Primitive Signal. Arbitrated Loop Arbitrated Loop has become the most dominant Fibre Channel topology. Unlike the other two topologies. but it is also the most complex. It consists of two and only two Fibre Channel devices connected directly together. and vice versa.

Unlike token-passing schemes. The LIP Primitive Sequence begins the process. The third step is to allow the L_Ports to select an AL_PA. The concept of an AL_PA bitmap is used. it has gained control of the Loop and can now communicate with other devices by transmitting an Open (OPN) Primitive Signal to a destination device. At this point. There are 127 available bits. which prohibits a device from arbitrating again until all other devices have had a chance to arbitrate. where each L_Port selects (and sets) a single bit in the bitmap of a frame originated by the Loop master and repeats the frame back on the Loop. If more than 127 devices are present on the Loop. This process is done using four frames. or when it detects Loop Failure (loss of synchronization at its receiver). All other devices in between simply repeat the data. When an arbitrating device receives another device's ARBx. the port with the numerically lowest Port Name will win. Initialization Before the Loop is usable.Signal. Thus. The following table explains: Frame LIFA Loop Initialization Fabric Assigned reason a certain AL_PA was assigned by the Fabric LIPA Loop Initialization Previously Acquired before this initialization. The catch is that the Access Fairness Algorithm is optional. there essentially exists point-to-point communication between the two devices. the L_Port had a valid AL_PA priorit orde transmi 1 2 . The LIP will propagate around the Loop. it must be initialized so that each port obtains an Arbitrated Loop Physical Address (AL_PA). corresponding to the 127 valid AL_PAs. the basics are as follows. there is no limit on how long a device may retain control of the Loop. The next major step is to select a Loop master that will control the process of AL_PA selection. Although the AL_PA is a byte. All other L_Ports propagate the higher priority LISM frames. a dynamically assigned value by which the ports communicate. This demonstrates the "channel" aspect of Fibre Channel. This is done by the L_Ports constantly transmitting Loop Initialization Select Master (LISM) frames. an Access Fairness Algorithm. however. the other device can have a chance. LIP is transmitted by an L_Port after it powers on. triggering all other L_Ports to transmit LIP as well. some will not be able to select an AL_PA and will be forced into non-participating mode. Once that device relinquishes control of the Loop. while the ARBx with the numerically higher AL_PA is blocked. it will become Loop master (by receiving back its own LISM frames). only 127 values are valid (neutral running disparity). If more than one device on the Loop is arbitrating at the same time. the ARBx with the numerically lower AL_PA is forwarded. the x values of the ARB Primitive Signals are compared. The process is designed so that if an Fabric is present. Once this happens. the Loop is not usable. breaking the selection down according to priority. It maps to the lowest byte of the Native Address Identifiers (D_ID and SI_ID). There is. the device with the lower AL_PA will gain control of the Loop first. otherwise. Without getting into all the details of Loop initialization.

Of course. and will provide the user with information on each of its ports. and the hub can usually determine when to insert or de-insert a device. the Fabric will assign Native Address Identifiers (S_ID). Finally. Once the LISA frame has come back to the Loop master. Thus. which simply allows all L_Ports to look at the finished list.LIHA Loop Initialization Hard Assigned the L_Port has a certain AL_PA it tries to claim 3 LISA Loop Initialization Soft Assigned the L_Port claims the first available AL_PA that is left 4 So for example. Some Fabrics have FL_Ports. but only if all L_Ports on the Loop support them. the media is not shared. quality of service facilitator. Some hubs are "smarter". life is made easier if the devices can be connected to a central hub or concentrator. and be more selective as to when ports are inserted. Two additional frames may be sent by the Loop master. The cabling is easier to deal with. broadcast server. The first is the Loop Initialization Report Position (LIRP). . Other functions of the Fabric include a multicast server. it will set the bit and repeat the frame. all L_Ports (hopefully) have selected an AL_PA. the Loop Initialization Loop Position (LILP) frame is transmitted. Fabric The Fabric topology is used to connect many (224) devices in a cross-point switched configuration. if an L_Port had a valid AL_PA before the Loop began this initialization. the Loop master transmits the CLS Primitive Signal to let each port know that the process has finished. At this point. Most hubs will simply look for valid signal on a port before it will insert the port in the data path. When the N_Ports log into the Fabric. allow the user to transmit from the ports. the L_Port will wait for the LISA frame to come around and claim one there. Fibre Channel has hubs as well. Hubs Like most ring topologies. Whether or not LIRP and LILP are used. each port adds its AL_PA to the end of a list. the relative positions of all L_Ports is known. If it is. a "bad" device or broken fibre won't keep the whole network down. If it is not available (already been claimed). it will attempt to reclaim this previously acquired value by looking for that bit to be available in the LIPA frame. When done. and directory server. As the frame traverses the Loop. alias server. The benefit of this topology is that many devices can communicate at the same time. it also requires the purchase of a switch. the Loop has finished initializing and ready to be used. allowing Arbitrated Loops to be connected to the Fabric.

A port that can act as either an E_Port or an F_Port is called a G_Port. a disk.. double and quadruple speeds are defined. They generally do not need to follow Fibre Channel rules and protocols. After factoring in 8B/10B encoding. quarter speed. it is called an L_Port. HIPPI is a 100MB/s technology.Fibre Channel Ports Fibre Channel defines several types of ports. One of the goals of Fibre Channel is to allow HIPPI to map to it. is an N_Port as compared with a port on a Fabric. Combining these groupings. and eighth speed. At the same time. Media Options speed Fibre Channel offers a very wide range of media speeds. any port on a node device.126 double speed 400 4. In addition. any port that happens to have Arbitrated Loop capabilities. with some quarter speed devices also in existence. which is an F_Port.063 full speed 200 2. By far. They can be grouped a couple of ways. the transmission speed is 1063 Mb/s. The following table illustrates. There also exists half speed. a PC. This speed is referred to as full speed. Finally. the most common speed is full speed. frame headers. and other overhead. we also have NL_Ports and FL_Ports. e. is a GL_Port. thus Fibre Channel's primary data rate allows for data to travel 100MB/s.g. a G_Port with Loop capabilities.5 133 eighth speed 25 266 quarter speed 50 531 half speed 100 1.252 quadruple speed . media Speed (MB/s) Speed (Mb/s) Name 12. First. Ports that connect switches together are called E_Ports.

When the two N_Ports log into each other. Speeds up to 100MB/s can run on both copper and fiber. The idea is simple enough. One of the things accomplished in login is establishing credit. freed a receive buffer. This value becomes the other port's BB_Credit value and remains constant as long as the ports are logged in. the port cannot transmit another frame until it receives an R_RDY. miniature cable. The most common by far is shielded twisted pair. Most devices however. For each frame transmitted. using a DB-9 connector. the following cable types are used: video cable. Before the devices can send data to each other. B's BB_Credit is set to 4. The short wave transmitters have the option to implement the open fibre control (OFC). This value is exchanged with another device during login. as a safety precaution. This value becomes EE_Credit. A device can transmit frames to another device only when the other device is ready to accept them. Flow Control The concept of flow control deals with the problem where a device receives frames faster than it can process them. are non-OFC. no more frames can be transmitted until the destination device indicates it has processed one or more frames and is ready to receive new ones. the result is that the device is forced to drop some of the frames. Thus. Credit refers to the number of frames a device can receive at a time. and single-mode.5µm multimode. which is initialized to 0. For fiber. the choices are: 62. If BB_Credit_CNT reaches BB_Credit. they must login to each other. B might report that it will accept 8 frames from A. they report how many receive buffers are available for the other port. The main tradeoffs are that although longer distances can be achieved with fiber. BB_Credit_CNT is incremented by 1. This is a scheme designed to prevent disconnected fibers from continuously transmitting light. There is a simple protocol where each transmitter on a link periodically transmits short pulses of light to the other receiver. but rather the source and destination N_Ports. Each port also keeps track of BB_Credit_CNT. buffer-to-buffer and end-to-end. 200MB/s and 400MB/s require fiber media. Also for fiber. Short wave seem to be most popular now.Despite the name. Buffer-to-Buffer This type of flow control deals only with the link between an N_Port and an F_Port or between two N_Ports. The SC connector is used. Thus. Both ports on the link exchange values of how many frames it is willing to receive at a time from the other port. End-to-End End-to-End flow control is not concerned with individual links. The value is decremented by 1 for each R_RDY Primitive Signal received from the other port. For copper. both long wave and short wave lasers can be used. the transmitters can operate normally. After enough frames have been transmitted and credit runs out. Transmission of an R_RDY indicates the port has processed a frame. and is ready for one more. It is . Fibre Channel can run over both copper and fiber media. it is more expensive. A may report that it is willing to handle 4 frames from B. when ports A and B log into each other. When the receivers detect this. no device should ever be overrun with frames. Fibre Channel uses two types of flow control. so each knows how many frames the other can receive. For example. and A's is set to 8. and shielded twisted pair. When this happens. Fibre Channel has a built-in flow control solution to this problem. EE_Credit_CNT is set to 0 after login and increments by 1 for each frame transmitted to the other port. The concept is very similar to buffer-to-buffer flow control. 50µm multi-mode.

a port can transmit frames to and receive frames from more than one N_Port. and when the ULP itself handles lost frames efficiently. Also. where the order and timeliness of delivery is not so important. It is referred to a datagram service. the media speeds may vary for different links which make up the path. Class 4 Class 4 provides fractional bandwidth allocation of the resources of a path through a Fabric that connects two N_Ports. Both N_Ports as well as the Fabric must support Intermix for it to be used. Class 3 Class 3 is very similar to Class 2. Classes of Service Fibre Channel defines several communication strategies called Classes of service. The Class used greatly depends on the type of data to be transmitted. Class 3 is the choice for SCSI. the N_Ports share the bandwidth of the links with other network traffic. ACK frames can indicate the port has received and processed 1 frame. the media speeds must be the same for all links which make up the dedicated connection. only end-to-end flow control is used in Class 1. If two N_Ports are to communicate or if an N_Port is to successfully log into a Fabric. Class 4 can be used only with the pure Fabric topology. Class 3 would be used when order and timeliness is not so important. Frames are not guaranteed to arrive in the order in which they were transmitted. In addition. or an entire Sequence of frames. Both buffer-to-buffer and end-to-end flow control are used in Class 2. Class 2 is more like typical LAN traffic. since Sequences and Exchanges must take place using a single Class of service. One N_Port will set up a Virtual Circuit (VC) by sending a request to the Fabric indicating the remote N_Port as well as quality of service parameters. N frames. The . The Class 2 and Class 3 frames may or may not be destined to the same N_Port as the Class 1 frames. As a result.decremented upon reception of an ACK Link Control frame from that port. a dedicated connection is established between two N_Ports. Because of the nature of the dedicated connection. Due to this. Intermix Intermix is an option of Class 1 whereby Class 2 and Class 3 frames may be transmitted at times when Class 1 frames are not being transmitted. Class 1 would be used when the data needs to be continuous and time critical. such as voice or video. frames are guaranteed to arrive in the order in which they were transmitted. Class 1 In Class 1. there must be at least 1 common Class of service supported between them. such as IP or FTP. Once established. The only exception is that it only uses buffer-to-buffer flow control. no other network traffic affects this communication. The major difference between the Classes is the types of flow control used. the Fabric does not need to buffer the frames as they are routed. This information is exchanged during Fabric Login and N_Port Login. Since no dedicated connection needs to be established. Thus. except in the point-to-point or Loop topologies. there is no need for buffer-to-buffer flow control. the two N_Ports may communicate using the full bandwidth of the connection. Class 2 Class 2 is referred to as multiplex due to the fact that it is a connectionless Class of service with notification of delivery and non-delivery of frames.

and possibly scrapped altogether. the N_Port's S_ID is undefined: hex'000000'. The Class 6 is very similar to Class 1. end-to end flow control is used between the N_Ports and the multicast server. Fibre Channel uses a three byte address identifier. N_Ports transmit frames from their own Source_ID (S_ID) to a Destination_ID (D_ID). However. Basically. In a point-to-point topology. The Fabric regulates traffic and manages buffer-to-buffer flow control for each VC separately using the FC_RDY Primitive Signal. The VCs need not be the same speed. all resources are dedicated to the two N_Ports. possibly with more than one other N_Port at the same time. Before Fabric Login. The main difference is that an N_Port may have more than one Class 4 circuit. Class 6 SOF delimiters are the same as used in Class 1. N_Ports become members of a multicast group by registering with the Alias Server at the well-know address of hex'FFFFF8'. But there still needs to be a way of uniquely identifying a port .resulting Class 4 circuit will consist of two unidirectional VCs between the two N_Ports. just-in-time service. Once the Loop is initialized and (hopefully) each L_Port has selected an AL_PA. Class 6 Class 6 provides support for multicast service through a Fabric. which is dynamically assigned during Login. public NL_Ports will attempt Fabric Login. Alias Server. the resources are divided up into potentially many circuits. Arbitrated Loop devices still use the three byte address identifiers. Class 5 The idea for Class 5 involved isochronous. and the lower byte will simply be the NL_Port's AL_PA. Also. If there is an FL_Port. Addresses in the range of hex'FFFFF0' to hex'FFFFFE' are special. the Fabric will assign the upper two bytes of the NL_Port's address identifier and usually allow the low byte to be the NL_Port's AL_PA. Name_Identifiers are used to uniquely . It is not mentioned in any of the FC-PH documents. the upper two bytes of the address identifier will remain '0000'. The multicast server sets up individual dedicated connections between the original N_Port and all the destination N_Ports. well-known addresses uses for such things as the Fabric. Fabric Login will fail of course. Addressing Unlike many LAN technologies that use a fixed six-byte Media Access Control (MAC) address.even for much of the above initialization to take place. Class 4 circuits will guarantee that frames arrive in the order they were transmitted and will provide acknowledgement of delivered frames (Class 4 end-to-end credit). In a Class 1 connection. Like a Class 1 dedicated connection. a device wishing to transmit frames to more than one N_Port at a time sets up a Class 1 dedicated connection with the multicast server within the Fabric at the well-known address of hex'FFFFF5'. a fixed 64-bit value. The multicast server is responsible for replicating and forwarding the frame to all other N_Ports in the multicast group. Intermixing of Class 2 and 3 frames is mandatory for devices supporting Class 4. and the two ports will simply chose two unique addresses. AL_PAs are one byte values dynamically assigned each time the Loop is initialized. (If not. Hex'FFFFFF' is reserved for broadcast. This is accomplished using Name_Identifiers. If no Fabric exists or if an NL_Port is a private NL_Port (does not login with the Fabric). it is still undefined. the Loop will need to be re-initialized so the NL_Port can select the Fabric assigned AL_PA). or the Multicast Server. In Class 4. but also use an Arbitrated Loop Physical Address (AL_PA).

the process entails transmitting a PLOGI frame to the destination node port. including which Classes of service are supported. Transmission Hierarchy The easiest way to understand the methods by which information is transmitted over Fibre Channel is by looking at the problem in the form of a hierarchy. Again. all other node ports must attempt to log in with the Fabric. including which Classes of service are supported. but are used in mapping to upper layer protocols. The normal response is an Accept (ACC) frame from the Fabric back to the node port. even if it has no further data to transmit at that time. it must first perform N_Port Login with that node port.  Initializes the destination end-to-end credit. Fabric and N_Port. Once logged in. N_Port Login accomplishes the following things:  It provides a specific set of operating characteristics associated with the destination N_Port. Similar to Fabric Login. an ACC from an N_Port indicates that the requesting N_Port is attached in a point-to-point topology. Both Fabric Login and N_Port Login are intended to be long-lived.  If a Fabric is present. With the exception of private NL_Ports. it initializes the buffer-to-buffer credit. the normal response is an ACC frame. This is typically done right after the link or the Loop has been initialized.  If a Fabric is present.  If a Fabric is present. It consists of the node port transmitting an Fabric Login (FLOGI) frame to the well-known Fabric address hex'FFFFFE'. it provides a specific set of operating characteristics associated with the entire Fabric. Before a node port can communicate with another node port. a Port (Port_Name). .  If a Fabric is not present. and a Fabric (Fabric_Name). buffer-to-buffer credit is initialized. it shall optionally assign or shall confirm the native N_Port Identifier of the N_Port that initiated the Login. Name Identifiers are not used to route frames.  In point-to-point topology. Login Fibre Channel defines two types of login procedures. Fabric Login accomplishes the following things:  It determines the presence or absence of a Fabric. a device can stay logged in indefinitely.identify nodes (Node_Name).

and only one is used. It is desirable to try and equalize the number of 1s and 0s over time. Between 0 and 3 pad bytes are appended to the end of the payload to satisfy this rule. Some Transmission Words have K28. Close (CLS). These are special Transmission Characters called Ordered Sets. This is the special K28. Most of the remaining 10-bit encodings are not defined. Frame Fibre Channel defines a variable length frame consisting of 36 bytes of overhead and up to 2112 bytes of payload for a total maximum size of 2148 bytes. As stated. or the state where the "+" pin is more positive than the "-" pin (in the case of copper). every byte to be transmitted is encoded into one of two 10-bit representations depending on the current running disparity.8B/10B Transmission Character At the lowest level. a 7-bit string that cannot occur in any Data Transmission Character. Running disparity is evaluated after the first 6 bits of each Transmission Character and again after the last 4 bits and can be either positive (more 1s than 0s) or negative (more 0s than 1s). Thus. The Cyclic Redundancy Check (CRC) is the same 32-bit CRC used in FDDI. The total size of the frame must be an even multiple of four bytes so that partial Transmission Words are not sent. Fibre Channel defines a "1" to simply be the state with more optical power (for optical links). every byte of data that is to be transmitted is first converted into a 10-bit value called a Transmission Character. and several others. Fibre Channel uses the IBM 8B/10B encoding scheme. the K28. The 8B/10B encoding uses the idea of running disparity. A Start of Frame (SOF) delimiter and End of Frame (EOF) delimiter mark the beginning and end of each Fibre Channel frame. Others convey information in between frames in the form of Primitive Signals (a single Ordered Set) and Primitive Sequences (a stream of the same Ordered Set).5 Transmission Character which contains the "comma". Loop Initialization Primitive (LIP). But there are many more possible 10-bit Transmission Characters than are needed to map to particular bytes. Arbitrate (ARB). End of Frame (EOF).5 is used as a special control character. Some Ordered Sets mark the beginning and end of frames (frame delimiters). which is concerned with the number of 1s and 0s in each Transmission Character. Examples of Ordered Sets are: Start of Frame (SOF). Because of this.5 as the first Transmission Character. Open (OPN). Using this encoding scheme has the following benefits:  improvement of the transmission characteristics of information to be transferred  provides enough transitions to make clock recovery possible at the receiver  improves the detection of single and multiple bit errors  Some Transmission Characters contain a unique bit pattern (comma) to aid in achieving word alignment. every byte to be transmitted is first converted into a 10-bit Transmission Character. Idle. Receiver_Ready (R_RDY). Sequence . Transmission Word All information in Fibre Channel is transmitted in groups of four Transmission Characters called Transmission Words. Basically.

The SEQ_CNT field identifies individual frames within a Sequence. The Sequences may be in either direction. For each frame transmitted in a Sequence. This provides a means for the recipient to arrange the frames in the order in which they were transmitted and to verify that all expected frames have been received. Exchange A Fibre Channel Exchange is a series or one or more nonconcurrent Sequences between two ports. All frames must be part of a Sequence.A Fibre Channel Sequence is a series of one or more related frames transmitted unidirectionally from one port to another. one can use the following analogy: frame ~ word sequence ~ sentence exchange ~ conversation Of course. . The originator of the Exchange assigns the OX_ID field. Frames within the same Sequence have the same SEQ_ID field in the header. All Sequences (and therefore all frames) must be part of an Exchange. As another perspective. The responder assigns the RX_ID field. one main difference is that a Fibre Channel device can "speak" more than one sentence and hold more than one "conversation" at a time. SEQ_CNT is incremented by 1. Multiple Sequences to multiple ports may be active at a time.