FR-MFR-MIB DEFINITIONS ::= BEGIN

IMPORTS
	MODULE-IDENTITY,
	OBJECT-TYPE,
	Integer32,
	Counter32,
	NOTIFICATION-TYPE,
	transmission
		FROM SNMPv2-SMI
	TEXTUAL-CONVENTION,
	TestAndIncr,
	RowStatus
		FROM SNMPv2-TC
	MODULE-COMPLIANCE,
	OBJECT-GROUP,
	NOTIFICATION-GROUP
		FROM SNMPv2-CONF
	SnmpAdminString
		FROM SNMP-FRAMEWORK-MIB
	InterfaceIndex,
	ifIndex
		FROM IF-MIB;

mfrMib MODULE-IDENTITY
	LAST-UPDATED "200011300000Z"	-- Nov 30, 2000 12:00:00 AM
	ORGANIZATION "IETF Frame Relay Service MIB (frnetmib)
Working Group"
	CONTACT-INFO
		"WG Charter:
		    http://www.ietf.org/html.charters/frnetmib-charter.html
		WG-email:      frnetmib@sunroof.eng.sun.com
		Subscribe:     frnetmib-request@sunroof.eng.sun.com
		Email Archive: ftp://ftp.ietf.org/ietf-mail-archive/frnetmib

		Chair:      Andy Malis
		            Vivace Networks
		Email:      Andy.Malis@vivacenetworks.com

		WG editor:  Prayson Pate
		            Overture Networks
		Email:      prayson.pate@overturenetworks.com

		Co-author:  Bob Lynch
		            Overture Networks





		EMail:      bob.lynch@overturenetworks.com

		Co-author:  Kenneth Rehbehn
		            Megisto Systems, Inc.
		EMail:      krehbehn@megisto.com"
	DESCRIPTION
		"This is the MIB used to control and monitor the multilink
		frame relay (MFR) function described in FRF.16."
	REVISION "200011300000Z"	-- Nov 30, 2000 12:00:00 AM
	DESCRIPTION
		"Published as RFC 3020."
	-- 1.3.6.1.2.1.10.47
	::= { transmission 47 }


-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- Textual Conventions
-- ---------------------------------------------------------
-- ---------------------------------------------------------

MfrBundleLinkState ::= TEXTUAL-CONVENTION
	STATUS  current
	DESCRIPTION
		"The possible states for a bundle link, as defined in
		Annex A of FRF.16."
	REFERENCE
		"FRF.16 Annex A"
	SYNTAX INTEGER {
			mfrBundleLinkStateAddSent(1),
			mfrBundleLinkStateAddRx(2),
			mfrBundleLinkStateAddAckRx(3),
			mfrBundleLinkStateUp(4),
			mfrBundleLinkStateIdlePending(5),
			mfrBundleLinkStateIdle(6),
			mfrBundleLinkStateDown(7),
			mfrBundleLinkStateDownIdle(8) }


-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- Object Identifiers
-- ---------------------------------------------------------
-- ---------------------------------------------------------

mfrMibScalarObjects OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.10.47.1
	::= { mfrMib 1 }

mfrMibBundleObjects OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.10.47.2
	::= { mfrMib 2 }

mfrMibBundleLinkObjects OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.10.47.3
	::= { mfrMib 3 }

mfrMibTraps OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.10.47.4
	::= { mfrMib 4 }

mfrMibConformance OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.10.47.5
	::= { mfrMib 5 }

mfrMibTrapsPrefix OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.10.47.4.0
	::= { mfrMibTraps 0 }

mfrMibGroups OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.10.47.5.1
	::= { mfrMibConformance 1 }

mfrMibCompliances OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.10.47.5.2
	::= { mfrMibConformance 2 }

-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- Scalars
-- ---------------------------------------------------------
-- ---------------------------------------------------------

mfrBundleMaxNumBundles OBJECT-TYPE
	SYNTAX  Integer32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"This object is used to inform the manager of the
		maximum number of bundles supported by this device."
	-- 1.3.6.1.2.1.10.47.1.1
	::= { mfrMibScalarObjects 1 }


