A Distributed File System for Distributed Conferencing System
Total Page:16
File Type:pdf, Size:1020Kb
A DISTRIBUTED FILE SYSTEM FOR DISTRIBUTED CONFERENCING SYSTEM By PHILIP S. YEAGER A THESIS PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE UNIVERSITY OF FLORIDA 2003 Copyright 2003 by Philip S. Yeager ACKNOWLEDGMENTS I would like to thank Dr. Richard Newman for his help and guidance with this project. I would like to express my gratitude to Dr. Jonathan C.L. Liu and Dr. Beverly Sanders for serving on my committee. I would like to thank Dr. Joseph Wilson for serving as a substitute at my defense. I would also like to thank Vijay Manian and the other DCS group members for their advice and contributions. I thank my parents and friends for their encouragement and support. Finally, I would like to thank Candice Williams for everything she has done. Without these people this work would not have been possible. iii TABLE OF CONTENTS Page ACKNOWLEDGMENTS ................................................................................................. iii LIST OF FIGURES ......................................................................................................... viii ABSTRACT....................................................................................................................... ix CHAPTER 1 INTRODUCTION ........................................................................................................1 1.1 Introduction........................................................................................................1 1.2 Overview............................................................................................................1 1.3 Definitions..........................................................................................................3 1.4 The Distributed Conferencing System (DCS) ...................................................5 1.5 Motivation and Objectives.................................................................................8 1.6 Organization of Thesis.......................................................................................9 2 DISTRIBUTED FILE SYSTEMS..............................................................................11 2.1 Introduction......................................................................................................11 2.2 The Network File System ................................................................................11 2.2.1 Introduction.............................................................................................11 2.2.2 Basic Architecture...................................................................................12 2.2.3 Naming and Transparency ......................................................................12 2.2.4 Availability and Replication ...................................................................14 2.2.5 Caching and Consistency Semantics ......................................................14 2.2.6 Comments ...............................................................................................15 2.3 The Andrew File System (AFS) ......................................................................16 2.3.1 Introduction.............................................................................................16 2.3.2 Basic Architecture...................................................................................16 2.3.3 Naming and Transparency ......................................................................17 2.3.4 Availability and Replication ...................................................................17 2.3.5 Caching and Consistency Semantics ......................................................18 2.3.6 Comments ...............................................................................................19 2.4 Coda .................................................................................................................20 2.4.1 Introduction.............................................................................................20 2.4.2 Basic Architecture...................................................................................20 2.4.3 Naming and Transparency ......................................................................21 iv 2.4.4 Availability and Replication ...................................................................21 2.4.5 Caching and Consistency Semantics ......................................................22 2.4.6 Comments ...............................................................................................23 2.5 Other Distributed File Systems........................................................................23 2.5.1 Introduction.............................................................................................23 2.5.2 Sprite Network File System....................................................................24 2.5.3 The Elephant File System .......................................................................24 2.5.4 xFS ..........................................................................................................25 2.5.5 Comments ...............................................................................................26 2.6 Redundant Array of Inexpensive Disks ...........................................................26 2.6.1 Introduction.............................................................................................26 2.6.2 Description..............................................................................................27 2.6.3 Comments ...............................................................................................28 2.7 Previous Implementation of DCS File Services ..............................................28 2.8 The Needs of DCS ...........................................................................................29 2.9 Summary..........................................................................................................30 3 VERSIONING CONTROL SYSTEMS.....................................................................32 3.1 Introduction......................................................................................................32 3.2 Source Code Control System (SCCS) .............................................................32 3.2.1 Introduction.............................................................................................32 3.2.2 Description..............................................................................................33 3.2.3 Comments ...............................................................................................34 3.3 Revisions Control System (RCS).....................................................................34 3.3.1 Introduction.............................................................................................34 3.3.2 Description..............................................................................................35 3.3.3 Comments ...............................................................................................37 3.4 Concurrent Versioning System (CVS).............................................................38 3.4.1 Introduction.............................................................................................38 3.4.2 Description..............................................................................................38 3.4.3 Comments ...............................................................................................39 3.5 Other Versioning Control Systems ..................................................................39 3.5.1 Introduction.............................................................................................39 3.5.2 Distributed RCS (DRCS)........................................................................40 3.5.3 Distributed CVS (DCVS) .......................................................................40 3.5.4 Distributed Versioning System (DVS) ...................................................40 3.5.5 Comments ...............................................................................................41 3.6 The Needs of DCS ...........................................................................................41 3.7 Summary..........................................................................................................42 4 REQUIREMENTS .....................................................................................................43 4.1 Introduction......................................................................................................43 4.2 Basic Architecture............................................................................................43 4.2.1 Client/Server Architecture ......................................................................43 4.2.2 DCS File Space.......................................................................................44 v 4.3 Naming and Transparency ...............................................................................44 4.3.1 Uniform Name Space..............................................................................44 4.3.2 View Based on Roles..............................................................................45 4.4 Availability and Replication ............................................................................46 4.5 Caching and Consistency Semantics ...............................................................46