LTE networks require accurate, secure, and reliable time services. We will use YateUCN linux server as a network time server with purpose to deliver exact hardware-based Network Time Protocol (NTP) timestamps to eNodeB equipment.
To enable hardware stamping, it needs to be supported by:
To verify if NIC and kernel supports it, apply the command: ethtool -T interface_name
The value “PTP Hardware Clock” (which in this case is “0”) will be used in the /etc/chrony.conf configuration file.
[root@yatebts_core ~]# ethtool -T eth-ran
Time stamping parameters for eth-ran: Capabilities: hardware-transmit (SOF_TIMESTAMPING_TX_HARDWARE) software-transmit (SOF_TIMESTAMPING_TX_SOFTWARE) hardware-receive (SOF_TIMESTAMPING_RX_HARDWARE) software-receive (SOF_TIMESTAMPING_RX_SOFTWARE) software-system-clock (SOF_TIMESTAMPING_SOFTWARE) hardware-raw-clock (SOF_TIMESTAMPING_RAW_HARDWARE) PTP Hardware Clock: 0 Hardware Transmit Timestamp Modes: off (HWTSTAMP_TX_OFF) on (HWTSTAMP_TX_ON) Hardware Receive Filter Modes: none (HWTSTAMP_FILTER_NONE) all (HWTSTAMP_FILTER_ALL) [root@yatebts_core ~]#
|SOF_TIMESTAMPING_TX_SOFTWARE||Transmit timestamp generated in kernel driver by NIC clock|
|SOF_TIMESTAMPING_RX_SOFTWARE||Receive timestamp generated in kernel driver by NIC clock|
|SOF_TIMESTAMPING_TX_HARDWARE||Transmit timestamp generated in hardware by NIC clock|
|SOF_TIMESTAMPING_RX_HARDWARE||Receive timestamp generated in hardware by NIC clock|
You can install it with:
urpmi.update Yate;urpmi chrony
Verify the installed version of chrony with the following command:
[root@yatebts_core ~]# rpm -qa chrony
eNodeB equipment settings (SatSite or LTE LabKit)
[root@ybts-SatSite ~]# cat /etc/chrony.conf # Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). #pool pool.ntp.org iburst # YateUCN server which acts as NTP server server 10.0.4.1 # Record the rate at which the system clock gains/losses time. driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates # if its offset is larger than 1 second. makestep 1.0 3 # Enable kernel synchronization of the real-time clock (RTC). rtcsync # Enable hardware timestamping on all interfaces that support it. hwtimestamp eth-ran refclock PHC /dev/ptp0 # Specify directory for log files. logdir /var/log/chrony # Select which information is logged. log measurements statistics tracking [root@ybts-SatSite ~]#
[root@ybts-SatSite ~]# head -n 5 /etc/chrony.conf # Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). #pool pool.ntp.org iburst # YateUCN servers which act as NTP servers server 10.0.4.1 [root@ybts-SatSite ~]#
[root@ybts-SatSite ~]# chronyc sourcestats
210 Number of sources = 3
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
PHC0 6 3 80 -2.714 0.011 -253ms 84ns
time.cloudflare.com 17 13 1165 +0.107 2.978 +11us 917us
time-a-g.nist.gov 19 11 21m +0.209 1.069 -1857us 413us
The optimal value for “Freq Skew” is below 2.
Also, please note that 15 minutes need to pass in order for syncronization to be achieved.