Domain Time II is a time synchronization service for use on Windows systems. Domain Time also supports clients
for several flavors of Linux, FreeBSD, Solaris (SPARC and Intel).
This document details the resource footprint and expected impact on normal operations
for the main product components on the Windows platform. Specifications in this document refer
to both Domain Time II Client and Server components, except as noted otherwise. References to
Windows NT assume version 4.0 or higher.
This document is intended to provide information for product research and
planning purposes only, it is not a statement of warranty or guarantee. Please
see the product license agreement for details.
Domain Time II Server consists entirely of the DOMTIMES.EXE program and
DOMTIMES.CPL control panel applet
Domain Time II Full Client consists entirely of the DOMTIMEC.EXE program and
DOMTIMEC.CPL control panel applet
Domain Time II Thin Client consists entirely of the DOMTIMEC.EXE program
Domain Time II Ultra Thin Client consists entirely of the DOMTIMEC.EXE program
Domain Time II Audit Server (optional component, sold separately) consists
entirely of DTAUDIT.EXE and DTAUDIT.CPL control panel applet
Server and Clients also use DTTRAY.EXE, the optional system tray applet
No new DLLs are installed
No existing DLLs are replaced
Note that optional programs and support utilities (such as DOMTIME.INI, DTSET.EXE and
DTCHECK.EXE, DTREADER.EXE, DTDRIFT.EXE, and DTSYNC.EXE) may also be installed into the system directory or
Program Files\Domain Time II folder during program installation.
These programs may be deleted after installation without affecting the operation of
Domain Time II Server or Domain Time II Client. Please see
Distribution Files for specific information.
No direct control of hardware; Domain Time II runs in user mode and makes calls
into kernel mode for standard, documented API functions.
Time is set using standard calls to the Win32 SetSystemTime function. (On Windows
for Workgroups, the DOS and BIOS interrupts are used.)
Clock slewing is accomplished via the Win32 SetSystemTimeAdjustment() function.
Memory usage of Domain Time II Server varies somewhat with the number of
time protocols selected; at any one time, memory usage is also dependent on the
number of simultaneous time requests being serviced. The table below shows
actual memory usage for Domain Time components after each
component has been running in a production environment for 96 hours:
Ultra Thin Client
Domain Time II is a multi-threaded 32-bit application. Most activity and thread use
is triggered on-demand, so CPU usage is typically less than 0.01% (unmeasurable)
5 to 20*
5 to 7
Ultra Thin Client
3 to 4
*Depends on the time protocols selected and registry customizations
For an idea of what these numbers mean, an NT 4.0 idle spooler service with no printers defined and
no documents spooled typically uses 5 threads and uses 2384k of memory. A fully
decked-out Domain Time Server with 15 threads typically only uses 416k.
Service Dependencies and Security Contexts
LanmanServer, the "Server Service" (will function without this service, but will generate a warning, and domain hierarchy functions will be unavailable)
LanmanWorkstation, the "Workstation Service"
The Windows Time (W32Time) service, if present, is adjusted (set to NoSync or disabled) during
installation of Domain Time II. Additionally, the Windows Time Agent Control Panel applet (w32tmdt.cpl)
Security Context, Windows
Runs as a system service under the LocalSystem security context.
Security Context, Win95, Win98, WinME
Runs as a Windows "Simple Service."
Domain Time II uses the following Registry entries:
Server parameters are stored in HKEY_LOCAL_MACHINE\Software\Greyware\Domain Time Server
Server service information is in HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Domain Time Server
Client parameters (any flavor of client) are stored in HKEY_LOCAL_MACHINE\Software\Greyware\Domain Time Client
Client service information (any flavor of client) is in HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Domain Time Client
Additional components are in HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Domain Time II [Component Name]
All communications of time requests/responses use standard networking protocols
and APIs. The TCP/IP ports used are:
Domain Time II
Domain Time I
Network synchronization traffic is minimal. Domain Time II clients and servers
generate network traffic only when making or servicing requests (no polling).
Sync requests and time cascade pushes are made on both a synchronous and
asynchronous on-demand basis. Timings for synchronous activities are
The amount of time-sync traffic varies by protocol used, as shown in the table
below. The Domain Time II protocol also provides for master-slave failover,
statistics gathering, sync on demand, and other non-time traffic.
Domain Time II Server
Domain Time II Client
Domain Time I
Note that Domain Time II components typically use the Domain Time II protocol
for control information as well as time information. Control information (querying time
zone settings, obtaining statistics, and so forth) varies based on the request.
Service Interaction Table
The table below lists common Windows services and summarizes Domain
Time’s interaction with them and its impact on their operation. The table
reflects interactions with both Alpha and Intel versions of NT. The items
listed in the Product category refer to all versions of the product, except
Interaction with Domain Time II
Impact on Operation
Microsoft Active Directory Replication
Microsoft Kerberos Authentication
Users will always be able to log into the network.
Email and shared folder timestamps will be correct.
Field and record timestamps will be correct.
Table 3. Interaction and Impact on Windows Services.
1Note 1: Domain Time II Server can provide time synchronization and display via
HTTP, using a built-in custom web server. Domain Time II over HTTP service is disabled by
default, but may be enabled on a per-machine basis from the control panel
applet. HTTP uses the well-known TCP/IP port 80, as do most other web servers,
including Microsoft’s IIS. Only one process can listen on port 80 at a time, so
a machine serving Domain Time II over HTTP cannot also be a regular web server, and
vice versa. If port 80 is already owned by another process when Domain Time II Server
starts, and if Domain Time II Server is set to serve time via HTTP, Domain Time II Server
will note the conflict in the event log and continue without HTTP support. Alternately,
if you configure Domain Time II Server to find a free port, it will do so.
2Note 2: Domain Time II Server relies on NetBIOS-name-to-IP resolution. When
propagating a level 1 synchronization trigger, Domain Time II Server running on the
PDC enumerates time servers on the network using Microsoft’s LANMan API. This
yields a list of NetBIOS machine names. Domain Time II Server then attempts to
lookup the IP address for each server. This lookup will succeed if Microsoft
WINS is running and properly configured, or if manual host information is
maintained either through DNS or host/lmhosts files. Domain Time II Server running
on non-PDC machines needs to be able to map the PDC’s NetBIOS name to its IP
address, again either through Microsoft WINS or a manual configuration.
3Note 3: During installation onto Windows machines, Domain
Time Server and Client check for, and disable if found, the Windows Time
(W32Time) service. During removal, Domain Time II automatically re-enables Windows
Time if it is present on the machine. Running both Domain Time II and Windows Time
simultaneously on the same machine will produce unpredictable results unless
Domain Time II is configured to let Windows Time manage the clock.
Domain Time II Server is an extremely well-behaved service, with minimal impact on
Windows server operation. Domain Time II Client is a similarly
dwell-behaved application on all Windows versions.