Cisco IOS XR Session Border Controller Configuration Guide Release 3.6
SIP 3xx Redirect Responses

Table Of Contents

SIP 3xx Redirect Responses

Contents

Information About 3xx Redirect Responses in SIP

3xx Responses

Diversion Headers

How to Configure SBC to Process SIP 3xx Responses

Configuring SBC to Process SIP 3xx Responses

Examples of Configuring SBC to Process SIP 3xx Responses

Additional References

Related Documents

Standards

MIBs

RFCs

Technical Assistance


SIP 3xx Redirect Responses


This section describes how SBC can be configured to process SIP 3xx responses. 3xx is a class of the response code used in SIP to indicate that further action needs to be taken in order to complete the request. The sender of the request should retry the request, using one or more alternative Uniform Resource Identifiers (URIs), which are presented in the 3xx response.

Feature History for SIP 3xx Redirect Responses

Release
Modification

Release 3.4.1

This feature was introduced on the Cisco XR 12000 Series Router.

Release 3.5.0

No modification.

Release 3.6.0

No modification.


Contents

This module contains the following sections:

Information About 3xx Redirect Responses in SIP

How to Configure SBC to Process SIP 3xx Responses

Examples of Configuring SBC to Process SIP 3xx Responses

Additional References

Information About 3xx Redirect Responses in SIP

3xx Responses

3xx responses are usually only expected in session-initiating requests, INVITEs. However, the SIP specification does not preclude sending 3xx responses for other request types. A number of alternative URIs are supplied on the 3xx responses in Contact headers.

The 3xx class of responses includes any response code in the range of 300-399 and indicates a redirection of the call. The redirection requires further action to be taken to complete the request. The following 3xx response codes are defined in SIP.

300 Multiple Choices. The address in the request resolved to several choices, each with its own specific location. The user or user agent (UA) can select a preferred communication end point and redirect the request to that location.

The response may include a message body containing a list of resource characteristics and location(s), from which the user or UA can choose the most appropriate one, if allowed by the Accept request header field. However, no MIME types have been defined for this message body.

The choices should also be listed as Contact fields. The response may contain several Contact fields or a list of addresses in a Contact field. UAs may use the Contact header field value for automatic redirection or ask the user to confirm a choice.

301 Moved Permanently. The user can no longer be found at the address in the Request-URI, and the requesting client should retry at the new address given by the Contact header field (Section 20.10). The requestor should update any local directories, address books, and user location caches with this new value, and redirect future requests to the addresses listed.

302 Moved Temporarily. The requesting client should retry the request at the new address(es) given by the Contact header field. The Request-URI of the new request uses the value of the Contact header field in the response.

The duration of the validity of the Contact URI can be specified through an Expires (Section 20.19) header field or an Expires parameter in the Contact header field. Both proxies and UAs may cache this URI for the duration of the expiration time. If there is no explicit expiration time, the address is valid only once for recursing, and must not be cached for future transactions.

If the URI cached from the Contact header field fails, the Request-URI from the redirected request may be tried again only once.

305 Use Proxy. The requested resource must be accessed through the proxy given by the Contact field. The Contact field gives the URI of the proxy. The recipient is expected to repeat this single request via the proxy. 305 responses must only be generated by the user agent servers (UASs).

380 Alternative Service. The call was not successful, but alternative services are possible. The alternative services are described in the message body of the response. There are no formats currently defined for this information.

In each case, the request should be retried to one of the supplied alternative URIs. The request can be retried by either the originating UA, or by an intermediate back-to-back user agent (B2BUA) or proxy on behalf of the originating UA (and without notifying it).

SBC is a B2BUA, and, therefore, in some deployments it may be necessary for SBC to retry the request instead of sending a negative response back to the initiator of the request.

Diversion Headers

The Diversion header enables the called SIP user agent to identify from whom the call was diverted and why it was diverted. The header notifies the original caller:

That the call has been redirected to a destination that differs from the original target

The number to which the call has been redirected

The reason for the redirection

The diversion header is attached by networking elements that change the final destination of a request.

How to Configure SBC to Process SIP 3xx Responses

This section contains the steps for configuring SBC to process SIP 3xx responses.

Configuring SBC to Process SIP 3xx Responses

SUMMARY STEPS

1. configure

2. sbc sbc-name

3. sbe

4. adjacency sip adjacency-name

5. redirect-mode mode

6. attach

7. commit

8. exit

9. redirect-limit limit

10. commit

11. exit

12. show services sbc sbc-name sbe adjacencies

13. show services sbc sbc-name sbe redirect-limit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

configure

