Information Management NTU Distributed File Systems.

Slides:



Advertisements
Similar presentations
The Zebra Striped Network Filesystem. Approach Increase throughput, reliability by striping file data across multiple servers Data from each client is.
Advertisements

Serverless Network File Systems. Network File Systems Allow sharing among independent file systems in a transparent manner Mounting a remote directory.
Distributed Storage March 12, Distributed Storage What is Distributed Storage?  Simple answer: Storage that can be shared throughout a network.
CS-550: Distributed File Systems [SiS]1 Resource Management in Distributed Systems: Distributed File Systems.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts Amherst Operating Systems CMPSCI 377 Lecture.
G Robert Grimm New York University Disconnected Operation in the Coda File System.
Copyright © Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE CS582: Distributed Systems Lecture 13, 14 -
Distributed Systems 2006 Styles of Client/Server Computing.
Other File Systems: AFS, Napster. 2 Recap NFS: –Server exposes one or more directories Client accesses them by mounting the directories –Stateless server.
Computer Science Lecture 21, page 1 CS677: Distributed OS Today: Coda, xFS Case Study: Coda File System Brief overview of other recent file systems –xFS.
NFS. The Sun Network File System (NFS) An implementation and a specification of a software system for accessing remote files across LANs. The implementation.
Distributed File System: Data Storage for Networks Large and Small Pei Cao Cisco Systems, Inc.
By Ryan Middleton Distributed File Systems 1. Outline Introduction Definition Example architecture Early implementations NFS AFS Later advancements Journal.
1 Network File System. 2 Network Services A Linux system starts some services at boot time and allow other services to be started up when necessary. These.
File Systems (2). Readings r Silbershatz et al: 11.8.
Frangipani: A Scalable Distributed File System C. A. Thekkath, T. Mann, and E. K. Lee Systems Research Center Digital Equipment Corporation.
DESIGN AND IMPLEMENTATION OF THE SUN NETWORK FILESYSTEM R. Sandberg, D. Goldberg S. Kleinman, D. Walsh, R. Lyon Sun Microsystems.
Distributed File Systems Sarah Diesburg Operating Systems CS 3430.
Presented by: Alvaro Llanos E.  Motivation and Overview  Frangipani Architecture overview  Similar DFS  PETAL: Distributed virtual disks ◦ Overview.
Distributed File Systems Concepts & Overview. Goals and Criteria Goal: present to a user a coherent, efficient, and manageable system for long-term data.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Distributed File Systems Steve Ko Computer Sciences and Engineering University at Buffalo.
CSC 456 Operating Systems Seminar Presentation (11/13/2012) Leon Weingard, Liang Xin The Google File System.
Distributed Systems Principles and Paradigms Chapter 10 Distributed File Systems 01 Introduction 02 Communication 03 Processes 04 Naming 05 Synchronization.
Networked File System CS Introduction to Operating Systems.
Distributed File Systems
Distributed file systems, Case studies n Sun’s NFS u history u virtual file system and mounting u NFS protocol u caching in NFS u V3 n Andrew File System.
Distributed File Systems Overview  A file system is an abstract data type – an abstraction of a storage device.  A distributed file system is available.
Chapter 20 Distributed File Systems Copyright © 2008.
What is a Distributed File System?? Allows transparent access to remote files over a network. Examples: Network File System (NFS) by Sun Microsystems.
1 Chap8 Distributed File Systems  Background knowledge  8.1Introduction –8.1.1 Characteristics of File systems –8.1.2 Distributed file system requirements.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Exercises for Chapter 12: Distributed.
IM NTU Distributed Information Systems 2004 Distributed File Systems -- 1 Distributed File Systems Yih-Kuen Tsay Dept. of Information Management National.
Serverless Network File Systems Overview by Joseph Thompson.
Presented By: Samreen Tahir Coda is a network file system and a descendent of the Andrew File System 2. It was designed to be: Highly Highly secure Available.
ITEC 502 컴퓨터 시스템 및 실습 Chapter 11-2: File System Implementation Mi-Jung Choi DPNM Lab. Dept. of CSE, POSTECH.
Jinyong Yoon,  Andrew File System  The Prototype  Changes for Performance  Effect of Changes for Performance  Comparison with A Remote-Open.
Network File System Protocol
Sun Network File System Presentation 3 Group A4 Sean Hudson, Syeda Taib, Manasi Kapadia.
Enhancements to NFS 王信富 R /11/6. Introduction File system modules File system modules –Directory module –File module –Access control module.
GLOBAL EDGE SOFTWERE LTD1 R EMOTE F ILE S HARING - Ardhanareesh Aradhyamath.
Distributed File Systems Architecture – 11.1 Processes – 11.2 Communication – 11.3 Naming – 11.4.
EE324 INTRO TO DISTRIBUTED SYSTEMS. Distributed File System  What is a file system?
Distributed File Systems Group A5 Amit Sharma Dhaval Sanghvi Ali Abbas.
Distributed File Systems Questions answered in this lecture: Why are distributed file systems useful? What is difficult about distributed file systems?
Distributed File System. Outline Basic Concepts Current project Hadoop Distributed File System Future work Reference.
Chapter Five Distributed file systems. 2 Contents Distributed file system design Distributed file system implementation Trends in distributed file systems.
Distributed Systems: Distributed File Systems Ghada Ahmed, PhD. Assistant Prof., Computer Science Dept. Web:
Case Study -- Sun’s Network File System (NFS) NFS is popular and widely used. NFS was originally designed and implemented by Sun Microsystems for use on.
DISTRIBUTED FILE SYSTEM- ENHANCEMENT AND FURTHER DEVELOPMENT BY:- PALLAWI(10BIT0033)
Andrew File System (AFS)
File System Implementation
File service architecture
Today: Coda, xFS Case Study: Coda File System
CSE 451: Operating Systems Winter Module 22 Distributed File Systems
Distributed File Systems
Distributed File Systems
Exercises for Chapter 8: Distributed File Systems
CSE 451: Operating Systems Spring Module 21 Distributed File Systems
Distributed File Systems
Distributed File Systems
CSE 451: Operating Systems Winter Module 22 Distributed File Systems
Chapter 15: File System Internals
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Outline Review of Quiz #1 Distributed File Systems 4/20/2019 COP5611.
Distributed File Systems
Lecture 4: File-System Interface
Distributed File Systems
Network File System (NFS)
Presentation transcript:

