Application-Controlled Transit Path Selection for Distributed Platform Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed platforms face performance degradation and failure in executing purge commands due to weak links in the network, leading to delayed or incomplete content removal across geographically dispersed servers, exacerbated by increased network hops and potential failures in transit paths.
Innovation Solution
Implementing application-controlled path selection and redundancy by establishing multiple paths between PoPs, allowing servers to autonomously switch between transit provider paths and issue commands simultaneously over multiple paths, reducing messaging overhead and ensuring failover in case of path unavailability or underperformance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple paths are established between PoPs for command transmission, then reliability is improved through failover capability, but device complexity increases due to multiple transit paths
Solution Approach 1:
The system dynamically selects transit paths based on real-time performance metrics and availability. The administrative server and PoPs automatically adapt to changing network conditions by switching between primary and alternative paths, making the path selection flexible rather than static.
Solution Approach 2:
The system changes path selection parameters based on performance data, transitioning from a single fixed path to multiple dynamic paths. Performance parameters such as latency, packet loss, and throughput are monitored and used to determine optimal path selection.
2Productivity
If purge commands are sent to all PoPs simultaneously over multiple paths, then productivity is improved through parallel execution, but loss of time increases due to waiting for all acknowledgments
Solution Approach 1:
The system sends purge commands to a subset of PoPs first (those with confirmed availability) rather than waiting to send to all PoPs. This partial action approach allows the purge operation to proceed with available nodes while continuing to attempt connection to other nodes, reducing overall completion time.
Solution Approach 2:
The administrative server skips PoPs that are unavailable or unresponsive and continues sending commands to available PoPs without waiting for acknowledgments from all nodes. This rushing through approach allows the purge operation to complete as quickly as possible with available resources.
3Reliability
If the administrative server waits for acknowledgment from every PoP before declaring purge complete, then reliability is improved through confirmation, but loss of time increases due to sequential waiting
Solution Approach 1:
The administrative server declares the purge operation complete after receiving acknowledgments from a threshold number of PoPs or from PoPs that are confirmed to have the content, rather than waiting for all PoPs. This partial confirmation approach balances reliability with time efficiency.
Solution Approach 2:
The system performs preliminary path availability checks before sending purge commands, so that the administrative server can anticipate which PoPs will be available and adjust expectations for completion acknowledgments accordingly.
4Reliability
If a single weak link in the distributed platform fails, then reliability deteriorates causing command execution failure, but device complexity remains unchanged
Solution Approach 1:
The system establishes alternative transit paths in advance as backup routes. When a primary path or PoP fails, the administrative server can switch to pre-configured alternative paths, cushioning against the failure without requiring complex real-time path discovery.
Solution Approach 2:
The system implements path selection and failover capabilities at local PoP levels rather than requiring centralized control of all paths. Each PoP can independently select its own transit paths and handle local failures, distributing the complexity management.
Data Source
AI summary
Some embodiments provide redundancy and failover for accelerating and improving the processing of commands across a distributed platform. A distributed platform administrative server distributes commands to different distributed platform points-of-presence (PoPs) for execution. The administrative server distributes the commands over a first set of transit provider paths that connect the server to each PoP. The administrative server selects the first set of paths based on different addressing associated with each of the paths. If any of the first paths is unavailable or underperforming, the administrative server selects a second path by changing a destination address and resends the command to the particular PoP over the second path. Some embodiments further modify PoP server operation so that the PoP servers can identify commands issued according to the different path addressing and distribute such commands to all other servers of the same PoP upon identifying the different path addressing.


