SWIFTNet FIN Daemon (SFD)

In FTM SWIFT, each SWIFTNet FIN computer-based terminal (CBT) is implemented as a long-running process called a SWIFTNet FIN Daemon (SFD). Each SFD handles the sessions of exactly one LT (BIC9). Like other CBTs, each SFD must follow certain rules and employ certain protocols, for example:
  • The SWIFT message definitions and the SWIFT LT protocol
  • The SWIFTNet FIN Application Layer protocol
  • The SWIFTNet FIN Session Layer protocol
  • The SWIFTNet InterAct protocol used to pass FIN messages to an SAG
The SFD is implemented as a layered structure that reflects these protocols. It is composed of:
  • CBT layer (CL)
  • Application layer (AL)
  • Session layer (SL)
  • Session layer input/output
To make it possible to send outbound messages (that is, ISN messages) and receive inbound messages (that is, ISN ACKs and OSN messages) simultaneously, each SFD is implemented as two independent processes:
SFD client
This process is started when a message flow in the interface layer runs the program dnfcfsfd. It is the primary SFD process, and handles outbound messages, that is, messages passed to the SIPN (ISN messages).

This process places each outbound FIN message within an InterAct request and passes the request to the SAG. It checks whether the corresponding response message (the null-response) indicates an error. If so, it issues an event message.

SFD server
This process is started when the SFD Client process runs the program dnfcfsfs. It is a secondary process, and handles inbound messages, that is, messages received from the SIPN (ISN ACKs and OSN messages).

An SAG routes each inbound FIN message to a static queue. This queue is defined in the message partner of the SAG. Consequently, you must define a server message partner for each LT used.

The SFD client and server share data by using an area of shared memory called the SFD Communication Area (SFD CA).

The structure of an SFD is illustrated in Figure 1. The AL and SL components implement the SWIFTNet FIN AL and SL finite state machines (FSMs) described in the SWIFTNet FIN Interface Vendor Specification.

Each active session is represented by its own pair of SFD processes.