For iLink order entry on the CME Globex platform, CME Group provides two gateway access models.  

Connecting directly to MSGWs involves a separate Session ID model, messaging behavior, and functional differences from that of the CGW.

Customers can choose to access CME Globex markets through the MSGWs or CGWs, which route through the MSGWs.

Contents

iLink Architecture Video Overview

Watch this brief video for an overview of iLink architecture.

iLink Session Model

Convenience Gateway (CGW)

For CGW, Session ID can exist on only one CGW.

This diagram illustrates how an iLink Convenience Gateway (CGW) Session ID can exist on only one CGW.

Market Segment Gateway (MSGW)

For MSGW, Session IDs are shared across multiple MSGWs. Customers utilize a single Session ID, password, and port across all MSGWs.

Customers must manage the relationship between iLink sessions and corresponding IP addresses and market segments within their order management systems.

The diagram below shows how Session IDs are shared across multiple MSGWs.

Sequence streams are unique per Market Segment ID and Session ID combination. For example, if session ABC has logged into Market Segment ID 50 and 60, then session ABC could receive Execution Reports from both market segments with the same message sequence number (tag 34-MsgSeqNum).

Convenience Gateway

Customers can continue access and trade on the "standard" iLink gateway, referred to as the iLink Convenience Gateway (CGW).

The CGW allows the client system to connect to any CGW session, which manages routing for all order messages.

CGW FIFO Message Processing Model

The CGW FIFO message handling is enforced once the message reaches the MSGW. The following diagram shows the CGW model in which the example Session, AB1, exists on a single gateway.

CGW Sequence Number Management

CGW message sequencing is managed using the SessionID value as in standard iLink Session Layer - Message Sequence Numbers.

Market Segment Gateway

One iLink MSGW provides connectivity to a single market segment. Currently there are 17 market segments or groups of products on a given trading engine instance.

Client system messaging must identify the market segment for order entry routing. Market Segment is defined for each instrument in tag 1300-MarketSegmentID in the MDP Security Definition message.

MSGW - SFTP Configuration

An SFTP site (sftpng.cmegroup.com), accessed via a CME Globex network direct connection, is used to disseminate the MSGW configuration information. The MSGW Configuration allows client systems to receive the list of all market segments and MSGW IPs. This SFTP site contains the configuration files for all environments. The SFTP site is a secure site that requires a user name and password for access.

Table Key:

The Autocert+ tool will use the NR MSGW config file.

Environments

Service

SFTP Site

User Name

Password

Directory

Client System Update Schedule

Production

Configuration

sftpng.cmegroup.com

cmeconfig

G3t(0nnect3d

/MSGW/Production/Configuration

daily

Certification

/MSGW/Cert/Configuration

daily

New Release Certification

/MSGW/NRCert/Configuration

daily

In addition to the generic User Name/Password, client systems can connect using the same credential currently used for CME SFTP site. Additional information pertaining to the CME Secure SFTP site is available in CME Clearing Advisory Notice 15-105.

MSGW FIFO Message Processing

The MSGW ensures messages are processed in the order in which they arrive at the gateway.

Packet size maximum behavior based on MTU (Maximum Transmission Unit) - 1420 bytes, as defined on our network

  • If a customer sends a packet with an incomplete message, the message will be processed once the subsequent packet completes the message. The message is entered into the FIFO queue on the MSGW only when the message is complete.

  • If a customer sends a packet with one or more complete messages and a partial message at the end, all complete messages from that packet will be processed immediately and the partial message is held to be processed on the subsequent packet(s).

  • If a customer sends a packet with an incomplete message and the first complete message of the next packet on that session is not the continuation of the message, the MSGW will merge both messages into a single message and then discard the message due to the invalid tag 10-CheckSum value. 

MSGW Sequence Number Management

A single session is able to login to all 17 MSGW instances. To manage message sequence numbers, the customer must leverage the combination of Session ID and tag 1300-MarketSegmentID. 

CME Globex is currently comprised of 17 market segments. The number of market segments and the instruments listed on each can change in the future. Customers are strongly encouraged to rely programmatically on tag 1300-MarketSegmentID in the Market Data Security Definition message to route orders to the correct MSGW.

Customers must determine how the new sequencing stream may impact order management systems on the customer side.

CGW Session ID

MSGW Session ID

Number of TCP connection(s)

1 TCP connection to access all market segments

1 to 17 TCP connections to access all market segments

Number of sequence stream(s)

1 sequence stream

Customers must manage 1 to 17 different sequence streams based on the combination of Session ID and Market Segment ID

Order Entry Service Gateway 

For the pre-registered administrative information, the Party Details Definition and Party Details List functionality are handled by the Order Entry Service Gateway (OESGW).

In such cases, a separate FIXP session is negotiated and established with the OESGW and can be left open and heart beating until a Party Details Definition Request or Party Details List Request needs to be made and the corresponding Party Details Definition Request Acknowledgment and Party Details List Report will be sent back from the OESGW confirming the request or a Business Reject will indicate that the request can not be honored.

The sequence stream from exchange to the customer of the FIXP session on the OESGW itself is also recoverable.

FIXP session on the OESGW needs to use its own UUID and sequence numbers. Also security validations are in place to ensure that only the entity (firm) of the FIXP session is able to create and recover Party Details Definitions belonging to it through the OESGW.

OESGW - SFTP Configuration

The OESGW configuration information (i.e. market segments and IPs) is added to the MSGW config file via an SFTP site (sftpng.cmegroup.com), accessed via a CME Globex network direct connection. This SFTP site contains the configuration files for all environments. The SFTP site is a secure site that requires a user name and password for access.

New Market Segment is defined for each OESGW  as follow:

<marketsegment id="6" label="CME Globex Order Entry Service Gateway for all CGWs">

<marketsegment id="8" label="EBS OESGW for all CGWs"> 

<marketsegment id="12" label="CME Globex Order Entry Service Gateway for all MSGWs">

<marketsegment id="14" label="BTEC US Order Entry Service Gateway’">  

<marketsegment id="16" label="BTEC EU Order Entry Service Gateway’">

<marketsegment id="18" label="EBS OESGW for NYC MSGW"> 

<marketsegment id="20" label="EBS OESGW for LON MSGW"> 

More details on the SFTP site is available on MSGW - SFTP Configuration.

CME Globex Timestamps

 Watch this brief video for an overview of CME Globex timestamps.

The diagram shows all timestamps for iLink and MDP 3.0 messages:

Tag 60-TransactTime

To provide more transparency between iLink order entry and MDP 3.0 market data, iLink supports a FIX tag 60-TransactTime on all Convenience Gateway (CGW) and Market Segment Gateway (MSGW) sessions.

This timestamp represents the time the customer iLink message was received by the Market Segment Gateway and had FIFO order handling applied. The tag provides the date and time, in nanoseconds past the UNIX epoch time (00:00:00 UTC on 1 January 1970). 

CME Globex uses SolarFlare’s WODA (wire order delivery API) for this timestamp.

Tag

Name

Binary Type

Binary Length

Required

Description

60

TransactTime

uInt64

8

Y

Time the transaction represented by this Execution Report (35=8) occurred. Expressed as nanoseconds since epoch time.

Tag 60-TransactTime are on the following iLink application messages sent from CME Globex to the client system:

To ensure tag 60 timestamp never reflects an out-of-sequence event, in certain cases CME Globex will increment timestamp value. These forced timestamps still accurately reflect the sequence of events on the MSGW.

iLink Unsolicited Outbound Message Scenario

For unsolicited outbound messages where there are no iLink inbound messages, tag 60 will represent the time at which the transaction is processed on the trading engine in nanoseconds.

Scenario

Tag 60

Fill Execution Reports (35=8, 39=1,2)

The time at which the aggressing order reached the MSGW in milliseconds

If no aggressor (e.g., pre-open), contains the engine event time in nanoseconds.

Stop Order Trigger Ack (35=8, 39=0, 40=2)

The time at which the original aggressing order, which initiated the fill event that triggered the stop order, reached the MSGW in milliseconds.

If no aggressor (e.g., Pre-open) is present, will contain the engine event time in nanoseconds.

FAK Elimination Acks (35=8, 39=C)

The time at which the corresponding order reached the MSGW in nanoseconds.

Trade Bust Execution Report (35=8, 39=H)

The time of the trade bust event in nanoseconds.

Unsolicited Mass Quote Cancel Ack (35=b, 9775=A,B,C,D,E,F,G,H)

Not present.

Unsolicited Cancel Ack (35=8, 39=4, 378=8,100,103,104,105,106,107)

The engine event time in nanoseconds.

End of Day Elimination Ack (35=8, 39=C)

The time of the order elimination event in nanoseconds.

Tag 60-TransactTime contains the time when a customer iLink message reaches the MSGW, where applicable. Otherwise, tag 60 represents the trading engine event time.