ページ)データグラム指向のトランスポート層サービスを実現する、高速・軽量なUDPプロトコルの機能を知る。ブラウザ・サービス前回までは、IPプロトコルやICMPプロトコルについて解説した。今回からは、いよいよTCP/IPプロトコルの核心である、TCPやUDPについてみていく。TCP/IPでは、セッション指向の通信方式とデータグラム指向の通信方式の両方をサポートしているが、まずは単純で理解しやすいプロトコルであるUDPについて解説する。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ヘッダ中には、その上で動作しているアプリケーションを区別するための「ポート番号」が含まれている。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。