Transcript PPT
CS 414 – Multimedia Systems Design
Lecture 22 –
Multimedia Session Protocols
Klara Nahrstedt
Spring 2014
CS 414 - Spring 2014
Administrative
MP1,HW1, Midterm graded
Pick up your HW1 and midterm from TA
during office hours or by appointment
Regrading: meet with TA or email TA
asking for regarding
He
will facilitate the regarding with the graders
Deadline until Wednesday, March 19 (one
week)
If you can’t make the deadline, email to TA and
Instructor
CS 414 - Spring 2014
Outline
Error Control
Multimedia Protocols – Standards
– Transmission Protocol
RTCP Control/Negotiation Protocol to RTP
RTP/UDP/IP
CS 414 - Spring 2014
Covered Aspects of Multimedia
Image/Video
Capture
Audio/Video
Perception/
Playback
Audio/Video
Presentation
Playback
Image/Video Information
Representation
Transmission
Audio
Capture
Transmission
Compression
Processing
Audio Information
Representation
Media
Server
Storage
CS 414 - Spring 2014
A/V
Playback
Error Detection
Ability to detect the presence of errors
caused by noise or other impairments during
transmission from sender to receiver
Traditional
mechanisms: check-summing, PDU
sequencing
Checksum of a message is an arithmetic sum of message code words
of a certain word length (e.g., byte)
CRC – Cyclic Redundancy Check – function that takes as input a data
stream of any length and produces as output a value (commonly a 32bit integer) – can be used as a checksum to detect accidental alteration
of data during transmission or storage
Multimedia
mechanisms: byte error detection at
application PDU, time detection
CS 414 - Spring 2014
Design of Error Correction Codes
Automatic repeat-request (ARQ)
Transmitter
sends the data and also an error
detection code, which the receiver uses to check for
errors, and requests retransmission for erroneous
data
The receiver sends ACK (acknowledgement of
correctly received data)
Forward Error Correction (FEC)
Transmitted
encodes the data with an error-correcting
code (ECC) and sends the coded msg. No ACK
exists.
CS 414 - Spring 2014
Error Control
Error Correction
Traditional
mechanisms: retransmission using
acknowledgement schemes, window-based flow
control
Multimedia mechanisms:
Go-back-N Retransmission
Selective retransmission
Partially reliable streams
Forward error correction
Priority channel coding
Slack Automatic Repeat Request
CS 414 - Spring 2014
Go-back-N Retransmission
CS 414 - Spring 2014
Internet Multimedia Protocol Stack
APPLICATION
Media encaps
(H.264, MPEG-4)
DASH
SIP
RTSP
RSVP
RTP
HTTP
KERNEL
TCP
DCCP
UDP
IP Version 4, IP Version 6
AAL3/4
Layer 5
(Session)
RTCP
AAL5
MPLS
CS 414 - Spring 2014
Layer 3
(Network)
Layer 2
(Link/MAC)
Ethernet/WiFi
ATM/Fiber Optics
Layer 4
(Transport)
Internet Multimedia Protocol Stack
APPLICATION
Media encaps
(H.264, MPEG-4)
DASH
SIP
RTSP
RSVP
RTP
HTTP
KERNEL
TCP
DCCP
UDP
IP Version 4, IP Version 6
AAL3/4
Layer 5
(Session)
RTCP
AAL5
MPLS
CS 414 - Spring 2014
Layer 3
(Network)
Layer 2
(Link/MAC)
Ethernet/WiFi
ATM/Fiber Optics
Layer 4
(Transport)
Service Requirements for Realtime Flows (Voice/Video)
Sequencing
Intra-media synchronization
Inter-media synchronization
Payload identification
Frame indication
CS 414 - Spring 2014
Real-time Transmission
Protocol (RTP)
RTP provides end-to-end transport functions
suitable for real-time audio/video applications
over multicast and unicast network services
RTP companion protocol – Real-time Transport
Control Protocol (RTCP)
RTP
RTCP
User Datagram Protocol
Internet Protocol
Ethernet 802.13 or Wi-Fi 802.11
PHY (Wired or Wireless)
CS 414 - Spring 2014
Layer 4
Relation between RTP and RTCP
Application
Decoding
Coding
RTP
RTCP
Application
Coding
RTCP
UDP/IP
UDP/IP
CS 414 - Spring 2014
Decoding
RTP
RTCP: Control and Management
Out-of-band control information for RTP flow.
Monitors
QoS for RTP in the delivery and packaging of
multimedia data
Used periodically to transmit control packets to
participants in a streaming multimedia session.
Provides feedback on the quality of service being
provided by RTP.
Gathers statistics on media connection
Bytes sent, packets sent, lost packets, jitter, feedback and
round trip delay.
Application may use this information to increase the quality of
service, perhaps by limiting flow or using a different codec.
CS 414 - Spring 2014
RTCP Functions
There are several type of RTCP packets:
Sender
report packet,
Receiver report packet,
Source Description RTCP Packet,
Goodbye RTCP Packet and
Application Specific RTCP packets.
RTCP itself does not provide any flow encryption
or authentication means. SRTCP protocol can be
used for that purpose.
CS 414 - Spring 2014
RTP Services
Payload Type Identification
Determination
of media coding
Source identification
RTP works with Profiles
Profile defines a set of payload type codes and their
mappings to payload formats
Sequence numbering
Error
Time-stamping
Time
detection
monitoring, synchronization, jitter calculation
Delivery monitoring
CS 414 - Spring 2014
RTP Services – Support of Heterogeneity
Mixer service
Allows
for resynchronization of incoming audio packets
Reconstructs constant 20 ms spacing generated by
sender
Mixes reconstructed audio streams into single stream
Translates audio encoding to lower bandwidth
Forwards lower bandwidth packet streams
Translator service
Allows
for translation between IP and other high speed
protocols
May change encoding data
CS 414 - Spring 2012
Difference between Mixers and
Translators
S3
S1
M1
T
S2
S4
CS 414 - Spring 2012
M2
R1
RTP Common Header
0 0 0 0 0 0 0 0 0 0 1 1 1 1 11
0 1 2 3 4 5 6 7 8 9 0 1 2 3 45
1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3
6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Ver
Sequence Number
P X CC
M PT
Timestamp
SSRC
CSRC [0..15] :::
Ver – Version 2
P – Padding
X – Extension, if set, the fixed head is followed by exactly one
header extension
CC – CSRC count
M – Marker – intended to allow significant events such as
frame boundaries to be marked (defined by profile)
PT – Payload type
SSRS – synchronization source, CSRC – contribution source
CS 414 - Spring 2012
Payload Formats
Static Payload formats
Established
in RTP Profile
Payload type 0 := µ-law audio codec
Dynamic Payload formats
Applications
agree per session on payload
format
H.263, JPEG, MPEG
CS 414 - Spring 2012
Conclusion
RTP usage – in several application audio and
video tools (vat, vic)
RTP follows the principle of application level
framing and integrated layer processing
RTP/UDP/IP is being used by the current
streaming session protocols such as RTSP
Session protocols are actually
negotiation/session establishment protocols that
assist multimedia applications
Multimedia applications such as QuickTime,
Real Player and others use them
CS 414 - Spring 2014