4 - Reliable Broadcast Flashcards

1
Q

What are the three properties of the perfect link abstraction?

A
  • reliable delivery: If a correct process sends a message m to a correct process q, then q eventually delivers m.
  • no duplication: No message is delivered by a process more than once.
  • no creation: If some process q delivers a message m with sender p, then m was previously sent to q by process p.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the difference in reliable delivery for known and unkown topologies?

A

For known topologies, the messages can be routed to their destination.
However, for unknown topologies, the message must reach all nodes in the system (breadcast). Then this requires implementing the reliable communication abstraction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the three properties of the reliable communication abstraction?

A
  • validity: If a correct process p broadcasts message m, then every correct process eventually delivers m.
  • no duplication: No message is delivered by a process more than once.
  • integrity: If a correct process delivers a message m with sender p, then m was previously broadcast by process p.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Explain briefly how Dolev’s Algorithm works.

A

The broadcaster sends a identical message to all its neighbours. These neighbours will append the previous sender to the path of the message, and send to the nodes that have not yet received that message. Message is delivered untill it had gone through f+1 unique paths.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are the requirements for the Dolev Protocol in a non-perfect network?

A

If f nodes are allowed to be byzantine nodes; then the network must have a connectivity of 2f+1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Analyse the validity of Dolevs Protocol.

A

It assumes that there is an honest broadcaster, but there are no measurements for when this is not the case. Unpredictible behaviour will ensue.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Explain Best-Effort broadcast?

A

In the fully-connected abstraction, BE broadcast states that all (correct) nodes will eventually deliver m. However, it does not validate this exchange or the message in any way.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is Consistent Broadcast?

A

It is an extention on the reliable broadcast (abstraction) that adds a property:
Consistency: If a correct process delivers m and another correct process delivers m’ then
m=m’.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Explain the rough implementation of Consistent Broadcast.

A

A broadcaster sends message m to all nodes (virtually). it will wait for enough Echo-responses of m in order to deliver it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Explain what the number of nodes should be in order to implement Consistent broadcast.

A

Not all replies might arrive in a bounded time: (-f) values
Among those replies, f might be incorrect: (-f) equal answers
To be convinced of those answers, we need (N-f)-f > f
N>=3f+1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Explain the Consistent Broadcast Crash Fault problem and a proposed solution.

A
  • Validity is not ensured if the
    sender crashes mid-broadcast
  • Idea: a process that receives a
    message for the first time (Send)
    rebroadcasts it to all processes. This way if one correct process delivers it, all do.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Explain Reliable Broadcast.

A

Extents the 4 Consistent broadcast properties (see if you know them ;)
Totality: If m is delivered by a correct process, then all correct processes eventually deliver m

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How is Reliable broadcast implemented?

A

After a correct node has received enough Echo’s, (or f+1 Readys) they broadcast a Ready. Once 2f+1 Readys have been received, a correct process delivers message m.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What type of broadcast is this:
- All correct processes deliver or none do
- Two correct processes can only deliver the same message

A

Reliable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What type of broadcast is this:
– Correct processes might not deliver any message
– Two correct processes might deliver different messages

A

Best effort

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What type of broadcast is this:
– Correct processes might not deliver any message
– Two correct processes can only deliver the same message

A

Consistent