10 Distributedfs
10 Distributedfs
Distributed Systems
1
Outline
• Architecture
• Communication
• Naming
• Synchronization
• Consistency and replication
• Fault tolerance
• Security
2
Architecture
• Client-Server architecture
• Cluster-based architecture
• Symmetric architecture
– Ivy distributed file system
3
Client-Server Architecture (1)
4
Client-Server Architecture (2)
8
Cluster-Based Distributed FS (2)
9
Ivy Distributed File Systems
10
Communication
• RPCs in NFS
• Coda RPC2 subsystem
– An enhancement of traditional RPC
• File-oriented communication in Plan 9
11
RPC calls in NFS
12
Coda RPC2 Subsystem (1)
14
File-Oriented Comm. in Plan 9
15
Naming in NFS (1)
– Automounting
• On-demand mounting
18
Automounting
20
Semantics of File Sharing (1)
On a single processor,
when a read follows a
write, the value returned
by the read is the value
just written.
21
Semantics of File Sharing (2)
22
Semantics of File Sharing (3)
group of files
23
File Locking
24
File Sharing in Coda
• Client-side caching
– Caching in NFS
– Caching in Coda
• Server-side replication
– Server replication in Coda
26
NFS Client-Side Caching (1)
27
NFS Client-Side Caching (2)
29
Server Replication in Coda
Coda uses a variant of replicated-write protocol, ROWA(Read-one, write all)
Two clients with a different AVSG for the same replicated file.
30
Handling Byzantine Failures
3k+1 replicas for k faulty tolerance
31
Security in NFS
34
Secure Collaborative Storage
Storage claims in the Samsara peer-to-peer system.
Produced by Q’s
private key, and
cannot be compressed
Size=what is asked by Q
Question: How to verify that P did allocate space of the requested size?
35