alih stasiun patukan
real-time transport protocol (rtp) didefinisikan sebagai standarisasi paket untuk mengirimkan audio dan video pada jaringan ip.daniel hardy (2002).
de boeck universit.
rtp digunakan untuk komunikasi dan sistem entertain yang termasuk didalamnya streaming media seperti telepony, aplikasi video teleconfrence dan web yang memiliki fitur berbasis push-to-talk.
rtp digunakan sebagai penghubung dengan rtp control protocol (rtcp).
ketika rtp membawa media stream (cth : audio dan video), rtcp berfungsi untuk memonitor statistik dari transmisi dan quality of service (qos) dan membantu sinkronisasi multiple stream- ketika kedua protokol digunakan dalam conjunction, ftp dihasilkan dan diterima pada nomor port genap dan komunikasi rtcp yang menghubungkannya memggunakan nomor port ganjil yang lebih tinggi.
protokol rtp ini adalah salah satu pondasi penting untuk komunikasi voice over ip (voip) dan pada konteks ini biasa digunakan pada hubungan dengan protokol signaling yang membantu untuk pengaturan koneksi diseluruh jaringan.
rtp dikembangkan oleh audio video transport working group dari internet engineering task force (ietf) dan pertama dipublish di tahun 1996 dikenal dengan rfc 1889, lalu digantikan dengan rfc 3550 di tahun 2003.
rtp digunakan sebagai penghubung dengan protokol iainnya seperti h323 dan rtsp.
pada dasamya, rtp didefinisikan sebagai pasangan protocol, rtp dan rtcp- rtp digunakan untuk media transfer data multimedia dan rtcp digunakan secara periodik untuk mengirimkan informasi kontrol dan juga parameter qos.<ref name=rfc3550>rfc 3550</ref></ref>
packet header rtp
rtp packet headerbits are ordered most significant to least significant; bit offset 0 is the most significant bit of the first octet.
octets are transmitted in network order
profile-specific extension header id
extension header length
the rtp header has a minimum size of 12 bytes.
after the header, optional header extensions may be present.
this is followed by the rtp payload, the format of which is determined by the particular class of application.
the fields in the header are as follows:
version: (2 bits) indicates the version of the protocol.
current version is 2.
p (padding): (1 bit) used to indicate if there are extra padding bytes at the end of the rtp packet.
a padding might be used to fill up a block of certain size, for example as required by an encryption algorithm.
the last byte of the padding contains the number of padding bytes that were added (including itself).
x (extension): (1 bit) indicates presence of an extension header between standard header and payload data.
this is application or profile specific.
cc (csrc count): (4 bits) contains the number of csrc identifiers (defined below) that follow the fixed header.
m (marker): (1 bit) used at the application level and defined by a profile.
if it is set, it means that the current data has some special relevance for the application.
pt (payload type): (7 bits) indicates the format of the payload and determines its interpretation by the application.
this is specified by an rtp profile.
for example, see rtp profile for audio and video conferences with minimal control (rfc 3551).
sequence number: (16 bits) the sequence number is incremented by one for each rtp data packet sent and is to be used by the receiver to detect packet loss and to restore packet sequence.
the rtp does not specify any action on packet loss; it is left to the application to take appropriate action.
for example, video applications may play the last known frame in place of the missing frame.peterson, p. 432 according to rfc 3550, the initial value of the sequence number should be random to make known-plaintext attacks on encryption more difficult.
timestamp: (32 bits) used to enable the receiver to play back the received samples at appropriate intervals.
when several media streams are present, the timestamps are independent in each stream, and may not be relied upon for media synchronization.
the granularity of the timing is application specific.
for example, an audio application that samples data once every 125 s (8 khz, a common sample rate in digital telephony) would use that value as its clock resolution.
the clock granularity is one of the details that is specified in the rtp profile for an application.
ssrc: (32 bits) synchronization source identifier uniquely identifies the source of a stream.
the synchronization sources within the same rtp session will be unique.
csrc: (32 bits each) contributing source ids enumerate contributing sources to a stream which has been generated from multiple sources.
header extension: (optional) the first 32-bit word contains a profile-specific identifier (16 bits) and a length specifier (16 bits) that indicates the length of the extension (ehl=extension header length) in 32-bit units, excluding the 32 bits of the extension header.
aplikasi multimedia real-time streaming memerlukan pengiriman informasi secara tepat waktu
dan dapat mentolerir hilangnya beberapa paket (packet loss) untuk mencapai tujuan/destination.
sebagai contoh, kehilangan paket pada aplikasi audio dapat mengakibatkan kehilangan sepersekian detik data audio yang dapat dibuat tidak diketahui dengan suatu algoritma penyembunyian kesalahan yang cocok.
transport control protocol (tcp), walaupun suatu standar untuk penggunaan rtp, biasanya tidak digunakan pada aplikasi rtp karena tcp menuntut keandalan atas ketepatan waktu.
alih-alih, mayoritas implementasi rtp dibangun pada user datagram protocol (udp).
acuan standar dokumen
rfc 1889, rtp: a transport protocol for real-time applications, obsoleted by rfc 3550.
rfc 3550, standard 64, rtp: a transport protocol for real-time applications
rfc 3551, standard 65, rtp profile for audio and video conferences with minimal control
rfc 3190, rtp payload format for 12-bit dat audio and 20- and 24-bit linear sampled audio
rfc 6184, rtp payload format for h.264 video
rfc 4103, rtp payload format for text conversation
rfc 3640, rtp payload format for transport of mpeg-4 elementary streams
rfc 6416, rtp payload format for mpeg-4 audio/visual streams
rfc 2250, rtp payload format for mpeg1/mpeg2 video
rfc 4175, rtp payload format for uncompressed video
rfc 6295, rtp payload format for midi
rfc 4696, an implementation guide for rtp midi
rfc 7587, rtp payload format for the opus speech and audio codec