Upcoming Events

Cloud Connect
Santa Clara
Feb 13-16, 2012

Cloud Connect brings together the entire cloud eco-system to better understand the transformation we're experiencing and promises to be the defining event of the cloud computing industry. Learn about the latest cloud technologies and platforms from thought leaders in Cloud Connect’s comprehensive conference.

Register Now!

More Events »

Subscribe to Newsletter

  • Keep up with all of the latest news and analysis on the fast-moving IT industry with Network Computing newsletters.
Sign Up
Digital Convergence Mobile + Wireless
W O R K S H O P  
It's Time To Take a Look At SIP

  April 17, 2003
  By Peter Morrissey


>> continued from previous page

At Your Service
TOC Issue TOC
Printer Print full article
Printer Print this page
Printer Download as PDF
E-Mail E-Mail this URL
Discuss Discuss this article
flame author Flame the author
 
  In this article
arrow
Introduction
arrow
At Your Service
arrow
Anatomy of SIP

Some SIP phones can call each other directly, but if you want scalability, you need servers. SIP servers keep track of directory information and the called parties' locations. There are several SIP servers, all of which can run on the same server or on their own hardware platforms.

The SIP proxy server handles the SIP phone's or UA's requests; it tries to initiate a connection to the recipient on behalf of the originator and stays in the loop until it receives a 200 OK response. The proxy server places its own IP address in the "via" field so the destination client knows where to send its response. Then the proxy passes that response back to the originator. The address in the "contact" field is used for direct communication between UAs (see "Can You Hear Me Now?").



Once a proxy server passes on an invite request, it immediately sends back a status message called "100," or "trying." That notifies the caller that it's working on the invite request. After the proxy server locates the destination UA and sends it the invite, it sends a 180 "ringing" message to the sender. When the recipient answers, it passes the 200 response to the proxy server, which then sends the message to the originating UA.

The originator then sends an "ack" response to the destination client, letting the client know that it received the 200. All further communication happens between the clients: RTP takes over, transporting digitized audio between the UAs. When the call is completed, a "bye" message is sent to the other UA, which replies with another 200.

Although a proxy server, by default, drops out of the loop once a call is completed, it can be configured to stick around. It works like this: The proxy server inserts its own address into the "contact" field when it communicates with the UA, forcing the UA to send the rest of the responses back to the proxy server instead of the originating UA. Keeping the proxy involved during the call lets you enable call-detail recording, where you can track the duration of calls. It also lets you hide network details about endpoints for security purposes.

A request and call setup also can pass through multiple proxy servers. If one proxy server can't connect to a destination UA, for example, it can forward the request to another proxy server, which then locates, or attempts to locate, the UA.

There's also a redirect server, which can receive requests from a UA or a proxy server. The redirect server doesn't make the connection itself--it merely replies with information on where to retry the original request. It's a quick way to give the UA information it needs without adding a large processing burden to the proxy server.



Can You Hear Me Now?

click to enlarge

A SIP gateway server translates between the VoIP world and the PSTN so you can make calls outside your organization. The gateway can provide a legacy connection to an internal PBX, for instance, or go directly to the PSTN. It translates the SIP signaling into something the legacy telephone understands, and has a codec that converts the RTP traffic so it can be sent from a legacy voice circuit and vice versa.

Most VoIP calls between organizations will go over the PSTN because there is no global directory service for the Internet. In the future, a protocol called ENUM (E.164 Number RFC 2916) may use DNS to provide an Internet-based directory service that tracks phone numbers for calling among different organizations or companies.

A registrar server is required if you use proxy servers; it tells the UA the user's location. For example, when a telecommuter plugs in a VoIP phone, the device automatically tells the registrar server his or her location. You can register multiple phones--a SIP phone, mobile phone or even a legacy phone--with the registrar server as long as there is a SIP gateway available when a call is made.

SIP's support for mobility is one of its biggest draws. When a SIP proxy server receives an invite request, for instance, it can contact each registered device sequentially or all devices simultaneously. The registrar server stores the location information for registered users in a location server, which can reside on the same physical server. SIP proxy servers consult the location server to find a UA.

Don't be afraid to take a SIP.

I promise it'll go down easy.

Peter Morrissey is a full-time faculty member at Syracuse University's School of Information Studies, and a contributing editor and columnist at Network Computing. Write to him at ppmorris@syr.edu.

Post a comment or question on this story.


start top  Introduction Anatomy of SIP 

Research and Reports

Hypervisor Derby
August 2011

Network Computing: August 2011

TechWeb Careers