The protocol has several requirements regarding its design. The first requirement was the reliability. In order to send reliable broadcast the protocol should satisfy 3 properties; integrity, validity and agreement. The integrity property states that “each correct process P delivers a message from a correct process Q at most once and only if Q actually broadcasted it.”. The validity property states that “ A set of messages delivered by correct processes includes all messages broadcasted by correct processes.”. The agreement property states that “all correct processes eventually deliver same set of messages”. These description quotes are from the lecture slides by Philippas Tsigas. Another requirement was ordering. The order should be a total order which preserves causality. Causal order is defined by “If a process delivers a message m before broadcasting a message m’, then no correct process delivers m’ unless it has previously delivered m” . As mentioned, the protocol should implement total ordering, which means that “If correct processes P and Q both deliver messages m and m’, then p delivers m before m’ if and only if q delivers m before m’.”
GcherkosH/Reliable-and-ordered-multicast-protocol
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|