As a general rule, a session is a structured communication pattern that brings all participants to agree about part of their state.
The additional cost induced by tracking the cause-effect relationships becomes neglectable, and is reduced to one more integer value to agree about during session initiation.
Since we assume that a substantial part of the synchronization is already implemented by the session protocol, the actions required by the management of the checkpoints (recording, restoring and removing) are simplified, and appear themselves as sessions.
The unifying concept becomes therefore easy to implement
as a skeleton routine. The three activities become instances of this
skeleton.
Next: Implementing cause-effect tracking
Previous: A different communication model