Freq experiments 1

From NuclearCat's homepage
Jump to: navigation, search

Equipment

  • Usual computer clock stability 32768 Khz quarts is 2.78 ppm (6 seconds in 25 days)

This also means 10ms per hour or 1ms per 6.25 minutes.

Latest results

Two servers, one in Lebanon, one in Germany, Saarbrücken. Uplink from Lebanon over crappy Lebanese ISP's, downlink over DVB-S2 Newtec 32APSK link. Downlink is QoS'ed on Linux.

System clocks (runtime is pretty unstable, battery one is much better") should synchronized and drift should be corrected by adjtimex. Sure it is much better to use as clock source low latency GPS (without FIFO, and better even over some proper "hardware" bus like SPI/I2C/..., not over RS232, who is accessed over some unknown quality chip, and this chip connected also over some other bus). But we have just "bios clock".

Example:

home ~ # adjtimex -c
                                      --- current ---   -- suggested --
cmos time     system-cmos  error_ppm   tick      freq    tick      freq
1264420100  7199.649196
1264420110  7199.649267        7.2  10000         0
1264420120  7199.649340        7.3  10000         0    9999   6075475
1264420130  7199.649414        7.4  10000         0    9999   6070787
1264420140  7199.649486        7.2  10000         0    9999   6084850
1264420150  7199.649558        7.3  10000         0    9999   6077037
1264420160  7199.649633        7.5  10000         0    9999   6064537
1264420170  7199.649709        7.7  10000         0    9999   6052037

Adjusting tick to 9999

home ~ # adjtimex -c
                                      --- current ---   -- suggested --
cmos time     system-cmos  error_ppm   tick      freq    tick      freq
1264420466  7199.651822
1264420476  7199.650893      -92.8   9999         0
1264420486  7199.649969      -92.4   9999         0    9999   6056250
1264420496  7199.649043      -92.6   9999         0    9999   6071875
1264420506  7199.648116      -92.6   9999         0    9999   6070312

Adjusting frequency

home ~ # adjtimex -c
                                      --- current ---   -- suggested --
cmos time     system-cmos  error_ppm   tick      freq    tick      freq
1264420517  7199.647232
1264420527  7199.647226       -0.6   9999   6071875
1264420537  7199.647225       -0.1   9999   6071875    9999   6081250
1264420547  7199.647225        0.1   9999   6071875    9999   6067188

Result is much better.

Here is downlink results (downlink loaded 90-95% from maximum capacity) Note: Jitter measured for 1way, over my own program. Algo is simple, in few words: Each host send "tick" packet, record in packet local timestamp, final destination receive it and get diff. Next packet he check timestamp in packet, diff with previous and real diff he receive. Here we catch jitter and latency delta.

Jan 25 15:59:12 <link5x> 5 max jitter, last 4, max_rtt 318
Jan 25 15:59:13 <link5x> 5 max jitter, last 1, max_rtt 318
Jan 25 15:59:14 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:15 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:16 <link5x> 5 max jitter, last 1, max_rtt 318
Jan 25 15:59:17 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:18 <link5x> 5 max jitter, last 1, max_rtt 318
Jan 25 15:59:19 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:20 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:21 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:22 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:23 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:24 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:25 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:26 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:27 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:28 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:29 <link5x> 5 max jitter, last 1, max_rtt 318
Jan 25 15:59:30 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:31 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:32 <link5x> 5 max jitter, last 0, max_rtt 318
Jan 25 15:59:33 <link5x> 5 max jitter, last 0, max_rtt 318

Means average jitter on link is 1-2ms, maximum jitter 5ms. 5ms can be latency of system, it is just Linux without preemption and both servers is loaded.

Personal tools