Golden Client - Intel NUC with Endpoint
Introduction | The golden client is the reference system for performing latency measurements with the Wireless Endpoint. In the sections below describe how to install Linux, Wireless Endpoints, and configure the PTP-timesync. |
Installing the OS | Just like the Time synchronization system, Debian is chosen as the base OS for the Golden client. It's a popular Linux distribution with a long history that will stay relevant for the time being. The guide below has been tested on Debian 10. The ISO image for the Linux installer is available from the link below. A common approach is to copy this binary onto a USB stick and create a boot from this USB stick. Several tools are available for performing this step, balena is available on a large number of platforms.
This Low latency WEP client does not require a desktop environment. If you’re comfortable with managing such a headless system, the desktop can be omitted. For the Intel NUC platform both headless and desktop should work well, no large performance differences are expected. |
Installing the Endpoint | Installing the Wireless Endpoint The wireless Endpoint is available in the Excentis repository. Adding this repository to the system makes it keeps the application up to date. The steps below add this repository to the system and next install the software. # Add our Excentis Repository to the system. wget -qO - http://bbdl.excentis.com/repo/public-key.key | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] \ |
WEP configuration | The following configuration launches the Wireless Endpoint immediately at startup. It defines a systemd service. The contents should be saved to the following file
[Unit] Description=Sync the Clock on the NIC to improve PTP accuracy [Service] User=excentis ExecStart=byteblower-wireless-endpoint -t <Wi-Fi NIC> <MeetingPoint address> Restart=always [Install] WantedBy=multi-user.target The above configuration uses two parameters that depend on the actual configuration:
After saving the above file, the service is enabled with the following command. This ensures that the Wireless Endpoint is launched on each subsequent startup.
Since the Wireless Endpoint runs in the background, no GUI is launched. To see the current status, you can either of the following command:
The top command prints out the current status, and the bottom one shows the log messages of the last hour. |
PTP configuration | As detailed at the start, it is important for the ByteBlower server and Wireless Endpoint to be synchronized to the same time reference. On local networks, one can use the Precision-Time-Protocol. This offers the most reliable time-sync. To configure PTP on Linux, the following two packages are required.
LinuxPTP takes care of the PTP configuration. Chrony organizes the overall time synchronization. In case when the PTP clock becomes unavailable it will fall back to other time sources. |
Configure the timesync software | The timesync is configured in the following file. It needs to be edited as a root user.
# Configuration file for timemaster [ntp_server ntp-server.local] minpoll 4 maxpoll 4 [ptp_domain 5] interfaces enp0s3 [timemaster] ntp_program chronyd [chrony.conf] include /etc/chrony/chrony.conf [ptp4l.conf] [chronyd] path /usr/sbin/chronyd [phc2sys] path /usr/sbin/phc2sys [ptp4l] path /usr/sbin/ptp4l The above configuration has two important configuration parameters:
|
Example result | The results below show example results attainable with the Wireless Endpoint and a proper Time Synchronization master. It contains the latency results between the same two hosts, Golden Client to a ByteBlower 4100, but over different media
|