Precision Time Protocol Version 2 (PTPv2) Management Information Base
Extracted elements (25)
Some PTP profiles have their own MIB modules defined as part of the profile; this MIB module is not intended to replace those. It is intended to complement profile-specific MIBs with base monitoring of the default IEEE-1588-2008 profile over IP.
The MIB module is read-only and not intended to provide the ability to configure PTP clocks. Since PTP clocks are often embedded in network elements such as routers, switches, and gateways, configuration is generally provided via the network element's own configuration interface.
The MIB module is restricted to reading standard PTP data elements as described in IEEE Std. 1588-2008, enabling monitoring of PTP clock operation. Objects for detailed performance measurement supporting the Telecom Profile (G.8265.1) or future profiles are considered out of scope.
This MIB module is intended for use with the default PTP profile of IEEE Std. 1588-2008 running over IP. It does not address PTPv1 (IEEE Std. 1588-2002) and is not intended to replace profile-specific MIB modules that other PTP profiles (e.g., G.8265.1 Telecom Profile) define as part of their own specification.
ptpbaseClockCurrentDSTable (ptpbaseMIBClockInfo 1) exposes the currentDS from IEEE-1588-2008 Section 8.2.2: stepsRemoved (Unsigned32, boundary clock hop count), offsetFromMaster (PtpClockTimeInterval), and meanPathDelay (PtpClockTimeInterval), indexed by domain, clock type, and instance.
ptpbaseClockDefaultDSTable (ptpbaseMIBClockInfo 3) exposes the defaultDS from IEEE-1588-2008 Section 8.2.1, including twoStepFlag (TruthValue), clockIdentity, priority1, priority2, slaveOnly (TruthValue), and ClockQuality (class, accuracy, offset).
ptpbaseClockParentDSTable (ptpbaseMIBClockInfo 2) exposes the parentDS from IEEE-1588-2008 Section 8.2.3, including parentPortIdentity, parentStats (TruthValue indicating whether observed statistics are valid), grandmaster clock identity, priority1, priority2, and grandmaster ClockQuality (class, accuracy, offsetScaledLogVariance).
ptpbaseClockPortDSTable (ptpbaseMIBClockInfo 8) exposes the portDS from IEEE-1588-2008 Section 8.2.5: logAnnouncementInterval, announceReceiptTimeout, logSyncInterval, minDelayReqInterval, peerDelayReqInterval, delayMechanism (e2e/p2p), peerMeanPathDelay, grantDuration (seconds), and PTPVersion.
ptpbaseClockPortRunningTable (ptpbaseMIBClockInfo 9) provides per-port operational data: port state (PtpClockPortState), role, interfaceIndex (IF-MIB link), transport protocol (AutonomousType OID), encapsulation type, txMode and rxMode (unicast/multicast/multicastmix), and cumulative packet counters (Counter64).
ptpbaseClockPortTable (ptpbaseMIBClockInfo 7) describes configured PTP ports: port name, role (master/slave), syncTwoStep flag, currentPeerAddressType (AutonomousType OID), currentPeerAddress, and numOfAssociatedPorts (slave sessions for master; available masters for slave).
ptpbaseClockPortTransDSTable (ptpbaseMIBClockInfo 10) exposes the transparentClockPortDS from IEEE-1588-2008 Section 8.3.3: portIdentity, logMinPdelayReqInterval, faultyFlag (TruthValue), and peerMeanPathDelay (zero if e2e mechanism is used).
ptpbaseClockRunningTable (ptpbaseMIBClockInfo 4) provides operational statistics per clock instance: ptpbaseClockRunningState (PtpClockStateType), ptpbaseClockRunningPacketsSent (Counter64), and ptpbaseClockRunningPacketsReceived (Counter64). Counters are noted as discontinuous.
ptpbaseClockTimePropertiesDSTable (ptpbaseMIBClockInfo 5) exposes the timePropertiesDS from IEEE-1588-2008 Section 8.2.4: currentUTCOffsetValid, currentUTCOffset (TAI-UTC offset in seconds), leap59, leap61, timeTraceable, frequencyTraceable, ptpTimescale flags, and timeSource (atomicClock, gps, ntp, ptp, etc.).
ptpbaseClockTransDefaultDSTable (ptpbaseMIBClockInfo 6) exposes the transparentClockDefaultDS from IEEE-1588-2008 Section 8.3.2: clockIdentity, numberPorts (Counter32), delayMechanism (e2e or p2p), and primaryDomain (initialized to 0).
ptpbaseSystemDomainTable (ptpbaseMIBSystemInfo 2) reports the total number of PTP domains (ptpbaseSystemDomainTotals) per clock type (ordinaryClock, boundaryClock, transparentClock, boundaryNode). ptpbaseSystemProfile (ptpbaseMIBSystemInfo 3) exposes the active PTP profile (default, telecom, or vendorspecific).
ptpbaseSystemTable (ptpbaseMIBSystemInfo 1) indexes PTP domains by ptpDomainIndex (0-255) and ptpInstanceIndex (0-255), exposing ptpDomainClockPortsTotal (Gauge32) — the total clock ports configured within a domain. Rows are added/removed with PTP clock configuration.
Well-known encapsulation type OIDs are defined under ptpbaseWellKnownEncapsulationTypes (ptpbaseMIBClockInfo 13): Ethernet(1), VLAN(2), UDP/IP over MPLS LSP(3), UDP/IP Pseudowire over MPLS(4), Ethernet Pseudowire over MPLS(5). Used as AutonomousType values for encapsulation classification.
Well-known transport type OIDs are defined under ptpbaseWellKnownTransportTypes (ptpbaseMIBClockInfo 12): IPv4(1), IPv6(2), Ethernet(3), DeviceNET(4), ControlNET(5), IEC61158(6). These OIDs are used as the AutonomousType values in port transport object fields.
The PTPBASE-MIB module is assigned the OID mib-2 241 under the standard MIB-2 subtree, as allocated by IANA for the TICTOC Working Group.
Since the MIB module is read-only, it presents lower risk than a writable MIB; however, network management access must still be protected. SNMP versions without message integrity (SNMPv1, SNMPv2c) are not recommended; SNMPv3 with authentication and privacy (authPriv) should be used to prevent eavesdropping and tampering with management traffic for PTP monitoring data.
PtpClockPortState defines the nine PTP port protocol engine states: initializing(1), faulty(2), disabled(3), listening(4), preMaster(5), master(6), passive(7), uncalibrated(8), and slave(9), as referenced from IEEE-1588-2008 Section 9.2.5.
PtpClockStateType defines the five PTP clock engine states: freerun(1), holdover(2), acquiring(3), frequencyLocked(4), and phaseAligned(5). This models the synchronization acquisition lifecycle of a PTP clock.
PtpClockIdentity is an 8-octet OCTET STRING (SIZE(8)) representing the EUI-64-based clock identity in network byte order. It may be derived from an existing EUI-48 assignment or assigned as a non-EUI-64 address per IEEE-1588-2008 Section 7.5.2.2.
PtpClockTimeInterval is an OCTET STRING (SIZE(1..255)) corresponding to the TimeInterval structure in IEEE-1588-2008 Section 5.3.2, presented as a character array in network byte order.
PtpClockTimestamp maps to the IEEE-1588-2008 Timestamp structure (Section 5.3.3) as an OCTET STRING of exactly 6 octets. PtpClockIntervalBase2 maps message intervals (Announce, Sync, Delay_Req, Pdelay_Req) as Integer32 in the range -128..127 (log base 2 of seconds).