1 Introduction

The Distributed File System: Replication (DFS-R) Protocol is a remote procedure call (RPC) that replicates files between servers. DFS-R enables creation of multimaster optimistic file replication systems. It is multimaster, because files can be changed by any member that participates in replicating shared files. It is optimistic, because files can be updated without any prior consensus or serialization. Therefore, files can be changed by any member without requiring the member to prevent other members from changing the files.

DFS-R is designed to replicate files, attributes, and file metadata. DFS-R is intended to interoperate with the user-level file system semantics: Files are replicated when the applications that modify them close the files. File replication is designed to be performed asynchronously, such that updates made on one member are processed at the rate at which the receiving machine is able to receive the updates, without any real-time restrictions on when the changes must be propagated. DFS-R allows user-level file system operations to continue independent of protocol operations.

Sections 1.5, 1.8, 1.9, 2, and 3 of this specification are normative. All other sections and examples in this specification are informative.