Buffer Transfer Service for Reliable Data Object Exchange

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data transfer methods between devices are inefficient for large data objects, particularly due to high overhead and lack of reliability in point-to-point communication protocols, especially when connections are disrupted.

Innovation Solution

A buffer transfer service that establishes a unique session identifier for each data transfer, allowing for low-overhead, reliable point-to-point data transfer between devices, with features like error detection and correction, pause/resume functionality, and persistence across disconnections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional data transfer methods are used for large data objects, then data can be transferred between devices, but the overhead is high and reliability is poor especially when connections are disrupted

Engineering Contradiction:
Improvedata transfer reliabilityVSAvoidtransfer protocol complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments large data objects into smaller packets for transmission. Each packet is assigned a sequence number and the receiver reassembles them in order. This segmentation improves reliability by allowing individual packets to be retransmitted if lost, while the structured packet format with sequence numbers maintains protocol simplicity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary actions by establishing connection state tracking and sequence number management before data transfer begins. The system prepares for potential disruptions by implementing acknowledgment mechanisms and retransmission protocols in advance, ensuring reliable delivery without requiring complex real-time decision-making during transfer.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If data transfer protocol includes error detection and correction mechanisms, then data integrity is ensured, but protocol overhead increases

Engineering Contradiction:
Improvedata integrityVSAvoidcommunication overhead
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements feedback mechanisms through acknowledgment packets sent from receiver to transmitter. When the receiver successfully receives and validates data packets (using checksums for error detection), it sends acknowledgments back. The transmitter uses this feedback to determine whether retransmission is needed, achieving data integrity while minimizing unnecessary retransmissions and overhead.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent replaces complex mechanical error correction systems with simpler error detection using checksums embedded in packets. Rather than implementing sophisticated forward error correction codes that would increase overhead, the system uses lightweight checksum validation combined with acknowledgment-based retransmission, achieving comparable reliability with reduced communication overhead.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If multiple data transfers are performed concurrently between devices, then transfer efficiency improves, but session management complexity increases

Engineering Contradiction:
Improvetransfer efficiencyVSAvoidsession management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal buffer transfer service that handles multiple concurrent data transfers through a single unified interface. The service manages session state, packet sequencing, and error recovery generically for any data object, allowing multiple transfers to proceed concurrently without requiring separate complex management logic for each session. This universal approach improves productivity while keeping session management tractable.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces a buffer transfer service as an intermediary layer between applications and the underlying communication protocol. This mediator abstracts the complexity of concurrent session management, packet handling, and error recovery from individual transfer operations. The service maintains internal state for multiple sessions simultaneously, allowing applications to initiate transfers without directly managing the complexity of concurrent operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Ease of operation

If pause and resume functionality is implemented, then user control over transfer timing is improved, but protocol complexity increases

Engineering Contradiction:
Improvetransfer controlVSAvoidprotocol state management
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements dynamic state management that allows the transfer protocol to transition between different operational modes (active, paused, resumed, completed, failed). The system dynamically adjusts its behavior based on the current state, enabling pause/resume functionality while maintaining a relatively simple state machine. This dynamic approach improves ease of operation without requiring permanently complex protocol logic.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9014183B2Buffer transfer service
Publication Date: 2015.04.21 APPLE INC
  • US9014183B2 patent drawing
  • US9014183B2 patent drawing
  • US9014183B2 patent drawing

AI summary

A buffer transfer session can be used to send a data object from one device to another using a low-overhead, reliable point-to-point data transfer protocol. In response to a request to transfer a data object to the receiving device, the sending device can locate the requested data object and establish a first buffer transfer session to transfer the data object to the receiving device. The buffer transfer session can be assigned a unique session identifier. The sending device can send the data object as a sequence of packets, each including the session identifier and a portion of the data object. Multiple buffer transfer sessions can be established concurrently between the two devices. In some instances, transfers can be paused and resumed, canceled, switched to a different transport, or persisted across disconnection/reconnection events.