Mobicents SIP Servlets Failover
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


Mobicents SIP Servlets Failover

Uploaded on


  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Mobicents SIP Failover.Next
  • 2. Mobicents Failover Support
  • 3. Replication Sequence
    • Replicate at each Dialog boundaries
  • 4. Replication Sequence
    • Mobicents supports from 9 to 12 in CONFIRMED Dialog Failover
  • 5. State of the art  (Assumptions based on Documentation)
  • 6. Oracle OCCAS 4.0
      • all stateful information about SIP dialogs is stored and retrieved from the  SIP Data tier , which also provides replication and failover services for SIP session data.
      • When a SIP dialog boundary is reached, the call is replicated (in-memory) to the site’s SIP data tier, and becomes eligible for replication to a secondary site
      • Oracle SIP Servlet can fail over from No 5 to No 12 from user - would mean Early Dialog is considered boundary
      • Oracle SIP Servlet cannot fail over from No 1 to No 4 from user
  • 7. IBM Websphere 7.0
        • A single SIP container in a cluster will handle all the messages associated with a single dialog. If a container fails in the middle of a dialog, a single server in the cluster will take over responsibility for the dialog. 
        • An important point here is that the IBM SIP infrastructure does not support transaction level failover. It only supports dialog failover for stable calls.
      • That means like us
  • 8. Sailfin 2.0
      • Session replication in Sailfin supports replication of SIP Session and HTTP Session, SIP Timers, SIP Dialog State and SIPApplicationSessionData
      • That means like us or Oracle not much details available on what they means by SIP Dialog State does it include early dialog ?
  • 9. Mobicents Next Supported Failover Uses Cases ?
  • 10. Better Confirmed Dialog Failover
      • 2xx response Support
        • when the user has accepted the call, it is not dropped
        • Handling 2xx retrans and ACK retrans + timeout
        • support forking ?
      • Support from 7 to 12
      • Supported in Mobicents SIP Servlets 1.5
  • 11. Better Confirmed Dialog Failover Impacts
      • Impact on Perf/Data over the network : Should be the same
      • JAIN SIP HA :
        • Use JBoss Cache Eviction policy in case ACK doesn't arrive to cleanup from cache and avoid dialog + session leaks and to warn app that ACK was not received.
      • MSS :
        • more state to replicate for SipSession
        • more state to replicate for B2BUAHelper
  • 12. Early Dialog Failover
      • 1xx with tag response Support
        • When the other end starts ringing, no lost calls Good QoS like SS7 ? 
        • Allow to clean up resources or handle Diameter usage in case of failover
        • JAIN SLEE can clean up more data in the SIP RA and have simpler logic
        • Early Media handling (See attach)
      • Support from 5 to 12 matches the competition
      • Was asked by 2 customers
      • Supported in Mobicents Sip Servlets 1.5
  • 13. Replication Sequence
    • Mobicents supports from 5 to 12 in EARLY Dialog Failover
  • 14. Early Dialog Failover Impacts
      • Impact on Perf/Data over the network : High
      • JAIN SIP HA : 
        • Better Confirmed Dialog Impacts
        • Store Transaction Data Structure 
        • Transaction Application data
      • MSS : 
        • more state to replicate for Proxy
        • more state to replicate for SipSession
        • more state to replicate for B2BUAHelper
  • 15. Transaction Failover
      • Same use cases as Early Dialog
      • CANCEL Handling
      • Able to resend retransmissions of messages when acting as UAC
      • Handles more than the INVITE method use case (able to retransmit SUBSCRIBE/NOTIFY and the likes)
      • Support from 1 to 12, beats the competition ? but at which price ?
  • 16. Transaction Failover Impacts
      • Impact on Perf/Data over the network: Very High
      • JAIN SIP HA
        • All Timers have to be replicated
        • All (or almost) state in Dialog
        • All (or almost) state in Transaction
      • MSS :
        • Almost all state in SipSession 
        • Almost all state in Proxy
        • Almost all state in B2BUA
  • 17. Configuration
      • Granularity would be configurable so that users that don't want finer granularity don't pay the cost of it
      • For all those use cases, transaction affinity is mandatory on the LB side, meaning that all messages for the same transaction (and ACK as well for the INVITE Tx) should go to the same node, otherwise the perf hit will be too important => Supported in Mobicents Sip Servlets 1.5
  • 18. Roadmap
      • Could be one use case per version, doing it all in one release is not realistic
      • Need finer grained failover automated testing, sipp automation won't probably fly for this -> Use Arquillian or Cargo ?
  • 19. Final Decision
      • Early Dialog is to be implemented in Mobicents Sip Servlets 1.5