SlideShare uma empresa Scribd logo
1 de 40
RTP/RTCP, RTSP, and RSVP
Multimedia protocols for the Internet
JAYAPRAKASH
Outline of the presentation
 1- the context
 2- the RTP/RTCP protocols
 3- the RTSP protocol
 4- the RSVP protocol
PART 1:
The context
A general view of the real-time protocols
 the protocols and their application field…
 stream description: SDP, SMIL...
describe the session and content
 stream control: RTSP
remote control the session
 media transport: RTP
send data and metadata
 resource reservation (if any!): RSVP, DiffServ
make sure the communication path offers appropriate
guaranties…
…otherwise Best-Effort transmissions!
A general view… (cont’)
 and the result…
PART 2:
The RTP/RTCP protocols
 2.1 Overview
 2.2 RTP generalities
 2.3 Header format
 2.5 RTCP generalities
 2.6 RTP profiles
 2.7 some implementations
2.1- Overview
 IETF Audio/Video Transport WG
 RTPv1RFC 1889 (January 1996)
 RTPv2draft-ietf-avt-rtp-new-09.txt (March
2001)
 Real-Time Protocol (RTP)
 understand: « a framing protocol for real-time
applications »
 does not define any QoS mechanism for real-time
delivery!
 Real-Time Control Protocol (RTCP)
 its companion control protocol
 does not guaranty anything either!
Overview… (cont’)
 Design goals:
 flexible provide mechanisms, do not
dictate algorithms!
⇒ instantiations for H261, MPEG1/2/...
 protocol neutral UDP/IP, private ATM
networks...
 scalable unicast, multicast, from 2 to ∞
 separate control/data some functions may be
taken over by conference
control protocol (e.g. RTSP)
2.2- RTP generalities
 data functions (RTP)
 content labeling

source identification

loss detection

resequecing
 timing

intra-media synchronization: remove jitter with
playout buffers

inter-media synchronization: lip-synchro between
audio-video
Typical use
 Usually...
 uses UDP (TCP is not for real-time!!!)
 no fixed UDP port negociated out of band
 UDP port for RTCP = UDP port for RTP + 1
 usually one media per RTP session (i.e. port
pair)
2.3- RTP header
 version (V) CSRC count (CC)
 padding (P) marker (M)
 extension (X) payload type (PT)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V=2|P|X| CC |M| PT | sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| synchronization source (SSRC) identifier |
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
| contributing source (CSRC) identifiers |
| .... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
2.5- RTCP generalities
 periodic transmission of control packets
 several functions
 feedback on the quality of data distribution
 let everybody evaluate the number of participants
 persistant transport-level canonical name for a
source, CNAME

usually: user@host

will not change, even if SSRC does!

provides binding across multiple media tools for a single
user
RTCP generalities… (cont’)
 Five RTCP packets
 SR sender reports
tx and rx statistics from active senders
 RR receiver reports
rx statistics from other participants, or from
active senders if more than 31 sources
 SDES source description, including CNAME
 BYE explicit leave
 APP application specific extensions
RTCP generalities… (cont’)
 distribution
 use same distribution mechanisms as data packets
(n→m multicast)
 multiple RTCP packets can be concatenated by
translators/mixers
⇒ compound RTCP packet
 scalability with session size
 RTCP traffic should not exceed 5% of total session
bandwidth
requires an evaluation of number of participants
RTCP tx interval = f(number of participants)
 at least 25% of RTCP bandwidth is for source
reports
let new receivers quickly know CNAME of sources!
SR RTCP packets
 includes
 SSRC of sender identify source of data
 NTP timestamp when report was sent
 RTP timestamp corresponding RTP time
 packet count total number sent
 octet count total number sent
 followed by zero or more receiver report…
 example:
source 1 reports, there are 2 other sources
SR
sender
report
receiver
report
receiver
report
SSRC
SSRC
SSRC
source 2 source 3
RTCP packet
RR RTCP packets
 includes
 SSRC of source identify the source to which
this RR block pertains
 fraction lost since previous RR (SR) sent
(= int(256*lost/expected))
 cumul # of packets lost long term loss
 highest seq # received compare losses
 interarrival jitter smoothed interpacket
distortion
 LSR time when last SR heard
 DLSR delay since last SR
PART 3:
The RTSP protocol
 3.1 generalities
 3.2 an example
 3.3 a bit more in details
 3.4 some implementations
3.1- RTSP generalities
 IETF standard
 RFC 2326
 Real-Time Streaming Protocol
 acts as a « network remote control »
 supports the following operations:
 retrieval of a media from a server
 invitation of a media server to a conference
 recording of a conference
