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.

Slides:



Advertisements
Similar presentations
DISTRIBUTED FILE SYSTEMS Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2013.
Advertisements

Serverless Network File Systems. Network File Systems Allow sharing among independent file systems in a transparent manner Mounting a remote directory.
Computer Science Lecture 20, page 1 CS677: Distributed OS Today: Coda, xFS Case Study: Coda File System Brief overview of other recent file systems –xFS.
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.
Computer Science Lecture 20, page 1 CS677: Distributed OS Today: Distributed File Systems Issues in distributed file systems Sun’s Network File System.
1 CS 194: Distributed Systems Other Distributed File Systems Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering.
CODA/AFS (Constant Data Availability)
Overview of Mobile Computing (3): File System. File System for Mobile Computing Issues for file system design in wireless and mobile environments Design.
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 File Systems Chapter 11
Disconnected Operation in the Coda File System James J. Kistler and M. Satyanarayanan Carnegie Mellon University Presented by Cong.
Coda file system: Disconnected operation By Wallis Chau May 7, 2003.
Computer Science Lecture 18, page 1 CS677: Distributed OS Last Class: Fault tolerance Reliable communication –One-one communication –One-many communication.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Other File Systems: AFS, Napster. 2 Recap NFS: –Server exposes one or more directories Client accesses them by mounting the directories –Stateless server.
Distributed File Systems (Chapter 14, M. Satyanarayanan) CS 249 Kamal Singh.
1 CS 194: Distributed Systems Distributed File Systems Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and.
Concurrency Control & Caching Consistency Issues and Survey Dingshan He November 18, 2002.
Jeff Chheng Jun Du.  Distributed file system  Designed for scalability, security, and high availability  Descendant of version 2 of Andrew File System.
File Systems (2). Readings r Silbershatz et al: 11.8.
Distributed File Systems Sarah Diesburg Operating Systems CS 3430.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Distributed File Systems Steve Ko Computer Sciences and Engineering University at Buffalo.
Coda Descendant of AFS Developed by Mahadev Satyanarayanan and coworkers at Carnegie-Mellon University since 1987 Open Source advanced caching schemes.
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 Systems. Interprocess Communication (IPC) Processes are either independent or cooperating – Threads provide a gray area – Cooperating processes.
Advanced Operating Systems - Spring 2009 Lecture 21 – Monday April 6 st, 2009 Dan C. Marinescu Office: HEC 439 B. Office.
Distributed File Systems
Distributed File Systems Case Studies: Sprite Coda.
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.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
Introduction to DFS. Distributed File Systems A file system whose clients, servers and storage devices are dispersed among the machines of a distributed.
Serverless Network File Systems Overview by Joseph Thompson.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
DISCONNECTED OPERATION IN THE CODA FILE SYSTEM J. J. Kistler M. Sataynarayanan Carnegie-Mellon University.
CODA: A HIGHLY AVAILABLE FILE SYSTEM FOR A DISTRIBUTED WORKSTATION ENVIRONMENT M. Satyanarayanan, J. J. Kistler, P. Kumar, M. E. Okasaki, E. H. Siegel,
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
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.
Computer Science Lecture 19, page 1 CS677: Distributed OS Last Class: Fault tolerance Reliable communication –One-one communication –One-many communication.
CS425 / CSE424 / ECE428 — Distributed Systems — Fall 2011 Some material derived from slides by Prashant Shenoy (Umass) & courses.washington.edu/css434/students/Coda.ppt.
Information/File Access and Sharing Coda: A Case Study J. Kistler, M. Satyanarayanan. Disconnected operation in the Coda File System. ACM Transaction on.
Information Management NTU Distributed File Systems.
GLOBAL EDGE SOFTWERE LTD1 R EMOTE F ILE S HARING - Ardhanareesh Aradhyamath.
Distributed File Systems Questions answered in this lecture: Why are distributed file systems useful? What is difficult about distributed file systems?
Highly Available Services and Transactions with Replicated Data Jason Lenthe.
Computer Science Lecture 19, page 1 CS677: Distributed OS Last class: Distributed File Systems Issues in distributed file systems Sun’s Network File System.
THE EVOLUTION OF CODA M. Satyanarayanan Carnegie-Mellon University.
Distributed Systems: Distributed File Systems Ghada Ahmed, PhD. Assistant Prof., Computer Science Dept. Web:
Distributed File Systems Sun Network File Systems Andrew Fıle System CODA File System Plan 9 xFS SFS Hadoop.
Computer Science Lecture 20, page 1 CS677: Distributed OS Today: Distributed File Systems Issues in distributed file systems Sun’s Network File System.
Computer Science Lecture 19, page 1 CS677: Distributed OS Last Class: Fault tolerance Reliable communication –One-one communication –One-many communication.
Truly Distributed File Systems Paul Timmins CS 535.
Mobility Victoria Krafft CS /25/05. General Idea People and their machines move around Machines want to share data Networks and machines fail Network.
Nomadic File Systems Uri Moszkowicz 05/02/02.
NFS and AFS Adapted from slides by Ed Lazowska, Hank Levy, Andrea and Remzi Arpaci-Dussea, Michael Swift.
Today: Coda, xFS Case Study: Coda File System
Distributed File Systems
Distributed File Systems
CSE 451: Operating Systems Spring Module 21 Distributed File Systems
Distributed File Systems
CSE 451: Operating Systems Winter Module 22 Distributed File Systems
Today: Distributed File Systems
Outline Review of Quiz #1 Distributed File Systems 4/20/2019 COP5611.
Distributed File Systems
Distributed File Systems
Distributed File Systems
Presentation transcript:

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 –Log structured file systems

