Mercurial > docs > diploma
comparison thesis/tex/4-MasqmailsFuture.tex @ 395:0d78755132b7
lots of small fixes and cleanups
author | meillo@marmaro.de |
---|---|
date | Sat, 07 Feb 2009 14:47:27 +0100 |
parents | 7d85fd0da3df |
children | 8ef85e22ff7d |
comparison
equal
deleted
inserted
replaced
394:7d85fd0da3df | 395:0d78755132b7 |
---|---|
71 \caption{Required incoming and outgoing channels} | 71 \caption{Required incoming and outgoing channels} |
72 \index{figure!Required incoming and outgoing channels} | 72 \index{figure!Required incoming and outgoing channels} |
73 \label{fig:mta-channels} | 73 \label{fig:mta-channels} |
74 \end{figure} | 74 \end{figure} |
75 | 75 |
76 An overview on incoming and outgoing channels which are required for an \MTA, gives figure~\ref{fig:mta-channels}. | 76 An overview on incoming and outgoing channels which are required for an \MTA, gives figure~\ref{fig:mta-channels}. The reader may want to compare this diagram with \masqmail's incoming and outgoing channels, which are depicted in figure~\ref{fig:masqmail-channels} on page~\pageref{fig:masqmail-channels}. |
77 | 77 |
78 %fixme: write about submission (port 587) | 78 %fixme: write about submission (port 587) |
79 | 79 |
80 | 80 |
81 | 81 |
126 \index{auth} | 126 \index{auth} |
127 One thing to avoid is being an \name{open relay}. Open relays allow to relay mail from everywhere to everywhere. This is a source of spam. The solution is restricting relay\footnote{Relaying is passing mail, that is not from and not for the own system, through it.} access. It may also be wanted to refuse all connections to the \MTA\ except ones from a specific set of hosts. | 127 One thing to avoid is being an \name{open relay}. Open relays allow to relay mail from everywhere to everywhere. This is a source of spam. The solution is restricting relay\footnote{Relaying is passing mail, that is not from and not for the own system, through it.} access. It may also be wanted to refuse all connections to the \MTA\ except ones from a specific set of hosts. |
128 \index{open relay} | 128 \index{open relay} |
129 \index{spam} | 129 \index{spam} |
130 | 130 |
131 Several ways to restrict access are available. The most simple one is restriction by the \NAME{IP} address. No extra complexity is added this way but the \NAME{IP} addresses need to be static or within known ranges. This approach is often used to allow relaying for local nets. The access check can be done by the \MTA\ or by a guard (e.g.\ \NAME{TCP} \name{Wrappers}) before. The main advantage here is the minimal setup and maintenance work needed. This kind of access restriction is important to be implemented. | 131 Several ways to restrict access are available. The most simple one is restriction by the \NAME{IP} address. No extra complexity is added this way but the \NAME{IP} addresses need to be static or within known ranges. This approach is often used to allow relaying for local nets. The access check can be done by the \MTA\ or by a guard (e.g.\ \NAME{TCP} \name{Wrappers} \cite{venema92}) before. The main advantage here is the minimal setup and maintenance work needed. This kind of access restriction is important to be implemented. |
132 \index{access restriction} | 132 \index{access restriction} |
133 | 133 |
134 This authentication based on \NAME{IP} addresses is impossible in situations where hosts with changing \NAME{IP} addresses, that are not part of a known sub net, need access. Then a authentication mechanism based on some \emph{secret} is required. Three common approaches exist: | 134 This authentication based on \NAME{IP} addresses is impossible in situations where hosts with changing \NAME{IP} addresses, that are not part of a known sub net, need access. Then a authentication mechanism based on some \emph{secret} is required. Three common approaches exist: |
135 | 135 |
136 \begin{enumerate} | 136 \begin{enumerate} |
281 Maintaining software takes much time and effort. \person{Spinellis} guesses ``40\,\% to 70\,\% of the effort that goes into a software system is expended after the system is written first time.'' \cite[page~1]{spinellis03}. This work is called \emph{maintaining}. Hence making software good to maintain will ease all further work. | 281 Maintaining software takes much time and effort. \person{Spinellis} guesses ``40\,\% to 70\,\% of the effort that goes into a software system is expended after the system is written first time.'' \cite[page~1]{spinellis03}. This work is called \emph{maintaining}. Hence making software good to maintain will ease all further work. |
282 | 282 |
283 | 283 |
284 \paragraph{\RG\,6: Testability} | 284 \paragraph{\RG\,6: Testability} |
285 \index{testability} | 285 \index{testability} |
286 Good testability make maintenance easier too, because functionality is directly verifiable when changes are done, thus removing the uncertainty. Modularized software makes testing easier, because parts can be tested without external influences. \person{Spinellis} sees testability as a sub-quality of maintainability. | 286 Good testability make maintenance easier too, because functionality is directly verifiable when changes are done, thus removing the uncertainty. Modularized software makes testing easier, because parts can be tested without external influences. \person{Spinellis} sees testability as a sub-quality of maintainability \cite{spinellis06}. |
287 | 287 |
288 | 288 |
289 \paragraph{\RG\,7: Performance} | 289 \paragraph{\RG\,7: Performance} |
290 \index{performance} | 290 \index{performance} |
291 Also called ``efficiency''. Efficient software requires few time and few resources. The merge of communication hardware and its move from service providers to homes and to mobile devices demand smaller and more resource-friendly software. The amount of mail will be lower even if much more mail will be sent, thus time performance is less important. \masqmail\ is not a program to be used on large servers, but on small devices. Thus more important for \masqmail\ will be energy and heat saving, maybe also system resources. | 291 Also called ``efficiency''. Efficient software requires few time and few resources. The merge of communication hardware and its move from service providers to homes and to mobile devices demand smaller and more resource-friendly software. The amount of mail will be lower even if much more mail will be sent, thus time performance is less important. \masqmail\ is not a program to be used on large servers, but on small devices. Thus more important for \masqmail\ will be energy and heat saving, maybe also system resources. |
305 | 305 |
306 | 306 |
307 | 307 |
308 \paragraph{\RG\,10: Usability} | 308 \paragraph{\RG\,10: Usability} |
309 \index{usability} | 309 \index{usability} |
310 Usability, not mentioned by \person{Hafiz} (he focuses on architecture) but by \person{Spinellis} and \person{Kan}, is a property which is very important from the user's point of view. Software with bad usability is rarely used, no matter how good it is. If substitutes with better usability exist, the user will switch to one of them. Here, usability includes setting up and configuring; the term ``users'' includes administrators. Having \MTA{}s on home servers and workstations requires easy and standardized configuration. The common setups should be configurable with little action by the user. Complex configuration should be possible, but the focus should be on the most common form of configuration: choosing one of several common setups. | 310 Usability, not mentioned by \person{Hafiz} \cite{hafiz05} (he focuses on architecture) but by \person{Spinellis} \cite{spinellis06} and \person{Kan} \cite{kan03}, is a property which is very important from the user's point of view. Software with bad usability is rarely used, no matter how good it is. If substitutes with better usability exist, the user will switch to one of them. Here, usability includes setting up and configuring; the term ``users'' includes administrators. Having \MTA{}s on home servers and workstations requires easy and standardized configuration. The common setups should be configurable with little action by the user. Complex configuration should be possible, but the focus should be on the most common form of configuration: choosing one of several common setups. |
311 | 311 |
312 %fixme: << masqmail as portable app? >> | 312 %fixme: << masqmail as portable app? >> |
313 | 313 |
314 | 314 |
315 | 315 |