RTSP generalities… (cont’)
 Protocol design
 text-based protocol
 transport protocol independent
 supports any session description (sdp, xml,
etc.)
 similar design as HTTP with differences yet!

client → server and server → client requests

server maintains a « session state »

data carried out-of-band
 works either with unicast or multicast
RTSP methods
 Major methods
 SETUP: server allocates resources for
a
stream and starts an RTSP session
 PLAY: starts data tx on a stream
 PAUSE: temporarily halts a stream
 TEARDOWN: free resources of the stream, no
RTSP session on server any more
 Additional methods
 OPTIONS: get available methods
 ANNOUNCE: change description of media object
 DESCRIBE: get low level descr. of media object
 RECORD: server starts recording a stream
 REDIRECT: redirect client to new server
3.2- Example: media on demand, unicast
 Scenario…
video
server
audio
server
media descr.
web serverclient
step 1: get description (in SDP format)
step 2: open streams with RTSP
step 3: play
step 4: teardown
C
W A V
Example… (cont’)
 Another view
client
C
web
server
W
media
servers
A & V
HTTP GET
presentation description (sdp)
SETUP
PLAY
RTP audio/video
RTCP
TEARDOWN
RSVP: Reservation Protocol
PART 4:
What is RSVP
 RSVP is a network control protocol
that will allow Internet applications to
obtain special qualities-of-service for
their data flows.
 This will generally require reserving resources along the
data path(s).
 RSVP is a component of the future "integrated services"
Internet, which will provide both best-effort and real-time
qualities of service
 When an application in a host requests a specific QoS for its
data stream, RSVP is used to deliver the request to each
router along the path(s) of the data stream and to maintain
router and host state to provide the requested service.
 Although RSVP was developed for setting up resource
reservations, it is easily adaptable to transport other kinds of
network control information along data flow paths.
Quality of Service
 Marking
 Queuing
 Policing
 Admission
Control
Diffserv:
• Different classes of traffic marked
appropriately (DSCP marking)
• Queue accordingly
Quality of Service
 Marking
 Queuing
 Policing
 Admission
Control
At the trust boundary:
• per user, per interface
• per flow (RSVP)
Quality of Service
 Marking
 Queuing
 Policing
 Admission
Control
Is there over-subscription?:
• of data (usually)
• of voice (maybe – if yes – admission
control is required – i.e. RSVP)
Admission Control - RSVP
 RSVP is used for signaling end to end
(admission control based on bandwidth, QOS requirements)
 Per-Flow policing is rarely done in the
core/backbone Instead:
 In the access: Per flow reservation state is maintained;
Per flow policing
 At the edge of the backbone: per flow policing,
marking
 In the backbone: Queuing based on marking (DSCP,
MPLS – i.e. reservation state is not maintained)
Quality of Service – Use of RSVP
Access
Access
Backbone
Diffserv Region
Per flow policing
DSCP marking Classify & schedule
based on DSCP
RSVP signalling
Trust Boundary
RSVP Signaling
RSVP Path
RESV
optional RESV CONF
SoftSwitch and RSVP
 Softswitch controls how RSVP is used while it
controls call signaling i.e.:
 Request reservations in both directions
 Don’t ring the phone until I get confirmation that reservations
have been obtained
RSVP Basic Functionality
 RSVP handles heterogeneous receivers.
 Different hosts on the same multicast delivery tree may have
different capabilities and therefore need different QoS.
 RSVP adapts to changing group membership
as well as changing routes.
 For dynamic adaptability and robustness, RSVP maintains “soft
state” in the routers. The only permanent state is in the end
systems, which periodically send their RSVP control messages
to refresh the router state. In the absence of refresh, RSVP
state in routers will time out and be deleted.
 RSVP is not a routing protocol.
 The RSVP daemon consults the local routing protocol(s) to
obtain routes. RSVP is designed to operate with existing and
future unicast and multicast routing protocols. A host sends
IGMP messages to join a multicast group, but it uses RSVP
messages to reserve resources along the delivery path(s) from
that group.
RSVP Operational Principles
 A QoS request from an application is passed
to the local RSVP implementation (user
daemon). RSVP passes the request to all the
nodes along the reverse data path to the
destination.
 RSVP provides transparent operation through
routers that do not support it.
RSVP Operational Principles
 At each node, RSVP applies a local decision
procedure (admission control) to the QoS request.
 If admission control succeeds, it sets the parameters to the
Classifier and Packet Scheduler to obtain the desired QoS. If
admission control fails at any node, RSVP returns an error
indication to the application.
 Each router in the path capable of resource
