Notes - MIECT
Computação Distribuída
Notes - MIECT
Computação Distribuída
  • Computação Distribuída
  • Introduction / Architecture
    • Distributed Systems
    • Architecture
    • Middleware Organizations
    • Processes
    • Threads
    • Virtualization
    • Clients
    • Servers
    • Migration
  • Communications
    • OSI Model
    • Middleware Layer
    • Types of Communication
    • Remote Call Procedure (RPC)
    • Sockets
    • Application-level Multicasting
  • Naming
    • Names
    • Addresses
    • Identifiers
    • Naming Systems
      • Flat Naming
      • Structured Naming
    • Internet Domain Name System (DNS)
    • Attribute-based naming - LDAP
  • Coordination
    • Clocks
      • Synchronizing without UTC
    • Reference Broadcast Synchronization – RBS
    • Happened-Before Relation
      • Logical Clocks
      • Vector Clocks
    • Mutual Exclusion Algorithms
    • Election Algorithms
    • Distributed Events Correspondance
  • Consistency & Replication
    • Replication
    • Performance and Scalability
    • Client-centric models
    • Replicates
    • Unicasting vs. Multicasting
    • Continuous Consistency
    • Protocols
  • Flaw Tolerance
    • Dependability
    • Terminology
    • Confidence vs. Security
    • Halting failures
    • Redundancy to mask failures
    • Consensus
      • Realistic
      • Consensus in arbitrary failures
      • Achieving failure tolerance
      • Distributed consensus
    • Failure Detection
    • Reliable RPCs
    • Distributed commit protocols
  • Python asyncio & Friends
    • Async
    • Sync vs. Async
    • Tools
  • Flask
    • Introduction
    • Python Requests
  • Containers
    • VM's vs Containers
    • OS Support
    • Building a container
    • Tools
    • Portability
    • Docker
      • Container
  • Map Reduce
    • Map Recude
    • Hadoop
    • Software Architecture
    • Task Scheduling
    • Comparison With Traditional Models
  • Cloud Computing
    • Cloud Computing
    • IaaS – Infrastructure as a Service
    • PaaS – Platform as a Service
    • SaaS – Software as a Service
    • Business Models
Powered by GitBook
On this page
  • Synchronization
  • Precision
  • Exactness
  • Synchronization
  • Clock Drift
  1. Coordination

Clocks

Sometimes an exact time is needed, not just an order.

UTC: Universal Coordinated Times

  • Based on the number of transitions of an atom of cesium 133 in one second (atomic clock).

  • Currently, the UTC value is the average between 50 atomic clocks from all around the globe.

  • It introduces a leap second to compensate for the fact that days get increasingly longer.

UTC values are radio-broadcasted in short-wave and satellite.

  • Satellites have a precision of about 5ms.

Synchronization

Precision

The objective is to keep the drift between two clocks under a limit π.

  • ∀t,∀p,q : |Cp(t)−Cq(t)| ≤ π

  • C(p) is the calculated time value for the p machine at t UTC time instant.

Exactness

The objective is to keep the drift between the clock and the UTC time.

  • ∀t,∀p : |Cp(t)−t| ≤ α

Synchronization

  • Internal: precise clocks.

  • External: exact clocks.

Clock Drift

Specifications of a clock:

  • Maximum clock drift rate - ρ

  • F(t) is the oscillation frequency of a hardware clock at a given t moment.

  • F is the ideal clock (constant) frequency.

PreviousAttribute-based naming - LDAPNextSynchronizing without UTC

Last updated 2 years ago

Obtaining the time of a server (NTP)
Offset