Page tree
Skip to end of metadata
Go to start of metadata

TCP replay should be used for small-scale data recovery (refer to Implementation Considerations for additional information). Client systems can recover specific packets that were missed using the packet sequence number and the TCP historical replay component. This method recovers all missed packets. CME Group logs IP addresses, ports, and passwords of the originator and the Channel ID and range of the requested sequence number.

TCP Replay is not a performance-based recovery option and should only be used if other options are unavailable.

TCP Replay is available for Market by Price (MBP) and Market by Order (MBO).

The TCP historical replay component allows you to request a replay of a set of packets already published on the UDP Incremental Market Data Channel. The request specifies messages to be replayed. The request is submitted with the FIX Market Data Request message (tag 35-MsgType=V). In response, CME Group sends the requested packets and a Logout (tag 35-MsgType=5) message. A Logout (tag 35-MsgType=5) message is also sent in case of rejection of the initial request, tag 58-Text will list the reason for the logout.

This type of request is sent through a new TCP connection established by the customer. When making the request, the channel and sequence number are specified. The responses are sent by CME Group through this same connection and the connection is then closed by CME Group once the replay is complete. A maximum of 2000 packets can be requested at once.

The TCP Replay feed supports the following FIX message formats:

  • Logon (tag 35-MsgType=A) - Customer to CME Group
  • Logout (tag 35-MsgType=5) - Customer to CME Group
  • FIX Market Data Request message (tag 35-MsgType=V).
  • CME Group to Customer, Heartbeat (tag 35-MsgType=0).

The replayed messages will have the following format:

MDP3 TCP Message

Client systems should queue real-time data until all missed data is recovered. The recovered data should then be applied prior to queued data.

Implementation Considerations

The following are limitations to consider prior to implementing TCP replay functionality:

  • TCP Replay is not a performance-based recovery option and should only be used if other options are unavailable.
  • TCP requests and responses are via TCP.
  • Resend request messages and other customer-generated messages (i.e. heartbeat) are in plain text FIX format, CME Globex-generated response messages are SBE encoded.
  • There is a 24 hour time limit on the messages available via the TCP replay functionality.
  • The maximum number of packets that can be requested in one resend request message is 2000.

Only one Market Data Request can be processed during the current established session. If multiple Market Data Requests are sent when the session is established, only the first Market Data Request is processed and subsequent Market Data Requests are ignored.

To submit multiple market data requests, for each request, the client system must log in, submit the request, receive the messages, log out, and repeat until all requests are processed.

TCP Replay Process

  1. Customer establishes a TCP connection.

    Refer to the configuration file for TCP IP and port information. For additional information on the configuration file, refer to Market Data - Services.

  2. Customer sends Logon (tag 35-MsgType=A) message to CME Group.

    Customer Username and Password are verified. If the Username and Password are incorrect, a Logout will be sent.

  3. CME Group sends Logon (tag 35-MsgType=A) message to the customer.

    CME Group will send a Logout message if a Market Data Request (tag 35-MsgType=V) message is not received in 5 seconds.

  4. Customer sends Market Data Request (tag 35-MsgType=V) message to CME Group.

    Client systems must indicate the channel ID (tag 1180-ApplFeedID) and packet sequence numbers (tag 1182-ApplBeginSeqNo and tag 1183-ApplEndSeqNo) in the Market Data Request (tag 35-MsgType=V) message.

  5. CME Group sends Heartbeat (tag 35-MsgType=0) messages to customer every 2 seconds until the first recovery message is sent.

  6. CME Group sends recovery packets requested by the customer in the Market Data Request (tag 35-MsgType=V) message.

  7. CME Group sends a Logout (tag 35-MsgType=5) message to the customer.

    CME Group will close the TCP connection if the customer does not send a Logout (tag 35-MsgType=5) message within 5 seconds from the time CME Group sends a Logout (tag 35-MsgType=5) message.

  8. Customer sends a Logout (tag 35-MsgType=5) message to CME Group.

  9. CME Group closes the TCP connection.

    The username and password for the TCP Replay component for the New Release and Certification testing environments are both "CME" (do not include quotes). The username and password for the production environment are provided after certification is completed. For more information, contact your Global Account Manager.