検索
連載

第13回 データグラム通信を実現するUDPプロトコル基礎から学ぶWindowsネットワーク(1/4 ページ)

データグラム指向のトランスポート層サービスを実現する、高速・軽量なUDPプロトコルの機能を知る。

Share
Tweet
LINE
Hatena
連載 基礎から学ぶWindowsネットワーク ―― Windowsネットワーク管理者への道 ―― 
Windows Server Insider

 

「連載 基礎から学ぶWindowsネットワーク ―― Windowsネットワーク管理者への道 ―― 」のインデックス

連載目次


 前回までは、IPプロトコルやICMPプロトコルについて解説した。今回からは、いよいよTCP/IPプロトコルの核心である、TCPやUDPについてみていく。TCP/IPでは、セッション指向の通信方式とデータグラム指向の通信方式の両方をサポートしているが、まずは単純で理解しやすいプロトコルであるUDPについて解説する。

 UDP(User Datagram Protocol)とは、TCP/IPにおける、データグラム通信を実現するためのトランスポート層プロトコルである。TCPが、セッション指向で信頼性の高い通信機能を提供しているの対し、UDPでは「信頼性はない」ながらも(「信頼性がない」の意味については後述)、軽量で高速なプロトコルを目指して設計されている。具体的には、下位のネットワーク層であるIPプロトコルをほとんどそのまま利用したプロトコルになっており、その機能も特徴も、IPプロトコルとほぼ同じである。UDPを使うことにより、セッションのセットアップや終了処理などに煩わされることなく、最大64Kbytesまでの任意のサイズのデータを、アプリケーション間でやりとりすることが可能になる。ただし通信が失敗した(パケットが途中で破棄されたり、壊れたりした)場合の検出や、その再送処理などの機能は用意されていないので、必要ならばアプリケーション側でこれらを検出し、対応する必要がある。だがこれらの検出を行わない分、軽量、高速なプロトコルに仕上がっているのがUDPである。


UDPプロトコルを使ったパケットの構造
UDPは、IPプロトコル上に実装された、トランスポート層プロトコルである(プロトコルの階層構造については「連載第12回―TCP/IPプロトコルを支えるICMPメッセージ」を参照)。IPプロトコル(ネットワーク層プロトコル)はネットワーク上に存在する2台のマシン間での通信を担当するのに対し、UDPやTCPというトランスポート層プロトコルは、それぞれのマシン上で動作しているアプリケーション間での通信を担当する。つまりコンピュータ上のアプリケーションは、TCPかUDPを使ってお互いに初めて通信できるようになる。IPヘッダ中にはコンピュータを区別するための「IPアドレス」が含まれているが、UDPヘッダ中には、その上で動作しているアプリケーションを区別するための「ポート番号」が含まれている。


Copyright© Digital Advantage Corp. All Rights Reserved.

       | 次のページへ
ページトップに戻る