Recurse 305 Only Redirect Action

The Oracle® Enterprise Session Border Controller has a SIP feature called redirect action. This is a feature that allows the Oracle® Enterprise Session Border Controller, acting as a SIP Proxy or a Session Agent, to redirect SIP messages after receiving a SIP redirect (3xx) response. Previously, for the ACLI objects of sip-interface and session-agent on the Oracle® Enterprise Session Border Controller, you could set the redirect-action parameter to proxy or recurse. In Release 6.3 you can additionally set a value of recurse-305-only for the redirect-action parameter.

Redirect Action Process

When the redirect-action parameter is set to proxy, the Oracle® Enterprise Session Border Controller sends SIP Redirect responses back to the previous hop (back to the User Agent Client (UAC)) when the User Agent Server (UAS) is not a session agent. The URI in the Contact of the response is changed from the URI that was in the original request.

Note:

If the target of the request is a session agent, the session agent's redirect action supercedes that of the SIP interface.

When the redirect-action parameter is set to recurse, if the Oracle® Enterprise Session Border Controller receives a SIP redirect (3xx) response on the SIP interface, it automatically redirects all requests to the Contact URI specified in the 3xx response. The responses contain the same Contact URI that was in the original request sent to the UAS.

For example, if UAC X sends an INVITE to the Oracle® Enterprise Session Border Controller set up as a SIP proxy, the Oracle® Enterprise Session Border Controller forwards the INVITE to UAS Y (Y is not a session agent). Y then responds to the Oracle® Enterprise Session Border Controller with a 3xx response (redirection message) with the same URI that was in the original request. This indicates to the Oracle® Enterprise Session Border Controller that if it receives any future requests directed toward Y, that it should automatically redirect the request directly to Y. The Oracle® Enterprise Session Border Controller then recurses, or repeatedly sends subsequent incoming messages to the Contact URI specified in the Header of the 3xx responses.

When the redirect-action parameter is set to recurse-305-only, if the Oracle® Enterprise Session Border Controller receives a 305 SIP redirect response (Use Proxy) on the SIP interface, it automatically redirects all requests to the Contact URI specified in the 305 response. All other 3xx responses are sent back to the previous hop.

When the UAS is a session agent, the Oracle® Enterprise Session Border Controller can send the SIP redirect response back to the UAC using the value in the session agent’s redirect action field. If there are too many UASs to define as individual session agents, or if the UASs are Hosted NAT Traversal (HNT) endpoints, and SIP redirect responses need to be proxied for UASs that are not session agents, you can set the behavior at the SIP interface level.

Redirect-Action Set to Proxy

The following occurs if you set the redirect-action parameter to proxy on the Oracle® Enterprise Session Border Controller:

  1. X (UAC) sends an INVITE to the Oracle® Enterprise Session Border Controller.
  2. The Oracle® Enterprise Session Border Controller forwards the INVITE to Y (UAS).
  3. Y sends the 3xx REDIRECT response to the Oracle® Enterprise Session Border Controller with a different URI in the message header.
  4. The Oracle® Enterprise Session Border Controller forwards the 3xx REDIRECT response to the previous hop. X receives the 3xx REDIRECT response from the previous hop.
  5. X redirects all subsequent requests to the URI in the message header received from Y.

    The following illustration shows an example of a dialog between X, Y, Z, and the Oracle® Enterprise Session Border Controller during a redirect-action session set to proxy.

    This image shows a dialog between X, Y, Z, and the OCSBC during a redirect-action session set to proxy.

Redirect-Action Set to Recurse

The following occurs if you set the redirect-action parameter to recurse on the Oracle® Enterprise Session Border Controller:

  1. X (UAC) sends an INVITE to the Oracle® Enterprise Session Border Controller.
  2. The Oracle® Enterprise Session Border Controller forwards the INVITE to Y (UAS).
  3. Y sends the 3xx REDIRECT response to the Oracle® Enterprise Session Border Controller with the same URI as the URI sent in the original request.
  4. The Oracle® Enterprise Session Border Controller forwards the 3xx REDIRECT response to X (UAC).
  5. X (UAC) sends all subsequent requests directly to Y (UAS) per the URI specified from the original INVITE request.

    The following illustration shows an example of a dialog between X, Y, and the Oracle® Enterprise Session Border Controller during a redirect-action session set to recurse.

    Steps in call flow for redirect action when set to recurse.

Redirect-Action Set to Recurse-305-Only

The following occurs if you set the redirect-action parameter to recurse-305-only on the Oracle® Enterprise Session Border Controller:

  1. X (UAC) sends an INVITE to the Oracle® Enterprise Session Border Controller.
  2. The Oracle® Enterprise Session Border Controller forwards the INVITE to Y (UAS).
  3. Y sends a 305 REDIRECT response to the Oracle® Enterprise Session Border Controller with the same URI as the URI sent in the original request.
  4. The Oracle® Enterprise Session Border Controller forwards the 305 REDIRECT response to X (UAC).
  5. If 305 response received, X sends requests to Y directly. If other 3xx responses received, requests are sent to URI specified in the 3xx response (works the same as if redirect-action set to proxy).

    The following illustration shows an example of a dialog between X, Y, and the Oracle® Enterprise Session Border Controller during a redirect-action session set to recurse-305-only.

    This image depicts a dialog between X, Y and the OCSBC during a redirect-action set to recurse-305-only.

Redirect Configuration for SIP Interface

You can configure the Oracle® Enterprise Session Border Controller to redirect requests from a UAC to a UAS using the URI in 305 responses only. You can use the ACLI at the paths session-router, sip-interface or session-router, session-agent.

To configure the redirect-action feature on the SIP interface on the Oracle® Enterprise Session Border Controller:

  1. In Superuser mode, type configure terminal and press Enter.
    ORACLE# configure terminal
  2. Type session-router and press Enter to access the session router-related configurations.
    ORACLE(configure)# session-router
  3. Type sip-interface and press Enter to access the SIP interface-related configurations. The system prompt changes to let you know that you can begin configuring individual parameters for this object.
    ORACLE(session-router)# sip-interface
    ORACLE(sip-interface)#
  4. Enter redirect-action followed by the following value:
    • recurse-305-only

    ORACLE(sip-interface)# redirect-action recurse-305-only

    When the Oracle® Enterprise Session Border Controller receives a 305 SIP redirect response (Use Proxy) on the SIP interface, it automatically redirects all requests to the Contact URI specified in the 305 response. All 3xx responses other than 305 responses are sent back to the previous hop.

    To disable this feature, enter redirect-action and press Enter without entering a value.
    ORACLE(sip-interface)# redirect-action