SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER

Similar documents
SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER

SIP System Features. Differentiated Services Codepoint CHAPTER

Compliance with RFC 3261

SIP Compliance APPENDIX

Information About SIP Compliance with RFC 3261

Department of Computer Science. Burapha University 6 SIP (I)

SIP Network Overview

Voice over IP Consortium

Overview of SIP. Information About SIP. SIP Capabilities. This chapter provides an overview of the Session Initiation Protocol (SIP).

Internet Engineering Task Force (IETF) S. McGlashan Hewlett-Packard May Media Control Channel Framework. Abstract

N-Squared Software SIP Specialized Resource Platform SIP-SDP-RTP Protocol Conformance Statement. Version 2.3

Cisco BTS Softswitch SIP Guide, Release 7.0

INTERFACE SPECIFICATION SIP Trunking. 8x8 SIP Trunking. Interface Specification. Version 2.0

Protocol Compliance Statements for the CSG2

SIP Profiles on the Session Border Controller

Configuring SIP Registration Proxy on Cisco UBE

Session Initiation Protocol (SIP)

Controlling Overload in Networks of SIP Servers

Setting up Alcatel 4400 Digital PIMG Integration

Common Components. Cisco Unified Border Element (SP Edition) Configuration Profile Examples 5 OL

Overview of the Session Initiation Protocol

Configuring Multi-Tenants on SIP Trunks

Nortel Secure Router 2330/4134 Configuration SIP Survivability. Release: 10.2 Document Revision: NN

Interworking Signaling Enhancements for H.323 and SIP VoIP

3GPP TS V ( )

Setting Up a Mitel SX-2000 Digital PIMG Integration with Cisco Unity Connection

CUCM 10.5 / CUBE 9.5. BT SIP Trunk Configuration Guide. 1 BT SIP Trunk Configuration Guide

Setting Up an Alcatel 4400 Digital PIMG Integration with Cisco Unity Connection

BT SIP Trunk Configuration Guide

SIP Trunk design and deployment in Enterprise UC networks

The Session Initiation Protocol

TSIN02 - Internetworking

Cisco ATA 191 Analog Telephone Adapter Overview

Protocol Compliance Statements for the CSG2

map q850-cause through mgcp packagecapability

draft-ietf-sip-info-method-02.txt February 2000 The SIP INFO Method Status of this Memo

Configuring Triggers. Viewing and Deleting Triggers

Chapter 3: IP Multimedia Subsystems and Application-Level Signaling

SIP Proxy Deployment Guide. SIP Server 8.1.1

CSCF Serving-CSCF Configuration Mode Commands

SIP SIP Stack Portability

Session Initiation Protocol (SIP) Basic Description Guide

Using Genband E911 on Yealink IP Phones

Setting Up an Avaya Definity ProLogix Digital PIMG Integration with Cisco Unity Connection

The search being performed may take a significant time so a forking proxy must send a 100 Trying response.

SIP Trunk design and deployment in Enterprise UC networks

Circuit #1 - PTC Lab Reference Circuit.

Request for Comments: 2976 Category: Standards Track October 2000

SIP Trunk design and deployment in Enterprise UC networks

Tech-invite. RFC 3261's SIP Examples. biloxi.com Registrar. Bob's SIP phone

Transporting Voice by Using IP

SIP Profiles Feature Module

Managing Caching Performance and Differentiated Services

Flow Recovery Support for ECS Rules

Session Initiation Protocol (SIP) Overview

With 802.1X port-based authentication, the devices in the network have specific roles.

Configuring 802.1X. Finding Feature Information. Information About 802.1X

Application Scenario 1: Direct Call UA UA

Introduction to Cisco TV CDS Software APIs

ETSI TS V1.1.1 ( )

End-to-End QoS Support for SIP Sessions in CDMA2000 Networks. M. Ali Siddiqui, Katherine Guo, Sampath Rangarajan and Sanjoy Paul

Application Note. ShoreTel / Ingate / Verizon Business SIP Trunking. 09 June 2017 Version 1 Issue 2

DMP 128 Plus C V DMP 128 Plus C V AT

SIP Transparency. Supported Features CHAPTER

Voice over IP (VoIP)

Guide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16

Zone-Based Firewall Logging Export Using NetFlow

3GPP TR V7.0.0 ( )

IPv6 Commands: ipv6 h to ipv6 mi

Configuring QoS CHAPTER

NanoCUBE -- Emergency Number Preemption

Configuring IEEE 802.1x Port-Based Authentication

Allstream NGNSIP Security Recommendations

Session Border Controller

SIP Reliable Provisional Response on CUBE and CUCM Configuration Example

Nexmo SIP Trunking Configuration Guide. Skype for Business With Oracle E-SBC Acme Packet 3820 ECZ7.3.0 Patch 2 (Build 75)

ETSI TS V ( ) Technical Specification

CS 640 Introduction to Computer Networks Spring 2009

PSTN Fallback. Finding Feature Information

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

SIP TRUNKING CARRIER CERTIFICATION OXE-SIP configuration

DEPLOYMENT GUIDE Version 1.2. Deploying the BIG-IP LTM for SIP Traffic Management. Archived

Voice Performance Statistics on Cisco Gateways

Transparent Tunneling of QSIG and Q.931 over SIP TDM Gateway and SIP-SIP Cisco Unified Border Element

Session Initiation Protocol (SIP) Overview

3GPP TR V ( )

Call Control Discovery

Understanding SIP exchanges by experimentation

SIP Core SIP Technology Enhancements

1Z

Da t e: August 2 0 th a t 9: :00 SOLUTIONS

PSTN Fallback. Finding Feature Information

keepalive retries, on page 2 keepalive target, on page 3 keepalive timeout, on page 5 keepalive trigger, on page 6

Request for Comments: 4083 Category: Informational May 2005

DRG11/22 SW R2L Release Notes

Problem 7. Problem 8. Problem 9

All-IP Core Network Multimedia Domain

Avi Networks Technical Reference (16.3)

With 802.1X port-based authentication, the devices in the network have specific roles.

Outline. Connecting to the access network: DHCP and mobile IP, LTE. Transport layer: UDP and TCP

Transcription:

CHAPTER 4 Revised: March 24, 2011, This chapter describes features that apply to all SIP system operations. It includes the following topics: SIP Timer Values, page 4-1 SIP Session Timers, page 4-7 Limitations on Number of URLs, Parameters, and Headers, page 4-9 Differentiated Services Codepoint, page 4-12 Message Handling Based On Content-Length Header, page 4-12 Limitation On Transient Calls During Switchover, page 4-13 Automatic DNS Monitoring and Congestion Control, page 4-13 Automatic Fault Monitoring and Self-Healing, page 4-13 SIP Timer Values This section describes the SIP timers supported by the BTS 10200. Tip The provisioning information for SIP timers is provided in the SIP Timer Values for SIP Subscribers section on page 2-11 (for SIP subscriber lines) and the SIP Timer Values for SIP Trunks section on page 3-13 (for SIP trunks). Tip For more information about these timers, or for common SIP term definitions from this section, see RFC 3261. Rules for Configuring the SIP Timers Use the following rules to configure the SIP timers in the BTS 10200. The rules are necessary due to mutual dependency between the timers. If any rules fail, the system computes the values of the timers. TIMER-T2-SECS * 1000 > TIMER-T1-MILLI TIMER-T2-SECS * 1000 > TIMER-G-MILLI 4-1

SIP Timer Values Chapter 4 TIMER-B-SECS * 1000 > TIMER-A-MILLI TIMER-F-SECS * 1000 > TIMER-E-MILLI TIMER-D-SECS > 32 In addition to these rules, the timer values must be in the range of values specified in the Detailed Description of Timers section. Detailed Description of Timers The following list describers the timer parameters in the SIP Timer Profile (sip-timer-profile) table. TIMER-T1-MILLI (range 100 5000, default=500, in milliseconds) T1 is an estimate of the round-trip time (RTT). The system uses this timer to calculate the default values of the transaction timers A through H and J in the following list. Many of those timers scale with T1; therefore, changing the T1 value changes the default values for timers A through H and J. The calculation is shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-T2-SECS (range 1 10, default=4, in seconds) The maximum allowed interval for non-invite requests. It is also used as the maximum retransmit interval for SIP INVITE responses. TIMER-T4-SECS (range 1 10, default=5, in seconds) The timer represents the maximum amount of time the network takes to clear messages between client and server transactions. The system uses this timer to calculate the default value of the transaction timer TIMER-I-SECS; therefore, changing the T4 value changes the default value for TIMER-I-SECS. The calculation is shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-A-MILLI (range 100 5000, default=0, in milliseconds) The UAC timer for INVITE request retransmit interval. For example, if the value is 500 ms, the INVITE request retransmissions occ2 seconds). Applicable to UDP only. If TIMER-A-MILLI is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-B-SECS (range 1 3600, default=0, in seconds) The UAC INVITE transaction timer limits the INVITE transaction timeout. For SIP TCP trunk connections, there are certain scenarios in which the BTS 10200 does not immediately detect a loss of connection to an IP address endpoint after transmitting an INVITE request. As a result, we recommend provisioning this timer to 6 seconds when you are configuring TCP trunks, so that advancing to the FQDN s next IP address occurs in a timely manner. If TIMER-B-SECS is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-D-SECS (range 33 65, default=33, in seconds, set to 0 for TCP) The user agent client (UAC) timer used for the wait time of response retransmissions. For INVITE, because an ACK could be lost, the user agent server (UAS) must wait at least 32 seconds (assuming the default transaction timer on the other end is 32 seconds) to receive any retransmissions of responses from the UAS and send an ACK. In a Cisco BTS 10200 implementation, this transaction clearing timer is applicable only for INVITE requests. For non-invite messages, the transaction is cleared immediately upon receipt of final response. If TIMER-D-SECS is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-E-MILLI (range 100 5000, default=0, in milliseconds) The UAC timer for a non-invite request retransmit interval. For example, if the value is 500 ms, the non-invite request retransmissions occur at intervals of 500 ms, 1s, 2s, 4s, 4s, 4s, 4s, 4s, 4s, and 4s (assuming TIMER-F-SECS defined below is 32 seconds and TIMER-T2-SECS defined previously is four 4-2

Chapter 4 SIP Timer Values seconds). This parameter is applicable to user datagram protocol (UDP) only. If TIMER-E-MILLI is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-F-SECS (range 1 3600, default=0, in seconds) The UAC non-invite transaction timer that limits the number of retransmissions for non-invite requests. If TIMER-F-SECS is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-G-MILLI (range 100 5000, default=0, in milliseconds) Specifies the INVITE response retransmit interval. The UAS timer implemented to achieve reliability of successful final responses to INVITE requests. It starts when you are using a reliable transport protocol such as TCP. Even though the transport protocol might be reliable up to the next hop, it is not guaranteed reliable end-to-end if there are several proxy servers along the path when the call is set up. This timer is started when a a final response is sent for an INVITE request. The timer stops when a matching ACK is received for the final response sent. For example, if a 200 OK is sent for INVITE, the UAS must receive the matching ACK for the 200 OK. If the TIMER-G-MILLI is 500 ms, the final response to the INVITE from the UAS retransmits at intervals of 500 ms, 1s, 2s, 4s, 8s, 16s, 32s (assuming that TIMER-H-SECS is 32 seconds). If TIMER-G-MILLI is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-H-SECS (range 1 3600, default=0, in seconds) The UAS timer responsible for clearing an incomplete INVITE UAS transaction. It also controls the number of INVITE final response retransmissions sent to UAC. The timer is started upon sending a final response for the INVITE request. It is the total wait time for ACK receipt from UAC. If TIMER-H-SECS is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-I-SECS (range 1 10, default=0, in seconds) This UAS timer is the wait time for ACK retransmits. It frees the server transaction resources and starts when the first ACK to the final response is received for INVITE requests. Upon receipt of an ACK for certain INVITE final responses (401, 415, 420, 422, 423, 480, and 484), the value of TIMER-I-SECS is set to a fixed duration of 32 seconds. The responses result in resubmission of the original INVITE with modifications, and prevent the resources from prematurely freeing. A 481 (Call-Leg/Transaction does not exist) or a 408 (Request Timeout) response sent for the INVITE results in a much smaller fixed duration of four seconds for timer I. This ensures that CCB resources are promptly freed when the call is not set up, allowing reuse for other calls. For ACK to all other INVITE final responses, which are not typically followed by a re-attempt, the timer duration for this timer is set at TIMER-I-SECS. When a BYE is subsequently sent or received on a call in progress, and TIMER-I-SECS is running for that call, it is canceled and restarted for a smaller fixed duration of four seconds to reduce CCB hold time after call completion, and to optimize CCB resource usage. If TIMER-I-SECS is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. TIMER-J-SECS (range 1 3600, default=0, in seconds, set to 0 for TCP) This UAS timer cleans up non-invite UAS transactions. A shorter nonconfigurable timer of four seconds is used for BYE and CANCEL. Additionally, when a BYE or CANCEL is sent or received on a call in progress, if TIMER-J-SECS is running for any non-invite transaction associated with that call, it is canceled and restarted for a smaller fixed duration of four seconds to reduce CCB hold time after call completion, and to optimize CCB resource usage. If TIMER-J-SECS is set to the default value of 0, the system automatically calculates a value for it, as shown in the Computation of Default Timer Values A Through J from Timers T1 and T4 section on page 4-5. 4-3

SIP Timer Values Chapter 4 INVITE-INCOMPLETE-TIMER-SECS (range 15 600, default=40, in seconds) This UAC timer cleans up UAC INVITE transactions for which a provisional response less than 180 was received, but no ringing or final response was received within a reasonable period of time. This timer starts upon receipt of the first provisional response (>=100 and <180) for the INVITE message sent. Upon receipt of the final response or 18x response to INVITE request, this timer is canceled. This timer is also started if a CANCEL is sent, to clean up the INVITE transaction in case of a final response (487), indicating that the request was canceled, is not received. The process involving receipt of the 180 response is shown in Figure 4-1. Figure 4-1 INVITE Incomplete Timer Process with 180 Response BTS UA INVITE incomplete timer is started upon receipt of first provisional response < 180 1 2 INVITE sip:9725550122@ua;user=phone SIP/2.0 100 Trying INVITE incomplete timer is canceled upon receipt of 180 Ringing. 3 4 180 Ringing 200 OK (INVITE) 64*T1 milliseconds INVITE transaction clearing timer is started upon receipt of a final response. 5 6 ACK sip:9725550122@ua;user=phone SIP/2.0 BYE sip:9725550122@ua;user=phone SIP/2.0 INVITE transaction is cleared here BYE transaction is cleared immediately upon receipt of a final response to the BYE 7 200 OK (BYE) 191112 MIN-SE (range 100 1800, default=900, in seconds) This is a session timer. It specifies the minimum session-expires allowed on the Cisco BTS 10200. Any INVITE request received with a session-expires lower than the MIN-SE is rejected with a 422 response that has a header Min-SE = MIN-SE. SESSION-EXPIRES-DELTA-SECS (range 100 7200, default=1800, in seconds) This is a session timer. It cleans up resources in case of an abnormal session end. The Cisco BTS 10200 sends the SESSION-EXPIRES-DELTA-SECS as the session-expires header in the initial INVITE. When a session is established, a session timer is started based on the negotiated value (it can be lower or equal to the SESSION-EXPIRES-DELTA-SECS). If the BTS 10200 is determined as the refresher, it starts a session timer for duration of half the negotiated time. A re-invite or update is sent out upon timer expiry to refresh the session. If the remote end is determined as the refresher, then a session timer is started for duration of (negotiated session-expires 10 seconds). In this case, a BYE is sent to end the session if a session refresh (re-invite or update) is not received before the session timer expires. 4-4

Chapter 4 SIP Timer Values Note When the SESSION-EXPIRES-DELTA-SECS timer expires, the BTS 10200 might send a re-invite (as opposed to an UPDATE) with the previously sent session description protocol (SDP). If the BTS 10200 receives a 200 OK with the SDP changed from the previously received SDP, the BTS 10200 does not send this changed SDP to the origination. Computation of Default Timer Values A Through J from Timers T1 and T4 If the following timer values are not explicitly provisioned, the system computes them automatically, based on the values of TIMER-T1-MILLI and TIMER-T4-SECS, as follows: TIMER-A-MILLI = TIMER-T1-MILLI TIMER-B-SECS = (64 * TIMER-T1-MILLI) / 1000 TIMER-E-MILLI = TIMER-T1-MILLI TIMER-F-SECS = (64 * TIMER-T1-MILLI) / 1000 TIMER-G-MILLI = TIMER-T1-MILLI TIMER-H-SECS = (64 * TIMER-T1-MILLI) / 1000 TIMER-I-SECS = TIMER-T4-SECS TIMER-J-SECS = (64 * TIMER-T1-MILLI) / 1000 Calculation of Timer Retransmission Count The retransmit count is defined as the number of times the same request or response is retransmitted after the message is sent once to the transport layer. The BTS 10200 computes this retransmit count based on RFC 3261 recommendations. 4-5

SIP Timer Values Chapter 4 INVITE Retransmit Count The INVITE retransmission process is shown in Figure 4-2. If there is no response for the initial INVITE request, then INVITE requests are retransmitted as shown. For example, if TIMER-A-MILLI is 500 ms and TIMER-B-SECS is 32 seconds, then there are six retransmissions after the first request, for a total of seven requests from the UAC. The retransmissions occur at intervals of 500 ms, 1s, 2s, 4s, 8s, 16s, and 32s. Figure 4-2 INVITE Retransmissions with No Response Non-INVITE Retransmit Count If there is no response for the initial non-invite request, INIVTE requests are retransmitted as shown. For example, if TIMER-E-MILLI is 500 ms, TIMER-T2-SECS is 4 seconds and TIMER-F-SECS is 32 seconds, then non-invite retransmissions occur at intervals of 500 ms, 1s, 2s, 4s, 4s, 4s, 4s, 4s, 4s, 4s. This means that retransmissions occur with an exponentially increasing interval that caps at T2. In this particular scenario, there are 10 retransmissions which is a total of 11 requests from UAC. 4-6

Chapter 4 SIP Session Timers Response Retransmit Count If no ACK is received for the final response of the INVITE request, the responses are retransmitted. This process is shown in Figure 4-3. Figure 4-3 INVITE Server Transaction Timer Cancelled Upon Receipt of ACK INVITE server transaction timer is started here. 1 BTS INVITE sip:9725550122@ua;user=phone SIP/2.0 UA 2 SIP/2.0 100 Trying INVITE final response retransmission timer G is started here. 3 4 5 6 SIP/2.0 180 Ringing SIP/2.0 200 OK SIP/2.0 200 OK SIP/2.0 200 OK INVITE server transaction timer is started for a duration of H seconds. It is canceled if ACK is received within this period. INVITE server transaction timer is canceled here, and final response retransmissions are stopped, upon receipt of ACK msg. Transaction clearing timer is started. Transaction clearing timer fires here and INVITE and ACK transactions are freed. 7 ACK sip:9725550122@ua;user=phone SIP/2.0 Transaction clearing timer is started for a duration of 1 second as soon as the ACK is received. When it expires, the INVITE and ACK transactions are freed. 191114 SIP Session Timers This section explains how session timers work. The system uses session timers to periodically refresh SIP sessions during call processing or in-progress calls. To provision session timers for subscribers, see Chapter 2, SIP Subscribers. To provision session timers for trunks, see Chapter 3, SIP Trunks. 4-7

SIP Session Timers Chapter 4 Session Timers Description Session timers allow for a periodic refresh of SIP sessions through a SIP re-invite or UPDATE request. The refresh allows the BTS 10200 SIP interface to determine if a SIP session is still active. If the session is inactive, possibly because the session did not end normally, the Cisco BTS 10200 sends a SIP BYE request and cleans up resources dedicated to the session. Stateful SIP proxies and the remote SIP endpoint handling the BYE request can clean up resources dedicated to this session as well. The BTS 10200 support for the session timer follows the specifications described in the IETF document RFC 4028. Session durations are configured within a range of 30 minutes to 2 hours. The BTS 10200 does not allow for negotiating a session less than 15 minutes. This feature does not require the session timer capability on the remote SIP endpoint. If the CA switches over during an active call with a session timer active, the session timer is deactivated. In this scenario, if the BTS 10200 is the negotiated refresher of the session timer, a call release might occur on when the session timer expires. If the session timer (SUB-SESSION-TIMER-ALLOWED) is enabled, the BTS 10200 (as UAC) adds, to the initial INVITE message, a timer token in the Supported header, as well as a Session-Expires header with the Refresher parameter set to Uac. Whenever the SIP call is sent from the BTS 10200, the BTS 10200 specifies itself to be the refresher. If a session timer is not supported on the remote end, the value sent in the Session-Expires header is set for the session duration. The BTS 10200 sends a periodic refresh request at half of the negotiated Session-Expires value. If the session timer is enabled and an initial INVITE is received by the BTS 10200 with a timer token in the Supported header and a Session-Expires header, it sends a 200 class response with a Require header specifying timer, and a Session-Expires header and refresher parameter. The Session-Expires header contains a session duration and refresher value set to whatever was received in the initial INVITE. If refresher parameter is not received in the initial INVITE, the BTS 10200 sets it to Uas indicating that the BTS 10200 is the refresher. The BTS 10200 sends a periodic refresh request at half the negotiated session duration. If the session timer is enabled and an initial INVITE is received by the BTS 10200 without a timer token in the Supported header or a Session-Expires header, a 200 class response is sent without a Require header with timer value, or a Session-Expires header. The BTS 10200 sends periodic refresh requests at half the negotiated session duration. If the session timer is disabled and an initial INVITE is sent by the BTS 10200, no Supported header with timer token or a Session-Expires header is added, indicating to the remote SIP endpoint that the BTS 10200 does not support session timer. When the feature is disabled and an initial INVITE is received by the BTS 10200, any session timer related headers are ignored. The 200 class response does not include a Require header with timer value or a Session-Expires header. Configurable parameters in the sip-timer-profile table allow the user to select the desired session duration (SESSION-EXPIRES-DELTA-SECS) and the minimum tolerable session duration (MIN-SE) if negotiated down to a lower value by the remote SIP endpoint or proxy. If the parameters are not explicitly specified, the default session duration is 30 minutes, and the minimum tolerable session duration allowed is 15 minutes. A session that is not refreshed at the end of the duration interval results in a call release and session clean-up. 4-8

Chapter 4 Limitations on Number of URLs, Parameters, and Headers Note When the SESSION-EXPIRES-DELTA-SECS timer expires, the BTS 10200 might send a re-invite (as opposed to an UPDATE) with the previously sent SDP. If the BTS 10200 receives a 200 OK with the SDP changed from the previously received SDP, the BTS 10200 does not send this changed SDP to the origination. Upgrades and SIP Session Timers The SIP Session Timer values configured before Release 6.0.1 are reset to default after an upgrade to Release 6.0.1. You cannot configure SIP session timers, such as minse and session_expires_delta_secs, on the CA-CONFIG table. To configure the SIP timers, use the SIP-TIMER-PROFILE table and reference the SIP timers in the CA-CONFIG table. Using the EXPIRES Header The system can be provisioned to include an EXPIRES header in all outbound INVITE messages and cancel a call if no response is received. This capability is provisioned through the SIA-DEFAULT-INVITE-EXPIRES-SECONDS parameter in the Call Agent Configuration (ca-config) table. Provisioning a non-zero value (default is 0) causes the system to include an Expires header in all outbound INVITE messages. The system starts a timer for each outbound INVITE. The messaging continues as follows: If a final response is received (any SIP response with a code greater than 199), the timer is canceled. If no final response is received, the system tears down the call. The system might also send a CANCEL message: If no provisional response was received after the initial INVITE, the system tears down the call silently (no messages are sent to the terminating device). If a provisional response was received after the initial INVITE, the system sends a CANCEL message. Limitations on Number of URLs, Parameters, and Headers The system imposes limits on the decoding of incoming SIP messages. These limits are applicable to both subscriber-related and trunk-related incoming SIP messages. These limitations are intended to protect the system from decoding extremely large messages, which in turn could overload the system and cause performance problems. Note These limits are not provisionable. If you need to change any of these limits, contact your Cisco account team. Table 4-1 lists the limits related to URL and REQURI. 4-9

Limitations on Number of URLs, Parameters, and Headers Chapter 4 Table 4-1 Limits on URL and REQURI Parameter Limit Maximum number of URLs (SIP+Tel+Unknown) in a SIP message 25 Maximum number of parameters in the REQURI of a message 10 Maximum number of header parameters (parameters occurring after? character) 5 in the Request-URI of a message Maximum number of parameters in a SIP URL 10 Maximum number of header parameters (parameters occurring after? character) 5 in a SIP URL Maximum number of parameters in a Tel URL 5 Table 4-2 lists the maximum number of parameters allowed in each SIP message header. Table 4-2 Maximum Number of Parameters Allowed in SIP Message Headers Header Maximum Number of Parameters Allowed in Header Contact 10 Via 10 Route 5 Record-Route 5 Diversion 10 Call-Info 5 Alert-Info 5 Error-Info 5 P-Asserted-Identity 5 Accept-Contact 5 To 5 From 5 Referred-By 5 Refer-To 5 Table 4-3 lists the maximum number of unknown Option tags of a specified kind allowed in a SIP message. Table 4-3 Maximum Number of Unknown Option Tags in SIP Message Message Maximum Number of Unknown Option Tags Allowed Supported 5 Unsupported 5 Require 5 4-10

Chapter 4 Limitations on Number of URLs, Parameters, and Headers Table 4-4 lists the maximum number of parameters allowed in each SIP message header. Table 4-4 Maximum Number of Parameters Allowed in SIP Message Headers Header Name Parameter Type Maximum Number of Parameters Allowed in Header Replaces All parameters 5 Event All parameters 5 Reason All parameters 5 Accept All parameters 5 Session-Expires All parameters 5 Min-SE All parameters 5 Warnings All parameters 5 Accept-Language Number of languages 5 Accept-Language Language parameters 5 Accept-Encoding All parameters 5 Authorization All parameters 15 Retry-After All parameters 5 P-Charging-Vector All parameters 10 Table 4-5 lists the maximum number of headers allowed in a SIP message. Table 4-5 Maximum Number of Headers Allowed in a SIP Message Header Name Maximum Number of Headers Allowed Contact 5 Via 5 Route 5 Record-Route 5 Diversion 5 Call-Info 5 Alert-Info 5 Error-Info 5 P-Asserted-Identity 5 Contact 5 To 1 From 1 Call-ID 1 CSeq 1 Session-Expires 1 Min-SE 1 4-11

Differentiated Services Codepoint Chapter 4 Table 4-5 Maximum Number of Headers Allowed in a SIP Message (continued) Header Name Maximum Number of Headers Allowed Referred-By 1 Refer-To 1 Replaces 1 Allow-Events 5 Event 1 Reason 5 Accept 5 Accept-Encoding 5 Authorization 1 Retry-After 1 P-Charging-Vector 1 Differentiated Services Codepoint The SIP differentiated services codepoint (DSCP) feature enables you to configure the system such that SIP signaling traffic is sent at a desired priority over IP. This is important because SIP messages travel over the same network as the voice traffic. If this network is congested, the voice data might delay the SIP signaling packets, increasing call setup time. Raising the SIP packet priority in relation to other traffic reduces the delay. Note We recommend using the default values for the DSCP parameters. These values should be changed only after careful consideration, or if there is a specific need. Caution If you change any parameters in the ca-config table, these changes do not take effect until the CA platform switches over or restarts. Message Handling Based On Content-Length Header This section describes the handling of SIP messages based on the Content-Length header. For outbound TCP and UDP messages, the BTS 10200 complies with RFC 3261 by including a Content-Length header with the correct value for the body of the request. For inbound UDP messages, the BTS 10200 complies with RFC 3261 by assuming the length in the Content-Length header is correct and discarding additional bytes (if any) in the content body. If the actual content length is shorter than the length indicated in the header, the BTS 10200 reads the content and attempts to complete the call with the content that was received. This handling of shortened content is not compliant with RFC 3261 (which requires messages with shortened content to be discarded with a 400 Bad Request response), but it is intended as a more tolerant treatment for inbound messages. Regardless of the content length, the BTS 10200 attempts to complete calls based on the inbound message. However, if the content itself is invalid, the BTS 10200 rejects the call. 4-12

Chapter 4 Limitation On Transient Calls During Switchover For inbound TCP messages, the BTS 10200 requires the received length to be correct, because the TCP message contains is a continuous stream of bytes rather than discrete packets. This treatment is compliant with RFC 3261. Limitation On Transient Calls During Switchover If the active CA experiences a problem and switches over to the standby side, stable calls are preserved. However, calls that are in a transient state (call setup is not complete) might be dropped or improperly set up. During a CA switchover, the BTS 10200 cannot complete call setup for these transient calls. The BTS 10200 preserves the registration and contact data for the call. After the switchover is complete, the BTS 10200 can complete calls based on the existing registration and contact. You can provision the BTS 10200 to set an EXPIRES header for INVITEs sent on outbound calls. This provisioning is done through the SIA-DEFAULT-INVITE-EXPIRES-SECONDS parameter in the ca-config table. (The system default behavior is to omit the Expires header.) For details about this parameter, see the Using the EXPIRES Header section on page 4-9. In addition, transient calls and inactive connected calls originated on the BTS 10200 are cleaned up through a periodic audit mechanism that runs once per hour. The frequency of this audit can be modified. However, changing this requires careful consideration to avoid adverse effects on call processing. Contact Cisco TAC if you have identified a need to change this frequency. Automatic DNS Monitoring and Congestion Control SIP depends heavily on name resolution to route messages. As a result, if response times from the DNS server become large, the SIP process might become congested and affect system performance. Therefore, the system automatically monitors DNS response times and controls the level of congestion. The BTS 10200 periodically measures the latency of DNS responses. If a series of measurements exceeds a provisioned threshold, SIA-DNS-LATENCY-TOLERANCE-MILLISECONDS in the ca-config table, the SIP process in the BTS 10200 stops issuing DNS queries and might fail calls that require a DNS query. This prevents the SIP process from becoming congested. When the measured latency drops below this threshold, queries are permitted again. By default, the tolerance is set high at 400ms. A well-engineered DNS should return responses in less than 10 ms. The monitoring mechanism requires that the BTS 10200 standard host name be configured in the DNS server. While this is standard practice, you should verify that it is configured in the DNS, because this is essential to the operation of the monitor. Automatic Fault Monitoring and Self-Healing The system performs self-checks and recovers automatically if any process goes down. After the system recovers, new calls can be set up, and calls that were established (answered) prior to the fault continue to be handled. However, any transactions that were pending at the time of the fault are not processed after the system recovers. 4-13

SIP Enhancements Chapter 4 SIP Enhancements The SIP Enhancements feature enables the service provider to correlate the IP Multimedia Subsystem (IMS) charging information from other elements in the IMS system with the call detail record (CDR) provided by the Telephony Application Server (TAS). The correlation information includes a globally unique charging identifier that makes the billing effort easy. TAS is an application server which provides telephony features to subscribers through Serving Call Session Control Function (SCSCF) within an IMS network. It interfaces with SCSCF using the IP Multimedia Service Control (ISC) interface. The TAS uses the P-Charging-Vector header for IMS billing. The P-Charging-Vector header has the collection of charging information. The IMS Charging Identity (ICID) value in the P-Charging-Vector header correlates the CDRs from different elements in the IMS system. TAS captures the ICID value in the P-Charging-Vector header of the initial INVITE request to set up a session. The captured ICID value is made available to the service provider through the CDR generated at TAS. If there is no P-Charging-Vector in the INVITE message, the ICID value is not be reported in the CDR. The TAS might receive the P-Charging-Vector header from SCSCF in the INVITE request, 1xx response, 2xx response, or BYE request. The TAS relays this header back to SCSCF as it is in the request/response received from the SCSCF. The TAS does not generate or modify the P-Charging-Vector. This feature helps the subscriber to identify the called party. The P-Called-Party-ID has the SIP URI (address-of-record) associated with the Request-URI of the INVITE request received at the BTS. It is a header added to the SIP Invite message that goes out to a SIP subscriber, and it helps the subscriber identify the called party. This feature is useful when one subscriber has registered multiple identities. Prerequisites The BTS captures the ICID value in the P-Charging-vector only when the BTS is configured as TAS. Limitations The CDR can store ICID values that are up to 32 bytes in length. BTS provides the P-Called-Party-ID for SIP subscribers but not for SIP trunks. BTS supports P-Called-Party-ID for INVITE requests only. SIP Traffic Measurement Enhancements SIP call failures are due to network failure or end user conditions. The SIP Traffic Measurement Enhancements feature helps the customer to identify the call failures due to end user conditions such as: If the caller abandons the call before the receiver of the call answers (called party answers). If the receiver of the call is busy or not responding to the incoming call. These call traffic statistics serve as input for further network planning and expansions. This feature introduces the following counters for call failures due to end user conditions: Call abandoned Call abandoned by caller before called party answers (abandoned call is one where caller releases the call before called party answers). User busy Called party busy. 4-14

Chapter 4 SIP Traffic Measurement Enhancements No answer Called party is not responding to an incoming call. Counters are maintained at the system level (both SIP endpoints and SIP trunks) and at each SIP trunk group level. The counters are maintained separately for originating and terminating calls. Call Processing (CallP), SIP stack, and SIP Adapter update the Traffic Measurement (TMM) counters at run-time for SIP traffic. Note Prior to Release 6.0 these call failure counters were not captured as a part of the summary report. Summary Report Changes System Level This section provides information on the counters included in Release 6.0. The Call Abandon, User Busy, and No Answers counters for call failures due to end user conditions are captured in summary reports. The summary report changes can be viewed at two levels: System Level Trunk Group Level Users can obtain the call processing and SIP statistics by means of the following commands: measurement-callp-summary measurement-sia-summary The measurement-callp-summary command provides the summary reports of call processing statistics for system-wide traffic that are captured for a specified call agent during that collection interval (time-interval). Use the following command to query the counters: # show measurement_callp_summary or report measurement_callp_summary The measurement-sia-summary command provides the summary reports of SIP (both SIP endpoints and SIP trunks) and the SIP interface adapter statistics that are captured for a specified call agent during a collection interval (time-interval). Each collection interval starts on the hour, half-hour, or quarter-hour. # show measurement_sia_summary or report measurement_sia_summary Note The SIP stack counters that capture the statistics related to ingress and egress of 3xx, 4xx, 5xx, and 6xx SIP responses do not increment call abandoned, user busy, and no answers counters on retransmissions (both reception and transmission). Trunk Group Level Use the following command to query the counters at trunk group level. This command provides the trunk group usage information. # show measurement_tg_usage_summary or report measurement_tg_usage_summary 4-15

SIP Traffic Measurement Enhancements Chapter 4 Trunk Group Usage Counters This section lists the new and changed trunk group usage counters. New Trunk Group Usage Counters These counters are specific to SIP trunks. Other types of trunks are not supported. For a description of these counters, see the Cisco BTS 10200 Softswitch Operations and Maintenance Guide. TRKGRP_SIP_3xx_RX TRKGRP_SIP_3xx_TX TRKGRP_SIP_4xx_RX TRKGRP_SIP_4xx_TX TRKGRP_SIP_5xx_RX TRKGRP_SIP_5xx_TX TRKGRP_SIP_6xx_RX TRKGRP_SIP_6xx_TX TRKGRP_INBOUND_FAIL TRKGRP_INBOUND_SUCC TRKGRP_INCOM_CALL_ABDN TRKGRP_INCOM_CALL_NOT_ANS TRKGRP_INCOM_END_USR_BUSY TRKGRP_OUTBOUND_SUCC TRKGRP_OUTG_CALL_ABDN TRKGRP_OUTG_CALL_NOT_ANS TRKGRP_OUTG_END_USR_BUSY Changed Trunk Group Usage Counters The changed trunk group usage counter is given below. For a description of the counter, see the Cisco BTS 10200 Softswitch Operations and Maintenance Guide. TRKGRP_OUTBOUND_FAIL Call Processing Counters This section lists the new and changed call processing counters. New Call Processing Counters The new call processing counters are as follows. See the Cisco BTS 10200 Softswitch Operations and Maintenance Guide for the description of these counters. CALLP_SIP_ORIG_CALL_ABDN 4-16

Chapter 4 SIP Traffic Measurement Enhancements CALLP_SIP_ORIG_CALL_NOT_ANS CALLP_SIP_ORIG_END_USR_BUSY CALLP_SIP_TERM_CALL_ABDN CALLP_SIP_TERM_CALL_NOT_ANS CALLP_SIP_TERM_END_USR_BUSY CALLP_SIP_ORIG_SUCC CALLP_SIP_TERM_SUCC Note The New Call Processing counters are pegged when the SIP signalling protocol is used. Changed Call Processing Counters The changed Call Processing counters are as follows. See the Cisco BTS 10200 Softswitch Operations and Maintenance Guide for the descriptions of these counters. CALLP_SIP_ORIG_FAIL CALLP_SIP_TERM_FAIL 4-17

SIP Traffic Measurement Enhancements Chapter 4 4-18