RFC 1056 (rfc1056) - Page 2 of 38


PCMAIL: A distributed mail system for personal computers



Alternative Format: Original Text Document



RFC 1056                         PCMAIL                        June 1988


2. Introduction

   Pcmail is a distributed mail system providing mail service to an
   arbitrary number of users, each of whom owns one or more
   workstations.  Pcmail's motivation is to provide very flexible mail
   service to a wide variety of different workstations, ranging in power
   from small, resource-limited machines like IBM PCs to resource-rich
   (where "resources" are primarily processor speed and disk space)
   machines like Suns or Microvaxes.  It attempts to provide limited
   service to resource-limited workstations while still providing full
   service to resource-rich machines.  It is intended to work well with
   machines only infrequently connected to a network as well as machines
   permanently connected to a network.  It is also designed to offer
   diskless workstations full mail service.

   The system is divided into two halves.  The first consists of a
   single entity called the "repository".  The repository is a storage
   center for incoming mail.  Mail for a Pcmail user can arrive
   externally from the Internet or internally from other repository
   users.  The repository also maintains a stable copy of each user's
   mail state (this will hereafter be referred to as the user's "global
   mail state").  The repository is therefore typically a computer with
   a large amount of disk storage.

   The second half of Pcmail consists of one or more "clients".  Each
   Pcmail user may have an arbitrary number of clients, typically
   single-user workstations.  The clients provide a user with a friendly
   means of accessing the user's global mail state over a network.  In
   order to make the interaction between the repository and a user's
   clients more efficient, each client maintains a local copy of its
   user's global mail state, called the "local mail state".  It is
   assumed that clients, possibly being small personal computers, may
   not always have access to a network (and therefore to the global mail
   state in the repository).  This means that the local and global mail
   states may not be identical all the time, making synchronization
   between local and global mail states necessary.

   Clients communicate with the repository via the Distributed Mail
   System Protocol (DMSP); the specification for this protocol appears
   in appendix A. The repository is therefore a DMSP server in addition
   to a mail end-site and storage facility.  DMSP provides a complete
   set of mail manipulation operations ("send a message", "delete a
   message", "print a message", etc.).  DMSP also provides special
   operations to allow easy synchronization between a user's global mail
   state and his clients' local mail states.  Particular attention has
   been paid to the way in which DMSP operations act on a user's mail
   state.  All DMSP operations are failure-atomic (that is, they are
   guaranteed either to succeed completely, or leave the user's mail



Lambert