Push Data Server Concurrent Transfer Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing push data transfer systems face challenges in managing concurrent transfers efficiently, often leading to failures due to misperceptions about reaching the maximum number of concurrent transfers, especially when no express acknowledgment is received.
Innovation Solution
A push data server system that increments and decrements a counter for concurrent transfers, deems a transfer complete after a predefined time limit, and uses transfer parameters like duration and server specifications to determine this limit, allowing for queuing and error messaging to manage capacity effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the system waits for express acknowledgment of push data transfer completion, then transfer reliability is improved, but system responsiveness deteriorates and failures occur when acknowledgment is not received
Solution Approach 1:
The system performs preliminary action by deeming the transfer complete after a predefined time limit without waiting for express acknowledgment. This allows the server to proceed with decrementing the counter and releasing resources proactively, preventing deadlock situations while maintaining reasonable reliability through the time-based assumption of completion.
Solution Approach 2:
The system uses feedback mechanisms in two ways: (1) it monitors transfer progress and uses the predefined time limit as a feedback indicator to determine completion status, and (2) it tracks historical transfer parameters to dynamically adjust time limits. This feedback approach allows the system to adapt to varying network conditions while maintaining responsive operation.
2Productivity
If the system allows unlimited concurrent push data transfers, then system throughput is improved, but network resource capacity is exceeded and transfers fail
Solution Approach 1:
The system dynamically manages concurrent transfer capacity by incrementing and decrementing a counter based on actual transfer completion status. This dynamic counter mechanism allows the system to adapt the effective capacity to current network conditions, preventing resource overload while maximizing throughput during normal operation.
Solution Approach 2:
The push data server acts as an intermediary between content servers and computing devices, managing concurrent transfers through the counter mechanism. This intermediary role allows it to coordinate resource allocation, queue requests when capacity is reached, and prevent direct overload of network resources while maintaining high throughput.
3Ease of operation
If the system uses a counter to track concurrent transfers, then resource management is improved, but system complexity increases
Solution Approach 1:
The counter management system performs self-service by automatically incrementing the counter when a transfer begins and decrementing it when the transfer is deemed complete. This self-managing mechanism simplifies resource tracking without requiring complex external control systems, making the counter approach easy to implement and maintain.
Solution Approach 2:
The system manages complexity by changing the parameter state of the counter based on transfer status. The counter transitions from 0 to 1 when a transfer starts, and back to 0 when complete. This simple parameter change approach provides effective resource management while keeping the implementation logic minimal and straightforward.
4Productivity
If the system deems transfers complete without express acknowledgment, then system responsiveness is improved, but transfer reliability may deteriorate
Solution Approach 1:
The system takes preliminary action by establishing a predefined time limit before transfers complete. This time limit serves as a safety mechanism that ensures transfers are deemed complete within a reasonable duration, balancing responsiveness with reliability. The system proactively manages completion status without waiting indefinitely for acknowledgment.
Solution Approach 2:
The system dynamically adjusts the balance between responsiveness and reliability by using historical transfer parameters to determine appropriate time limits. This dynamic adaptation allows the system to be more responsive for quick transfers while maintaining reliability for longer transfers, optimizing both metrics simultaneously.
Data Source
AI summary
A method, system, and apparatus for managing push data transfers is provided whereby in one implementation at least one push data server is situated on a network between a plurality of content servers and a plurality of computing devices. The push data server is configured to only perform a maximum number of concurrent data transfers of content between the content servers and the plurality of computing devices. The push data server is configured to deem that a particular push data transfer has been completed even if no express acknowledgment of such completion is ever received at the push data server, thereby reducing the likelihood of failure of push data transfers due to a misperception that the maximum number of concurrent data transfers being obtained.


