IP Library Granted Patent US 8,300,615
Granted Patent B2
US 8,300,615 · App. 13/165,033 · Granted Oct 30, 2012

Synchronization of time in a mobile ad-hoc network

Assignee: Powerwave Cognition, Inc.
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 8,300,615
App. No.
13/165,033
Granted
Oct 30, 2012
Kind
B2
Abstract

Methods and systems are disclosed herein for synchronizing network time in a mobile ad-hoc network (MANET). Each node in the MANET may be synchronized with all of its neighbors for effective communications. More specifically, a local timing reference may be adjusted according to measured errors in incoming control packets so that time slotted transmissions can be scheduled without collisions with other nodes. The method and system is a low overhead protocol that only requires a small amount of data attached to each scheduled transmission avoiding the requirement for separate messaging. This may reduce the overhead of maintaining the MANET providing additional efficiency and robustness.

Claims (37)

1. A device comprising:

a radio that provides an air interface for communication with a plurality of other nodes in an ad hoc network, the air interface including a time-division multiple access interface having a plurality of time slots;

a local clock; and

a processor that controls operation of the radio to transceive data using the air interface, the processor configured to acquire a network time from one of the plurality of other nodes; to detect a number of control packets in the ad hoc network, the plurality of control packets each transmitted from one of the other nodes within one of the plurality of time slots; to determine a slot time in the network time for each of the control packets based upon corresponding header data for each of the control packets; to determine a time of arrival for each of the control packets relative to the local clock; to estimate an error in the local clock relative to the network time based upon the slot time and the time of arrival, thereby providing an offset; to adjust the local clock according to the offset in order to synchronize the local clock to the network time, thereby providing an adjusted timing; and transmit a packet in the time-division multiple access air interface using the adjusted timing.

2. A computer program product embodied in a non-transitory computer-readable medium that, when executing on a node in an ad hoc wireless network that includes a plurality of other nodes, performs the steps of:

acquiring a network time from one of the plurality of other nodes;

detecting a number of control packets in the ad hoc network, the plurality of control packets each transmitted from one of the other nodes within a time slot of a time-division multiple access air interface;

determining a slot time in the network time for each of the control packets based upon corresponding header data for each of the control packets;

determining a time of arrival for each of the control packets relative to a local clock of the node;

estimating an error in the local clock relative to the network time based upon the slot time and the time of arrival, thereby providing an offset;

adjusting the local clock according to the offset in order to synchronize the local clock to the network time, thereby providing an adjusted timing; and

transmitting a packet from the node in the time-division multiple access air interface using the adjusted timing.

3. The computer program product of claim 2 wherein the adjusted timing further includes an adjustment for a path delay.

4. The computer program product of claim 2 wherein estimating an error in the local clock includes applying a Kalman filter to one or more slot times and one or more times of arrival for the control packets.

5. The computer program product of claim 2 further comprising code that performs the step of determining a carrier frequency for the number of control packets based upon the corresponding header data for each of the control packets.

6. The computer program product of claim 5 further comprising code that performs the step of measuring a center frequency for the number of control packets.

7. The computer program product of claim 6 wherein adjusting the local clock includes adjusting the locking clock according to a mean error between the center frequency and the carrier frequency.

8. The computer program product of claim 2 wherein the corresponding header data includes data from a MAC header for each one of the control packets.

9. The computer program product of claim 8 wherein the MAC header includes MAC timing information.

10. A method for synchronizing a node in an ad-hoc network that includes a plurality of other nodes, the method comprising:

acquiring a network time from one of the plurality of other nodes;

detecting a number of control packets in the ad hoc network, the plurality of control packets each transmitted from one of the other nodes within a time slot of a time-division multiple access air interface;

determining a slot time in the network time for each of the control packets based upon corresponding header data for each of the control packets;

determining a time of arrival for each of the control packets relative to a local clock of the node;

estimating an error in the local clock relative to the network time based upon the slot time and the time of arrival, thereby providing an offset;

adjusting the local clock according to the offset in order to synchronize the local clock to the network time, thereby providing an adjusted timing; and

transmitting a packet from the node in the time-division multiple access air interface using the adjusted timing.

11. The method of claim 10 wherein the adjusted timing further includes an adjustment for a path delay.

12. The method of claim 10 wherein estimating an error in the local clock includes applying a Kalman filter to one or more slot times and one or more times of arrival for the control packets.

13. The method of claim 10 wherein estimating the error further comprising estimating one or more link delays.

14. The method of claim 10 further comprising monitoring operation of an oscillator of the node based upon a covariance of the offset.

15. The method of claim 10 further comprising determining a carrier frequency for the number of control packets based upon the corresponding header data for each of the control packets.

16. The method of claim 15 further comprising measuring a center frequency for the number of control packets.

17. The method of claim 16 wherein adjusting the local clock includes adjusting the local clock according to a mean error between the center frequency and the carrier frequency.

18. The method of claim 10 wherein the corresponding header data includes data from a MAC header for each one of the control packets.

19. The method of claim 18 wherein the MAC header includes MAC timing information.

20. The method of claim 18 wherein the MAC header includes GPS timing information.

Assignments (2)
SECURITY INTEREST Recorded Mar 30, 2016
From: POWERWAVE COGNITION, INC.
To: CHARLES A. STANZIALE, JR., IN HIS CAPACITY AS THE CHAPTER 7 TRUSTEE OF POWERWAVE TECHNOLOGIES, INC.
Reel/Frame 038137/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2011
From: COPELAND, GREGORY CLARK; SEIDEL, SCOTT Y.
To: POWERWAVE COGNITION, INC.
Reel/Frame 026770/0750 →
Continuity (30)
Continuation In Part 12418363 · Apr 3, 2009
Provisional Application 61042431 · Apr 4, 2008
Provisional Application 61042442 · Apr 4, 2008
Provisional Application 61074930 · Jun 23, 2008
Provisional Application 61082618 · Jul 22, 2008
Provisional Application 61082642 · Jul 22, 2008
Provisional Application 61086242 · Aug 5, 2008
Provisional Application 61084738 · Jul 30, 2008
Provisional Application 61084773 · Jul 30, 2008
Provisional Application 61094394 · Sep 4, 2008
Provisional Application 61094546 · Sep 5, 2008
Provisional Application 61118232 · Nov 26, 2008
Provisional Application 61094584 · Sep 5, 2008
Provisional Application 61094591 · Sep 5, 2008
Provisional Application 61094594 · Sep 5, 2008
Provisional Application 61094611 · Sep 5, 2008
Provisional Application 61095298 · Sep 8, 2008
Provisional Application 61095310 · Sep 9, 2008
Provisional Application 61094183 · Sep 4, 2008
Provisional Application 61094203 · Sep 4, 2008
Provisional Application 61094279 · Sep 4, 2008
Provisional Application 61094294 · Sep 4, 2008
Provisional Application 61094231 · Sep 4, 2008
Provisional Application 61094247 · Sep 4, 2008
Provisional Application 61094310 · Sep 4, 2008
Provisional Application 61103106 · Oct 6, 2008
Provisional Application 61111384 · Nov 5, 2008
Provisional Application 61112131 · Nov 6, 2008
Provisional Application 61121169 · Dec 9, 2008
Related Publication 20120127977A1 · May 24, 2012