14 Signalling PDF
14 Signalling PDF
Mark Handley
H.323
ITU protocol suite for audio/video conferencing over “networks that do
not provide guaranteed quality of service”.
H.225.0 layer
Source: microsoft.com
1
H.323 stack
H.323 User Interface
Multimedia Applications,
Data
Media Control Terminal Control and Management
Applications
Audio Video
Codecs Codecs
G.711 H.261
G.723.1 H.263
G.729 H.264 H.225.0
.. .. H.225.0
V.150 T.120 T.38 RTCP Call H.245
RAS
Signaling
RTP
IP
Source: packetizer.com
2
H.323 System Components
Terminal
videophone, MS netmeeting software, etc
Gateway
Gatekeeper
MCU (multipoint control unit).
Gateways
Optional element in an H.323 conference.
Not usually needed for pure H.323 to H.323 calls.
Principle role is translation function between H.323
conferencing endpoints and other terminal types. Eg:
Establishing links with analog PSTN terminals.
Establishing links with remote H.320-compliant terminals
over ISDN-based switched-circuit networks.
Establishing links with remote H.324-compliant terminals
over PSTN networks.
3
Gatekeepers
Optional component used for admission control and
address resolution. Acts as the central point for all calls
within its zone and provides call control services to
registered endpoints.
May allow calls to be placed directly between endpoints
May route the call signaling through itself to perform
functions such as follow-me/find-me, forward on busy,
etc. Service providers can also use this to bill for calls
placed through their network.
Can be used to limit the total conferencing bandwidth to
some fraction of the total available.
MCU contains:
Multipoint Controller (MC) that manages
MCU
the call signaling, and handles H.245
negotiations between all terminals to
determine common capabilities for A/V
processing.
Multipoint Processors (MPs) to handle
audio and video mixing, switching, or other centralised
4
High level call flow
3. Collect replies to
previous query
4. Grant GK GK 7. Grant
permission to 2. Try to resolve the address permission
place call of the called party
6. Request
1. Request permission to
Permission to accept call
place call 5. Attempt to establish
the call
GW GW
8. Indicate connection
establishment
5
H.323 Usage
Microsoft NetMeeting (obsolete)
Lots of commercial videoconferencing equipment
Eg: Polycom
Some IP phones (including some of Cisco’s)
6
Session Description Protocol (SDP)
SDP is a standard way to describe multimedia sessions.
These descriptions can then be used in different contexts:
Session Announcements using SAP
Session Invitations using SIP
RTSP stream descriptions
H.332 announcements
PINT (PSTN/Internet IN feature mapping)
Advanced Television Enhancement Forum (!)
SDP was really only designed for SAP - the other uses stretch it a
little beyond its design space.
Sometimes this shows.
SDP
7
SDP
encryption keys
SDP: Example
8
SIP: Session Initiation Protocol
Original spec:
RFC 2543
Updated specs:
RFC 3261 (main spec)
RFC 3262 (provisional response reliability)
RFC 3263 (locating SIP servers)
RFC 3264 (offer/answer use of SDP)
RFC 3265 (specific event notification)
9
SIP: Aims
In the Internet, heterogeneity is key. Uniform distributed directories such as X500 have
failed to be deployed.
Lookup during call routing allows heterogeneity of user-location mechanisms.
Improved security.
10
SIP: Relaying a Call
SIP: Redirecting
a Call
11
SIP Proxies
SIP proxies can use any reasonable search algorithm
Send requests in parallel
Send requests sequentially
Normally only a proxy close to the callee can decide on an
appropriate search strategy.
SIP specifies only the rules that proxies must use to combine
responses when multiple requests are made in parallel.
12
SIP: User Location Servers
SIP doesn't need a separate user location server in many
circumstances:
13
SIP Syntax
SIP is a text based protocol, similar in syntax to HTTP and
RTSP.
Messages can be conveyed over UDP or TCP.
SIP provides its own reliability over UDP.
UDP is prefered - it gives more control over message
timing, and requires less state in proxies.
TCP is allowed for legacy firewall traversal but in time
we hope firewalls themselves will support SIP.
Typically SIP carries an SDP session description as a
payload to describe the session being initiated.
14
SIP Response (sent to east.isi.edu)
SIP/2.0 200 OK
Via: SIP/2.0/UDP isi.edu Via field for east removed already
Via: SIP/2.0/UDP chopin.cs.caltech.edu
To: sip:[email protected] Refers to request "to", "from"
From: sip:[email protected] not message to and from.
Location: sip:[email protected];tag=76fa98c80aba81
CSeq: 1
Content-Type: application/sdp
Content-Length: 214
v=0
o=eve 987329833 983264598 IN IP4 128.32.83.24
s=Quick Call
...
SIP Usage
Almost all IP phones
Microsoft Windows
Messenger
Apple iChatAV
AT&T, MCI VoIP service
Sprint PCS cellphone
(walkie-talkie service)
3G cellular: IP Multimedia
Call Control
many more...
15
RTSP: Real-Time Stream (Control) Protocol
RTSP functionality
16
RTSP example
Client to HTTP Server:
GET /twister.sdp HTTP/1.1
Host: www.example.com
Accept: application/sdp
RTSP example
Client to Audio Server:
SETUP rtsp://audio.example.com/twister/audio.en RTSP/1.0
CSeq: 1
Transport: RTP/AVP/UDP;unicast;client_port=3056-3057
17
RTSP example
Client to Video Server:
SETUP rtsp://video.example.com/twister/video RTSP/1.0
CSeq: 1
Transport: RTP/AVP/UDP;unicast;client_port=3058-3059
RTSP example
Client to Video Server:
PLAY rtsp://video.example.com/twister/video RTSP/1.0
CSeq: 2
Session: 23456789
Range: smpte=0:10:00-
18
RTSP example
Client to Audio Server:
TEARDOWN rtsp://audio.example.com/twister/audio.en RTSP/1.0
CSeq: 3
Session: 12345678
RTSP Usage
RealPlayer (and Helix open-source version)
Microsoft Windows Media 9, 10
Also supports Microsoft’s proprietary mms to talk to
older clients.
Apple Quicktime Player
3G cellular video streaming.
19
References
ITU-T Recommendation H.323 “Packet-based multimedia
communications systems” http://www.itu.int
20