Compared with H.323, SIP is a lightweight protocol in regard to call setup. When a user wants to call another user, the caller initiates the call with an invite message, which contains information such as the caller's identification and call features and services that the caller wants to use. The caller sends the invite message to an SIP server, which functions either as a proxy or a redirect server. The caller learns the SIP server address by querying a DNS server. When an SIP proxy server receives the invite message, it uses a location service to find the called party and forwards the invite message to the called party. The called party then sends an OK response to the SIP proxy server, which forwards the OK response to the caller. The caller then sends the called party an acknowledgment through the proxy server that completes the call setup. Figure 6 depicts the SIP call setup process with a proxy server. In contrast to this process, when an SIP redirect server receives a message, it returns to the caller the called party's location, to which the caller can send the invite message. The SIP redirect server can also perform call party authentication and authorization.
SIP uses an Internet-standard URL to identify an SIP client or user (e.g., SIP:john@acme.com, which represents user John's SIP identification). With this format, you can use someone's email address to guess that person's SIP identification. You can embed an SIP URL in a Web page; then, when you click the SIP URL in the Web page, you can initiate a call to the person whom the URL represents.
SIP offers a unique feature, fork, that H.323 doesn't provide. An SIP server can fork a received invite message by issuing more than one request to a group of phones or computers so that several extensions receive the same call together. The party who answers the call handles the rest of the communication. This feature works well for customer service operations.
SIP is a text-based protocol, similar to HTTP, and has only six fundamental control messages for call setup and release. Therefore, you can easily implement SIP with languages such as Java and Perl. One of the vendors that strongly support and promote SIP is 3Com. The company has developed an SIP server and a line of SIP phone products. Microsoft is also developing an SIP server and SIP client for Windows, which the company displayed at the Voice of the Net (VON) Spring 2001 conference.
Another VoIP standard for gateway implementation is the IETF's MGCP. This protocol assumes that call setup and control is outside the gateway. Separating the gateway functions from the call setup and control functions simplifies gateway implementation, upgrading, and maintenance. MGCP can work with H.323. MGCP-defined and -supported gateways include trunking gateways (i.e., IP-PSTN gateways) that interface between VoIP networks and PSTNs; Voice over Asynchronous Transfer Mode (ATM) gateways that interface between Voice over ATM networks and PSTNs; residential gateways that provide interfaces to VoIP networks for cable modem, Digital Subscriber Line (DSL), and broadband wireless devices; and PBX-based gateways that provide traditional digital PBX interfaces to VoIP networks.
Deployment Considerations
VoIP is still new and hasn't been widely implemented. However, the driving force of the ubiquitous IP will make sure that you eventually deploy VoIP applications in your network. Before you start to implement VoIP, you need to build a network infrastructure that supports VoIP, keeping in mind the following considerations.
QoS. A traditional telephone call relies on a connection-oriented circuit that a PSTN provides with high QoS. An IP network, however, is connectionless and, by default, provides neither QoS nor the same level of performance and reliability as a PSTN. Voice communication between two parties through an IP network often involves many network hops and devices, such as H.323 gateways and IP routers. An end-to-end one-way delay of more than 150 milliseconds (ms) is generally too long. To achieve good performance and reliability for VoIP applications, deploy QoS in your network before deploying VoIP. QoS lets you prioritize your network traffic and guarantees timely data delivery for time-sensitive applications (e.g., VoIP applications). For more information about QoS, see "Build a Better Network with QoS," November 1998, and Barrie Sosinsky and C. Thi Nguyen, "Quality of Service," http://www.win2000mag.com, InstantDoc ID 8202.
Firewalls. When your VoIP deployment involves firewalls (e.g., a VoIP application between your intranet and the Internet), you need to use firewalls that support VoIP (e.g., support H.323 if the application is an H.323 application). An H.323 application often dynamically negotiates TCP and UDP ports to use during call setup. This characteristic is quite different from other IP applications.
NAT. Many companies use Network Address Translation (NAT) to map public IP addresses and private IP addresses and keep the company's intranet IP addresses from the Internet. An H.323 application can fail when going through NAT because the application can repeat the destination IP address in its payloads. If your NAT isn't H.323-aware, it can't convert the address in the application payload when converting the address in the IP packet header.
DHCP. To work on an IP network, an IP phone needs an IP address. An IP phone might use DHCP to request a dynamic address from your DHCP server, but to configure the IP phone, you often must add to your DHCP server a custom DHCP option that includes special parameters to support VoIP. Examine your DHCP server to see whether it lets you define custom options. Windows 2000 and Windows NT DHCP servers support custom options.
Learning PBX. Companies often have a voice network team that's separate from the data network team. Many IP network engineers and managers aren't familiar with their company's voice systems. To better integrate your voice network into your IP network, you need to learn about your company's PBXs and analog and digital trunk circuits. With comprehensive knowledge of your voice systems, you can choose VoIP products wisely, such as a gateway that supports your PBX trunk-port type. Many companies have started to integrate their voice and data network teams into one group to better support their VoIP deployment.
Lower Your Bottom Line
VoIP helps reduce the cost of voice communication in your enterprise by using the cost advantage of the IP-network-and-Internet setup and integrating the old PSTN. This evolving technology lets you build new interactive e-commerce applications to improve efficiency and quality of customer service.