rtp

16
Real-time Transport Protocol (RTP) Emil Diaz VoIP Security COMS 4995 – 03 Dept. of Computer Science Henning Schulzrinne Columbia University Fall 2008

Upload: samyuktha-dhinakaran

Post on 18-Nov-2014

443 views

Category:

Documents


8 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Rtp

Real-time Transport Protocol (RTP)

Emil Diaz

VoIP Security COMS 4995 – 03

Dept. of Computer Science

Henning Schulzrinne

Columbia University

Fall 2008

Page 2: Rtp

Overview

Protocol goals & background

Real-time Transport Protocol (RTP)

RTP Control Protocol (RTCP)

Use Scenarios

04/08/23 Real-time Transport Protocol 2

Page 3: Rtp

Real-Time Transport Protocol

04/08/23 Real-time Transport Protocol 3

End-to-end delivery services for applications transmitting real-time data, such as audio and video Payload type identification Sequence numbering Time stamping Delivery monitoring

Goals lightweight flexible scalable

Page 4: Rtp

Origin of Protocol

04/08/23 Real-time Transport Protocol 4

Developed by the Audio-Video Transport Working Group of the IETF: H. Schulzrinne (Columbia University) S. Casner (Packet Design) R. Frederick (Blue Coat Systems Inc.) V. Jacobson (Packet Design)

First published as RFC 1889 in the year 1996

Superseded by RFC 3550 in the year 2003

Page 5: Rtp

Protocol Structure

04/08/23 Real-time Transport Protocol 5

Application layer protocol

Typically used on top of IP and UDP

Applications that use RTP are: Less sensitive to packet loss Very sensitive to packet delays

UDP provides key services: Multiplexing Checksum

Page 6: Rtp

RTP Does NOT

04/08/23 Real-time Transport Protocol 6

Define media data formats or encodings Need media specific profiles

Handle connection setups or tear-downs Need other protocols like SIP or H.323

Handle resource reservation Need other protocols like RSVP

Guarantee timely delivery or Quality of Service However, it does provide necessary data to application to

order packets and adjust signal quality

Page 7: Rtp

RTP Sample Packet

04/08/23 Real-time Transport Protocol 7

http://www.codeproject.com/KB/IP/Video_Voice_Conferencing.aspx

Page 8: Rtp

RTCP Sample Packet

04/08/23 Real-time Transport Protocol 8

http://developer.apple.com/documentation/QuickTime/QTSS/Concepts/chapter_2_section_13.html

5 main types:

Sender Report (SR)

Receiver Report (RR)

Source Description (SDES)

Bye Message (BYE)

Application-defined (APP)

Page 9: Rtp

Use Scenarios

04/08/23 Real-time Transport Protocol 9

Page 10: Rtp

Simple Multicast Audio Conference

04/08/23 Real-time Transport Protocol 10

1. Call connection established

2. Audio sampled at 20ms durations

3. Each data chunk is packaged with an RTP header

4. RTP packet is wrapped around UDP packet

5. Sent through network

6. Receiver receives and parses RTP header

7. Based on payload type, application reconstructs audio stream in 20ms chunks

Page 11: Rtp

Audio and Video Conference

04/08/23 Real-time Transport Protocol 11

Audio and Video has separate RTP/RTCP sessions Receiver can choose media type to use Encodings can change independently Network resource allocations per media basis

Page 12: Rtp

Mixers and Translators

04/08/23 Real-time Transport Protocol 12

Accommodate participant network resources Mixer – Low Bandwidth Mixer – Combining media streams Translator – Forward RTP packets to private networks

Page 13: Rtp

Quality & Data Distribution Feedback

04/08/23 Real-time Transport Protocol 13

Packet loss, congestion, jitter, delivery times Directly useful for control of adaptive encodings Identify if problems are local or global Short-term and long-term statistical analysis

Self-adjusting network Each participant eventually knows about the other members Source description dynamically identifies who is sending Active senders get more bandwidth Session bandwidth kept constant by adjusting transmission

rate based on the number of participants

Page 14: Rtp

Source Description Information

04/08/23 Real-time Transport Protocol 14

CNAME – Conical name ([email protected]) NAME – Display Name (Joe Smith) EMAIL – Email (different than CNAME) PHONE – International phone number LOC – Location information (City, Building, Room?) TOOL – Application (VideoView 2.0)

Page 15: Rtp

References

04/08/23 Real-time Transport Protocol 15

RFC 3550 - http://tools.ietf.org/html/rfc1889 RFC 3551 - http://tools.ietf.org/html/rfc3551 RTP News - http://www.cs.columbia.edu/~hgs/rtp/ Wikepedia:

RTP - http://en.wikipedia.org/wiki/Real-time_Transport_Protocol RTCP - http://en.wikipedia.org/wiki/RTCP

Page 16: Rtp

Summary

04/08/23 Real-time Transport Protocol 16

Services: payload type identification sequence numbering time stamping delivery monitoring mixers & translators

Goals : lightweight flexible protocol-neutral scalable separate control/data secure