Real-time Transport Protocol
![]() |
TCP/IP群 |
---|
アプリケーション層 |
|
トランスポート層 |
カテゴリ |
インターネット層 |
カテゴリ |
リンク層 |
カテゴリ |
Real-time Transport Protocol(リアルタイム トランスポート プロトコル、RTP)は、音声や動画などのデータストリームをリアルタイムに配送するためのデータ通信プロトコルである。
概要[編集]
RTSPやH.323の通信プロトコルのデータ部分に使用される。 ほぼ全てのVoIP関連製品は、RTPを利用して、音声情報をIPネットワーク上へ送出している。 これは、リアルタイムストリームを運ぶためのプロトコルとしてIETFおよびITUによって標準化されている。
RTPは、UDP (User Datagram Protocol) の通信プロトコルである。TCP (Transmission Control Protocol) と違って、UDPのヘッダーには「シーケンス(順序)番号」の項目が存在しないため順序の組み立てができない。しかし、RTPパケットを受信したホストは、RTPパケット内のヘッダーにある情報のうち、時刻情報(タイムスタンプ)から各パケットの時間的な順序関係を把握し、データを再生することができる。
RTPパケットも他のパケットと同様に、ネットワークを経由して転送されていく中で、喪失や、配送の遅れが起こる。しかし、映像や音声のデータ(ストリーミングメディアデータ)は、データの一部が多少欠けていても再生が可能であるため、データの受信側では、喪失や、配送の遅れたパケットは無視し、受信側が期待する時間に到着したパケットだけを利用してデータを再生することができる。
インターネット・プロトコル・スイートの中でRTPを利用する場合は、RTPはUDPをトランスポート層のプロトコルとして利用するが、トランスポート層のプロトコルにUDP以外の通信プロトコルを用いることができるようにも設計されている。
RTPは単独で利用されることはなく、RTCP (RTP Control Protocol) のような制御プロトコルと組み合わせて利用される[1]。RTPとRTCPはともにRFC 3550にて標準化されている。
パケットヘッダー[編集]
Bit offset | 0-1 | 2 | 3 | 4-7 | 8 | 9-15 | 16-31 | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | バージョン | P | X | CC | M | PT | 順序番号 | |||||||||||||||||||||||||
32 | タイムスタンプ | |||||||||||||||||||||||||||||||
64 | SSRC識別子 | |||||||||||||||||||||||||||||||
96 | CSRC識別子 ... | |||||||||||||||||||||||||||||||
96+32×CC | プロファイル固有の拡張ヘッダーID | 拡張ヘッダー長 | ||||||||||||||||||||||||||||||
128+32×CC | 拡張ヘッダー ... |
RTPヘッダーは、12バイトが最小サイズである。 ヘッダーの後ろのオプションの拡張ヘッダーは存在してもよい。[2]
出典・脚注[編集]
関連項目[編集]
- RTP Control Protocol (RTCP)
- MGCP
- 遠隔会議