From: Erika Rice (erice@cs.washington.edu)
Date: Tue Oct 12 2004 - 11:30:03 PDT
Review of "End-To-End Arguments in System Design" by J.H. Saltzer, D.P.
Reed, and D.D. Clark:
J.H. Saltzer, D.P. Reed, and D.D. Clark's paper "End-To-End Arguments in
System
Design" is the classic justification for design in the Internet. The
argument
has been used for everything from technical justifications of design to
social
philosophy (as can be seen by its citation in works by authors such as
Lawrence
Lessig).
The end-to-end argument, as presented in this paper, is simply that
functionality that must be performed by the application whether or not it is
done at a lower level should be done by the application unless there are
efficiency concerns. As "Rethinking the Design of the Internet: The
End-to-End
Arguments vs. the Brave New World" by Marjory Blumenthal and D.D. Clark
points
out, the initial philosophy assumed an Internet where the ends could
trust each
other and actors in the middle did not really care what went on at the ends.
Even though the assumption have changed, this philosophy has had fruitful
results. The end-to-end argument has led to an Internet that is relatively
simple. This has increased the flexibility of the network. The network
is not
tied into the needs of any particular application, therefore, developers
have
used these resources creatively.
This flexibility is not always perfect. Because the applications are
responsible for doing all they can, redundant or inappropriate work may be
done. For example, the authors use duplicate message suppression as an
example
of a good end point function; they claim that applications would often
need to
deal with some duplicates, therefore it should deal with all
duplicates. This
may lead to inefficiencies. A duplicate that could be removed sooner by
checking packet headers might have to be removed by actually comparing
contents
at a higher level because the packet header has been stripped off.
In spite of the weaknesses, the end-to-end argument has been an
important part
of network development. Without it, the Internet would likely be much less
flexible than it is today. However, one must be careful not to take the
argument too far. The end-to-end principle is the best option when all
else is
equal, but other considerations must not be ignored.
This archive was generated by hypermail 2.1.6 : Tue Oct 12 2004 - 11:30:03 PDT