You are here: CSP Developers Guide: Internet Protocol > 9 H.323 Software > Software Overview

Software Overview

VoIP Gateway

The H.323 VoIP Gateway complies with H.323 Version 2.0, and therefore supports all gateway Registration, Admission, and Status (RAS) functions.

The H.323 VoIP Gateway provides an interface between the PSTN and IP network for voice calls. IP-to-IP calls are also supported on the gateway. The H.323 stack is implemented on the specially-configured IP Signaling Series 3 card. The IP Signaling Series 3 card has a special software load that includes IP Signaling interface support and the H.323 stack.

Carrier-Class Voice Quality

Assuming adequate network conditions, the CSP delivers carrier-class voice quality over H.323.

End-To-End Solution

The CSP H.323 offering on the CSP provides both signaling and media capability, so application developers do not need to add these features separately. The H.323 signaling is provided by the IP Signaling Series 3 card and media is provided by the VDAC-ONE or IP Network Interface Series 2 card.

Seamless PSTN-IP Signaling Interworking: SIP/H.323/SS7/ISDN

This H.323 implementation uses Universal Protocol Data Format (UPDF) to provide seamless protocol interworking, with no need for protocol-specific messages. This interworking includes calls from PSTN-to-PSTN, IP-to-IP, PSTN-to-IP, and IP-to-PSTN.

User Input Indication Message

The User Input Indication (UII) message is available in the CSP to transmit inputs from the user interface to the receiver. The inputs could be a button that the user presses on the PSTN side of the call such as a DTMF keypad or hookswitch information. The UII message transmits the hookflash and DTMF signal information on the IP side of the call.

Hookflash Relay

The hookflash is a common input indicating a brief on-hook condition that occurs during a call. For example, during a call, the phone user quickly depresses and then releases the hook on their telephone. It is not long enough in duration to be interpreted as a signal to disconnect the call; however, telephone switches and PBXs are frequently programmed to intercept hookflash indications and use them to allow a user to invoke supplemental services. For example, your local service provider may allow users to enter a hookflash to switch between calls if the user subscribes to a call waiting service.

To enable the CSP to transmit the PPL Event Indication message to the host, you must set Configuration Byte 1 for PPL Component L3P H.225 (0xA1) to 0x01. To disable, set the configuration byte to 0x00.

See the following PPL Component in this chapter.

PPL Component for H.225 - 0x00A1

The following data ICBs support the User Input Indication message. See the following in the ICB Chapter in the API Reference:

0x5B IP Signaling Series 3 Card ID

0x5C H.323 Hookflash Received (no data)

0x5D H.323 DTMF Signal Input Received

0x5E H.323 Signal Update Input Received

0x5F H.323 Alphanumeric Input Received

0x62 Remote Endpoints UII Capabilities

Alias Addressing

The CSP supports multiple alias addresses such as E.164, H.323Id, URL, and e-mail for the IP Signaling Series 3 card and remote H.323 endpoints.

The following TLVs support alias addressing:

0x02C1 Vendor ID

0x02C4 Gateway E164

0x02C6 Gateway URL ID

0x02C7 Gateway E-mail ID

0x27C4 Source IP

0x27C5 Source Port

0x27D8 Source H.323 ID

0x27D9 Source URL

0x27DA Source E-mail

0x27DC Remote H.323 ID

0x27DD Remote URL

0x27DE Remote E-mail

Gatekeeper Support

The CSP interfaces to gatekeepers from leading companies. This feature requires the CSP to send a gateway technology prefix in the registration request (RRQ). Use this prefix to configure the gateway's routing table or database in the gatekeeper. Include the TLV below in the VoIP Protocol Configure message to create and send the prefix.

0x02D3 Gateway Technology Prefix

Supported Specifications

In this CSP H.323 implementation, the following specifications are supported:

H.225.0 (RAS, Q.931, RTP/RTCP)

H.245 and audio codecs

RTP Streams