Information Management NTU Distributed File Systems

Information Management NTU Purposes of a Distributed File System Sharing of storage and information across a network Convenience (and efficiency) of a conventional file system Persistent storage that most other services (e.g., Web servers) need

Information Management NTU Properties of Storage Systems Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition. Other properties include availability, timing guarantees, etc.

Information Management NTU Files Files are an abstraction of permanent storage. A file is typically defined as a sequence of similar-sized data items along with a set of attributes. A directory is a file that provides a mapping from text names to internal file identifiers.

Information Management NTU File Attributes Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU File Systems Responsible for the (a) organization, (b) storage, (c) retrieval, (d) naming, (e) sharing, and (f) protection of files. Provide a set of programming operations that characterize the file abstraction, particularly operations to read and write subsequences of data items beginning at any point of a file.

Information Management NTU File System Modules Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition. A basic distributed file system implements all of the above plus modules for client-server communication and distributed naming and location of files.

Information Management NTU UNIX File Operations Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU Distributed File System Requirements Transparency: access, location, mobility, performance, and scaling transparency. Concurrency (and Consistency) Replication/Caching (and Consistency) Hardware/operating system heterogeneity Fault-Tolerance Security (Access Control, Authentication) Efficiency

Information Management NTU A File Service Architecture Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition. Note: The modules communicate with one another by remote procedure calls.

Information Management NTU File Service Components Flat file service: implementing operations on the contents of files, which are referred to by unique file identifiers (UFIDs) Directory service: mapping text names of files (including directories) to their UFIDs Client module: integrating and extending the previous two services under a single application programming interface * Why is this structure more open and configurable?

Information Management NTU Flat File Service Operations Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU Difference from UNIX Immediate access to files using UFIDs (without open or close) Read or write starts at the position indicated by a parameter All operations, except create, are repeatable Allows a stateless implementation

Information Management NTU Access Control Conventional access rights checks (at open calls) not feasible Two ‘stateless’ approaches: * Capability (by manipulating the UFID) * User identity sent with every request (adopted in NFS and AFS) Main problem: forged requests; some authentication mechanism is needed

Information Management NTU Capabilities and UFIDs A capability is a binary value that acts as an access key; it can be encoded in the UFID. Basic construction of a UFID: file group id + file number + random number Additional field: permissions Additional field: encryption of the permission field

Information Management NTU Directory Service Operations Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition. Note: Each directory is stored as an ordinary file with a UFID.

Information Management NTU The Network File System (NFS) Introduced by Sun Microsystems in 1985, now an Internet standard Runs on top of RPC (RFC 1831) Implemented on most operating systems Version described here: UNIX implementation of NFS Version 3 (RFC 1813, June 1995) Most recent version: NFS Version 4 (RFC 3010, December 2000)

