エンドツーエンド原理
ARPANETは、コンピュータが周辺機器と入出力チャネルでやりとりするときのように、ネットワークの任意の2終端間で高信頼なデータ転送を提供するよう設計された。パケット転送で発生しうる障害に対処するため、通常のARPANETメッセージは隣接ノード間で肯定応答と再送の方式を使って確実に手渡される。手渡しが成功したらそれらが処分され、パケット喪失の際に発信元から宛先まで再送するということはない。しかし多大な努力にもかかわらず、初期のARPANET仕様で想定していた完全な信頼性は、この方式では提供不可能であることが判明した。ARPANETが初期の4ノード構成から成長するにしたがって、そのことがますます明らかとなっていった。そこでARPANETは隣接ノード間の信頼性機構の持つ本質的制約に対処し真のエンドツーエンド信頼性を追求しようとした。
インターネットでは、コネクションレスのデータグラムサービスで送達もQoSも保証しないIPプロトコルがほとんど全ての通信に使われている。 IP上で任意のプロトコルが動作する。 音声など一部の用途では再送による信頼性は必要とされないので、IPにおける信頼性機構はIPヘッダのチェックサムのみとなっている(低品質の経路でパケットを送信する際のビット誤り検出に必須である)。 エンドツーエンドの肯定応答と再送は、IPの上に置かれるコネクション指向のTCPで実装している。 IPとTCPで機能的に分割したのは、用途によってエンドツーエンド原理を選択可能にしたためである。 さらにネットワークが適切に機能するためには、輻輳状態となるような負荷を排除するような手段も必要とされる。 インターネットのほとんどのアプリケーションが通信にTCPを使っている。 バン・ジェイコブソンらがTCP向けのエンドツーエンドの輻輳制御アルゴリズムを考案したのは、TCPが標準化されてから7年後のことである。
完全な信頼性を追求することは、データ転送の他の重要なパラメータ、特にレイテンシとスループットを低下させる可能性がある。予測可能なスループットと低レイテンシは、対話型のリアルタイム音声アプリケーションなどで重要であり、その場合完全な信頼性は全く必要とされない。そのような用途のため、ARPANETでは低レイテンシのデータ転送サービスをホストに提供するため、各種信頼性保証手段を省いたサービスを提供した。