Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Replay Processing

To provide message replay capability, each ITC channel has a separate set of gateway instances and multicast addresses to replay requested data.  If a sequence number gap is detected, a replay request can be initiated for message recovery. The requested data for the channel(s) are transmitted through the appropriate replay gateway and multicast address.

...

Info

Customers connected to a replay channel will also receive replay requests from other customers that will impact bandwidth utilization.

Replay Request

When initiating a replay request, the MDP client application initiates a TCP connection to the CME Group MDP Gateway.  After establishing a socket connection, a replay request is sent to the CME MDP Gateway and a response message is sent with information indicating the success or failure of the request.

...

The request and response message formats are detailed below:

Request

Example:

User=CME{SOH}Password=***{SOH}RequestType=REPLAY{SOH}Begin=1{SOH}End=100{SOH}Channel=1{SOH}

...

FieldValueDescriptionSection

User

String

CME Group-provided user name for each firm

Header



SOH

Timestamp

String

Time stamp of when request was processed

Header


SOH

Request Type

String

‘REPLAY’ for sequence number recovery

Header



SOH

Result

String

Indicated result of request

Result Code Meaning:

  • 0001 Success
  • 0002 System unable to accept requests
  • 0003 Number of configurable requests exceeded
  • 0010 Malformed request
  • 0011 Missing fields from request
  • 0020 Missing request Type
  • 0021 Missing user Identifier
  • 0022 Missing password
  • 0023 Unknown Request Type
  • 0024 Invalid Userid/password combination
  • 0110 Missing channel identifier
  • 0111 Unknown channel identifier
  • 0112 Missing begin field
  • 0113 Malformed begin field
  • 0114 Missing End field
  • 0115 Malformed End field
  • 0116 Invalid range
  • 0200 Request incorrectly formatted
  • 9999 System error

Body



SOH 

Channel

String

Channel of sequence number range to be replayed

Body



SOH

...


Replay Messages

With each request to replay missed or lost messages, a system message is sent preceding the message replay to alert applications of the dataset. System messages must be used to process replay requests efficiently.

...

FieldValueDescriptionSection

Type

String

  • "Heartbeat” – Used in lieu of message replay
  • “Replay” – Used to alert a replay
  • “Announcement” – Used to alert replay events

Header

SOH

Channel               

String

The channel to be replayed (i.e. ‘1’)

Body

SOH

Request Begin

String

Beginning number of sequence requested

Body

SOH

Request End

String

Ending number of sequence requested

Body

SOH

Begin

String

Beginning sequence number being sent

Body

SOH

End

String

Ending sequence number being sent

Body

SOH

Timestamp

String

Timestamp of proposed request

Body

SOH

Channel

String

1

Body - Heartbeat

SOH

Channel               

String

1

Body - Announcement

SOH

Detail

String

Details of announcement

Body - Announcement

SOH

...

Replay Batching

The CME Group  MDP replay mechanism leverages a batching algorithm to process and respond to replay requests more efficiently.  Each group of requests within a channel is analyzed for sequence number overlap to combine similar requests into one replay stream.  A reasonable gap is used to group requests that may be close to overlapping.

...