Cc:Mail

cc:Mail is a discontinued store-and-forward LAN-based email system originally developed on Microsoft's MS-DOS platform by Concentric Systems, Inc. in the 1980s. The company, founded by Robert Plummer, Hubert Lipinski, and Michael Palmer, later changed its name to PCC Systems, Inc., and then to cc:Mail, Inc. At the height of its popularity, cc:Mail had about 14 million users, and won various awards for being the top email software package of the mid-1990s.

Architecture overview
In the 1980s and 1990s, it became common in office environments to have a personal computer on every desk, all connected via a local area network (LAN). Typically, (at least) one computer is set up as a file server, so that any computer on the LAN can store and access files on the server as if they were local files. cc:Mail was designed to operate in that environment.

The central point of focus in the cc:Mail architecture is the cc:Mail "post office," which is a collection of files located on the file server and consisting of the message store and related data. However, no cc:Mail software needs to be installed or run on the file server itself. The cc:Mail application is installed on the user desktops. It provides a user interface, and reads and writes to the post office files directly in order to send, access, and manage email messages. This arrangement is called a "shared-file mail system" (which was also implemented later in competing products such as Microsoft Mail). This is in contrast to a "client/server mail system" which involves a mail client application interacting with a mail server application (the latter then being the focal point of message handling). Client/server mail was added later to the cc:Mail product architecture (see below), and also became available in competing offerings (such as Microsoft Exchange).

Other than the cc:Mail desktop application, key software elements of the cc:Mail architecture include cc:Mail Router (for transferring messages between post offices, possibly in distant locations, and for providing a dial-in access point for users using the mobile version of the cc:Mail desktop application), gateways (providing links to other mail system types), and various administrative tools. Like the cc:Mail desktop application, all of these can access the post office via the file-sharing facility of the local area network. However, some administrative functions required exclusive access to the post office, so post offices would be taken offline periodically for necessary maintenance (such as recovering disk space from deleted messages).

Message store
The cc:Mail message store is based on a related set of files including a message store file, a directory and index file, and user files. In this structure, multiple users may have a reference in their individual files to the same message, thus the product offered a single instance message store. Message references in user files relate to message offsets stored in an indexed structure. Message offsets refer to locations within the message store file which is common to all users within a given database or "post office".

Client technology
The cc:Mail system provided native email clients for DOS, Microsoft Windows, OS/2, Macintosh, and Unix (the MIT X Window System under HP-UX and Solaris). cc:Mail allowed client access via native clients, web browsers, POP3 and IMAP4. cc:Mail provided the first commercial web-based email product in 1995.

MTA (Router)
The cc:Mail MTA or Router, which ran on DOS, 16-bit Windows, Windows NT, and OS/2, supported file access, asynchronous communications, and various network protocols including Novell SPX and TCP/IP. The cc:Mail Router also provided remote access to end users via dial-up and network protocols such as TCP/IP. The "remote call through" feature of the cc:Mail Router made it possible for a mobile user to connect through a single point to access any cc:Mail database within a given cc:Mail system. Various connection types and schedules could be configured along with conditions related to message attributes such as priority or message size to create complex message routing topologies.

Gateways
The cc:Mail system offered a wide range of email gateways, connectors, and add-on products including links to SMTP, UUCP, IBM PROFS, pager networks, fax, commercial email services such as MCI and more.

Directory services
cc:Mail provided directory synchronization throughout a system via an Automatic Directory Exchange (ADE) feature which supported a number of 'propagation types', such as peer, superior, and subordinate, from which sophisticated topologies could be constructed. cc:Mail also provided an email-based newsgroup or discussion-like feature referred to as Bulletin Boards which were propagated and synchronized using similar mechanisms. Related features included the ability to synchronize the cc:Mail directory with other directories, such as that of Novell NetWare.

Server technology
The core cc:Mail technology relied on OSI model network operating systems such as Novell NetWare. These network operating systems provided redirection of native operating system file I/O allowing network nodes to access server-based files transparently, as well as concurrently.

Delivery of messages in cc:Mail is time invariant meaning that many database changes, such as message deliveries and deletions, can be under way at the same time without conflicting. Fundamentally, time invariance is made possible in OSI model network operating systems by the combination of the ability to write data to a file system past the end of a file and the ability to lock a record within a file.

Advantages
The shared file access architecture of cc:Mail offered significant performance benefits and made it possible for cc:Mail to implement a single instance message store years in advance of other products. The file-based nature of the message store also made the system very flexible and in some respects, e.g., moving a database to a new server, easy to manage.

Criticisms
The architectural approach of cc:Mail had drawbacks both in terms of scalability and in terms of vulnerability of cc:Mail databases to data corruption due to network errors or network operating system software defects. The cc:Mail system became notorious for its tendency to suffer database corruptions. Additionally, the technology was originally developed in a 1980s environment comprising disconnected LANs linked by dial-up connections. While the technology adapted well to WAN environments due to the robust nature of the Router, the system was best suited to a highly distributed deployment model. Client access over a WAN was not recommended because of poor performance related to the network traffic overhead of file I/O redirection and because of increased risk of database corruption. Although automation was possible, maintenance of large numbers of databases, each with relatively few users, was undesirable compared to highly centralized client/server systems where client access could be reliably provided over a WAN.

Client/Server cc:Mail
cc:Mail developed a native cc:Mail server, cc:Guardian, which would allow superior scalability, reliable client access over a WAN, and virtually eliminate database corruptions by removing file I/O access to the database. At the same time the development of POP3 and IMAP4 servers provided integration with Internet standards-based client/server technologies. With the development of cc:Guardian and with support for POP3 and IMAP4, cc:Mail evolved into a true client/server platform. However, customers never deployed cc:Mail as a client/server solution in large numbers.

Acquisition by Lotus
Lotus Development acquired cc:Mail, Inc. (formerly PCC Systems), which was a Silicon Valley startup, in 1991 and used the cc:Mail technology to enhance Lotus Notes. Lotus Notes features derived from cc:Mail included Shared Mail, client type-ahead addressing, enhancements to the Notes MTA (also called Router), and the Notes Passthru feature. Lotus developed a version of cc:Mail Remote for the HP 95LX. cc:Mail Remote was also included in the built-in software of the HP 100LX, HP 200LX and HP OmniGo 700LX.

Lotus, which was acquired by IBM in 1995, attempted to move cc:Mail customers to Lotus Notes, which was a superior client/server platform, but their efforts met with limited success, because of early challenges in the area of coexistence and migration between cc:Mail and Notes and because Lotus was focused on groupware rather than simple email. Microsoft, which provided a simpler migration path and a more focused solution (email), succeeded in winning the majority of the cc:Mail installed base in the United States.

End of life
LAN-based email technology was rendered obsolete by client/server email systems such as Lotus Notes and Microsoft Exchange. The final version of cc:Mail was 8.5 and was released in 2000.


 * October 31, 2000: cc:Mail withdrawn from the market.
 * January 31, 2001: All cc:Mail development ceased.
 * October 31, 2001: cc:Mail telephone support ceased.