Timesync Config, Issues and Definitions
This write-up was originally three FYI documents.
Need to change from a secondary to single or from a primary to single, etc.???
Need to change time source type of a server?
Perform the following:
Load servman | server parameters | time
Arrow down until "Timesync Type" appears. Change this type to what you want it to be.
Then go down until "Default Time Server Type" appears. Change this to the exact same as you
changed above.
Esc twice back to the menu options to "Update the Autoexec.ncf and Startup.ncf now".
Update those as well as the second option that says "Update Timesync.cfg now".
Then exit out of Servman and type at the console: Set timesync restart flag=ON
For more information on Timesync definitions reference see below:
A server"s Timesync settings will be used to determine which servers are contacted to synchronize the time. The default set parameters force a server to use other primary time servers that are in the same Tree when checking the time.
Three parameters that affect this are Service Advertising (SAP 04), Time Source (SAP26B), and Directory Tree Mode (SAP 278). If Tree Mode and Service Advertising are set to ON, only those servers that send SAPs and that are in the same tree are used to synchronize the time. All servers in the same tree should have Tree Mode set ON or OFF. If some are set to OFF and do not have a Time Source list, they would use servers that are not in the same tree to synchronize the time. The possible results would be inconsistent time stamps for any given Directory tree. This is only a problem when multiple trees exist.
The Time Source list will take precedence over any of the other settings. In other words, if a Time Source list exists on a server, that server will contact those servers to keep time synchronized.
Definitions of all Parameters used in the sys:system imesync.cfg File:
Configured Sources This parameter determines if this server determines its time source via a configured source list, or via SAP 26B. Turn this parameter ON if you are using a custom configured list of time sources on this server.
Directory Tree Mode This setting determines whether or not this server will specifically use servers in this tree to query time from. This setting is ignored in Configured Sources mode. Turning this parameter OFF allows SAP packets from other Directory trees to influence time synchronization on this server"s Directory tree, unless this server gets time via a configured source.
Hardware Clock Controls Hardware clock synchronization. When set to ON:
SINGLE or REFERENCE
- Reads the hardware clock at the beginning of each loop
PRIMARY or SECONDARY
- Sets the hardware clock, instead of reading it
The following is a listing of the Set Timesync parameters. These parameters are set on the command line using the following syntax (most can also be set using SERVMAN):
SET TIMESYNC parameter_name = value
If the set parameter is hidden, it will not show using the set command at the console.
Short Interval (SI)
Default = 10 seconds
Hidden Parameter
Whenever a server is not synchronized to network time, polling occurs at the short polling interval.
After synchronization is achieved, the polling interval gradually increases until it reaches PI.
Polling Interval (PI)
Default = 600 seconds
This is the time between polling intervals when time is synchronized on the network. If time gets
out of sync, the polling interval changes to SI.
Polling Count (PC)
Default = 3
Upper limit = 1000,
Lower limit = 1
The number of "Time Packets" to exchange during a polling cycle.
Correction Floor (CF)
Default = 1 millisecond
Hidden Parameter
CF is the smallest correction that can be made to the time. If the value is smaller that 1 millisecond,
then the change will not be made.
Maximum Offset (MO)
Default = 600 seconds or 10 minutes
Hidden Parameter
The maximum offset value limits the speed of time convergence. This means that the software
clock would never lose or gain more than 10 minutes during a given polling interval.
Normally, the value of 600 seconds far exceeds any reasonable drift and therefore the limit does
not come into play. The most likely change would be to lower the limit to the minimum, 1 second,
which would provide for very slow time convergence under extreme conditions. Because some
accounting information is based on the passage of time, it may be desirable to limit the difference
between real-clock time and the apparent passage of time caused by time synchronization. Or you
may want to limit the maximum adjustment to minimize the apparent drift detectable by some
application or a clock-watching human.
Offset Ceiling (OC)
Default = 10 years
Hidden parameter
The offset ceiling limits the magnitude of the calculated error between any two time sources. If one
time source detects another time source that is out of synchronization by more than this amount,
then that target is ignored. This value defaults to a large number to increase the likelihood that all
time sources do converge.
Synchronization Radius (SR)
Default = 2000 milliseconds
A time source is considered synchronized when it differs from the computed network time by less
than the synchronization radius during two consecutive polling loops. Normally, time sources are
expected to synchronize to within a few ticks (55 milliseconds each). Two seconds was chosen
as the default because it seems to be a reasonably large yet undetectable human time interval for
network events. Under recommended network configurations (barring extended communication
and clock hardware failures), the maximum time difference between any two synchronized servers
on the network will be eight seconds and will typically be on the order of a few ticks. Some
applications using synchronized time stamps may not tolerate a two second deviation between time
sources.
Type
Default = Secondary
The options available are SINGLE REFERENCE, REFERENCE, PRIMARY, or SECONDARY.
During each polling interval the REFERENCE and PRIMARY server poll each other and vote on
the correct network time. SECONDARY servers contact only one other server. Each server then
calculates an adjustment to bring its local clock into sync with the rest of the network during the
next polling interval. A REFERENCE server determines its synchronization state just as other types
but does not adjust its clock. So, a REFERENCE server provides a single source to which all
other servers eventually converge. A SINGLE reference server is a special case that never polls
and always claims to be synchronized.
SINGLE reference servers are intended for small networks on which they are the only
non-secondary time source. (The special case is required because a REFERENCE server does
not claim to be synchronized until it has contacted another non-secondary time source.) You
should have only one REFERENCE type server on the network unless you can ensure that the
REFERENCE servers are always synchronized by some external means.
Service Advertising (SA)
Default = ON
Single reference, reference, and primary servers normally advertise there presence on the network
using SAPs. When SA is off, they do not send SAPs.
Configured Sources (CS)
Default = OFF
When ON, time synchronization only contacts servers that have been added to the configured
server list and does not use SAPs to find a time source.
Why change it? You may want to assign each server a specific list of time sources and not rely on
SAPs to identify primary and reference servers. In this case, you can specify the servers using the
ADD and REMOVE time source option, and then set CS to ON to cause the time synchronization
module to only contact the hand configured sources and ignore other sources that identify
themselves using SAPs. The use of a configured-server list eliminates the errors introduced by
accidental or malicious misconfiguration of a primary or reference server on the network.
Time Source (TS)
Time source is used to display or add servers to the configured sources list. These time sources
are kept in an internal list that is manipulated by the ADD and REMOVE time-sources options. The
configured list is always used before any server discovered through SAP. If the CS flag is ON,
then only the servers in the configured list will be eligible for polling during any polling loop. To see
the list of configured servers, type the following:
set timesync time source =
If you use "set timesync time source" (notice the "=" is missing), you will only see the server name
that is at the top of the configured servers list.
Add Time Source (TS)
Use this set command to add a server to the configured servers list.
Remove Time Source (RemoveTS)
Use this set command to remove a server from the configured servers list.
Configuration File (CFG)
Default = SYS:SYSTEMTIMESYNC.CFG
This set command sets the path for the configuration file. The path should include the name of the
CFG file. The CFG file is read during Timesync initialization or when the Restart Flag (RF) is
triggered. When using the CONFIGURATION file (as opposed to using command line or
AUTOEXEC.NCF) to set timesync parameters, the abbreviations listed to the right of each
parameter can be used.
Hardware Clock (HW)
Default = ON
When set to ON, reference servers set the software clock from the hardware clock at the
beginning of each polling interval. Primary and secondary servers SET the hardware clock from
the software clock. This provides a means of synchronizing network time to an "external
reference." Due to a variety of conditions, timer interrupts are sometimes lost on the server. This
causes the software clock to drift. By providing a means to read the hardware clock, the problem
of lost interrupts is minimized.
Why change it? If a more reliable time source is available to use for synchronization, then there is
no need to read the internal hardware clock. In fact, doing so may be detrimental.
Time Adjustment (TA)
no default
If time synchronization has been establish on the network but the network has converged to the
incorrect time, it would be convenient to be able to make a time adjustment on all the servers at
the same time. The time adjustment parameter allows you to schedule a time change at some
point in the future. This parameter can only be set on reference and primary servers. The format is
the following:
set timesync time adjustment = [+|- ]hh:mm:ss [at [date and time]].
If the date and time are not given, the default will be six polling periods, determined from now on by
the polling interval parameter or one hour (whichever is larger).
Directory Tree Mode (TM)
Default = ON
This parameter controls the use of SAP packets with the directory services tree structure. The
default, ON, causes time synchronization to ignore SAP packets that do not originate from within
the tree to which this server belongs. Setting this parameter to OFF allows this server to receive
SAP packets from any time source on the network.
Reset (RESET)
Default = OFF
Trigger
When set to ON, it triggers some action and then sets itself back to an OFF state. This triggers
causes some of the timesync set parameter values to be reset to their default.
Restart Flag (RF)
Default = OFF
Trigger
When set to ON, the TIMESYNC NLM will restart. It will use either the TIMESYNC.CFG file or
command line parameters used in the AUTOEXEC.NCF when starting timesync as the server is
booted when this flag is set to ON. It is immediately set OFF.
Immediate Synchronization (IS)
Default = OFF
Hidden Parameter
Trigger
The immediate synchronization trigger causes the internal synchronization process to begin polling
the network immediately rather than waiting for the start of the next polling period. If you suspect
that the network is out of time sync, this parameter can be triggered to cause the network to
converge to time sync quickly.
Write Parameters (WP)
Default = OFF
Trigger
When set to ON, the values of certain configuration parameters and the configured server list are
written to the file specified by the CFG parameter. The information that is written to the file is
controlled by the WV parameter. The WP command will not write the parameters to the DOS
partition on the server or the floppy diskette. The parameters must be written to a volume on the
server.
Example of TIMESYNC.CFG file after setting the WP trigger
# Configuration Parameters from server DELLSE
Configured Sources = OFF
Directory Tree Mode = ON
Hardware Clock = ON
Polling Count = 3
Polling Interval = 600
Service Advertising = ON
Synchronization Radius = 2000
Type = SECONDARY
# Configured time source list from server DELLSE
Time Source = 40TEST-WC
Time Source = 40TEST
Write Value (WV)
Default = 3
This parameter controls which parameters are written by the write parameters option. Set this
value to 1 for internal parameters only, to 2 for configured time sources only, to 3 for both
parameters and configured sources.
Additional source of information:
Novell Application Notes
" Time Synchronization in Netware 4.x " Sept 90
" Time in NetWare Environment " Jan 90
Sample Configurations
1) SINGLE - SECONDARY - SECONDARY
2) REFERENCE - PRIMARY - SECONDARY
3) PRIMARY - PRIMARY - REFERENCE
1) SECONDARY - SINGLE - SECONDARY Using Configured Sources
# Configuration Parameters from server DUS-LAB-410-PREMIUM
Configured Sources = ON
Directory Tree Mode = ON
Hardware Clock = OFF
Polling Count = 3
Polling Interval = 600
Service Advertising = OFF
Synchronization Radius = 2000
Type = SECONDARY
# Configured time source list from server DUS-LAB-410-PREMIUM
Time Source=DUS-LAB-410-LF
--------------------------------------------------------------------------------------------
# Configuration Parameters from server DUS-LAB-410-LF Not using Configured Sources
Configured Sources = OFF
Directory Tree Mode = ON
Hardware Clock = ON
Polling Count = 3
Polling Interval = 600
Service Advertising = OFF
Synchronization Radius = 2000
Type = SINGLE
# Configured time source list from server DUS-LAB-410-LF
--------------------------------------------------------------------------------------------
# Configuration Parameters from server DUS-LAB-410-VECTRA Using Configured Source
Configured Sources = ON
Directory Tree Mode = ON
Hardware Clock = OFF
Polling Count = 3
Polling Interval = 600
Service Advertising = ON
Synchronization Radius = 2000
Type = SECONDARY
# Configured time source list from server DUS-LAB-410-VECTRA
Time Source=DUS-LAB-410-LF
______________________________________________________
2) REFERENCE-PRIMARY-SECONDARY Using SAP and Configured Sources
# Configuration Parameters from server DUS-LAB-410-PREMIUM Gets Time via SAP
Configured Sources = OFF
Directory Tree Mode = ON
Hardware Clock = ON
Polling Count = 3
Polling Interval = 600
Service Advertising = OFF
Synchronization Radius = 2000
Type = SECONDARY
# Configured time source list from server DUS-LAB-410-PREMIUM
--------------------------------------------------------------------------------------------
# Configuration Parameters from server DUS-LAB-410-LF Gets time via Configured Source
Configured Sources = ON
Directory Tree Mode = ON
Hardware Clock = ON
Polling Count = 3
Polling Interval = 600
Service Advertising = OFF
Synchronization Radius = 2000
Type = PRIMARY
# Configured time source list from server DUS-LAB-410-LF
Time Source = DUS-LAB-410-VECTRA
--------------------------------------------------------------------------------------------
# Configuration Parameters from server DUS-LAB-410-VECTRA Gets time via configured Source
Configured Sources = ON
Directory Tree Mode = ON
Hardware Clock = ON
Polling Count = 3
Polling Interval = 600
Service Advertising = OFF
Synchronization Radius = 2000
Type = REFERENCE
# Configured time source list from server DUS-LAB-410-VECTRA
Time Source = DUS-LAB-410-LF
3) PRIMARY - PRIMARY - REFERENCE Using only configured sources
# Configuration Parameters from server DUS-LAB-410-PREMIUM
Configured Sources = ON
Directory Tree Mode = ON
Hardware Clock = ON
Polling Count = 3
Polling Interval = 600
Service Advertising = OFF
Synchronization Radius = 2000
Type = PRIMARY
# Configured time source list from server DUS-LAB-410-PREMIUM
Time Source = DUS-LAB-410-VECTRA
Time Source = DUS-LAB-410-LF
--------------------------------------------------------------------------------------------
# Configuration Parameters from server DUS-LAB-410-LF
Configured Sources = ON
Directory Tree Mode = ON
Hardware Clock = ON
Polling Count = 3
Polling Interval = 600
Service Advertising = OFF
Synchronization Radius = 2000
Type = PRIMARY
# Configured time source list from server DUS-LAB-410-LF
Time Source = DUS-LAB-410-VECTRA
Time Source = DUS-LAB-410-PREMIUM
----------------------------------------------------------------------------------------
# Configuration Parameters from server DUS-LAB-410-VECTRA
Configured Sources = ON
Directory Tree Mode = ON
Hardware Clock = ON
Polling Count = 3
Polling Interval = 600
Service Advertising = OFF
Synchronization Radius = 2000
Type = REFERENCE
# Configured time source list from server DUS-LAB-410-VECTRA
Time Source = DUS-LAB-410-PREMIUM
Time Source = DUS-LAB-410-LF
|