Table Of Contents
Compliance with RFC 3261
SIP Functions
SIP Methods
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
SIP Header Fields
SIP Session Description Protocol Usage
Transport Layer Protocols
SIP Security Authentication
SIP DNS Records Usage
SIP DTMF Digit Transport
Compliance with RFC 3261
This appendix describes how the Cisco Unified IP Phone 7960G and 7940G complies with the IETF definition of SIP as described in RFC 3261. It contains compliance information on the following:
• SIP Functions
• SIP Methods
• SIP Responses
• SIP Header Fields
• SIP Session Description Protocol Usage
• Transport Layer Protocols
• SIP Security Authentication
• SIP DNS Records Usage
• SIP DTMF Digit Transport
SIP Functions
Function
|
Supported?
|
User agent client (UAC)
|
Yes
|
User agent server (UAS)
|
Yes
|
Proxy server
|
Third-party only
|
Redirect server
|
Third-party only
|
SIP Methods
Method
|
Supported?
|
Comments
|
INVITE
|
Yes
|
The phone supports midcall changes such as putting a call on hold as signaled by a new INVITE that contains an existing call ID.
|
ACK
|
Yes
|
—
|
OPTIONS
|
Response only
|
BYE
|
Yes
|
CANCEL
|
Yes
|
REGISTER
|
Yes
|
The phone supports both user and device registration.
|
REFER
|
Yes
|
—
|
NOTIFY
|
Yes
|
Used for REFER and remote reboot.
|
UPDATE
|
Yes
|
Used for display updates only (SDP updates are not supported).
|
SIP Responses
The Cisco Unified IP Phone 7960G and 7940G 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
Note A SIP response that cannot be constructed properly because of a syntactically incorrect received request will be ignored.
A syntactically incorrect response to a sent request will be ignored.
1xx Response—Information Responses
1xx Response
|
Supported?
|
Comments
|
100 Trying
|
Yes
|
The phone generates this response for an incoming INVITE. Upon receiving this response, the phone waits for a 180 Ringing, 183 Session Progress, or 200 OK response.
|
180 Ringing
|
Yes
|
—
|
181 Call Is Being Forwarded
|
See comments
|
The phone does not generate these responses; however, the phone does receive them. The phone processes these responses in the same way that it processes the 100 Trying response.
|
182 Queued
|
183 Session Progress
|
The phone does not generate this message. Upon receiving this response, the phone provides early media cut-through and then waits for a 200 OK response.
|
2xx Response—Successful Responses
2xx Response
|
Supported?
|
Comments
|
200 OK
|
Yes
|
—
|
202 Accepted
|
Yes
|
—
|
3xx Response—Redirection Responses
3xx Response
|
Supported?
|
Comments
|
300 Multiple Choices
|
Yes
|
—
|
301 Moved Permanently
|
Yes
|
302 Moved Temporarily
|
Yes
|
The phone generates this response when local call forwarding is enabled. Upon receiving this response, the phone sends an INVITE that contains the contact information received in the 302 Moved Temporarily response.
|
305 Use Proxy
|
Yes
|
The phone does not generate these responses. The phone contacts the new address in the Contact header field.
|
380 Alternate Service
|
Yes
|
4xx Response—Request Failure Responses
4xx Response
|
Supported?
|
Comments
|
400 Bad Request
|
Yes
|
The phone generates a 400 Bad Request response for an erroneous request. For an incoming response, the phone initiates a graceful call disconnect (during which the caller hears a fast busy tone).
|
401 Unauthorized
|
Yes
|
If a 401 Unauthorized response is received, the phone accepts the response and sends a new request that contains the user's authentication information in the format of the HTTP digest as modified by RFC 3261.
|
402 Payment Required
|
Yes
|
The phone does not generate the 402 Payment Required response.
|
403 Forbidden
|
Yes
|
If the phone receives a 403 Forbidden response, it notifies the user of the response. This response indicates that the SIP server has the request but will not provide service.
|
404 Not Found
|
Yes
|
The phone generates this response if it is unable to locate the callee. Upon receiving this response, the phone notifies the user.
|
405 Method Not Allowed
|
Yes
|
If the phone receives a 405 Method Not Allowed response, it notifies the user of the response.
|
406 Not Acceptable
|
Yes
|
The phone does not generate a 406 Not Acceptable response. For an incoming response, the phone initiates a graceful call disconnect (during which the caller hears a busy or fast busy tone) before clearing the call request.
|
407 Proxy Authentication Required
|
Yes
|
If a 407 Proxy Authorization Required response is received, the phone accepts the response and sends a new request that contains the user's authentication information in the format of the HTTP digest as modified by RFC 3261.
|
408 Request Timeout
|
Yes
|
For an incoming response, the phone initiates a graceful call disconnect (during which a caller hears a fast busy). The phone generates this response after an INVITE Expires timeout to avoid leaving the phone in a continuous ringing state (fail safe mechanism). This will occur only if the phone does not receive any messages from the network to tear down the call after the timer expires.
|
409 Conflict
|
Yes
|
The 409 Conflict response indicates that the INVITE request could not be processed because of a conflict with the current state of the resource. If this response is received, the user is notified.
|
410 Gone
|
Yes
|
The 410 Gone response indicates that a resource is no longer available at the server and no forwarding address is known.
|
411 Length Required
|
Yes
|
This response indicates that the user refuses to accept the request without a defined content length. If received, the phone resends the INVITE request if it can add a valid Content-Length header field.
|
413 Request Entity Too Large
|
Yes
|
If a retry-after header field is contained in this response, the user can attempt the call once again in the retry time provided.
|
414 Request—URL Too Long
|
Yes
|
The user is notified if this response is received.
|
415 Unsupported Media
|
Yes
|
The user is notified if this response is received.
|
420 Bad Extension
|
Yes
|
The user is notified if this response is received.
If the phone does not understand the protocol extension specified in the Require field, the 420 Bad Extension response is generated.
|
480 Temporarily Unavailable
|
Yes
|
The response is received only by the phone. The user is notified if this response is received.
|
481 Call Leg/Transaction Does Not Exist
|
Yes
|
The user is notified if this response is received.
|
482 Loop Detected
|
483 Too Many Hops
|
484 Address Incomplete
|
485 Ambiguous
|
Yes
|
If a new contact is received, the phone might reinitiate the call.
|
486 Busy Here
|
Yes
|
The phone generates this response if the called party is off-hook and the call cannot be presented as a call-waiting call. Upon receiving this response, the phone notifies the user and generates a busy tone.
|
487 Request Canceled
|
Yes
|
This response indicates that the initial request is terminated with a BYE or CANCEL request.
|
488 Not Acceptable
|
Yes
|
When media cannot be negotiated properly, the phone receives and generates this response.
|
491 Request Pending
|
Yes
|
Indicates a glare condition (when INVITE requests cross). The phone supports sending and receiving this response.
|
5xx Response—Server Failure Responses
5xx Response
|
Supported?
|
Comments
|
500 Internal Server Error
|
Yes
|
The phone initiates a graceful call disconnect, and the user is notified.
|
501 Not Implemented
|
Yes
|
502 Bad Gateway
|
Yes
|
503 Service Unavailable
|
Yes
|
504 Gateway Timeout
|
Yes
|
505 Version Not Supported
|
Yes
|
6xx Response—Global Responses
6xx Response
|
Supported?
|
Comments
|
600 Busy Everywhere
|
Yes
|
The phone initiates a graceful call disconnect, and the user is notified.
|
603 Decline
|
Yes
|
604 Does Not Exist Anywhere
|
Yes
|
606 Not Acceptable
|
Yes
|
SIP Header Fields
Header Field
|
Supported?
|
Accept
|
Yes
|
Accept-Encoding
|
Yes
|
Accept-Language
|
Yes
|
Alert-Info
|
Yes
|
Allow
|
Yes
|
Also
|
Yes
|
Authorization
|
Yes
|
Call-ID
|
Yes
|
Call-Info
|
Yes
|
CC-Diversion
|
Yes
|
CC-Redirect
|
Yes
|
Contact
|
Yes
|
Content-Disposition
|
Yes
|
Content-Encoding
|
Yes
|
Content-Length
|
Yes
|
Content-Type
|
Yes
|
Cseq
|
Yes
|
Date
|
Yes
|
Diversion
|
Yes
|
Encryption
|
No
|
Expires
|
Yes
|
Event
|
Yes
|
From
|
Yes
|
Hide
|
No
|
Max-Forwards
|
Yes
|
Mime-Version
|
Yes
|
Organization
|
No
|
Priority
|
No
|
Proxy-Authenticate
|
Yes
|
Proxy-Authorization
|
Yes
|
Proxy-Require
|
Yes
|
Record-Route
|
Yes
|
Referred-By
|
Yes
|
Refer-To
|
Yes
|
Remote-Party-ID
|
Yes
Note The Screen parameter is ignored on received Remote-Party-ID and is always set to Yes in sent Remote-Party-ID
|
Replaces
|
Yes
|
Requested-By
|
Yes
|
Require
|
Yes
|
Response-Key
|
No
|
Retry-After
|
Yes
|
Route
|
Yes
|
RTP-RxStat
|
Yes
|
RTP-TxStat
|
Yes
|
Server
|
Yes
|
Subject
|
No
|
Supported
|
Yes
|
Timestamp
|
Yes
|
To
|
Yes
|
Unsupported
|
Yes
|
User-Agent
|
Yes
|
Via
|
Yes
|
Warning
|
Yes
|
WWW-Authenticate
|
Yes
|
SIP Session Description Protocol Usage
SDP Headers
|
Supported?
|
v—Protocol version
|
Yes
|
o—Owner or creator and session identifier
|
Yes
|
s—Session name
|
Yes
|
t—Time description
|
Yes
|
c—Connection information
|
Yes
|
m—Media name and transport address
|
Yes
|
a—Media attribute lines
|
Yes
|
Transport Layer Protocols
Protocol
|
Supported?
|
Unicast UDP
|
Yes
|
Multicast UDP
|
No
|
TCP
|
No
|
SIP Security Authentication
Basic Authentication
|
Supported?
|
Digest Authentication
|
Yes
|
Proxy Authentication
|
No
|
PGP
|
No
|
SIP DNS Records Usage
DNS Resource Record Type
|
Supported?
|
Type A
|
Yes
|
Type SRV
|
Yes
|
NAPTR
|
No
|
SIP DTMF Digit Transport
Transport Type
|
Supported?
|
RFC 2833
|
Yes
|
In-band tones
|
Yes
|