MMDF, the Multichannel Memorandum Distribution Facility, is a
message transfer agent
Within the Internet email system, a message transfer agent (MTA), mail transfer agent, or mail relay is software that transfers electronic mail messages from one computer to another using the Simple Mail Transfer Protocol. In some contexts, the a ...
(MTA), a computer program designed to transmit
email
Electronic mail (usually shortened to email; alternatively hyphenated e-mail) is a method of transmitting and receiving Digital media, digital messages using electronics, electronic devices over a computer network. It was conceived in the ...
.
History
MMDF was originally developed at the
University of Delaware
The University of Delaware (colloquially known as UD, UDel, or Delaware) is a Statutory college#Delaware, privately governed, state-assisted Land-grant university, land-grant research university in Newark, Delaware, United States. UD offers f ...
in the late 1970s, and provided the initial means of operating
CSNET
The Computer Science Network (CSNET) was a computer network that began operation in 1981 in the United States. Its purpose was to extend networking benefits, for computer science departments at academic and research institutions that could not be ...
, the predecessor to
NSFNET
The National Science Foundation Network (NSFNET) was a program of coordinated, evolving projects sponsored by the National Science Foundation (NSF) from 1985 to 1995 to promote advanced research and education networking in the United States. The ...
.
It grew in popularity throughout the 1980s, and was selected by the
Santa Cruz Operation
The Santa Cruz Operation, Inc. (usually known as SCO, pronounced either as individual letters or as a word) was an American software company, based in Santa Cruz, California, that was best known for selling three Unix operating system variants ...
as the MTA it would distribute with SCO UNIX in 1989. It was also adopted as the basis for other commercial efforts, including the gateway used to connect the
MCI Mail
MCI Mail was one of the first commercial email services in the United States and predates the widespread adoption of the Internet.
History
The MCI Mail service was launched on September 23, 1983, in Washington, D.C., during a press conference that ...
service to Internet mail. A re-coded variant of MMDF, called ''Pascal MDF'' (PMDF) was written at the
University of Pennsylvania
The University of Pennsylvania (Penn or UPenn) is a Private university, private Ivy League research university in Philadelphia, Pennsylvania, United States. One of nine colonial colleges, it was chartered in 1755 through the efforts of f ...
for
VMS and was eventually commercialized through
Ned Freed Ned Freed (1959 – 22 May 2022) was an IETF participant and Request for Comments author who contributed to a significant number of Internet Protocol standards, mostly related to email. He is best known as the co-inventor of email MIME attachments, ...
's Innosoft, which subsequently ported PMDF to
Tru64 Unix
Tru64 UNIX is a discontinued 64-bit UNIX operating system for the DEC Alpha, Alpha instruction set architecture (ISA), currently owned by Hewlett-Packard (HP). Previously, Tru64 UNIX was a product of Compaq, and before that, Digital Equipment Corp ...
and
Solaris
Solaris is the Latin word for sun.
It may refer to:
Arts and entertainment Literature, television and film
* ''Solaris'' (novel), a 1961 science fiction novel by Stanisław Lem
** ''Solaris'' (1968 film), directed by Boris Nirenburg
** ''Sol ...
. In 1999 PMDF was translated from
Pascal to
C. The C version of PMDF became the basis of the
Sun Java System Messaging Server of
Sun Microsystems
Sun Microsystems, Inc., often known as Sun for short, was an American technology company that existed from 1982 to 2010 which developed and sold computers, computer components, software, and information technology services. Sun contributed sig ...
, while rights to PMDF itself were purchased by Process Software, which then ported PMDF to
Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
.
Design philosophy
As its name denotes, MMDF is an MTA oriented around the idea of channels. Each means of formatting and transporting mail into or out of the mail system is a channel, and is implemented by a separate executable. This makes MMDF a highly modular system, with each module having all of the idiosyncratic syntax and semantic information necessary for a particular email technology or network, as well as the
least privilege necessary, with the authority of each module partitioned from others. An inbound channel receives messages (via the protocol and in the format it implements) and an outbound channel delivers messages (via its relevant protocol and mapping into the relevant format). Internally, MMDF uses a canonical representation for message content and header, including addresses.
Some examples of MMDF channels are
SMTP
The Simple Mail Transfer Protocol (SMTP) is an Internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail messages. User-level email clients typi ...
,
UUCP
UUCP (Unix-to-Unix Copy) is a suite of computer programs and communications protocol, protocols allowing remote execution of commands and transfer of computer file, files, email and netnews between computers.
A command named is one of the prog ...
, and local (for delivering mail into local mailboxes and accepting mail submitted on the local system). MMDF was used on the
CSNET
The Computer Science Network (CSNET) was a computer network that began operation in 1981 in the United States. Its purpose was to extend networking benefits, for computer science departments at academic and research institutions that could not be ...
network.
Message flow
A message that flows through MMDF will typically follow this path:
* An inbound channel accepts a message.
* It invokes the core of the MMDF system, a program called ''submit'', and feeds it the message as well as the out-of-band information for the message - return address, recipient, etc.
* Submit stores the message text after doing any necessary header rewriting, determines what channel(s) will be used to deliver the message, and injects the message into the queues for those channels.
* Depending on configuration, submit may then call ''deliver'', or deliver may run later as part of periodic processing. Deliver does no direct processing of messages; instead it invokes outbound (delivery) channels, tells them which messages to process, and gives them a list of recipient addresses for each message.
* Each outbound channel delivers the message to those recipients who are to be reached by that channel, and reports to deliver which addresses were successfully delivered to.
* Deliver then updates the queues to mark the addresses that were delivered to, removes the message from any queues that have been completely processed, and if all queues have been processed removes the message text itself.
Configuration
MMDF approaches administrative configuration differently than other popular MTAs. In the choice between placing specialized knowledge into the software, versus requiring that it be created through administrator's configuration instructions, MMDF chose the former. Hence, arbitrary header rewriting is performed by hard-coded software, with configuration limited to choices among existing rewriting alternatives. This makes configuration simpler and safer for administrators, who use simple key-value textual tables. It also takes more effort to create a new rewriting choice, but that effort needs to occur only one time, by a single technical expert.
The main types of tables are domain, channel, and alias tables.
* Domain tables are used for
domain name
In the Internet, a domain name is a string that identifies a realm of administrative autonomy, authority, or control. Domain names are often used to identify services provided through the Internet, such as websites, email services, and more. ...
canonicalization
In computer science, canonicalization (sometimes standardization or Normalization (statistics), normalization) is a process for converting data that has more than one possible representation into a "standard", "normal", or canonical form. This ...
.
* Channel tables select the outbound channel on the basis of the next-hop domain name, and also encode per-domain-name parameters for the particular channel, such as the UUCP node name or
IP address
An Internet Protocol address (IP address) is a numerical label such as that is assigned to a device connected to a computer network that uses the Internet Protocol for communication. IP addresses serve two main functions: network interface i ...
.
* Alias tables set up both simple aliases and
mailing lists.
DNS
The Domain Name System (DNS) is a hierarchical and distributed name service that provides a naming system for computers, services, and other resources on the Internet or other Internet Protocol (IP) networks. It associates various informatio ...
can be and usually is used for these purposes as well, in the form of "DNS tables" that have the same key-value form.
The meaning and effect of entries in these tables are more obvious than the configuration data of more generalized MTAs, but their restricted form also limits the effects that can be produced.
Market share
By the end of 2006, MMDF had a market share well behind other mailers such as
sendmail
Sendmail is a general purpose internetwork email routing facility that supports many kinds of mail-transfer and delivery methods, including the Simple Mail Transfer Protocol (SMTP) used for email transport over the Internet.
A descendant of t ...
,
postfix,
qmail
qmail is a mail transfer agent (MTA) that runs on Unix. It was written, starting December 1995, by Daniel J. Bernstein as a more secure alternative to the popular Sendmail program. Originally license-free software, qmail's source code wa ...
,
exim, and
Microsoft Exchange.
MMDF is considered
legacy software
Legacy or Legacies may refer to:
Arts and entertainment
Comics
* " Batman: Legacy", a 1996 Batman storyline
* '' DC Universe: Legacies'', a comic book series from DC Comics
* ''Legacy'', a 1999 quarterly series from Antarctic Press
* ''Legacy ...
.
References
{{Reflist
External links
MMDF Users GroupMMDF FAQ
Message transfer agents