mfrBundleNextIndex OBJECT-TYPE
	SYNTAX  TestAndIncr
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object is used to assist the manager in
		selecting a value for mfrBundleIndex during row creation
		in the mfrBundleTable.  It can also be used to avoid race
		conditions with multiple managers trying to create
		rows in the table (see RFC 2494 [RFC2494] for one such
		alogrithm)."
	REFERENCE
		"RFC 2494"
	-- 1.3.6.1.2.1.10.47.1.2
	::= { mfrMibScalarObjects 2 }


-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- Bundle Table
-- ---------------------------------------------------------
-- ---------------------------------------------------------

mfrBundleTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF MfrBundleEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The bundle configuration and status table.  There
		is a one-to-one correspondence between a bundle
		and an interface represented in the ifTable.

		The following objects of the ifTable have specific
		meaning for an MFR bundle:
		   ifAdminStatus  - the bundle admin status
		   ifOperStatus   - the bundle operational status
		   ifSpeed        - the current bandwidth of the bundle
		   ifInUcastPkts  - the number of frames received
		                    on the bundle
		   ifOutUcastPkts - the number of frames transmitted
		                    on the bundle
		   ifInErrors     - frame (not fragment) errors
		   ifOutErrors    - frame (not fragment) errors

		"
	-- 1.3.6.1.2.1.10.47.2.3
	::= { mfrMibBundleObjects 3 }


mfrBundleEntry OBJECT-TYPE
	SYNTAX  MfrBundleEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"An entry in the bundle table."
	INDEX {
		mfrBundleIndex }
	-- 1.3.6.1.2.1.10.47.2.3.1
	::= { mfrBundleTable 1 }


MfrBundleEntry ::= SEQUENCE {

	mfrBundleIndex              Integer32,
	mfrBundleIfIndex            InterfaceIndex,
	mfrBundleRowStatus          RowStatus,
	mfrBundleNearEndName        SnmpAdminString,
	mfrBundleFragmentation      INTEGER,
	mfrBundleMaxFragSize        Integer32,
	mfrBundleTimerHello         INTEGER,
	mfrBundleTimerAck           INTEGER,
	mfrBundleCountMaxRetry      INTEGER,
	mfrBundleActivationClass    INTEGER,
	mfrBundleThreshold          Integer32,
	mfrBundleMaxDiffDelay       Integer32,
	mfrBundleSeqNumSize         INTEGER,
	mfrBundleMaxBundleLinks     Integer32,
	mfrBundleLinksConfigured    Integer32,
	mfrBundleLinksActive        Integer32,
	mfrBundleBandwidth          Integer32,
	mfrBundleFarEndName         SnmpAdminString,
	mfrBundleResequencingErrors Counter32 }


mfrBundleIndex OBJECT-TYPE
	SYNTAX  Integer32 (1..2147483647)
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The index into the table.  While this corresponds
		to an entry in the ifTable, the value of mfrBundleIndex
		need not match that of the ifIndex in the ifTable.
		A manager can use mfrBundleNextIndex to select a unique
		mfrBundleIndex for creating a new row."
	-- 1.3.6.1.2.1.10.47.2.3.1.1
	::= { mfrBundleEntry 1 }


mfrBundleIfIndex OBJECT-TYPE
	SYNTAX  InterfaceIndex
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The value must match an entry in the interface
		table whose ifType must be set to frf16MfrBundle(163).

		For example: if the value of mfrBundleIfIndex is 10,
		then a corresponding entry should be present in





		the ifTable with an index of 10 and an ifType of 163."
	-- 1.3.6.1.2.1.10.47.2.3.1.2
	::= { mfrBundleEntry 2 }


mfrBundleRowStatus OBJECT-TYPE
	SYNTAX  RowStatus
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The mfrBundleRowStatus object allows create, change,
		and delete operations on bundle entries."
	REFERENCE
		"RFC 1903"
	-- 1.3.6.1.2.1.10.47.2.3.1.3
	::= { mfrBundleEntry 3 }


mfrBundleNearEndName OBJECT-TYPE
	SYNTAX  SnmpAdminString
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The configured name of the bundle."
	REFERENCE
		"FRF.16 section 3.4.1"
	-- 1.3.6.1.2.1.10.47.2.3.1.4
	::= { mfrBundleEntry 4 }


