Server-Initiated Multipath Content Delivery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing content delivery networks face challenges in ensuring quick and reliable content delivery due to variability in network conditions between client devices and content servers, leading to delays and reduced performance, especially in heavily deployed systems where the 'best' server may change frequently based on transient conditions.
Innovation Solution
Implementing a server-initiated multipath content delivery system that directs client devices to request content from multiple servers simultaneously, using markup language directives and script instructions to invoke multipath delivery, thereby reducing latency and increasing reliability by exploiting variability in network conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single content server is selected based on static metrics (distance, latency, load), then server selection is simple and predictable, but delivery reliability deteriorates due to transient network conditions and last-mile variability
Solution Approach 1:
The system performs preliminary actions by proactively establishing multiple concurrent delivery paths to different content servers before the client actually needs the content. The server initiates multipath delivery by simultaneously requesting content from multiple servers, so that when the client requests the content, multiple paths are already ready and can immediately serve the request, eliminating the need for complex real-time selection logic at the client side.
Solution Approach 2:
The invention changes the parameter approach from static selection criteria (fixed distance, latency, load thresholds) to dynamic, condition-based path selection. The system monitors actual network conditions and server performance in real-time, adjusting the active delivery path based on current metrics such as packet loss, jitter, and response time, rather than relying on pre-computed static rankings.
2Reliability
If multiple content servers are contacted simultaneously via multipath delivery, then delivery reliability and speed improve, but network bandwidth consumption increases
Solution Approach 1:
The system segments the content delivery process into multiple parallel paths, each serving a specific function. Different content servers are assigned different roles: some serve as primary delivery paths, others as backup paths, and some as cache validation paths. This segmentation allows the system to optimize bandwidth usage by directing different types of requests to different servers simultaneously, rather than duplicating all traffic across all paths.
Solution Approach 2:
The system applies partial action by establishing multiple delivery paths but not necessarily utilizing all of them for every request. The server initiates multipath delivery with multiple concurrent requests, but the client can stop receiving data from additional paths once the primary path delivers the content successfully. This allows the system to invest in multiple paths (excessive action) while only consuming bandwidth on the necessary paths (partial action).
3Productivity
If client devices are modified to support multipath delivery, then delivery performance improves, but deployment complexity and client compatibility issues increase
Solution Approach 1:
The invention inverts the traditional multipath approach by moving the multipath logic from the client side to the server side. Instead of modifying clients to support multiple simultaneous requests, the content server initiates multiple concurrent delivery paths and manages the complexity of coordinating these paths. The client simply receives content from whichever path succeeds, eliminating the need for complex client-side multipath support while maintaining improved delivery performance.
Solution Approach 2:
The content server acts as an intermediary that absorbs the complexity of multipath delivery. The server manages the concurrent requests to multiple content servers, coordinates which paths succeed and which fail, and ensures the client receives content reliably. This intermediary approach shields the client from the complexity of multipath delivery while still achieving improved performance through server-side path management.
Data Source
AI summary
Described herein are—among other things—systems, methods, and apparatus for accelerating and increasing the reliability of content delivery by serving objects redundantly over multiple paths from multiple servers. In preferred embodiments, the decision to use such multipath delivery is made on the server side. A content server can modify or generate a given web page so as to invoke multipath, e.g., by injecting markup language directives and/or script instructions that will cause the client device to make multiple requests for a given object on the page. Preferably the multiple requests are made to separate content servers in separate points of presence. The teachings hereof may be advantageously implemented, without limitation, in intermediary servers such as caching proxy servers and/or in origin servers.


