< 上一个 | 内容 | 下一个 >

9.2 Time function set


9.2.1 Overview


Devices synchronize their time source by locating and acquiring time from a Time resource. Time synchronization of devices is required to effectively support DRLC, pricing changes, time stamping of metering data, etc.


Devices implementing the Time resource obtain correct time either directly from an external authoritative time source (e.g., NTP), or indirectly from an inaccurate source (e.g., manually entered via UI).


There may be a dependency upon an external time source for UTC time (NTP service, etc.).


9.2.2 List ordering


This resource does not contain any lists, so no ordering is specified.


9.2.3 Application guidelines/behavior


All devices SHALL implement the Time function set as a resource server, or a client, or both.


All communication of time used throughout the standard, with the exception of time for user display, SHALL be according to the definition of TimeType. Devices with user displays SHALL support local time and daylight savings time offsets.


If FunctionSetAssignments contain both Event-based function sets (e.g., DRLC, pricing, message) and a Time resource, then devices SHALL use the Time resource from the same FunctionSetAssignments when executing the events from the associated Event-based function set.


For example, if there are two FunctionSetAssignments “A” and “B,” where “A” contains a DRLC function set (DRLC(A)) and a Time resource (Time(A)) and “B” contains a DRLC function set (DRLC(B)) and a Time resource (Time(B)), then events from DRLC(A) will be executed using Time(A) as their Time resource and events from DRLC(B) will be executed using Time(B) as their Time resource, regardless of the quality metrics of either Time resource.


If a device is not assigned a Time resource, it MAY discover and operate Event-based function sets. When the device executes these events, the device SHALL use the Time resource from the server device from which it received the event. If a client discovers an Event-based function set and cannot also retrieve a Time resource from this same server, it SHALL NOT act on the events from this Event-based function set.


If a device is not processing events it SHALL discover and choose the Time resource with the best quality metric.


If a device displays time, then it SHOULD display the time with the highest quality metric from one of the above-acquired Time resources. For devices displaying time, it should be noted that the Time resource with the highest quality metric may differ from the Time resource(s) used by events (e.g., a service provider’s Time resource may “true-up” at the end of a billing cycle). Devices SHOULD either convert displayed event times to be consistent with the chosen Time resource or make it clear to users that there are Time resource differences.


Some service providers operate a given asset on a time standard that differs from the definition given for TimeType. This would be an intentionally uncoordinated time. If a time server serves an intentionally uncoordinated time in the currentTime field, it SHALL have a quality metric of 7—time intentionally uncoordinated.


See the XML Schema described in the supplemental material of IEEE Std 2030.5 for details of the quality metric.


Devices SHOULD periodically query the selected Time resources and compare the response with the local device time to determine local clock accuracy.


A device SHOULD manage the frequency of its Time resource updates and subsequent local clock updates to provide local time accurate to within:

a) 10 seconds per 24 hour period for devices displaying time to the user

b) 60 seconds per 24 hour period if there is no user interface


To maintain time synchronization, devices SHOULD maintain these accuracies via Time resource requests. To keep network traffic to a minimum, this polling SHALL be no more than once per 15 minutes once a valid time source has been established. Requests SHALL NOT exceed once per 15 seconds and SHALL employ exponential backoff prior to establishing a valid time source. These requirements apply on a per time server basis.


Time related configuration is handled within the Configuration resource.


Time adjustments less than 60 seconds SHALL never be made backwards (e.g., use stall time or long seconds to correct for being ahead on time).


9.2.4 LogEvents


Table 29 —Time LogEvents


LogEvent name

LogEvent code

LogEvent description

TM_TIME_ADJUSTED

0x00

Should be issued by a time server when its

time is adjusted

TM_TIME_SOURCE_CHANGED

0x01

Should be issued by a time client when it

chooses a different primary time source