FICON (Fibre Connection) is the IBM proprietary name for the ANSI FC-SB-3 Single-Byte Command Code Sets-3 Mapping Protocol for Fibre Channel (FC) . It is a FC layer 4 protocol used to map both IBM's antecedent (either ESCON or parallel) channel-to-control-unit cabling infrastructure and protocol onto standard FC services and infrastructure. The topology is fabric utilizing FC switches or directors. Valid rates include 1, 2, 4, 8 and 16 Gigabit per second data rates at distances up to 100 km. FICON has replaced ESCON in current deployments because of FICON's technical superiority (especially its higher performance) and lower cost.
Each FICON channel port is capable of multiple concurrent data exchanges (a maximum of 32) in full duplex mode. Information for active exchanges is transferred in Fibre Channel sequences mapped as FICON Information Units (IUs) which consist of one to four Fibre Channel frames, only the first of which carries 32 bytes of FICON (FC-SB-3) mapping protocol. Each FICON exchange may transfer one or many such IUs.
FICON channels use five classes of IUs to conduct information transfers between a channel and a control unit. They are: Data, Command, Status, Control, Command and Data, and lastly Link Control. Only a channel port may send Command or Command and Data IUs, while only a control unit port may send Status IUs.
As with prior Z channel protocols, there is a concept of a channel to control unit "connection". In its most primitive form, a connection is associated with a single channel program. In practice, a single channel program may result in the establishment of several sequential connections. This normally occurs during periods where data transfers become dormant while waiting for some type of independent device activity to complete (such as the physical positioning of tape or a disk access arm). In such cases, the connection may be closed by action of the device's control unit with the signaling of appropriate status. When the control unit is ready to resume such an interrupted connection, it signals the channel to reconnect and resume the interrupted channel program. By closing temporarily dormant connections, channel and control unit facilities may be better utilized to serve other active channel programs and certain protocol timeouts that might otherwise occur may be avoided.
FICON uses two Fibre Channel exchanges for a channel – control unit connection – one for each direction. So while a Fibre Channel exchange is capable of carrying a command and response on a single exchange, and all other FC-4 protocols work that way, the response to a FICON IU is always on a different exchange from the IU to which it is a response. The two exchanges that implement a connection are called an exchange pair (Note that the concept of the two exchanges being related exists only at the FC-4 layer). While other FC-4s have a single "data structure type" code that characterizes their IUs in Fibre Channel frame headers, FICON has two. One is for IUs from channel to control unit; the other for control unit to channel.