The VDAC-ONE or IP Network Interface Series 2 card provides the RTP stream for the H.323 call.

The H.323 software gets the RTP Payload Type and Payload size from the Route Table or Route Control message. If the type and size are not specified in either of those, the H.323 software uses the defaults.

Call Progress and Alerting Messages

The Progress message is an optional Q.931 call setup message. It can be sent by an H.323 gateway to indicate the progress of a call when interworking with a Switched Circuit Network (SCN). This message can also be sent by an H.323 endpoint before the Connect message is sent, depending on the supplementary service interaction.

On an H.323 call, Call Alerting and Progress messages can contain a Progress Indicator Information Element (IE) to describe an event that occurred during the life of the call. The CSP will establish a voice path when required.

The CSP does the following:

Processes an optional Progress message on an outgoing call.

Determines if the Q.931 Progress Indicator IE is present in the Alerting or Progress messages on a call.

Sends a PPL event indication to the host when the CSP receives an Alerting or Progress message. A message is sent to the
VDAC-ONE (or IP Network Interface Series 2) card to establish the voice path.

Receives a PPL Event Request of Alerting or Progress from the host with the progress indicator.

Transmits a Progress message to network.

Transmits the appropriate Release Complete Reason in Release Complete message to the network. The Release Cause Codes are listed in the Release Cause Code TLV (0x27E3) in the Tag Length Value Blocks chapter in the API Reference.

This functionality works in gateway or normal (non-gateway) mode.

Dual Ethernet Port

You can configure the second Ethernet port on the
IP Signaling Series 3 card to separate the H.323 signaling traffic from the host control traffic. Dialogic recommends having the host-to-CSP traffic carried on Ethernet port A and the H.323 signaling traffic carried on the Ethernet port B.

The BOOTP server is required to configure Ethernet port B.

The additional information is carried in the vendor specific area of the BOOTP response. You modify the BOOTP configuration to include new entries to carry the IP Address, Gateway IP Address, and Subnet Mask for the second physical Ethernet port.

Configuring the second Ethernet port is optional but if you enter an IP Address for Ethernet port B you must enter an associated Subnet Mask.

Important! Although a gateway IP Address may be configured for both Port A and Port B, only one is utilized. If two gateway IP addresses are configured, one for Port A and one for Port B the one specified for Port A will be used. Therefore, Dialogic recommends that you configure only one gateway IP Address and that it be on Port B.

If you do not configure the second ethernet port, it is internally set to the same values configured for the first ethernet port.

For the associated procedure, refer to Configuring Dual Ethernet Ports on IP Signaling Card in the Application Development chapter in the Developer Guide: Overview.

Codec List in H.323-Initiated Offers

The CSP can send a list of up to five supported codecs in an H.323 offer to an endpoint when establishing a media session. The receiving endpoint selects one codec from that list and reports the selection back in the answer message to the CSP.

The following applies to this feature:

The codec list is applicable for calls that use SIP or H.323 signaling and is not for clear-channel VoIP calls. For SIP signaling refer to Host Control Method of SIP 180 Provisional Response Generation.

The IP Network Interface card must use Profile 2.

The VDAC-ONE card must use Profile 0.

Without this feature, the call might not get established because the CSP could include a codec type that endpoint will not accept.

The figure below provides an overview of this process.

Figure 9-1 Codec List in Offer

Outseize Control messages

The host application provides the codec list and sends the list in the Outseize Control message as shown in Host Provides Codec List:

Figure 9-2 Host Provides Codec List

TLVs Used

Use the following TLVs in the Outseize Control message to include the codec types:

0x29FF - Local End-Point Media Info

0x2A0E - Media Connection Address

0x2A01 - Per Media Stream Information

0x2A03 - Media Type

0x2A07 - Media Port

0x2A02 - Per Codec Info

The Outseize Control Message Trace shows how to use these TLVs in the Outseize Control message. Note that the Outseize Control message cannot exceed 260 bytes.

Important! DO NOT use the following TLVs for these codec types:

