scispace - formally typeset
Search or ask a question

Showing papers on "Distributed File System published in 1992"


Patent
Matthew Sterling Hecht1
27 Oct 1992
TL;DR: Work Flow Manager (WFM) as mentioned in this paper is a process manager that manages and controls the flow of work items from one function to the next in a well-defined application process to achieve the complete processing of those work items.
Abstract: A Work Flow Manager (WFM), or process manager, is the software to manage and control the flow of work items from one function to the next in a well-defined application process to achieve the complete processing of those work items. Applications of WFMs include the processing of imaged or multimedia documents such as health and other insurance forms, filmless radiology, IRS tax submissions, and FBI fingerprint and voice identification. The invention WFM: a. provides an improved, scalable subsystem and method for work flow management; b. partitions the application (work flow) process into component distributed services, each represented by an OSF Distributed Computer Environment (DCE) service; c. defines the application process with a state transition diagram (STD); d. uses centralized control software with a work-in-process (WIP) manager, a work queue manager, and a WIP submission attributes data base manager; e. defines and uses a common "pull system" protocol for communication between the WFM and the component distributed services; f. distinguishes WIP submissions from archived submissions; and g. uses an "attribute-base file system" to store submissions, typically implemented with both a data base for submission attributes (including the current state of WIP submissions), and a distributed file system for submission contents files.

199 citations


Patent
04 Jun 1992
TL;DR: In this article, a distributed data processing system and method in which locks on a file are supported by a data structure that resides on either a client machine or on the file's server is presented.
Abstract: A distributed data processing system and method in which locks on a file are supported by a data structure that resides on either a client machine or on the file's server. When only a single client's processes are locking a file, the data structure can reside on that client. Whenever a plurality of client machines attempt to place locks on a file, the data structure is moved to the server; this forces the clients locking the file to communicate with the server when performing lock operations. When a client requests a lock from the server that cannot be granted because of an existing blocking lock, the client is informed that it should put the requesting process asleep awaiting a retry notification. When there is a change in the locks on the file that might allow such a client's now sleeping process to acquire the lock, the server sends a retry notice to the client. This awakens the sleeping process at the client, and the process then reattempts the lock operation by sending a message to the server.

113 citations


Journal ArticleDOI
TL;DR: The proposition that scale should be recognized as a primary factor influencing the architecture and implementation of distributed systems is validated using Andrew and Coda, two distributed file systems.
Abstract: The proposition that scale should be recognized as a primary factor influencing the architecture and implementation of distributed systems is validated using Andrew and Coda, two distributed file systems. Performance, operability, and security are dominant considerations in the design of these systems. Availability is a further consideration the design of Coda. Client caching, bulk data transfer, token-based mutual authentication and hierarchical organization of the protection domain have emerged as mechanisms that enhance scalability. The separation of concerns made possible by functional specialization has also proved valuable in scaling. Heterogeneity is an important by-product of growth, but the mechanisms available to cope with it are rudimentary. Physical separation of clients and servers turns out to be a critical requirement for scalability. >

76 citations


01 Jan 1992
TL;DR: The dissertation presents the issues addressed in the design of Ficus, a large scale wide area distributed file system currently operational on a modest scale at UCLA, and key aspects of providing such a service include toleration of partial operation in virtually all areas; support for large scale, optimistic data replication; and a flexible, extensible modular design.
Abstract: The dissertation presents the issues addressed in the design of Ficus, a large scale wide area distributed file system currently operational on a modest scale at UCLA. Key aspects of providing such a service include toleration of partial operation in virtually all areas; support for large scale, optimistic data replication; and a flexible, extensible modular design. Ficus incorporates a "stackable layers" modular architecture and full support for optimistic replication. Replication is provided by a pair of layers operating in concert above a traditional filing service. A "volume" abstraction and on-the-fly volume "grafting" mechanism are used to manage the large scale file name space. The replication service uses a family of novel algorithms to manage the propagation of changes to the filing environment. These algorithms are fully distributed, tolerate partial operation (including nontransitive communications), and display linear storage overhead and worst case quadratic message complexity.

61 citations