reservation will pass incoming data packets to a
Packet Classifier and then queue them in a Packet
Scheduler.
 The Packet Classifier determines the route and the QoS class for
each packet. The Scheduler allocates a particular outgoing link for
packet transmission.
 For QoS-active link-layer media the packet scheduler
is responsible for negotiation with the link layer to
obtain the QoS requested by RSVP.
 Mapping to the link layer QoS may be accomplished in a number of
possible ways; the details will be medium-dependent. On a QoS-
passive medium such as a leased line, the scheduler itself allocates
packet transmission capacity. The scheduler may also allocate
other system resources such as CPU time or buffers.
RSVP Operational Principles
 RSVP is designed to scale well for very large
multicast groups.
– RSVP uses "soft state" in the routers, i.e., RSVP sends periodic refresh
messages to maintain the state along the reserved path; in absence of
refreshes, the state will automatically time out and be deleted.
 RSVP reserves resources for simplex data streams,
i.e., it reserves resources in only one direction on a
link
– A sender is logically distinct from a receiver. However, the same application
may act as both sender and receiver.
 RSVP mechanisms provide a general facility for
creating and maintaining distributed reservation state
across a mesh of multicast delivery paths.
– RSVP transfers reservation parameters as opaque data (except for certain
well-defined operations on the data), which it simply passes to admission
control and to the Packet Scheduler and Classifier for interpretation.
RSVP Reservation Model
 An elementary RSVP reservation request consists of
a "flowspec" and a "filter spec"; this pair is called a
"flow descriptor".
 The flowspec specifies a desired QoS. It is used to set parameters to the
node's packet scheduler, assuming that admission control succeeds.
 The filter spec, together with a session specification, defines the set of data
packets -- the "flow" -- to receive the QoS defined by the flowspec. Filter
spec is used to set parameters in the packet classifier.
 Data packets that are addressed to a particular session but do not match
any of the filter specs for that session are handled as best-effort traffic.
 Please, note “upstream” and “downstream”
convention!
Downstream
Incoming
interface
Next hop
Recvr
Outgoing
interface
Upstream
Previous hop
Sender
RSVP Reservation Model
 The flowspec in a reservation request will generally
include a service class and two sets of numeric
parameters:
 an "Rspec" (R for `reserve') that defines the desired QoS,
 a "Tspec" (T for `traffic') that describes the data flow.
 The formats and contents of Tspecs and Rspecs are determined by the
integrated service model, and are generally opaque to RSVP.
 Filter specs may select arbitrary subsets of the packets
in a given session.
 Subsets might be defined in terms of

senders (i.e., sender IP address and generalized source port),

a higher-level protocol

any fields in any protocol headers in the packet.
 Example: filter specs might be used to select different subflows in a
hierarchically-encoded signal by selecting on fields in an application-
layer header.
 Current RSVP software does not yet support this option.
 Because the UDP/TCP port numbers are used for packet classification, each
router must be able to examine these fields.
RSVP Reservation Model
 RSVP reservation request messages originate at
receivers and are passed upstream towards the sender.
At each intermediate node, two general actions are
taken:
 Make a reservation

The request is passed to admission control and policy control.
 If either test fails, the reservation is rejected and RSVP returns an
error message to the appropriate receiver.
 If both succeed, the node uses the flowspec to set up the packet
scheduler for the desired QoS and the filter spec to set the packet
classifier to select the appropriate data packets.
 Forward the request upstream

The reservation request is propagated upstream towards the appropriate
senders. The set of sender hosts to which a given reservation request is
propagated is called the "scope" of that request.
 Forwarded reservation request may differ from the request that it
received from downstream:

reservations for the same sender from different downstream branches of
the tree are "merged" as reservations travel upstream; a node forwards
upstream only the reservation request with the "maximum" flowspec.

reservation might be purposefully modified by traffic control.
RSVP Protocol Mechanisms
 RSVP Messages
 Two basic RSVP message types: Resv and Path.

Each receiver host sends RSVP reservation request
(Resv) messages upstream towards the senders.

Resv messages must follow exactly the reverse of the
routes the data packets will use, upstream to all the
sender hosts included in the sender selection.

Resv messages are delivered to the sender hosts
themselves so that the hosts can set up appropriate traffic
control parameters for the first hop.
RSVP Protocol Mechanisms
 RSVP Messages
 Two basic RSVP message types: Resv and Path.

Each RSVP sender host transmits RSVP Path messages
downstream along the uni-/multicast routes provided by the
routing protocol(s), following the paths of the data.

Path messages store "path state" in each node along the way.
This path state includes at least the unicast IP address of the
previous hop node, which is used to route the Resv messages
hop-by-hop in the reverse direction.

Mais conteúdo relacionado

Mais procurados

Session initiation-protocol
Session initiation-protocolSession initiation-protocol
Session initiation-protocol
Santhosh Somu
 
session initiation protocol - SIP
session initiation protocol - SIPsession initiation protocol - SIP
session initiation protocol - SIP
Mahmoud Abudaqa
 
Lte attach-messaging
Lte attach-messagingLte attach-messaging
Lte attach-messaging
Praveen Kumar
 
Dvb Serviceinformation
Dvb ServiceinformationDvb Serviceinformation
Dvb Serviceinformation
geeksrik
 

Mais procurados (20)

Streaming Stored Video- Computer Networking
Streaming Stored Video- Computer Networking  Streaming Stored Video- Computer Networking
Streaming Stored Video- Computer Networking
 
Understanding MPEG DASH
Understanding MPEG DASHUnderstanding MPEG DASH
Understanding MPEG DASH
 
RTSP Analysis Wireshark
RTSP Analysis WiresharkRTSP Analysis Wireshark
RTSP Analysis Wireshark
 
mpeg2ts1_es_pes_ps_ts_psi
mpeg2ts1_es_pes_ps_ts_psimpeg2ts1_es_pes_ps_ts_psi
mpeg2ts1_es_pes_ps_ts_psi
 
RTCP
RTCPRTCP
RTCP
 
SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)
 
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
 
