180 likes | 330 Views
R econfigurable A tomic M emory for B asic O bjects. R AMBO II. Rapidly Reconfigurable Atomic Memory for Dynamic Networks. Seth Gilbert with Nancy A. Lynch Alex A. Shvartsman. Distributed Shared Memory. Read. Write(7). Write(0). Write(7). Read 7. Atomic Consistency. Read.
E N D
ReconfigurableAtomicMemoryforBasicObjects RAMBO II Rapidly Reconfigurable Atomic Memory for Dynamic Networks Seth Gilbert with Nancy A. Lynch Alex A. Shvartsman Dependable Systems and Networks 2003
Distributed Shared Memory Read Write(7) Write(0) Dependable Systems and Networks 2003
Write(7) Read 7 Atomic Consistency Read Write(7) Write(0) Dependable Systems and Networks 2003
Quorums Read Write(7) Dependable Systems and Networks 2003
Prior Work on Quorums • Gifford (79) and Thomas (79) • Upfal and Wigderson (85) • majority sets of readers and writers • Vitanyi and Awerbuch (86) • matrices of single-writer/single-reader registers • Attiya, Bar-Noy and Dolev (90/95) • majorities of processors to implement single-writer/multi-reader objects in message passing systems Static Dependable Systems and Networks 2003
Dynamic Atomic Memory Dependable Systems and Networks 2003
Other Dynamic Approaches • Using consensus to agree on each operation [Lamport] • Bad performance, read/write depend on consensus • Virtual synchrony [Birman 85] group communication [many] • Slow view formation, delays reads/writes • One join or failure may trigger view formation • Quorum-based reads/writes over GC [De Prisco, et al. 99] • New view must satisfy intersection requirements • Single reconfigurer approaches [Lynch, Shvartsman 97], [Englert, Shvartsman 00]: • Single point of failure Dependable Systems and Networks 2003
Rambo • Goal: Atomic Shared Memory • Long-term survivability • Decouple read/write ops and reconfiguration • fast read/write ops, even if recon slow • Maximize dynamics • Anyone can reconfigure • Reconfigure at any time • Arbitrary new configuration Dependable Systems and Networks 2003
frequent reconfiguration? clocks out of synch? Rambo II • messages lost? • messages delayed? Rambo stabilizes Network stabilizes Dependable Systems and Networks 2003
Rambo Architecture write-ack read/write upgrade write Recon read read-ack Net Dependable Systems and Networks 2003
Reads and Writes Value Tag • Write • Phase 1: • choose tag • Phase 2: • send tag/value • Read • Phase 1: • find tag/value • Phase 2: • send tag/value 32 100 5 101 24 102 72 103 Dependable Systems and Networks 2003
Reads and Writes ± ± c3 c4 c5 c6 Largest tag: 100 New tag: 101 write(x, 7) Dependable Systems and Networks 2003
Configuration Upgrade ± ± c3 ± c4 ± c5 largest tag: 101 upgrade(5) Dependable Systems and Networks 2003
Performance Analysis • Assume: • Read/Write operations always terminate in 8d • network stabilizes • reconfiguration-spacing • configuration-viability • etc. Network stabilizes Rambo stabilizes Dependable Systems and Networks 2003
30 25 20 15 10 5 0 0 5 10 15 20 25 Implementation Rambo Rambo II Latency Frequency of Reconfiguration Dependable Systems and Networks 2003
Conclusions • New algorithm for dynamic, reconfigurable atomic memory • Provably atomic (in all executions) • Good performance, when network stabilizes Dependable Systems and Networks 2003
Future Work • Using Rambo: • Sensor networks • Peer-to-Peer networks • Wireless networks • When to initiate reconfiguration? • “online” algorithm • Algorithmic refinements: • Reducing communication. • Early return of read values. • Backup strategies for when configuration-viability fails. Dependable Systems and Networks 2003
The End Dependable Systems and Networks 2003