Skip to content

Instantly share code, notes, and snippets.

@jki127
Last active November 13, 2018 22:17
Show Gist options
  • Save jki127/37ec4452ac69785d2b184619d75f8f6f to your computer and use it in GitHub Desktop.
Save jki127/37ec4452ac69785d2b184619d75f8f6f to your computer and use it in GitHub Desktop.

Broadcasting - DistSys Lecture - Nov 8th, 2018

Total Store Order — Intel

Writes aren’t seen by other processors until some unknown time (when the “write buffer” is flushed)

Group & View

  • Group: the nodes that receive the message
  • View: the sets of nodes in the group
  • View Change: when nodes enter and leave the group
    • new nodes might be added for more load balancing
    • nodes might leave because of failure or

Received & Delivered

  • Received: messages have been placed in the system’s buffer

  • Delivered: messages that have in been received in the correct order

    • ex: if you recieve message 0 then message 2
    • 0 is delivered
    • 2 is kept in the buffer (received but not delivered)
    • Once message 1 is received, then both 1 and 2 are delivered
  • At least once guarantee: keep sending a message until one of the messages is acknowledged

Reliable Broadcast

  • Whenever a node receives a message, send it to everyone else
    • This guarantees that every working node gets the message
    • But there a tons of messages being sent

FIFO Ordering

A partial ordering that uses a vector on each node to guarantee that messages from a specific individual node are in order, but there’s no guarantee that messages from different nodes are in order

  • The vector stores the number of the last message received from each node

IS-IS algorithm

https://cse.buffalo.edu/~stevko/courses/cse486/spring15/lectures/12-multicast2.pptx

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment