TCP-IP
インターネットの基盤となるプロトコル群。 厳密には TCP と IP の 2 つだけでなく、 その周辺を含めた総称。
OSI 参照モデルとの対応#
| OSI 7 層 | TCP/IP 4 層 |
|---|---|
| アプリケーション / プレゼンテーション / セッション | アプリケーション |
| トランスポート | トランスポート |
| ネットワーク | インターネット |
| データリンク / 物理 | リンク |
OSI は教育・議論の枠組み、 TCP/IP は実際に動いているもの。
カプセル化#
各層がヘッダを付けて下の層に渡す。
[ HTTP データ ]
[ TCP ヘッダ | HTTP データ ]
[ IP ヘッダ | TCP ヘッダ | HTTP データ ]
[ Ethernet ヘッダ | IP ヘッダ | TCP ヘッダ | データ | FCS ]受信側は逆に剥がしていく。 各層は自分のヘッダしか見ないので、 上位のプロトコルを知らなくてよい。
砂時計モデル#
多様なアプリケーション(HTTP, DNS, SMTP, ...)
↓
TCP / UDP
↓
**IP** ← ここだけが単一
↓
多様な物理層(Ethernet, Wi-Fi, 4G, 光, ...)IP だけが共通という設計が、 上下の多様性を可能にした。 インターネットが単一の技術に縛られずに 発展できた最大の要因。
エンドツーエンド原則#
機能はネットワークの端(アプリケーション)に置き、 中間は単純に保つ。
- 中間のルータは「とにかく転送する」だけ
- 信頼性の確保は端の TCP が行う
この原則により、 中間の装置を変えずに新しいアプリケーションを作れる。 Web も動画配信も、ルータの改修なしに登場できた。
参考文献#
- James F. Kurose, Keith W. Ross. Computer Networking: A Top-Down Approach, 8th ed. Pearson, 2021.
- J. H. Saltzer, D. P. Reed, D. D. Clark. End-to-end arguments in system design. ACM TOCS 2(4), 1984. https://doi.org/10.1145/357401.357402
- Internet Protocol. RFC 791, 1981. https://doi.org/10.17487/RFC791