TCP/IPとは?4階層モデルと通信の仕組みを図解でわかりやすく解説

  • URLをコピーしました!

前の記事では、ネットワーク通信を7つの階層に分けて整理する OSI参照モデルについて学びました。

OSI参照モデルによって、 「L2ではMACアドレス」 「L3ではIPアドレス」 「L4ではTCP・UDP」 というように、ネットワーク技術を役割ごとに整理できます。

しかし、実際のインターネット通信を学習すると、 OSI参照モデルと並んで必ず登場するのが TCP/IP(TCP/IPモデル)です。

名前だけを見ると 「TCPとIPという2つのプロトコルだけの話?」 と思うかもしれませんが、TCP/IPはもっと広い意味で使われます。

この記事では、TCP/IPとは何なのか、 OSI参照モデルとの関係から実際のWeb通信まで、 初学者でも通信全体をイメージできるように整理します。

🌐 NETWORK BEGINNER

この記事はネットワーク初級講座の一部です。 学習順を確認したい場合は講座一覧から確認できます。

ネットワーク初級講座を見る →
LESSON GOAL この記事のゴール

TCP/IPモデルの4階層を暗記するだけではなく、 「Webサイトを見るとき、HTTP・TCP・IP・Ethernetが それぞれ何をしているのか」 を説明できる状態を目指します。

目次

TCP/IPとは?

TCP/IPとは、 インターネットをはじめとする現在のネットワーク通信で広く利用されている プロトコル群と、その通信体系 を表す言葉です。

TCP/IPという名前は、 代表的なプロトコルである TCP(Transmission Control Protocol)IP(Internet Protocol) に由来します。

ただし、TCP/IPで使われるプロトコルはTCPとIPだけではありません。

HTTP HTTPS DNS SSH TCP UDP IP ICMP Ethernet

Web通信のHTTPやHTTPS、名前解決で使うDNS、 通信制御を行うTCP・UDP、宛先へデータを届けるIPなど、 複数のプロトコルが協力してネットワーク通信を実現しています。

TCP/IP=TCPとIPだけではない

TCP/IPとは、TCPやIPを中心として、 インターネット通信を実現するために使われる さまざまなプロトコルを体系的に整理した考え方です。

そもそもプロトコルとは?

TCP/IPを理解するうえで重要なのが プロトコル(Protocol)という言葉です。

プロトコルとは、 コンピューター同士が通信するための決まり・ルール です。

人同士の会話でも、一方が日本語、もう一方がまったく理解できない言語だけを使っていれば、 スムーズに情報をやり取りできません。

ネットワーク通信でも同じように、 通信する機器同士が共通のルールを利用する必要があります。

👤 人A 共通言語
共通ルール 日本語
👤 人B 共通言語
💻 PC 通信端末
通信ルール TCP/IP
🖥️ Server 通信端末

TCP/IPモデルは4つの階層で通信を整理する

TCP/IPモデルでは、 ネットワーク通信に必要な機能を 4つの階層に分けて考えます。

4
アプリケーション層 HTTP / HTTPS / DNS / SSH など
3
トランスポート層 TCP / UDP
2
インターネット層 IP / ICMP など
1
ネットワークインターフェース層 Ethernetなど
TCP/IPモデル 主な役割 代表例
アプリケーション層 ユーザーが利用するネットワークサービス HTTP、HTTPS、DNS、SSHなど
トランスポート層 端末・アプリケーション間の通信制御 TCP、UDP
インターネット層 宛先ネットワークへデータを届ける IP、ICMPなど
ネットワークインターフェース層 実際のネットワーク上でデータを転送する Ethernetなど

TCP/IPモデル4階層の役割を詳しく見てみよう

アプリケーション層:ユーザーに近い通信を担当する

アプリケーション層は、 TCP/IPモデルの中で最もユーザーに近い層です。

Webサイトを見る、メールを送る、サーバーへSSH接続する、 ドメイン名からIPアドレスを調べるなど、 アプリケーションが利用するネットワーク機能 を扱います。

