Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Add_workflow_for_techpubs
AUTH2UserResourceIdentifier{userKey=8a00a02355cd1c2f0155cd26cd5909df, userName='null'}
AUTH1UserResourceIdentifier{userKey=8a00a02355cd1c2f0155cd26cb8305e9, userName='null'}
JIRAIDAUTHSBX-117140
REV5UserResourceIdentifier{userKey=8a00a02355cd1c2f0155cd26cb8305e9, userName='null'}
REV6UserResourceIdentifier{userKey=8a00a02355cd1c2f0155cd26cb8305e9, userName='null'}
REV3UserResourceIdentifier{userKey=8a00a02355cd1c2f0155cd26cebf0c4f, userName='null'}
REV1UserResourceIdentifier{userKey=8a00a02355cd1c2f0155cd26cebf0c4f, userName='null'}


Overview

The

Spacevars
0series4
 supports TCP (Transmission Control Protocol) for peering, enterprise, and access configurations.

In an Access scenario, connections are on a per-subscriber-registration basis. The

Spacevars
0product
 keeps track of subscriber-initiated TCP “flow” beginning with when the endpoint registers, and uses it to forward any requests to the subscriber. The connection stays up as long as the subscriber is registered with the
Spacevars
0product
 .

A connection is deleted when the flow cannot reach the subscriber (example a broken TCP connection), when the connection is replaced by a newer one through successful modification, or when the registration is deleted.

For Peering, there are typically two connections, one for each direction. Connections to the peers are maintained and reused for all requests to the peer, independent of calls. The

Spacevars
0product
 can accept multiple connections from the same remote peer.

The

Spacevars
0product
 also supports TCP Fallback. When enabled, the following functionality is available:

  • Reject incoming INVITE over UDP with PDU size greater than allowed configured size if enabled on ingress Trunk Group. However, the same INVITE is supported by the
    Spacevars
    0product
    , if it is received over TCP.
  • Send out INVITE over TCP if outgoing INVITE size is more than the configured size enabled on the egress Trunk Group.

When TCP fallback feature is enabled it overrides any other configuration related to transport preference.

When a UE sends REGISTER request to the

Spacevars
0product
 over a TCP connection and the registration is successful, the TCP connection is present between UE and SBC for the life of the registration. If the registration becomes inactive, the
Spacevars
0product
 relies on the UE to clear (close) the TCP connection between the two.

The SIP Trunk Group flag clearTcpConnectionsforRegistration allows the

Spacevars
0product
 to clear the TCP connection between the UE and
Spacevars
0product
 once the registration becomes inactive. The
Spacevars
0product
 closes the TCP connection even when there are user agent failure registrations.

TCP Keep-alive Timer 

The 

Spacevars
0series4
supports configuring TCP Keep-alive timer settings for SIP Trunk Group and Signaling Port configurations. These parameters enable the
Spacevars
0product
to send out TCP Keep-alive packets to peer devices (for example, registered SIP phones) at configured intervals. 

Examples

SIP Trunk Group Configuration

The following example sets the NAT keep-alive timer to 200 seconds for SIP over TCP.

Code Block
languagenone
% set addressContext default zone ZONE_IAD sipTrunkGroup SBX10_IAD services natTraversal tcpKeepaliveTimer 200
% commit

% show addressContext default zone ZONE_IAD sipTrunkGroup SBX10_IAD services
natTraversal {
    tcpKeepaliveTimer 200;
}  

For configuration details, refer to SIP Trunk Group - Services (EMA) or SIP Trunk Group - Services - CLI.

SIP Signaling Port Configuration

The following example sets tcpKeepaliveTime to 90 seconds, tcpKeepaliveInterval to 60 seconds and tcpKeepaliveProbes count to 2 for SIP Signaling Port 2:

Code Block
languagenone
% set addressContext default zone ZONE_SIPART_AS sipSigPort 2 tcpKeepaliveTime 90 tcpKeepaliveInterval 60 tcpKeepaliveProbes 2
% commit
 
% show details addressContext default zone ZONE_SIPART_AS sipSigPort 2
ipInterfaceGroupName      LIG2;
ipAddressV4               10.7.14.179;
portNumber                5060;
mode                      inService;
state                     enabled;
recorder                  disabled;
siprec                    disabled;
tcpConnectTimeout         5;
dscpValue                 0;
tlsProfileName            defaultTlsProfile;
transportProtocolsAllowed sip-tcp;
sctpProfileName           defaultSctpProfile;
tcpKeepaliveTime          90;
tcpKeepaliveInterval      60;
tcpKeepaliveProbes        2; 

For configuration details, refer to Signaling Ports - SIP Sig Port (EMA) or Zone - SIP Sig Port - CLI.

TCP Media Port Ranges

The 

Spacevars
0series4
supports the ability to specify a TCP port range for MSRP and BFCP (over TCP) streams using the configurable TCP Port Range object. TCP port ranges are used by the
Spacevars
0product
to advertise TCP ports on which it can accept connections. TCP port ranges can be configured at the system level and on the SIP trunk group level.

The two configurable fields/parameters under tcpPortRange for the system include:

  • baseServerPort – The starting (base) port number for the range of TCP ports to use for media. The allowed baseServerPort range is 1-65534, with a system default value of 1024.
  • maxServerPort – The maximum TCP port number for the range of TCP ports to use for media. This value must be greater than the baseServerPort. The allowed maxServerPort range is 1-65534, with a system default value of 65534.

The two configurable fields/parameters under tcpPortRange for a SIP trunk group are similar:

  • baseServerPort – The starting (base) port number for the range of TCP ports to use for media for the trunk group. The allowed baseServerPort range is 1-65534, or "none." The default value is none which indicates the
    Spacevars
    0product
     uses the baseServerPort value specified at the system level.
  • maxServerPort The maximum TCP port number for the range of TCP ports to use for media. This value must be greater than the baseServerPort. The maxServerPort range is 1-65534, or "none." The default value is none which indicates the 
    Spacevars
    0product
     uses the maxServerPort value specified at the system level.

Each SIP trunk group can include a mediaIpAddress to indicate which IP address to use when allocating TCP media. The default value is 0.0.0.0 indicating that the system will choose an IP address from the mediaIpInterfaceGroup. The mediaIpAddress can be configured as either an IPv4 or IPv6 address. Any media IP address configured must belong to the IP Interface Group configured as the mediaIpInterfaceGroup for the trunk group.

Use the CLI 'show table' command to view the ipInterfaceGroup table listing TCP (or UDP) port ranges that are in assigned (mediaPortRangeAssigned) or available (mediaPortRangeUnassigned) for the indicated IP Interface Group.

For configuration details, refer to:

Alternative Solution for TCP Packet Relay of m=application Data

Available_since
TypeAvailable Since
Release10.1.2

The SBC can establish/disconnect a TCP-SIP session by:

  • using a SIP device (not the SBC itself) to trigger the establishment of a TCP-SIP connection, and
  • disconnecting TCP from SIP without disconnecting the SIP session.

The flag enhancedApplicationMediaSupport flag supports this feature. The flag options are enabled/disabled.

Info

This flag is applicable only to application media stream and application media transport type is TCP


When the flag is enabled, the following functionality is supported:

  1. The SBC initiates and establishes TCP on the egress leg only after the TCP connection is successful on ingress leg.
  2. The SBC supports transmitting URG (urgent) data from one leg to another.
  3. The SBC supports establishing and disconnecting a TCP connection multiple times within the same SIP session.

TCP-SIP Session Behavior

After the SBC establishes TCP connection at ingress, it generates the “TCP SYN” at egress:

  • Establish a TCP connection on ingress leg and then initiate TCP connection on egress leg
  • Accept Data from ingress leg only after the TCP connection is established on both legs
  • This implementation is based on assumption that the SBC need to support UAC and UAS Roles.         

When the SBC receives “TCP FIN” at either leg, it terminates and re-generates the “TCP FIN” at the other leg:

  • The SBC terminates the TCP connection on both legs when TCP FIN/RST is received on any of the legs.
  • For application media, the SBC always terminates the TCP connection on both legs if FIN is received on any of the legs.

When the SBC works for latch/re-latch, it creates a new TCP connection at the other leg:

  • For a re-latch, the endpoint sends a FIN before initiating TCP SYN again. In that case, the SBC terminates the existing connection on both legs and initiate new TCP connection on the other leg.
  • Any change in port on one leg results in re-establishing the connection on other leg.
  • Port and setup role modifications support for both re-INVITE and UPDATE.

As part this feature, the SBC supports transmitting Urgent (URG) data from one leg to another. The TCP connection terminates on both legs whenever TCP FIN or TCP RST is received on any of the legs.

Also as part of this feature, the SBC supports re-latch behavior meaning peer can disconnect and re-establish TCP connection any number of times within the same SIP session.

For configuration details, refer to: