Cisco SIP Proxy Server Version 2.1 Administrator Guide
E. SIP Compliance

Table Of Contents

SIP Compliance

RFC 2543 and RFC 3261

SIP Functions

SIP Methods

SIP Responses

SIP Header Fields

SIP Transport Layer Protocols

SIP Security

RFC 3263

SIP DNS Records Usage


SIP Compliance


This appendix describes Cisco SIP proxy server (Cisco SPS) compliance with the Internet Engineering Task Force (IETF) definition of Session Initiation Protocol (SIP) as described in the following RFCs.

RFC1
Title

2543

SIP: Session Initiation Protocol (March 1999)

3261

SIP: Session Initiation Protocol (June 2002)

3263

SIP: Locating SIP Servers (June 2002)

1 Not all supported RFCs are listed.


This appendix contains compliance information on the following:

RFC 2543 and RFC 3261

SIP Functions

SIP Methods

SIP Responses

SIP Header Fields

SIP Transport Layer Protocols

SIP Security

RFC 3263

SIP DNS Records Usage

RFC 2543 and RFC 3261

SIP Functions

Table E-1 SIP Functions 

Function
Supported?

Proxy server

Yes (transaction stateful, parallel forking, and recursive)

Redirect server

Yes

Registrar server

Yes


SIP Methods

Cisco SPS supports five of the six methods used by SIP. It handles unknown methods such as NEWMETHOD in the same manner as known methods such as OPTIONS and REFER.

Table E-2 SIP Methods 

Method
Supported?
Cisco SPS Action

ACK

Yes

Forwards ACK requests.1

BYE

Yes

Forwards BYE requests.

CANCEL

Yes

Forwards CANCEL requests.2

INFO

Yes

Forwards INFO requests.

INVITE

Yes

Forwards INVITE requests.

NOTIFY

Yes

Forwards NOTIFY requests.

OPTIONS

Yes

Responds to OPTIONS requests.

REFER

Yes

Forwards REFER requests.

REGISTER

Yes

Supports both user and device registration.

SUBSCRIBE

Yes

Forwards SUBSCRIBE requests.

UPDATE

Yes

Forwards UPDATE requests.

1 The SPS can generate a local ACK for a non-200 OK final response to an INVITE request.

2 The SPS can generate a local CANCEL for a pending branch when it receives a 200 OK or 6xx response from the branch.


SIP Responses

Cisco SPS supports the following SIP responses:

1xx Response—Information Responses

2xx Response—Successful Responses

3xx Response—Redirection Responses

4xx Response—Request Failure Responses

5xx Response—Server Failure Responses

6xx Response—Global Responses

Table E-3 SIP Responses 

SIP Response
Meaning
Supported?
Cisco SPS Action
1xx Response—Information Responses
 

100

Trying

Action is being taken on behalf of the caller, but the called party is not yet located.

Yes

Generates and forwards this response for an incoming INVITE. Upon receiving this response, waits for a 180 Ringing, 183 Session progress, or 200 OK response.

180

Ringing

Called party is located and is being notified of the call.

Yes

181

Call is being forwarded

Call is being rerouted to another destination.

See Cisco SPS action

Forwards these responses.

182

Queued

Called party is not currently available or elects to queue the call rather than reject it.

183

Session progress

System performs inband alerting for the caller.

Does not generate this message. Receives the message and forwards it upstream.

2xx Response—Successful Responses
 

200

OK

Request has been successfully processed. The action taken depends on the request made.

Yes

Generates this response to a REGISTER or CANCEL request. Otherwise forwards this response.

3xx Response—Redirection Responses
 

300

Multiple choices

Address resolves to more than one location. All locations are provided and the user or UA can select which location to use.

Yes

In redirect mode, generates this response. In proxy mode, generates or forwards this response.

301

Moved permanently

User is no longer available at the specified location. An alternate location is included in the header.

Yes

Forwards this response.

302

Moved temporarily

User is temporarily unavailable at the specified location. An alternate location is included in the header.

Yes

In redirect mode, generates this response when it locates a matching registration. In proxy mode, generates and forwards this response.

305

Use proxy

Caller must use a proxy to contact the called party.

Yes

380

Alternative service

Call is unsuccessful, but alternative services are available.

No

4xx Response—Request Failure Responses
 

400

Bad Request

Request can not be understood because of an illegal format.

Yes

Generates and forwards this response.

401

Unauthorized

Request requires user authentication.

Yes

Forwards this response. If it is configured as a registrar and authentication is enabled, generates this response.

402

Payment required

Payment is required for server to complete the call.

See Cisco SPS action

Generates these responses in registrar mode and if proxied by the proxy server.

403

Forbidden

Server has received and understood the request but will not provide the service.

404

Not found

Server has definite information that the user does not exist in the specified domain.

Yes

Generates and forwards this response.

405

Method not allowed

Method specified in the request is not allowed. The response contains a list of allowed methods.

See Cisco SPS action

Forwards these responses.

406

Not acceptable

Requested resource can generate only responses that have unacceptable content as specified in the accept header of the request.

407

Proxy authentication required

Similar to the 401 Unauthorized response, but client must first authenticate itself with the proxy.

Yes

Forwards this response. If authentication is enabled, generates this response.

