この記事のポイント
- TCP/IPの階層とデータの呼び方の対応
- アプリケーション層:メッセージ
- トランスポート層:セグメントまたはデータグラム
- インターネット層:パケットまたはデータグラム
- ネットワークインタフェース層:フレーム
- 階層とデータの呼び方は厳密に使い分けられているわけではない
データの呼び方にはいろいろある
メッセージ、セグメント、パケット、フレーム
アプリケーションのデータには、さまざまなプロトコルのヘッダが付加されてネットワーク上に送り出されることになります。ネットワークアーキテクチャの階層に注目して、次のようにデータの呼び方が使い分けられます。
階層ごとのデータの呼び方
- アプリケーション層: メッセージ
- トランスポート層:セグメントまたはデータグラム(※2)
- インターネット層:パケットまたはデータグラム(※3)
- ネットワークインタフェース層: フレーム
(※2)トランスポート層では、TCPを利用しているときにセグメント、UDPを利用しているときにデータグラムと呼びます。
(※3)インターネット層では、IPパケットまたはIPデータグラムと呼びます。
データの呼び方の例
Webブラウザの通信の場合、WebブラウザのデータにHTTPヘッダを付加してHTTPメッセージとなります。そして、HTTPメッセージにTCPヘッダを付加するとTCPセグメントです。TCPセグメントにIPヘッダを付加すると、IPパケットです。IPデータグラムと呼ぶこともあります。IPパケットにイーサネットヘッダとFCSを付加すると、イーサネットフレームと呼びます。
呼び方の違いがあることで、ネットワークの通信を考えるときにどの階層に注目しているかが明確になります。例えば、ルータはインターネット層レベルのネットワーク機器で、ルータはIPパケットを適切に転送するという機能を果たすネットワーク機器です。ルータの機能を考えるにはインターネット層に注目することがポイントです。また、レイヤ2スイッチはネットワークインタフェース層で動作するネットワーク機器です。レイヤ2スイッチはイーサネットフレームを転送する機能を果たします。つまり、レイヤ2スイッチを理解するにはネットワークインタフェース層に注目することがポイントです。
データを送り届ける
次の項目のポイント
- IPによってあるPCから別のPCまでデータを送り届けるエンドツーエンドの通信を行う
- 送り届けたいデータにIPヘッダを付加してIPパケットにする
- 宛先が異なるネットワーク上のときは経路上のルータがIPパケットをルーティングする
IP、IPパケット、ルーティング
IPとは?
IP(Internet Protocol)はTCP/IPの名前に含まれているように、TCP/IPのさまざまなプロトコルの中でもとても重要なプロトコルです。まずは、IPの役割を明確にしておきましょう。
IPの役割は、「エンドツーエンドの通信を行う」ことです。
つまり、ネットワーク上のあるPCから別のPCなどヘデータを転送するのがIPの役割です。送信元と宛先は、同じネットワーク上でも異なるネットワークでもどちらでもかまいません。
送りたいデータをIPパケットにする
IPでデータを転送するためには、データのIPヘッダを付加して、IPパケットとします。IPヘッダにはいろんな情報が含まれていますが、最も大切なのがIPアドレスです。IPアドレスによって、データの送信元と宛先をあらわしているからです。
なお、IPで転送するデータとは、アプリケーションのデータにアプリケーション層プロトコルのヘッダとトランスポート層プロトコルのヘッダが付加されているものです。そして、IPパケットにはさらにネットワークイーンタフェース層のプロトコルのヘッダが付加されてネットワーク上に送り出されます。
宛先が異なるネットワークに接続している場合は、間にルータが存在します。送信元ホストから送信されたIPパケットは、経路上のルータが転送して最終的な宛先ホストまで送り届けられます。ルータがIPパケットを転送することを指してルーティングと呼びます。
通信相手は誰?
次の項目のポイント
- IPアドレスでTCP/IPを使って通信する相手を特定する
- TCP/IPの通信では必ずIPアドレスを指定しなければいけない
- IPアドレスの表記は、8ビットずつ4つの0~255の10進数に変換して「.」で区切る
IPアドレスとは?
IPアドレスの概要
IPアドレスとは、TCP/IPにおいて通信相手となるホストを識別するための識別情報です。TCP/IPの通信を行うときのデータには、IPヘッダを付加してIPパケットとします。IPヘッダには、宛先IPアドレスと送信元IPアドレスを指定しなければいけません。TCP/IPの通信では、IPアドレスを必ず指定しなければいけないということは、ネットワーク技術を理解するうえでとても重要なポイントです。
インタフェースにIPアドレスを設定する
IPアドレスは、イーサネットなどのインタフェースに関連づけて設定します。IPのプロトコルはホストのOSで動作しています。そして、ホスト内部でインタフェースとIPのプロトコル部分を関連づけて、IPアドレスを設定していることになります。
PCなどには複数のインタフェースを搭載することもできます。例えば、ノートPCには有線のイーサネットインタフェースと無線LANのインタフェースが搭載されていることが多く、インタフェースごとにIPアドレスを設定することができます。そのため、IPアドレスはホストそのものではなく、正確には、ホストのインタフェースを識別します。
IPアドレスの表記
IPアドレスは32ビットなので、「0」と「1」が32個並びます。そのような羅列は人にはわかりづらいので、8ビットずつ10進数に変換して「.」で区切る表記をします。8ビットの10進数は0~255なので、0~255の数字を「.」で区切って4つ並べたものが一般的なIPアドレスです。256以上の数値が含まれるようなIPアドレスは間違ったIPアドレスです。なお、このような表記はドットつき10進数表記と呼びます。