CME Globex Market Segment Gateway Safeguards
The CME Globex Market Segment Gateway (MSGW) safeguards do the following:
- identify iLink messages not sent completely in a single network packet or received out-of-order
- add processing time of at least 3 microseconds on the responsible iLink session
- notify client the reason for the additional processing and the duration.
This functionality is available only on MSGW sessions.
Contents
MSGW Safeguards Processing
When CME Globex detects an iLink message that spans more than one packet, CME Globex submits the message to additional processing.
When the MSGW receives a network packet with an incomplete message, the message is routed for additional processing as a market integrity control. This processing takes at least 3 microseconds. During processing, no other messages from that session will be processed to protect message sequence number integrity.
Additional incomplete messages received during the processing window will cause the window to extend.
As a result of safeguard processing:
IF session AAA sends an incomplete message,
THEN session BBB sends a complete message,
THEN session BBB’s message may reach the match engine before that of session AAA.
Example 1 – Single Split Message
Assume the additional processing duration is 3 microseconds.
Example 2 – Multiple Split Messages
A new additional processing will be created for every split message. In the following example the same iLink session has created two additional processing.
Example 3 – Subsequent Complete Messages
When an MSGW session has a message undergoing the safeguard processing, all of the complete messages that the same session sends during that processing window will be handled in the order they were received.
Example 4 – Out-Of-Order Messages
When CME receives out-of-sequence network packet(s), all messages from TCP packet #3 onward will be incur the additional safeguard processing.
Session Logout Threshold
In cases where the iLink session undergoing additional processing exceeds the number of messages permitted, the session will be logged out and all in-flight messages rejected. The number of messages permitted is consistent for all iLink sessions and configured by the exchange (currently 15 messages for Future & Options and 50 messages for BrokerTec Markets). CME Group reserves the right to change the session logout threshold at any time without notice.
When a session logout threshold is triggered:
- all resting orders are cancelled for all Cancel-on-Disconnect–registered MSGW sessions on a best-effort basis
- all resting quotes are cancelled on behalf of Mass Quote customers
- all in-flight messages will be rejected as follows:
- CME Globex will send the Logout (tag 35-MsgType=5) message to notify client system of rejected orders, and terminate the session
- the reason for logout will be in tag 58-Text="MSGW safeguard exceeded: no. of messages" (i.e. the total number of rejected messages at the time the safeguard process reached the logout threshold).
- the sequence number from client system to CME Globex will not be incremented
- tag 369-LastMsgSeqNumProcessed will have the last client system’s sequence number processed by CME Globex prior to the safeguard process
- tag 789-NextExpecedMsgSeqNum will have the correct sequence number for the next message that the client system sends to CME Globex
- CME Globex will send the Logout (tag 35-MsgType=5) message to notify client system of rejected orders, and terminate the session
CME Group reserves the right to change the additional processing duration and/or logout threshold.
Automated Port Closure can be triggered for sessions logged out as a result of exceeding the logout threshold if a customer continues to send iLink messages when the session has not been successfully logged back in.
Example 5 – Session Logout
This example shows a Session Logout Threshold scenario assuming a maximum of 4 in-flight messages.
In the following scenario:
- the MSGW generates four Logout messages—one Logout for each message, but sends only the first. When the client system logs in, the Logon Acknowledgment tag 34-MsgSeqNum=204 rather than 201.
As a result, the client system may receive a Logon Confirmation (tag 35-MsgType=A) message with a sequence number higher than expected after the next client system login.
The client system cannot submit a iLink 2 Resend Request message to recover unsent logout messages.
- These logout messages will not be counted towards Auto Port Closure.
Logout Reason
When an MSGW session is undergoing additional safeguard processing and is logged out due to the number of in-flight messages, CME Globex will send a Logout message including the following tag 58=<Reject Reason> and reject all in-flight messages.
Message Type | Logout Reason | Tag 58-Text |
---|---|---|
Logout (tag 35-MsgType=5) | Exceeding the session logout threshold | MSGW safeguard exceeded: no. of messages |
| Messages rejected due to session disconnect |
How was your Client Systems Wiki Experience? Submit Feedback
Copyright © 2024 CME Group Inc. All rights reserved.