The H.323 protocol suite How works one of the protocol architectures for VoIP 1
Basic characteristics Standard for LAN communication Packet switched networks without guaranteed quality Extended to operate over a WAN Support for Audio (mandatory) Video Data (shared backboard, etc) 2
Components of H.323 specification 3
Multipoint Control Unit (MCU) Two components: Multipoint Controller (mandatory): it is used to negotiate common features Multipoint Processor (optional): stream mixing/switching, bandwidth adaptation,... It is used only in case of: Conference between 3 or more parties, with unicast transmission Conference between 3 or more parties in mixed mode, unicast and multicast 4
Zone Set of H.323 components managed by the same gatekeeper It requires at least one terminal It should not include more than 1 gatekeeper No fault-tolerance mechanisms allowed No assuption on the topology of the underlying network 5
Message format Messages encoded using ASN.1 It includes advanced features (byte ordering,...) Complex Difficult to encode/decode and to debug One of the major criticisms to H.323 6
Protocol architecture Audio Video Medium control Call control G.711 G.722 G.723 G.728 G.729 H.261 H.263 RTCP RAS Control H.225 Call Control H.225 Control H.245 Q.931 Dati T.120 RTP UDP TCP /UDP IP RAS: Registration, Admission and Status 7
Block diagram of an H.323 terminal User interface Covered by H.323 specifications Video hardware Audio hardware User data applications Video Codec H.261 H.263 Audio Codec G.711 G.722 G.724 G.728 G.729 Control system Receive Path Delay H.225 layer LAN interface H.245 controller User interface for the control system Call controller RAS controller 8
H.225 Main operations Creating and formatting logical channels Transmission and reception of control packets Sequence numbering Assigning a logical channel ID (0-65525) 0 reserved to H.245 Error detection and/or correction 9
RAS controller It is active only if a gatekeeper is present It uses H.225 messages Terminal registration Terminal admission Chyanges in the bandwidth (even when a call is in progress) Status control Closing procedure between terminal and gatekeeper RAS channel Open within H.225 Indipendent from H.245 signaling and control messages Open before any other channel Communication channel between user-agent and gatekeeper 10
Call controller It uses H.225 signaling It establishes a connection between 2 endpoints Activated after a RAS channel is open 11
H.245 controller End-to-end logical channel control Aims Terminal capacity Requesting operating modes General commands and information It is normally established between endpoint and gatekeeper (this acts like a proxy ) It may exist also directed to the endpoint One channel for each call Gatekeeper may have several open channels Physical implementation Separate channel Channel 0 within H.225 12
Gateway It is seen as an H.323 terminal in the IP network and as a telephone terminal in the PSTN It translates Data channels (e.g. G.729 / RTP in telephone sampling) Control channel (e.g. H.225 to H.221) Signaling procedures (e.g. H.245 to H.242) Usage Interface between different technologies Adaptation device in homogeneous networks (e.g. compression) Backup of the IP network over PSTN 13
Gatekeeper It is responsible of one zone It transaltes addresses, from alias H.323 address to a transport layer address Admission control, by means of RAS messages Management of the H.323 zone Optional functionalities Call authorization Bandwidth management E.g. by limiting the number of H.323 terminals connected Call control It keeps track of the terminal currently involved in a call 14
Addressing Need for a unique identifier Network address (IP address) TSAP identifier (Transport layer Service Access Point) It corresponds to a TCP/UDP port Well known: signaling channel, RAS channel Decided at run-time: data channels 15
Addressing: alias It is possible to have different forms name@domain.com E-164 phone numebr nickname... They are available only if a gatekeeper exists They are mapped onto an address/port pair 16
Main phases of an H.323 call Search for a gatekeeper Registration with the gatekeeper Call setup H.225 RAS H.225 RAS Q.931 modifed Only if a gatekeeper exists Negotiation of terminal functionalities H.245 Negotiation and opening of data channels H.245 Data transfer RTP Closing data channel H.245 Call tear down H.245 + H.225 RAS 17
Serch for and registration with a gatekeeper The client should select only 1 Gatekeeper, in case several responses are received This includes IP address, list of alias for the terminal, and a TTL field defining the validity of the registration Gatekeeper Request (GRQ), in multicast Gatekeeper Confirmation / Reject (GCF / GRJ) Registration Request (RRQ) Registration Confirmation / Reject (RCF / RRJ) Unregister Request (URQ) Unregister Confirmation / Reject (UCF / URJ) Alternatively: static configuration of the gatekeeper address The GCF may include a list alternative gatekeepers to be used in case of failure The gatekeeper may start the de-registration with URQ Gatekeeper Discovery IP address / port Gatekeeper Registration and Status port 224.0.1.41/1718 (UDP) 1719 (UDP) 18
Call admission and bandwidth change Request of authorizing the call and for a certain bandwidth Admission Request (ARQ) Admission Confirmation / Reject (ACF / ARJ) Modification of the bandwidth requested: allowed while the call is in progress Bandwidth Change Request (BRQ) Bandwidth Change Confirmation / Reject (BCF / BRJ) 19
Direct call, without gatekeeper (Q.931) Setup Call Proceeding Alerting Connect The request has been taken into consideration The user terminal is ringing It is possible to open a control channel with H.245 20 Optional, provided thatl Connect (oppure Release Complete) is received in 4 sec.
Gatekeeper Direct Endpoint (1) Admission Request (ARQ) Admission Confirmation / Reject (ARQ / ARJ) Setup Call Proceeding Admission Request (ARQ) Admission Confirmation / Reject (ARQ / ARJ) Alerting Connect 21
Gatekeeper Direct Endpoint (2) Segnalazione Segnalazione Call in progress Media Stream Canale di controllo RAS DRQ DRQ DCF/DRJ DCF/DRJ 22
Gatekeeper Routed Call Admission Request (ARQ) Admission Confirmation / Reject (ARQ / ARJ) Setup Setup Routed Call: media streams are sent end-toend Gatekeeper Proxy: even the media streams pass through the gatekeeper (not specified in the standard documents) Alert Connect Admission Request (ARQ) Admission Confirmation / Reject (ARQ / ARJ) Alert Connect 23
Routing control messages Two alternatives Direct channel between the endpoints It is sued in case of direct call Experimental in case of call through a Gatekeeper Channel directed to the Gatekeeper 24
beginning of the call Terminal Cability Set Terminal Cability Set Ack Terminal Cability Set Terminal Cability Set Ack Open Logical Channel Open Logical Channel Ack Open Logical Channel Open Logical Channel Ack H.245 messages 25
Call termination End Session Command End Session Command H.225 RAS Release Complete Bandwidth Change Request (BRQ) Bandwidth Change Confirmation (BCF) Bandwidth Change Request (BRQ) Bandwidth Change Confirmation (BCF) H.245 26
Conclusions Good initial diffusion Both in corporate and in telecom provider environments Mature implementations Complicated There is an ever growing interest in SIP 27