Adaptive Kalman Filter for Time Synchronization over Packet-Switched Networks
Tese de Doutorado de Leandro Fabrício Auler

The importance of Time synchronization for distributed applications is growing. The most currently used synchronization protocol is NTP. NTP and GPS satisfy the majority of the world’s time synchronization needs, although, GPS have limitations. GPS cannot function inside buildings, or in places where there are physical obstructions and high amounts of electromagnetic noise. In addition, GPS is a costly solution.

This work proposes a new approach to synchronize time among machines interconnected by computer networks, which minimizes the disturbance introduced by the network with no extra hardware cost. The methodology employs high-resolution clocks and stochastic methods to minimize the error introduced in time measurement carried out across the network. It also uses an adaptive approach to continuously tune the synchronization mechanism to the network traffic characteristics. An increase of time synchronization accuracy of two orders of magnitude, in comparison with traditional estimation methods was obtained as a result.

In order to synchronize two clocks over a computer network, it is required to estimate some time parameters in the remote machine. The time difference between two clocks at some time is known as the offset(t), whose definition is given by (1), where t is a reference clock and t2 is a compared clock time. The Offset is sometimes referred as clock error. The rate which the offset changes is called skew, and is shown in equation (2). A skew equal to zero means that both clocks have the same frequency. Temperature changes and electrical changes affect the frequency of the clocks. The frequency deviation of a clock is denominated drift, which can be defined as the second derivate of the offset, and is shown in equation (3). For a crystal oscillator, the frequency deviation is often very small and can be ignored. For ideal purposes, the drift is considered zero through out this text. As a direct consequence of this idealization, the skew is considered constant.

image002.gif  (1)
image004.gif  (2)

image006.gif  (3)
         

image008.jpg                                            image014.jpg
Main parameters used to compare two different clocks Result of offset estimating by polling on the Internet
on symetric paths and expected signat

image016.jpg                                         image018.jpg
Example showing how the packet filter
and the assistant clock acts on two machines
Time polling between two clocks on different computers,
a assistant clock and a reference clock

image065.jpg                               image067.jpg
NTP offset observed during 90h Comparison between Kalman and NTP

Artigos publicados

AULER, Leandro Fabricio; D'AMORE, R. High Resolution Time Estimation among Remote Machines Using Kalman Filtering. In: WPerformance - V Workshop de Desempenho de Sistemas Computacionais e de Comunicação 2006.

AULER, Leandro Fabricio; D'AMORE, R. Adaptive Kalman Filter for Time Synchronization over Packet-Switched Networks (An Heuristic Approach). In IEEE ICST COMSWARE 2007.