Atomic Broadcast CASD Protocols
Fan Zhang Department of Computer Science
Atomic Broadcast CASD Protocols Fan Zhang Department of Computer - - PowerPoint PPT Presentation
Atomic Broadcast CASD Protocols Fan Zhang Department of Computer Science Outline Introduction CASD Protocols Basic CASD protocol Second Protocol, Tolerant of timing failures Third Protocol, Tolerant of
Fan Zhang Department of Computer Science
Byzantine failures
and other guarantees (total order, atomicity) within a distributed system
broadcast to attain consistent information.
IBM, was intended for use in the (ultimately, failed) FAA project
broadcast tolerant of Byzantine failures
Flaviu Cristian 1951-1999
time and within a finite delay
correct processes
is incorrect.
to it.
crash, link down, link occasionally loses messages, etc.
Omission ⊂ Timing ⊂ Byzantine
|Cp(t) − Cq(t)| < ✏ < δ
Tolerant of Omission
m={msg, t, pid}.
p0 p1 p2 p3 p4 p5 t t+a t+b * * * * * p0, p1 fail. Messages are lost when echoed by p2, p3
Source: Slides for CS5412, Ken
t + ∆
get the msg. deliver the msg. *
during protocol, number of messages lost
worst-case scenario
correct process will have the message
computed from the worst-case assumptions
faulty processes before reach the first correct process
the msg. to one neighbor (if zero, the broadcast would fail)— kδ
possible time — dδ
faulty diffuse clock skew
Tolerant of Timing Failure
processes yet “in time” for other (late) correct processes.
receive m(@tq)
T − h✏ < t < T + h( + ✏)
Tolerating Authentication-Detectable Byzantine
p0 p1 p2 p3 p4 p5 t t+a t+b * * * * * *
p0 p1 p2 p3 p4 p5 t t+a t+b * * * * * *
Over relaxed! Keep waiting unnecessarily Aggressive?
∆ = k + d + ✏
“faulty”
no way to know whether or not it’s one of the correct
p0 p1 p2 p3 p4 p5 t t+a t+b * all processes look “incorrect” (red) from time to time * * *
guarantee
a consistent state.
them notified in some way (So that the faulty processes will know about their failure)
process as faulty if you are prepared to first exclude that process from the system completely)
settings
deemed “faulty” by the protocol
guaranteed to satisfy their real-time properties.