The Design Philosophy of DARPA Internet Protocols

Table of Contents

paper link:

This paper introduces the motivation of TCP/IP protocol, here are some interesting facts about TCP/IP:

  1. The idea of datagram does not receive emphasis in the first paper.
  2. The layering of IP and TCP layers was not part of the original proposal.


Fundamental Goal

The goal: Effective technique for multiplexed utilization of existing interconnected networks.

  • Original goal was to connect ARPANET with the ARPA packet ratio network.
    • It was assumed that there will be other kind of networks, but local networks had not emerged yet.
    • An alternative is to design a unified multi-media system which incorporates a variety of different transmission media.
      • Not general enough.
  • The techniques selected for multiplexing is packet switching.
    • Alternatives include circuit switching, however, the applications to be supported were naturally served by packet switching.
  • The particular technique for interconnecting these networks.
    • A layer of internet packet switches: gateways.

Fundamental structure of the Internet: a packet switched communications facility in which a number of distinguishable networks are connected together using packet communications processors called gateways which implement store and forward packet forwarding algorithm.

Second-level goals

The fundamental goal do not elaborate on the term "effective", here is list of a more detailed set of goals, ordered by priority (from high to low):

  1. Internet communication must continue despite loss of networks or gateways.
  2. The Internet must support multiple types of communications service.
  3. The Internet architecture must accommodate a variety of networks.
  4. The Internet architecture must permit distributed management of its resources. (WHAT IS THIS?)
  5. The Internet architecture must be cost effective.
  6. The Internet architecture must permit host attachment with a low level of effort.
  7. The resources used in the internet architecture must be accountable.

Note that exchanging the order of any two items would results in a brand new internet: wartime network might prioritize survivability, and commercial network might prioritize accountability.

Survivability in the Face of Failure

Assumption: synchronization would never be lost unless there was no physical path over which any sort of communication could be achieved.

To achieve the goal, state information which describes on-going conversation must be protected.

  • e.g. #packets transmitted, #packets acknowledged.
  • In some network architectures, state information is stored in intermediate packet switching nodes (gateways) of the networks.
    • In this case, the nodes must be replicated.
    • Algorithms to ensure robust replication are difficult to build.
  • Alternative is to take this information and gather it at the endpoint of net. at the entity which is utilizing the service of the network.
    • a.k.a. "fate-sharing"
    • two advantages
      • protect any number of intermediate failures
      • must easier to engineer than replication.
    • two consequences
      • the gateways must not have any essential state information about on-going connections, they are stateless packet switches instead.
      • more trust is placed in host machine rather than in an architecture where the network ensures reliable delivery of data.

Types of Service

Different types of service are distinguished by differing requirements for speed, latency and reliability.

Varieties of Networks

Other Goals

Architecture and Implementation



Author: expye(Zihao YE)


Date: 2022-12-10 Sat 00:00

Last modified: 2022-12-27 Tue 07:18

Licensed under CC BY-NC 4.0