[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: receiver state diagram
Here is:
- a general state diagram (maybe not as detailed as Bob wanted...)
- description of states / transitions.
Jacques
<<RM-states-receiver.gif>> <<State-diagram-comments.txt>>
States of the message on Receiver Side: --------------------------------------- [in-transfer]: still in transport, or in a queue out of reach of the RMP. [in-transfer]--- receive --->[ready]: make the message available to the RMP. (e.g. decrypted, authorized). [ready]: the message is under control of the RMP, i.e. in a state where RM processing can start. [ready]--- accept --->[in-process]: verify that the message has schema-valid RM extensions. is accepted, actual processing of RM functions can start. [in-process]: The accepted message is processed further for reliability requirements. [ready]--- reject --->[discarded]: the message has bad RM extensions. [discarded]: the message has been eliminated, because it failed any reliability requirements, e.g. invalid, expired, duplicate, out-of-order, or removed for resource shortage reasons. [in-process]--- hold --->[Out-of-order]: the message belongs to an ordered sequence which misses previous messages. [Out-of-order]--- reprocess --->[in-process]: The message is reconsidered for either delivery or discarding, due to its sequence being completed, or some expiration check, or group termination check. [Out-of-order]: the message is persisted by the RMP, waiting for missing messages in the same sequence. [in-process]--- discard --->[discarded]: the message is failing some reliability requirements. [in-process]--- deliver --->[delivered]: the responsibility for further processing of the message is transfered to the application layer, or an entity external to the RMP. At that time, an Acknowledgement is generated for the Sender. [delivered]: The RMP processing for this messages is over. At that point, the message is no longer under RMP responsibility, and considered delivered.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]