Transporting Voice by Using IP

Similar documents
RTP. Prof. C. Noronha RTP. Real-Time Transport Protocol RFC 1889

陳懷恩博士助理教授兼所長國立宜蘭大學資訊工程研究所 TEL: # 255

RTP: A Transport Protocol for Real-Time Applications

RTP/RTCP protocols. Introduction: What are RTP and RTCP?

RTP Profile for TCP Friendly Rate Control draft-ietf-avt-tfrc-profile-03.txt

CS519: Computer Networks. Lecture 9: May 03, 2004 Media over Internet

Transporting Voice by Using IP

Multimedia in the Internet

Voice in Packets: RTP, RTCP, Header Compression, Playout Algorithms, Terminal Requirements and Implementations

Real-time Services BUPT/QMUL

On the Scalability of RTCP Based Network Tomography for IPTV Services. Ali C. Begen Colin Perkins Joerg Ott

in the Internet Andrea Bianco Telecommunication Network Group Application taxonomy

Multimedia Protocols. Foreleser: Carsten Griwodz Mai INF-3190: Multimedia Protocols

Transport protocols Introduction

Real-Time Transport Protocol (RTP)

Provide a generic transport capabilities for real-time multimedia applications Supports both conversational and streaming applications

Outline. Multimedia is different Real Time Protocol (RTP) Session Description Protocol (SDP) Session Initiation Protocol (SIP)

RTP: A Transport Protocol for Real-Time Applications

Real-time Services BUPT/QMUL

Transport Protocols. ISO Defined Types of Network Service: rate and acceptable rate of signaled failures.

Lecture 14: Multimedia Communications

RTP model.txt 5/8/2011

Voice in Packets: RTP, RTCP, Header Compression, Playout Algorithms, Terminal Requirements and Implementations

4 rd class Department of Network College of IT- University of Babylon

Request for Comments: dynamicsoft H. Schulzrinne Columbia University August 2001

Lecture 6: Internet Streaming Media

Mul$media Networking. #5 Real- Time Transport Protocol Semester Ganjil 2012 PTIIK Universitas Brawijaya

Congestion Feedback in RTCP

TSIN02 - Internetworking

Digital Asset Management 5. Streaming multimedia

TSIN02 - Internetworking

13. Internet Applications 최양희서울대학교컴퓨터공학부

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2007

Overview. Slide. Special Module on Media Processing and Communication

Kommunikationssysteme [KS]

CSCD 433/533 Advanced Networks Fall Lecture 14 RTSP and Transport Protocols/ RTP

CS High Speed Networks. Dr.G.A.Sathish Kumar Professor EC

Outline. QoS routing in ad-hoc networks. Real-time traffic support. Classification of QoS approaches. QoS design choices

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2006

Cisco Call Management Record Field

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation.

Introduction to Networked Multimedia An Introduction to RTP p. 3 A Brief History of Audio/Video Networking p. 4 Early Packet Voice and Video

RTCP Feedback for Congestion Control in Interactive Multimedia Conferences draft-ietf-rmcat-rtp-cc-feedback-03. Colin Perkins

Mohammad Hossein Manshaei 1393

Multimedia! 23/03/18. Part 3: Lecture 3! Content and multimedia! Internet traffic!

Part 3: Lecture 3! Content and multimedia!

AIMD (additive-increase, multiplicative-decrease),

File transfer. Internet Applications (FTP,WWW, ) Connections. Data connections

Preliminary. No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation.

Medical Sensor Application Framework Based on IMS/SIP Platform

IP Telephony. Course scope - lecture scope

Streaming (Multi)media

Computer Networks. Wenzhong Li. Nanjing University

[MS-RTP]: Intellectual Property Rights Notice for Open Specifications Documentation

Internet Streaming Media

Circuit Breakers for Multimedia Congestion Control

Series Aggregation Services Routers.

Effective Network Quality Control Mechanism for QoS/QoE Assurance

CS 218 F Nov 3 lecture: Streaming video/audio Adaptive encoding (eg, layered encoding) TCP friendliness. References:

Real Time Protocols. Overview. Introduction. Tarik Cicic University of Oslo December IETF-suite of real-time protocols data transport:

Multimedia networking: outline

Transport Over IP. CSCI 690 Michael Hutt New York Institute of Technology

Popular protocols for serving media

Internet Streaming Media

draft-begen-fecframe-interleaved-fec-scheme-00 IETF 72 July 2008 Ali C. Begen


Congestion Manager. Nick Feamster Computer Networks. M.I.T. Laboratory for Computer Science. October 24, 2001

Cisco Call Management Records Field Descriptions

Real-Time Protocol (RTP)

Multimedia Applications. Classification of Applications. Transport and Network Layer

Real-Time Control Protocol (RTCP)

Multimedia Networking

Multimedia Communications

ETSF10 Internet Protocols Transport Layer Protocols

Latency and Loss Requirements! Receiver-side Buffering! Dealing with Loss! Loss Recovery!

Advanced Communication Networks

RTP Protocol Transport of H.264 Video and MPEG I/II Layer 3 Audio

