TCP/IP とインターネット

 インターネットが,TCP/IP と呼ばれるプロトコル(通信規約)の上に成り立っていることは,多くの人が知るところである。ここでは,TCP/IP をはじめとするプロトコルと,その役割を考えてみよう。

OSI の参照モデルと TCP/IP

OSI の 7 層モデル

 通信のきまりを作る際,すべての実装をいっぺんに行うと,誤りが混入しやすくなり,再利用性も低下する。そこで,ISO は通信のきまりを 7 層のモデルで示した。これが OSI の参照モデルである。このモデルは,上位から次のように構成される。

 TCP は,このモデルでは“トランスポート層”,IP は“ネットワーク層”のプロトコルに相当する。

TCP/IP の“歴史的経緯”

 TCP/IP は,OSI の参照モデルとは別に作られた“デファクト スタンダード”である。OSI の参照モデルとの対応は,“たまたまそうなっていた”に過ぎない。

 インターネットでは,トランスポート層より上位のプロトコルの機能は,多くの場合アプリケーション プロトコルの機能に含まれる形で実装されることが多い(上位 3 層が,1 層で実装されることが多い)。

TCP/IP の役割

IP

 IP は,指定された IP アドレスへパケットを届ける処理を行う。ただし,データが確実に着くかどうか,送信順序に従って到着するかは保証されない。TCP/IP では,これらの処理は TCP が担う。

TCP

 TCP は,コネクション指向のプロトコルで,コネクションレスのインターネット通信を,上位層に“コネクション”があるかのように見せる。誤り制御,順序制御,フロー制御を担う。

 インターネットでは,トランスポート層相当のプロトコルとして,UDP と呼ばれるものも存在する。TCP とは異なり,ロスパケットの再送要求は行わない。