overview - indian institute of technology delhipkalra/siv864/pdf/hs-lec8.pdf · 2018. 9. 26. ·...
Post on 23-Aug-2020
12 Views
Preview:
TRANSCRIPT
Slide Special Module on Media Processing and Communication
http://www.cse.iitd.ac.in/~pkalra/sil864
Overview
• Review of last class • Protocol stack for multimedia services • Real-time transport protocol (RTP) • RTP control protocol (RTCP) • Real-time streaming protocol (RTSP) • SIP
Multimedia applications
Audio – Speech (CELP – type codecs) – Music (MP3, WAV, WMA, Real) Video (MPEG –1, 2, 4) Conferencing Streaming using HTTP/TCP (MP3), or RTP/UDP (Video).
3
Multimedia, Quality of Service: What is it?
Multimedia applications: Network audio and video (`continuous media’)
network provides application with level of performance needed for application to function.
QoS
4
Protocol stacks for media streaming
Internet
Compressed Video/Audio
IPv4, IPv6
UDP
RTP Layer
Data Plane Control Plane
RTCP Layer RTSP Layer
TCP
Multimedia protocol stack
MGCP/Megaco
TCP UDP
IPv4, IPv6
H.323 SDP
SIP
RTSP RSVP RTCP
RTP
H.261, MPEG
PPP AAL3/4 AAL5 PPP
Sonet ATM Ethernet V.34
Signaling Quality of Service
Reservation Measurement
Media Transport
network
link physical
Application daem
on kernel
Slide Special Module on Media Processing and Communication
http://www.cse.iitd.ac.in/~pkalra/sil864
Jitter (contd.)
Playback buffer At time 00:00:18
At time 00:00:28
At time 00:00:38
Slide Special Module on Media Processing and Communication
http://www.cse.iitd.ac.in/~pkalra/sil864
How does Sequence number and Timestamp help ?
Audio silence example:
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?
send
er
rece
iver
silence
Seq no.1, Tmpst 100 Seq no.2, Tmpst 200 Seq no.3, Tmpst 300
Seq no.4, Tmpst 600 Seq no.5, Tmpst 700
• Consider audio data – What should the sender do during silence?
• Not send anything
• Receiver cannot distinguish between loss and silence
Slide Special Module on Media Processing and Communication
http://www.cse.iitd.ac.in/~pkalra/sil864
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 – for jitter and delay calculation
– 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
RTP
Communicate choice of coding Timing for data Synchronize different streams Communicate loss information (UDP) Congestion avoidance (UDP) Frame Boundaries User identification (user@domain.com) Efficient for small audio packets
RTP Header
V=version, P=padding, X=extension, CC=contributing sources, M=marker bit for frame, PT=payload type, Timestamp for first byte, SSRC=Synchronization source - independence from Lower protocol, CSRC=Contributing Source -mixer
Slide Special Module on Media Processing and Communication
http://www.cse.iitd.ac.in/~pkalra/sil864
RTP Synchronization Source
q synchronization source - each source of RTP PDUs
q Identified by a unique,randomly chosen 32-bit ID (the SSRC)
q A host generating multiple streams within a single RTP must use a different SSRC per stream
RTCP
Real Time Transport Control Protocol Defines profile
– Information for interpreting RTP header Defines format
– How data following RTP header is interpreted Can adapt to new applications
Slide Special Module on Media Processing and Communication
http://www.cse.iitd.ac.in/~pkalra/sil864
RTCP message types
Typically, several RTCP PDUs of different types are transmitted in a single UDP PDU
Slide Special Module on Media Processing and Communication
http://www.cse.iitd.ac.in/~pkalra/sil864
… …
Last SR (LSR)
Extended Highest sequence Number Received
Interarrival Jitter
Cumulative Number of PDU Lost Fraction Lost
SSRC_1 (SSRC of the 1st Source)
Profile-Specific Extensions
SSRC_2 (SSRC of the 2nd Source)
Delay Since Last SR (DLSR)
SSRC of Sender Length (16 bits) PT=200/201 à SR/RR RC P V
Sender Info RTP Timestamp
Sender’s PDU Count
NTP Timestamp, most significant word
NTP Timestamp, least significant word
Sender’s Octet Count
Header
Report Block 1
Report Block 2
Sender/Receiver report PDUs
Signaling protocols
VoIP predominantly uses two: – SIP/SDP – H.323
Session initiation protocol (SIP)
Developed in mmusic Group in IETF – Proposed standard RFC2543, February 1999 – Work began 1995 – Part of Internet Multimedia Conferencing Suite (MBONE) Main Functions
– Invite users to sessions • Find the user’s current location, match with their capabilities and
preferences in order to deliver invitation • Carry opaque session descriptions
– Modification of sessions – Termination of sessions
SIP overview
SIP SDP
SIP SDP
RTP UDP
RTP UDP
LDAP
DNS RSVP RSVP
TRIP
PSTN gateway lookup Address lookup
Next-Hop May trigger
Sets up
SIP components
User Agent Client (UAC) – End systems – Send SIP requests
User Agent Server (UAS) – Listens for call requests – Prompts user or executes program to determine response
User Agent – UAC plus UAS
SIP components (cont.)
Redirect Server – Network server - redirects users to try other server
Proxy Server – Network server - a proxy request to another server can “fork”
request to multiple servers, creating a search tree
Registrar – Receives registrations regarding current user locations
SIP architecture
1
2 3
4 5
6 7
8
9
10 11
12
SIP Client
SIP Redirect Server
SIP Proxy SIP Proxy
SIP Client (User Agent Server)
Location Service
13
14
Request Response
Media
sip:alice@eecs.berkeley.edu
berkeley.edu
columbia.edu
sip.com
sales.sip.com
bob@mypc.sales.sip.com
Sip architecture (cont.)
SIP state-less proxies (near core of network) – used for re-direction SIP state-ful proxies (near periphery of network)
– Keeps track of state of call – Useful for billing/logging, authentication
Routing – Registration database, external database – TRIP
SIP architecture (cont.)
On Startup, SIP UA Sends REGISTER to Registrar
Registration Data Provides Addresses to Reach User
Registration Database Forms a Dynamic Routing Database of Users
Centralized Store is Desired for Scalability
SQL/LDAP/?
Proxy Farm
INVITE
DB
Registrar
SIP architecture (cont.) SIP INVITE Can Contain Phone Numbers
– sip:17325551212@domain.com – tel:17325551212
Do Not Correspond to Users on IP Network, but PSTN Terminals
Call Must Be Routed to Gateway
Gateways Often Arranged Through Peering
Which One to Use Based on Prefixes (Domestic = gw1, Europe = gw2)
Route Table is Mapping From Prefixes to Next Hop IP address/port/transport Plus URL Rewrite Rules
1-732 regional.com
1 longdistance.com
international.com
tel:19735551212 sip:19735551212@ longdistance.com
SIP architecture (cont.) Inter-domain Protocol for Gateway Route Exchange – Completed February 2000
TRIP (Telephone Routing over IP) Supports Various Models – Bilateral agreements – Centralized settlements provider End
Users
Gateways
Location Server
ISP A
TRIP
Front End
ISP B
SIP call flow example USER A USER B PROXY PROXY
INVITE 407 Proxy Authenticate
ACK
INVITE INVITE
INVITE
180 Ringing 100 Trying
100 Trying
180 Ringing 180 Ringing 200 OK
200 OK 200 OK
ACK ACK
ACK BOTH WAY RTP
BYE BYE
BYE 200 OK 200 OK
200 OK
Session Description Protocol (SDP)
Used to specify client capabilities
Example (client can support MPEG-1 video codec, and MP3 codecs)
Session Anouncement Protocol (SAP)
Originated around same time as SIP
Used to announce multimedia sessions – Announcement goes to users in a multicast group – Announcements can contain start time of session,
duration of session, etc.
H.323
May 1995 - H.323 work started
June 1996 - Decided by ITU-T
Designed for exchanging multimedia over IP networks (4 versions of H.323)
H.323 Components
Terminals Gatekeepers Gateways (H.323 to H.320/H.324/POTS) MCUs
– Multipoint Controller (MC) – Multipoint Processor (MP)
H.323 Gatekeeper
Address Translation – H.323 Alias to transport (IP) address based on terminal
registration – “email-like” names possible – “phone number like” names possible Admission control
– Permission to complete call – Can apply bandwidth limits – Method to control LAN traffic
H.323 Gatekeeper (cont.)
Management of gateway – H.320, H.324, POTS, etc. Call Signaling
– May route calls in order to provide supplementary services or to provide Multipoint Controller functionality
Call Management/Reporting/Logging
H.323 MCU
Media Distribution – Unicast - send media to one terminal (centralized in
MP; traditional model) – Multicast - send to each receiver directly – Hybrid - some of each Manage Ad Hoc multipoint calls
– Join, invite, control of conference modes Multiprotocol via Gateways
H.323 protocol stack
H.225.0 H.245
G.7xx H.26x
RTP
RTCP
Gate- keeper Reg, Adm, Status (RAS)
Control Data Audio Video A/V Cntl Control
TCP UDP
IP
T.120
H.323 protocol stack (cont.)
H.323 - System Document H.225.0 - Call Signaling, Packetization
– Gatekeeper Registration, Admission, and Status H.245 - Control (also used in H.324, H.310) T.120 - Data and Conference Control
H.323 example
A Call Setup Example
a point to point call
One Gatekeeper using the Direct Call Model
H.323 example (cont.)
PictureTel
PictureTel
PictureTel
(1) ARQ Can I call “Bob”?
(2a) GK resolves “Bob” to IP address through H.323 registration or external name service (e.g. DNS, ULS, etc..) (2b) Admission Policy Applied (3) ACF
Yes, use this IP Address
Bill Bob
GK
H.323 example (cont.)
PictureTel
PictureTel
PictureTel
(4) SETUP (Create)
Bill Bob
GK
(5) ARQ May I answer?
(6) ACF Yes
(7) ALERTING
(8) CONNECT (User answers)
H.323 example (cont.)
PictureTel
PictureTel
PictureTel
Bill Bob
(9) H.245 connection established
- Capability Exchange
- Open Logical Channels (audio, video)
top related