0x0100 - RTP Payload Type

0x0101 - RTP Payload Size

0x27B0 - RTP Payload Type

0x27B1 - RTP Payload Size

Outseize Control Message Trace

The following trace for the Outseize Control message shows the nested TLVs containing the codec information.

H.323 Host Control Direct and Gatekeeper Routed Calls

The H.323 protocol resident in the IP Signaling Series 3 card enables the CSP (gateway) to communicate with other H.323 gateways and gatekeepers in the call server network architecture.

Prior to this feature, the Gateway (CSP) supported either gateway (direct calls) or gatekeeper routed calls at any one time. When the Gateway (CSP) was registered with a gatekeeper it would process all the calls as Gatekeeper routed calls.

If the CSP is registered with a Gatekeeper, the CSP may send an ARQ (Admission Request) message to the Gatekeeper to request information about a remote endpoint. If the CSP chooses to send an ARQ to the gatekeeper, when the gatekeeper responds with the ACF (Access Confirmed), the response will determine if the CSP sends the call to the gatekeeper or directly to the remote endpoint.

Direct Routed

If the remote endpoint IP address TLV 0x27C2 is included in the Route Control/Outseize message, then the CSP will send the call to the remote endpoint IP address that is specified in the TLV 0x27C2. The CSP will not send the ARQ to the gatekeeper.

Gatekeeper Routed

If the remote endpoint IP Address TLV 0x27C2 is omitted from the Route Control or Outseize Control message, then the CSP sends the ARQ message to the Gatekeeper. When the ACF is returned, the CSP looks in the message to determine where to send the call. The CSP will send the call either to the remote endpoint IP address provided by the gatekeeper or to the gatekeeper as specified in the ACF message.

The end result is the CSP does not actually modify the gatekeepers behavior. The CSP acts differently based upon data included in the Route Control/ Outseize Control message.

Invoking

To invoke this feature use the Route Control (0x00E8) message with the Remote End Signaling IP Address (Q.931) (0x 27C2) TLV. This TLV provides the remote endpoint IP address for the call. This TLV will be used for each call to determine whether the ARQ and ACF message exchanged is implemented for that call.

Important! The Remote End Signaling Port (Q.931) (0x27C3) TLV specifies the remote signaling port. The defaults are: port number 1719 for gatekeeper routed calls and port number 1720 for gateway routed calls. This TLV is only necessary when using non-standard values.

H.245 Tunneling

The H.245 is a control signaling protocol in the H.323 multimedia communication architecture used to exchange end-to-end H.245 messages such as:

master/slave determination

capability exchange

logical channel procedures

This configurable CSP H.245 Tunneling feature permits the encapsulation of H.245 messages within H.225 message between H.323 endpoints.

Enabling

To enable H.245 Tunneling for the IP Signaling card, use the H.245 Tunneling Configure TLV (0x02D5) in the VoIP Protocol Configure message (0x00EE). Refer to the TLV chapter in the API Reference.

Inbound and Outbound calls

The IP Signaling cards can then accept incoming calls with H.245 tunneling. With this feature enabled on the IP Signaling card, H.245 tunneling can be used on a per outbound call basis by using the H.245 Outbound Tunneling TLV (0x27E4) in Route Control or Outseize Control messages.

Note that if tunneling is not enabled on the IP Signaling card using the H.245 Tunneling Configure TLV (0x02D5) in the VoIP Protocol Configure message, then the CSP cannot offer outbound tunneling calls.

Configuring with CSA

Refer to the Configuring H.323 in the Converged Services Administrator Users Guide.

H.323 Digit Collection

The H.323 Digit Collection feature enables you to collect Dual Tone Multi-Frequency (DTMF) digits using the H.323 protocol in the CSP. DTMF digits can be received and sent by the H323 protocol and can be sent in-band or out-of-band. The DTMF digits, routed to Layer 4 Dialing Plan (L4 DP) using the IP network, are either in signaling or in Real Time Protocol (RTP) format. These digits are decoded for the customer as part of their dialing plan.

When this feature is disabled, the DTMF digits are internally propagated and bypassed directly to the PSTN side using the DSP Service Request message. The customer is unable to initiate the collecting of digits.

Instead of bypassing the direct propagation of digits to the PSTN side, the configuration bytes listed below provide enhanced digit routing in order to support digit collection. These configuration bytes support both signal and alphanumeric type applications.

In-Band and Out-of-Band Methods for Routing Digits

The following in-band or out-of-band methods are used for routing digits using the H.323 protocol.

In-Band

In-Band DTMF:
The DTMF digit collection is provided by the IP Network Interface Series 2 and DSP Series 2 cards and then sent to L4.

In-Band RFC 2833:
RFC 2833 digit collection is provided by the IP Network Interface Series 2 and DSP Series 2 cards and then sent to L4.

Out-of-Band

User Input Indication (UII):
UII digits are sent out-of-band using the H.323 protocol. Digits can be sent as a H.245 signal, signal update or alphanumeric.

Keypad Information Elements (IE):
Allows the H.323 stack to pass the digits collected through the Keypad IE to L4.

PPL Components and Configuration Bytes

The PPL components listed below provide the configuration bytes required for H.323 Digit Collection.

PPL Component for H.225 (0x00A1)

Enable Digit Routing to L4 CH Received in Keypad IE (0x04)

This configuration byte allows the H.323 stack to pass the digits collected through Keypad IE to L4.

PPL Component for L3P H.245 (0x00A2)

Enable Digit Routing to L4 Channel Component (CH) Received in UII (0x06)

This configuration byte allows the H.323 stack to pass the digits collected through UII to L4.

UII Digit Routing

The H.323 Stack passes UII digits to Layer 4 (L4)

The Digit Routing to L4 CH Received in UII (0x06) configuration byte sends a Tone Control (TC_Digit) request to L4, so that the digits will be collected in the L4 Dialing Plan (DP).

The DTMF signal is received in the H.323 in two parts.

The Signal message will be received as digits either as the default duration or actual duration.

The optional Signal Update message follows the Signal message to specify the override default duration. The Signal Update message is currently handled in H.323 as a Signal Update event in the H.245 PPL.

When this feature is enabled and the Signal Update message is received the Signal message is ignored.

Keypad IE Digit Routing

The CSP routes digits from Keypad IE to Layer 4 (L4)

Currently, the H.323 software does not sense the Keypad IE information when it arrives in the H.225 Information message. This feature provides that the H.225 Information message will be decoded in the H.323 stack. When the message includes a Keypad IE it will be extracted for the digits.

The Enable Digit Routing to L4 CH Received in Keypad IE (0x04) configuration byte allows the H.323 stack to pass the digits collected through the Keypad IE to L4. The Keypad IE information will be extracted and stored if it is available in the message. The digits are decoded in the IE that is being sent and propagated to L4 as if the DSP has received a digit. This in turn will be routed to L4DP.

The H.225 Information message is managed by the H.225 PPL Atomic Function AF 94 which provides for digit processing and routing the digits to L4.

RFC 2833 Digit Routing

The CSP routes digits coming from RFC 2833 to L4

The RFC 2833 is an IETF standard used to transmit digits over VoIP networks such as H.323. This is an In-band method of sending digits within the Real Time Protocol (RTP).

To use RFC 2833, the The IP Network Interface Series 2 card, VoIP modules need to be configured. This VoIP profile can be enabled for the RFC 2833 in the host. The IPCS card queries each VoIP module once, when the first call is sent. This information is stored in H.323 software database for further reference. The H.323 stack will be allowed to route digits from the RFC 2833 to L4.

The Resource Attribute Query (0x00E4) message queries the database using the following TLVs:

RFC 2833 Enable (0x01E2) TLV indicates whether the RFC 2833 is enabled or not.

RFC 2833 Dynamic Payload Type (0x01E2) TLV indicates the RFC 2833 payload size.

