Large Object Transmission Block Acknowledgment Mechanism

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing OMA SyncML protocol for transmitting large objects is inefficient as it only confirms successful transmission after all data blocks have been sent, leading to wasted interaction time and bandwidth due to potential errors in individual blocks not being detected until completion.

Innovation Solution

The method involves the server dividing a large object into data blocks and transmitting them sequentially, with the client verifying each block's successful transmission and requesting re-transmission or session termination as needed, using an extended SyncML message with Size, Data, BlockSize, and Final elements to manage the process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the client waits until all data blocks are transmitted to check for errors, then the transmission process can be completed, but bandwidth and interaction time are wasted due to undetected errors in individual blocks

Engineering Contradiction:
Improvetransmission error detectionVSAvoidinteraction time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a feedback mechanism where the client sends an acknowledgment message to the server after receiving each data block. The server then determines whether to transmit the next data block based on this feedback. This allows for immediate error detection and handling, preventing wasted bandwidth and interaction time on subsequent blocks if an error is detected in the current block.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs error checking and acknowledgment transmission as a preliminary action after each data block reception, rather than waiting until the end. By checking for errors and requesting retransmission immediately when an error is detected, the system prevents the waste of interaction time and bandwidth that would occur if errors were only detected after all blocks were transmitted.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If the server transmits all data blocks sequentially without intermediate checks, then the transmission process is simple, but errors in individual blocks go undetected until completion

Engineering Contradiction:
Improvetransmission process complexityVSAvoidtransmission error detection
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent introduces a feedback loop where the client acknowledges receipt of each data block and the server determines whether to continue transmission. This feedback mechanism maintains relatively simple transmission logic while significantly improving reliability by enabling error detection at each step rather than only at the end of the entire transmission process.

Inventive Principle:
Principle #23Feedback

3Reliability

If the client requests re-transmission of erroneous data blocks, then transmission reliability is improved, but interaction time increases due to additional transmission cycles

Engineering Contradiction:
Improvedata block transmission reliabilityVSAvoidre-transmission time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a feedback-based error handling mechanism where the client immediately notifies the server of transmission errors through acknowledgment messages. This allows for targeted retransmission of only the erroneous data blocks rather than retransmitting all blocks, improving reliability while minimizing the additional interaction time required for error correction.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9300438B2Method and system for transmitting large object
Publication Date: 2016.03.29 XIAN ZHONGXING NEW SOFTWARE
  • US9300438B2 patent drawing
  • US9300438B2 patent drawing
  • US9300438B2 patent drawing

AI summary

The present disclosure provides a method for transmitting a large object, after a server establishes a session with a client, the method includes: the server divides a pre-transmitted large object into data blocks, and transmits one by one in sequence acquired data blocks and their sizes to the client; the client determines whether a received data block is transmitted successfully, if the received data block is transmitted successfully, the data block is saved, and a current data block transmission success message is returned to the server; if the received data block is not transmitted successfully, an end session request message or a re-transmitting current data block request message is returned to the server; and the server transmits the corresponding data block and its size or ends the session according to the received messages. The present disclosure further provides a system for transmitting a large object. When there is an error in transmitting a data block of a large object, the method and the system in the present disclosure process it in advance, thus saving bandwidth resources.