Management objects that control hot standby systems as specified in IEEE Std 802.1ASdm-2024. References in this YANG module to ...
Version: 2024-09-20
module ieee802-dot1as-hs { yang-version 1.1; namespace "urn:ieee:std:802.1AS:yang:ieee802-dot1as-hs"; prefix dot1as-hs; import ietf-yang-types { prefix yang; } import ieee1588-ptp-tt { prefix ptp-tt; } import ieee802-dot1as-gptp { prefix dot1as-gptp; } organization "IEEE 802.1 Working Group"; contact "WG-URL: http://ieee802.org/1/ WG-EMail: stds-802-1-l@ieee.org Contact: IEEE 802.1 Working Group Chair Postal: C/O IEEE 802.1 Working Group IEEE Standards Association 445 Hoes Lane Piscataway, NJ 08854 USA E-mail: stds-802-1-chairs@ieee.org"; description "Management objects that control hot standby systems as specified in IEEE Std 802.1ASdm-2024. References in this YANG module to IEEE Std 802.1AS are to IEEE Std 802.1AS-2020 as modified by IEEE Std 802.1AS-2020/Cor-1-2021, and amended by IEEE Std 802.1ASdr-2024, IEEE Std 802.1ASdn-2024, and IEEE Std 802.1ASdm-2024. Copyright (C) IEEE (2024). This version of this YANG module is part of IEEE Std 802.1AS; see the standard itself for full legal notices."; revision "2024-09-20" { description "Published as part of IEEE Std 802.1ASdm-2024. Initial version."; reference "IEEE Std 802.1AS - Timing and Synchronization for Time-Sensitive Applications: IEEE Std 802.1AS-2020, IEEE Std 802.1AS-2020/Cor 1-2021, IEEE Std 802.1ASdr-2024, IEEE Std 802.1ASdn-2024, IEEE Std 802.1ASdm-2024."; } feature hot-standby { description "This feature indicates that the device supports the hot-standby functionality."; } typedef hot-standby-system-state-type { type enumeration { enum "init" { value 0; description "Initialization after the HotStandbySystem powers on and is enabled. In this state, the system is waiting for both PTP Instances to synchronize."; } enum "redundant" { value 1; description "Both PTP Instances are synchronized according to the requirements of the respective application or profile standard. Time synchronization is redundant."; } enum "not-redundant" { value 2; description "One PTP Instance is synchronized, and the other PTP Instance is faulted (not synchronized). Time synchronization continues to meet the requirements of the respective application or profile standard. Time synchronization is not redundant."; } enum "out-of-sync" { value 3; description "The HotStandbySystem is adjusting phase/frequency of its local time using the data stored while the system was in the REDUNDANT or NOT_REDUNDANT state, but the local time will eventually drift relative to other time-aware systems. During OUT_OF_SYNC state, time synchronization might not meet the requirements of the respective application or profile standard."; } } description "Possible states of the hot-standby system."; } typedef nrr-comp-method-type { type enumeration { enum "sync" { value 0; description "If the value is Sync and driftTrackingTlvSupport is TRUE, neighborRateRatio is populated with the value of nrrSync whenever a new value of nrrSync is computed."; } enum "pdelay" { value 1; description "If the value is Pdelay or if driftTrackingTlvSupport is FALSE, neighborRateRatio is populated with the value of nrrPdelay whenever a new value of nrrPdelay is computed."; } } description "typdedef for nrrCompMethod."; } augment /ptp-tt:ptp/ptp-tt:instances/ptp-tt:instance/ptp-tt:parent-ds { description "Augment IEEE Std 1588 parentDS."; leaf gm-present { type boolean; config false; description "The value of gmPresent is set equal to the value of the global variable gmPresent. This parameter indicates to the ClockTarget whether a Grandmaster PTP Instance is present."; reference "14.4.7a of IEEE Std 802.1AS"; } } augment /ptp-tt:ptp/ptp-tt:instances/ptp-tt:instance { description "Augment IEEE Std 1588 instanceList."; container ptp-instance-sync-ds { description "The ptpInstanceSyncDS describes the synchronization status of the PTP Instance."; reference "14.7a of IEEE Std 802.1AS"; leaf is-synced { type boolean; config false; description "The value of the global variable isSynced."; reference "14.7a.2 of IEEE Std 802.1AS"; } leaf offset-from-time-transmitter-max { type ptp-tt:time-interval; description "The value is the threshold for offsetFromTimeTransmitter, below which the PTP Instance is considered to be synchronized."; reference "14.7a.3 of IEEE Std 802.1AS"; } leaf rx-sync-count-time-receiver-p-thresh { type uint32; description "The value of rxSyncCountTimeReceiverPThresh is the threshold for rxSyncCountTimeReceiverP, above which the PTP Instance is considered to be synchronized."; reference "14.7a.4 of IEEE Std 802.1AS"; } leaf offset-max-exceeded-count-thresh { type uint32; description "The value of offsetMaxExceededCountThresh is the threshold for the number of consecutive exceedances of offsetFromTimeTransmitterMax by offsetFromTimeTransmitter, at which isSynced is no longer TRUE."; reference "14.7a.5 of IEEE Std 802.1AS"; } leaf offset-max-met-count-thresh { type uint32; description "The value of offsetMaxMetCountThresh is the threshold for the number of consecutive occurrences of offsetFromTimeTransmitter being within offsetFromTimeTransmitterMax, at which isSynced is changed to TRUE if it currently is FALSE."; reference "14.7a.6 of IEEE Std 802.1AS"; } } // container ptp-instance-sync-ds container drift-tracking-ds { description "The driftTrackingDS contains a managed object that is used to enable or disable the optional Drift_Tracking TLV."; reference "14.7b of IEEE Std 802.1AS"; leaf drift-tracking-tlv-support { type boolean; description "The value of driftTrackingTlvSupport indicates whether the Drift_Tracking TLV is enabled or disabled."; reference "14.7b.2 of IEEE Std 802.1AS"; } } // container drift-tracking-ds } augment /ptp-tt:ptp/ptp-tt:instances/ptp-tt:instance/ptp-tt:ports/ptp-tt:port/ptp-tt:port-ds { description "Augment IEEE Std 1588 commonServices."; leaf gptp-capable-state-machines-enabled { type boolean; description "A Boolean that is used to enable or disable the GptpCapableTransmit, GptpCapableReceive, and GptpCapableIntervalSetting state machines."; reference "14.8.54a of IEEE Std 802.1AS"; } leaf nrr-pdelay { type int32; config false; description "The value is an estimate of the ratio of the frequency of the LocalClock entity of the time-aware system at the other end of the link attached to this Link Port, to the frequency of the LocalClock entity of this time-aware system. nrrPdelay is expressed as the fractional frequency offset stored in the global variable nrrPdelay multiplied by 2^41, i.e., the quantity (nrrPdelay - 1.0)(2^41)."; reference "14.8.54b of IEEE Std 802.1AS"; } leaf nrr-sync { type int32; config false; description "The value is an estimate of the ratio of the frequency of the LocalClock entity of the time-aware system at the other end of the link attached to this Link Port, to the frequency of the LocalClock entity of this time-aware system. nrrSync is expressed as the fractional frequency offset stored in the global variable nrrSync multiplied by 2^41, i.e., the quantity (nrrSync - 1.0)(2^41)."; reference "14.8.54c of IEEE Std 802.1AS"; } leaf nrr-comp-method { type nrr-comp-method-type; description "An Enumeration that takes on the values sync and pdelay to indicate the source of the value of neighborRateRatio."; reference "14.8.54d of IEEE Std 802.1AS"; } leaf as-capable-across-domains { type boolean; description "This leaf is true when this PTP port detects proper exchange of Pdelay messages."; reference "14.8.54e of IEEE Std 802.1AS"; } } augment /ptp-tt:ptp/ptp-tt:instances/ptp-tt:instance/ptp-tt:ports/ptp-tt:port/dot1as-gptp:port-statistics-ds { description "Augment IEEE Std 802.1AS PortStatisticsDS."; leaf rx-sync-count-time-receiver-p { type yang:counter32; config false; description "This counter increments whenever time synchronization information is received on a PTP Port when its port state is TimeReceiverPort."; reference "14.10.19a of IEEE Std 802.1AS"; } } augment /ptp-tt:ptp/ptp-tt:common-services { description "Augment IEEE Std 1588 commonServices. IEEE Std 802.1ASdm-2024 specifies nrrPdelay (nrr-pdelay), which is provided in YANG as the semantically equivalent node in ieee1588-ptp-tt named scaled-neighbor-rate-ratio (in link-port-ds)."; container hot-standby-service { if-feature hot-standby; description "The hotStandbyService structure contains the hotStandbySystemList, which is a list of instances of the Hot Standby Service."; reference "14.19 of IEEE Std 802.1AS"; list hot-standby-system { key "hot-standby-system-index"; description "List of instances of the Hot Standby Service"; leaf hot-standby-system-index { type uint8; description "Index for the hot-standby system."; } container hot-standby-system-ds { description "The hotStandbySystemDS describes the attributes of the respective instance of the Hot Standby Service."; reference "14.19 of IEEE Std 802.1AS"; leaf primary-ptp-instance-index { type uint32; description "The value of primaryPtpInstanceIndex is the index of the primary PTP Instance associated with this hotStandbySystem instance."; reference "14.19.2 of IEEE Std 802.1AS"; } leaf secondary-ptp-instance-index { type uint32; description "The value of secondaryPtpInstanceIndex is the index of the secondaryPTP Instance associated with this hotStandbySystem instance."; reference "14.19.3 of IEEE Std 802.1AS"; } leaf hot-standby-system-enable { type boolean; description "The value is the hotStandbySystemEnable attribute of the HotStandbySystem entity."; reference "14.19.4 of IEEE Std 802.1AS"; } leaf hot-standby-system-state { type hot-standby-system-state-type; config false; description "The value of hotStandbySystemState is the state of the hotStandbySystem, i.e., the value of the global variable hotStandbySystemState."; reference "14.19.5 of IEEE Std 802.1AS"; } leaf hot-standby-system-split-functionality { type boolean; description "If the value is TRUE, the optional split functionality is used. If the value is FALSE, the optional split functionality is not used."; reference "14.19.6 of IEEE Std 802.1AS"; } leaf primary-secondary-offset { type dot1as-gptp:scaled-ns; config false; description "The absolute value of the difference between the clockTimeTransmitterTimes of the primary and secondary PTP Instances."; reference "14.19.7 of IEEE Std 802.1AS"; } leaf primary-secondary-offset-thresh { type dot1as-gptp:scaled-ns; description "The threshold for hotStandbySystemDS.primarySecondaryOffset, above which the hotStandbySytemState transitions from REDUNDANT to NOT_REDUNDANT, or does not transition from NOT_REDUNDANT or OUT_OF_SYNC to REDUNDANT even if other conditions for these transitions are satisfied."; reference "14.19.8 of IEEE Std 802.1AS"; } leaf hot-standby-system-log-sync-time-thresh { type int8; description "The value of hotStandbySystemLogSyncTimeThresh is the logarithm to base 2 of the time interval, in seconds, after which the hotStandbySystem transitions from the OUT_OF_SYNC state to either the NOT-REDUNDANT or REDUNDANT state, or from the NOT_REDUNDANT to the REDUNDANT state, if all other conditions for the respective transition are met. The value -128 means that the transition time is zero, i.e., the transition occurs immediately."; reference "14.19.9 of IEEE Std 802.1AS"; } } // container hot-standby-system-ds container hot-standby-system-description-ds { description "The hotStandbySystemDescriptionDS contains descriptive information for the respective instance of the Hot Standby Service."; reference "14.20 of IEEE Std 802.1AS"; leaf user-description { type string { length "0..128"; } description "Configurable description of the hot standby system."; reference "14.20.3 of IEEE Std 802.1AS"; } } // container hot-standby-system-description-ds } // list hot-standby-system } // container hot-standby-service } } // module ieee802-dot1as-hs
© 2024 YumaWorks, Inc. All rights reserved.