Example:

RP/0/0/CPU0:router# configure

Enables global configuration mode.

Step 2 

sbc service-name

Example:

RP/0/0/CPU0:router(config)# sbc mysbc

Enters the mode of an SBC service.

Use the service-name argument to define the name of the service.

Step 3 

sbe

Example:

RP/0/0/CPU0:router(config-sbc)# sbe

Enters the mode of the signaling border element (SBE) function of the SBC.

Step 4 

adjacency sip adjacency-name

Example:

RP/0/0/CPU0:router(config-sbc-sbe)# adjacency sip SipToIsp42

Enters the mode of an SBE SIP adjacency.

Use the adjacency-name argument to define the name of the service.

Step 5 

redirect-mode mode

Example:

RP/0/0/CPU0:router(config-sbc-sbe-adj-sip) redirect-mode recurse

Configures the behavior of the SBC on receipt of a 3xx response to an INVITE from the SIP adjacency.

redirect-mode pass-through—SBC passes all 3xx responses back to the caller (the default mode).

redirect-mode recurse—On 300, 301, 302 and 305 INVITE responses (under the redirect-limit, see the configuration steps below), SBC resends the INVITE to the first listed contact address. Otherwise, SBC passes 3xx responses back.

no redirect-mode—The no version of this command returns the adjacency to the default behavior.

Step 6 

attach

Example:

RP/0/0/CPU0:router(config-sbc-sbe-adj-sip)# attach

Attaches the adjacency.

Step 7 

commit

Example:

RP/0/0/CPU0:router(config-sbc-sbe-adj-sip)# commit

Saves configuration changes. Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Step 8 

exit

Example:

RP/0/0/CPU0:router(config-sbc-sbe-adj-sip)# exit

Exits the adjacency-sip mode and returns to the SBE mode.

Step 9 

redirect-limit limit

Example:

RP/0/0/CPU0:router(config-sbc-sbe)# redirect-limit 4

Configures the maximum number of redirections that the SBC performs on a given call.

redirect-limit limit—A numeric value, the maximum number of redirections performed before the call is failed (the range is 0-100, the default is 2).

no redirect-limit—the no version of this command returns the adjacency to the default behavior

Step 10 

commit

Example:

RP/0/0/CPU0:router(config-sbc-sbe)# commit

Saves configuration changes. Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Step 11 

exit

Example:

RP/0/0/CPU0:router(config-sbc-sbe)# exit

Exits the SBE mode.

Step 12 

show services sbc sbc-name sbe adjacencies

Example:

RP/0/0/CPU0:router(config-sbc)# show services sbc mysbc sbe adjacencies

Lists the adjacencies configured on SBEs.

Step 13 

show services sbc sbc-name sbe redirect-limit

Example:

RP/0/0/CPU0:router(config-sbc)# show services sbc mysbc sbe redirect-limit

Displays the current limit on the maximum number of redirections a call can undergo.

Examples of Configuring SBC to Process SIP 3xx Responses

This section provides two simple configurations for processing SIP 3xx responses on the SBC.

The following command configures the adjacency "SipToIsp42" to recurse on 300, 301, 302 and 305 INVITE responses.

(config)# sbc mySbc sbe adjacency sip SipToIsp42
(config-sbc-sbe-adj-sip)# redirect-mode recurse
(config-sbc-sbe-adj-sip)# end

The following command configures the SBE to perform maximum 4 SIP 3xx redirections per call.

(config)# sbc mySbc sbe sip redirect-limit 4

Additional References

The following sections provide references related to configuring media address pools.

Related Documents

Related Topic
Document Title

Cisco IOS XR master command reference

Cisco IOS XR Master Commands List

Cisco IOS XR SBC interface configuration commands

Cisco IOS XR Session Border Controller Command Reference

Initial system bootup and configuration information for a router using the Cisco IOS XR Software

Cisco IOS XR Getting Started Guide

Cisco IOS XR command modes

Cisco IOS XR Command Mode Reference


Standards

Standards
Title

No new or modified standards are supported by this feature, and support from existing standards has not been modified by this feature.


MIBs

MIBs
MIBs Link

To locate and download MIBs using Cisco IOS XR software, use the Cisco MIB Locator found at the following URL and choose a platform under the Cisco Access Products menu:

http://cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml


RFCs

RFCs
Title

RFC 2543

Session Initiation Protocol

RFC 3261

SIP: Session Initiation Protocol


Technical Assistance

Description
Link

The Cisco Technical Support website contains thousands of pages of searchable technical content, including links to products, technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more content.

http://www.cisco.com/techsupport