Real-time Transport Protocol (RTP) and RTP Control Protocol (RTCP) are used for streaming real-time multimedia such as video calls and audio/video streaming. RTP handles the transfer of data and sequencing while RTCP monitors transmission quality and allows endpoints to synchronize. Real-Time Streaming Protocol (RTSP) provides the control channel for multimedia streaming using RTP, allowing clients to connect, control delivery, and terminate sessions.
3. Streaming performance requirements
–Sequencing
– to report PDU loss
–to report PDU reordering
–to perform out-of-order decoding
–Time stamping and Buffering
–for play out
–and delay calculationjitterfor
–Payload type identification
–for media interpretation
–Error concealment –covers up errors from lost PDU by using
redundancy in most-adjacent-frame
–Quality of Service (QoS) feedback – from receiver to sender for
operation adjustment
–Rate control –sender reduces sending rate adaptively to network
congestion
4. Ideal Timing – no jitter
00.00.00
00.00.10
00.00.20
00.00.30
00.00.11
00.00.21
00.00.31
Send time
Play time
application
6. How does Sequence number and Timestamp help ?
:exampleAudio silent
Solution:
–After receiving no PDUs for a while, next PDU received at
the receiver will reflect a big jump in timestamp, but
have the correct next seq. no. Thus, receiver knows
what happened.
–Why might this cause problems? silent
Consider audio data
–What should the sender do during silent?
Not send anything
Receiver cannot distinguish between loss
and silent
7. RTCP
Why not UDP?
UDP offers datagram-like
service
Connectionless , Unreliable ,
Unordered
No Flow , Error , Congestion
control
Port numbers
RTP + UDP usually used for multimedia services
Why not TCP?
TCP does retransmissions unbounded delays
TCP does not support multicast
TCP congestion control (slow-start) unsuitable for real-time transport
(A-V media)
9. AVTCORE is to maintain the core
RTP/RTCP specifications
AVTCORE will provide architectural
guidance for extending the protocols
and
guidelines for their proper use.
AVTCORE will coordinate closely with
the Security Area
while working on maintenance and
enhancements to the SRTP Profile.
10. When watching video clips on the Internet or listen to
audio clips such as radio and others, as well as review in
the games online, we need to Transmission control
protocol, reception and transfer data in real time or in
other words, the flow of data directly.
RTP: Introduction
The Organization for the development of IETF protocol
called Real-time Transport Protocol or Acronym RTP.
11. RTP Control Protocol (RTCP)
RTCP specifies report exchanged between sources and
destinations of multimedia information
receiver reception report
sender report
source description report
Reports contain statistics such as the number of RTP sent,
number of RTP lost, inter-arrival jitter
Used by application to modify sender transmission rates .
12. Actually the RTP protocol consists of two parts, one is the
same protocol and the other part is the RTCP protocol,
where he works alongside. While working RTP protocol to
transfer data and arrange them when they arrive in the
wrong sequence, RTCP organizes this process by
transferring control information, such as the
synchronization of multiple transport channels and
monitor the process used for QoS quantity of information
or the Bandwidth occupied equal to 5%
13. All RTP sent to an even-numbered UDP port, 2p
All RTCP sent to UDP port 2p+1
All RTP and RTCP are sent to same multicast group
Of the basic things that have been taken into
consideration when designing this protocol is the
support for many formats, including
( H.264, MPEG-4, MJPEG, MPEG)
14.
15. Real-Time Streaming Protocol (RTSP)
Application layer protocol (default port 554)
Usually runs on RTP for stream & TCP for control
Provides the control channel
Uses out-of-band signaling
Usable for Live broadcasts / multicast
Also known as “Network remote control” for multi-media servers.
17. RTSP Methods
OPTIONS
C S
determine capabilities of server/client
C S
DESCRIBE C S get description of media stream
ANNOUNCE C S announce new session description
SETUP C S create media session
RECORD C S start media recording
PLAY C S start media delivery
PAUSE C S pause media delivery
REDIRECT C S redirection to another server
TEARDOWN C S immediate teardown
SET_PARAMETER C S change server/client parameter
GET_PARAMETER C S read server/client parameter
18. RTSP Session
media server
RTSP
server
data
source
media player
AV
subsystem
RTSP
client
RTSP OK
RTSP PLAY
RTSP OK
RTP AUDIO
RTP VIDEO
RTSP TEARDOWN
RTSP OK
get UDP port
choose
UDP port
RTSP SETUP
Default port
554
RTCP
TCP
UDP
Editor's Notes
Version : ويتكون من 2 bits والذي يحدد نسخة البروتوكول. النسخة الحالية المستخدمة هي الإصدار 2.P : مختصر Padding يتكون من 1 بت ويستخدم لمعرفة إذا كان هناك bytes إضافية في نهاية الباكيتالمرسلة. هذه الـ bytes تضاف عندما يكون هناك حجم معين من الباكيت يتطلب وجوده كقالب عند استعمالها في خوارزميات التشفير مثلا.X : مختصر Extension يتكون من 1 بت ويستخدم لمعرفة إذا كان هناك bytes إضافية ملحقة بالهيدر أم لا كما ذكرت سابقا.CC : مختصر CSRC Count يتكون من bits 4 وسيتم ذكر فائدته لاحقا في CSRC.M : مختصر Marker يتكون من 1 بت ويستخدم لتفعيل خاصية تضمين المعلومات الخاصة بحدود الفريم من ضمن الباكيت المرسلة.PT : مختصر Payload Type يتكون من bits 7 ويستخدم لمعرفة صيغة الـPayload وكيفية ترجمة أجزاءه من قبل الApplication Layer .Sequence Number : يأخذ رقم عشوائي يتكون من bits 16 ومن ثم يزداد بمقدار واحد عند كل إرسال ، وعلى الرغم من استخدامه في معرفة إذا كان هناك فقد للبيانات أو وصولها بترتيب خاطئ عند المستقبل إلا انه عديم الفائدة في هذا البروتوكول حيث يترك الأمر للتطبيق المستخدم لتحديد القرار الذي يتطلب اتخاذه. فمثلا بعض التطبيقات تقوم بعرض آخر فريم تم استلامه بدلا من الفريم المفقود، لهذا فهو يستعمل فقط لمعرفة إذا ما تم فقد بيانات من عدمها كونه يعتمد على بروتوكول UDP في عمله.:Timestamp يتكون من 32 bits ويستعمل لتفعيل إمكانية عرض الملف بـSampling rate معين. SSRC : يتكون من 32 bits ويحمل رقم عشوائي يمثل المصدر المستخدم في المزامنة بين streams.CSRC : يتكون من 32 bits ويحدد مصادر البيانات الموجودة في حقل الـ Payload عندما يتم نقل البيانات من أكثر من مصدر. أما عدد هذه المصادر والذي يكون 15 كحد أقصى فيتم تحميله في حقل CC.
أي نظام سريان المعلومات في الزمن الحقيقي. هذا النظام يُمكن المستخدم من إعطاء اوامر شبيهة بأجهزة الفيديو البيتي مثل "توقف" و"تشغيل" وطلب المعلومات من الخادم في نقطة زمن معطاة.النظام يشبه في شكله وأوامره نظام HTTP, ولكنه يضيف بعض الطلبات الجديدة. أحد الفروقات البارزة بين HTTP وRTSP هي أن الأول يعمل دون حفظ الحالات, أما الآخر فهو يحفظ حالة المستخدم, وقد يستخدم ID للجلسات من اجل تتبع الجلسات, بهذه الطريقة لا حاجة لاتصال TCP ثابت بين الخادم والمستخدم. تُرسل رسائل RTSP بشكل عام من المستخدم إلى الخادم