  This paper introduces OneClock, a generic approach for using time in
networked applications. OneClock provides two basic time-triggered primitives:
the ability to schedule an operation at a remote host or device, and the
ability to receive feedback about the time at which an event occurred or an
operation was executed at a remote host or device. We introduce a novel
prediction-based scheduling approach that uses timing information collected at
runtime to accurately schedule future operations.
  Our work includes an extension to the Network Configuration protocol
(NETCONF), which enables OneClock in real-life systems. This extension has been
published as an Internet Engineering Task Force (IETF) RFC, and a prototype of
our NETCONF time extension is publicly available as open source.
  Experimental evaluation shows that our prediction-based approach allows
accurate scheduling in diverse and heterogeneous environments, with various
hardware capabilities and workloads. OneClock is a generic approach that can be
applied to any managed device: sensors, actuators, Internet of Things (IoT)
devices, routers, or toasters.