APPLICATION
代表的なプロトコル
HTTP HTTPS DNS SSH SMTP
例:Webサイトを見る

ブラウザとWebサーバーの間では、 HTTPやHTTPSなどのプロトコルが利用されます。

トランスポート層:アプリケーション間の通信を制御する

トランスポート層では、 通信する端末・アプリケーション間の データ転送を制御します。

代表的なプロトコルが TCPUDPです。

TCP

信頼性を重視

データが正しく相手へ届いたかを確認しながら通信します。 Web、SSHなど多くの通信で利用されます。

UDP

シンプル・高速

TCPほど細かな到達確認を行わず、 オーバーヘッドを抑えた通信を行います。

ポート番号もトランスポート層で重要

IPアドレスだけでは、 通信先のコンピューターまでは特定できても、 そのコンピューター上の どのサービスへ通信したいのか までは特定できません。

💻 Client
Web Server TCP 443 TCP 22

そこでTCPやUDPでは ポート番号を利用して、 通信先のサービスを識別します。

インターネット層:データを宛先まで届ける

インターネット層では、 異なるネットワークを越えてデータを目的地まで届ける 役割を扱います。

ここで中心となるプロトコルが IP(Internet Protocol)です。

💻 PC 192.168.1.10
📡 Router 経路選択
🌐 Internet
🖥️ Server 宛先

IPアドレスによって通信相手を識別し、 ルーターなどが宛先ネットワークへ パケットを転送していきます。

TCPとIPは役割が違う

TCPは主に「通信をどう制御するか」、 IPは「データをどの宛先へ届けるか」を担当します。 名前はセットになっていますが、役割は異なります。

ネットワークインターフェース層:実際のネットワーク上で転送する

TCP/IPモデルの最下層が ネットワークインターフェース層です。

Ethernetなどを利用して、 実際のネットワーク上でデータを転送します。

💻 PC
🔀 Switch
📡 Router

Ethernetでは、 IPアドレスだけではなく MACアドレス という識別情報も重要になります。

MACアドレスについては、 次々回ではなくこの記事の次のレッスンで詳しく学習します。

OSI参照モデルとTCP/IPモデルの違い

前の記事で学習したOSI参照モデルは7階層でしたが、 TCP/IPモデルでは4階層にまとめられています。

OSI参照モデル
L7 アプリケーション
L6 プレゼンテーション
L5 セッション
L4 トランスポート
L3 ネットワーク
L2 データリンク
L1 物理
TCP/IPモデル
アプリケーション層
トランスポート層
インターネット層
ネットワーク
インターフェース層
OSI参照モデル TCP/IPモデル
L5~L7 アプリケーション層
L4 トランスポート層 トランスポート層
L3 ネットワーク層 インターネット層
L1~L2 ネットワークインターフェース層
どちらか一方だけ覚えればいい?

いいえ。ネットワーク学習では両方登場します。 OSI参照モデルは通信機能を細かく整理するときに便利で、 TCP/IPモデルは実際のインターネット通信を理解するときに重要です。

Webサイトを見るときTCP/IPの各層は何をしている?

ここまでの内容を、 Webサイトへアクセスする場合でまとめてみましょう。

APPLICATION HTTP / HTTPS

ブラウザがWebサーバーへ Webページを要求する。

TRANSPORT TCP

Webサーバーとの通信を制御し、 ポート番号などを使う。

INTERNET IP

宛先IPアドレスを使って Webサーバーまでデータを届ける。

NETWORK INTERFACE Ethernet

LANなどの実際のネットワーク上で データを転送する。

重要なのは、 どれか一つのプロトコルだけで通信しているわけではない ということです。

HTTP・TCP・IP・Ethernetなどが、 それぞれ異なる役割を担当しながら協力することで 通信が成立します。

送信するときは各層の情報が順番に付加される

