SIP Module

Intro
Installation
SysAdmin
Network
Objects
Transfer
Access
Services 
LDAP 
SIP
PWD 
RADIUS 
SNMP 
Directory
Data Files
Clusters
WebApp
WebMail
Miscellaneous
HowTo
HelpMe
Licensing
The CommuniGate Pro SIP module provides the infrastructure for real-time communications, such as instant messaging, audio (IP telephony) and video communications and conferencing, shared whiteboards, and others. The module implements the SIP Internet protocols via IP networks.

The SIP protocol does not include the protocols required for actual data transfer (media transfer protocols). Instead, it allows all participating parties to find each other on the network, to negotiate the media transfer protocol(s) and protocol parameters, establish the interactive real-time sessions, and to manage those sessions (add new parties, close sessions, update session parameters, etc.).

Session Initiation Protocol (SIP)

The SIP module implements the SIP Registrar. Users configure their SIP devices (IP phones, AV conferencing tools, Instant Messaging tools) to connect to the CommuniGate Pro SIP module when they go on-line. The SIP module registers the users by remembering the network (IP) addresses they use. Each user may have several registrations active if that user has several communication devices in the on-line mode (the office IP Phone, the desktop computer, the instant messaging program on a laptop). Registrations allow SIP users to communicate with each other without the knowledge of the network addresses being used, using just the "SIP identificators".

SIP identificators have the same form as E-mail addresses: username@domainName. In the CommuniGate Pro system, the user SIP identificator is the name of the user Account, so the user SIP identificator name is the same as the user E-mail address.

The SIP Module uses the CommuniGate Pro Router mechanism to process all SIP identificators. As a result, all CommuniGate Pro Aliases, Forwarders, and Router records are available for SIP communications, too.

The SIP Module allows users to initiate sessions (phone calls, chats, etc.) with other SIP users within the same CommuniGate Pro Domain, with users of other Domains on the same server, or with SIP users served by other, remote SIP servers.

When a SIP session is being initiated, a caller SIP client program (or UA - user agent program) sends a request to the SIP server with the SIP identificator of the callee. The SIP server checks the identificator, and if it is served by a remote SIP server, relays (proxies) the request to that remote server. If the SIP identificator belongs to a local user, the SIP server retrieves the active registration for that user and relays the request to the callee UA.
If the callee accepts the request, the callee UA sends the response back to the server, and the server relays it back to the caller UA. As a result, both caller and callee learn their actual network addresses, and they now establish the negotiates communication link (audio, video, etc.) directly, bypassing the SIP server.

The session initiation schema described above works correctly only if both parties can communicate directly. If there is a firewall or a NAT device between the parties, direct communication is not possible. In this case, the CommuniGate Pro SIP module builds and manages the necessary media proxies, relaying not only the SIP protocol requests and responses, but the actual media data, too.

The CommuniGate Pro SIP module supports UDP and TCP connections, and it also supports secure (TLS) communications over TCP connections.

Certain SIP operations (such as registration) require user authentication. All CommuniGate Pro Account passwords can be used for authenitcation. The BASIC and DIGEST authentication methods are supported.


Configuring the SIP module

To configure the SIP module, use a Web browser to connect to the CommuniGate Pro Server WebAdmin Interface, and open the SIP page in the Settings realm. To configure the SIP module, you should have the Can Modify Settings access right.

Log:

Use the Log setting to specify what kind of information the SIP module should put in the Server Log. Usually you should use the Failure (unrecoverable problems only), Major (session establishment reports), or Problems (failures, session establishment and non-fatal errors) levels. But when you experience problems with the SIP module, you may want to set the Log Level setting to Low-Level or All Info: in this case protocol-level or link-level details will be recorded in the System Log. When the problem is solved, set the Log Level setting to its regular value, otherwise your System Log files will grow in size very quickly.

The SIP module records in the System Log are marked with the following tags:

The Transport panel allows you to configure the network-level options:

Transport
UDP
listener

TCP
listener Input Channels:
 Idle Timeout:

UDP
To configure the UDP transport, click the UDP listener link. The UDP Listener page will open. By default, the SIP UDP port is 5060.

TCP
To configure the TCP transport, click the TCP listener link. The TCP Listener page will open. There you can specify both secure and clear-text TCP ports. By default, the clear-text SIP TCP port is 5060, and the SIP TLS port is 5061.

Input Channels
Use this option to specify the maximum number of TCP communication channels the module can open. If the number is exceeded, the module will reject new incoming TCP connections.

Idle Timeout
Use this option to specify when the SIP module should close a TCP communication channel if there is no activity on that channel. This helps to reduce the resources used for TCP communication channels on large installations. On the other hand, some SIP clients may not function properly if the server closes its TCP connection on a time-out.
Login Options
Advertise Digest AUTH Advertise NTLM AUTH

Advertise Digest AUTH
Select this option if you want to inform SIP clients that the standard DIGEST authentication method is supported.

Advertise Digest NTLM
Select this option if you want to inform SIP clients that the non-standard NTLM authentication method is supported.
ProcessingProcessors:
Transaction Limits:Server:Client:
  Force Dialog Relaying 

Processors
Use this setting to specify the number of threads used to process SIP transactions.

Limits
Use these settings to specify the maximum number of concurrent server and client transactions the SIP Module is allowed to handle.

Force Dialog Relaying
If this option is disabled, the SIP Module introduces itself only into the SIP dialogs that require its participation (such as those traversing your NAT/Firewall). If this option is disabled, the SIP module introduces itself into all SIP dialogs opened. This feature can be used for troubleshooting. as all details of dialog transactions are seen in the Server Log.


Media Stream Proxy

CommuniGate Pro supports automatic "NAT traversal" for the standard-based real-time communications.

The CommuniGate Pro Server detects the session initiation requests that are sent from one side of NAT to the other side (a request from a LAN client to a party on the Internet and vice versa). In this case, the Server assigns a local server port (or a pair of ports, depending on the protocol) to a media stream proxy. The Server then modifies the session initiation request to direct the traffic from both sides to that proxy, which relays the data between the "LAN leg" and the "Internet leg" of the media connection.

In order to support Media Strea Proxy functionality, make sure that the LAN and NAT data is specified correctly on the LAN IPs settings page.


Support for Microsoft® Windows Messenger

The Windows Messenger client uses the standard SIP protocol for auto and video sessions. It uses the proprietary SIP protocol extensions for its Instant Messaging, Whiteboard, Remote Assistance and other services. CommuniGate Pro implements the extensions required by that application.

The Windows Messenger 5.0 is supported, earlier versions of this application are not supported.

The CommuniGate Pro SIP module should have the Advertise NTLM option enabled.

The Windows Messenger audio and video sessions use standard RTP media protocols and these sessions can be used over a NAT/Firewall.
The Windows Messenger Instant Messaging uses the SIP protocol for media transfer and Instant Messaging sessions can be used over a NAT/Firewall.
The Windows Messenger File Transfer, Whiteboard, Application Sharing, and Remote Assistance sessions use non-standard protocols and these sessions currently cannot be used over a NAT/Firewall.


CommuniGate® Pro Guide. Copyright © 1998-2004, Stalker Software, Inc.