Low-complexity offline and online clock skew estimation and removal
Packet delay traces are important sources of measurements for analyzing end-to-end performance of computer networks. Due to the lack of tight synchronization between the clocks of end systems, these measurements can be quite inaccurate. Therefore, detection, estimation and removal of clock skew from delay traces is a critical operation to obtain precise measurements of network latencies. In this paper, we propose two new techniques to detect, estimate and remove the clock skew in delay traces. The first technique, named average technique, derives the clock skew estimate by calculating the average of the difference between consecutive packets delay. The second technique, named direct skew removal technique, proceeds by iteratively evaluating a set of possible skew values until the best value is reached. Compared with existing techniques such as linear programming and Convex_Hull, the average technique reduces the complexity of the skew estimation operation. The direct skew removal is more accurate and allows us to obtain delay after skew removal with the same precision as the original traces. Applied to traces that contain clock resets, the direct skew removal also reduces the time complexity of the operation. Clock skew is also present in online delay measurements that are used by real-time endpoints such as audio and video terminals, to determine the buffering delay of received packets and to synchronize streams from different sources. The problem is more obvious when communication sessions last for a long time. Contrary to the offline skew removal, little work has been done on the online skew removal problem. In this paper, we propose two simple algorithms to remove the clock skew from online delay measurements. The first algorithm, named sliding window algorithm, tracks the skew by continually evaluating the variation of the minimum measured delay. The second algorithm, named the combined algorithm, is a mixed approach of the sliding window and the Convex_Hull algorithm proposed elsewhere.
clock skew delay measurement