RFC 1889 (rfc1889) - Page 3 of 75
RTP: A Transport Protocol for Real-Time Applications
Alternative Format: Original Text Document
RFC 1889 RTP January 1996
A.8 Estimating the Interarrival Jitter .................. 71
B. Security Considerations ............................. 72
C. Addresses of Authors ................................ 72
D. Bibliography ........................................ 73
1. Introduction
This memorandum specifies the real-time transport protocol (RTP),
which provides end-to-end delivery services for data with real-time
characteristics, such as interactive audio and video. Those services
include payload type identification, sequence numbering, timestamping
and delivery monitoring. Applications typically run RTP on top of UDP
to make use of its multiplexing and checksum services; both protocols
contribute parts of the transport protocol functionality. However,
RTP may be used with other suitable underlying network or transport
protocols (see Section 10). RTP supports data transfer to multiple
destinations using multicast distribution if provided by the
underlying network.
Note that RTP itself does not provide any mechanism to ensure timely
delivery or provide other quality-of-service guarantees, but relies
on lower-layer services to do so. It does not guarantee delivery or
prevent out-of-order delivery, nor does it assume that the underlying
network is reliable and delivers packets in sequence. The sequence
numbers included in RTP allow the receiver to reconstruct the
sender's packet sequence, but sequence numbers might also be used to
determine the proper location of a packet, for example in video
decoding, without necessarily decoding packets in sequence.
While RTP is primarily designed to satisfy the needs of multi-
participant multimedia conferences, it is not limited to that
particular application. Storage of continuous data, interactive
distributed simulation, active badge, and control and measurement
applications may also find RTP applicable.
This document defines RTP, consisting of two closely-linked parts:
o the real-time transport protocol (RTP), to carry data that has
real-time properties.
o the RTP control protocol (RTCP), to monitor the quality of
service and to convey information about the participants in an
on-going session. The latter aspect of RTCP may be sufficient
for "loosely controlled" sessions, i.e., where there is no
explicit membership control and set-up, but it is not
necessarily intended to support all of an application's control
communication requirements. This functionality may be fully or
partially subsumed by a separate session control protocol,
Schulzrinne, et al Standards Track