通信プロトコル

snack
snack

今こうやって会話できてるのはお互いに共通のルールがあるからなんすね。

ボキタロー
ボキタロー

共通のルール?どういうこと?

snack
snack

お互い日本語が理解できる、またその土台として声が出せる・聞こえる、といったルールっす。

ボキタロー
ボキタロー

たしかに言われてみればそうだね。相手が外国人だと話が通じないし。当たり前過ぎて意識したことなかったよ。

snack
snack

通信も同じことなんすよ。共通のルールが何層にも積み重なって、はじめて安全で安定した通信が可能になるっす。

目標・ネットワークアーキテクチャの構造と特徴を理解する。
・通信プロトコルの必要性を理解する。
・身近で利用されている代表的なプロトコルの役割を理解する。
説明・異なるシステム環境間で通信するためには,通信プロトコルが必要であることを理解する。
・インターネットで使用されている代表的なプロトコルの役割を理解する。
通信プロトコルの概要

代表的なネットワークアーキテクチャ

ネットワークアーキテクチャとは、コンピュータネットワークの構成や設計の全体像を指す言葉で、ネットワーク内でデータがどのように送受信されるか、どのような機器やプロトコル(通信を成立させるためのルール)が使われるかなどを体系的に定めたものです。

ネットワークアーキテクチャは通常、OSI基本参照モデルTCP/IP階層モデルなどの構造に基づいて設計されます。これにより、機能が分割され、管理や開発がしやすくなります。

MEMO

ITパスポート試験では、OSI基本参照モデルやTCP/IP階層モデルの各階層について詳しく聞かれることはないので覚える必要はありません。

OSI基本参照モデル

OSI基本参照モデルとは、コンピュータネットワークにおける通信の機能を7つの階層に分けて体系的に定義したモデルです。OSIは「Open Systems Interconnection(開放型システム間相互接続)」の略で、ISO(国際標準化機構)によって策定されました。

階層名主な役割主な接続機器
7アプリケーション層ユーザーに最も近い層。メール、Web、ファイル転送などのアプリが使う通信機能を提供。ゲートウェイ
6プレゼンテーション層データの表現形式を整える層。文字コードの変換、暗号化・復号、圧縮など。
5セッション層通信の開始・維持・終了などの制御を行う。セッション管理。
4トランスポート層信頼性のある通信を提供。データの分割・再構築、エラー検出など。
3ネットワーク層通信経路(ルーティング)を決定。IPアドレスを使って宛先を特定。ルータ
2データリンク層同じネットワーク内での通信を制御。MACアドレスによる識別、エラーチェックなど。スイッチングハブ、ブリッジ
1物理層実際の通信媒体(ケーブル、電波など)で電気信号や光信号を使ってビットを送受信。リピータハブ、リピータ

ネットワーク通信を「荷物の配達」に例えると、

  • アプリケーション層〜セッション層(7〜5):荷物の中身や届け方の指定(何を、どう届けるか)
  • トランスポート層(4):荷物の梱包と配達保証(壊れないように、ちゃんと届くように)
  • ネットワーク層(3):配送ルートの選定(どの経路で送るか)
  • データリンク層〜物理層(2〜1):実際の配送作業(住所を書いてトラックで運ぶ)

TCP/IP階層モデル

TCP/IP階層モデルとは、インターネットなどのネットワーク通信で実際に使われている通信プロトコルの体系(アーキテクチャ)を、機能ごとに4つの階層に分けて定義したモデルです。

TCPとIPという主要なプロトコルにちなんで「TCP/IP階層モデル」と呼ばれています。

MEMO

OSIモデルはあくまで「理論モデル」であり、現実のインターネットはTCP/IP階層モデルを基にしています。

TCP/IP層名主なプロトコル対応するOSI層
4アプリケーション層HTTP、HTTPS、FTP7アプリケーション層
SMTP、POP、IMAP6プレゼンテーション層
DHCP、DNS、NTP5セッション層
3トランスポート層TCP、UDP4トランスポート層
2インターネット層IP、ARP3ネットワーク層
1ネットワークインターフェース層PPP、PPPoE2データリンク層
1物理層

各層の役割のイメージは、

  • アプリケーション層:Webブラウザやメールソフトなどが使う通信機能
  • トランスポート層:データの信頼性確保(順序・エラー・再送)
  • インターネット層:IPアドレスに基づいた経路選択(ルーティング)
  • ネットワークインターフェース層:LANケーブル、Wi-Fiで実際にビットを送受信

主な通信プロトコル

