FIXTradingCommunity / fixp-specification

FIXP - FIX performance session layer specification
Other
48 stars 17 forks source link

[04PointToPointSessionProtocol.md] Message retransmitting in batches #42

Closed ujos closed 6 years ago

ujos commented 6 years ago

The provider of a recoverable flow need not retransmit all requested messages in a single batch. Rather, retransmission should be executed as an iterative process. It is the requester's responsibility to determine whether the current batch fills the original gap. If not, it should send another RetransmitRequest for the remainder.

Did not get. If Requester sends request for 20 messages and Provider sends 5 messages in first batch, should Requester issue new RestransmitRequest for 15 messages?

If yes, protocol violation can occur:

Only one RetransmitRequest is allowed in-flight at a time per session. Another RetransmitRequest must not be sent until a response has been received from a previous request.

donmendelson commented 6 years ago

The requester must wait for completion of the first retransmission before sending the second request. For example:

RetransmitRequest FromSeqNo=1000 Count=20 Retransmission FromSeqno=1000 Count=5, followed by 5 application messages RetransmitRequest FromSequNo=1005 Count=15 Retransmission FromSeqno=1005 Count=5, followed by 5 application messages

ujos commented 6 years ago

Now it makes sense. Thanks