mfrBundleFragmentation OBJECT-TYPE
	SYNTAX  INTEGER {
			enable(1),
			disable(2) }
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"Controls whether the bundle performs/accepts
		fragmentation and re-assembly.  The possible
		values are:

		enable(1) - Bundle links will fragment frames

		disable(2) - Bundle links will not fragment
		            frames."
	DEFVAL { disable }
	-- 1.3.6.1.2.1.10.47.2.3.1.5
	::= { mfrBundleEntry 5 }


mfrBundleMaxFragSize OBJECT-TYPE
	SYNTAX  Integer32 (-1..8184)
	UNITS	"Octets"
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The maximum fragment size supported.  Note that this





		is only valid if mfrBundleFragmentation is set to enable(1).

		Zero is not a valid fragment size.

		A bundle that does not support fragmentation must return
		this object with a value of -1."
	DEFVAL { -1 }
	-- 1.3.6.1.2.1.10.47.2.3.1.6
	::= { mfrBundleEntry 6 }


mfrBundleTimerHello OBJECT-TYPE
	SYNTAX  INTEGER (1..180)
	UNITS	"Seconds"
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The configured MFR Hello Timer value."
	REFERENCE
		"FRF.16 section 4.3.8.1"
	DEFVAL { 10 }
	-- 1.3.6.1.2.1.10.47.2.3.1.7
	::= { mfrBundleEntry 7 }


mfrBundleTimerAck OBJECT-TYPE
	SYNTAX  INTEGER (1..10)
	UNITS	"Seconds"
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The configured MFR T_ACK value."
	REFERENCE
		"FRF.16 section 4.3.8.2"
	DEFVAL { 4 }
	-- 1.3.6.1.2.1.10.47.2.3.1.8
	::= { mfrBundleEntry 8 }


mfrBundleCountMaxRetry OBJECT-TYPE
	SYNTAX  INTEGER (1..5)
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The MFR N_MAX_RETRY value."
	REFERENCE
		"FRF.16 section 4.3.8.3"
	DEFVAL { 2 }
	-- 1.3.6.1.2.1.10.47.2.3.1.9
	::= { mfrBundleEntry 9 }


mfrBundleActivationClass OBJECT-TYPE
	SYNTAX  INTEGER {
			mfrBundleActivationClassA(1),
			mfrBundleActivationClassB(2),
			mfrBundleActivationClassC(3),
			mfrBundleActivationClassD(4) }
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"Controls the conditions under which the bundle is activated.
		The following settings are available:

		   mfrBundleActivationClassA(1) - at least one must link up
		   mfrBundleActivationClassB(2) - all links must be up
		   mfrBundleActivationClassC(3) - a certain number must be
		                                  up.  Refer to
		                                  mfrBundleThreshold for
		                                  the required number.
		   mfrBundleActivationClassD(4) - custom (implementation
		                                  specific)."
	REFERENCE
		"FRF.16 section 4.2.2.1"
	DEFVAL { mfrBundleActivationClassA }
	-- 1.3.6.1.2.1.10.47.2.3.1.10
	::= { mfrBundleEntry 10 }


mfrBundleThreshold OBJECT-TYPE
	SYNTAX  Integer32 (-1..2147483647)
	UNITS	"Bundle Links"
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"Specifies the number of links that must be in operational
		'up' state before the bundle will transition to an
		operational up/active state.  If the number of
		operational 'up' links falls below this value,
		then the bundle will transition to an inactive
		state.

		Note - this is only valid when mfrBundleActivationClass
		is set to mfrBundleActivationClassC or, depending upon the
		implementation, to mfrBundleActivationClassD.  A bundle that
		is not set to one of these must return this object with a
		value of -1."
	REFERENCE
		"FRF.16 section 4.2.2.1"
	DEFVAL { -1 }
	-- 1.3.6.1.2.1.10.47.2.3.1.11
	::= { mfrBundleEntry 11 }


mfrBundleMaxDiffDelay OBJECT-TYPE
	SYNTAX  Integer32 (-1..2147483647)
	UNITS	"Milliseconds"
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The maximum delay difference between the bundle
		links.





		A value of -1 indicates that this object does not contain
		a valid value"
	DEFVAL { -1 }
	-- 1.3.6.1.2.1.10.47.2.3.1.12
	::= { mfrBundleEntry 12 }


mfrBundleSeqNumSize OBJECT-TYPE
	SYNTAX  INTEGER {
			seqNumSize12bit(1),
			seqNumSize24bit(2) }
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"Controls whether the standard FRF.12 12-bit
		sequence number is used or the optional 24-bit
		sequence number."
	REFERENCE
		"FRFTC/99-194"
	DEFVAL { seqNumSize12bit }
	-- 1.3.6.1.2.1.10.47.2.3.1.13
	::= { mfrBundleEntry 13 }


mfrBundleMaxBundleLinks OBJECT-TYPE
	SYNTAX  Integer32 (1..2147483647)
	UNITS	"Bundle Links"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The maximum number of bundle links supported for
		this bundle."
	-- 1.3.6.1.2.1.10.47.2.3.1.14
	::= { mfrBundleEntry 14 }


mfrBundleLinksConfigured OBJECT-TYPE
	SYNTAX  Integer32 (1..2147483647)
	UNITS	"Bundle Links"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of links configured for the bundle."
	-- 1.3.6.1.2.1.10.47.2.3.1.15
	::= { mfrBundleEntry 15 }


mfrBundleLinksActive OBJECT-TYPE
	SYNTAX  Integer32 (-1..2147483647)
	UNITS	"Bundle Links"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of links that are active."
	-- 1.3.6.1.2.1.10.47.2.3.1.16
	::= { mfrBundleEntry 16 }


mfrBundleBandwidth OBJECT-TYPE
	SYNTAX  Integer32
	UNITS	"Bits/Sec"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The amount of available bandwidth on the bundle"
	-- 1.3.6.1.2.1.10.47.2.3.1.17
	::= { mfrBundleEntry 17 }


mfrBundleFarEndName OBJECT-TYPE
	SYNTAX  SnmpAdminString
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Name of the bundle received from the far end."
	REFERENCE
		"FRF.16 section 3.4.1"
	-- 1.3.6.1.2.1.10.47.2.3.1.18
	::= { mfrBundleEntry 18 }


mfrBundleResequencingErrors OBJECT-TYPE
	SYNTAX  Counter32
	UNITS	"Error Events"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"A count of the number of resequencing errors.  Each event
		may correspond to multiple lost frames.  Example:
		Say sequence number 56, 59 and 60 is received for DLCI 100.
		It is decided by some means that sequence 57 and 58 is lost.
		This counter should then be incremented by ONE, even though
		two frames were lost."
	-- 1.3.6.1.2.1.10.47.2.3.1.19
	::= { mfrBundleEntry 19 }


-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- ifIndex Mapping to Bundle Index Table
-- ---------------------------------------------------------
-- ---------------------------------------------------------

mfrBundleIfIndexMappingTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF MfrBundleIfIndexMappingEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table mapping the values of ifIndex to the
		mfrBundleIndex.  This is required in order to find
		the mfrBundleIndex given an ifIndex.  The mapping of
		mfrBundleIndex to ifIndex is provided by the
		mfrBundleIfIndex entry in the mfrBundleTable."
	-- 1.3.6.1.2.1.10.47.2.4
	::= { mfrMibBundleObjects 4 }


mfrBundleIfIndexMappingEntry OBJECT-TYPE
	SYNTAX  MfrBundleIfIndexMappingEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Each row describes one ifIndex to mfrBundleIndex mapping."
	INDEX {
		ifIndex }
	-- 1.3.6.1.2.1.10.47.2.4.1
	::= { mfrBundleIfIndexMappingTable 1 }


MfrBundleIfIndexMappingEntry ::= SEQUENCE {

	mfrBundleIfIndexMappingIndex Integer32 }


mfrBundleIfIndexMappingIndex OBJECT-TYPE
	SYNTAX  Integer32 (1..2147483647)
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The mfrBundleIndex of the given ifIndex."
	-- 1.3.6.1.2.1.10.47.2.4.1.2
	::= { mfrBundleIfIndexMappingEntry 2 }


-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- Bundle Link Table
-- ---------------------------------------------------------
-- ---------------------------------------------------------

mfrBundleLinkTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF MfrBundleLinkEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The bundle link configuration and status table.  There
		is a one-to-one correspondence between a bundle link
		and a physical interface represented in the ifTable.  The
		ifIndex of the physical interface is used to index the
		bundle link table, and to create rows.

		The following objects of the ifTable have specific
		meaning for an MFR bundle link:

		   ifAdminStatus  - the bundle link admin status
		   ifOperStatus   - the bundle link operational
		                    status





		   ifSpeed        - the bandwidth of the bundle
		                    link interface
		   ifInUcastPkts  - the number of frames received
		                    on the bundle link
		   ifOutUcastPkts - the number of frames transmitted
		                    on the bundle link
		   ifInErrors     - frame and fragment errors
		   ifOutErrors    - frame and fragment errors"
	-- 1.3.6.1.2.1.10.47.3.1
	::= { mfrMibBundleLinkObjects 1 }


mfrBundleLinkEntry OBJECT-TYPE
	SYNTAX  MfrBundleLinkEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"An entry in the bundle link table."
	INDEX {
		ifIndex }
	-- 1.3.6.1.2.1.10.47.3.1.1
	::= { mfrBundleLinkTable 1 }


MfrBundleLinkEntry ::= SEQUENCE {

	mfrBundleLinkRowStatus            RowStatus,
	mfrBundleLinkConfigBundleIndex    Integer32,
	mfrBundleLinkNearEndName          SnmpAdminString,
	mfrBundleLinkState                MfrBundleLinkState,
	mfrBundleLinkFarEndName           SnmpAdminString,
	mfrBundleLinkFarEndBundleName     SnmpAdminString,
	mfrBundleLinkDelay                Integer32,
	mfrBundleLinkFramesControlTx      Counter32,
	mfrBundleLinkFramesControlRx      Counter32,
	mfrBundleLinkFramesControlInvalid Counter32,
	mfrBundleLinkTimerExpiredCount    Counter32,
	mfrBundleLinkLoopbackSuspected    Counter32,
	mfrBundleLinkUnexpectedSequence   Counter32,
	mfrBundleLinkMismatch             Counter32 }


mfrBundleLinkRowStatus OBJECT-TYPE
	SYNTAX  RowStatus
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The mfrBundleLinkRowStatus object allows create, change,
		and delete operations on mfrBundleLink entries.

		The create operation must fail if no physical interface
		is associated with the bundle link."
	-- 1.3.6.1.2.1.10.47.3.1.1.1
	::= { mfrBundleLinkEntry 1 }


mfrBundleLinkConfigBundleIndex OBJECT-TYPE
	SYNTAX  Integer32 (1..2147483647)
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The mfrBundleLinkConfigBundleIndex object allows
		the manager to control the bundle to which the bundle
		link is assigned.  If no value were in this field, then
		the bundle would remain in NOT_READY rowStatus and be
		unable to go to active.  With an appropriate mfrBundleIndex
		in this field, then we could put the mfrBundleLink row in
		NOT_IN_SERVICE or ACTIVE rowStatus."
	-- 1.3.6.1.2.1.10.47.3.1.1.2
	::= { mfrBundleLinkEntry 2 }


mfrBundleLinkNearEndName OBJECT-TYPE
	SYNTAX  SnmpAdminString
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The configured bundle link name that is sent to the far end."
	-- 1.3.6.1.2.1.10.47.3.1.1.3
	::= { mfrBundleLinkEntry 3 }


mfrBundleLinkState OBJECT-TYPE
	SYNTAX  MfrBundleLinkState
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Current bundle link state as defined by the MFR protocol
		described in Annex A of FRF.16."
	REFERENCE
		"FRF.16 Annex A"
	-- 1.3.6.1.2.1.10.47.3.1.1.4
	::= { mfrBundleLinkEntry 4 }


mfrBundleLinkFarEndName OBJECT-TYPE
	SYNTAX  SnmpAdminString
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Name of bundle link received from far end."
	REFERENCE
		"FRF.16 section 3.4.2"
	-- 1.3.6.1.2.1.10.47.3.1.1.5
	::= { mfrBundleLinkEntry 5 }


mfrBundleLinkFarEndBundleName OBJECT-TYPE
	SYNTAX  SnmpAdminString
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Name of far end bundle for this link received from far end."
	REFERENCE
		"FRF.16 section 3.4.1"
	-- 1.3.6.1.2.1.10.47.3.1.1.6
	::= { mfrBundleLinkEntry 6 }


