Jumat, 08 Februari 2008

Electronic Mail

E−mail Fundamentals
E−mail is probably the most attractive topic for users. Almost every user on the network uses
electronic mail (known by its acronym e−mail). Users do not know very much about UNIX, but they like to use, and they benefit from using, e−mail. Usually this is a love−hate relationship between users and e−mail; users love having an e−mail system, but they hate it when it does not work.
This relationship is exacerbated by the fact that only a few of them have any idea how e−mail actually works and really understand e−mail processes. The most common misunderstanding is to confuse e−mail with other popular network applications, like telnet or ftp.
And when the DNS issue arises during a discussion of e−mail, the confusion is complete.

It is not so easy to explain the principles of e−mail in a few words. For starters, e−mail can be
compared to regular ground mail service, or snail mail; this is the most helpful description that we have. If we use this analogy, though, we should also point out other services analogous to the
common network applications: telnet corresponds to the phone service, ftp to fax service, and DNS is an operator to help to resolve name/address/phone number relationships.

E−mail is based on several supporting programs and protocols that enable local and networkwide
e−mail service. The programs accomplish different tasks sequentially in the e−mail generation,
e−mail transfer (transportation), and e−mail delivery; the protocols define rules for the interprogram communications.

There are two categories of e−mail programs: "mail user agents," or MUA programs, and "mail
transport agents," or MTA programs. An MUA agent is any number of programs that users run to read, reply to, compose, and dispose of e−mail. These include, for example, the original UNIX mail program /bin/mail, the Berkeley mail or its System V equivalent mailx, and freely available
programs like mush, elm, pine, and mh, as well as other commercial programs.

An MTA agent is a program that handles mail delivery for many users and forwards e−mail between machines. The central mail transport program, the one most used today, is sendmail. On UNIX this is the default MTA program. Other mail programs are implemented around sendmail.
sendmail determines and invokes other delivery agents called Mailers to deliver e−mail and to further transfer e−mail. This is shown in Figure 20.1. Mailers are sometimes considered the third category of e−mail programs and named "delivery agents," or MDA programs. In this text mailers are treated as a part of the MTA program.