H.323 Ng Tai Hung
H.323
Ng Tai Hung
Internet Telephony 4-2
Introduction
We have learned IP, UDP, RTP
The set-up and tear-down of the sessions Signaling
In traditional telephony networks ISUP, Integrated Services Digital Network User
Part A component of the Signaling System 7 (SS7)
Internet Telephony 4-3
H.323, ITU-T recommendation The 1st version, 1996
Visual Telephone Systems and Equipment for Local Area Network which Provide A Non-Guaranteed Quality of Service
Version 2, 1998 Packet-based Multimedia Communications Systems Widely implemented in VoIP solutions
Version 4
Internet Telephony 4-4
The H.323 Architecture
Entities Terminals Gateways Gatekeepers MCUs
Protocols Parts of H.225.0 - RAS, Q.931 H.245 RTP/RTCP Audio/video codecs
Internet Telephony 4-5
H.323 Architecture
H.323 Network Architecture and Components
Internet Telephony 4-6
Internet Telephony 4-7
Terminals
Endpoint on a LAN Supports real-time, 2-way communications
with another H.323 entity Must support:
Voice - audio codecs Signaling and setup - Q.931, H.245, RAS
Optional support: Video Data
Internet Telephony 4-8
Internet Telephony 4-9
Gateways
Interface between the LAN and the switched circuit network
Mandatory Functions Transmission Format Translation Communication Procedure Translation Call Setup and Clearing On Both Sides
Optional Function Media Format Translation
Example: IP/PSTN gateway
Internet Telephony 4-10
Internet Telephony 4-11
Gatekeepers
Optional, but must perform certain functions if present e.g., Netmeeting does not use gatekeepers?
Manage a zone (a collection of H.323 devices)
Usually one gatekeeper per zone alternate gatekeeper might exist for backup
and load balancing Typically a software application
implemented on a PC, but can be integrated in a gateway or terminal
Internet Telephony 4-12
Mandatory functions: Address translation (routing) Admission control Minimal bandwidth control - request processing Zone management
Optional functions: Call control signaling - direct handling of Q.931
signaling between endpoints Call authorization, bandwidth management,
and call management using some policy Gatekeeper management information (MIB) Directory services
Internet Telephony 4-13
MCUs
MCU - Multipoint Control Unit Endpoint that supports conferences between 3
or more endpoints Can be stand-alone device or integrated into a
gateway, gatekeeper or terminal Typically consists of multi-point controller
(MC) and multi-point processor (MP) MC - handles control and signaling for
conference support MP - receives streams from endpoints,
processes them, and returns them to the endpoints in the conference
Internet Telephony 4-14
MC and MP
T1521250-96
MC
MC MC MP MC
MC
Gateway 1 MCU 1
LAN
MCU 2
Gatekeeper 1 Terminal 1 Terminal 2
NOTE – Gateway, Gatekeeper and MCU can be a single device.
Gatekeeper 2
Gateway 2 Gateway 3
Gatekeeper 3
MC MP
MC MP
Internet Telephony 4-15
MCU(MC+MP)
MCU(MC+MP)
TerminalTerminal TerminalTerminal TerminalTerminal
media stream (unicast)control message
Centralized Conference
MCU handles both signaling (MC) and stream processing (MP)
Internet Telephony 4-16
De-centralized Conference
MCU handles only signaling streams go directly between endpoints In this case MCU functions without MP
MCU(MC)
MCU(MC)
TerminalTerminal TerminalTerminal
media stream (multicast)control message
media stream (multicast)control message
media stream(multicast)
Internet Telephony 4-17
Hybrid Multipoint Conference
MCU(MC+MP)
MCU(MC+MP)
TerminalTerminal TerminalTerminal
video stream(multicast)
video stream(multicast)
video stream(multicast)
TerminalTerminal
control message
audio stream (unicast)
control messageaudio stream (unicast)
control messageaudio stream (unicast)
Internet Telephony 4-18
Mixed Multipoint Conference
TerminalTerminal
TerminalTerminal
TerminalTerminal
TerminalTerminal
TerminalTerminal
TerminalTerminal
MCU(MC+MP)
MCU(MC+MP)
multicast audio and video unicast audio and video
Decentralized side Centralized side
Internet Telephony 4-19
Overview of H.323 Singaling
Audio codecs (G.711, G.723.1, G.728, etc.) and video codecs (H.261, H.263)
Media streams transported on RTP/RTCP RTP carries actual media RTCP carries status and control information
RTP/RTCP carried unreliably on UDP Signaling is transported reliably over TCP
RAS - registration, admission, status (over UDP) Q.931 - call setup and termination H.245 - capabilities exchange
Internet Telephony 4-20
H.323 Protocol Stack
Internet Telephony 4-21
Overview of H.323 Protocols
H.225.0, a two-part protocol A variant of ITU-T recommendation Q.931, the
ISDN layer 3 spec. The set-up and tear-down of connections Call signaling or Q.931 signaling
RAS signaling Registration, Admissions, and Status Between endpoints and gatekeepers
Internet Telephony 4-22
H.245, control protocols Used between two or more endpoints Manage the media streams of a session
Capability exchange RAS, Q.931 and H.245
RAS to obtain permission from a gatekeeper RAS channel
Q.931 to establish communication and set up the call
Call-signaling channel H.245 to negotiate media parameters
H.245 control channel Media streams over logical channels
Internet Telephony 4-23
H.323 Addressing
An entity in the H.323 network A network address, an IP address URL, Uniform Resource Locator
E.g., ras://GK1@somedomain A port number appended RAS, a default port number = 1719
The TSAP, Transport Service Access Point An id for a particular logical channel at a given
entity GK UDP Discovery Port = 1718 GK UDP Reg and Status Port = 1719 Call-signaling TCP Port =1720
Internet Telephony 4-24
Terminal and gateways Have one or more aliases Can take any number of forms
Must be unique within a zone E.164 number
Codecs Video codec is optional
H.261 QCIF G.711 (A-law and -law) is mandatory
Internet Telephony 4-25
RAS Signaling
Used between a GK and endpoints in its zone Since a GK is optional
Defined in H.225.0 GK Discovery Registration Unregistration Admission Bandwidth Change Endpoint Location: GK (address translation) Disengage Status Resource Availability: GW → GK Non-standard
Internet Telephony 4-26
Gatekeeper Discovery
Find a suitably accommodating GK Several GKs, backup GK
GRQ – GK-request Known addresses, multicast 224.0.1.41:1718 GK id: if empty, soliciting GKs
GCF – GK-Confirm Optionally, indicating one or more GKs to try
I cannot help you, but try the GK next door Only one GK can be choosed
GRJ – GK-Reject With a reason (e.g., a lack of resource)
Internet Telephony 4-27
GK Discovery
Internet Telephony 4-28
Endpoint Reg and Reg Cancellation
To become controlled by a GK RegistrationRequest (RRQ)
RAS signaling port is 1719 Includes
An address for RAS messages An address for call-signaling messages An alias One or more redundant addresses and aliases Optional TTL, keepAlive parameters
RegistrationReject (RRJ) RegistrationConfirm (RCF)
May assign an alias
Internet Telephony 4-29
UnregistrationRequest (URQ)
Cancel registration By endpoints By GKs
UnregistrationConfirm (UCF) UnregistraionReject (URJ)
For an unregistered endpoint
Internet Telephony 4-30
Endpoint Location
Request a real address of an alias LocationRequest (LRQ)
To a GK or the GK discovery multicast address A GK can also send an LRQ
LocationConfirm (LCF) A call-signaling address An RAS signaling address
LocationReject (LRJ) The endpoint is not registered
Internet Telephony 4-31
Admission
Request permission from a GK to participate in a call
AdmissionRequest (ARQ) The type of the call (e.g., two-party or multi-party) The endpoint’s own id A call identifier (a unique string) A call-reference value (an integer) Information of the other party
Aliases Signaling address
Bandwidth (mandatory) TransportQOS: endpoint or GK to reserve the
resource
Internet Telephony 4-32
AdmissionConfirm (ACF) Many of the same parameters as ARQ
A firm order from the GK callModel
Optional in ARQ; mandtory in ACF The endpoint sends call signaling directly or via the GK
AdmissionReject (ARJ) With a reason
Bandwidth, address translation, unregistered endpoint
Internet Telephony 4-33
Direct call signaling
Internet Telephony 4-34
GK-routed call signaling
Internet Telephony 4-35
P regranted Admission to minimize call setup delay A GK provide an endpoint with admission in advance the RCF includes the parameter preGrantedARQ
Internet Telephony 4-36
Bandwidth Change
Request an increase or decrease in allocated bandwidth
Can change without request if within the limit in ACF BandwidthRequest (BRQ)
The new bandwidth, the call id BCF BRJ The GK can also request an endpoint to change
the bandwidth The endpoint must comply
Closely tied to H.245 signaling (for logical channels)
A reduction in bandwidth Require an existing logical channel to be closed and
reopened
Internet Telephony 4-37
An example bandwidth change
Internet Telephony 4-38
Status
A GK be informed of the status of an endpoint InformationRequestResponse (IRR)
Endpoint information The active call information
Call id, call reference value, call type, the bandwidth RTP session information (CNAME, RTP/RTCP address,
etc.)
IRQ or ACF with an irrFrequency parameter
willRespondToIRR parameter IACK INACK
An IRR message in error
Internet Telephony 4-39
Disengage
The end of the call DisengageRequest (DRQ)
Call id, call reference value, a disengage reason (e.g., normalDrop)
DCF DRJ
For an unregistered endpoint not a call party
The GK might issue DRQ to an endpoint The endpoint must
Close the session Respond to the GK with a DCF message
Internet Telephony 4-40
Resource Availability ResourceAvailableIndicate (RAI)
An gateway sends to a GK The available call capacity and bandwidth for each
protocol almostOutofResource parameter
RseourceAvailableConfirm (RAC)
Internet Telephony 4-41
Service Control SCI (ServiceControlIndication) SCR (ServiceControlResponse) to enable advanced features
Request in Progress RIP
A given request takes longer the the timeout period The expected delay and the reason After timeout, the RAS message can be retransmitted
Internet Telephony 4-42
Call Signaling
For the establishment and tear-down of calls Q.931 modified by rec. H.225.0
Reuse some messages with few modifications Specify a number of rules regarding the usage of
information elements defined in Q.931 E.g., no Transit Network Selection, … Certain Q.931 mandatory information forbidden or
optional A clever use of User-to-User information element
Convey all of the extra information needed in H.323 E.g., H.245 addresses to be used for logical channel
Internet Telephony 4-43
Setup The first call-signaling message Q.931 Protocol Discriminator A call reference Bearer Capability
RTP information, such as payload type A gateway needs to perform the mapping
User-to-User information element Mandatory: Call id, call type, conference id, the caller
information Optional: source alias, destination alias, H.245
address, destination call-signaling address
Internet Telephony 4-44
Call Proceeding Optional call-establishment procedures are underway Mandatory
Protocol discriminator, call reference, and message type, user-to-user
User-to-user: similar to the setup message
Alerting The called user is being alerted The same parameters as Call Proceeding
Internet Telephony 4-45
Progress sent by a called gateway the Cause information – in-band tones the User-to-User info. – same as Call-
Proceeding Connect
The called party has accepted the call Must be sent if the call is to be completed
Call Proceeding and Alerting are optional User-to-User information
The same as Call Proceeding Plus Conference Identifier
The same as Setup
Internet Telephony 4-46
Release Complete Terminate a call No Release message
In ISDN, Release and Release Complete Cause information element, optional
Otherwise, a Release reason in User-to-User
Facility (Q.932) A call should be redirected Also be used for supplementary services User-to-User contains reason parameter
E.g., routeCallToGatekeeper
Internet Telephony 4-47
Interaction between Call Signaling and H.245 Call signaling: call establishment and tear-
down H.245: the negotiation and establishment of
media streams When to begin the exchange of H.245
messages? Between the Setup and Connect messages Equipment dependent
Internet Telephony 4-48
Call Scenarios
Basic Call without GKs Reliable transport
Internet Telephony 4-49
Call with GKs and Direct-Endpoint Call Signaling
Internet Telephony 4-50
Gatekeeper routed/direct-endpoint call signaling
Internet Telephony 4-51
Gatekeeper-routed call signaling EP <-> GK <-> GK <-> EP ARJ with a cause code of
routeCallToGatekeeper A Facility with a reason indicating the call be
rerouted
Internet Telephony 4-52
Internet Telephony 4-53
Optional called-endpoint signaling
Internet Telephony 4-54
H.245 Control Signaling
To establish and control media streams Agree on the media formats and bandwidth Multiplexing multiple media streams No actual media A generic protocol for the control of media
streams How it works in an H.323?
Internet Telephony 4-55
H.245 Message Groupings
Requests Require the recipient to perform some action and
response Response
In reply to Requests Commands
Require the recipient to perform some action, but no response is necessary
Indications Of an informational nature only
Internet Telephony 4-56
The Concept of Logical Channels
A Logical channel A unidirectional media path An IP address and port number Has a number
A two-party conversation Two logical channels exist Potentially in different formats Or a bidirectional channel consists of two logical channels
An endpoint issues Open Logical Channel Logical channel number and media information (RTP payload
type) Far endpoint responds with Open Logical Channel Ack
An RTP port Messages over H.245 Control Channel (channel number 0)
Permanently open
Internet Telephony 4-57
H.245 Procedures
Capabilities Exchange Share information regarding receive and
transmit capabilities Indicate a preference TerminalCabilitySet message
A request message A sequence number plus the types of audio and
video formats TerminalCapabilitySetAck
Empty with a sequence number TerminalCapabilitySetReject
With a reason for rejection
Internet Telephony 4-58
TerminalCapabilitySetRelease If no response within a timeout period
SendTerminalCapabilitySet Request terminal Capability information Request to indicate all of its capabilities Or request confirmation about specific capabilities A command message that is replied
Internet Telephony 4-59
Master-Slave Determination
One of the endpoints needs to be the master Of particular importance for the setup of a multi-
party conference Compare two pieces of information at each
entity A terminal type value
A terminal without an MC: 50 A gateway without an MC: 60 An MCU for audio, vedio: 190 An MCU managing a conference: 240 (the highest)
A random number (1..16,777,215) Master-Slave Determination message Master-Slave Determination Ack
A “master” or “slave” indication
Internet Telephony 4-60
Establishing and Releasing Media Streams For media exchange
Internet Telephony 4-61
Open Unidirectional Logical Channel
Internet Telephony 4-62
Open Bidirectional Logicl Channels
Internet Telephony 4-63
Closing Logic Channels and Ending a session CloseLogicalChannel, CloseLogicalChannelAck Only the initiator can issue Or the receiving end can humbly request A bidirectional channel can be closed by either
end Once all logical channels are closed
EndSession, EndSession commands
Internet Telephony 4-64
Close a Logical Channel
Internet Telephony 4-65
A Slow Start
PlusCapability exchangeMaster-slave determination
Internet Telephony 4-66
Fast-connect Procedure
The Setup A faststart element
OpenLogicalChannel requests
No H.245 control channel
Internet Telephony 4-67
H.245 Message Encapsulation is encapsulated with Q.931 messages Set the element h245Tunneling true in the first
Q.931 message The h245Control element contains the
encapsulated data Conflict with the faststart element Use Facility
when no Q.931 message can be used to start a separate H.245 control channel
Internet Telephony 4-68
Conference Calls
MC manage multi-point conference A Pre-Arranged Conference
Establish a call with the MCU The MCU specifies the conference mode
Communication Mode command (H.245) Specify all the sessions in the conference The transmit requirements of each endpoint, not the
receive requirements
Internet Telephony 4-69
An Ad-Hoc Conference
Expand an existing two-party call One the the endpoints must contain an MC
Internet Telephony 4-70
New Features in H.323 Version 2
H.235 - security and authentication, i.e. passwords for registration with gatekeeper
H.450.x - supplementary services such as call transfer and forwarding
Fast call setup: Bypasses some setup messages Triggered by Q.931 Fast Start message that
contains basic capabilities
Internet Telephony 4-71
New Features in H.323 Version 2 (cont.) Mechanism to specify alternative gatekeepers to
endpoints Gatekeeper can request forwarding of Q.931
information on direct routed calls; only RADCOM can play back H.323 streams off a network: a true differentiation
Smoother integration of T.120 (optional standard for data)
T.120 channel opened like any H.323 channel
Internet Telephony 4-72
T.120 Data Channel
Defined in T.120 A Channel Between Endpoints A Reliable Channel Functions
Transport Data Multipoint Delivery Internetworking
PSTN, ISDN LAN (TCP/IP, IPX)
Internet Telephony 4-73
The Future of H.323
Inter-Gatekeeper Communication: Current H.323 standards do not provide an
inter-zone model that scales well for large networks
Inter-gatekeeper protocols being discussed to enable gatekeepers to efficiently locate one another to route calls to non-local address
Hierarchical arrangements with “clearing house” gatekeepers have been proposed
This is critical for widespread interoperability between VoIP service providers
Internet Telephony 4-74
H.323 Version 3
Modest improvements to H.323 version 2 Maintaining and Reusing Connections Conference out of Consultation Caller ID Language Preference Usage of Annex E/H.323 Remote Device Control Generic Capabilities Annex G/H.225.0 - Communication
between Administrative Domains
Internet Telephony 4-75
Annex E/H.323 - Protocol for Multiplexed Call Signaling Transport
Annex F/H.323 - Simple Endpoint Type H.341 - H.323 Series MIB Supplementary Services
Internet Telephony 4-76
H.323 Version 4
Many new enhancements Gateway Decomposition Multiplexed Stream Transmission Supplementary Services Annex K/H.323 Annex L/H.323 H.450.8 - Name Identification Service H.450.9 - Call Completion H.450.10 - Call Offer H.450.11 - Call Intrusion
Internet Telephony 4-77
Additive Registrations Alternate Gatekeepers Usage Information Reporting Endpoint Capacity Caller Identification Service Tones and Announcements Mapping Aliases Indicating Desired Protocols Bandwidth Management Reporting Call Status
Internet Telephony 4-78
Enhancements to Annex D (Real-Time Fax) Call Linkage Tunneling QoS H.245 in Parallel with Fast Connect Generic Extensibility Framework H.323 URL Call Credit-Related Capabilities DTMF Relay via RTP
Internet Telephony 4-79
The Decomposed Gateway
Media gateway Media gateway controller