Monday, September 1, 2008

Reading on "End-to-end arguments in system design"

This paper argues that it is a must to put function implementation to the higher layer that is near application. The authors claim implementing the function at low layer may be useless and discuss the end-to-end argument in the context of the communication networks.
The first two sentences of the paper explain the meaning of the paper title. “This paper presents a design principle that helps guide placement of functions among the modules of a distributed computer system. The principle, called the end-to-end argument, suggests that functions placed at low levels of a system may be redundant or of little value when compared with the cost of providing them at that low level.” The authors prove the correctness of the principles through several examples.
This paper must be the “ancestor” of the host-to-host protocols like TCP.
Actually, this paper talked about nothing but some examples in which the end-to-end argument is applied to. The authors’ opinion to solve all the threats of “careful file transfer” is to do everything at the last minute because there is more or less something that has to be done at the last minute.
The authors somehow state that putting some functions at the lower layer will be efficient but may cost more and also say that implementing functions at the higher layer will be more efficient because higher layer has more system information. A contradictory opinion.
Are we convinced to use the end-to-end argument by the authors? Through the last part of the paper, we are told that the end-to-end argument comes from a bunch of historical projects.

No comments: