SIP Statuses to Q.850 Reasons (2024)

This section explains the Oracle® Enterprise Session Border Controller’s ability to map Q.850 cause values with SIP responses, a feature used in SIP calls and calls that require IWF.

RFC 3326 defines a header that might be included in any in-dialogue request. This reason header includes cause values that are defined as either a SIP response code or ITU-T Q.850 cause values. You can configure the Oracle® Enterprise Session Border Controller to support sending and receiving RFC 3326 in SIP messages for:

  • Mapping H.323 Q.850 cause values to SIP responses with reason header and cause value
  • Mapping SIP response messages and RFC 3326 reason header and cause
  • Locally generated SIP response with RFC 3326 reason header and cause

As specified in RFC 3326, the Oracle® Enterprise Session Border Controller sends SIP responses to the softswitch that contain the received Q.850 cause code and the reason.

Though the Oracle® Enterprise Session Border Controller can generate RFC 3326 headers, the default behavior for this feature is disabled. Furthermore, the Oracle® Enterprise Session Border Controller can receive and pass SIP error messages (4xx, 5xx, and 6xx) that contain the SIP reason header with a Q.850 cause code and reason (as specified in RFC 3326). If the system receives an error message without the Reason header, then the Oracle® Enterprise Session Border Controller is not required to insert one.

In calls that require IWF, the Q.850 cause generated in the SIP response are the same as the cause received in the following H.225 messages: Disconnect, Progress, Release, Release Complete, Resume Reject, Status, and Suspend Reject. In addition, the Q.850 cause codes that the Oracle® Enterprise Session Border Controller receives in RFC 3326 headers are passed to the H.323 part of the call unmodified; the H.323 call leg uses this cause code for releasing the call.

SIP-SIP Calls

The SIP Reason header might appear in any request within a dialog, in a CANCEL request, and in any response where the status code explicitly allows the presence of this header field. The syntax of the header follows the standard SIP parameter:

Reason: SIP;cause=200;text=”completed elsewhere”Reason: Q.850;cause=16;text=”Terminated”

This feature attends to the following possible SIP call scenarios:

  • When the Oracle® Enterprise Session Border Controller receives a SIP request or SIP response that contains the Reason header, the Oracle® Enterprise Session Border Controller passes it without modification.
  • When it generates a SIP response, the Oracle® Enterprise Session Border Controller includes the RFC 3326 Reason header containing a Q.850 cause code and reason. This is the case for all local conditions and for all internally generated error responses (4xx, 5xx, and 6xx) to an initial SIP INVITE.

    Possible local error scenarios are:

    • invalid-message
    • cpu-overloaded
    • media-released
    • media-not-allocated

Configure Reason and Cause Mapping for SIP-SIP Calls

To configure reason-cause mapping for SIP-SIP calls, you must set up the ACLI local-response-map configuration with appropriate entries to generate the SIP response and the Q.850 cause code value used for particular error scenarios. If you want to add a Reason header, you must enable that capability in the global SIP configuration.

In the following procedure use the method parameter and the register-response-expires parameter to enable a SIP registration response mapping feature that allows you to configure the system to remap a SIP failure response to a 200 OK. The failure response can come from another network device or the system can generate the response locally. You might want the system to perform such mapping when a non-malicious endpoint continually attempts registration, but stops when the system sends a 200 OK. The failure response mapping does not register the client with the system, which leaves neither a registration cache entry nor a CAM ACL for the entry.

For the 200 OK it generates, the system removes any Reason or Retry-After header in the 200 OK and sets the expires time. By default, the expires time is the Retry-After time (if there is one in the response) or the expires value in the Register request (if there is no Retry-After expires time). You can also set this value using the register-response-expires parameter, but the value you set should never exceed the Register request’s expires time.

  1. Access the entries configuration element.
    ORACLE# configure terminalORACLE(configure)# session-routerORACLE(session-router)# local-response-mapORACLE(local-response-map)# local-response-map-entriesORACLE(local-response-map-entries)#
  2. (Optional) Type ? to see the entire menu for the local response map entries configuration.
  3. local-error—Set the local error that triggers the use of this local response map. No default.

    Note:

    The Enterpriseand Service Provider systems both display the full list, but some items do notapply to both systems. Such items are noted.

  4. Type local-error? to see the entire list of local errors that you can configure.
  5. sip-status—Set the SIP response code to use. No default value. Range: 100-699.
  6. sip-reason—Set the SIP reason string you want to use for this mapping. No default value. If the value contains spaces between the characters, you must surround the entry with quotation marks.
  7. q850-cause—Set the Q.850 cause. No default value.
  8. q850-reason—Set the Q.850 reason string that you want to use for this mapping. No default value. If your value has spaces between characters, then your entry must be surrounded by quotation marks.
  9. method—Enter the name of the received SIP failure response message you want to map to a 200 OK.

    No default. Leave the parameter empty to turn off the SIP registration response mapping feature.

  10. register-response-expires—Enter the time you want to use for the expires time you identified in the method parameter.

    The maximum is 999999999. By default, the expires time is the Retry-After time (if there is one in the response) or the expires value in the Register request (if there is no Retry-After expires time). Any value you configure in this parameter (when not using the defaults) should never exceed the Register request’s expires time.

  11. (Optional) Repeat this process to create the number of local response map entries that you need.
  12. Save and activate the configuration for changes to take effect.

Calls Requiring IWF

For interworking calls between SIP and H.323, you can configure:

  • Mappings for SIP status codes to Q.850 values
  • Mappings for particular Q.850 cause codes to SIP status codes

If it cannot find the appropriate mapping, then the Oracle® Enterprise Session Border Controller uses default mappings defined in the Default Mappings table below.

The following describes how the Oracle® Enterprise Session Border Controller handles different IWF call scenarios:

  • SIP request containing a Reason header—When it receives a request containing a Reason header, the Oracle® Enterprise Session Border Controller determines if the request is a SIP BYE or SIP CANCEL message. RFC 3326 states that the Reason header is mainly used for these types of requests. If there is a Reason header and it contains the Q.850 cause value, then the Oracle® Enterprise Session Border Controller releases the call on the H.323 side using the specified cause value.
  • SIP response—When it receives the error response to an initial SIP INVITE, the Oracle® Enterprise Session Border Controller uses its SIP-Q.850 map to determine the Q.850 that it will use to release the call. If there is not a map entry, then the Oracle® Enterprise Session Border Controller uses the default mappings shown in the Default Mappings table.
  • Active call released from the H.323 side—If an active call is released from the H.323 side, the Oracle® Enterprise Session Border Controller checks the outgoing realm (the SIP side) to see if the addition of the Reason header is enabled. If it is, then the Oracle® Enterprise Session Border Controller adds the Reason header in the SIP BYE request with the Q.850 value it received from the H.323 side.
  • Error during setup of the call on the H.323 side—In the event of an error during setup on the H.323 side of the call, the system needs to send:
    • An error response, if this is a SIP to H.323 call
    • A SIP CANCEL, if this is a H.323 to SIP call and the H.323 side hangs up before the call is answered on the SIP side

      In this case, the Oracle® Enterprise Session Border Controller checks to see if adding the Reason header is enabled in the IWF configuration. If it is, then the Oracle® Enterprise Session Border Controller adds the Reason header with the Q.850 cause value it received from the H.323 side.

  • Call released due to a Oracle® Enterprise Session Border Controller error—If the call is released due a Oracle® Enterprise Session Border Controller error and adding the Reason header is enabled in the IWF configuration, the error response to the initial INVITE contains the Reason header. The Oracle® Enterprise Session Border Controller checks the SIP to Q.850 map configurations to determine whether or not the SIP error response code it is generating is configured. If it is, then the Oracle® Enterprise Session Border Controller maps according to the configuration. If if it not, the Oracle® Enterprise Session Border Controller derives cause mapping from the default table.

Like the configuration for SIP-only calls that enable this feature, you can set a parameter in the IWF configuration that enables adding the Reason header in the SIP requests or responses.

Default Mappings

This table defines the default mappings the Oracle® Enterprise Session Border Controller uses when it cannot locate an appropriate entry thatyou have configured.

Q.850 Cause Value NumberQ.850 Cause Value NumberSIP Status NumberSIP Status TextComments
1 Unallocated number 404 Not found N/A
2 No route to specified transit network 404 Not found N/A
3 No route destination 404 Not found N/A
16 Normal calling clearing N/ABYE message A call clearing BYE message containing cause value 16 normally results in the sending of a SIP BYE or CANCEL request. However, if a SIP response is to be sent to the INVITE request, the default response code should be used.
17 User busy 486 Busy here N/A
18 No user responding 408 Request timeout N/A
19 No answer from the user 480 Temporarily unavailable N/A
20 Subscriber absent 480 Temporarily unavailable N/A
21 Call rejected 603 Decline (if location filed in Cause information element indicates user; otherwise 403 Forbidden is used) N/A
22 Number changed 301 Moved permanently (if information in diagnostic field of Cause information element is suitable for generating SIP Contact header; otherwise 410 Gone is used) N/A
23 Redirection to new destination 410 Gone N/A
25 Exchange routing error 483 Too many hops N/A
27 Destination out of order 502 Bad gateway N/A
28 Address incomplete 484 Address incomplete N/A
29 Facility rejected 501 Not implemented N/A
31 Normal, unspecified 480 Temporarily unavailable N/A
34 No circuit, channel unavailable 503 Service unavailable N/A
38 Network out of order 503 Service unavailable N/A
41 Temporary failure 503 Service unavailable N/A
42 Switching equipment congestion 503 Service unavailable N/A
47 Resource unavailable unspecified 503 Service unavailable N/A
55 Incoming calls barred with CUG 403 Forbidden N/A
57 Bearer capability not authorized 403 Forbidden N/A
58 Bearer capability not presently available 503 Service unavailable N/A
65 Bearer capability not implemented 488 Not acceptable here N/A
69 Requested facility not implemented 501 Not implemented N/A
70 Only restricted digital information available 488 Not acceptable here N/A
79 Service or option not implemented, unspecified 501 Not implemented N/A
87 User not member of CUG 403 Forbidden N/A
88 Incompatible destination 503 Service unavailable N/A
102 Recovery on timer expiry 504 Server time-out N/A
SIP Statuses to Q.850 Reasons (2024)

