Peer-to-Peer Time Synchronization Without Round-Trip Delay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing clock synchronization methods for devices, especially over wireless connections, often rely on complex solutions involving external time servers and round-trip delay measurements, which can be inefficient and non-real-time performance-critical.

Innovation Solution

A method where a time server sends a first message with a stored time value to a client device, allowing the client to update its clock without round-trip measurements, suitable for Bluetooth Low Energy coverage, and excluding non-real-time host system performance from the critical path.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional NTP-based clock synchronization is used, then time synchronization between devices is achieved, but the system complexity increases due to external time servers and round-trip delay measurements

Engineering Contradiction:
Improvetime synchronization accuracyVSAvoidsynchronization system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts the time server functionality from external systems and embeds it within the peer devices themselves. Each device maintains its own clock and can act as a time source for others, eliminating the need for external NTP servers and complex round-trip delay measurements while achieving synchronization through direct peer-to-peer time value exchange.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent merges the time synchronization function into the existing peer-to-peer communication framework. Instead of using separate external time servers, the synchronization mechanism is combined with the data communication channels already present between devices, simplifying the overall system architecture.

Inventive Principle:
Principle #5Merging (Combining)

2Measurement precision

If round-trip delay measurements are implemented, then time synchronization accuracy is improved, but the synchronization process becomes non-real-time

Engineering Contradiction:
Improveclock synchronization accuracyVSAvoidsynchronization delay
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having devices exchange time values and calculate offsets in advance, before actual synchronization is needed. Devices maintain records of transmitted and received time values, allowing them to compute time offsets proactively rather than waiting for synchronization events, enabling real-time updates without delay measurements.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If external time servers are used, then reliable time synchronization is achieved, but the implementation becomes less suitable for proximity networks like Bluetooth Low Energy

Engineering Contradiction:
Improvetime synchronization reliabilityVSAvoidsuitability for proximity networks
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent makes the time synchronization mechanism universal by designing it to work across different network types and topologies. The peer-to-peer time exchange mechanism functions equally well in proximity networks like Bluetooth Low Energy, wireless networks, and wired connections, eliminating the need for network-specific synchronization solutions.

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

Data Source

PatentUS10334545B2Synchronizing time among two or more devices
Publication Date: 2019.06.25 INTEL CORP
  • US10334545B2 patent drawing
  • US10334545B2 patent drawing
  • US10334545B2 patent drawing

AI summary

A time server device may send a first message to a client device, capturing and storing the time value of the time server clock when the first message is sent. When the first message is received by the client device, the client device starts a timer. At some later time, the time server device sends a second message to the client device that includes the stored time value. The clock of the client device may be updated based at least in part on the value of the timer and the received time value.