Simple Network Time Protocol (SNTP) OS Design Development (Windows Embedded CE 6.0)
1/6/2010
The Simple Network Time Protocol (SNTP) implementation in Windows Embedded CE is derived from the Network Time Protocol (NTP). SNTP synchronizes the system time on a computer with that of a server that has been synchronized by a reference source such as a radio, satellite receiver, or modem. SNTP is used in scenarios that do not require or justify the high performance and accuracy of NTP.
SNTP can operate in unicast, multicast, and anycast modes. Windows Embedded CE supports unicast and multicast modes. A unicast client sends a request to a designated server at its unicast address and expects a reply from which it can determine the time and, optionally, the roundtrip delay, and the local clock offset relative to the server.
A multicast server periodically sends an unsolicited message to a designated IPv4 or IPv6 local broadcast address, or to a multicast group address. A multicast client listens on this address. The client generally sends no requests to the service, because it can get disrupted by untrusted SNTP or NTP multicast servers. You can prevent disruption by an untrusted server by using an access control mechanism to choose only the designated server known to, and trusted by, the client.
Windows Embedded CE supports both client and server implementations of SNTP. You can use the client implementation of SNTP to synchronize the clock on your Windows Embedded CE-based device, such as a personal digital assistant (PDA). You can use the server implementation of SNTP in a Windows Embedded CE-based gateway that also provides other services to clients, such as network address translation (NAT).
You should implement SNTP clients at the leaves of the subnet where no NTP or SNTP client is dependent on another SNTP client for synchronizing. You should use SNTP servers only at the root of the subnet and only when no other source of synchronization other than a reliable radio or modem time service is available.
For more information about SNTP, see RFC 2030 at the Internet Engineering Task Force Web site.
OS Design Information
The following table shows operating system design information for SNTP.
Concept | Description |
---|---|
Dependencies |
Core Server Support (Services.exe) |
Hardware considerations |
None |
Modules and Components
The following table shows the components and modules that implement SNTP.
Item | Module | Component |
---|---|---|
Network Time Service |
timesvc |
tsvc_dst, tsvc_auto_update, tsvc_sntp |
SNTP Implementation Considerations
The following table shows the Sysgen variables for SNTP.
Sysgen variable | Description |
---|---|
SYSGEN_TIMESVC_API |
When this variable is set, the SNTP Automatic Updates and Server Synchronization Catalog item is included in the OS design. This Catalog item includes SNTP with the automatic updates option turned off. |
SYSGEN_TIMESVC_DST |
When this variable is set, the SNTP Client with DST Catalog item is included in the OS design. The run-time image will support Daylight Saving Time. |
SYSGEN_TIMESVC_SNTP |
When this variable is set, SNTP Server Catalog item is included in the OS design. The time server registry settings will be included in the run-time image. The run-time image will support periodic checking of the time server. |