この記事でわかること
- TCP/IPモデルとは、インターネット通信に必要なルールを4つの層(レイヤー)に分けて整理したもの
- 4つの層は上から「アプリケーション層・トランスポート層・インターネット層・ネットワークインターフェース層」と呼ぶ
- 郵便の仕組みに例えることで、各層の役割を直感的にイメージできるようになる
- 層に分けることで、問題の切り分けや機能の改良がしやすくなる理由がわかる
はじめに
前回までの記事では、ツイストペアケーブル・ハブ・スイッチといったネットワーク機器を紹介してきました。「ケーブルで機器をつなぐ」「ハブは信号を全員に送る」「スイッチは宛先を絞って送る」――そんなイメージが頭に入っていれば十分です。
今回からは、 「レイヤー(層)」 という考え方を導入します。これを知っておくと、次回以降のIPアドレスやルーティングの話が格段に理解しやすくなります。
💡 TCP/IPモデルのすべてを今すぐ完璧に理解する必要はありません。「なんとなくこういうものか」というイメージが持てれば、それで十分です。細かい部分は、これからの記事を読み進めるうちに自然と身についていきます。
TCP/IPモデルとは何か?
インターネット通信を動かす「共通のルール集」
TCP/IPとは、インターネット通信を行うために必要なルールをまとめたものです。
- TCP:Transmission Control Protocol(トランスミッション・コントロール・プロトコル)
- Transmission=「送信・伝送」、Control=「制御」、Protocol=「取り決め・規約」
- IP:Internet Protocol(インターネット・プロトコル)
- Internet=「インターネット」、Protocol=「取り決め・規約」
名前の意味は今すぐ覚えなくて大丈夫です。「インターネット通信に必要なルールの総称」と頭に置いておけばOKです。
たとえば、こんなルールが含まれています。
- ケーブルの種類や、0と1をどう電気信号に変換するか
- 大きなデータをどう分割して送り、どう組み立て直すか
- データをどのルートで宛先まで届けるか
これらをひとまとめにせず、4つのグループ(層)に整理したものが「TCP/IPモデル」です。
郵便で理解するTCP/IPモデルの4層
TCP/IPモデルを直感的にイメージするために、郵便の仕組みに例えて見ていきましょう。
手紙が相手に届くまでを思い浮かべてください。
- 手紙を書く人がいる
- 大きな荷物なら複数の小包に分けて発送する人がいる
- 郵便局で仕分けして、次の配送先を決める人がいる
- 実際にバイクや車で運ぶ人がいる
郵便にはそれぞれの役割を担う人がいます。ネットワーク通信も、まったく同じ発想で役割が分かれています。
TCP/IPモデルには4つの層があります。上の層から順に見ていきましょう。
アプリケーション層(いちばん上)
📮 郵便で言うと…「手紙を書いて投函する」「届いた手紙を読む」
アプリケーション層は、私たちが直接触れる部分です。郵便でいうと「手紙を書いて封筒に入れて投函」のイメージです。受け取る側で言えば、「封筒から手紙を取り出して読む」部分にあたります。
コンピュータ―の世界でいうと、メールを書いたり、ブラウザでWebページを開いたりする操作がこれにあたります。「何を送るか・何を受け取るか」を決める層と言ってもいいでしょう。
トランスポート層
📦 郵便で言うと…「手紙を細かく分割して送り、受け取ったら元通りに並べ直す」
ネットワークでは一度に送れるデータ量に上限があります。現実の郵便では手紙を破って送ることはありませんが、ネットワークの世界では大きなデータはそのまま送れません。データを小包に細かく分割して送り、届いた先で元通りに組み立て直す必要があります。
送り側でデータを1個→100個に分割、受け取り側でデータを100個→1個にくっつけるイメージです。この分割と組み立てを担うのがトランスポート層です。
インターネット層
🗺️ 郵便で言うと…「次はどの郵便局を経由するか決める」
東京・品川から大阪・梅田の会社へ手紙を送るとき、品川郵便局の担当者は「次は大阪中央郵便局へ」と判断して手紙を送り出します。大阪中央郵便局に着いたら「次は梅田の配達センターへ」――というように、次の目的地を決めながらリレーしていくのがインターネット層の役割です。
手紙を送る私たちは、経路を気にしません。「大阪梅田の○○会社」と宛先を書けば、あとは郵便システムがルートを決めてくれます。ネットワーク通信も同じで、宛先(IPアドレス)を指定するだけで、経路は自動的に決まっていきます。
📌 連載記事を読んでくださっている方へ
「宛て先は『MACアドレス』じゃないの?」と思われるかもしれません。実は宛て先情報はIPアドレスとMACアドレスという2種類があります。
後の記事でこれらの違いについて説明しますので、今の段階では我々の現実世界のように
- IPアドレス:市町村単位
- MACアドレス:番地単位
のように住所を指定するもの、と理解いただければ十分です!
ネットワークインターフェース層(いちばん下)
🚚 郵便で言うと…「実際に道路を走って荷物を運ぶ」
どんなに仕組みが整っていても、最終的に荷物を運ぶ車やバイクがなければ届きません。ネットワークインターフェース層は、データを電気信号や光として物理的に送り届ける部分です。
これまでの記事で紹介したツイストペアケーブル・ハブ・スイッチが、この層で活躍します。
4つの層をまとめて確認しよう
| 層(レイヤー) | 郵便のたとえ | 主な役割 |
|---|---|---|
| アプリケーション層 | 手紙を書く・読む | アプリがデータを作る・受け取る |
| トランスポート層 | 手紙をビリビリに破る・元通りにくっつける | データの分割と再組み立て |
| インターネット層 | 次の経由地(郵便局)を決める | データの配送経路を決定する |
| ネットワークインターフェース層 | 車やバイクで実際に運ぶ | 物理的な信号としてデータを送る |
データが届くまでの流れを追いかけてみよう
4つの層を個別に見てきましたが、「実際のデータはどう流れるの?」という疑問が残るかもしれません。メールを送る場面を例に、4つの層が連携する様子を追いかけてみましょう。
送る側:上の層から下へ順番に処理する
- アプリケーション層:メールアプリが「件名・本文・宛先」などのデータを作る
- トランスポート層:データが大きければ分割し、それぞれに順番を示す番号を振る
- インターネット層:「次はどのルーターへ送るか」を決め、宛先のIPアドレスを付ける
- ネットワークインターフェース層:電気信号(または光)に変換してケーブルに流す
受け取る側:下の層から上へ順番に処理する
今度は逆の順番で処理が行われます。
- ネットワークインターフェース層:電気信号を受け取り、0と1のデータに変換する
- インターネット層:「自分宛のデータかどうか」を確認する
- トランスポート層:分割されていたデータを番号順に並べ直し、元の形に戻す
- アプリケーション層:メールアプリがデータを受け取り、画面に表示する
ポイントは、それぞれの層は「自分の担当部分だけ」を処理するということです。アプリケーション層はケーブルの種類を気にしません。ネットワークインターフェース層はメールの内容を知りません。役割が完全に分かれているから、複雑な通信がシンプルに実現できます。
なぜ役割を「層」に分けるのか?
「全部まとめて一つのルールにすればよくない?」と感じるかもしれません。層に分ける理由は、大きく2つあります。
問題が起きたときに原因を絞り込みやすい
通信がうまくいかないとき、「どの層で問題が起きているか」を切り分けると、原因調査がとても楽になります。
郵便の例で言えば、「手紙の内容が間違っている(アプリケーション層の問題)」と「配送トラックが故障した(ネットワークインターフェース層の問題)」は、まったく別の問題です。混同しないで済むのが、層に分けることの効果です。
各層を独立して改良できる
ケーブルをより高速なものに交換しても(ネットワークインターフェース層の変更)、メールの書き方(アプリケーション層)は何も変わりません。各層が独立しているので、一部だけをアップデートできるのです。
インターネットが登場してから数十年、ケーブルの素材やスイッチの性能は大きく進化しましたが、メールや写真の送り方の基本的なルールは変わっていません。これが「独立した層」の威力です。
まとめ
- TCP/IPモデルは、インターネット通信のルールを4つの層に整理したもの
- 4つの層は上から「アプリケーション層・トランスポート層・インターネット層・ネットワークインターフェース層」
- 送る側は上の層から下へ、受け取る側は下の層から上へ、それぞれの層が自分の担当だけを処理する
- 層に分けることで、問題の特定と機能の改良がしやすくなる
今は「なんとなくこんな感じ」で十分です。次回の記事では、ツイストペアケーブル・ハブ・スイッチを、今回学んだレイヤーの観点から改めて見直します。「あの機器はこの層だったのか!」という発見があると思いますので、お楽しみに。