Proceedings ArticleDOI
01 Jun 1992
TL;DR: This work proposes Frolic, a scheme for cluster-based file replication in large-scale distributed file systems, and proposes and study algorithms for the two main issues, locating a valid file replica, and maintaining consistency among replicas.
Abstract: The increasing need for data sharing in large-scale distributed systems may place a heavy burden on critical resources such as file servers and networks. Our examination of the workload in one large commercial engineering environment shows that wide-spread sharing of unstable files among tens to hundreds of users is common. Traditional client-based file cacheing techniques are not scalable in such environments.We propose Frolic, a scheme for cluster-based file replication in large-scale distributed file systems. A cluster is a group of workstations and one or more file servers on a local area network. Large distributed systems may have tens or hundreds of clusters connected by a backbone network. By dynamically creating and maintaining replicas of shared files on the file servers in the clusters using those files, we effectively reduce reliance on central servers supporting such files, as well as reduce the distances between the accessing sites and data. We propose and study algorithms for the two main issues in Frolic, 1) locating a valid file replica, and 2) maintaining consistency among replicas. Our simulation experiments using a statistical workload model based upon measurement data and real workload characteristics show that cluster-based file replication can significantly reduce file access delays and server and backbone network utilizations in large-scale distributed systems over a wide range of workload conditions. The workload characteristics most critical to replication performance are: the size of shared files, the number of clusters that modify a file, and the number of consecutive accesses to files from a particular cluster.

42 citations


Journal ArticleDOI
E. Drakopoulos1, M.J. Merges1
TL;DR: A closed queuing network model of the client-server storage system is used to analyze the performance of the system for various file movement criteria and to study the tradeoffs between recalling a file and accessing it by a distributed file system.
Abstract: The performance analysis of a system in which storage is provided by a file server node on a network of client processors is discussed. The server controls a hierarchy of storage devices, and provides all the necessary file management functions. The clients are large mainframe systems that have their own local storage devices. The movement of files among the various storage levels is managed by a hierarchical storage management system. A closed queuing network model of the client-server storage system is used to analyze the performance of the system for various file movement criteria and to study the tradeoffs between recalling a file and accessing it by a distributed file system. Several network topologies (Ethernet, token ring, channel-to-channel) and their effect on performance are considered. >

36 citations


01 May 1992
TL;DR: The simulations show that maintaining cache consistency between machines is not a significant problem; only 1 in 400 name component look ups required invalidation of a remotely cached entry.
Abstract: This paper presents the results of simulating file name and attribute caching on client machines in a distributed file system. The simulation used trace data gathered on a network of about 40 workstations. Caching was found to be advantageous: a cache on each client containing just 10 directories had a 91 percent hit rate on name look ups. Entry-based name caches (holding individual directory entries) had poorer performance for several reasons, resulting in a maximum hit rate of about 83 percent. File attribute caching obtained a 90 percent hit rate with a cache on each machine of the attributes for 30 files. The simulations show that maintaining cache consistency between machines is not a significant problem; only 1 in 400 name component look ups required invalidation of a remotely cached entry. Process migration to remote machines had little effect on caching. Caching was less successful in heavily shared and modified directories such as /tmp, but there weren't enough references to /tmp overall to affect the results significantly. We estimate that adding name and attribute caching to the Sprite operating system could reduce server load by 36 percent and the number of network packets by 30 percent.

32 citations