스트리밍 프로토콜
스트리밍 프로토콜스트리밍 프로토콜
스트리밍 프로토콜
 
Streaming Media Protocols
Streaming Media ProtocolsStreaming Media Protocols
Streaming Media Protocols
 
Mpeg 2
Mpeg 2Mpeg 2
Mpeg 2
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)
 
the transport layer
the transport layerthe transport layer
the transport layer
 
Session initiation-protocol
Session initiation-protocolSession initiation-protocol
Session initiation-protocol
 
session initiation protocol - SIP
session initiation protocol - SIPsession initiation protocol - SIP
session initiation protocol - SIP
 
Precision Time Protocol
Precision Time ProtocolPrecision Time Protocol
Precision Time Protocol
 
Lte attach-messaging
Lte attach-messagingLte attach-messaging
Lte attach-messaging
 
Dvb Serviceinformation
Dvb ServiceinformationDvb Serviceinformation
Dvb Serviceinformation
 
IMS + VoLTE Overview
IMS + VoLTE OverviewIMS + VoLTE Overview
IMS + VoLTE Overview
 
Lte mac presentation
Lte mac presentationLte mac presentation
Lte mac presentation
 
DHCP basics
DHCP basicsDHCP basics
DHCP basics
 

Destaque

Juniper MPLS Tutorial by Soricelli
Juniper MPLS Tutorial by SoricelliJuniper MPLS Tutorial by Soricelli
Juniper MPLS Tutorial by Soricelli
Febrian ‎
 
I2C Bus (Inter-Integrated Circuit)
I2C Bus (Inter-Integrated Circuit)I2C Bus (Inter-Integrated Circuit)
I2C Bus (Inter-Integrated Circuit)
Varun Mahajan
 
USB Powerpoint
USB PowerpointUSB Powerpoint
USB Powerpoint
aaron924
 

Destaque (14)

Live streaming
Live streamingLive streaming
Live streaming
 
RTP -- Real-time Transport Protocol
RTP -- Real-time Transport ProtocolRTP -- Real-time Transport Protocol
RTP -- Real-time Transport Protocol
 
H.323: Packet Network Protocol
H.323: Packet Network ProtocolH.323: Packet Network Protocol
H.323: Packet Network Protocol
 
Multimedia
MultimediaMultimedia
Multimedia
 
Juniper MPLS Tutorial by Soricelli
Juniper MPLS Tutorial by SoricelliJuniper MPLS Tutorial by Soricelli
Juniper MPLS Tutorial by Soricelli
 
Serial peripheral interface
Serial peripheral interfaceSerial peripheral interface
Serial peripheral interface
 
I2C Bus (Inter-Integrated Circuit)
I2C Bus (Inter-Integrated Circuit)I2C Bus (Inter-Integrated Circuit)
I2C Bus (Inter-Integrated Circuit)
 
Parallax Theme in PowerPoint
Parallax Theme in PowerPointParallax Theme in PowerPoint
Parallax Theme in PowerPoint
 
