Shopping Cart

No products in the cart.

BS ISO 3531-2:2022

$215.11

Financial services. Financial information eXchange session layer – FIX session layer

Published By Publication Date Number of Pages
BSI 2022 92
Guaranteed Safe Checkout
Category:

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

PDF Catalog

PDF Pages PDF Title
2 undefined
5 Table of Contents
8 Foreword
9 Introduction
11 1 Scope
2 Normative references
3 Terms and definitions
14 4 FIX session
4.1 General
15 Figure 1 — Conceptual view of FIX session layer
4.2 Sequence numbers
16 4.3 Identifying the FIX session
4.3.1 General
4.3.2 The FIX session profile
Table 1 — The FIX session profiles
4.3.3 Identification of FIX session peers
17 4.3.4 Validation of SendingTime(52)
4.3.5 Additional fields available for peer identification
4.4 Establishing a FIX connection
4.4.1 Transport layer requirements
18 4.4.2 Using the TestMessageIndicator(464) to explicitly identify testing
4.4.3 Application layer encryption
4.4.4 Heartbeat interval
4.4.5 Heartbeat interval determination
19 4.4.5.1 Acceptor requires a specific heartbeat interval
4.4.5.2 Acceptor requires initiator specify a value within a heartbeat interval range
4.4.5.3 Acceptor accepts the initiator specified heartbeat interval
4.4.6 Maximum message size
4.4.7 Specifying application version
20 4.4.8 Specifying supported message types
4.4.9 Identification of application system and FIX session processor3F
4.4.10 Responding to a request to establish a FIX session
Table 2 — Fields in the Logon(35=A) message used for authentication
22 Figure 2 — FIX connection establishment
23 4.4.11 Initial synchronization of messages in a FIX connection
4.4.12 Synchronization after successful logon
24 Figure 3 — ResendRequest(35=2) sent by acceptor after Logon(35=A) acknowledgement
25 Figure 4 — ResendRequest(35=2) sent by initiator after Logon(35=A) acknowledgement
26 Figure 5 — ResendRequest(35=2) sent by initiator and acceptor after Logon(35=A) acknowledgement
27 4.5 Extended features for FIX session and FIX connection initiation
4.5.1 Using NextExpectedMsgSeqNum(789) to synchronize a FIX session
28 Figure 6 — Using NextExpectedMsgSeqNum(789) to synchronize the session during the logon process
29 4.5.2 Using ResetSeqNumFlag(141) to reset FIX session for 24 h connectivity
4.5.3 Using ResetSeqNumFlag(141) to reset FIX session during FIX connection establishment6F
4.5.4 Using initiator state to restore acceptor session state7F
30 4.6 Message exchange during a FIX connection
31 4.6.1 FIX connection keep alive (heartbeat)
4.6.2 Garbled message processing
4.6.3 Missing sequence number
4.6.4 Rejecting invalid messages
32 Figure 7 — Session layer reject using Reject(35=3) due to invalid message received
4.6.5 Test Request Processing
33 Figure 8 — Issuing a TestRequest(35=1) to determine if peer is still responsive
4.7 FIX connection termination
34 4.7.1 Normal logout processing
Figure 9 — Successful Logout scenario
35 4.7.2 Logout without acknowledgement from peer
Figure 10 — Logout(35=5) acknowledgement not received
36 4.7.3 Logout with retransmission of missed messages
Figure 11 — Processing of ResendRequest(35=2) messages before Logout(35=5) acknowledgement
37 4.7.4 When to terminate a FIX connection by terminating the transport layer connection instead of sending a Logout(35 = 5)
4.8 Extended features for FIX connection Termination
4.8.1 Using NextExpectedMsgSeqNum(789) when terminating FIX connection due to invalid MsgSeqNum(34)9F
38 4.9 Message recovery
4.9.1 Ordered message processing
4.9.2 Request retransmission of messages
39 Figure 12 — Using ResendRequest(35=2) message to request missed message and subsequent messages
40 Figure 13 — Using ResendRequest(35=2) message to request only the missed message
41 4.9.3 Responding to a ResendRequest(35 = 2) message
Figure 14 — ResendRequest(35=2) with Gap Fill processing
42 4.9.4 Possible duplicates
4.9.5 Gap fill process
43 4.9.5.1 Example using SequenceReset(35 = 4) to gap fill over multiple messages
44 Figure 15 — Example using the SequenceReset(35=4) to gap fill over multiple messages.
4.9.6 Sequence reset
45 Figure 16 — Performing a sequence reset instead of gap fill in response to a ResendRequest(35=2)
4.9.7 Processing inbound possible duplicate messages (PossDup(43) set to “Y”)
4.9.8 Processing gaps when receiving FIX session layer messages
46 Table 3 — Response by message type
4.10 Resending an unacknowledged application message
47 Figure 17 — Application layer resend using PossResend(97)
4.10.1 The difference between application layer resend and session layer retransmission
48 Figure 18 — The difference between application layer resend and session layer retransmission
4.11 FIX session state matrix
50 4.11.1 FIX logon process state transition diagram
51 4.11.2 FIX logout process state transition diagram
52 5 FIX session profiles
5.1 FIX.4.2 session profile
5.1.1 Profile identification
5.1.2 Application version identification
53 5.2 FIX4 session profile
5.2.1 Profile identification
5.2.2 Application version identification
5.3 FIXT session profile
5.3.1 Profile identification
5.3.2 Multiple application version support over a single FIXT session
5.3.3 Session default application version identification
54 5.3.4 Message type default application version
5.3.5 Explicit application version per message
Table 4 — Application version precedence
5.3.6 Use of extension packs
55 Table 5 — Extension pack precedence
5.3.7 Use of a custom application version
Table 6 — Custom application version precedence
5.4 Lightweight FIXT (LFIXT session profile)
56 5.4.1 Profile identification
5.4.2 Application version identification
5.4.3 LFIXT transport layer requirements
5.4.4 LFIXT compatible mode
Figure 19 — FIXT peer connected to LFIXT peer operating under compatible mode
Table 7 — Session layer messages when peer uses LFIXT session profile under compatible mode
57 5.4.5 LFIXT succinct mode
Figure 20 — LFIXT peer connected to LFIXT peer operating under succinct mode
Table 8 — Session layer messages when peer uses LFIXT session profile under succinct mode
5.4.6 LFIXT and FIXT operating mode interoperability
Table 9 — Interoperability between LFIXT and FIXT peers by operating mode
58 5.4.7 Validation of message sequence numbers
5.4.8 Application layer recovery
5.4.9 LFIXT initiator connects to LFIXT acceptor
Table 10 — LFIXT Logon(35=A) initiator
59 Figure 21 — LFIXT logon process
60 5.4.10 FIXT initiator connects to LFIXT acceptor (compatible mode)
Table 11 — FIXT Logon(35=A) initiator
61 Figure 22 — FIXT initiator connecting to LFIXT acceptor in compatible mode logon
62 Figure 23 — LFIXT initiator connecting to FIXT acceptor in compatible mode logon
63 5.4.11 Receipt of ResendRequest(35 = 2) message from a FIXT peer
64 Figure 24 — LFIXT resetting sequence numbers in LFIXT compatible mode
65 5.4.12 Processing invalid messages
6 FIX message routing
6.1 Message routing details – one firm-to-one firm (point-to-point)
Table 12 — Message routing example, single session between two firms
6.2 Message routing details – third party message routing
66 Figure 25 — Message routing example, single session between multiple firms
7 Transmitting alternatively encoded messages over a FIX session
67 7.1 Use of Attachment group
8 Components
8.1 AttachmentGrp
68 8.2 AttachmentKeywordGrp
8.3 HopGrp
69 8.4 MsgTypeGrp
8.5 StandardHeader
71 8.6 StandardTrailer
9 Messages
9.1 Heartbeat message
72 9.2 TestRequest message
9.3 ResendRequest message
9.4 Reject message
73 9.5 SequenceReset message
9.6 Logout message
74 9.7 Logon message
76 9.8 XMLnonFIX message
10 Fields
82 11 Code sets
11.1 ApplLevelRecoveryIndicatorCodeSet
83 11.2 ApplVerIDCodeSet
11.3 AttachmentEncodingTypeCodeSet
84 11.4 EncryptMethodCodeSet
11.5 GapFillFlagCodeSet
11.6 MsgDirectionCodeSet
85 11.7 MsgTypeCodeSet
11.8 PossDupFlagCodeSet
11.9 PossResendCodeSet
86 11.10 ResetSeqNumFlagCodeSet
11.11 SessionRejectReasonCodeSet
87 11.12 SessionStatusCodeSet
11.13 TestMessageIndicatorCodeSet
88 Bibliography
BS ISO 3531-2:2022
$215.11