Journal ArticleDOI
01 Jul 1992
TL;DR: The design of techniques for synchronization of multimedia data at the time of storag e and retrieval from network file servers, which are essential in designing multimediaPon-demand servers ove r metropolitan area networks, is the subject matter of this paper.
Abstract: One of the unique features that distinguishes digital multimedia from traditional computer data is th e presence of multiple media streams (such as audio and video), whose display must proceed in a mutuall y synchronized manner . The design of techniques for synchronization of multimedia data at the time of storag e and retrieval from network file servers, which are essential in designing multimediaPon-demand servers ove r metropolitan area networks, is the subject matter of this paper . A multimedia object being stored on a network file server may he constituted of media component s that may be generated by different sources on the network . Furthermore, the media components may b e generated at different times, but their display may be required to be simultaneous (e .g ., audio dubbing i n movies) . Hence, it, is convenient to place all the media units constituting a multimedia object on a relative time scale, with the media units that are at the beginning of the object placed at zero on the scale . The position of a media unit on the relative time scale defines its relative time stamp (RTS) . Each media unit (such as a video frame or an audio sample) should be associated with a RTS . During retrieval, all thos e media units with the same RTS must be displayed simultaneously . Assignment of RTSs to media units is straight-forward in the absence of both rate mismatches betwee n 1/0 devices used for generation of media units and network jitter . However, in future integrated networks , I/O devices that lack the sophistication to run elaborate time rate synchronization protocols may be directl y (as opposed to via a host computer) to the network, e .g ., Etherphone, ISDN Telephone, etc . Furthermore , even in environments in which clocks are synchronized, compression may yield variations in sizes of medi a units, as a result of which the actual period of each media unit. may vary between p* (1 — c) and p * (1 + c) . where p is the nominal value and c the maximum fractional variation . The relative time scale is is based c m a master media source (all other sources are slave sources) whose choice is application dependent . The fi e server, when it receives media units from the master and slave devices, determines sets of media units tha t are generated within a tolerable window of asynchrony, A and assigns the the same RTS to media units that are in the same set . Such sets of media units are called synchronization sets : media units nm and n, fro m the master and slave devices, respectively, can form a synchronization set iff their generation times g(n,,, ) and g(n,) are such that Ig(nm) g(n,)I <,A . Owing to non-deterministic variations in transmission delays (which are assumed to be bounded betwee n Amin and Amax) of media units, the exact generation times of media units are not known to the file server . Determination of synchronization sets is therefore based on the the file server's estimates of the earliest an d latest possible generation times of media units from the master and slave sources . When media unit n i s received by the file server at time r, the file server can determine the earliest and latest possible generatio n times of media unit n, denoted by g e (n), and g t (n), t .o be : g e (n) = — ,mar, and g t (n) = r — z min . Give n the generation intervals [gn,(nm),g ;,ti(n,,,)] and [g ;(n,),g;(n,)] of the latest media units n m and n, receive d from the master and slave sources, respectively, the file server can determine that ti,,, and n, belong to a synchronization set if 6 gmar( n m, n ,) < .A (1 )

29 citations


01 Jan 1992
TL;DR: Deceit is highly efficient for cases that require a high degree of replication and safety, but it is inefficient in cases where very specific optimizations are possible and the flexibility that Deceit provides is still very useful.
Abstract: There are many existing distributed file systems. Each file system provides a different degree of performance and safety. In this context, performance is the time required to satisfy individual requests, and safety is the set of guarantees that the file system provides to users. In this thesis, we characterize many of the trade-offs between performance and safety. We include numerical relationships whenever possible. As a corollary, it is shown that a flexible file system--one that provides a wide range of possible safety properties--can also have very good performance. This thesis uses two main approaches, practical and theoretical. The practical approach centers around the Deceit File System. Deceit supports file replication, file migration, and a sophisticated update control protocol. Deceit can behave like a plain Sun Network File System (NFS) server and can be used by any NFS client without modifying any client software. Deceit servers are interchangeable and collectively provide the illusion of a single large server machine to its clients. The theoretical approach presents several results that are applicable to all distributed file systems. A careful analysis of many systems yielded insights into the behavior of successful file systems. We formalize the relationships between safety conditions exposed by this analysis. We also determine the cost of reading and writing a file given different sets of safety conditions. In conclusion, we find that Deceit does not totally meet the goal of being efficient under all possible sets of requirements. Deceit is highly efficient for cases that require a high degree of replication and safety, but it is inefficient in cases where very specific optimizations are possible. However, the flexibility that Deceit provides is still very useful. For example, we show that writing to a file with three replicas costs a factor of 5 more messages more than writing to a file with one replica. Allowing asynchronous disk writes instead of synchronous writes can decrease latency by a factor of more than 30. Since Deceit allows the user to choose among these possibilities, dramatic performance gains can be achieved in many cases.

17 citations


Proceedings Article
01 Jan 1992
TL;DR: The results of a trace-driven simulation of a dynamic hierarchical file system are presented, and low-overhead techniques for maintaining cache consistency by detecting missed cache invalidation are discussed.

