1. トップ
  2. 新着ニュース
  3. IT
  4. IT総合

ネットワークの超基本! エンジニア1年目の教科書 第14回 トランスポート層プロトコル「TCP」と「UDP」

マイナビニュース / 2024年4月3日 7時0分

画像提供:マイナビニュース

前回はOSI参照モデルの第4層にあたる「トランスポート層」について、(1)データをやりとりするアプリケーション(ソフトウェア)をポート番号という値で識別する仕組みと、(2)下位層が処理できる適切なデータの容量に合わせてデータを分割するセグメンテーションという仕組みについて紹介しました。

今回は、TCP/IPの仕組みでトランスポート層のプロトコルとして定義されている「TCP」と「UDP」についてそれぞれの特徴を紹介します。
2種類のプロトコル

トランスポート層には、「通信対象となるアプリケーションの識別」「適切な容量へのデータ分割」という2つの役割がありました。TCP/IPのトランスポート層では、この機能を果たすプロトコルとして、TCP(Transmission Control Protocol)およびUDP(User Datagram Protocol)の2種類を定義しています。TCPは「コネクション型通信」を使って、UDPは「コネクションレス型通信」を使って動作するプロトコルです。

まずは、それぞれのプロトコルが使う「コネクション通信」および「コネクションレス型通信」とはどういうものかについて考えてみましょう。

コネクション型通信は、宛先の協力によって「正しく届いている」状況を送信元と共有しながら動作するという特徴を持つ方式です。次の3つの動作を行っています。

・送信元と宛先が「互いに協力し合う」という合意(コネクション)を確立
・実際のデータ転送を行う
・データ転送が終わった段階でコネクションを解消する

コネクションレス型通信は、宛先との合意(コネクション)を持たず、送信元から一方的にデータ転送を行うことで、高速でシンプルな動作をするという特徴を持つ方式です。

両者の使い分けは、トランスポート層にデータ転送を依頼するアプリケーションが通信の信頼性をどのように確保したいかという考え方の違いによって決められます。

TCPがコネクション型通信を実現するための仕組み

TCPはコネクション型通信を実現するためのプロトコルです。「正しく通信できている」ことを保証するための仕組みをいくつか紹介します。
○(1)通信の状況を番号で管理する

TCPは、データ分割(セグメンテーション)機能によって分割された一つひとつに対して順番を表す「シーケンス番号」を付け、この番号に従って送信を行います。宛先は確認応答(Acknowledge)というメッセージを使って、データが受信できた事実を送信元に教えます。その際に「次に届けてくれるシーケンスは〇番ですね?」という意味の確認応答番号を含めています。

この記事に関連するニュース

トピックスRSS

ランキング

複数ページをまたぐ記事です

記事の最終ページでミッション達成してください