mfrBundleLinkDelay OBJECT-TYPE
	SYNTAX  Integer32 (-1..2147483647)
	UNITS	"Milliseconds"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Current round-trip delay for this bundle link.  The
		value -1 is returned when an implementation does not
		support measurement of the bundle link delay."
	REFERENCE
		"FRF.16 section 3.4.4"
	-- 1.3.6.1.2.1.10.47.3.1.1.7
	::= { mfrBundleLinkEntry 7 }


mfrBundleLinkFramesControlTx OBJECT-TYPE
	SYNTAX  Counter32
	UNITS	"Frames"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Number of MFR control frames sent."
	REFERENCE
		"FRF.16 section 3.2"
	-- 1.3.6.1.2.1.10.47.3.1.1.8
	::= { mfrBundleLinkEntry 8 }


mfrBundleLinkFramesControlRx OBJECT-TYPE
	SYNTAX  Counter32
	UNITS	"Frames"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Number of valid MFR control frames received."
	REFERENCE
		"FRF.16 section 3.2"
	-- 1.3.6.1.2.1.10.47.3.1.1.9
	::= { mfrBundleLinkEntry 9 }


mfrBundleLinkFramesControlInvalid OBJECT-TYPE
	SYNTAX  Counter32
	UNITS	"Frames"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of invalid MFR control frames received."
	REFERENCE
		"FRF.16 section 3.2"
	-- 1.3.6.1.2.1.10.47.3.1.1.10
	::= { mfrBundleLinkEntry 10 }


mfrBundleLinkTimerExpiredCount OBJECT-TYPE
	SYNTAX  Counter32
	UNITS	"Timer Expiration Events"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Number of times the T_HELLO or T_ACK timers expired."
	REFERENCE
		"FRF.16 section 4.3.8.1 and 4.3.8.2"
	-- 1.3.6.1.2.1.10.47.3.1.1.11
	::= { mfrBundleLinkEntry 11 }


mfrBundleLinkLoopbackSuspected OBJECT-TYPE
	SYNTAX  Counter32
	UNITS	"Loopback Suspected Events"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of times a loopback has been suspected
		(based upon the use of magic numbers)."
	REFERENCE
		"FRF.16 section 4.3.7"
	-- 1.3.6.1.2.1.10.47.3.1.1.12
	::= { mfrBundleLinkEntry 12 }


mfrBundleLinkUnexpectedSequence OBJECT-TYPE
	SYNTAX  Counter32
	UNITS	"Frames"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of data MFR frames discarded because the sequence
		number of the frame for a DLCI was less than (delayed frame)
		or equal to (duplicate frame) the one expected for that DLCI.

		Example:
		Say frames with sequence numbers 56, 58, 59 is received for
		DLCI 100.  While waiting for sequence number 57 another frame
		with sequence number 58 arrives.  Frame 58 is discarded and
		the counter is incremented."
	REFERENCE
		"FRF.16 section 4.2.3.2"
	-- 1.3.6.1.2.1.10.47.3.1.1.13
	::= { mfrBundleLinkEntry 13 }


mfrBundleLinkMismatch OBJECT-TYPE
	SYNTAX  Counter32
	UNITS	"Bundle Name Mismatch Events"
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of times that the unit has been notified by the
		remote peer that the bundle name is inconsistent with other
		bundle links attached to the far-end bundle."
	REFERENCE
		"FRF.16 section 4.3.2.4"
	-- 1.3.6.1.2.1.10.47.3.1.1.14
	::= { mfrBundleLinkEntry 14 }



-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- Notifications/Traps
-- ---------------------------------------------------------
-- ---------------------------------------------------------

mfrMibTrapBundleLinkMismatch NOTIFICATION-TYPE
	OBJECTS {
		mfrBundleNearEndName,
		mfrBundleFarEndName,
		mfrBundleLinkNearEndName,
		mfrBundleLinkFarEndName,
		mfrBundleLinkFarEndBundleName}
	STATUS  current
	DESCRIPTION
		"This trap indicates that a bundle link mismatch has
		been detected.  The following objects are reported:

		mfrBundleNearEndName:    configured name of near end bundle

		mfrBundleFarEndName:     previously reported name of
		                      far end bundle

		mfrBundleLinkNearEndName: configured name of near end bundle

		mfrBundleLinkFarEndName: reported name of far end bundle

		mfrBundleLinkFarEndBundleName: currently reported name of
		                      far end bundle

		Note: that the configured items may have been configured
		      automatically.

		Note: The mfrBundleLinkMismatch counter is incremented when
		      the trap is sent."
	REFERENCE
		"FRF.16 section 4.3.2.4"
	-- 1.3.6.1.2.1.10.47.4.0.1
	::= { mfrMibTrapsPrefix 1 }