Journal ArticleDOI
TL;DR: The problem of determining an optimal location strategy for an individual program execution is considered and a heuristic approach for the dynamic file allocation problem is proposed, using a cluster-based approach.
Abstract: In this paper, the problem of determining an optimal location strategy for an individual program execution is considered. In addition, we propose a heuristic approach for the dynamic file allocation problem. In order to reduce the complexity of the optimization problems, a cluster-based approach is used.To access the data files of a distributed file system, a user initiates a program execution. Based on the current allocation of the program and data files as well as the knowledge about the characteristics of the programs, a first optimization calculates the optimal cluster for each individual program execution. The objective of this optimization is the minimization of the intercluster traffic of an individual program execution. Within the optimal cluster, a simple load-balancing strategy is used to determine the corresponding executing node.A second optimization looks for file allocations where the global intercluster traffic is minimized subject to the following constraints: minimal number of file copies, availability, and storage capacity.Experimental results showing the efficiency of the proposed algorithms are examined, and the implications of the model for the design of very large distributed file systems are discussed.

Proceedings ArticleDOI
23 Apr 1992
TL;DR: It is argued that logging should be at the forefront of techniques considered by a system designer when implementing a distributed file system as well as in different guises in the Coda file system.
Abstract: It is argued that logging should be at the forefront of techniques considered by a system designer when implementing a distributed file system. The use of logging in different guises in the Coda file system is described. Coda is a distributed file system whose goal is to provide highly available, scalable, secure and efficient shared file access in an environment of Unix workstations. High availability is achieved through two complementary mechanisms, i.e., server replication and disconnected operation. Logging is used in at least three distinct ways in the current implementation of Coda. First, value logging forms the basis of the recovery technique for recoverable virtual memory (RVM), a transactional virtual memory package. Second, operating logging is used in the replay log that records update activity made by a client while disconnected from all servers. Third, operation logging is used in resolution logs on severs to allow transparent resolution of directory updates made to partitioned server replicas. >

Proceedings ArticleDOI
12 Nov 1992
TL;DR: The authors describe the implementation and an initial performance study of Frolic, a cluster-based dynamic file replication system that specifically targets large scale commercial environments with extensive file sharing, although it is expected to also perform well in systems with limited file sharing.
Abstract: The authors describe the implementation and an initial performance study of Frolic, a cluster-based dynamic file replication system. This system specifically targets large scale commercial environments with extensive file sharing, although it is expected to also perform well in systems with limited file sharing as well. Instead of keeping copies of a widely shared file at each client workstation, these files are dynamically replicated onto the cluster file servers, so that they become locally available. The costs of maintaining consistency among the limited number of server copies should be much less than that among a large number of clients. The problems of network and server congestion as well as that of high access latency may be alleviated. Simulation studies using a statistical workload have shown that cluster-based file replication can significantly reduce file access times for a wide range of workload parameters. >

Patent
11 Jun 1992
TL;DR: In this paper, a method of storing a file in a distributed processing system having a plurality of data processing units with storage units was proposed, the data processing unit being interconnected by a transmission medium (LAN), wherein a file having a set of data is divided in accordance with a physical minimum file division unit, and stored in the storage units.
Abstract: A method of storing a file in a distributed processing system having a plurality of data processing units (10, 20) with storage units (11 - 22), the data processing units being interconnected by a transmission medium (LAN), wherein a file having a set of data is divided in accordance with a physical minimum file division unit, and stored in the storage units At least one of the data processing units is provided with a memory unit (file management table) (15, 25) for storing correspondence information between a logical store position of data of the file recognized by a program running on the distributed processing system, and a physical store position of the data actually stored in the storage unit

Journal ArticleDOI
01 May 1992
TL;DR: This paper describes different methods and techniques used to model, analyze, evaluate and implement distributed file systems.
Abstract: This paper describes different methods and techniques used to model, analyze, evaluate and implement distributed file systems. Distributed file systems are characterized by the distributed system hardware and software architecture, in which they are implemented as well as by the file systems' functions. In addition, distributed file system performance depends on the load executed in the system. Modeling and analysis of distributed file systems requires new methods to approximate complexity of the system and to provide a useful solution. The complexity of the distributed file system is reflected in the possible placement of the files, file replication, and migration of files and processes. The synchronization mechanisms are needed to control file access. File sharing involves load sharing in distributed environment.