FAQs

What is the cause code 850 for SIP? ›

850 cause code and reason. This is the case for all local conditions and for all internally generated error responses (4xx, 5xx, and 6xx) to an initial SIP INVITE. Possible local error scenarios are: invalid-message.

What is the reason Q 850 cause 16? ›

850 Cause Code 16 defines normal clearing. Call disconnection usually refers to Codec mismatch problem.

What is the reason header in SIP? ›

The Reason header is used to indicate why a SIP request was issued or why a provisional response was sent.

What is SIP response? ›

SIP response codes are three-digit numerical messages that contain information sent by the User Agent Server (UAS) to the User Agent Client (UAC). SIP response codes provide information about the status of the call.

What is SIP Q 850 cause 86? ›

86 call having the requested call identity has been cleared The network has received a call resume request containing a Call identity information element indicating a suspended call that has in the meantime been cleared while suspended (either by network time-out or by the remote user).

What is Q 850 cause 79? ›

According to the documentation, Q. 850, cause=79 represents "Service or option not implemented, unspecified". The typical scenario is a service is not implemented. Reports a service or option not implemented event only when no other cause in the service or option not implemented class applies.

What does a SIP message contain? ›

SIP messages. SIP is a text-based protocol with syntax similar to that of HTTP. There are two different types of SIP messages: requests and responses. The first line of a request has a method, defining the nature of the request, and a Request-URI, indicating where the request should be sent.

What is the reason for SIP diversion header? ›

SIP Diversion header is a SIP header field that can be added to a SIP message to indicate that the call has been redirected from another destination. For example, if a caller dials a number that is forwarded to another number, the SIP Diversion header can include the original number and the reason for the redirection.

What does SIP code mean? ›

The Session Initiation Protocol (SIP) is a signalling protocol used for controlling communication sessions such as Voice over IP telephone calls. SIP is based on request/response transactions, in a similar manner to the Hypertext Transfer Protocol (HTTP).

What is SIP stand for? ›

The acronym SIP stands for Session Initiation Protocol and refers to a TCP/IP-based network protocol which can be used to establish and control communication connections of several subscribers. SIP is often used in Voice-over-IP telephony to establish the connection for telephone calls.

Is SIP a good thing? ›

SIPs are generally considered safe as they allow for disciplined investing in mutual funds, but they are subject to market risks. Is SIP better than FD? SIPs offer the potential for higher returns over the long term compared to FDs, which typically offer fixed returns but lower potential growth.

What is SIP failure code? ›

SIP responses, 500s: Server failures

500 Server Internal Error. 501 Not Implemented: The SIP request method is not implemented here. 502 Bad Gateway. 503 Service Unavailable. 504 Server Time-out.

What is cause code 38 on SIP disconnect? ›

Cause 38 Network Out of order - This cause indicates that the network is not functioning correctly and that the condition is likely to last a relatively long period of time, e.g., immediately re-attempting the call is not likely to be successful.

What is the cause of SIP 486? ›

When SCA receives a SIP 486 (Busy Here) Response Code, it is being mapped to a Route Select Failure Release Cause instead of a User Busy Release Cause. This can break the service logic because a Branch on Event Report Request BCSM Code node will exit through the wrong exit branch.

References

Top Articles
Latest Posts
Article information

Author: Van Hayes

Last Updated:

Views: 6096

Rating: 4.6 / 5 (66 voted)

Reviews: 89% of readers found this page helpful

Author information

Name: Van Hayes

Birthday: 1994-06-07

Address: 2004 Kling Rapid, New Destiny, MT 64658-2367

Phone: +512425013758

Job: National Farming Director

Hobby: Reading, Polo, Genealogy, amateur radio, Scouting, Stand-up comedy, Cryptography

Introduction: My name is Van Hayes, I am a thankful, friendly, smiling, calm, powerful, fine, enthusiastic person who loves writing and wants to share my knowledge and understanding with you.