H.323
Chapter 4
4-2Internet Telephony
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)
4-3Internet Telephony
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
4-4Internet Telephony
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
4-5Internet Telephony
H.323 Architecture
H.323 Network Architecture and Components
4-6Internet Telephony
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
4-7Internet Telephony
4-8Internet Telephony
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
4-9Internet Telephony
4-10Internet Telephony
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
4-11Internet Telephony
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
4-12Internet Telephony
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
4-13Internet Telephony
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
4-14Internet Telephony
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)
4-15Internet Telephony
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)
4-16Internet Telephony
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)
4-17Internet Telephony
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
4-18Internet Telephony
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
4-19Internet Telephony
H.323 Protocol Stack
4-20Internet Telephony
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
4-21Internet Telephony
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
4-22Internet Telephony
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
4-23Internet Telephony
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
4-24Internet Telephony
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 G.711 (A-law and mu-law) is mandatory
4-25Internet Telephony
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
4-26Internet Telephony
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)
4-27Internet Telephony
GK Discovery
4-28Internet Telephony
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
4-29Internet Telephony
UnregistrationRequest (URQ)
Cancel registration By endpoints By GKs
UnregistrationConfirm (UCF) UnregistraionReject (URJ)
For an unregistered endpoint
4-30Internet Telephony
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
4-31Internet Telephony
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
4-32Internet Telephony
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
4-33Internet Telephony
Direct call signaling
4-34Internet Telephony
GK-routed call signaling
4-35Internet Telephony
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
4-36Internet Telephony
An example bandwidth change
4-37Internet Telephony
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
4-38Internet Telephony
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
4-39Internet Telephony
Resource Availability ResourceAvailableIndicate (RAI)
An gateway sends to a GK The available call capacity and bandwidth for each
protocol almostOutofResource parameter
RseourceAvailableConfirm (RAC) 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
4-40Internet Telephony
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
4-41Internet Telephony
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
4-42Internet Telephony
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
4-43Internet Telephony
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
4-44Internet Telephony
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
4-45Internet Telephony
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
4-46Internet Telephony
Call Scenarios
Basic Call without GKs Reliable transport
4-47Internet Telephony
Call with GKs and Direct-Endpoint Call Signaling
4-48Internet Telephony
Gatekeeper routed/direct-endpoint call signaling
4-49Internet Telephony
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
4-50Internet Telephony
4-51Internet Telephony
Optional called-endpoint signaling
4-52Internet Telephony
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?
4-53Internet Telephony
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
4-54Internet Telephony
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
4-55Internet Telephony
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
4-56Internet Telephony
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
4-57Internet Telephony
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
4-58Internet Telephony
Establishing and Releasing Media Streams For media exchange
4-59Internet Telephony
Open Unidirectional Logical Channel
4-60Internet Telephony
Open Bidirectional Logicl Channels Fig. 4-15
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
4-61Internet Telephony
Close a Logical Channel
4-62Internet Telephony
A Slow Start
PlusCapability exchangeMaster-slave determination
4-63Internet Telephony
Fast-connect Procedure
The Setup A faststart element
OpenLogicalChannel requests
No H.245 control channel
4-64Internet Telephony
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
4-65Internet Telephony
An Ad-Hoc Conference
Expand an existing two-party call One the the endpoints must contain an MC
4-66Internet Telephony
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
4-67Internet Telephony
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
4-68Internet Telephony
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)
4-69Internet Telephony
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
4-70Internet Telephony
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
4-71Internet Telephony
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
4-72Internet Telephony
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
4-73Internet Telephony
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
4-74Internet Telephony
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