通信プロトコルとは、コンピュータやネットワーク機器同士がデータを正しくやり取りするための「共通のルール(規約)」で、メーカーやOSが異なる機器同士でも、同じ通信プロトコルを使えば互いに通信することができます。

snack
snack

人間同士が言語を使って意思疎通するように、コンピュータ同士も決まったプロトコルに従って通信する必要があるっすよ。

IP

IP(Internet Protocol)は、インターネットなどのネットワークでデータを送受信するための通信プロトコルのひとつです。IPは、データをIPアドレスやポート番号を付加したパケットと呼ばれる小さな単位に分割し、宛先のIPアドレスに従ってそれらのパケットを送信先へ届ける役割を担います。

snack
snack

大きなデータを一度に送信するよりも、小さく分けて送信したほうが安定的・効率的に送信することができるっすよ。

ポート番号

ポート番号とは、コンピュータのネットワーク通信において、アプリケーション(サービス)を識別するための番号です。IPアドレスがコンピュータ(機器)自体を識別する番号であるのに対して、ポート番号はそのコンピュータ内の「どのアプリ・サービス」に通信するかを示す番号です。

IP単体では通信の信頼性は保証しないため、通常はTCP(TCP/IP)やUDP(UDP/IP)と組み合わせて使います。

TCP、UDP

TCP(Transmission Control Protocol)とUDP(User Datagram Protocol)は、どちらもIPと組み合わせて使われるトランスポート層の通信プロトコルです。どちらも目的はアプリケーション間でデータを送受信することですが、信頼性・速度・用途などが異なります。

TCPはエラーチェック機能などでデータの正確性を保証し、UDPは通信の事前準備なしにデータを送れるため軽量・高速です。

snack
snack

信頼性重視のTCP、速度重視のUDPって感じっすね。

DHCP

DHCP(Dynamic Host Configuration Protocol)は、コンピュータやスマートフォンなどの機器が、ネットワークに自動で接続するための情報(IPアドレスなど)を取得するプロトコルです。手動で設定する手間を省き、IPアドレスの重複も防げます。

DHCPサーバーがネットワークに接続される機器(パソコン、スマホ、プリンターなど)に自動的にIPアドレスなどのネットワーク設定を割り当てます。

DNS

DNS(Domain Name System)は、インターネット上で使われる「名前とIPアドレスを結びつける仕組み」です。これについては次回で詳しく学習します。

NTP

NTP(Network Time Protocol)は、インターネットやネットワーク上で正確な時刻をコンピュータ同士で同期させるための通信プロトコルです。インターネット上のNTPサーバから正確な時間情報を取得し、PCやサーバの時刻を調整します。

snack
snack

NTPの「T」は、Timeの「T」と覚えておくっすよ。

SMTP、POP、IMAP

SMTP、POP、IMAPは、電子メールの送受信に使われる通信プロトコルです。それぞれがメールの「どの役割」を担っているかによって使い分けられます。

SMTP(Simple Mail Transfer Protocol)

ユーザーがメールを送信するために使うプロトコルで、メールサーバ間のメール転送にも使用されます。

POPポップ(Post Office Protocol)

電子メールの受信に利用される通信プロトコルです。メールをサーバからパソコン・スマホにダウンロードして保存する方式なので、一度ダウンロードすればオフラインでも閲覧可能ですが、他の端末とは同期されません(別端末で見られない)。

MEMO

現在、最も広く使われているバージョンはPOP3(Post Office Protocol version 3)です。

IMAPアイマップ(Internet Message Access Protocol)

POPと同様、電子メールの受信に利用される通信プロトコルですが、POPと異なり、IMAPはメールをサーバ上で閲覧・管理する方式です。オンラインでの使用が前提ですが、複数の端末で同期して使えます。

snack
snack

POPはサーバーから手元にダウンロードして見る、IMAPはこちらがサーバーに見に行くって感じっす。

さらっと学習【その他の主な通信プロトコル】

PPP、PPPoE

PPP(Point-to-Point Protocol)と PPPoE(Point-to-Point Protocol over Ethernet)は、どちらも主にインターネット接続に使われる通信プロトコルです。とくに、家庭やオフィスのブロードバンド接続(ADSL、光回線など)において利用されてきましたが、近年ではより高速で安定しているIPoE(IPv6 + DHCPv6-PD)に移行しつつあります。

FTP

FTPFile Transfer Protocol)は、ネットワーク越しにファイルを送受信するための通信プロトコルです。Webサーバへのファイルのアップロードや、大容量データのダウンロードなどによく使われます。