30 Jun 1992
TL;DR: Center for Information Technology Integration University of Michigan 519 West William Street Ann Arbor, MI 48103-4943 CITI Technical Report 92–4 Intermediate File Servers in a Distributed File System Environment 92-4.
Abstract: Center for Information Technology Integration University of Michigan 519 West William Street Ann Arbor, MI 48103-4943 CITI Technical Report 92–4 Intermediate File Servers in a Distributed File System Environment

Proceedings ArticleDOI
H.C. Rao1
15 Jun 1992
TL;DR: The author presents a global, Internet-wide name space that is built on top of Jade without any modification of the file system.
Abstract: Jade is a distributed file system that provides a uniform way to name and access files in an Internet environment. It makes three important contributions. First, Jade integrates a heterogeneous collection of existing file systems, where heterogeneous means that the underlying physical file systems support different file access protocols. It is designed under the restriction that the underlying file systems may not be modified. Secondly, the system is partitioned into a collection of per-user, autonomous, well-balanced, logical file systems, each of which consists of a set of physical file systems and a dedicated private, logical name space. Finally, the author presents a global, Internet-wide name space that is built on top of Jade without any modification of the file system. >

Proceedings ArticleDOI
11 Nov 1992
TL;DR: A new framework for distributing information in the large scale, heterogeneous distributed computing environment is presented with a protocol architecture and the notion of a cluster server to eliminate the burden of administrative tasks and reduce the amount of duplicate file transfer.
Abstract: A new framework for distributing information in the large scale, heterogeneous distributed computing environment is presented. It is argued that traditional methods for distributing information have several shortcomings, and that existing distributed file systems do not provide a suitable access model, heterogeneity, or scalability for this application area. A framework is presented to accomplish these goals with a protocol architecture and the notion of a cluster server. The burden of administrative tasks for distributing information is eliminated, and the amount of duplicate file transfer is reduced. >

Proceedings ArticleDOI
28 May 1992
TL;DR: A performance model for file transfer is developed which consists of three submodels, one for each phase of file transfer, and the validity of the model is assessed using measurement data from a Unix United system.
Abstract: The availability of high-speed networks and the reduced cost of powerful workstations have led to wide-spread use of distributed systems. File transfer is an important operation in a distributed system. It can be considered as a primitive operation in high-level applications such as file migration, process migration and load balancing. The authors develop a performance model for file transfer which consists of three submodels, one for each phase of file transfer. The read phase incorporates prefetching (read-ahead) of file blocks, the write phase incorporates postwriting (write-behind), and the control phase forces the file transfer to be sequential. The throughput of file transfer is obtained analytically using a Markov chain analysis. The validity of the model is assessed using measurement data from a Unix United system. Additional results on the performance of file transfer are also presented. >

Proceedings ArticleDOI
12 Nov 1992
TL;DR: In this article, the authors discuss the consequences of excess load on primary secondary design, on their communication software, on election algorithm, on memory usage in their file servers, and on their distributed client caching algorithm.
Abstract: Understanding the workload is crucial for the success of a replicated file system. The system must continue to provide service in the presence of excess load, otherwise, its availability will be compromised. This paper presents some shortcomings of the Echo replicated file system in handling excess load. The authors discuss the consequences of excess load on primary secondary design, on their communication software, on election algorithm, on memory usage in their file servers, and on their distributed client caching algorithm. They speculate on possible solutions. >

01 Jan 1992
TL;DR: This thesis develops a simple, adaptive file migration policy for homogeneous distributed file systems which transfer whole files based on an instantaneous performance gain analysis and determines the conditions under which file migration is effective.
Abstract: With the demand for computer resources on the rise, distributed systems are becoming popular. Allowing more users access to resources increases the need to manage these resources efficiently. One management strategy is file migration: migrating files (and their associated requests) from congested to uncongested storage sites to improve overall system performance. In this thesis, we develop a simple, adaptive file migration policy for homogeneous distributed file systems which transfer whole files. Using simulation, we find that our policy can achieve significant performance improvements over a system without file migration that is initially balanced. There is also strong evidence that our policy is robust over a wide range of operating conditions. We begin by developing a performance model for the file transfer operation in a distributed system environment. This model incorporates such issues as flow control, prefetching and postwriting of file blocks, and the contention for buffers at the source and destination. Throughput results for the model are obtained analytically using a Markov chain analysis. These results can be used to estimate parameters for our file migration investigation. File migration is examined next. We develop a simple file migration policy based on an instantaneous performance gain analysis. Briefly, a file migration is performed whenever it is possible to lower the total response time of requests already in the system. Three models are examined. The basic model assumes that the state information used by the file migration policy is current and there is infinite storage for files. The second model investigates the effects of out-dated state information and finally, in the third model, we examine a system with storage space restrictions. Through this investigation, we are able to determine the conditions under which file migration is effective. These results can be used to develop guidelines for the design of distributed file systems.