アプリケーションが作成したデータは、 TCP/IPモデルの各階層を下へ進みながら、 通信に必要な情報が付加されます。

アプリケーション DATA
TCP TCP Header + DATA
IP IP Header + TCP + DATA
Ethernet Ethernet + IP + TCP + DATA

このように、 各階層で必要な情報を付加していく処理を カプセル化と呼びます。

受信側では逆に、 下位層から上位層へ情報を確認・取り外しながら アプリケーションへデータを渡していきます。

今は「箱の中に箱を入れる」イメージでOK

TCPヘッダー、IPヘッダー、Ethernetヘッダーの詳細まで 今すぐ暗記する必要はありません。 各層が自分の役割に必要な情報を付加する、 という考え方を理解しておきましょう。

ここで実際に確認しよう:TCP/IP通信を組み立ててみよう

Webサイトへアクセスするとき、 TCP/IPモデルのどの層で何が使われるのか確認してみましょう。

下の階層をクリックすると、 その階層の役割と代表的な情報が表示されます。

INTERACTIVE LAB

TCP/IP通信スタック

初級
APPLICATION

HTTP / HTTPS

WebブラウザとWebサーバーがWebページなどのデータをやり取りするために利用します。 ユーザーに最も近い通信処理です。

注目する情報 Webの要求・応答

確認問題:TCP/IPの基本を理解できたか確認しよう

最後に3問の確認問題へ挑戦してみましょう。

QUESTION 01

IPの主な役割として最も適切なものはどれですか?

正解:B

IPはインターネット層の中心的なプロトコルで、 IPアドレスを利用してパケットを宛先へ届ける役割を持ちます。

QUESTION 02

TCP/IPモデルでTCPが属する層はどれですか?

正解:C

TCPとUDPはトランスポート層の代表的なプロトコルです。 通信制御やポート番号などを扱います。

QUESTION 03

WebサイトへHTTPSでアクセスする通信を、 上位層から順番に並べたものはどれですか?

正解:A

アプリケーション層のHTTPS、 トランスポート層のTCP、 インターネット層のIP、 ネットワークインターフェース層のEthernet という順に整理できます。

YOUR SCORE 0 / 3

3問に挑戦してみましょう。

TCP/IPを理解したら、実際のLAN内通信へ進もう

TCP/IPモデルによって、 Web通信ではHTTP・TCP・IP・Ethernetなどが 階層ごとに役割を分担していることが分かりました。

ここからは、それぞれの階層をさらに詳しく学んでいきます。

まず注目するのが、 TCP/IPモデルの最下層にあたる ネットワークインターフェース層です。

LAN内でEthernet通信を行うとき、 非常に重要になる情報が MACアドレスです。

現在 TCP/IPモデル 通信全体を理解

まとめ

今回は、TCP/IPとTCP/IPモデルの基本について解説しました。

01

TCP/IPとは、 現在のインターネット通信で広く利用されるプロトコル体系

02

TCP/IPモデルでは通信を 4つの階層に分けて整理する

03

アプリケーション層ではHTTPやDNS、 トランスポート層ではTCP・UDPなどを扱う

04

インターネット層では IPアドレスを使ってデータを宛先へ届ける

05

実際の通信ではHTTP・TCP・IP・Ethernetなど、 複数のプロトコルが協力して通信を実現する

NEXT LESSON

次は「MACアドレスとは?L2通信の基本を学ぶ」を学びましょう

TCP/IPモデルで通信全体の構造を理解したら、 次はLAN内で実際にデータを届けるときに使われる MACアドレスについて学びます。 IPアドレスとの違いや、スイッチがどのようにMACアドレスを利用するのかを理解すると、 LAN内通信の仕組みがより具体的に見えてきます。

次のレッスンへ進む
NETWORK BEGINNER

ネットワーク初級の学習一覧へ戻る

他のレッスンを確認したい場合は、 ネットワーク初級講座の一覧ページへ戻りましょう。

ネットワーク初級講座へ戻る
目次