blog

TCP/IPとは何か?-TCP/IPの4層プロトコルモデルを説明する4つの図

レイヤ1:アプリケーション層。主に、ウェブブラウザ用のHTTPプロトコル、ファイル転送用のFTPプロトコル、電子メール用のSMTPプロトコル、ドメイン名システム用のDNSなどが含まれます。 レイヤ2:...

May 15, 2020 · 3 min. read
シェア

TCP/IP4層プロトコルモデル

4層ネットワークモデル

4層モデルとは

レイヤー1:アプリケーション・レイヤーで、主にウェブ・ブラウザーのHTTPプロトコル、ファイル転送のFTPプロトコル、電子メールのSMTPプロトコル、ドメイン名システムのDNSを担当します。

レイヤ2:トランスポート層で、主に信頼性の高い伝送のためのTCPプロトコルと、特に効率の高いUDPプロトコルを備えています。主にアプリケーション層からのパケットを伝送します。

レイヤー3:主にIPプロトコルを使用するネットワーク層。主にアドレス指定を担当

レイヤ4:主にデジタル信号を物理的なバイナリ信号に変換するデータリンク層。

なぜ4層モデルなのか

4レイヤーモデルは、アプリケーションレイヤー固有のデータを対応するデバイスに送信することを可能にします。

index.htmlを送信する必要があります。

どちらのコンピューターもアプリケーション層でHTTPプロトコルを使用しています。

トランスポート層では、TCPプロトコルはHTTPプロトコルによって送信されたデータを1つのパケットとして扱い、このパケットの先頭にTCPパケット情報の一部を付加します。

ネットワーク層では、IPプロトコルはTCPプロトコルによって送信されるデータをパケットとして扱い、このパケットに再びIPプロトコルのプレフィックスを付けます。

データリンクレイヤーでは、対応するプロトコルがIPパケットの先頭にイーサネットプレフィックスを追加します。

ソースデバイスとターゲットデバイスをネットワークケーブルで接続することにより、バイナリの物理層を介してデータを転送することができます。

データリンク層は、対応するプロトコルを使用して、物理層のバイナリデータを見つけ、それをデコードしてイーサネットヘッダ情報と対応するIPパケットを取得し、IPパケットを上位ネットワーク層に渡します。

データリンクレイヤ>ネットワークレイヤ>トランスポートレイヤ>アプリケーションレイヤの順に、1レイヤずつデコードしていき、最終的にターゲットデバイスから送信されたindex.htmlをブラウザで取得することができます。

TCP/IP

文字通り、TCP/IPはトランスポート層のTCPプロトコルとネットワーク層のIPプロトコルを指します。実際には、TCP/IPはIPを使用して通信するために使用しなければならないプロトコル群の総称に過ぎません。つまり、これらはすべてIPプロトコルをベースにしているため、最もよく使われるTCPとIPプロトコルを取り出してグループ化し、プロトコルファミリー全体を表しています。

具体的には、ネットワーク層にはIP/ICMPプロトコル、トランスポート層にはTCP/UDPプロトコル、アプリケーション層にはSMTP、FTP、HTTPがあります。これらはすべてTCP/IPプロトコルに属します。

TCPやIPと密接に関連しており、インターネットの実現に不可欠な要素です。

そのため、TCP/IPという用語は実際にはこれらのプロトコル全般を指し、TCP/IPはインターネット・プロトコル・グループとも呼ばれています。インターネットが通信する際には、それに対応するネットワークプロトコルが必要であり、TCP/IPはもともとインターネット用に開発されたプロトコル群です。したがって、インターネットのプロトコルはTCP/IPであり、TCP/IPはインターネットのプロトコルです。

まとめ

  1. TCP/IPは4層のネットワークモデルを定義しています。

    • アプリケーション層:ブラウザのHTTPプロトコルや電子メールのSTMPプロトコルなど、さまざまなアプリケーション間のプロトコルを担当。
    • トランスポート層:信頼性の高い伝送のためのTCPプロトコル効率的な伝送のためのUDPプロトコル
    • ネットワーク層:アドレス指定用IPプロトコル
    • データリンク層:物理チャネル上でのデジタル信号の正確な伝送を担当
  2. TCP/IPは、TCPとIPプロトコルだけでなく、インターネットのために開発・策定されたプロトコル・ファミリーを指します。

  3. レイヤー4ネットワークプロトコルの役割

    • 送信側はトップダウンで、上位レイヤーからデータを受け取り、各レイヤーのプロトコルのデータをヘッダーに追加してから下位レイヤーに送信します。

    • 一方、受信側は、下位レイヤーから受信したデータを上位レイヤーに送信する前に復号化し、デヘッディングします。

    • 何重にも暗号化と復号化を繰り返した後、アプリケーション層は最終的に必要なデータを取得します。

- 終了
Read next

ArrayListと拡張メカニズムの紹介

ArrayListは、動的な配列は、実際には、要素を追加し、削除の動的な方法を提供する配列の複雑なバージョンです。 ArrayListの基礎となる配列の実装では、ランダムアクセスモードに加えて、インターフェイスを実装しています...

May 15, 2020 · 6 min read