Understanding the SIP Protocol

Overview of Operation

This section introduces the basic operations of SIP using simple examples. This section is tutorial in nature and does not contain any normative statements.

The first example shows the basic functions of SIP:

„Locating an end point

„Signaling a desire to communicate

„Negotiating session parameters to establish the session

„Tearing down the established session

Figure 20 on page 248 shows a typical example of a SIP message exchange between two users, Caller A and Caller B. (Each message is labeled with the letter “F” and a number for reference by the text.) In this example, Caller A uses a SIP application on a PC (referred to as a softphone) to call Caller B on the SIP phone over the internet. Also shown are two SIP proxy servers that act on behalf of Caller A and Caller B to facilitate the session establishment. This typical arrangement is often referred to as the “SIP trapezoid” as shown by the geometric shape of the dotted lines in Figure 20 on page 248.

Caller A “calls” Caller B using Caller B’s SIP identity, a type of Uniform Resource Identifier (URI) called a SIP URI. It has a similar form to an email address, typically containing a user name and a host name. In this case, it is sip:callerb@biloxi.com, where biloxi.com is the domain of Caller B's SIP service provider. Caller A has a SIP URI of sip:callera@atlanta.com. Caller A might have typed in Caller B's URI or perhaps clicked on a hyperlink or an entry in an address book. SIP also provides a secure URI, called a SIPS URI. An example would be sips:callerb@biloxi.com. A call made to a SIPS URI guarantees that secure, encrypted transport (namely TLS) is used to carry all SIP messages from the caller to the domain of the callee. From there, the request is sent securely to the callee, but with security mechanisms that depend on the policy of the domain of the callee.

SIP is based on an HTTP-like request/response transaction model. Each transaction consists of a request that invokes a particular method, or function, on the server and at least one response. In this example, the transaction begins with Caller A's softphone sending an INVITE request addressed to Caller B's SIP URI. INVITE is an example of a SIP method that specifies the action that the requester (Caller A) wants the server (Caller B) to take. The INVITE request

November 2009

247

Page 247
Image 247
Dialogic 6.2 manual Overview of Operation, November 247