1 / 18

Presented By: Samreen Tahir

CODA FILE SYSTEM. Presented By: Samreen Tahir. CODA FILE SYSTEM. WHAT IS IT?. Coda is a network file system and a descendent of the Andrew File System 2. It was designed to be: Highly secure Available Transparent to its users. Andrew File System:.

treva
Download Presentation

Presented By: Samreen Tahir

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CODA FILE SYSTEM Presented By: Samreen Tahir

  2. CODA FILE SYSTEM WHAT IS IT? Coda is a network file system and a descendent of the Andrew File System 2. It was designed to be: • Highly secure • Available • Transparent to its users. Andrew File System: • Architecture of Coda is based on Andrew File System • AFS was developed at Carnegie Mellon University • It was designed to support the CMU community that meant serving 10, 000 workstations

  3. Limitations of AFS: • Limited form of replication posed scaling problems • Non-availability of services when servers and network components fail • No catering for mobile use of portable computers Coda was designed to overcome the problems associated with AFS.

  4. How does Coda work? It works by implementing two COMPLEMENTARY functionalities : • Availability of files by replicating a file volume across • many servers 2. Disconnected mode of operation by caching files at the client machine

  5. AFS Architecture The Coda architecture is based on AFS: The Andrew File System Transparent access to a Vice file server AFS is divided into two types of nodes: 1. Vice nodes: dedicated file servers 2. Virtue nodes: client machines Virtue Client Vice file server

  6. Venus process User process User process RPC client stub Virtual file system layer Local file system interface Local OS The internal organization of a virtue workstation: Virtue Client Machine Network Venus: A process that is hosted on each Virtue system. VFS: Virtual File System, intercepts the calls from client application or user processes and forwards them either to the local file system or Venus.

  7. Communication How do the server and client communicate in Coda? Answer: Through Remote Procedure Calls (RPC) RPC call File Server Client Reply May take arbitrary amount of time (Blocking) • The server keeps sending back messages to the client that it is still working • on the problem. 2. If the server dies and the client notices that it is not receiving any messages it reports back failure to the client application.

  8. Communication (contd.) F File Invalidate F F F Invalidate F F F F Updated File File server Invalidate F F client When a server notices updates in a file, it must inform the client which are caching a copy of it to invalidate that copy.

  9. COMMUNICATION: (contd.) There are two ways to invalidate a file: A better approach: Client Client invalidate invalidate reply reply Server Server invalidate invalidate reply reply Client Client Time Time Sending invalidation message one at a time. Sending invalidation messages in parallel. This method is inefficient since a client may crash before giving a reply to the server.

  10. RPC2 • Coda uses RPC2: more sophisticated than the traditional RPC used by NFS • RPC2 implements a functionality called side effect: a separate connection is opened when a remote procedure is called. • This separate connection is for the application specific protocol between the client and the server.

  11. RPC2 contd. Client Application Server RPC Application-specific protocol Client side effect Server side effect RPC client stub RPC server stub RPC protocol Side-effects in Coda’s RPC2 system.

  12. Naming: • Coda uses name space implementation analogous to that of UNIX. • Volumes are the building units of the entire file system and are mounted at a mount point.

  13. Clients in coda have access to a single shared namespace Naming inherited from server’s namespace Client B Client A Server afs pkg local afs bin pkg bin Exported directory mounted by client Exported directory mounted by client Network Clients in Coda have access to a single shared namespace.

  14. File Identifiers:

  15. Client Caching:

  16. Server Replication:

  17. Fault Tolerance: Disconnected Operation

  18. Fault Tolerance: Disconnected Operation

More Related