-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- Conformance/Compliance
-- ---------------------------------------------------------
-- ---------------------------------------------------------

mfrMibCompliance MODULE-COMPLIANCE
	STATUS  current
	DESCRIPTION
		"The compliance statement for equipment that implements
		the FRF16 MIB.  All of the current groups are mandatory,
		but a number of objects may be read-only if the
		implementation does not allow configuration."

	MODULE 
	MANDATORY-GROUPS {
			mfrMibBundleGroup,
			mfrMibBundleLinkGroup,
			mfrMibTrapGroup }

	OBJECT mfrBundleFragmentation
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required, but the value used must be
		reported."
	OBJECT mfrBundleMaxFragSize
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required, but the value used must be
		reported.
		A value of -1 indicates that the value is not applicable."
	OBJECT mfrBundleThreshold
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required, but the value used must be
		reported.
		A value of -1 indicates that the value is not applicable."
	OBJECT mfrBundleMaxDiffDelay
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required, but the value used must be
		reported."
	OBJECT mfrBundleSeqNumSize
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required, but the value used must be
		reported.
		A value of -1 indicates that the value is not applicable."
	-- 1.3.6.1.2.1.10.47.5.2.1
	::= { mfrMibCompliances 1 }

-- ---------------------------------------------------------
-- ---------------------------------------------------------
-- Units of Conformance
-- ---------------------------------------------------------
-- ---------------------------------------------------------

mfrMibBundleGroup OBJECT-GROUP
	OBJECTS {
		mfrBundleMaxNumBundles,
		mfrBundleNextIndex,
		mfrBundleIfIndex,
		mfrBundleRowStatus,
		mfrBundleNearEndName,
		mfrBundleFragmentation,
		mfrBundleMaxFragSize,
		mfrBundleTimerHello,
		mfrBundleTimerAck,
		mfrBundleCountMaxRetry,
		mfrBundleActivationClass,
		mfrBundleThreshold,
		mfrBundleMaxDiffDelay,
		mfrBundleMaxBundleLinks,
		mfrBundleLinksConfigured,
		mfrBundleLinksActive,
		mfrBundleBandwidth,
		mfrBundleSeqNumSize,
		mfrBundleFarEndName,
		mfrBundleResequencingErrors,
		mfrBundleIfIndexMappingIndex }
	STATUS  current
	DESCRIPTION
		"Group of objects describing bundles."
	-- 1.3.6.1.2.1.10.47.5.1.1
	::= { mfrMibGroups 1 }

mfrMibBundleLinkGroup OBJECT-GROUP
	OBJECTS {
		mfrBundleLinkRowStatus,
		mfrBundleLinkConfigBundleIndex,
		mfrBundleLinkNearEndName,
		mfrBundleLinkState,
		mfrBundleLinkFarEndName,
		mfrBundleLinkFarEndBundleName,
		mfrBundleLinkDelay,
		mfrBundleLinkFramesControlTx,
		mfrBundleLinkFramesControlRx,
		mfrBundleLinkFramesControlInvalid,
		mfrBundleLinkTimerExpiredCount,
		mfrBundleLinkLoopbackSuspected,
		mfrBundleLinkUnexpectedSequence,
		mfrBundleLinkMismatch }
	STATUS  current
	DESCRIPTION
		"Group of objects describing bundle links."
	-- 1.3.6.1.2.1.10.47.5.1.2
	::= { mfrMibGroups 2 }

mfrMibTrapGroup NOTIFICATION-GROUP
	NOTIFICATIONS {
		mfrMibTrapBundleLinkMismatch }
	STATUS  current
	DESCRIPTION
		"Group of objects describing notifications (traps)."
	-- 1.3.6.1.2.1.10.47.5.1.3
	::= { mfrMibGroups 3 }

END