Proceedings ArticleDOI
Masayuki Orimo1, Sigeki Hirasawa1, Hiroshi Fujise1, Masuyuki Takeuchi1, Kinji Mori1 
14 Apr 1992
TL;DR: The distributed file system for this EVERUN computer system realizes flexible fault-tolerance, and easy expansion, operation and maintenance, and the effectiveness of this computer system has been verified.
Abstract: From the standpoint of system construction/expansion, it is required that a computer system is flexible and tolerant for change of the system structure and has software productivity. A computer system is also required to be easily operated by users regardless of its structure and status. In order to achieve these requirements, the EVERUN (EVEr RUNning) computer system has been developed based on the autonomous decentralized system concept. The distributed file system for this EVERUN computer system is proposed. This file system realizes flexible fault-tolerance, and easy expansion, operation and maintenance. The EVERUN computer system including this file system has been applied to production management systems and so on. The effectiveness of this computer system has been verified. >


01 Jan 1992
TL;DR: The design of the Acacia synchronous file system is described, and the performance of a prototype, user-level server implementation is analyzed, indicating that further development will result in write performance similar to that of existing local file systems.
Abstract: There is currently an enormous performance differential, as much as a factor of ten, between the write performance of local file systems and that of distributed file systems, such as the popular NFS [1]. Moreover, the underlying cause of this performance gap is such that as disks with faster transfer rates, or as multiple disks in parallel, are used, this performance differential can only increase. The performance differential is often attributed to the stateless nature of the distributed file system protocol, and many stateful protocols have been developed, partly justified by the increased file system write performance that results. Stateful protocols, however, are considerably more complex than stateless ones, and should be avoided if possible. The poor write performance of distributed file systems is actually due to a mismatch between the stateless file system protocols, which require the file system to be written synchronously, and current file system designs, which perform very poorly at writing synchronously. This mismatch can be rectified either by changing to stateful protocols, or by developing file systems that are good at writing synchronously. This paper describes the design of the Acacia synchronous file system, and analyses the performance of a prototype, user-level server implementation. The prototype’s performance already exceeds that of NFS, and detailed analysis of its performance indicates that further development will result in write performance similar to that of existing local file systems. * This work is supported by the Fujitsu-ANU Joint Research Agreement. E-mail: Brad.Broom@cs.anu.edu.au

Proceedings ArticleDOI
28 May 1992
TL;DR: The author designs a new and efficient method of managing directory file replicas to provide consistent naming services using the special consistency requirements of naming services and the data structure of directory files.
Abstract: In a distributed system, accesses to an object may come from many nodes. The name of an object may need to be resolved at those nodes. To improve the efficiency and availability of name resolution, a directory file is often replicated at several nodes. Consistency control of data replicas becomes an important issue in such systems. By using the special consistency requirements of naming services and the data structure of directory files, the author designs a new and efficient method of managing directory file replicas to provide consistent naming services. His approach has the following features: (1) each node issues updates asynchronously. (2) minimum delay of reflecting a remote update on the local replica. (3) neither global locking nor globally synchronized clocks are used. >

Journal Article
TL;DR: The PATHWORKS for VMS file server integrates industry-standard personal computers with VAX VMS systems over a communications network and implements Microsoft's server message block (SMB) core protocol, which provides resource sharing using a client-server model.
Abstract: The PATHWORKS for VMS file server integrates industry-standard personal computers with VAX VMS systems over a communications network. It implements Microsoft's server message block (SMB) core protocol, which provides resource sharing using a client-server model. The server provides transparent network access to VAX VMS FILES-11 files from a PC's native operating system. The architecture supports multiple transports to ensure interoperability among all PCs connected on an open network. Due to the performance constraints of many PC applications, data caching and a variety of other algorithms and heuristics were employed to decrease request response time. The file server also implements a security model to provide VMS security mechanisms to PC users.