RTP Transport & Extensions

A common issue that affects the QoS of packetized audio is jitter. Voice data requires a constant packet interarrival rate at receivers to convert

Introduction to VoIP. RFCs (RTP, SIP, H.323) Various books on VoIP

Multimedia networks. Additional references. Jargon. Analog to Digital (S5 4.3) KR: Kurose and Ross chapter 7 (KR3: 3 rd ed)

Audio/Video Transport Working Group. Document: draft-miyazaki-avt-rtp-selret-01.txt. RTP Payload Format to Enable Multiple Selective Retransmissions

EDA095 Audio and Video Streaming

EEC-682/782 Computer Networks I

IP Telephony. Summary of course scope H.323 or SIP

EEC-484/584 Computer Networks. Lecture 16. Wenbing Zhao

Nokia Q. Xie Motorola April 2007

Request for Comments: 3611 Paris 6. IBM Research A. Clark, Ed. Telchemy November RTP Control Protocol Extended Reports (RTCP XR)

Chapter 9. Multimedia Networking. Computer Networking: A Top Down Approach

Lecture 9: Media over IP

Multimedia

OSI Layer OSI Name Units Implementation Description 7 Application Data PCs Network services such as file, print,

Multimedia Networking. Protocols for Real-Time Interactive Applications

INSE 7110 Winter 2009 Value Added Services Engineering in Next Generation Networks Week #2. Roch H. Glitho- Ericsson/Concordia University

Request for Comments: 5109 December 2007 Obsoletes: 2733, 3009 Category: Standards Track. RTP Payload Format for Generic Forward Error Correction

Multimedia Networking

THE EFFECT OF DYNAMIC VOICE CODEC SELECTION FOR ACTIVE CALLS ON VOICE QUALITY. A Thesis by. Jered Daniel Ast

Summary of last time " " "

Higher layer protocols

Using RTCP Feedback for Unicast Multimedia Congestion Control draft-ietf-rmcat-rtp-cc-feedback-01. Colin Perkins

Transcription:

Transporting Voice by Using IP

Voice over UDP, not TCP Speech Small packets, 10 40 ms Occasional packet loss is not a catastrophe Delay-sensitive TCP: connection set-up, ack, retransmit delays 5 % packet loss is acceptable if evenly spaced Resource management and reservation techniques A managed IP network In-sequence delivery Mostly yes UDP was not designed for voice traffic 2

Real-Time Transport Protocol RTP: A Transport Protocol for Real-Time Applications RFC 1889 RTP Real-Time Transport Protocol RTCP RTP Control Protocol UDP Packets may be lost or out-of-sequence RTP over UDP A sequence number A time stamp for synchronized play-out Does not solve the problems; simply provides additional information 3

RTCP A companion protocol Exchange messages between session users # of lost packets, delay and inter-arrival jitter Quality feedback RTCP is implicitly open when an RTP session is open E.g., RTP/RTCP uses UDP port 5004/5005 4

RTP Payload Formats [1/2] RTP carries the actual digitally encoded voice RTP header + a payload of voice/video samples UDP and IP headers are attached Many voice- and video-coding standards A payload type identifier in the RTP header Specified in RFC 1890 New coding schemes have become available GSM Enhanced Full-rate (EFR) coder See Table 2-1 and Table 2-2 A sender has no idea what coding schemes a receiver could handle. 5

RTP Payload Formats [2/2] Separate signaling systems Capability negotiation during the call setup SIP (Session Initiation Protocol) and SDP (Session Description Protocol) A dynamic payload type (payload type numbers 96 to 127) may be used. Support new coding scheme in the future The encoding name is also significant. Unambiguously refer to a particular payload specification Should be registered with the IANA RED, Redundant payload type Voice samples + previous samples May use different encoding schemes (more bandwidthefficient) Cope with packet loss 6

RTP Header Format 7

The RTP Header [1/4] Version (V) 2 Padding (P) The padding octets at the end of the payload The payload needs to align with 32-bit boundary The last octet of the payload contains a count of the padding octets. Extension (X) 1, contains a header extension 8

The RTP Header [2/4] CSRC Count (CC) The number of contributing source identifiers Marker (M) Support silence suppression The first packet of a talkspurt, after a silence period Payload Type (PT) In general, a single RTP packet will contain media coded according to only one payload format. RED is an exception. Sequence number A random number generated by the sender at the beginning of a session Incremented by one for each RTP packet 9

The RTP Header [3/4] Timestamp 32-bit The instant at which the first sample in the payload was generated The receiver Synchronized play-out Calculate the jitter The clock freq depends on the encoding E.g., 8000Hz Support silence suppression If no packets are sent during periods of silence, the next RTP packet may have a timestamp significantly greater than the previous RTP packet. The initial timestamp is a random number chosen by the sending application. 10

