EmailNG Project

Overall Goals


Recommended Technologies


Mail Hubs

It is essential to provide a reliable e-mail hub capable of meeting growth and increasing expectations. The present system runs on the VAXC general-purpose cluster, which makes the mail service vulnerable to impact from other processes in the system. Fortunately VMS is a very robust operating system and, in fact, any glitches in the processing of e-mail have generally been due to causes other than the general-purpose nature of VAXC.

PMDF is considered more-useful software than say sendmail for running a mail hub. PMDF is well supported, more standards-compliant, easier to understand and configure, has more-predictable resource usage, and has had fewer security problems.

The PMDF package is available in both VMS and UNIX versions, but the current plan is to continue using the VMS version, due to our use of the Name Router (Fortran, ISAM) and PMDF-FAX (VMS-only).

There are several type of mail hub functionality. It makes sense to give them different domain names to allow for later splitting them into separate physical machines. One possible split is:

postoffice.monash.edu.au
Central place for mailing list management, mailing list expansion, mapping between standard Email addresses and mailbox addresses, etc.
mx.monash.edu.au
Machine used to forward mail to and from servers that don't have direct Internet access, such as the student NetWare servers.
smtp.monash.edu.au
"Smart" host for dumb client machines to upload SMTP mail to.
pobox.monash.edu.au
Place for POP/IMAP clients to fetch mail from.

We might need only one central "postoffice" and "mx" mail hub, but one-per-campus "pobox" and "smtp" mail hubs ...

We probably need secondary postoffice and mx machines for extra availability to buffer incoming Email when the primary machine is down / too busy / being upgraded / whatever. Similarly, secondary smtp servers would be useful so that client machines can always upload outgoing email.

These secondary machines could have different names (postoffice1, postoffice2, ...) that the client machines would be configured to know about, and the client machine would try one, and if that failed would try the next one.

An alternative to having several mail hub machines each with a different name, is to have one mail hub name associated with the IP addresses of several different machines. Client machines would then try each of the listed IP addresses. This should lead to increased overall availability, and remove the need to configure in multiple machine names into each client or into DNS MX records. DNS round-robin cycling of addresses would be used to spread the load amongst the listed IP addresses.

[ Some sort of roving IP alias address may be required to support the Mercury MTA on NetWare servers which can only be configured to upload Email to one, hard-coded IP address. ]


Mail Hub Clusters

One possible way of organising a collection of mail hub machines would be to cluster them together, and have the one common mail spool area on shared-access external disks. That way even when some members of the cluster are not available, other members can continue to deliver mail that has already arrived, and accept new incoming mail and process it.

With Digital UNIX DECsafe ASE, only one member can access a mail spool disk and be processing mail at any one time. Scripts are used to stop mail serving on one machine, and restart it on a different machine. The scripts would also create a roving IP alias address that points to the current mail processing machine.

With VMSclusters, multiple machines in the cluster can be accessing the one mail spool and be running the mail hub software concurrently. Access by the different nodes to the mail spool, log and index files is controlled using the Distributed Lock Manager. This does involve some extra locking traffic between the cluster machines, which can flow over communication links separate from the machines network access links. Our MultiNet software can also be configured to manage a cluster DNS name, whose IP address points to the least-loaded operational machine.

Digital UNIX TRUclusters are probably similar to VMSclusters, but it is a moderately new product.

All members of a mail hub cluster would normally be confined to the one extended LAN, in order to support roving an IP address between machines, or for non-routable intra-cluster communication traffic.


Multiple Mail Hubs

Multiple, peer mail hubs are much more autonomous than machines in a cluster. Some disaster affecting one mail hub is unlikely to impact other mail hubs (apart from shifting more load onto them). However, if one mail hub is down, mail already queued on that hub will be delayed until that machine is brought back up -- the other mail hubs have no means to access the queued mail to deliver it.

There is more work involved in managing multiple mail hubs rather than machines in a cluster -- such things as replication of config files and databases, combining / managing multiple sets of mail logs, multiple systems to back up, etc.


Recommendations

  1. Mail hub machines should use external disks. RAID controllers, if used, should also be external.
  2. For high availability and physical diversity, two clusters of two machines each should be used.
  3. There is little to be gained by using large, expandable machines such as AlphaServer 2100's; AlphaStation 600's are quite big enough.
  4. Use VMS, VMSclusters and PMDF software.
  5. RAID 1 (shadowing) should be used for System and Extension packs.
  6. RAID 0+1 (striping and shadowing) should be used to join 4 or more disk into each mail spool.
  7. Extra performance could be gained by using RAID controllers with battery-backed write-back cache.


Message Store

TBA


Mail User Agent

TBA


Copyright © Monash University 1996 - All Rights Reserved - Disclaimer
Last updated 20 June 1996
Maintained by John.Mann@cc.monash.edu.au