TCP/IPの仕組み — パケットの旅
URLを入力してエンターを押すと、ほんの一瞬でページが表示されます。でもその裏側では、あなたの「このページをください」というデータが荷造りされ、世界中のルーターを旅して、サーバーに届けられています。
この記事では、その旅を8つのステップに分けて図で追いかけます。下の図1は実際に操作できます。まずは「進む」を押してみてください。
PACKET — パケットの中身(左が外側)
ROUTE — パケットの旅路
あなたのPC
ルーター
ルーター
サーバー
LAYERS — 4つの層
アプリケーション層内容そのもの(HTTPなど)
トランスポート層順番と確実な配達(TCP)
インターネット層住所と道案内(IP)
リンク層隣の機器への受け渡し
STEP 1 / 8
データだけでは、旅に出られない
ブラウザが「このページをください」というお願い(HTTPリクエスト)を作りました。でも、データだけではネットワークに流せません。宛先も差出人も書いていない手紙と同じだからです。ここから荷造りが始まります。
図1 — パケットの旅(カプセル化〜配送〜デカプセル化)
ポイントは「層の分業」
図1で見たとおり、TCP/IPは4つの層がそれぞれ自分の仕事だけに集中する「分業」で成り立っています。手紙にたとえるなら — 手紙の文章を書く人(アプリケーション層)、便箋に番号を振る人(トランスポート層)、封筒に住所を書く人(インターネット層)、隣の郵便局まで運ぶ人(リンク層)。お互いの仕事の中身を知らなくても、全体としてちゃんと届くのがこの仕組みのすごいところです。
だからこそ、Wi-Fiが有線になっても(リンク層の交代)、HTTPがHTTPSになっても(アプリケーション層の交代)、他の層は何も変えずにそのまま動き続けられます。
用語ミニ辞書
- パケット
- データを運びやすい大きさに分けた「小包」のこと。
- ヘッダ
- 小包に貼る「宛先や順番を書いたメモ」。層ごとに1枚ずつ増える。
- ルーター
- IPヘッダの住所を見て「次はあっち」と道を選ぶ中継機器。
まとめ
送るときはヘッダを外側へ重ねていき(カプセル化)、受け取るときは外側から順に外していく(デカプセル化)。インターネットの通信は、この「荷造りと開封」の繰り返しです。次回は、この旅の途中でパケットが迷子になったときにTCPがどう助けるか(再送の仕組み)を図解します。