Académique Documents
Professionnel Documents
Culture Documents
basedonDistributed
Systems:Concepts
andDesign,Edition3,
AddisonWesley2001.
2
Introduction
What meanttoby[the
Manyisprojects - multicast
Amoeba,
term Isis, Transis,
broadcast ? Horus (refs p436)
3
System model
Closed groups
only members can send to group, a member delivers to itself
they are useful for coordination of groups of cooperating servers
Open
they are useful for notification of events to groups of interested processes
Figure 11.9
5
Reliability
How do weof one-to-one
achieve communication(Ch.2 page 57)
validity?
integrity?
integrity
by use checksums, reject duplicates (e.g. due to retries).
If allowing for malicious users, use security 6 techniques
What are
11.4.1 ack-implosions?
Basic multicast
7
11.4.2 Reliable multicast
to R-multicast
processes can belong to aseveral
message, a process
closed B-multicasts it to
groups
processes in the group including itself
Figure 11.10
when a message is B-delivered, the recipient B-multicasts
it to the group, then R-delivers it. Duplicates are detected.
The hold back queue is not necessary for reliability as in the implementation using
IP muilticast, but it simplifies the protocol, allowing sequence numbers to represent
sets of messages. Hold-back queues are also used for ordering protocols.
Message
processing
deliver
Hold-back
queue Delivery queue
Figure 11.11
When delivery
guarantees are
met
Incoming
messages
12
Reliability properties of reliable multicast over IP
13
11.4.3 Ordered multicast
14
Total, FIFO and causal ordering of multicast messages
T1
Notice the consistent ordering T2
of totally ordered messages T1
and T2.
They are opposite to real time.
The order can be arbitrary
it need not be FIFO or causal Ordered
F1 multicast delivery is expensive in bandwidth and
latency. Therefore the less expensive orderings (e.g.
Note the FIFO-related F
FIFO
F2 or causal) are chosen for applications for which3
messages F1 and F2 they are suitable
P1 P2 Figure 11.12 P3
15
Display from a bulletin board program
18
Total ordering using a sequencer
A process wishing to TO-multicast m to g attaches a unique id,
id(m) and sends it to the sequencer and the members.
Figure 11.14
19
Discussion
What can
happens
Members
Members thatthe of
when
do not
piggyback sequencer
sequencer
theirsome
multicast
on send
messages protocol
doheartbeat
about
member
the its history
stops
messages
latest buffer becoming
multicasting?
(with
sequence a sequence
number full?
number)
they have seen
P2
1 Message
1. the process P1 B-multicasts a 3
message to members of the group 22 d S eq P4
po se
r o
1 2P
2. the receiving processes propose
numbers and return them to the sender
3 Agreed Seq
1
Figure 11.15
P3
21
ISIS total ordering - agreement of sequence numbers
23
Causally ordered multicast
24
Causal ordering using vector timestamps
each process has its own
vector timestamp To CO-multicast m to g, a process adds 1 to its
entry in the vector timestamp and
B-multicasts m and the vector timestamp