Preparing food safely for fairs and festivals
Preparing food safely for fairs and festivalsPreparing food safely for fairs and festivals
Preparing food safely for fairs and festivals
 
UNIT-I-RTOS and Concepts
UNIT-I-RTOS and ConceptsUNIT-I-RTOS and Concepts
UNIT-I-RTOS and Concepts
 
Osi model
Osi modelOsi model
Osi model
 
USB Powerpoint
USB PowerpointUSB Powerpoint
USB Powerpoint
 
File Transfer Protocol
File Transfer ProtocolFile Transfer Protocol
File Transfer Protocol
 
I2C
I2CI2C
I2C
 

Semelhante a Real-Time Streaming Protocol

2008118090324 hk
2008118090324 hk2008118090324 hk
2008118090324 hk
Vivek Singh
 

Semelhante a Real-Time Streaming Protocol (20)

RTP_RTCP.ppt
RTP_RTCP.pptRTP_RTCP.ppt
RTP_RTCP.ppt
 
Real-Time Streaming Protocol -QOS
Real-Time Streaming Protocol -QOSReal-Time Streaming Protocol -QOS
Real-Time Streaming Protocol -QOS
 
Rtp
RtpRtp
Rtp
 
Quality of service(qos) by M.BILAL.SATTI
Quality of service(qos) by M.BILAL.SATTIQuality of service(qos) by M.BILAL.SATTI
Quality of service(qos) by M.BILAL.SATTI
 
MPLS Deployment Chapter 1 - Basic
MPLS Deployment Chapter 1 - BasicMPLS Deployment Chapter 1 - Basic
MPLS Deployment Chapter 1 - Basic
 
Vo ip
Vo ipVo ip
Vo ip
 
Jaimin chp-6 - transport layer- 2011 batch
Jaimin   chp-6 - transport layer- 2011 batchJaimin   chp-6 - transport layer- 2011 batch
Jaimin chp-6 - transport layer- 2011 batch
 
transport.pptx
transport.pptxtransport.pptx
transport.pptx
 
Rtp
RtpRtp
Rtp
 
Intelligent Network Services through Active Flow Manipulation
Intelligent Network Services through Active Flow ManipulationIntelligent Network Services through Active Flow Manipulation
Intelligent Network Services through Active Flow Manipulation
 
STIC TCAP Training
STIC TCAP TrainingSTIC TCAP Training
STIC TCAP Training
 
2008118090324 hk
2008118090324 hk2008118090324 hk
2008118090324 hk
 
Multi-Protocol Label Switching: Basics and Applications
Multi-Protocol Label Switching: Basics and ApplicationsMulti-Protocol Label Switching: Basics and Applications
Multi-Protocol Label Switching: Basics and Applications
 
Bt0072 computer networks 2
Bt0072 computer networks  2Bt0072 computer networks  2
Bt0072 computer networks 2
 
Transport Layer
Transport LayerTransport Layer
Transport Layer
 
Realtimetapan
RealtimetapanRealtimetapan
Realtimetapan
 
Quality of service
Quality of serviceQuality of service
Quality of service
 
Protocol for QoS Support Chapter 18
Protocol for QoS Support Chapter 18Protocol for QoS Support Chapter 18
Protocol for QoS Support Chapter 18
 
Quality of Servise
Quality of ServiseQuality of Servise
Quality of Servise
 
KandR_TCP (1).ppt notes for congestion control
KandR_TCP (1).ppt    notes for congestion controlKandR_TCP (1).ppt    notes for congestion control
KandR_TCP (1).ppt notes for congestion control
 

Mais de Jayaprakash Nagaruru

Mais de Jayaprakash Nagaruru (8)

3-D Mouse controlling with wrist watch
3-D Mouse controlling with wrist watch 3-D Mouse controlling with wrist watch
3-D Mouse controlling with wrist watch
 
Csla 130319073823-phpapp01-140821210430-phpapp02
Csla 130319073823-phpapp01-140821210430-phpapp02Csla 130319073823-phpapp01-140821210430-phpapp02
Csla 130319073823-phpapp01-140821210430-phpapp02
 
eZ430-Chronos Development Tool (watch)
eZ430-Chronos Development Tool (watch)eZ430-Chronos Development Tool (watch)
eZ430-Chronos Development Tool (watch)
 
Virtual Keyboard Technology
Virtual Keyboard TechnologyVirtual Keyboard Technology
Virtual Keyboard Technology
 
Getting started with open cv in raspberry pi
Getting started with open cv in raspberry piGetting started with open cv in raspberry pi
Getting started with open cv in raspberry pi
 
