Packet Broker Soft Failover for Proxy Servers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing proxy server management systems fail to maintain current connections during health status checks, leading to disruptions when the proxy server fails, as they either tear down existing connections or allow unhealthy servers to process new requests.
Innovation Solution
Implementing a 'soft' failover mechanism in a packet broker that identifies and maintains current proxy connections by directing only relevant packets to the proxy server while preventing new connections from being processed, using packet identifiers and health-status checks to manage communication packets and bypass unhealthy proxy servers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a proxy server fails a health-status check, then the proxy server should be taken offline to prevent processing new requests, but existing connections should be maintained to avoid disruptions
Solution Approach 1:
The system segments the handling of communication packets by creating two distinct paths: one for existing connections (maintained through packet identifier matching) and one for new connections (blocked by the soft failover mechanism). This segmentation allows differential treatment of packets based on their connection status, enabling the system to maintain reliable service for active users while preventing new requests from reaching the unhealthy server.
Solution Approach 2:
The system performs preliminary identification of packets belonging to existing connections using packet identifiers before the soft failover takes effect. By pre-marking or pre-identifying these packets, the system ensures that even when the soft failover blocks new connections, the identified packets can be routed appropriately to maintain existing sessions, thus resolving the contradiction between blocking new requests and maintaining current connections.
2Reliability
If hard failover is implemented to prevent new requests to a failed proxy server, then reliability improves, but all existing connections are torn down causing service disruption
Solution Approach 1:
The soft failover mechanism acts as an intermediary between the failed proxy server and the network traffic. Instead of directly tearing down connections (hard failover), the soft failover intermediary selectively intercepts and blocks only new connection attempts while allowing packets from existing connections to pass through to the failed server. This intermediary approach isolates the unhealthy server from new requests while preserving existing connections, eliminating service disruption.
Solution Approach 2:
The system applies different quality treatments to different packets based on their origin and purpose. Packets from existing connections receive special treatment (allowed to pass through the soft failover mechanism), while packets from new connections are blocked. This local quality differentiation enables the system to achieve reliable server isolation without causing harmful service disruptions to active users.
3Duration of action of stationary object
If the proxy server continues to process all requests despite health failures, then connection continuity is maintained, but the unhealthy server may cause further system issues
Solution Approach 1:
The soft failover mechanism dynamically adjusts its behavior based on the health status of the proxy server and the nature of incoming packets. When the server fails a health check, the soft failover transitions from allowing all traffic to selectively blocking only new connections while maintaining existing ones. This dynamic adjustment enables the system to preserve connection continuity while preventing the unhealthy server from processing new requests that could cause further issues.
Solution Approach 2:
The system maintains continuous useful action for existing connections by allowing their packets to bypass the soft failover block. While new connections are blocked to prevent unhealthy server processing, the continuous flow of packets from existing connections continues uninterrupted, ensuring service continuity for active users without compromising system reliability.
Data Source
AI summary
A packet broker that performs a health-status check of a proxy server while the proxy server processes one or more proxy connections. The packet broker may attempt to exchange a heartbeat signal with the proxy server, and if unsuccessful, the proxy server is assumed to be failing. In such cases, a failover is desirable. Rather than implementing a “hard” failover, in which no further communication packets are directed to the proxy server, a “soft” failover is performed where the packet broker prevents new proxy connections from being processed by the proxy server, but maintains at least one (e.g., all) of the current proxy connections that are being processed by the proxy server.

