Passivation : Control memory usage by removing relatively unused sessions from memory while storing them in persistent storage. If a passivated session is requested by a client, it can be "activated" back into memory and removed from the persistent store.
MSS supports passivation of SipSessions (and by extension SIP Dialogs) and SipApplicationSessions
Passivation occurs at 2 points during the lifecycle of a sip application:
When the container requests the creation of a new SIP Session or SIP Application Session. If the number of currently active session exceeds a configurable limit, an attempt is made to passivate sessions to make room in memory.
Periodically (by default, every ten seconds) as the JBoss Web background thread runs.
A session will be passivated if one of the following holds true:
The session hasn't been used in greater than a configurable maximum idle time.
The number of active sessions exceeds a configurable maximum and the session hasn't been used in greater than a configurable minimum idle time.
Need to be enabled in the application jboss-web.xml or container wide at $JBOSS_HOME/server/<profile>/deployers/jbossweb.deployer/META-INF/war-deployers-jboss-beans.xml
MSS Failover Capabilities confidential INVITE Trying Ringing OK ACK BYE OK INVITE Ringing OK ACK BYE OK UA1 UA2 SIP AS 1 2 3 4 5 6 7 8 9 10 11 12
Mobicents supports from 9 to 12 in CONFIRMED Dialog Failover
Mobicents now supports from 5 to 12 in EARLY Dialog Failover (introduces more overhead as more JAIN SIP state is replicated)
An client that wishes to send a request need to perform DNS processing to determine the IP address, port, and transport protocol of a next hop elemen (it can be a proxy or a user agent)
DNS canprovide the ability for a given domain to configure a set of servers, along with prioritization and weights, in order to provide a crude level of capacity-based load-balancing and failover
DNS lookup is done once per transaction (so for ACK to 2xx as well)
Simplified flow :
NAPTR query for the domain in the URI to check the preferred transport ; order pref flags service regexp replacement IN NAPTR 50 50 "s" "SIPS+D2T" "" _sips._tcp.example.com. IN NAPTR 90 50 "s" "SIP+D2T" "" _sip._tcp.example.com IN NAPTR 100 50 "s" "SIP+D2U" "" _sip._udp.example.com.
SRV lookup on _sip._tcp.example.com
;; Priority Weight Port Target IN SRV 0 1 5060 server1.example.com IN SRV 0 2 5060 server2.example.com
A or AAAA record lookup of the domain name to get the IP Address
Telephone number mapping is the process of unifying the telephone number system of the public switched telephone network with the Internet addressing and identification name space. Telephone numbers are systematically organized in the E.164 standard, while the Internet uses the Domain Name System for linking domain names to IP Addresses and other resource information.
Telephone number mapping systems provide facilities to determine applicable Internet communications servers responsible for servicing a given telephone number by simple lookups in the Domain Name System.
ENUM uses special DNS Record types to translate a telephone number into a URI or IP address that can be used in Internet communications.
the Registrar provides the Subscriber (or Registrant) with a domain name, the URI that will be used for accessing a DNS server to fetch a NAPTR record, a personal E.164 telephone number. The URI domain name is one-to-one mapped to the subscriber E.164 ENUM number. The NAPTR record corresponding to the subscriber URI contains the subscriber call forwarding/termination preferences.