Summary
The paper by Saltzer discusses the end-to-end argument in a distributed communication system. The end-to-end argument proposes that functions at the low levels of a system may not be cost-efficient because these functions may not be used by higher level applications. These functions may also be redundant, when higher-layer clients have to re-implement these features to suit its own requirements. Providing the functions at the lower level will then become more costly and not useful.
The authors proceed to give examples of the end-to end argument in delivery guarantees/ acknowledgements, data transmission and encryption, suppressing duplicate messages, correct arrival order of messages (FIFO delivery), and data storage systems. The main question in these examples is on where to place the functions – at the low or high level? To arrive at an answer, it is necessary to evaluate the trade-offs between performance, reliability, and costs when comparing the feasibility of placing functions on each of the identified levels.
In conclusion, the authors state that end-to-end arguments can be thought of as “Occam’s Razor”. That is, only the functions that are absolutely necessary must be included in the designed communication subsystem.
Background
History of End-to-End Arguments (http://en.wikipedia.org/wiki/
The concept and research of end-to-end connectivity and network intelligence at the end-nodes reaches back to packet-switching networks in the 1970's, cf. CYCLADES. A 1981 presentation entitled End-to-end arguments in system design[1] by Jerome H. Saltzer,David P. Reed, and David D. Clark, argued that reliable systems tend to require end-to-end processing to operate correctly, in addition to any processing in the intermediate system. They pointed out that most features in the lowest level of a communications system have costs for all higher-layer clients, even if those clients do not need the features, and are redundant if the clients have to reimplement the features on an end-to-end basis.
This leads to the model of a "dumb, minimal network" with smart terminals, a completely different model from the previous paradigm of the smart network with dumb terminals. However, the End-to-end principle was always meant to be a pragmatic engineering philosophy for network system design that merely prefers putting intelligence towards the end points. It does not forbid intelligence in the network itself if it makes more practical sense to put certain intelligence in the network rather than the end-points. David D. Clark along with Marjory S. Blumenthal in "Rethinking the design of the Internet: The end to end arguments vs. the brave new world" wrote in 2000:
From the beginning, the end to end arguments revolved around requirements that could be implemented correctly at the end-points; if implementation inside the network is the only way to accomplish the requirement, then an end to end argument isn't appropriate in the first place.
Occam’s Razor (http://en.wikipedia.org/wiki/
William Ockham (c. 1285–1349) is remembered as an influential nominalist but his popular fame as a great logician rests chiefly on the maxim attributed to him and known as Occam's razor: Entia non sunt multiplicanda praeter necessitatem or "Entities should not be multiplied unnecessarily." The term razor refers to the act of shaving away unnecessary assumptions to get to the simplest explanation.
Critique
I found the paper very effective in explaining the merits of applying the end-to-end principle in system design. I agree that system designers must not be overzealous in providing functions at the low-level subsystem in the attempt to “help” the users at the higher level. A good system is one that provides only the functions that are absolutely necessary, and this will result in overall cost-effectiveness. Ultimately, which functions should be provided in each layer must be decided based on requirements analysis of the application that will use the system. Entities should not be multiplied unnecessarily.
Main Reference:
End-to End Arguments in System Design
by Saltzer, et al
No comments:
Post a Comment