SIP Proxy provides an interface for SIP communication between SIP devices and SIP Server components. It handles register requests, load-balances SIP transactions between SIP Cluster nodes, and provides an alternative HA model that supports deploying primary/backup SIP Server instances as the HA pair across different subnets and does not require a virtual IP address. At least two SIP Proxies must be deployed for each data center. SIP endpoints (agent softphones, etc.) can either register directly with the SIP Proxy or an SBC, which then forwards the registration to the SIP Proxies.
When operating in a cluster environment with one or more data centers, the set of SIP Proxy instances can be divided among the data centers. SIP Proxy obtains the lists of SIP Proxies and SIP Servers configured in the cluster from the SIP Cluster DN, that is configured in the Cluster Switch object. SIP Proxy uses the geo-location option to identify local SIP Servers that belong to a particular data center. Those SIP Servers contain the geo-location option with the same value as in the SIP Proxy configuration.
SIP Proxy acts as a SIP registrar. It has a shared registration-info storage. Any endpoint can be reached by any SIP Proxy. SIP Proxy uses SIP Server as an authentication server. It passes REGISTER requests to SIP Server and waits for a response. If it receives the 200 OK response, the registration is stored. All responses are always forwarded to the initiator.
SIP Proxy forwards all SIP messages from the endpoints to local SIP Servers. SIP Proxy can also forward outgoing messages to other data centers. Replication of registration and call data is performed across all SIP Proxy instances in the cluster.
SIP Proxy uses the Active out-of-service detection (oos-check) method for updating a list of active SIP Servers in a cluster and for detecting the primary SIP Server in an HA pair. SIP Proxy forwards SIP messages only to the primary SIP Server of the HA pair.
Call flow example with two data centers: