3 ============================ TAO Time Service==============================
5 This is a complete implementation of the CORBA time service spec. The
6 service offers a globally synchronized time to a requesting
7 client. The Time Service interface has been implemented as two servants:
8 the clerk and the server. Clients who wish to use the service talk to
9 clerks and the clerks in turn keep their time synchronized
10 globally. The clerks do this by talking to the servers running on
13 There needs to be at least one time server running in the network. The Clerks
14 update their time periodically from the servers. The servers and clerks
15 export their IORs through the
18 The Servers can also be activated on demand by the Clerks if they have been
19 registered with an Implementation Repository.
21 If Naming Service is being used the clerks and servers are registered in
22 different Naming Contexts as :
24 For the clerks : ClerkContext->Clerk:<local_host_name>
25 For the server : ServerContext->Server:<local_host_name>
27 The machine name is included to make the object name unique and distinguish
28 between the various servers and clerks.
30 A sample run of the TimeService can be done as follows :
32 * Using the Naming Service :
34 1. Run TAO/orbsvcs/Time_Service/server on different machines.
35 2. Run TAO/orbsvcs/Time_Service/clerk -t 5 on some machines.
36 3. Run the TAO/orbsvcs/tests/Time/client on one of the machines where a clerk
41 1. Run TAO/orbsvcs/Time_Service/server -o server_ior on different machines.
42 2. Run TAO/orbsvcs/Time_Service/clerk -t 5 -f server_ior -o clerk_ior on some
44 3. Run the TAO/orbsvcs/tests/Time/client -f clerk_ior on one of the machines
45 where a clerk is running.
47 * Using the Implementation Repository :
49 1. Run the Implementation Repository service as :
51 TAO/orbsvcs/Time_Service> ../ImplRepo_Service/ImplRepo_Service -ORBsvcconf
52 implrepo.conf -ORBobjrefstyle url -d 1
56 TAO/orbsvcs/Time_Service> server -o server_ior -r -i
60 TAO/orbsvcs/Time_Service> clerk -f server_ior -t 5 -o clerk_ior
64 TAO/orbsvcs/tests/Time/client -f clerk_ior
69 Currently, updating the system time involves taking the average of all
70 the times received from the servers. This can be extended by using a
71 more elaborate distributed time synchronization algorithm.
73 Version Updates : (10th March, 1999)
76 The TAO Time Service has been updated to include the timezone information
77 in the Universal Time Object. This object now also has an inaccuracy estimate
78 in it. The inaccuracy is a measure of the skew in the synchronization of
79 the clerks time. It is the difference between the highest and the lowest times
80 from the servers that the clerk synchronizes its time with. The high-inaccuracy
81 and the low-inaccuracy fields are also being calculated from the inaccuracy as
85 |------------------------------------|
86 | | inacchi | inacclo |
87 |------------------------------------|
88 16-bits 16-bits 32-bits
90 Thanks to Brian Dance <Brian_Dance@UECCS.co.uk> for reporting this.
92 Future Versions of the service could include other measures of inaccuracy too,
93 say the one based on precision in the time reported by servers. In this case
94 the servers will have to supply an estimate of inaccuracy in their times.