Computer Science Lecture 21, page 2 CS677: Distributed OS Coda Coda: descendent of the Andrew file system at CMU –Andrew designed to serve a large (global community) Salient features: –Support for disconnected operations Desirable for mobile users –Support for a large number of users

Computer Science Lecture 21, page 3 CS677: Distributed OS Overview of Coda Centrally administered Vice file servers Large number of virtue clients

Computer Science Lecture 21, page 4 CS677: Distributed OS Virtue: Coda Clients The internal organization of a Virtue workstation. –Designed to allow access to files even if server is unavailable –Uses VFS and appears like a traditional Unix file system

Computer Science Lecture 21, page 5 CS677: Distributed OS Communication in Coda Coda uses RPC2: a sophisticated reliable RPC system –Start a new thread for each request, server periodically informs client it is still working on the request RPC2 supports side-effects: application-specific protocols –Useful for video streaming [where RPCs are less useful] RPC2 also has multicast support

Computer Science Lecture 21, page 6 CS677: Distributed OS Communication: Invalidations a)Sending an invalidation message one at a time. b)Sending invalidation messages in parallel. Can use MultiRPCs [Parallel RPCs] or use Multicast - Fully transparent to the caller and callee [looks like normal RPC]

Computer Science Lecture 21, page 7 CS677: Distributed OS Naming Clients in Coda have access to a single shared name space Files are grouped into volumes [partial subtree in the directory structure] –Volume is the basic unit of mounting –Namespace: /afs/filesrv.cs.umass.edu [same namespace on all client; different from NFS] –Name lookup can cross mount points: support for detecting crossing and automounts

Computer Science Lecture 21, page 8 CS677: Distributed OS File Identifiers Each file in Coda belongs to exactly one volume –Volume may be replicated across several servers –Multiple logical (replicated) volumes map to the same physical volume –96 bit file identifier = 32 bit RVID + 64 bit file handle

Computer Science Lecture 21, page 9 CS677: Distributed OS Sharing Files in Coda Transactional behavior for sharing files: similar to share reservations in NFS –File open: transfer entire file to client machine [similar to delegation] –Uses session semantics: each session is like a transaction Updates are sent back to the server only when the file is closed

Computer Science Lecture 21, page 10 CS677: Distributed OS Transactional Semantics Network partition: part of network isolated from rest –Allow conflicting operations on replicas across file partitions –Reconcile upon reconnection –Transactional semantics => operations must be serializable Ensure that operations were serializable after thay have executed –Conflict => force manual reconciliation File-associated dataRead?Modified? File identifierYesNo Access rightsYesNo Last modification timeYes File lengthYes File contentsYes

Computer Science Lecture 21, page 11 CS677: Distributed OS Client Caching Cache consistency maintained using callbacks –Server tracks all clients that have a copy of the file [provide callback promise] –Upon modification: send invalidate to clients

Computer Science Lecture 21, page 12 CS677: Distributed OS Server Replication Use replicated writes: read-once write-all –Writes are sent to all AVSG (all accessible replicas) How to handle network partitions? –Use optimistic strategy for replication –Detect conflicts using a Coda version vector –Example: [2,2,1] and [1,1,2] is a conflict => manual reconciliation

Computer Science Lecture 21, page 13 CS677: Distributed OS Disconnected Operation The state-transition diagram of a Coda client with respect to a volume. Use hoarding to provide file access during disconnection –Prefetch all files that may be accessed and cache (hoard) locally –If AVSG=0, go to emulation mode and reintegrate upon reconnection

Computer Science Lecture 21, page 14 CS677: Distributed OS Overview of xFS. Key Idea: fully distributed file system [serverless file system] xFS: x in “xFS” => no server Designed for high-speed LAN environments

Computer Science Lecture 21, page 15 CS677: Distributed OS Processes in xFS The principle of log-based striping in xFS –Combines striping and logging

Computer Science Lecture 21, page 16 CS677: Distributed OS Reading a File Block Reading a block of data in xFS.

Computer Science Lecture 21, page 17 CS677: Distributed OS xFS Naming Main data structures used in xFS. Data structureDescription Manager mapMaps file ID to manager ImapMaps file ID to log address of file's inode InodeMaps block number (i.e., offset) to log address of block File identifierReference used to index into manager map File directoryMaps a file name to a file identifier Log addressesTriplet of stripe group, ID, segment ID, and segment offset Stripe group mapMaps stripe group ID to list of storage servers