<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/must-read-end-to-end-arguments-in-system-design-ipspace-net-blog-3szxhncs4" -->

---
title: MUST READ: End-to-End Arguments in System Design «...
description: A brief endorsement of the classic 1981 paper &#x27;End-to-End Arguments in System Design,&#x27; which argues for keeping networks simple and pushing complexity to...
canonical: https://daily.dev/posts/must-read-end-to-end-arguments-in-system-design-ipspace-net-blog-3szxhncs4
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: MUST READ: End-to-End Arguments in System Design « ipSpace.net blog | daily.dev
og:description: A brief endorsement of the classic 1981 paper &#x27;End-to-End Arguments in System Design,&#x27; which argues for keeping networks simple and pushing complexity to...
og:url: https://daily.dev/posts/must-read-end-to-end-arguments-in-system-design-ipspace-net-blog-3szxhncs4
og:image: https://api.daily.dev/og/posts/3szxHncS4.png
og:image:alt: MUST READ: End-to-End Arguments in System Design « ipSpace.net blog
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# MUST READ: End-to-End Arguments in System Design « ipSpace.net blog

**[ipSpace.net Blog](https://daily.dev/sources/ipspace)** · 1 min read · 0 upvotes · 0 comments

## Summary

A brief endorsement of the classic 1981 paper 'End-to-End Arguments in System Design,' which argues for keeping networks simple and pushing complexity to endpoints. The post notes that networking vendors have long ignored these principles for profit, adding unnecessary complexity to networks. It also highlights a timeless tidbit from the paper about how relying on layer-2 checksums can corrupt data.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.ipspace.net/2023/05/worth-reading-end-to-end-system-design>

## Questions this post answers

### What is the end-to-end argument in system design and where does it come from?

The end-to-end argument holds that complex functions should be implemented at the endpoints of a network rather than in the network itself, keeping the network simple. This principle was formally articulated in a 1981 paper titled 'End-to-End Arguments in System Design' by Saltzer et al. at MIT. The paper also warns that relying on layer-2 checksums alone can lead to data corruption.

_Engineers reasoning about where to place logic in distributed systems find the ongoing debate tracked on daily.dev._

## Similar posts on daily.dev

- [The world in which IPv6 was a good design](https://daily.dev/posts/the-world-in-which-ipv6-was-a-good-design-tj3i8ov0s) · Hacker News · 0 upvotes · 0 comments
- [misc/why6why.md at main · becarpenter/misc](https://daily.dev/posts/misc-why6why-md-at-main-becarpenter-misc-vdnnmpiyy) · Lobsters · 0 upvotes · 0 comments
- [From Core to Edge: Building Secure, Always-On Infrastructure for Global Mobile Networks](https://daily.dev/posts/from-core-to-edge-building-secure-always-on-infrastructure-for-global-mobile-networks-ahm7auqva) · Cisco · 0 upvotes · 0 comments
- [Networking and the Internet, from First Principles · Faza](https://daily.dev/posts/networking-and-the-internet-from-first-principles-faza-0ciffzefa) · Hacker News · 0 upvotes · 0 comments

---

Tags: [#career](https://daily.dev/tags/career), [#networking](https://daily.dev/tags/networking), [#distributed-systems](https://daily.dev/tags/distributed-systems)

[View this post on daily.dev](https://daily.dev/posts/must-read-end-to-end-arguments-in-system-design-ipspace-net-blog-3szxhncs4)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"MUST READ: End-to-End Arguments in System Design « ipSpace.net blog","url":"https://daily.dev/posts/must-read-end-to-end-arguments-in-system-design-ipspace-net-blog-3szxhncs4","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/must-read-end-to-end-arguments-in-system-design-ipspace-net-blog-3szxhncs4"},"datePublished":"2026-08-11T08:56:17.469Z","dateModified":"2026-08-11T09:36:53.754Z","description":"A brief endorsement of the classic 1981 paper 'End-to-End Arguments in System Design,' which argues for keeping networks simple and pushing complexity to...","image":"https://media.daily.dev/image/upload/s--ZrL_HSsR--/f_auto/v1722860399/public/Placeholder%2006","thumbnailUrl":"https://media.daily.dev/image/upload/s--ZrL_HSsR--/f_auto/v1722860399/public/Placeholder%2006","isAccessibleForFree":true,"articleSection":"ipSpace.net Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"ipSpace.net Blog","logo":"https://media.daily.dev/image/upload/s--xS7E82MT--/f_auto,q_auto/v1786438303/logos/ipspace?_a=BAMAMicg0","url":"https://daily.dev/sources/ipspace"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/must-read-end-to-end-arguments-in-system-design-ipspace-net-blog-3szxhncs4","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"career,networking,distributed-systems","timeRequired":"PT1M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"ipSpace.net Blog","item":"https://daily.dev/sources/ipspace"},{"@type":"ListItem","position":3,"name":"MUST READ: End-to-End Arguments in System Design « ipSpace.net blog"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/must-read-end-to-end-arguments-in-system-design-ipspace-net-blog-3szxhncs4#faq","mainEntity":[{"@type":"Question","name":"What is the end-to-end argument in system design and where does it come from?","acceptedAnswer":{"@type":"Answer","text":"The end-to-end argument holds that complex functions should be implemented at the endpoints of a network rather than in the network itself, keeping the network simple. This principle was formally articulated in a 1981 paper titled 'End-to-End Arguments in System Design' by Saltzer et al. at MIT. The paper also warns that relying on layer-2 checksums alone can lead to data corruption. Engineers reasoning about where to place logic in distributed systems find the ongoing debate tracked on daily.dev."}}]}
```

