End-to-end arguments in system design

The work

AuthorsJerome H. Saltzer; David P. Reed; David D. Clark
Editors
Typearticle
Year1984
Citekeysaltzer1984endtoend

Where it appeared

Published inACM Transactions on Computer Systems
PublisherAssociation for Computing Machinery
Volume2
Issue4
Pages277--288

Identifiers

DOI10.1145/357401.357402
OpenAlexW238861864

Abstract

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. Examples discussed in the paper include bit-error recovery, security using encryption, duplicate message suppression, recovery from system crashes, and delivery acknowl-edgment. Low-level mechanisms to support these functions are justified only as performance enhance-ments.

A copy is held

pdf, 875.2 kB. Not published — it may be under copyright. The facts and links here are.

How it got here

How it got hereagent via openalex
Added2026-08-05 00:00 UTC
Approved bya person 2026-08-05 21:37 UTC

Cite it as

@article{saltzer1984endtoend,
  title        = {End-to-end arguments in system design},
  author       = {Jerome H. Saltzer and David P. Reed and David D. Clark},
  year         = {1984},
  journal      = {ACM Transactions on Computer Systems},
  publisher    = {Association for Computing Machinery},
  volume       = {2},
  number       = {4},
  pages        = {277--288},
  doi          = {10.1145/357401.357402},
}

This record lives at https://refs.drheap.org/saltzer1984endtoend/ and will keep doing so.