annotate thesis/tex/1-Introduction.tex @ 78:3148ed044103

wrote about structure and features of masqmail; quotation -> quote
author meillo@marmaro.de
date Thu, 06 Nov 2008 17:50:25 +0100
parents 6843dfd6c4fa
children 3b5ba7331eb5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26
fb9ba63f6957 changed to new thesis structure; moved text pieces away; updated project plan
meillo@marmaro.de
parents:
diff changeset
1 \chapter{Introduction}
42
ac4ce4de4154 minor stuff
meillo@marmaro.de
parents: 34
diff changeset
2 \label{chap:introduction}
26
fb9ba63f6957 changed to new thesis structure; moved text pieces away; updated project plan
meillo@marmaro.de
parents:
diff changeset
3
fb9ba63f6957 changed to new thesis structure; moved text pieces away; updated project plan
meillo@marmaro.de
parents:
diff changeset
4 \section{History of electronic mail}
30
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
5 %TODO: have a quote from Bell Labs about email here
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
6
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
7 Electronic mail\index{electronic mail} (short: \name{email})\citeweb{wikipedia:email} is a basic concept in \unix.\citeweb{unix-mail-intro} On \unix\ machines, a lot of information is distributed by \name{system mail}, which is email sent by the operating system. Beside that, email is the common communication system between humans working on computers.
30
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
8
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
9 The \unix\ operating system supports email through the \name{mail user agent} (short: \NAME{MUA}) \name{/bin/mail}.
30
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
10
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
11 Development of \unix\ was not only made in the \name{Bell Labratories} of \NAME{AT\&T}. The \name{Univerity of California at Berkeley} worked on their version of a \unix\ operating system, too. It is refered to as \NAME{UCB} \unix, or \name{Berkeley} \unix\index{Berkeley Unix}.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
12
74
6843dfd6c4fa added new texts to masqmail chapter and some more
meillo@marmaro.de
parents: 71
diff changeset
13 The few features of \name{/bin/mail} lead to a second \NAME{MUA} from Berkeley: \name{Mail} (with a capital `M'). Later, the superior functionality of \name{Mail} went back to \name{Bell Labs} and into the program \name{mailx}, the successor of \name{/bin/mail}.
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
14
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
15 Nowadays, \name{mailx} and \name{Mail} are quite equivalent and \name{/bin/mail} is linked to either of them---whichever is installed.
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
16
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
17 At that time, computers were connected by various kinds of networks. \name{Bell Labs} had invented the \NAME{UUCP} program and protocol suite (for ``\unix\ to \unix\ copy'')\citeweb{wikipedia:uucp}. Berkeley however had an own creation called \name{Berknet} in use. And the \name{United States Department of Defence Advanded Research Projects Agency}'s (\NAME{ARPA}) effort on designing a new wide area network, led to the \NAME{ARPANET}\citeweb{wikipedia:arpanet}, based on the \name{transmission control protocol} (\NAME{TCP}). There were also other, minor, kinds of networks in use.
30
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
18
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
19 Email was transfered between different machines within the same networks. The file transfer itself was made uniformly using \NAME{FTP}, but the higher layered logic of the transfer was different. For example was addressing done different: \NAME{UUCP} used a flat-style schema, while \NAME{ARPANET}'s was hierachical.
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
20
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
21 Mail transport from one machine connected to one kind of network to a second machine connected to another was a problem. This showed up at Berkeley where some departments of the university had switched to \NAME{ARPANET}, and some to \NAME{UUCP}, while the rest used \name{Berknet}.
30
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
22
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
23 It was around 1982, when Eric Allman, then a student at Berkeley, wrote \name{delivermail}. Its purpose was to transform email from one network to another. \name{delivermail}, like its successor---the more flexible \sendmail---intermediated between the different networks. They were able to transform email messages from any network to any other.
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
24
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
25 Todays email structure is basicly the same as then. The major difference is the uniformity of the underlying network, which is nearly always the \NAME{ARPANET}-based \name{Internet}. Hence lowering the importance of the transformation capabilities of \MTA{}s, that was essential to \sendmail's success---yet being the primary motivation for the program.
30
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
26
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
27 More information about the history of electronic mail can be found at: \citeweb{email:griffiths}, \citeweb{email:crocker}, \citeweb{email:vleck}, \citeweb{email:akkad}, \citeweb{email:murakami}, and \citeweb{email:tomlinson}. A good starting point for general information on internet history is \citeweb{wikipedia:historyoftheinternet}.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
28 %TODO: check the websites which ones are the important ones; remove unnessesary ones
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
29
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
30
26
fb9ba63f6957 changed to new thesis structure; moved text pieces away; updated project plan
meillo@marmaro.de
parents:
diff changeset
31
fb9ba63f6957 changed to new thesis structure; moved text pieces away; updated project plan
meillo@marmaro.de
parents:
diff changeset
32 \section{Transporting mail}
31
2a191e20b4aa minor stuff
meillo@marmaro.de
parents: 30
diff changeset
33 %TODO: when was the term ``mail transfer agent'' established?
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
34
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
35 This thesis is about a \name{mail transfer agent} (or \index{mail transport agent|see{mail transfer agent}}\name{mail transport agent}, short \NAME{MTA}): \masqmail. \sendmail\ is one too---the most important one.
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
36
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
37 The basic job of a \mta\ is to transfer/transport electronic mail from one host to another.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
38
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
39 Here are definitions from others:
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
40
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
41 \begin{quote}
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
42 A mail transfer agent (MTA) is a highly specialized program that delivers mail and transports it between machines, like the post office.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
43 \cite{costales97}
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
44 \end{quote}
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
45
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
46 \begin{quote}
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
47 A mail transfer agent (MTA) (also called a mail transport agent, message transfer agent, or smtpd (short for SMTP daemon)), is a computer program or software agent that transfers electronic mail messages from one computer to another.
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
48 \citeweb{wikipedia:mta}
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
49 \end{quote}
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
50
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
51 \begin{quote}
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
52 mail server (also known as a mail transfer agent or MTA, a mail transport agent, a mail router or an Internet mailer) is an application that receives incoming e-mail from local users (people within the same domain) and remote senders and forwards outgoing e-mail for delivery.
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
53 \citeweb{website:techtarget}
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
54 \end{quote}
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
55
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
56 \begin{quote}
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
57 Message Transfer Agent - (MTA, Mail Transfer Agent): Any program responsible for delivering e-mail messages. Upon receiving a message from a Mail User Agent or another MTA, [...] it [...] delivers it to any local addressees and/or forwards it to other remote MTAs (routing) for delivery to remote recipients.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
58 %Any program responsible for delivering e-mail messages. Upon receiving a message from a Mail User Agent or another MTA, often by SMTP over the Internet, it stores it temporarily locally and analyses the recipients and delivers it to any local addressees and/or forwards it to other remote MTAs (routing) for delivery to remote recipients. In either case it may edit and/or add to the message headers.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
59 %
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
60 %The most widely used MTA for Unix is sendmail, which communicates using SMTP.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
61 %
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
62 %RFC 2821 (SMTP) expands MTA as ``Mail Transfer Agent'' though this is less common. Alternatives with ``Transport'' are also seen but less correct.
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
63 \citeweb{website:thefreedictionary}
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
64 \end{quote}
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
65
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
66 Common is the transfer of mail to other machines; this is the actual job. \MTA{}s work with mail, received from local users and/or remote machines. Mail delivery however is \emph{not} what \mta{}s are for, although probably every \MTA\ is able to deliver mail, and many do. \name{mail delivery agents} (short: \NAME{MDA}) are the programs for this job. Two of the best known \NAME{MDA}s are \name{procmail} and \name{maildrop}.
55
56fd50f9bbf3 reworked text; added MTA definitions; added references; more
meillo@marmaro.de
parents: 47
diff changeset
67
26
fb9ba63f6957 changed to new thesis structure; moved text pieces away; updated project plan
meillo@marmaro.de
parents:
diff changeset
68
30
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
69
34
f789b659f094 added formating of names; cleanups
meillo@marmaro.de
parents: 31
diff changeset
70 \section{\sendmail}
42
ac4ce4de4154 minor stuff
meillo@marmaro.de
parents: 34
diff changeset
71 \label{sec:sendmail}
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
72
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
73 Allman wrote it to transfer emails between different networks, thus giving \sendmail\ mighty address rewriting abilities. In contrast to its predecessor \name{delivermail}, was \sendmail\ designed to offer greatest flexiblity in configuration; this enabled it to deal with any type of network.
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
74
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
75 \sendmail\ was, and still is, very successful. So successful that it stands, like no other, for the whole group of \MTA{}s: \name{sendmail} actually is the \emph{de facto standard} for \mta{}s.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
76
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
77 Its author, Allman, sees three reasons for the huge success: the ``sloopy'' approach (accepting badly formed messages); its focus on the routing function; and the flexible configuration (this was important in \sendmail's early days).
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
78 \cite[page xviii]{costales97}
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
79
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
80 Others see \sendmail's success more critical. One of them is quoted in the \name{MMDF} FAQs \citeweb{faqs:mmdf}:
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
81 \begin{quote}
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
82 Sendmail was once compared by one old Internet hand to ``those killer bees that escaped from the laboratory---and now they're everywhere and you can't get rid of 'em''.
78
3148ed044103 wrote about structure and features of masqmail; quotation -> quote
meillo@marmaro.de
parents: 74
diff changeset
83 \end{quote}
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
84 He definately hints here at \sendmail's many security vulnerabilities that came to light and on its complexity, in particular its obscure configuration file \path{sendmail.cf}.
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
85
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
86 No matter how \sendmail\ is seen, one must admit its influence on \unix\ emailing programs. Most existing substitutes mimic \sendmail's interface and behavior. Most notable, they create a symbolic link named ``sendmail'' pointing to their own executable. The reason herefor are the many programs assuming an executable called ``sendmail'' on every computer system existing.
27
433df94d5476 added pices to thesis ... need rework!
meillo@marmaro.de
parents: 26
diff changeset
87
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
88 \sendmail\ is not only ported to many platforms, even including \name{Microsoft Windows}, but also it is still the prefered \MTA\ on many systems.
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
89
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
90 For deeper knowledge on \sendmail's history, see \cite{costales97} and \cite{vixie01}.
26
fb9ba63f6957 changed to new thesis structure; moved text pieces away; updated project plan
meillo@marmaro.de
parents:
diff changeset
91
30
6c4b50b44d05 wrote about history of email (new text)
meillo@marmaro.de
parents: 27
diff changeset
92
74
6843dfd6c4fa added new texts to masqmail chapter and some more
meillo@marmaro.de
parents: 71
diff changeset
93 \section{A look at Windows}
71
49b6b611c3d6 reworked and completed chapter 1; added references
meillo@marmaro.de
parents: 57
diff changeset
94 % TODO: add content here