summaryrefslogtreecommitdiff
path: root/ace/RMCast/README
diff options
context:
space:
mode:
Diffstat (limited to 'ace/RMCast/README')
-rw-r--r--ace/RMCast/README22
1 files changed, 22 insertions, 0 deletions
diff --git a/ace/RMCast/README b/ace/RMCast/README
new file mode 100644
index 00000000000..d8cfbc040c7
--- /dev/null
+++ b/ace/RMCast/README
@@ -0,0 +1,22 @@
+RMCast is a reliable source-ordered multicast protocol implementation
+for message-oriented multi-sender group communication built on top of
+IPv4 multicast. It uses sequence numbers for re-ordering, duplicate
+suppression and loss detection. Negative acknowledgments (NAK) with
+retransmissions are used to recover from losses.
+
+One new and interesting idea implemented in this protocol is history
+transmission (dubbed negative retransmission). In a nutshell, each
+sender, along with normal payload, transmits a list of other sender's
+IDs along with sequence numbers of last messages received from those
+senders by this member. This, in some sense, builds a pyramid of
+information: each subsequent message carries some information for a
+number of previous messages (from other senders). This helps other
+receivers detect losses.
+
+The protocol does not track group membership. Messages are retained
+for retransmission for a predefined amount of time. The "last message
+or lost message" dilemma is solved by periodic history transmissions
+in cases when there is no useful traffic (idle network).
+
+--
+Boris Kolpackov <boris@kolpackov.net>