408

Request timeout

Server could not produce a response before the expiration timeout.

See Cisco SPS action

Generates and forwards these responses.

409

Conflict

Request cannot be processed because of a conflict with the current state of the resource.

410

Gone

A resource is no longer available at the server and no forwarding address is known.

See Cisco SPS action

Forwards this response.

411

Length required

User refuses to accept the request without a defined content length.

Yes

Forwards this response.

413

Request entity too large

Server refuses to process the request because it is larger than the server is willing or able to process. If a retry after header field is contained in this response, the user can attempt the call once again in the retry time provided.

See Cisco SPS action

Forwards this response.

414

Request-URI too long

Server refuses to process the request because the Request-URI is too long for the server to interpret.

Yes

Generates and forwards this response.

415

Unsupported media

Server refuses to process the request because the format of the body is not supported by the destination endpoint.

Yes

Forwards this response.

420

Bad extension

Server cannot understand the protocol extension indicated in the Require header.

Yes

Generates and forwards this response.

480

Temporarily unavailable

Called party was contacted but is temporarily unavailable.

Yes

Forwards this response. Generates the response if preauthentication is enabled and fails.

481

Call leg/transaction does not exist

Server ignores the request because it is either a BYE for which there is no matching leg ID or a CANCEL for which there is no matching transaction.

Yes

Generates and forwards these responses.

482

Loop detected

Server received a request that includes itself in the path.

483

Too many hops

Server received a request that requires more hops than allowed by the Max-Forwards header.

484

Address incomplete

Server received a request that contains an incomplete address.

See Cisco SPS action

Forwards this response.

485

Ambiguous

Server received a request that contains an ambiguous called-party address. It can provide possible alternative addresses.

See Cisco SPS action

Forwards this response.

486

Busy here

Called party was contacted but his or her system is unable to take additional calls.

487

Busy here; request cancelled

Request was terminated by a BYE or CANCEL request.

No

488

Not acceptable media

An error in handling the request occurred.

See Cisco SPS action

Forwards this response.

5xx Response—Server Failure Responses
 

500

Server internal error

Server or gateway encountered an unexpected error that prevents it from processing the request.

Yes

Generates and forwards these responses.

501

Not implemented

Server or gateway does not support the functions required to complete the request.

502

Bad gateway

Server or gateway received an invalid response from a downstream server.

See Cisco SPS action

Forwards these responses.

503

Service unavailable

Server or gateway is unable to process the request due to an overload or maintenance problem.

504

Gateway timeout

Server or gateway did not receive a timely response from another server (such as a location server).

505

Version not supported

Server or gateway does not support the version of the SIP protocol used in the request.

Yes

6xx Response—Global Responses
 

600

Busy everywhere

Called party was contacted but is busy and cannot take the call at this time.

See Cisco SPS action

Forwards these responses.

603

Decline

Called party was contacted but cannot or does not want to participate in the call.

604

Does not exist anywhere

Server has authoritative information that the called party does not exist in the network.

606

Not acceptable

Called party was contacted, but some aspect of the session description was unacceptable.


SIP Header Fields


Note All SIP header fields that concern the Cisco SPS are correctly handled and parsed except for the Hide and Encryption header fields. Header fields that do not directly affect the Cisco SPS or that are unknown to it are passed unaltered in the SIP request.


Table E-4 SIP Header Fields 

Header Field
Supported?
Header Field
Supported?

Accept

Yes

Organization

Yes

Accept-Encoding

Yes

MIME-Version

Yes

Accept-Language

Yes

Priority

Yes

Alert-Info

Yes

Proxy-Authenticate

Yes

Allow

Yes

Proxy Authorization

Yes

Also

Yes

Proxy-Require

Yes

Authorization

Yes

Record-Route

Yes

Call-ID

Yes

Require

Yes

Call-Info

Yes

Response-Key

Yes

Contact

Yes

Retry-After

Yes

Content-Disposition

Yes

Route

Yes

Content-Encoding

Yes

Server

Yes

Content-Length

Yes

Subject

Yes

Content-Type

Yes

Supported

Yes

Cseq

Yes

Timestamp

Yes

Date

Yes

To

Yes

Encryption1

No

Unsupported

Yes

Error-Info

Yes

User-Agent

Yes

Expires

Yes

Via

Yes

From

Yes

Warning

Yes

In-Reply-To

Yes

WWW-Authenticate

Yes

Max-Forwards

Yes

   

1 When a SIP message is received that contains this header field, the message is processed with the field ignored.


SIP Transport Layer Protocols

Table E-5 SIP Transport Layer Protocols 

Transport Layer Protocol
Supported?

Unicast UDP

Yes

Multicast UDP

No

TCP

Yes

TLS

Yes


SIP Security

Table E-6 SIP Security 

Mode
Supported?

Encryption Mode

End-to-end

No

Privacy of SIP

No

Hop-by-Hop

No

Via Field

No

Authentication Mode

Basic

Yes

Digest

Yes

PGP

No

Proxy

Yes


RFC 3263

SIP DNS Records Usage

Table E-7 SIN DNS Records Usage

DNS Resource Record Type
Supported?

A

Yes

NAPTR

Yes

SRV

Yes