🏮

インターフェースとしてのIP(ネットワーク層)

2022/09/06に公開

この記事ではIPの役割についてまとめます。IPはOSI参照モデルにおけるL3:ネットワーク層で機能するプロトコルです。(TCP/IPではL2に相当)

インターフェース(=異なるモノ同士をつなぐ接点・境界面)としてのIP..という切り口から整理してみたいと思います。

インターフェースとしてのIP

IPはTCP/IPモデルの中間に位置しており、異なる種類のデータ・伝送路を統一的に扱うための機能を持ちます。L4,5において扱うデータの種類が違っていても同じようにIPパケットに詰め込んで扱うことができますし、またL2において伝送路で使われる技術が違っていても中身であるIPパケットは変わらず伝送することができます。

(1)異なる種類のデータをIPパケットに詰める
(2)異なる種類の伝送路上でIPパケットを中継する

IPと聞くとIPアドレスが真っ先に思い浮かびますが、それは(2)の役割です。この記事ではまず(1)の役割から役割を整理していきます。

(1)異なる種類のデータをIPパケットに詰める

ネットワーク上で通信する際、データは細切れにして送信されます。データを細切れにする役割を担っているのがIPであり、細切れにされたデータはIPパケットへと格納されます。どんな種類のデータでも扱える..という点からIPの特徴を考えてみます。

インターネット通信で扱うデータには無数の種類が

コンピュータが取り扱うデータには色々な種類があります。Web,電子メール,ファイル転送,IP電話,ストリーミング..など、アプリケーション層では目的によって様々な種類のプロトコルが存在します。またそれらのデータを送る方法についてもトランスポート層では大きく2種類の方法が定義されています。こう考えてみると、扱うデータや送信方法などによってインターネット通信で扱うデータには無数の種類があります。

データは全てIPパケットに詰め込まれる

先ほど挙げた異なる種類のデータは全てIPパケットに詰め込まれることになります。こうすることでデータの種類を問わず、共通の方法でデータを運ぶことができます。

データを小分けにして送信

パケット交換方式の通信では、データをそのままの状態で送信するのでなく、小分けにして送信されます。IPでデータを小分けにする処理のことをIPフラグメンテーションと呼びます。

そもそもパケットは「小包」という意味を持ちます。細切れにされたデータを入れるための箱がIPだとしたら、アプリケーションのデータはその中に詰める荷物のようなモノです。

L3で使われるプロトコルはIP一択

ここで注目して頂きたいのが、L3で使われるプロトコルはIP一択である点です。先ほど見たように、アプリケーションに関するプロトコルにはWeb,電子メール,ファイル転送など様々なモノがあります。これから見ていくネットワークの伝送技術についても有線LAN、無線LAN、電話回線..など色々な種類があります。しかしネットワーク層で使われるプロトコルはIPがほとんどです。

インターフェースとしてIPを見ると、下位層の伝送技術の違いを吸収し、上位層のアプリケーションに共通したデータ転送の手段を提供していることに気づきます。IPのお陰で様々な伝送技術を使って、色々なアプリケーションでの通信を実現できます。IPは実際場所やアプリケーションを問わずどこでも使われており、プロトコルの万能選手とも言えます。

(2)異なる種類の伝送路上でIPパケットを中継する

次はL3:ネットワーク層より下の部分に注目してみます。L2:データリンク層では色々な伝送技術のプロトコルが定義されています。イーサネット,無線LAN,電話回線,SDH/SONETなど、ここでも色々な種類の伝送方法があります。

異なる種類の伝送路上を運ばれていく

地球の裏側へとデータを送信した際、色々な種類の伝送路上を運ばれていきます。言い換えれば異なる種類のL2プロトコルが使われながらデータは運ばれていきます。

例えば個人宅のLANではイーサネットや無線LANのプロトコルが使われています。それがプロバイダに入ると光ファイバによる高速伝送技術が使われています。データリンク層はデータを運ぶ役割を担っているのですが、そこで使われる伝送技術にも色々な種類があります。

ルーターが伝送技術の違いを吸収

ルーターはこれら異なった伝送技術を使うネットワークを相互接続し、IPパケットを変わらず運ぶことを可能にします。伝送技術が変わったとしても、そこで運ばれる荷物としてのIPパケットは同じように運ぶことができます。

上位層・下位層で使われる技術の違いを吸収する点から、まさにIPはインターフェースとしての役割を果たしていると言えるのではないでしょうか。

Discussion