HTTP、HTTPS

HTTP(HyperText Transfer Protocol)とHTTPS(HTTP Secure)は、Webページなどの情報をやり取りするための通信プロトコルです。インターネットでWebサイトを表示する際、ほぼ必ず使われています。

HTTPは、WebブラウザとWebサーバ間でデータを送受信するための通信ルールで、HTML、画像、動画などのコンテンツをリクエスト・受信します。ただし、通信が暗号化されていないため、パスワードや個人情報などが盗聴・改ざんされるリスクがあります。

HTTPSは、HTTPに暗号化を追加して安全な通信方式にしたものです。通信速度は暗号化の分だけ、HTTPよりもやや劣ります。

従来は通信速度の関係で、個人情報保護の必要性が強いWebサイトにだけHTTPSが使われていましたが、近年では技術の進歩などによって通信速度にほぼ差はなくなったため、通常のサイトでもHTTPSが使われています。

ボキタロー
ボキタロー

もちろん、いぬぼきもHTTPSだよ。個人情報保護はばっちり!

確認○×問題

問1

トランスポート層のプロトコルであり、信頼性よりもリアルタイム性が重視される場合に用いられるものはTCPである。

答え:×

設問の文章はUDPの説明となります。

TCP(Transmission Control Protocol)とUDP(User Datagram Protocol)は、どちらもIPと組み合わせて使われるトランスポート層の通信プロトコルです。どちらも目的はアプリケーション間でデータを送受信することですが、信頼性・速度・用途などが異なります。

信頼性重視のTCP、速度重視のUDPと覚えてください。

問2

PCがネットワークに接続されたときにIPアドレスを自動的に取得するために使用されるプロトコルはDHCPである。

答え:〇

記述の通りです。

DHCP(Dynamic Host Configuration Protocol)は、コンピュータやスマートフォンなどの機器が、ネットワークに自動で接続するための情報(IPアドレスなど)を取得するプロトコルです。手動で設定する手間を省き、IPアドレスの重複も防げます。

問3

NTPの利用によって実現できることは、PCやサーバなどの時刻合わせである。

答え:〇

記述の通りです。NTP(Network Time Protocol)は、インターネットやネットワーク上で正確な時刻をコンピュータ同士で同期させるための通信プロトコルです。インターネット上のNTPサーバから正確な時間情報を取得し、PCやサーバの時刻を調整します。

問4

メールサーバから電子メールを受信するためのプロトコルの一つであり、次の特徴をもつものはPOPである。

① メール情報をPC内のメールボックスに取り込んで管理する必要がなく、メールサーバ上に複数のフォルダで構成されたメールボックスを作成してメール情報を管理できる。

② PCやスマートフォンなど使用する端末が違っても、同一のメールボックスのメール情報を参照、管理できる。

答え:×

正しくは、IMAPです。IMAP(Internet Message Access Protocol)は電子メールの受信に利用される通信プロトコルですが、メールをサーバからダウンロードして保存するPOPと異なり、IMAPはメールをサーバ上で閲覧・管理する方式です。オンラインでの使用が前提ですが、複数の端末で同期して使えます。

問5

PC1のメールクライアントからPC2のメールクライアントの利用者宛ての電子メールを送信するとき、①~③で使われているプロトコルの適切な組合せは、①SMTP、②SMTP、③POP3、である。

答え:〇

記述の通りです。

SMTP(Simple Mail Transfer Protocol)は、ユーザーがメールを送信するために使うプロトコルで、メールサーバ間のメール転送にも使用されます。

また、POP3(Post Office Protocol version 3)は電子メールの受信に利用される通信プロトコル(ダウンロード方式)です。

問6

TCP/IPネットワークで用いられるプロトコルであるFTPは、ファイルをPC間で転送する役割を持つ。

答え:〇

記述の通りです。FTP(File Transfer Protocol)は、ネットワーク越しにファイルを送受信するための通信プロトコルです。Webサーバへのファイルのアップロードや、大容量データのダウンロードなどによく使われます。

問7

TCP/IPにおけるポート番号によって識別されるものは、コンピュータ上で動作している通信アプリケーションである。

答え:〇

記述の通りです。ポート番号とは、コンピュータのネットワーク通信において、アプリケーション(サービス)を識別するための番号です。IPアドレスがコンピュータ(機器)自体を識別する番号であるのに対して、ポート番号はそのコンピュータ内の「どのアプリ・サービス」に通信するかを示す番号です。