Information Management NTU NFS Architecture Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition. Note: Each computer can act as both a client and a server.

Information Management NTU The Virtual File System Module Access transparency File handles (file identifiers):  ‘ filesystem indentifier’ + ‘i-node number’ + ‘i-node generation number’ One VFS structure for each mounted filesystem  relates a remote filesystem (identified by its file handle obtained at mount time) to a local directory on which it is mounted One v-node per open file  indicates whether a file is local or remote, etc.

Information Management NTU The NFS Client Module in UNIX Integrated with the kernel Emulates the UNIX file system primitives A single client module serves all user-level processes The encryption key for authentication stored in the kernel Caches file blocks

Information Management NTU NFS Server Operations Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU NFS Server Operations (cont’d) Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU Remote File Acceses Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU File System Information in UNIX saturn:~ 35 % df -k Filesystemkbytes capacityMounted on /dev/dsk/c0t3d0s %/ /dev/dsk/c0t3d0s %/usr /dev/dsk/c0t3d0s %/tmp galaxy:/usr/local.real %/usr/local lucky:/var/mail.real %/var/mail cosmos:/home.real/student/xxx %/home/xxx galaxy:/home.real/faculty/yyy %/home/yyy * Note: The output of ‘df -k’ has been edited.

Information Management NTU Caching Server caching  read-ahead  write-through  delayed-write with the commit operation Client caching  cache validation (freshness interval and validation timestamp, modification timestamp and getattr, …)  bio-daemon (for read-ahead and delayed-write caching at the client side)

Information Management NTU Achievements of NFS Access and location transparency Mobility transparency (partially) Read-only file replication: the automounter Fault-tolerance: stateless servers, the automounter Efficiency: caching of disk blocks (main problem: frequent use of getattr) Nonachievements: scalability, concurrency and consistency, security (Kerberos),...

Information Management NTU The Andrew File System (AFS) Developed at CMU Current versions: AFS-2, AFS-3 Compatible with NFS Main achievement over (older) NFS: better scalability by minimizing client-server communication Key characteristics: whole-file serving and caching (partial file caching allowed in AFS-3)

Information Management NTU Observations on UNIX File Usage Files are mostly small Read operations are more common Sequential accesses are more common Most files are written by one user Files are referenced in burst

Information Management NTU AFS Architecture Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU AFS File Name Space Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU System Call Interception in AFS Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU AFS System Calls Implementation Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU Cache Consistency A callback promise is provided when Vice supplies a copy of file to a Venus process The callback promise stored with the cached copy is in either valid or cancelled state When Venus handles an open, it checks the cache.

Information Management NTU The Vice Service Interface Source: G. Coulouris et al., Distributed Systems: Concepts and Design, Third Edition.

Information Management NTU Enhancements to NFS and AFS Spritely NFS  add open and close, use callbacks NQNFS (Not Quite NFS)  use callbacks and leases WebNFS  allow browsers and other applications to interact with an NFS server directly NFS Version 4 (RFC 3010, December 2000)  incorporating all of the above and more DCE/DFS (based on AFS)  use callbacks and write tokens (with a lifetime)

Information Management NTU New Features of NFS Version 4 Adoption of the RPCSEC_GSS (RFC 2203) security protocol Multiple operations in one request Better migration and replication abilities  A client may query the location(s) of a file system. Introduction of open and close operations Lease-based file locking Callback-based delegation of files

Information Management NTU New Design Approaches Background  high-performance storage technology (e.g., RAID)  log-structure file systems (e.g., Sprite, BSD LFS)  high-performance switched networks (e.g., ATM, high-speed Ethernet) Goals: high scalability and fault-tolerance Main ideas: distribute file data among many nodes, separate responsibilities, … Constraints: high level of trust

Information Management NTU More Recent File System Designs xFS  Serverless: all data, metadata, and control can be located anywhere in the system; any machine can take over the responsibilities of a failed one Frangipani  Two-layer structure the Petal distributed virtual disk system the Frangipani server module Both designs utilize RAID-style striping, log- structured file storage, etc.

Information Management NTU Log-based Striping in xFS Source: T.E. Anderson et al., Serverless Network File Systems, ACM TOCS 1996

Information Management NTU An xFS Configuration Source: T.E. Anderson et al., Serverless Network File Systems, ACM TOCS 1996

Information Management NTU A Frangipani Configuration Source: C.A. Thekkath et al., Frangipani: A Scalable Distributed File System, ACM SOSP 1997