The RTP Header [4/4] Synchronization Source (SSRC) 32-bit identifier The entity setting the sequence number and timestamp Normally the sender of the RTP packet Chosen randomly, independent of the network address Meant to be globally unique within a session May be a sender or a mixer Contributing Source (CSRC) An SSRC value for a contributor Used to identify the original sources of media behind the mixer 0-15 CSRC entries RTP Header Extensions (e.g., additional information for payload format) 11

Mixers and Translators Mixers Enable multiple media streams from different sources to be combined into a single stream If the capacity or bandwidth of a participant is limited An audio conference The SSRC is the mixer More than one CSRC values Translators Manage communications between entities that does not support the same coding scheme The SSRC is the participant, not the translator. 12

The RTP Control Protocol [1/3] RTCP A companion control protocol of RTP Periodic exchange of control information For quality-related feedback A third party can also monitor session quality and detect network problems. Using RTCP and IP multicast Five types of RTCP packets Sender Report: used by active session participants to relay transmission and reception statistics Receiver Report: used to send reception statistics from those participants that receive but do not send them 13

The RTP Control Protocol [2/3] Source Description (SDES) One or more descriptions related to a particular session participant To identify session participants Must contain a canonical name (CNAME) Separate from SSRC which might change When both audio and video streams were being transmitted, the two streams would have different SSRCs the same CNAME for synchronized play-out BYE The end of a participation in a session APP For application-specific functions 14

The RTP Control Protocol [3/3] Two or more RTCP packets will be combined SRs and RRs should be sent as often as possible to allow better statistical resolution. New receivers in a session must receive CNAME very quickly to allow a correlation between media sources and the received media. Every RTCP packet must contain a report packet (SR/RR) and an SDES packet Even if no data to report An example of RTP compound packet Encryption Prefix (optional) 15

RTCP Sender Report SR Header Info Sender Info Receiver Report Blocks Option Profile-specific extension 16

Header Info Resemble to an RTP packet Version 2 Padding bit Padding octets? RC, report count The number of reception report blocks 5-bit If more than 31 reports, an RR is added PT, payload type (200) 17

Sender Info SSRC of sender NTP Timestamp Network Time Protocol Timestamp The time elapsed in seconds since 00:00, 1/1/1900 (GMT) 64-bit 32 MSB: the number of seconds 32 LSB: the fraction of a seconds (200 ps) RTP Timestamp The same as used for RTP timestamps in RTP packets For better synchronization Sender s packet count Cumulative within a session Sender s octet count Cumulative within a session 18

RR blocks [1/2] SSRC_n The source identifier of the session participant to which the data in this RR block pertains. Fraction lost Fraction of packets lost since the last report issued by this participant By examining the sequence numbers in the RTP header Cumulative number of packets lost Since the beginning of the RTP session Extended highest sequence number received The sequence number of the last RTP packet received 16 lsb, the last sequence number 16 msb, the number of sequence number cycles 19

RR blocks [2/2] Interarrival jitter An estimate of the variance in RTP packet arrival Last SR Timestamp (LSR) Used to check if the last SR has been received Delay Since Last SR (DLSR) The duration in units of 1/65,536 seconds Between the reception of the last sender report from the source and the issuance of this receiver report block 20

RTCP Receiver Report RR Issued by a participant who receives RTP packets but does not send, or has not yet sent Is almost identical to an SR PT = 201 No sender information 21

RTCP Source Description Packet Provides identification and information regarding session participants Must exist in every RTCP compound packet Header V, P, SC, PT=202, Length Zero or more chunks of information An SSRC or CSRC value One or more identifiers and pieces of information A unique CNAME (user@host) Email address, phone number, name 22

RTCP BYE Packet (PT=203) Indicate one or more media sources (SSRC or CSRC) are no longer active Application-Defined RTCP Packet (PT=204) For application-specific data For non-standardized application 23

Calculating Round-Trip Time Use SRs and RRs E.g. Report A: A, T1 B, T2 Report B: B, T3 A, T4 RTT = T4-T3+T2-T1 RTT = T4-(T3-T2)-T1 Report B LSR = T1 DLSR = T3-T2 T1 T4 A B T2 T3 24

Calculation Jitter The variation in delay The mean deviation of the difference in packet spacing at the receiver compared to the packet spacing at the sender for a pair of packets This value is equivalent to the derivation in transit time for a pair of packets. S i = the RTP timestamp for packet i R i = the time of arrival D(i,j) = (R j -R i )-(S j -S i ) = (R j -S j ) - (R i -S i ) The Jitter is calculated continuously J(i) = J(i-1) + ( D(i-1,i) - J(i-1))/16 25

Timing of RTCP Packets RTCP provides useful feedback Regarding the quality of an RTP session Delay, jitter, packet loss Be sent as often as possible Consume the bandwidth Should be fixed to a small fraction (e.g., 5%) An algorithm, RFC 1889 Senders are collectively allowed at least 25% of the control traffic bandwidth. (CNAME) The interval > 5 seconds 0.5 1.5 times the calculated interval This helps to avoid unintended synchronization where all participants send RTCP packets at the same time instant, hence clogging the network. A dynamic estimate of the avg. RTCP packet size is calculated. To automatically adapt to changes in the amount of control information carried. 26