CPC H04L 69/16 (2013.01) [H04L 47/193 (2013.01)] | 20 Claims |
1. A method for tracking state updates, comprising:
identifying, by a sending device, a currently agreed state between the sending device and a second device;
determining a first list of unacknowledged changes to the currently agreed state, wherein each unacknowledged change represents a change to the currently agreed state that has not been acknowledged by the second device;
generating a first delta message comprising an identifier of the currently agreed state, a first message ID, and the first list of unacknowledged changes to the currently agreed state;
checking for receipt of one or more acknowledgement messages from the second device, wherein one of the one or more acknowledgement messages identifies a message ID for one of previously sent delta messages and a source version number identifying a new currently agreed state, wherein the new currently agreed state is based on applying a first set of the list of changes in the delta message having the identified message ID to the currently agreed state;
based on a determination that a second set of the list of changes in the delta message have not been applied to the currently agreed state, generating a second delta message comprising an identifier of the new currently agreed state, a second message ID, the source version number, and a second list of unacknowledged changes to the new currently agreed state, wherein the second list of unacknowledged changes comprises a new set of changes not included in the first delta message and excludes the first set of the list of changes;
marking as acknowledged the first set of the list of changes included in the first delta message identified by the one of the one or more acknowledgement messages; and
repeating the identifying, determining, generating, checking, generating, and marking steps in ongoing predetermined intervals to maintain state consistency between the sending device and the second device.
|