		TRDP-MIB DEFINITIONS::= BEGIN
--
--
-- This MIB defines objects of the Train Realtime Data Protocol (TRDP) which
-- is specified in standard IEC 61375-2-3.
--
-- The objects defined in this MIB are located under:
--
-- iso(1).std(0)
--        |
--   stdx61375(61375)
--        |
--   IEC 61375p2(2)
--        |
--        |_______________________
--        |          |           |
--        |          |           |
--     trdp(1)   (ttdb(3))   (ttdp(5))
--
--
--
-- trdp: train realtime data protocol, this MIB
-- ttdb: train topology database, MIB defined in IEC 61375-2-3
-- ttdp: train topology discovery protocol, MIB defined in IEC 61375-2-5
--
--


		IMPORTS
			OBJECT-GROUP, MODULE-COMPLIANCE
				FROM SNMPv2-CONF
			IpAddress,	Unsigned32,	OBJECT-TYPE,	MODULE-IDENTITY
				FROM SNMPv2-SMI	;

-- ***********************************************************************
-- Root OID
-- ***********************************************************************
		-- 1.0.61375.2
		iec61375p2 MODULE-IDENTITY
			LAST-UPDATED "201911270000Z"
			ORGANIZATION
				"IEC"
			CONTACT-INFO
				"International Electrotechnical Commission
				IEC Central Office
				3, rue de Varembe
				P.O. Box 131
				CH 1211 GENEVA 20
				Switzerland
				Phone: +41 22 919 02 11
				Fax: +41 22 919 03 00
				email: info@iec.ch"
			DESCRIPTION
				"This MIB module defines the Network Management interfaces
				for the Train Topology Database (TTDB) defined by the
				IEC standard 61375-2-3.
				This definition specifies a pure monitoring variant of a
SNMP entity."
			REVISION "201911270000Z"
			DESCRIPTION
				"Westermo temporary adaptions to handle limitations in the original MIB file.
				This version is not official. The aim is to temporarily solve issues in
				the MIB file for Westermo customers until a revised standard version of
				the MIB is published."

			REVISION "201405220000Z"
			DESCRIPTION "First Release"
			::= { stdx61375 2 }

--
-- Node definitions
--

		-- 1.0
		std OBJECT IDENTIFIER::= { iso 0 }

		-- 1.0.61375
		stdx61375 OBJECT IDENTIFIER::= { std 61375 }

-- ***********************************************************************
-- Train Realtime Data Protocol (TRDP)
-- ***********************************************************************
		-- 1.0.61375.2.1
		trdp OBJECT IDENTIFIER::= { iec61375p2 1 }

-- ***********************************************************************
-- objects groups of TTDB object identifiers
-- ***********************************************************************
		-- 1.0.61375.2.1.1
		trdpObjects OBJECT IDENTIFIER::= { trdp 1 }

-- General information
		-- 1.0.61375.2.1.1.1
		trdpGenInfo OBJECT IDENTIFIER::= { trdpObjects 1 }

		-- 1.0.61375.2.1.1.1.1
		trdpGenVers OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"TRDP version"
			::= { trdpGenInfo 1 }

		-- 1.0.61375.2.1.1.1.2
		trdpGenUpTime OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"time in seconds since last initialization"
			::= { trdpGenInfo 2 }

		-- 1.0.61375.2.1.1.1.3
		trdpGenStatTime OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"time in seconds since last reset of statistics"
			::= { trdpGenInfo 3 }

		-- 1.0.61375.2.1.1.1.4
		trdpGenHostName OBJECT-TYPE
			SYNTAX OCTET STRING (SIZE(0..16))
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Own host name"
			::= { trdpGenInfo 4 }

		-- 1.0.61375.2.1.1.1.5
		trdpGenLeadName OBJECT-TYPE
			SYNTAX OCTET STRING (SIZE(0..16))
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Leader host name"
			::= { trdpGenInfo 5 }

		-- 1.0.61375.2.1.1.1.6
		trdpGenOwnIp OBJECT-TYPE
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Own IP address"
			::= { trdpGenInfo 6 }

		-- 1.0.61375.2.1.1.1.7
		trdpGenLeadIp OBJECT-TYPE
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Leader IP address"
			::= { trdpGenInfo 7 }

		-- 1.0.61375.2.1.1.1.8
		trdpGenProcPrio OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"priority of TRDP process"
			::= { trdpGenInfo 8 }

		-- 1.0.61375.2.1.1.1.9
		trdpGenProcCycle OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Cycle time of TRDP process in microseconds"
			::= { trdpGenInfo 9 }

		-- 1.0.61375.2.1.1.1.10
		trdpGenNumJoin OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of IGMP joins"
			::= { trdpGenInfo 10 }

		-- 1.0.61375.2.1.1.1.11
		trdpGenNumRed OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of redundancy groups"
			::= { trdpGenInfo 11 }

