Overview of Reliable Multicast Protocols
Overview of Reliable Multicast Protocols
The table below is not meant to be exhaustive but rather to set
the context and framework for presentations and ensuing discussion:
protocol (authors) reliability semantics
session? Participant structure
knowledge of participants? ACK/NAK
SRM (LBL et al.) reliable no
local recovery groups via wb session msgs
NAK, receiver reliable
rmtp (Bell Labs)
reliable yes, with late join
hierarchy of regions, DR's optional, may be known
window of pkts ACK/NAK'ed
MTP-2 (TU Bremen) also RCF1301
reliable, totally ordered atomic deliver
yes, w/ explicit join master, producer, consumer
known NAK(?)
RAMP (TASC) RFC1458
reliable yes w/ late join
none known NAK w/ selective ACK (sender and rcvr reliable
TMTP (Kentucky)
reliable no tree-based, via ring search
no restricted NAK's, NAK suppression, periodic ACKs
log-based (stanford) reliable
no logging hierarchy estimated
NAK w/ statistical ACK
LORAX (UCSC)
stable, reliable no(?)
tree-based parent/child hierarchical ACKs
sce (Ga Tech)
reliable, weak ordering yes, no late join
no known ACK, sender-reliable
HORUS (cornell) reliable up to total ordering
membership microprotocol tree possible with PARCLD
via membership NAK at lowest level
RMP (NASA
/UC Berkeley)
reliable up to totally ordered explicit membership
peers, full members, clients via membership
ACK w/ NAK, fully stable
NTE (M. Handley) reliable
no local recovery via session pkts
triggered NAKs with randomization
Some comments made during the discussion at workshop included:
- need to include something in above taxonomy about flow control
- need to include something in above taxonomy about stability
(who gets to release packet) and the issue of notification (who
knows when something is delivered correctly)
- are re-tranmissions multicast or unicast (either, both) in
the above and who controls this decision?
Observations:
- many protocols proposed and implemented
- essentially two classes of reliability semantics
- 100% data reliable with or without
..
- ordering and causality
- protocols differ widely in design
- logical structure of communication pathways (ring versus tree
versus none)
- group membership mechanisms and assumptions
- receiver-reliable versus sender reliable
- ACK/NAK
and the application for which they were designed
Up to
main page
for reliable multicast session.