Section A

    In this section Fill in the gap with the term that corresponds to the definition


  2. This guarantees that all correct processes receive all messages in the same order. That is, if correct processes p and q both receive messages m and m', then p receives m before m' if and only if q receives m before m'. The multicast is atomic across all members of the group. 

  3. ' class='form-control name_list' style=' border:none; border-bottom: 4px solid orange; display:none;' required />

    Section B

    In this section you have 4 options, select the one option that corresponds with the question stated

  4. A fifo ordered protocol guarantees that messages by the same sender are delivered in the order that they were sent. That is, if a process multicasts a message m before it multicasts a message m', then no correct process receives m' unless it has previously received m. To implement this, messages can be assigned sequence numbers which define an ordering on messages from a single source. Some applications may require the context of previously multicast messages from an originator before interpreting the originator's latest message correctly.

  5. '>

  6. Causal order is a strengthening of FIFO ordering which ensures that a message is not delivered until all messages it depends on have been delivered. 
    This causal dependence relation is more formally specified as follows:- an execution of a multicast or receive primitive by a process is called an event.
    Event e causally precedes event f (i.e. Happened before), (ef), if an only if:
    1. A process executes both e and f in that order, or
    2. E is the multicast of message m and f is the receipt of m, or
    3. There is an event h, such that eh and hf.
    A causal protocol then guarantees that if the broadcast of message m causally precedes the broadcast of m', then no correct process receives m' unless it has previously received m.

  7. '>

    Section C

    In this section select the options True or False if or not the term and definition in the questions correspond

  8. Types of ordering in group communication for distributed systems
    A group is an operating system abstraction for a collective of related processes. A set of cooperative processes may, for example, form a group to provide an extendable, efficient, available and reliable service. The group abstraction allows member processes to perform computation on different hosts while providing support for communication and synchronisation between them. A reliable multicast protocol allows a group of processes to agree on a set of messages received by the group. Each message should be received by all members of the group or by none. The following are the different types of ordering:-