ネットワークの超基本! エンジニア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)というメッセージを使って、データが受信できた事実を送信元に教えます。その際に「次に届けてくれるシーケンスは〇番ですね?」という意味の確認応答番号を含めています。
この記事に関連するニュース
-
「暗号化されたコマンド&コントロール」を悪用する攻撃を防御できる、Vectra AIフローエンジンの提供を開始
PR TIMES / 2024年4月22日 12時45分
-
メールの「サブスクリプション登録解除」ボタンはどういう仕組み? - いまさら聞けないiPhoneのなぜ
マイナビニュース / 2024年4月14日 11時15分
-
シャノン限界超え!物理層秘密鍵でセキュアなセマンティック通信を目指す
ASCII.jp / 2024年4月12日 13時30分
-
HTTP/2プロトコルの一部実装に脆弱性、DoS攻撃でシステム停止のリスク
マイナビニュース / 2024年4月8日 9時35分
-
仮想マシンに対応した 100Gbps TCP/UDPオフロードエンジン
PR TIMES / 2024年4月3日 16時40分
ランキング
-
1ジョージア大使、松屋にポーランド風ハンバーグ登場で心配「国際情勢に影響しかねない熾烈な戦いになりそう」
iza(イザ!) / 2024年5月1日 13時55分
-
2パイオニアの車載スマートデバイス「NP1」を試して感じたイイところ、ムムムなところ 音声操作前提のドラレコ&カーナビ
ITmedia Mobile / 2024年5月2日 6時5分
-
3Androidアプリに悪意あるコードを追加して再配布するマルウェアに注意
マイナビニュース / 2024年5月2日 8時31分
-
4パッと見で分からない細かいこだわりも バッファロー開発陣に聞くWi-Fi 7ルーター「WXR18000BE10P」の秘密【後編】
ITmedia PC USER / 2024年5月1日 15時5分
-
5「そっち使うの?!」「これは天才」 さびだらけの鉄くぎをぐつぐつ煮込むと……? DIYに役立つ“まさかの使い道”が200万再生
ねとらぼ / 2024年5月2日 12時15分
複数ページをまたぐ記事です
記事の最終ページでミッション達成してください