5/25/2016 Distributed File Systems 14A. Remote Data Access: Architectures Operating Systems Principles 14B. Remote Data Access: Security 14C. Remote Data Access: Reliability Distributed File Systems 14D. Remote Data Access: Performance 14E. Remote Data Access: Scalability Mark Kampe (markk@cs.ucla.edu) Distributed File Systems 2 Remote Data Access: Goals Client/Server Models • Transparency • Peer-to-Peer – indistinguishable from local files for all uses – most systems have resources (e.g. disks, printers) – all clients see all files from anywhere – they cooperate/share with one-another • Performance • Thin Client – per-client: at least as fast as local disk – scalability: unaffected by the number of clients – few local resources (e.g. CPU, NIC, display) • Cost – most resources on work-group or domain servers – capital: less than local (per client) disk storage • Cloud Services – operational: zero, it requires no administration – clients access services rather than resources • Capacity: unlimited, it is never full – clients do not see individual servers • Availability: 100%, no failures or down-time Distributed File Systems 3 Distributed File Systems 4 Remote File Transfer Remote Data Access • explicit commands to copy remote files • OS makes remote files appear to be local – OS specific: scp(1) , rsync(1), S3 tools – remote disk access (e.g. Storage Area Network) – IETF protocols: FTP, SFTP – remote file access (e.g. Network Attached Storage) – distributed file systems (NAS on steroids) • implicit remote data transfers • advantages – browsers (transfer files with HTTP) – email clients (move files with IMAP/POP/SMTP) – transparency, availability, throughput – scalability, cost (capital and operational) • advantages: efficient, requires no OS support • disadvantages • disadvantages: latency, lack of transparency – complexity, issues with shared access Distributed File Systems 5 Distributed File Systems 6 1
5/25/2016 Remote Disk Access Architecture Remote Disk Access client server • Goal: complete transparency system calls – normal file system calls work on remote files file directory file operations operations I/O remote disk server – all programs “just work” with remote files virtual file system integration layer socket socket device I/O I/O I/O • Typical Architectures EXT3 FS DOS FS UNIX FS CD FS UDP TCP TCP UDP – Storage Area Network (SCSI over Fibre Chanel) IP IP MAC block I/O MAC • very fast, very expensive, moderately scalable driver driver – iSCSI (SCSI over ethernet) remote NIC CD disk disk NIC disk driver drivers drivers client driver drivers • client driver turns reads/writes into network requests • server daemon receives/serves requests remote server file system • moderate performance, inexpensive, highly scalable Distributed File Systems 8 Distributed File Systems 7 Rating Remote Disk Access Remote File Access • Advantages: • Goal: complete transparency – provides excellent transparency – normal file system calls work on remote files – decouples client hardware from storage capacity – support file sharing by multiple clients – performance/reliability/availability per back-end – performance, availability, reliability, scalability • Disadvantages • Typical Architecture – inefficient fixed partition space allocation – exploits plug-in file system architecture – can’t support file sharing by multiple client systems – client-side file system is a local proxy – message losses can cause file system errors – translates file operations into network requests – server-side daemon receives/process requests • This is THE model for Virtual Machines – translates them into real file system operations Distributed File Systems 9 Distributed File Systems 10 Remote File Access Architecture Rating Remote File Access client server • Advantages – very good application level transparency system calls remote FS server file directory file – very good functional encapsulation operations operations I/O virtual file system integration layer socket socket – able to support multi-client file sharing I/O I/O remote FS EXT3 FS DOS FS UNIX FS CD FS UDP TCP UDP TCP – potential for good performance and robustness IP IP • Disadvantages MAC MAC block I/O block I/O driver driver – at least part of implementation must be in the OS NIC NIC flash disk CD disk driver driver drivers driver drivers drivers – client and server sides tend to be fairly complex • This is THE model for client/server storage Distributed File Systems 11 Distributed File Systems 12 2
5/25/2016 Cloud Model Remote Disk/File Access • a logical extension of client/server model client primary – all services accessed via standard protocols secondary • opaque encapsulation of servers/resources – resources are abstract/logical, thin-provisioned Distributed File System – one, highly available, IP address for all services – mirroring/migration happen under the covers client • protocols likely to be WAN-scale optimized • advantages: server server server server server – simple, scalable, highly available, low cost – a very compelling business model Distributed File Systems 13 Distributed File Systems 14 (Remote vs. Distributed FS) Security: Anonymous access • Remote File Access (e.g. NFS, CIFS) • all files available to all users – client talks to (per FS) primary server – no authentication required – secondary server may take over if primary fails – may be limited to read-only access – advantages: simplicity – examples: anonymous FTP, HTTP • Distributed File System (e.g. Ceph, RAMCloud) • advantages – data is spread across numerous servers – simple implementation – client may talk directly to many/all of them • disadvantages – advantages: performance, scalability – incapable of providing information privacy – disadvantages: complexity++ – write access often managed by other means Distributed File Systems 15 Distributed File Systems 16 Peer-to-Peer Security Server Authenticated Sessions • client-side authentication/authorization • client agent authenticates to each server – all users are known to all systems – session authorization based on those credentials – all systems are trusted to enforce access control – example: CIFS – example: basic NFS • advantages • advantages – simple implementation – simple implementation • disadvantages • disadvantages – may not work in heterogeneous OS environment – assumes all clients to be trusted – universal user registry is not scalable – doesn’t work in heterogeneous OS environment – no automatic fail-over if server dies – universal user registry is not scalable Distributed File Systems 17 Distributed File Systems 18 3
Recommend
More recommend