docs/diploma

changeset 27:433df94d5476

added pices to thesis ... need rework!
author meillo@marmaro.de
date Sat, 04 Oct 2008 20:14:00 +0200
parents fb9ba63f6957
children 01f154f8f477
files thesis/tex/1-Candidates.tex thesis/tex/1-Comparision.tex thesis/tex/1-Introduction.tex thesis/tex/1-Masqmail.tex
diffstat 4 files changed, 143 insertions(+), 1 deletions(-) [+]
line diff
     1.1 --- a/thesis/tex/1-Candidates.tex	Sat Oct 04 19:56:20 2008 +0200
     1.2 +++ b/thesis/tex/1-Candidates.tex	Sat Oct 04 20:14:00 2008 +0200
     1.3 @@ -1,5 +1,25 @@
     1.4  \chapter{Candidates}
     1.5 +
     1.6 +
     1.7  \section{Types of MTAs}
     1.8 +
     1.9 +
    1.10  \section{Not regarded here}
    1.11 +
    1.12 +
    1.13  \section{The competitors}
    1.14  
    1.15 +
    1.16 +\subsection{sendmail}
    1.17 +
    1.18 +\subsection{qmail}
    1.19 +
    1.20 +\subsection{postfix}
    1.21 +
    1.22 +\subsection{exim}
    1.23 +
    1.24 +\subsection{masqmail}
    1.25 +The \masqmail\ program was written by Oliver Kurth, starting in 1999. His aim was to create a \mta\ which is especially focused on computers with dial-up connections to the internet. \masqmail\ handles situations which are rarely solveable with the common \MTA{}s.
    1.26 +
    1.27 +
    1.28 +
     2.1 --- a/thesis/tex/1-Comparision.tex	Sat Oct 04 19:56:20 2008 +0200
     2.2 +++ b/thesis/tex/1-Comparision.tex	Sat Oct 04 20:14:00 2008 +0200
     2.3 @@ -1,3 +1,71 @@
     2.4  \chapter{Comparision}
     2.5 -\section{...}
     2.6  
     2.7 +
     2.8 +\section{First release}
     2.9 +sendmail: 1983
    2.10 +
    2.11 +postfix: 1999
    2.12 +
    2.13 +qmail: 1995
    2.14 +
    2.15 +exim: 1995
    2.16 +
    2.17 +masqmail: 1999
    2.18 +
    2.19 +exchange: 1993
    2.20 +
    2.21 +
    2.22 +\section{Lines of code (with sloccount on debian packages)}
    2.23 +sendmail: 93k
    2.24 +
    2.25 +postfix: 92k
    2.26 +
    2.27 +qmail: 18k
    2.28 +
    2.29 +exim: 54k
    2.30 +
    2.31 +masqmail: 14k
    2.32 +
    2.33 +exchange: (no source available)
    2.34 +
    2.35 +
    2.36 +\section{Architecture}
    2.37 +sendmail: monolitic
    2.38 +
    2.39 +postfix: modular
    2.40 +
    2.41 +qmail: modular
    2.42 +
    2.43 +exim: monolitic
    2.44 +
    2.45 +masqmail: monolitic
    2.46 +
    2.47 +exchange: (unknown)
    2.48 +
    2.49 +
    2.50 +\section{Design goals}
    2.51 +sendmail: flexibility
    2.52 +
    2.53 +postfix: performance and security
    2.54 +
    2.55 +qmail: security
    2.56 +
    2.57 +exim: general, flexible \& extensive facilities for checking
    2.58 +
    2.59 +masqmail: for non-permanent internet connection
    2.60 +
    2.61 +exchange: groupware
    2.62 +
    2.63 +
    2.64 +\section{Market share (by Bernstein in 2001)}
    2.65 +sendmail: 42\%
    2.66 +
    2.67 +postfix: 1.6\%
    2.68 +
    2.69 +qmail: 17\%
    2.70 +
    2.71 +exim: 1.6\%
    2.72 +
    2.73 +masqmail: (unknown)
    2.74 +
    2.75 +exchange: 18\%
     3.1 --- a/thesis/tex/1-Introduction.tex	Sat Oct 04 19:56:20 2008 +0200
     3.2 +++ b/thesis/tex/1-Introduction.tex	Sat Oct 04 20:14:00 2008 +0200
     3.3 @@ -1,10 +1,36 @@
     3.4  \chapter{Introduction}
     3.5  
     3.6  \section{History of electronic mail}
     3.7 +% FIXME: is that true?
     3.8 +In the old days, the 70s, when Unix was created, computers were expensive. Universities and big firms normally had a single server with an amount of terminals connected to it. The computer filled a whole room somewhere in the cellar. People were operating at the terminals that were located in the offices and wired to the server. At that time, there was hardly no networking at all.
     3.9 +
    3.10 +During the following years, when computers became affordable and so more common (but still no personal computers at that time), connections between single computers were established. Inter-university connections were one of the first networks.
    3.11 +
    3.12 +Electronic mail is a basic concept in Unix. A lot of information gets distributed via system mail on Unix machines. System mail is electronic mail that stays on one machine. In nowadays this is primary notifications from system programs. But back then, there were frequently sent emails between users on the same machine.
    3.13 +
    3.14 +When computers were connected to each other and networks grew, the need appered to send electronic mail from one machine to another. E.g. Alice sitting on a terminal connected to server1 wants to send email to Bob sitting on a terminal connected to server2.
    3.15 +
    3.16 +Unix provided everything for that task, except a good tool to do the mail transport from server1 to server2.
    3.17 +
    3.18 +At that point the fathers of Unix at \name{Bell Labs} wrote the \NAME{UUCP} program and its compagnons. At about the same time in Berkeley a different solution for the same problem was developed: Eric Allman wrote \name{sendmail}.\footnote{To be exact: He wrote \name{delivermail} which he enhanced to \name{sendmail}.}
    3.19 +
    3.20  
    3.21  \section{Transporting mail}
    3.22 +The basic job of a \name{mail transfer agent} (or \name{mail transport agent}, short \NAME{MTA}) is to transfer/transport \name{electronic mail} (short \name{email}) from one host to another.
    3.23 +
    3.24 +% TODO: include definitions from others here (cites)
    3.25 +
    3.26  
    3.27  \section{sendmail}
    3.28 +\name{sendmail} is the defacto-standard for \name{mail transfer agents}.
    3.29 +
    3.30 +% FIXME: is that true?
    3.31 +It was the first \NAME{MTA} and had no real alternative for a long time.
    3.32 +
    3.33 +All other existing substitutes, which are mainly \name{postfix}, \name{exim}, \name{qmail} and the here regarded \name{masqmail}, mimic \name{sendmail}'s behavior. Especially, they all create a symbolic link named ``sendmail'' pointing to their own executable. This is because a lot of programs assume there is an executable called ``sendmail'' on every computer system.
    3.34 +
    3.35 +Besides being the ``standard'', \name{sendmail} probably is the most scalable and powerful solution for transfering emails and definatly the most flexible one.
    3.36 +
    3.37  
    3.38  \section{(a look at Windows)}
    3.39  
     4.1 --- a/thesis/tex/1-Masqmail.tex	Sat Oct 04 19:56:20 2008 +0200
     4.2 +++ b/thesis/tex/1-Masqmail.tex	Sat Oct 04 20:14:00 2008 +0200
     4.3 @@ -1,9 +1,37 @@
     4.4  \chapter{Masqmail}
     4.5 +
     4.6 +%TODO: have text by oliver here?
     4.7 +
     4.8 +
     4.9  \section{Target field}
    4.10 +
    4.11 +
    4.12  \section{Typical usage}
    4.13 +
    4.14 +
    4.15  \section{What makes it special}
    4.16 +
    4.17 +
    4.18  \section{Alternatives?}
    4.19 +
    4.20 +
    4.21  \section{Structure}
    4.22 +
    4.23 +
    4.24  \section{Features}
    4.25 +
    4.26 +
    4.27  \section{History}
    4.28 +%TODO: let oliver prove read it!
    4.29 +%FIXME: add references
    4.30  
    4.31 +The date of the first release (version 0.0.1) is unknown. The only information available is, that it was packaged for \debian\ at 15\nth\ of September in 1999. Further releases were made every few weeks or month during 2000, 2001 and 2002. Development ended in mid-2003 in a hard stop. The last release known to me is version 0.2.20, released on 4\nth\ of June in 2003.
    4.32 +
    4.33 +During the time of development, Oliver released 53 versions. That means a new release in less than every 20 days in average!
    4.34 +
    4.35 +Mentionable are the four \emph{beta} releases of version 0.1.8 (named with the trailing letters `a' to `d') in winter 2000/2001 and the security-fix 0.1.15.1 in 2002.
    4.36 +
    4.37 +One extra release (version 0.2.21) was made by him in November 2005. This one is only available from the \debian\ pool. Comparing it to version 0.2.20 shows, that no source code was altered. Only building documents (like Makefiles) and \debian\ packageing documents were changed. That leeds to the assumption that this last release was specificly created for the needs of \debian---to fix some errors in the package.
    4.38 +
    4.39 +In May 2000 the minor version number increased to `1'. Nothing special is mentioned in the documentation about that. When it increased again to start the 0.2.x releases, Oliver titled them as the ``development branch'' of \masqmail. At that second time, he started developing the 0.2.x ``development branch'', continuing to work on the 0.1.x series. His parallel work on both branches lasted for four month, and one additional last release, numbered 0.1.17, one more year later.
    4.40 +