When enabled RFC 2833 outsiezes the VoIP information along with other parameters.

Voice over Internet Protocol. The delivery of voice information in digital form in discrete packets rather than in the traditional circuit-committed protocols of the public-switched telephone network (PSTN).
A device that translates calls between an IP network and another network, typically the PSTN.
ITU-T standard defines a set of call control, channel setup, and codec specifications for transmitting real-time voice and video over networks that do not offer guaranteed service or quality of service.
The Registration, Admission, and Status messages communicated between two H.323 entities for example between an Endpoint and a Gatekeeper.
Public Switched Telephone Network
Internet Protocol. Part of the TCP/IP family of protocols used to route messages and tracks the addresses of nodes.
Interworking is a software feature within the Excel platform call control layer that enables protocol conversion by analyzing and converting Network Signaling (NS) Layer 3 information.
Session-Initiation Protocol. A signaling protocol used for establishing sessions in an IP network. A session could be a simple, two-way telephone call, or it could be a collaborative multi-media conference session.
See Signaling System Number Seven.
See Integrated Services Digital Network.
Universal Protocol Data Format. A predefined data format set used by a line card to communicate to the Layer 4 and above to represent information of the network-side of the line card. This set is independent of the network-side protocol.UPDF offers a "super scale" protocol format for signaling.
See Universal Protocol Data Format.
See Programmable Protocol Language.
A programmable software component that uses PPL state machines that can be modified with the PPL Tool.
See Information Control Block.
Address format for ISDN networks. The international public telecom-munications numbering plan. A standard set by ITU-T for addressing telephone numbers. See ITU Recommendation E.164 (1991).
The point in the Excel platform where a DS0 connects to a network. Also known as a "socket."
An H.323 entity on the network that provides address translation and controls access to the network for H.323 terminals and other end points. The gatekeeper may also provide other services to the endpoints such as bandwidth management and locating gateways.
Tag-Length-Value block. A standardized block that allows data to inserted in a standard way into API messages.
Call signaling protocol for setup and termination of calls.
Real-Time Transport Protocol. Supports transport of real-time data like interactive voice and video over packet-switched networks.
Real-Time Transport Control Protocol.
SCN. A public or private switched telecommunications network such as GSTN or ISDN. TCP: transmission control protocol, reliable network-ing layer on top of IP.
See Switched Circuit Network.
In PPL, a condition that, when met, drives a state machine (PPL Component) from one state to another, by invoking an associated Primitive. In PPL files, an Event is marked by an arrow and text.
A condition that, when met, drives a state machine from one state to another. A condition that drives a Component out of its current state by invoking an associated primitive.
The protocol used in most local area PC networks. Typically, most Ethernet networks support data transmission speeds up to 10 Mbps, but 100 Mbps is also possible.
Boot protocol for TCP/IP
A 32-bit address, used in IP routing, which includes a Network address identifier assigned by a central authority and a Host ID (an end station identifier assigned by a LAN administrator).
The bits of an Internet Protocol (IP) address used for a subnetwork.
Outgoing call setup during real-time call processing on a specific channel.
A computer, attached to the Excel platform through an RS-232 or Ethernet link, from which you run the telecommunications application that controls the Excel platform.
Admission Request
See Converged Services Administrator.
CSA. GUI-based tool used to configure, provision and monitor a Excel platform related to, for example, SIP, H.323, and VDAC Resouce Attributes.
Call processing layer of the CSP.
Digital Signal Processor
Name for the data fields within an ISDN Layer 3 message. See Integrated Services Digital Network.
AF. A predefined PPL software routine that performs a single, simple task, such as "Transmit Line Signaling" or "Allocate Digit Buffer." It is composed of standard software interrupts, calls, and data formats used by applications. Each AF has two values named "Arguments." AFs 1-50 are generic, and apply to all PPL components. AFs 51 and above apply to specific components. An AF is called "Atomic" because it is the smallest useful unit in PPL.
See Atomic Function.