Configuration
Driver-controlled reset is set up during driver load and requires no interaction with the application. This ntservice.ini code line configures driver-controlled reset:
TimeSyncHardReset = ENABLE
Working principle
The SmartNIC driver monitors the skew and resets the time stamp clock to the time reference when the skew is outside certain limits. These limits are predefined at +/- 60 ms.
The driver generates an alarm event and a driver log entry when the time stamp clock is reset to the reference. The alarm event is an NT event with NT_EVENT_SOURCE_TIMESYNC as source. The event includes the exact new time stamp.
When the time stamp clock is reset, the time jumps backwards or forwards in time. The first frame received after the clock is reset might get a time stamp which is decremented compared to the previous frame. The application must be prepared to handle this situation.
Consequences
Frame transmission according to the time stamp clock is also affected by a clock reset. The time of transmission for the first frame transmitted after a clock reset is adjusted to align with the new time. This results in a shortened or prolonged inter-frame gap between this frame and the previous one.