SCTP Server Failover via Backchannel Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
SCTP associations in mobile packet core networks are vulnerable to node failures, leading to significant disruptions for thousands of users due to the lack of seamless failover mechanisms, as current protocols require reestablishment of connections upon failure and are not scalable for large networks.
Innovation Solution
A system and method for seamlessly transferring SCTP associations between Active and Standby SCTP-servers using backchannel heartbeat signals and gratuitous ARP broadcasts, allowing the Standby server to instantly assume communication responsibilities without disrupting service, utilizing a High Availability Engine to maintain synchronization and sequence numbers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If SCTP associations are transferred between servers running on different machines, then service continuity is improved, but network complexity and failover mechanism complexity increase
Solution Approach 1:
The patent implements preliminary action by pre-establishing SCTP associations on both active and standby servers before any failure occurs. The standby server pre-synchronizes association state information including sequence numbers from the active server, so that when a failure occurs, the standby server can immediately take over without needing to reestablish connections or synchronize state in real-time, thus ensuring service continuity while keeping the failover mechanism relatively simple
Solution Approach 2:
The patent implements feedback through a heartbeat mechanism where the active server continuously sends heartbeat messages to the standby server to synchronize association state information. This feedback loop ensures the standby server maintains up-to-date sequence numbers and association states, enabling seamless failover when needed without increasing overall system complexity
2Reliability
If SCTP associations are transferred between servers running on different machines, then availability is improved, but protocol compatibility and implementation difficulty increase
Solution Approach 1:
The patent implements copying by creating a standby server that replicates the active server's SCTP association state information, including sequence numbers and association contexts. The standby server maintains copies of these critical parameters, allowing it to immediately assume the role of the active server upon failure without requiring complex protocol interpretation or state reconstruction, thus improving availability while simplifying implementation
3Loss of time
If seamless failover is implemented across multiple SCTP servers, then service disruption is reduced, but system complexity and synchronization overhead increase
Solution Approach 1:
The patent extracts the critical failover functionality into a dedicated high availability engine that operates independently from the main SCTP processing logic. This separate engine specifically handles heartbeat message generation, sequence number synchronization, and failover triggering, allowing the core SCTP implementation to remain simple while achieving seamless failover with minimal service disruption
Solution Approach 2:
The patent changes parameters by maintaining pre-synchronized sequence numbers and association states on the standby server through the heartbeat mechanism. When failover occurs, the standby server simply continues using these pre-synchronized parameters without needing to recalculate or re negotiate them, dramatically reducing service disruption time while keeping the synchronization mechanism straightforward
Data Source
Figure 1A
Figure 1B
Figure 2A
AI summary
A Stream Control Transmission Protocol (SCTP) cluster of multiple SCTP-servers is defined such that some servers are assigned Active Role where others are assigned Standby Role ensuring uninterrupted SCTP-connections between the SCTP-cluster and SCTP- clients. The Standby Servers use the same Internet Protocol (IP)-address(es) on the SCTP bound interfaces as their assigned Active Server. The Active Servers are communicating to the SCTP-clients, where the Standby Servers are communicating to their assigned Active SCTP-Server using a separate backchannel TCP-connection. The Standby Server receives regular updates over the backchannel connection from the Active Server. These updates ensure that the Standby Server could locally simulate SCTP- negotiations and create SCTP-associations as if the SCTP-negotiations. The Standby Servers are synchronized and ready in case of ah Active Server failure to continue SCTP-communications. This handover does not involve any subsequent action from the SCTP-clients so that the SCTP-clients are unaware a handover occurred.