Push Data Server Concurrent Transfer Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvetransfer completion reliabilityVSAvoidtime waiting for acknowledgment
Core Design Contradiction:
ReliabilityVSLoss of time

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #23Feedback

2Productivity

If the system allows unlimited concurrent push data transfers, then system throughput is improved, but network resource capacity is exceeded and transfers fail

Engineering Contradiction:
Improveconcurrent transfer throughputVSAvoidnetwork resource overload
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If the system uses a counter to track concurrent transfers, then resource management is improved, but system complexity increases

Engineering Contradiction:
Improveconcurrent transfer managementVSAvoidcounter management logic
Core Design Contradiction:
Ease of operationVSDevice complexity

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.

Inventive Principle:
Principle #25Self-service

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.

Inventive Principle:
Principle #35Parameter changes

4Productivity

If the system deems transfers complete without express acknowledgment, then system responsiveness is improved, but transfer reliability may deteriorate

Engineering Contradiction:
Improvetransfer operation responsivenessVSAvoidtransfer completion assurance
Core Design Contradiction:
ProductivityVSReliability

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9178949B2Method, system and apparatus for managing push data transfers
Publication Date: 2015.11.03 MALIKIE INNOVATIONS LTD
  • US9178949B2 patent drawing
  • US9178949B2 patent drawing
  • US9178949B2 patent drawing

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.