In the context of a group communication service, provide example message exchanges that
illustrate the difference between causal and total ordering.
What will be an ideal response?
As a reminder, causal ordering takes into account the causal relationships between messages, that is if a
message happens before another message, this causal relationship must be preserved in the delivery of the
associated message to all processes in a group. In total ordering, every process must see all messages in the
same order. Clearly, total ordering is a stronger property than causal ordering in that causal ordering only
imposes a delivery constraint on messages where a happens before relationship exists. Looking at this the other
way round, causal ordering says nothing about the delivery order of messages that are deemed independent of
one another.
Figure 15.11. provides one example of message exchanges that exhibit causal and total ordering. The
bulletin board example that follows in Section 15.4.3. provides an excellent illustration of the two styles of
ordering. If total ordering is employed, every user of the bulletin board would see every posting in exactly the
same order. If causal ordering is employed, and we assume there is a causal ordering between messages related
to the same thread, but there is no such relationship across threads, then users would see the ordering preserved
within a thread, that is the conversation would be presented in the same order. Other messages would be
interleaved though in different ways across all users.
As a second example, consider a multiplayer online game where there are two styles of message, one
that updates the state of the game and others where players communicate with one another. To maintain the
consistency of the game state, it is important to maintain a causal ordering across updates. It may also be
important to maintain ordering of the other messages sent between players or players may see a reply to a
message before the initial message. Clearly these causal relationships need to be preserved. A total ordering
may actually be required here as well if the game developers feel it is important to relate messages precisely
to the current state of the game.
You might also like to view...
Which of the following is true about database permissions?
A. connecting to a database does not require permissions as long as the user is logged on to the server B. permissions can only be granted to the database as a whole C. permissions can be granted on a schema D. tables are securables that group together a collection of objects
To change the normal pointer to a busy icon to inform the user that some action is taking place, add the ________ action to a macro
A) ShowBus B) DisplayHourglass Pointer C) BusyIcon D) Echo
The Paste option ________ pastes text with all formatting removed
Fill in the blank(s) with correct word
When a user attempts to log on to the machine, a hash function reads the user ID and checks that the password matches the password for that user in the password file.
Answer the following statement true (T) or false (F)