IP Library Granted Patent US 9,294,265
Granted Patent B2
US 9,294,265 · App. 14/315,595 · Granted Mar 22, 2016

System and method for remote clock estimation for reliable communications

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,294,265
App. No.
14/315,595
Granted
Mar 22, 2016
Kind
B2
Abstract

An electronic device is provided including a processor, a communications interface coupled to the processor, a memory coupled to the processor, and a module saved in the memory. The module configures the processor to receive a first communications packet from a remote device via the communications interface including information useful for estimating a clock offset of the remote device, and determine an upper bound of the clock offset of the remote device with respect to the electronic device based on the information.

Claims (31)

1. An electronic device comprising:

a processor;

a communications interface coupled to the processor;

a memory coupled to the processor; and

a module saved in the memory, the module for configuring the processor to:

receive a first communications packet from a remote device via the communications interface including information useful for estimating a clock offset of the remote device;

determine an upper bound of the clock offset of the remote device with respect to the electronic device based on the information; and

determine a maximum age of data contained in the first communications packet based on the upper bound of the clock offset of the remote device with respect to the electronic device.

2. The electronic device according to claim 1 , wherein the information useful for estimating the clock offset of the remote device includes a timestamp of the electronic device at a start of transmission of a second communications packet to the remote device, T1, a timestamp of the remote device upon receipt of the second communications packet, T2, and a timestamp of the remote device at a start of transmission of the first communications packet, T3.

3. The electronic device according to claim 2 , wherein the information useful for estimating the clock offset of the remote device further includes a timestamp of the electronic device upon receipt of the first communications packet, T4.

4. The electronic device according to claim 2 , wherein the second communications packet was sent earlier in time than the first communications packet and the communications packets are TCP/IP packets that are not explicit request/response packets sent for the purpose of determining timing information.

5. The electronic device according to claim 2 , wherein the first communications packet and the second communications packet are sent over the Internet.

6. The electronic device according to claim 1 , wherein the communications interface includes Ethernet.

7. A method of determining an upper bound of a clock offset of a remote device relative to an electronic device, the electronic device including a processor, a communications interface coupled to the processor, a memory coupled to the processor, and a module saved in the memory, the module for configuring the processor to perform the method comprising:

receiving a first communications packet from the remote device via the communications interface including information useful for estimating a clock offset of the remote device;

determining the upper bound of the clock offset of the remote device with respect to the electronic device based on the information; and

determining a maximum age of data contained in the first communications packet based on the upper bound of the clock offset of the remote device with respect to the electronic device.

8. The method according to claim 7 , wherein the information useful for estimating the clock offset of the remote device includes a timestamp of the electronic device at a start of transmission of a second communications packet to the remote device, T1, a timestamp of the remote device upon receipt of the second communications packet, T2, and a timestamp of the remote device at a start of transmission of the first communications packet, T3.

9. The method according to claim 8 , wherein the information useful for estimating the clock offset of the remote device further includes a timestamp of the electronic device upon receipt of the first communications packet, T4.

10. The method according to claim 8 , wherein the second communications packet was sent earlier in time than the first communications packet and the communications packets are TCP/IP packets that are not explicit request/response packets sent for the purpose of determining timing information.

11. The method according to claim 8 , wherein the first communications packet and the second communications packet are sent over the Internet.

12. The method according to claim 7 , wherein the communications interface includes Ethernet.

13. A computer program product comprising a non-transitory computer readable medium having stored thereon computer executable instructions that when executed by an electronic device perform a method of determining an upper bound of a clock offset of a remote device relative to the electronic device, the electronic device including a processor, a communications interface coupled to the processor, a memory coupled to the processor, and a module saved in the memory, the module for configuring the processor to perform the method comprising:

receiving a first communications packet from the remote device via the communications interface including information useful for estimating a clock offset of the remote device;

determining the upper bound of the clock offset of the remote device with respect to the electronic device based on the information; and

determining a maximum age of data contained in the first communications packet based on the upper bound of the clock offset of the remote device with respect to the electronic device.

14. The computer program product according to claim 13 , wherein the information useful for estimating the clock offset of the remote device includes a timestamp of the electronic device at a start of transmission of a second communications packet to the remote device, T1, a timestamp of the remote device upon receipt of the second communications packet, T2, and a timestamp of the remote device at a start of transmission of the first communications packet, T3.

15. The computer program product according to claim 14 , wherein the information useful for estimating the clock offset of the remote device further includes a timestamp of the electronic device upon receipt of the first communications packet, T4.

16. The computer program product according to claim 14 , wherein the second communications packet was sent earlier in time than the first communications packet and the communications packets are TCP/IP packets that are not explicit request/response packets sent for the purpose of determining timing information.

17. The computer program product according to claim 14 , wherein the first communications packet and the second communications packet are sent over the Internet.

18. The computer program product according to claim 13 , wherein the communications interface includes Ethernet.

Assignments (3)
SECURITY INTEREST Recorded Jan 7, 2021
From: SYNAPTIVE MEDICAL INC.
To: ESPRESSO CAPITAL LTD.
Reel/Frame 054922/0791 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: SYNAPTIVE MEDICAL (BARBADOS) INC.
To: SYNAPTIVE MEDICAL INC.
Reel/Frame 054297/0047 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2014
From: THOMAS, MONROE M.; ALEXANDER, SIMON
To: SYNAPTIVE MEDICAL (BARBADOS) INC.
Reel/Frame 033324/0888 →