Exchanging SIP requests and responses

Dialogic implements SIP based on a client-server model. The client is a SIP application that communicates with the SIP server. The SIP server, nmssip, implements the SIP protocol stack, forming SIP messages as described in RFC 3261.

SIP automatically forms these messages when NaturalCallControl (NCC) functions are called. For voice over IP applications, the body of the SIP messages typically contains session description protocol (SDP) information describing the characteristics of the session.

Requests

The following table describes some of the SIP messages implemented by SIP:

Request

Description

INVITE

Invitation to establish a session. Contains a unique call identifier, destination address, and client address.

ACK

Acknowledgment by the initiating client that a server response was received.

BYE

Termination of a specific session or an attempted session.

PRACK

Acknowledgment of a provisional response.

CANCEL

Cancellation of a previous client INVITE request.

REGISTER

Registration in the domain server database of a user's current location. Users are identified by a SIP URI, for example, sip:user@dialogic.com or sip:user@1.1.1.1.

Responses

The response to a SIP request message is a SIP response. Response messages are numbered with codes grouped in ranges. The following table describes SIP responses:

Response code

Description

100 to 199

Provisional. Information about the progress of a request.

200 to 299

Success. A request successfully completed.

300 to 399

Redirection. Retry the request at another location.

400 to 499

Client error. Error in the client request.

500 to 599

Server error. Error in the server response.

600 to 699

Global failure. Do not retry the request.

Establishing a session

The following illustration shows the sequence of requests and responses to establish a session:

session.gif

Terminating a session

The following illustration shows the sequence of requests and responses to terminate a session:

terminating.gif