-- Memory statistics
		-- 1.0.61375.2.1.1.2
		trdpMemStat OBJECT IDENTIFIER::= { trdpObjects 2 }

		-- 1.0.61375.2.1.1.2.1
		trdpMemTotal OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Total memory size"
			::= { trdpMemStat 1 }

		-- 1.0.61375.2.1.1.2.2
		trdpMemFree OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Free memory"
			::= { trdpMemStat 2 }

		-- 1.0.61375.2.1.1.2.3
		trdpMemMinFree OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Minimal free memory in statistics interval"
			::= { trdpMemStat 3 }

		-- 1.0.61375.2.1.1.2.4
		trdpMemAllocBlocks OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of allocated blocks"
			::= { trdpMemStat 4 }

		-- 1.0.61375.2.1.1.2.5
		trdpMemAllocErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of allocation errors"
			::= { trdpMemStat 5 }

		-- 1.0.61375.2.1.1.2.6
		trdpMemFreeErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of freeing errors"
			::= { trdpMemStat 6 }

-- Process data statistics
		-- 1.0.61375.2.1.1.3
		trdpPdStat OBJECT IDENTIFIER::= { trdpObjects 3 }

		-- 1.0.61375.2.1.1.3.1
		trdpPdDefQos OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default QoS for PD"
			::= { trdpPdStat 1 }

		-- 1.0.61375.2.1.1.3.2
		trdpPdDefTtl OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default TTL for PD"
			::= { trdpPdStat 2 }

		-- 1.0.61375.2.1.1.3.3
		trdpPdDefTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default timeout for PD"
			::= { trdpPdStat 3 }

		-- 1.0.61375.2.1.1.3.4
		trdpPdNumSubs OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of subscribed ComIds"
			::= { trdpPdStat 4 }

		-- 1.0.61375.2.1.1.3.5
		trdpPdNumPub OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of published ComIds"
			::= { trdpPdStat 5 }

		-- 1.0.61375.2.1.1.3.6
		trdpPdNumRcv OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"number of received PD packets"
			::= { trdpPdStat 6 }

		-- 1.0.61375.2.1.1.3.7
		trdpPdNumCrcErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received PD packets with CRC error"
			::= { trdpPdStat 7 }

		-- 1.0.61375.2.1.1.3.8
		trdpPdNumProtErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received PD packets with protocol error"
			::= { trdpPdStat 8 }

		-- 1.0.61375.2.1.1.3.9
		trdpPdNumTopoErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received PD packets with wrong
			topo counter value"
		::= { trdpPdStat 9 }

		-- 1.0.61375.2.1.1.3.10
		trdpPdNumNoSubs OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received PD packets without subscription"
			::= { trdpPdStat 10 }

		-- 1.0.61375.2.1.1.3.11
		trdpPdNumNoPub OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received PD packets without publisher"
			::= { trdpPdStat 11 }

		-- 1.0.61375.2.1.1.3.12
		trdpPdNumTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of PD timeouts"
			::= { trdpPdStat 12 }

		-- 1.0.61375.2.1.1.3.13
		trdpPdNumSend OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION	
				"Number	 of sent PD packets"
			::= { trdpPdStat 13 }


-- Message data statistics (UDP)
		-- 1.0.61375.2.1.1.4
		trdpMduStat OBJECT IDENTIFIER::= { trdpObjects 4 }

		-- 1.0.61375.2.1.1.4.1
		trdpMduDefQos OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default QoS for MD"
			::= { trdpMduStat 1 }

		-- 1.0.61375.2.1.1.4.2
		trdpMduDefTtl OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"default TTL for MD"
			::= { trdpMduStat 2 }

		-- 1.0.61375.2.1.1.4.3
		trdpMduDefReplyTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default reply timeout for MD"
			::= { trdpMduStat 3 }

		-- 1.0.61375.2.1.1.4.4
		trdpMduDefConfTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default confirm timeout for MD"
			::= { trdpMduStat 4 }

		-- 1.0.61375.2.1.1.4.5
		trdpMduNumList OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of Listeners"
			::= { trdpMduStat 5 }

		-- 1.0.61375.2.1.1.4.6
		trdpMduNumRcv OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets"
			::= { trdpMduStat 6 }

		-- 1.0.61375.2.1.1.4.7
		trdpMduNumCrcErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets with CRC error"
			::= { trdpMduStat 7 }

		-- 1.0.61375.2.1.1.4.8
		trdpMduNumProtErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets with protocol
				error"
			::= { trdpMduStat 8 }

		-- 1.0.61375.2.1.1.4.9
		trdpMduNumTopoErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets with wrong
				topo counter value"
			::= { trdpMduStat 9 }

		-- 1.0.61375.2.1.1.4.10
		trdpMduNumNoList OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets without
				Listener"
			::= { trdpMduStat 10 }

		-- 1.0.61375.2.1.1.4.11
		trdpMduNumReplyTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of MD reply timeouts"
			::= { trdpMduStat 11 }

		-- 1.0.61375.2.1.1.4.12
		trdpMduNumConfTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of MD confirm timeouts"
			::= { trdpMduStat 12 }

		-- 1.0.61375.2.1.1.4.13
		trdpMduNumSend OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"number of sent MD packets"
			::= { trdpMduStat 13 }
	
-- Message data statistics (TCP)
		-- 1.0.61375.2.1.1.5
		trdpMdtStat OBJECT IDENTIFIER::= { trdpObjects 5 }

		-- 1.0.61375.2.1.1.5.1
		trdpMdtDefQos OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default QoS for MD"
			::= { trdpMdtStat 1 }

		-- 1.0.61375.2.1.1.5.2
		trdpMdtDefTtl OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"default TTL for MD"
			::= { trdpMdtStat 2 }

		-- 1.0.61375.2.1.1.5.3
		trdpMdtDefReplyTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default reply timeout for MD"
			::= { trdpMdtStat 3 }

		-- 1.0.61375.2.1.1.5.4
		trdpMdtDefConfTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Default confirm timeout for MD"
			::= { trdpMdtStat 4 }

		-- 1.0.61375.2.1.1.5.5
		trdpMdtNumList OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of Listeners"
			::= { trdpMdtStat 5 }

		-- 1.0.61375.2.1.1.5.6
		trdpMdtNumRcv OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets"
			::= { trdpMdtStat 6 }

		-- 1.0.61375.2.1.1.5.7
		trdpMdtNumCrcErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets with CRC error"
			::= { trdpMdtStat 7 }

		-- 1.0.61375.2.1.1.5.8
		trdpMdtNumProtErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets with protocol
				error"
			::= { trdpMdtStat 8 }

		-- 1.0.61375.2.1.1.5.9
		trdpMdtNumTopoErr OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets with wrong
				topo counter value"
			::= { trdpMdtStat 9 }

		-- 1.0.61375.2.1.1.5.10
		trdpMdtNumNoList OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of received MD packets without
				Listener"
			::= { trdpMdtStat 10 }

		-- 1.0.61375.2.1.1.5.11
		trdpMdtNumReplyTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of MD reply timeouts"
			::= { trdpMdtStat 11 }

		-- 1.0.61375.2.1.1.5.12
		trdpMdtNumConfTo OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of MD confirm timeouts"
			::= { trdpMdtStat 12 }

		-- 1.0.61375.2.1.1.5.13
		trdpMdtNumSend OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"number of sent MD packets"
			::= { trdpMdtStat 13 }

-- Redundancy statistics
		-- 1.0.61375.2.1.1.6
		trdpRedStat OBJECT IDENTIFIER::= { trdpObjects 6 }

		-- 1.0.61375.2.1.1.6.1
		trdpRedId OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Redundancy Id"
			::= { trdpRedStat 1 }

		-- 1.0.61375.2.1.1.6.2
		trdpRedState OBJECT-TYPE
			SYNTAX Unsigned32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"State: leader/follower"
			::= { trdpRedStat 2 }

-- ***********************************************************************
-- conformance statements
-- ***********************************************************************
		-- 1.0.61375.2.1.2
		trdpConformance OBJECT IDENTIFIER::= { trdp 2 }

		-- 1.0.61375.2.1.2.2
		trdpGenGroup OBJECT-GROUP
			OBJECTS { trdpGenVers,
						trdpGenUpTime,
						trdpGenStatTime,
						trdpGenHostName,
						trdpGenLeadName,
						trdpGenOwnIp,
						trdpGenLeadIp,
						trdpGenProcPrio,
						trdpGenProcCycle,
						trdpGenNumJoin,
						trdpGenNumRed}
			STATUS current
			DESCRIPTION
				"General statistics and configuration data"
			::= { trdpConformance 2 }

		-- 1.0.61375.2.1.2.3
		trdpMemGroup OBJECT-GROUP
			OBJECTS { trdpMemTotal,
						trdpMemFree,
						trdpMemMinFree,
						trdpMemAllocBlocks,
						trdpMemAllocErr,
						trdpMemFreeErr,
						trdpMemFreeErr}
			STATUS current
			DESCRIPTION
				"Memory statistics and configuration data"
			::= { trdpConformance 3 }

		-- 1.0.61375.2.1.2.4
		trdpPdGroup OBJECT-GROUP
			OBJECTS { trdpPdDefQos,
						trdpPdDefTtl,
						trdpPdDefTo,
						trdpPdNumSubs,
						trdpPdNumPub,
						trdpPdNumRcv,
						trdpPdNumCrcErr,
						trdpPdNumProtErr,
						trdpPdNumTopoErr,
						trdpPdNumNoSubs,
						trdpPdNumNoPub,
						trdpPdNumTo,
						trdpPdNumSend}
			STATUS current
			DESCRIPTION
				"PD statistis and configuration data"
			::= { trdpConformance 4 }

		-- 1.0.61375.2.1.2.5
		trdpMduGroup OBJECT-GROUP
			OBJECTS { trdpMduDefQos,
						trdpMduDefTtl,
						trdpMduDefReplyTo,
						trdpMduDefConfTo,
						trdpMduNumList,
						trdpMduNumRcv,
						trdpMduNumCrcErr,
						trdpMduNumProtErr,
						trdpMduNumTopoErr,
						trdpMduNumReplyTo,
						trdpMduNumNoList,
						trdpMduNumConfTo,
						trdpMduNumSend}
			STATUS current
			DESCRIPTION
				"MD statistis and configuration data"
			::= { trdpConformance 5 }

		-- 1.0.61375.2.1.2.6
		trdpMdtGroup OBJECT-GROUP
			OBJECTS { trdpMdtDefQos,
						trdpMdtDefTtl,
						trdpMdtDefReplyTo,
						trdpMdtDefConfTo,
						trdpMdtNumList,
						trdpMdtNumRcv,
						trdpMdtNumCrcErr,
						trdpMdtNumProtErr,
						trdpMdtNumTopoErr,
						trdpMdtNumReplyTo,
						trdpMdtNumNoList,
						trdpMdtNumConfTo,
						trdpMdtNumSend}
			STATUS current
			DESCRIPTION
				"MD statistis and configuration data"
			::= { trdpConformance 6 }

		-- 1.0.61375.2.1.2.7
		trdpRedGroup OBJECT-GROUP
			OBJECTS { trdpRedId,
						trdpRedState }
			STATUS current
			DESCRIPTION
				"General statistis and configuration data"
			::= { trdpConformance 7 }

		-- 1.0.61375.2.1.2.8
		trdpBasicCompliance MODULE-COMPLIANCE
			STATUS current
			DESCRIPTION
				"basic implementation requirements for TRDP monitoring"
			MODULE -- this module
			MANDATORY-GROUPS {trdpGenGroup,
								trdpMemGroup,
								trdpPdGroup,
								trdpMduGroup,
								trdpMdtGroup,
								trdpRedGroup }
			::= { trdpConformance 8 }
END