Computer Networking
Computer NetworkingComputer Networking
Computer Networking
 
Ultra Broadband for personal area networks using fiber commnications
Ultra Broadband for personal area networks using fiber commnicationsUltra Broadband for personal area networks using fiber commnications
Ultra Broadband for personal area networks using fiber commnications
 
Tcp over 4 g
Tcp over 4 gTcp over 4 g
Tcp over 4 g
 

Último

Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
negromaestrong
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
SanaAli374401
 

Último (20)

fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
 

Real-Time Streaming Protocol

  • 1. RTP/RTCP, RTSP, and RSVP Multimedia protocols for the Internet JAYAPRAKASH
  • 2. Outline of the presentation  1- the context  2- the RTP/RTCP protocols  3- the RTSP protocol  4- the RSVP protocol
  • 4. A general view of the real-time protocols  the protocols and their application field…  stream description: SDP, SMIL... describe the session and content  stream control: RTSP remote control the session  media transport: RTP send data and metadata  resource reservation (if any!): RSVP, DiffServ make sure the communication path offers appropriate guaranties… …otherwise Best-Effort transmissions!
  • 5. A general view… (cont’)  and the result…
  • 6. PART 2: The RTP/RTCP protocols  2.1 Overview  2.2 RTP generalities  2.3 Header format  2.5 RTCP generalities  2.6 RTP profiles  2.7 some implementations
  • 7. 2.1- Overview  IETF Audio/Video Transport WG  RTPv1RFC 1889 (January 1996)  RTPv2draft-ietf-avt-rtp-new-09.txt (March 2001)  Real-Time Protocol (RTP)  understand: « a framing protocol for real-time applications »  does not define any QoS mechanism for real-time delivery!  Real-Time Control Protocol (RTCP)  its companion control protocol  does not guaranty anything either!
  • 8. Overview… (cont’)  Design goals:  flexible provide mechanisms, do not dictate algorithms! ⇒ instantiations for H261, MPEG1/2/...  protocol neutral UDP/IP, private ATM networks...  scalable unicast, multicast, from 2 to ∞  separate control/data some functions may be taken over by conference control protocol (e.g. RTSP)
  • 9. 2.2- RTP generalities  data functions (RTP)  content labeling  source identification  loss detection  resequecing  timing  intra-media synchronization: remove jitter with playout buffers  inter-media synchronization: lip-synchro between audio-video
  • 10. Typical use  Usually...  uses UDP (TCP is not for real-time!!!)  no fixed UDP port negociated out of band  UDP port for RTCP = UDP port for RTP + 1  usually one media per RTP session (i.e. port pair)
  • 11. 2.3- RTP header  version (V) CSRC count (CC)  padding (P) marker (M)  extension (X) payload type (PT) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |V=2|P|X| CC |M| PT | sequence number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | synchronization source (SSRC) identifier | +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | contributing source (CSRC) identifiers | | .... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  • 12. 2.5- RTCP generalities  periodic transmission of control packets  several functions  feedback on the quality of data distribution  let everybody evaluate the number of participants  persistant transport-level canonical name for a source, CNAME  usually: user@host  will not change, even if SSRC does!  provides binding across multiple media tools for a single user
  • 13. RTCP generalities… (cont’)  Five RTCP packets  SR sender reports tx and rx statistics from active senders  RR receiver reports rx statistics from other participants, or from active senders if more than 31 sources  SDES source description, including CNAME  BYE explicit leave  APP application specific extensions
  • 14. RTCP generalities… (cont’)  distribution  use same distribution mechanisms as data packets (n→m multicast)  multiple RTCP packets can be concatenated by translators/mixers ⇒ compound RTCP packet  scalability with session size  RTCP traffic should not exceed 5% of total session bandwidth requires an evaluation of number of participants RTCP tx interval = f(number of participants)  at least 25% of RTCP bandwidth is for source reports let new receivers quickly know CNAME of sources!
  • 15. SR RTCP packets  includes  SSRC of sender identify source of data  NTP timestamp when report was sent  RTP timestamp corresponding RTP time  packet count total number sent  octet count total number sent  followed by zero or more receiver report…  example: source 1 reports, there are 2 other sources SR sender report receiver report receiver report SSRC SSRC SSRC source 2 source 3 RTCP packet
  • 16. RR RTCP packets  includes  SSRC of source identify the source to which this RR block pertains  fraction lost since previous RR (SR) sent (= int(256*lost/expected))  cumul # of packets lost long term loss  highest seq # received compare losses  interarrival jitter smoothed interpacket distortion  LSR time when last SR heard  DLSR delay since last SR
  • 17. PART 3: The RTSP protocol  3.1 generalities  3.2 an example  3.3 a bit more in details  3.4 some implementations
  • 18. 3.1- RTSP generalities  IETF standard  RFC 2326  Real-Time Streaming Protocol  acts as a « network remote control »  supports the following operations:  retrieval of a media from a server  invitation of a media server to a conference  recording of a conference
  • 19. RTSP generalities… (cont’)  Protocol design  text-based protocol  transport protocol independent  supports any session description (sdp, xml, etc.)  similar design as HTTP with differences yet!  client → server and server → client requests  server maintains a « session state »  data carried out-of-band  works either with unicast or multicast
  • 20. RTSP methods  Major methods  SETUP: server allocates resources for a stream and starts an RTSP session  PLAY: starts data tx on a stream  PAUSE: temporarily halts a stream  TEARDOWN: free resources of the stream, no RTSP session on server any more  Additional methods  OPTIONS: get available methods  ANNOUNCE: change description of media object  DESCRIBE: get low level descr. of media object  RECORD: server starts recording a stream  REDIRECT: redirect client to new server
  • 21. 3.2- Example: media on demand, unicast  Scenario… video server audio server media descr. web serverclient step 1: get description (in SDP format) step 2: open streams with RTSP step 3: play step 4: teardown C W A V
  • 22. Example… (cont’)  Another view client C web server W media servers A & V HTTP GET presentation description (sdp) SETUP PLAY RTP audio/video RTCP TEARDOWN
  • 24. What is RSVP  RSVP is a network control protocol that will allow Internet applications to obtain special qualities-of-service for their data flows.  This will generally require reserving resources along the data path(s).  RSVP is a component of the future "integrated services" Internet, which will provide both best-effort and real-time qualities of service  When an application in a host requests a specific QoS for its data stream, RSVP is used to deliver the request to each router along the path(s) of the data stream and to maintain router and host state to provide the requested service.  Although RSVP was developed for setting up resource reservations, it is easily adaptable to transport other kinds of network control information along data flow paths.
  • 25. Quality of Service  Marking  Queuing  Policing  Admission Control Diffserv: • Different classes of traffic marked appropriately (DSCP marking) • Queue accordingly
  • 26. Quality of Service  Marking  Queuing  Policing  Admission Control At the trust boundary: • per user, per interface • per flow (RSVP)
  • 27. Quality of Service  Marking  Queuing  Policing  Admission Control Is there over-subscription?: • of data (usually) • of voice (maybe – if yes – admission control is required – i.e. RSVP)
  • 28. Admission Control - RSVP  RSVP is used for signaling end to end (admission control based on bandwidth, QOS requirements)  Per-Flow policing is rarely done in the core/backbone Instead:  In the access: Per flow reservation state is maintained; Per flow policing  At the edge of the backbone: per flow policing, marking  In the backbone: Queuing based on marking (DSCP, MPLS – i.e. reservation state is not maintained)
  • 29. Quality of Service – Use of RSVP Access Access Backbone Diffserv Region Per flow policing DSCP marking Classify & schedule based on DSCP RSVP signalling Trust Boundary
  • 31. SoftSwitch and RSVP  Softswitch controls how RSVP is used while it controls call signaling i.e.:  Request reservations in both directions  Don’t ring the phone until I get confirmation that reservations have been obtained
  • 32. RSVP Basic Functionality  RSVP handles heterogeneous receivers.  Different hosts on the same multicast delivery tree may have different capabilities and therefore need different QoS.  RSVP adapts to changing group membership as well as changing routes.  For dynamic adaptability and robustness, RSVP maintains “soft state” in the routers. The only permanent state is in the end systems, which periodically send their RSVP control messages to refresh the router state. In the absence of refresh, RSVP state in routers will time out and be deleted.  RSVP is not a routing protocol.  The RSVP daemon consults the local routing protocol(s) to obtain routes. RSVP is designed to operate with existing and future unicast and multicast routing protocols. A host sends IGMP messages to join a multicast group, but it uses RSVP messages to reserve resources along the delivery path(s) from that group.
  • 33. RSVP Operational Principles  A QoS request from an application is passed to the local RSVP implementation (user daemon). RSVP passes the request to all the nodes along the reverse data path to the destination.  RSVP provides transparent operation through routers that do not support it.
  • 34. RSVP Operational Principles  At each node, RSVP applies a local decision procedure (admission control) to the QoS request.  If admission control succeeds, it sets the parameters to the Classifier and Packet Scheduler to obtain the desired QoS. If admission control fails at any node, RSVP returns an error indication to the application.  Each router in the path capable of resource reservation will pass incoming data packets to a Packet Classifier and then queue them in a Packet Scheduler.  The Packet Classifier determines the route and the QoS class for each packet. The Scheduler allocates a particular outgoing link for packet transmission.  For QoS-active link-layer media the packet scheduler is responsible for negotiation with the link layer to obtain the QoS requested by RSVP.  Mapping to the link layer QoS may be accomplished in a number of possible ways; the details will be medium-dependent. On a QoS- passive medium such as a leased line, the scheduler itself allocates packet transmission capacity. The scheduler may also allocate other system resources such as CPU time or buffers.
  • 35. RSVP Operational Principles  RSVP is designed to scale well for very large multicast groups. – RSVP uses "soft state" in the routers, i.e., RSVP sends periodic refresh messages to maintain the state along the reserved path; in absence of refreshes, the state will automatically time out and be deleted.  RSVP reserves resources for simplex data streams, i.e., it reserves resources in only one direction on a link – A sender is logically distinct from a receiver. However, the same application may act as both sender and receiver.  RSVP mechanisms provide a general facility for creating and maintaining distributed reservation state across a mesh of multicast delivery paths. – RSVP transfers reservation parameters as opaque data (except for certain well-defined operations on the data), which it simply passes to admission control and to the Packet Scheduler and Classifier for interpretation.
  • 36. RSVP Reservation Model  An elementary RSVP reservation request consists of a "flowspec" and a "filter spec"; this pair is called a "flow descriptor".  The flowspec specifies a desired QoS. It is used to set parameters to the node's packet scheduler, assuming that admission control succeeds.  The filter spec, together with a session specification, defines the set of data packets -- the "flow" -- to receive the QoS defined by the flowspec. Filter spec is used to set parameters in the packet classifier.  Data packets that are addressed to a particular session but do not match any of the filter specs for that session are handled as best-effort traffic.  Please, note “upstream” and “downstream” convention! Downstream Incoming interface Next hop Recvr Outgoing interface Upstream Previous hop Sender
  • 37. RSVP Reservation Model  The flowspec in a reservation request will generally include a service class and two sets of numeric parameters:  an "Rspec" (R for `reserve') that defines the desired QoS,  a "Tspec" (T for `traffic') that describes the data flow.  The formats and contents of Tspecs and Rspecs are determined by the integrated service model, and are generally opaque to RSVP.  Filter specs may select arbitrary subsets of the packets in a given session.  Subsets might be defined in terms of  senders (i.e., sender IP address and generalized source port),  a higher-level protocol  any fields in any protocol headers in the packet.  Example: filter specs might be used to select different subflows in a hierarchically-encoded signal by selecting on fields in an application- layer header.  Current RSVP software does not yet support this option.  Because the UDP/TCP port numbers are used for packet classification, each router must be able to examine these fields.
  • 38. RSVP Reservation Model  RSVP reservation request messages originate at receivers and are passed upstream towards the sender. At each intermediate node, two general actions are taken:  Make a reservation  The request is passed to admission control and policy control.  If either test fails, the reservation is rejected and RSVP returns an error message to the appropriate receiver.  If both succeed, the node uses the flowspec to set up the packet scheduler for the desired QoS and the filter spec to set the packet classifier to select the appropriate data packets.  Forward the request upstream  The reservation request is propagated upstream towards the appropriate senders. The set of sender hosts to which a given reservation request is propagated is called the "scope" of that request.  Forwarded reservation request may differ from the request that it received from downstream:  reservations for the same sender from different downstream branches of the tree are "merged" as reservations travel upstream; a node forwards upstream only the reservation request with the "maximum" flowspec.  reservation might be purposefully modified by traffic control.
  • 39. RSVP Protocol Mechanisms  RSVP Messages  Two basic RSVP message types: Resv and Path.  Each receiver host sends RSVP reservation request (Resv) messages upstream towards the senders.  Resv messages must follow exactly the reverse of the routes the data packets will use, upstream to all the sender hosts included in the sender selection.  Resv messages are delivered to the sender hosts themselves so that the hosts can set up appropriate traffic control parameters for the first hop.
  • 40. RSVP Protocol Mechanisms  RSVP Messages  Two basic RSVP message types: Resv and Path.  Each RSVP sender host transmits RSVP Path messages downstream along the uni-/multicast routes provided by the routing protocol(s), following the paths of the data.  Path messages store "path state" in each node along the way. This path state includes at least the unicast IP address of the previous hop node, which is used to route the Resv messages hop-by-hop in the reverse direction.