time
play

Time Michael George November 10, 2005 Michael George Time - PowerPoint PPT Presentation

Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions Time Michael George November 10, 2005 Michael George Time Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions The


  1. Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions Time Michael George November 10, 2005 Michael George Time

  2. Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions The Problem “All we do here is invent games to pass the time.” — John O’Donohue Michael George Time

  3. Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions The Problem “All we do here is invent games to pass the time.” — John O’Donohue Given a collection of processes that can. . . Only communicate with significant latency Only measure time intervals approximately Fail in various ways . . . we want to construct a shared notion of time. Michael George Time

  4. Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions Why The Problem Is Interesting Interesting for two reasons: 1 Good setting to examine general difficulties in distributed systems: Fault tolerance Consistent view of changing data Trust Interplay between strength of guarantees and practicality Michael George Time

  5. Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions Why The Problem Is Interesting Interesting for two reasons: 1 Good setting to examine general difficulties in distributed systems: Fault tolerance Consistent view of changing data Trust Interplay between strength of guarantees and practicality 2 Useful primitive for distributed systems Distributed checkpointing / stable property detection Can be used to implement general state-machine algorithms reliably [Lamport 74] Michael George Time

  6. Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions Overview We will discuss two papers that solve this problem: 1 Optimal Clock Synchronization [Srikanth and Toueg ’87] Assume reliable network Provide logical clock with optimal agreement Also optimal with respect to failures Michael George Time

  7. Overview Optimal Clock Synchronization Probablistic Clock Synchronization Conclusions Overview We will discuss two papers that solve this problem: 1 Optimal Clock Synchronization [Srikanth and Toueg ’87] Assume reliable network Provide logical clock with optimal agreement Also optimal with respect to failures 2 Probabilistic Internal Clock Synchronization [Cristian and Fetzer ’03] Drop requirements on network Provide very efficient logical clock Only provide probabilistic guarantees Michael George Time

  8. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions Some Assumptions We assume. . . Clock drift is bounded: 1 1 + ρ ( t 2 − t 1 ) ≤ R i ( t 2 ) − R i ( t 1 ) ≤ (1 + ρ )( t 2 − t 1 ) Michael George Time

  9. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions Some Assumptions We assume. . . Clock drift is bounded: 1 1 + ρ ( t 2 − t 1 ) ≤ R i ( t 2 ) − R i ( t 1 ) ≤ (1 + ρ )( t 2 − t 1 ) Communication and processing are reliable: t recv − t send ≤ t del Michael George Time

  10. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions Some Assumptions We assume. . . Clock drift is bounded: 1 1 + ρ ( t 2 − t 1 ) ≤ R i ( t 2 ) − R i ( t 1 ) ≤ (1 + ρ )( t 2 − t 1 ) Communication and processing are reliable: t recv − t send ≤ t del Authenticated messages (we will relax this later). Michael George Time

  11. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions Our Goals We want algorithms that satisfy the following: Agreement between clocks: | C k i ( t ) − C k j ( t ) | ≤ D max Michael George Time

  12. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions Our Goals We want algorithms that satisfy the following: Agreement between clocks: | C k i ( t ) − C k j ( t ) | ≤ D max Accuracy of clocks: 1 1 + γ t + a ≤ C k i ( t ) ≤ (1 + γ ) t + b Michael George Time

  13. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions Our Goals We want algorithms that satisfy the following: Agreement between clocks: | C k i ( t ) − C k j ( t ) | ≤ D max Accuracy of clocks: 1 1 + γ t + a ≤ C k i ( t ) ≤ (1 + γ ) t + b Optimal accuracy (proved later): γ = ρ Michael George Time

  14. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Bad News. . . Up to f processes can fail in the following ways: Clock too slow or fast Michael George Time

  15. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Bad News. . . Up to f processes can fail in the following ways: Clock too slow or fast Stuck clock bits Michael George Time

  16. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Bad News. . . Up to f processes can fail in the following ways: Clock too slow or fast Stuck clock bits Crash, lost connectivity, buggy code Michael George Time

  17. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Bad News. . . Up to f processes can fail in the following ways: Clock too slow or fast Stuck clock bits Crash, lost connectivity, buggy code Byzantine failure Michael George Time

  18. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Bad News. . . Up to f processes can fail in the following ways: Clock too slow or fast Stuck clock bits Crash, lost connectivity, buggy code Byzantine failure Definitions: A correct process follows the protocol and has a working hardware clock. A non-correct process is faulty . Michael George Time

  19. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Basic Algorithm We proceed in rounds. On round k , process i will: 1 Wait for P units according to clock C k − 1 i Michael George Time

  20. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Basic Algorithm We proceed in rounds. On round k , process i will: 1 Wait for P units according to clock C k − 1 i 2 Broadcast “I’m ready to start round k ” Michael George Time

  21. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Basic Algorithm We proceed in rounds. On round k , process i will: 1 Wait for P units according to clock C k − 1 i 2 Broadcast “I’m ready to start round k ” 3 After receiving f + 1 messages: set C k i to kP + α rebroadcast the f + 1 messages Michael George Time

  22. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Basic Algorithm We proceed in rounds. On round k , process i will: 1 Wait for P units according to clock C k − 1 i 2 Broadcast “I’m ready to start round k ” 3 After receiving f + 1 messages: set C k i to kP + α rebroadcast the f + 1 messages Definitions: ready k is the real time of the first “I’m ready” message Michael George Time

  23. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Basic Algorithm We proceed in rounds. On round k , process i will: 1 Wait for P units according to clock C k − 1 i 2 Broadcast “I’m ready to start round k ” 3 After receiving f + 1 messages: set C k i to kP + α rebroadcast the f + 1 messages Definitions: ready k is the real time of the first “I’m ready” message beg k is the real time of first process to set clock C k i Michael George Time

  24. Overview System Model and Definitions Optimal Clock Synchronization The Basic Algorithm Probablistic Clock Synchronization Enhancing the Basic Algorithm Conclusions The Basic Algorithm We proceed in rounds. On round k , process i will: 1 Wait for P units according to clock C k − 1 i 2 Broadcast “I’m ready to start round k ” 3 After receiving f + 1 messages: set C k i to kP + α rebroadcast the f + 1 messages Definitions: ready k is the real time of the first “I’m ready” message beg k is the real time of first process to set clock C k i end k is the last Michael George Time

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend