Steering Pools
Steering pools define sets of ports that are used for steering media flows through the Oracle® Enterprise Session Border Controller. These selected ports are used to modify the SDP to cause receiving session agents to direct their media toward this system. Media can be sent along the best quality path using these addresses and ports instead of traversing the shortest path or the BGP-4 path.
For example, when the Oracle® Enterprise Session Border Controller is communicating with a SIP device in a specific realm defined by a steering pool, it uses the IP address and port number from the steering pool’s range of ports to direct the media. The port the Oracle® Enterprise Session Border Controller chooses to use is identified in the SDP part of the message.
Note:
The values entered in the steering pool are used when the system provides NAT, PAT, and VLAN translation.Configuration Overview
To plan steering pool ranges, take into account the total sessions available on the box, determine how many ports these sessions will use per media stream, and assign that number of ports to all of the steering pools on your Oracle® Enterprise Session Border Controller. For example, if your Oracle® Enterprise Session Border Controller can accommodate 500 sessions and each session typically uses 2 ports, you would assign 1000 ports to each steering pool. This strategy provides for a maximum number of ports for potential use, without using extra resources on ports your Oracle® Enterprise Session Border Controller will never use.
- IP address—IP address of the steering pool.
- start port—Port number that begins the range of ports available to the steering pool. You must define this port to enable the system to perform media steering and NAT operations.
- end port—Port number that ends the range of ports available to the steering pool. You must define this port to enable the system to perform media steering and NAT operations.
- realm id—Identifies the steering pool’s realm. The steering pool is restricted to only the flows that originate from this realm.
Note:
The combination of entries for IP address, start port, and realm ID must be unique in each steering pool. You cannot use the same values for multiple steering pools.Each bidirectional media stream in a session uses two steering ports, one in each realm (with the exception of audio/video calls that consume four ports). You can configure the start and end port values to provide admission control. If all of the ports in all of the steering pools defined for a given realm are in use, no additional flows/sessions can be established to/from the realm of the steering pool.
SDP Alternate Connectivity
The Oracle® Enterprise Session Border Controller can create an egress-side SDP offer containing both IPv4 and IPv6 media addresses via a mechanism which allows multiple IP addresses, of different address families (i.e., IPv4 & IPv6) in the same SDP offer. Our implementation is based on the RFC draft "draft-boucadair-mmusic-altc-09".
Each realm on the Oracle® Enterprise Session Border Controller can be configured with an alternate family realm on which to receive media in the alt family realm parameter in the realm config. As deployed, one realm will be IPv4, and the alternate will be IPv6. The Oracle® Enterprise Session Border Controller creates the outbound INVITE with IPv4 and IPv6 addresses to accept the media, each in an a=altc: line and each in its own realm. The IP addresses inserted into the a=altc: line are from the egress realm’s and alt-realm-family realm’s steering pools. Observe in the image how the red lines indicate the complementary, alternate realms.
You can configure the order in which the a=altc: lines appear in the SDP in the pref-address-type parameter in the realm-config. This parameter can be set to
- IPv4 - SDP contains the IPv4 address first
- IPv6 - SDP contains the IPv6 address first
- NONE - SDP contains the native address family of the egress realm first
In the 200OK to the INVITE, the callee chooses either the IPv6 or IPv4 address to use for the call’s media transport between itself and Oracle® Enterprise Session Border Controller. After the Oracle® Enterprise Session Border Controller receives the 200OK, the chosen flow is installed, and the unused socket is discarded.
For two realms from different address families to share the same phy-interface and vlan, you use a .4 or .6 tag in the network-interface reference. When IPv4 and IPv6 realms share the same network-interface and VLAN, you identify them by realm name and network-interface configured as:
- IPv4 - <phy-interface>:<vlan>.4
- IPv6 - <phy-interface>:<vlan>.6
If the INVITE’s egress realm is IPv6, pref-address-type = NONE, the outbound SDP has these a=altc: lines:
a=altc:1 IPv6 2001:4860:4860::8889 20001 a=altc:2 IPv4 10.10.10.21 20001
If the INVITE’s egress realm is IPv6, pref-address-type = IPv4, the outbound SDP has these a=altc: lines:
a=altc:1 IPv4 10.10.10.21 20001 a=altc:2 IPv6 2001:4860:4860::8889 20001
SDP Alternate connectivity supports B2B and hairpin call scenarios. SDP Alternate connectivity also supports singleterm, B2B, and hairpin call scenarios.
When providing SDP alternate connectivity for SRTP traffic, in the security policy configuration element, the network-interface parameter’s value must be configured with a .4 or .6 suffix to indicate IPv4 or IPv6 network, respectively.