End-to-end principle


End-to-end principle

The end-to-end principle is one of the central design principles of the Transmission Control Protocol (TCP) widely used on the Internet as well as in other protocols and distributed systems in general. The principle states that, whenever possible, communications protocol operations should be defined to occur at the end-points of a communications system, or as close as possible to the resource being controlled.

According to the end-to-end principle, protocol features are only justified in the lower layers of a system if they are a performance optimization, hence, TCP retransmission for reliability is still justified, but efforts to improve TCP reliability should stop after peak performance has been reached.

History

The concept first arose in a 1981 paper entitled End-to-end arguments in system design by Jerome H. Saltzer, David P. Reed, and David D. Clark.They 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" [http://www.cs.utah.edu/classes/cs7941-001/papers/blumenthal_clark.pdf 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.

Examples

For example, in the TCP/IP protocol stack, IP is a dumb, stateless protocol that simply moves datagrams across the network, and TCP is a smart transport protocol providing error detection, retransmission, congestion control, and flow control end-to-end. The network itself (the routers) needs only to support the simple, lightweight IP; the endpoints (computers) run the heavier TCP on top of it when needed.

A second canonical example is that of file transfer. Every reliable file transfer protocol and file transfer program should contain a checksum, which is validated only after everything has been successfully stored on disk. Disk errors, router errors, and file transfer software errors make an end-to-end checksum necessary. Therefore, there is a limit to how secure TCP checksum should be, because it has to be reimplemented for any robust end-to-end application to be secure.

A third example (not from the original paper) is the EtherType field of Ethernet. An Ethernet frame does not attempt to provide interpretation for the 16 bits of type in an original Ethernet packet. To add special interpretation to some of these bits, would reduce the total number of Ethertypes, hurting the scalability of higher layer protocols, i.e. all higher layer protocols would pay a price for the benefit of just a few. Attempts to add elaborate interpretation (e.g. IEEE 802 SSAP/DSAP) have generally be ignored by most network designs, which follow the end-to-end principle.

Applicability

The end-to-end principle has proved to work well for applications that require a high degree of data accuracy combined with high tolerance for delay, such as file transfer, and much less well for real-time applications such as telephony where low latency is more important than absolute data accuracy. The end-to-end model is also not appropriate for large multicast and broadcast networks, especially those with high loss such as some wireless systems because the overhead it imposes on retransmission is too high for most applications to bear.Fact|date=March 2007

See also

* "End-to-end connectivity"

External links

* [http://www.faqs.org/rfcs/rfc3724.html The Rise of the Middle and the Future of End-to-End] Reflections on the Evolution of the Internet Architecture (lots of references)
* [http://web.mit.edu/Saltzer/www/publications/endtoend/endtoend.pdf E2E Argument (.pdf)] Seminal paper
* [http://web.mit.edu/Saltzer/www/publications/endtoend/endtoend.txt E2E Argument (.txt)]
* [http://web.mit.edu/Saltzer/www/publications/endtoend/ANe2ecomment.html Active Networking and E2E]


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • End-to-end — has various meanings.*In e commerce, end to end marketing describes methods or services directly connecting people who want to sell and buy. This practice eliminates middlemen from the trade. *In computer communication, end to end refers to end… …   Wikipedia

  • End-to-end connectivity — is a property of the Internet that allows all nodes of the network to send packets to all other nodes of the network, without requiring intermediatenetwork elements to further interpret them. It was for the first time implemented in the CYCLADES… …   Wikipedia

  • End-to-end auditable voting systems — Election technology Certification of voting machines Independent Testing Authority (ITA) NVLAP VVSG End to end auditable voting systems Help America Vote Act Indepen …   Wikipedia

  • Principle — Prin ci*ple, n. [F. principe, L. principium beginning, foundation, fr. princeps, cipis. See {Prince}.] 1. Beginning; commencement. [Obs.] [1913 Webster] Doubting sad end of principle unsound. Spenser. [1913 Webster] 2. A source, or origin; that… …   The Collaborative International Dictionary of English

  • Principle of contradiction — Principle Prin ci*ple, n. [F. principe, L. principium beginning, foundation, fr. princeps, cipis. See {Prince}.] 1. Beginning; commencement. [Obs.] [1913 Webster] Doubting sad end of principle unsound. Spenser. [1913 Webster] 2. A source, or… …   The Collaborative International Dictionary of English

  • End All Life Productions — est un label discographique français spécialisé dans le black metal et le metal expérimental (« industriel », etc.). Il a produit de nombreux albums de ces deux styles, la plupart issus du tout premier, à la fin des années 90 et dans… …   Wikipédia en Français

  • end — I (intent) noun aim, ambition, aspiration, bourn, consilium, desideration, desideratum, design, desire, desired result, destination, dream, expectation, goal, guiding principle, nope, idea, intended result, intendment, intention, mission,… …   Law dictionary

  • Principle of double effect — Part of a series on St. Thomas Aquinas …   Wikipedia

  • Principle of maximum entropy — This article is about the probability theoretic principle. For the classifier in machine learning, see maximum entropy classifier. For other uses, see maximum entropy (disambiguation). Bayesian statistics Theory Bayesian probability Probability… …   Wikipedia

  • Principle of Least Power — In web programming, the design principle of least power states that, given a choice among computer languages, classes of which range from descriptive to procedural, the less procedural, more descriptive the language one chooses, the more one can… …   Wikipedia


Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”

We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.