-- --------------------------------------------------------------------
-- ATM FORUM SOFT PVC MIB
--
-- December 1998, Satya Narayana
--
-- Copyright (c) 1996-1998, 1999 by cisco Systems, Inc.
-- All rights reserved.
-- *****************************************************************
ATM-SOFT-PVC-MIB DEFINITIONS ::= BEGIN

IMPORTS
	enterprises				FROM RFC1155-SMI
	MODULE-IDENTITY, OBJECT-TYPE,
	NOTIFICATION-TYPE,
	Counter32, Gauge32			FROM SNMPv2-SMI
	TEXTUAL-CONVENTION, RowStatus,
	TruthValue, TimeStamp			FROM SNMPv2-TC
	MODULE-COMPLIANCE, OBJECT-GROUP		FROM SNMPv2-CONF
	ifIndex					FROM IF-MIB
	atmVplVpi, atmVclVpi,
	atmVclVci				FROM ATM-MIB;

atmSoftPvcMIB MODULE-IDENTITY
	LAST-UPDATED	"9703010000Z"
	ORGANIZATION	"The ATM Forum."
	CONTACT-INFO
		"The ATM Forum
		2570 West El Camino Real, Suite 304
		Mountain View, CA 94040-1313 USA
		Phone:	+1 415-949-6700
		Fax:		+1 415-949-6705
		info@atmforum.com"
	DESCRIPTION
		"ATM Soft PVC MIB"
        REVISION        "9703010000Z"
        DESCRIPTION
                "Updated version of the Soft PVC MIB released with the
                PNNI V1.0 Errata and PICS (af-pnni-81.00)."
	REVISION	"9606210000Z"
	DESCRIPTION
		"Initial version of this MIB module."
	::= { atmfSoftPvc 1 }

atmForum 		OBJECT IDENTIFIER ::= { enterprises 353 }
atmForumNetworkManagement	OBJECT IDENTIFIER ::= { atmForum 5 }
atmfSoftPvc		OBJECT IDENTIFIER ::= { atmForumNetworkManagement 5 }

atmSoftPvcMIBObjects  OBJECT IDENTIFIER ::= { atmSoftPvcMIB 1 }
atmSoftPvcMIBTraps    OBJECT IDENTIFIER ::= { atmSoftPvcMIB 2 }

AtmAddr ::= TEXTUAL-CONVENTION
	STATUS  current
	DESCRIPTION
		"The ATM address used by the network entity.
		The address types are: no address (0 octets),
		E.164 (8 octets)and NSAP (20 octets).
		Note: The E.164 address is encoded in BCD format."
	SYNTAX    OCTET STRING (SIZE(0|8|20))
--
-- This MIB contains five tables and a number of scalars. The scalars
-- contain overall status information and counters. The tables are:
--     Soft PVC VCCs - manage Soft PVCC at originating switch
--     Soft PVC VPCs - manage Soft PVPC at originating switch
--     Interface Soft PVC Address
--	 Currently failing Soft PVCC table
--	 Currently failing Soft PVPC table
--
-- Traffic statistics for Soft PVCCs and Soft PVPCs are accessible 
-- via the atmVclStatTable and atmVplStatTable, as defined in the
-- Supplemental AtomMIB


atmSoftPvcBaseGroup	OBJECT IDENTIFIER ::= { atmSoftPvcMIBObjects 1}

atmSoftPvcCallFailuresTrapEnable	OBJECT-TYPE
	SYNTAX	TruthValue
	MAX-ACCESS	read-write
	STATUS	current
	DESCRIPTION
		"Allows the generation of traps in response to call
		failures. By default, this object is set to 'false'."
	::= { atmSoftPvcBaseGroup 1 }


atmSoftPvcCallFailures	OBJECT-TYPE
	SYNTAX	Counter32
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"The number of times a series of call attempts has failed to
		establish a Soft PVCC or Soft PVPC. The number of call
		attempts in a series is determined by
		atmSoftPVccRetryThreshold or atmSoftPVpcRetryThreshold,
		respectively."
	::= {atmSoftPvcBaseGroup 2 }


atmSoftPvcCurrentlyFailingSoftPVccs	OBJECT-TYPE
	SYNTAX	Gauge32
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"The current number of Soft PVCCs for which there is
		an active row in the atmSoftPVccTable having an
		atmSoftPVccOperStatus with a value other than 'connected'."
	::= { atmSoftPvcBaseGroup 3 }


atmSoftPvcCurrentlyFailingSoftPVpcs	OBJECT-TYPE
	SYNTAX	Gauge32
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"The current number of Soft PVPCs for which there is an
		active row in the atmSoftPVpcTable having an 
		atmSoftPVpcOperStatus with a value other than 'connected'."
	::= { atmSoftPvcBaseGroup 4 }


atmSoftPvcNotificationInterval	OBJECT-TYPE
	SYNTAX	INTEGER (0..3600)
	UNITS		"seconds"
	MAX-ACCESS	read-write
	STATUS	current
	DESCRIPTION
		"The minimum interval between the sending
		of atmSoftPvcCallFailuresTrap notifications."
	DEFVAL { 30 }
	::= { atmSoftPvcBaseGroup 5 }


--
-- Table to manage Soft PVCCs.
--

atmSoftPVccTable	OBJECT-TYPE
	SYNTAX	SEQUENCE OF AtmSoftPVccEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"The (conceptual) table used to manage Soft
		Permanent Virtual Channel Connections (Soft PVCCs).
		The Soft PVCC table is applicable only to switches."
	::= { atmSoftPvcMIBObjects 2 }


atmSoftPVccEntry	OBJECT-TYPE
	SYNTAX	AtmSoftPVccEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"Each entry in this table represents a  Soft
		Permanent Virtual Channel Connection (Soft PVCC)
		originating at a switch interface.

		A Soft PVCC is a VCC that is:
		  - provisioned at the originating (source)
			interface of the connection
		  - established by signalling procedures
			across a network to a destination interface.

		A row in the atmVclTable must be created,
		defining a VCL on the source interface, prior to
		creating an atmSoftPVccEntry row. The row in the
		atmVclTable must be active prior to activating the
		atmSoftPVccEntry row.

		The contents of this table reflect only the
		characteristics unique to a Soft PVCC. The traffic
		parameters are defined in the VCL row for the source
		interface, as specified in the ATOMMIB (RFC1695) and 
		the forthcoming addition, the Supplemental ATOMMIB.

		Note that the atmSigDescrParamTable contains some objects
		such as the AAL parameters, Broadband high layer
		information and Broadband low layer information
		elements which are used to carry end-to-end information.
		For this reason, these objects are not relevant to Soft
		PVCCs.

		When a row is made active, an attempt is made
		to set up a switched connection to an interface at
		the destination switch. No objects (other than
		atmSoftPVccRowStatus) can be set while the row is 
		active.

		At the destination, the VCL may be defined (but 
		not cross-connected) prior to arrival of the Setup 
		request.

		The combination of ifIndex, atmVclVpi, and atmVclVci
		specified in the index clause of this entry serves to
		identify the VCL on the source interface. The
		atmSoftPVccLeafReference object aids in distinguishing
		between leaves of a point-to-multipoint Soft PVCC."
	INDEX	{ ifIndex,
		atmVclVpi,
		atmVclVci,
		atmSoftPVccLeafReference }
	::= { atmSoftPVccTable 1 }


AtmSoftPVccEntry ::=
	SEQUENCE	{
			atmSoftPVccLeafReference		INTEGER,
			atmSoftPVccTargetAddress		AtmAddr,
			atmSoftPVccTargetSelectType		INTEGER,
			atmSoftPVccTargetVpi			INTEGER,
			atmSoftPVccTargetVci			INTEGER,
			atmSoftPVccLastReleaseCause		INTEGER,
			atmSoftPVccLastReleaseDiagnostic	OCTET STRING,
			atmSoftPVccOperStatus			INTEGER,
			atmSoftPVccRestart			INTEGER,
			atmSoftPVccRetryInterval		INTEGER,
			atmSoftPVccRetryTimer			INTEGER,
			atmSoftPVccRetryThreshold		INTEGER,
			atmSoftPVccRetryFailures		Gauge32,
			atmSoftPVccRetryLimit			INTEGER,
			atmSoftPVccRowStatus			RowStatus
			}


atmSoftPVccLeafReference OBJECT-TYPE
	SYNTAX	INTEGER  (1..65535)
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"An arbitrary integer which, in the case of the
		source VCL having an atmVclCastType of
		'p2mpRoot', serves to distinguish between the 
		multiple leaves attached to a root of a 
		point-to-multipoint Soft PVCC. If the atmVclCastType 
		is not 'p2mpRoot' the value 1 shall be used."
	::= { atmSoftPVccEntry 1 }


atmSoftPVccTargetAddress	OBJECT-TYPE
	SYNTAX	AtmAddr
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"The target ATM Address of this Soft PVCC.  If no
                address is supplied, no attempts to establish the
                Soft PVCC are initiated."
	::= { atmSoftPVccEntry 2 }


atmSoftPVccTargetSelectType	OBJECT-TYPE
	SYNTAX	INTEGER {
				required(1),
				any(2)
			}
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Indicates whether the target VPI/VCI values
		are to be used at the destination.

		If the value 'any' is specified, the destination
		switch will choose the VPI/VCI values. In such a
		case, once the Soft PVCC atmSoftPVccOperStatus
		value is 'connected', the value of this object
		changes to 'required', such that the same VPI/VCI
		values will continue to be used even if the connection
		is subsequently torn down and re-established. The
		VPI/VCI values chosen will be available for reading in 
		atmSoftPVccTargetVpi and atmSoftPVccTargetVci.

		If the value 'required' is specified, then values
		must be supplied for objects atmSoftPVccTargetVpi
		and atmSoftPVccTargetVci prior to activation of the
		row. These values are then to be used at the destination."
	DEFVAL { required }
	::= { atmSoftPVccEntry 3 }


atmSoftPVccTargetVpi	OBJECT-TYPE
	SYNTAX	INTEGER (0..4095)
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"The VPI value of the VCL used at the target interface.
		This value is not relevant when the value of 
		atmSoftPVccTargetSelectType is 'any'."
	DEFVAL { 0 }
	::= { atmSoftPVccEntry 4 }


atmSoftPVccTargetVci	OBJECT-TYPE
	SYNTAX	INTEGER  (0..65535)
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"The VCI value of the VCL used at the target interface.
		This value must be filled in when the
		atmSoftPVccTargetSelectType is set to 'required'.This 
		value is not relevant when the value of 
		atmSoftPVccTargetSelectType is 'any'."
	::= { atmSoftPVccEntry 5 }


atmSoftPVccLastReleaseCause	OBJECT-TYPE
	SYNTAX	INTEGER(1..127)
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Value of the Cause field of the Cause
		Information Element in the last RELEASE
		signalling message received for this Soft PVCC.
		Indicates the reason for the Release."
	::= { atmSoftPVccEntry 6 }


atmSoftPVccLastReleaseDiagnostic	OBJECT-TYPE
	SYNTAX	OCTET STRING (SIZE(0..8))
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Value of the first 8 bytes of diagnostic information
		from the Cause field of the Cause Information Element
		in the last RELEASE signalling message received for
		this Soft PVCC."
	::= { atmSoftPVccEntry 7 }


atmSoftPVccOperStatus     OBJECT-TYPE
	SYNTAX	INTEGER {
				other(1),
				establishmentInProgress(2),
				connected(3),
				retriesExhausted(4),
                                noAddressSupplied(5),
                                lowerLayerDown(6)
				}
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Describes the status of the Soft PVCC.  Valid values
                are:
                   other              - none of the types specified below
                   establishmentInProgress - connection or party is not
                                             operational, but setup or add
                                             party attempts are ongoing
                   connected          - connection or party is currently
                                        operational
                   retriesExhausted   - retry limit has been reached and
                                        setup or add party attempts have
                                        ceased
                   noAddressSupplied  - no remote address has been
                                        configured, so no setup or add
                                        party attempts are initiated
                   lowerLayerDown     - underlying ATM interface is not
                                        operational
                When the row is not 'active', the value of this
		object is 'other'."
	::= { atmSoftPVccEntry 8 }


atmSoftPVccRestart	OBJECT-TYPE
	SYNTAX	INTEGER {
			restart(1),
			noop(2)
			}
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"When the value is set to 'restart' the Soft PVCC
		is released if necessary and a new setup procedure
		is begun. As a result of this action, the
		atmSoftPVccOperStatus object transitions to
		'establishmentInProgress' (if not already in this state)
		and the atmSoftPVccRetryFailures object is cleared

		When the value is set to 'noop' no operation is
		performed. When read, the value 'noop' is returned."
	::= { atmSoftPVccEntry 9 }


atmSoftPVccRetryInterval	OBJECT-TYPE
	SYNTAX	INTEGER (0..3600)
	UNITS		"seconds"
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Defines the period to wait before attempting
		to establish the Soft PVCC after the first failed call
		attempt.  The time to wait between subsequent call
                attempts may differ to implement a backoff scheme.
                Zero represents an infinite interval indicating no
		retries."
	DEFVAL { 10 }
	::= { atmSoftPVccEntry 10 }


atmSoftPVccRetryTimer	OBJECT-TYPE
	SYNTAX	INTEGER (0..86400)
	UNITS		"seconds" 
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Indicates the current value of the retry timer for
		this connection. When the value reaches zero an attempt
		will be made to establish the Soft PVCC. When the timer
		is not running, the value zero shall be returned."
	::= { atmSoftPVccEntry 11 }


atmSoftPVccRetryThreshold	OBJECT-TYPE
	SYNTAX	INTEGER (0..65535)
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Indicates the number of consecutive call setup attempts for
		the same Soft PVCC which need to fail before the
		atmSoftPvcCallFailures object is incremented. A value of
		zero indicates that an infinite number of call attempts
		are required to increment the atmSoftPvcCallFailures object
		and thus disables alarms for the Soft PVCC."
	DEFVAL { 1 }
	::= { atmSoftPVccEntry 12 }


atmSoftPVccRetryFailures	OBJECT-TYPE
	SYNTAX	Gauge32 
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Indicates how many attempts to establish the connection
		have failed.  This count is reset whenever a connection
		is successfully established or the Soft PVCC is restarted."
	::= { atmSoftPVccEntry 13 }


atmSoftPVccRetryLimit	OBJECT-TYPE
	SYNTAX	INTEGER (0..65535)
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Sets a maximum limit on how many consecutive unsuccessful
		call setup attempts can be made before stopping the attempt
		to set up the connection. If this limit is reached then
		management action will be required (e.g. setting 
		atmSoftPVccRestart to 'restart') to initiate a new attempt
		to establish the connection. A value of zero indicates
		no limit - the attempts will continue until successful."
	DEFVAL { 0 }
	::= { atmSoftPVccEntry 14 }


atmSoftPVccRowStatus	OBJECT-TYPE
	SYNTAX	RowStatus
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Used to create and delete a Soft PVCC. When this
		object is set to 'active' an attempt is made to
		set up the Soft PVCC. When this object has the value
		'active' and is set to another value, any
		set-up or connection in-progress is released."
	::= { atmSoftPVccEntry 15 }


-- Table to manage Soft PVPCs

-- 
-- The following MIB definition includes support for point to 
-- multipoint Soft PVPCs. Version 1.0 of the PNNI specification does
-- not allow the use of point to multipoint Soft PVPCs. The value
-- of atmSoftPVpcLeafReference should always be set to 1 indicating
-- a point to point Soft PVPC.
-- 


atmSoftPVpcTable	OBJECT-TYPE
	SYNTAX	SEQUENCE OF AtmSoftPVpcEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"The (conceptual) table used to manage Soft
		Permanent Virtual Path Connections (Soft PVPCs)
		The Soft PVPC table is applicable only to switches."
	::= { atmSoftPvcMIBObjects 3 }


atmSoftPVpcEntry	OBJECT-TYPE
	SYNTAX	AtmSoftPVpcEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"Each entry in this table represents a  Soft
		Permanent Virtual Path Connection (Soft PVPC)
		originating at a switch interface.

		A Soft PVPC is a VPC that is:
		  - provisioned at the originating (source)
			interface of the connection
		  - established by signalling procedures
			across a network to a destination interface.

		A row in the atmVplTable must be created,
		defining a VPL on the source interface, prior to
		creating an atmSoftPVpcEntry row. The row in the
		atmVplTable must be active prior to activating the
		atmSoftPVpcEntry row.

		The contents of this table reflect only the
		characteristics unique to a Soft PVPC. The traffic
		parameters are defined in the VPL row for the source
		interface, as specified in the ATOMMIB (RFC1695) and
		the forthcoming addition, the Supplemental ATOMMIB.

		Note that the atmSigDescrParamTable contains some
		objects such as the AAL parameters, Broadband high
		layer information, and Broadband low layer information
		elements which are used to carry end-to-end information.
		For this reason, these objects are not relevant to Soft
		PVPCs.

		When a row is made active, an attempt is made
		to set up a switched connection to an interface at
		the destination switch. No objects (other than
		atmSoftPVpcRowStatus) can be set while the row is
		active.

		At the destination, the VPL may be defined (but
		not cross-connected) prior to arrival of the Setup
		request.

		The combination of ifIndex, atmVplVpi specified
		in the index clause of this entry serves to
		identify the VPL on the source interface. The
		atmSoftPVpcLeafReference object aids in distinguishing
		between leaves of a point-to-multipoint Soft PVPC."
	INDEX	{ ifIndex,
		atmVplVpi,
		atmSoftPVpcLeafReference }
	::= { atmSoftPVpcTable 1 }


AtmSoftPVpcEntry ::=
	SEQUENCE {
		atmSoftPVpcLeafReference		INTEGER,
		atmSoftPVpcTargetAddress		AtmAddr,
		atmSoftPVpcTargetSelectType		INTEGER,
		atmSoftPVpcTargetVpi			INTEGER,
		atmSoftPVpcLastReleaseCause		INTEGER,
		atmSoftPVpcLastReleaseDiagnostic	OCTET STRING,
		atmSoftPVpcOperStatus			INTEGER,
		atmSoftPVpcRestart			INTEGER,
		atmSoftPVpcRetryInterval		INTEGER,
		atmSoftPVpcRetryTimer			INTEGER,
		atmSoftPVpcRetryThreshold		INTEGER,
		atmSoftPVpcRetryFailures		Gauge32,
		atmSoftPVpcRetryLimit			INTEGER,
		atmSoftPVpcRowStatus			RowStatus
		}


atmSoftPVpcLeafReference	OBJECT-TYPE
	SYNTAX	INTEGER  (1..63535)
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"An arbitrary integer which, in the case of the
		source VPL having a atmVplCastType of
		'p2mpRoot', serves to distinguish between the
		multiple leaves attached to a root of a
		point-to-multipoint Soft PVPC.

		If the atmVplCastType is not 'p2mpRoot', the
		value 1 shall be used."
	::= { atmSoftPVpcEntry 1 }


atmSoftPVpcTargetAddress	OBJECT-TYPE
	SYNTAX	AtmAddr
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"The target ATM Address of this Soft PVPC.  If no
                address is supplied, no attempts to establish the
                Soft PVPC are initiated."
	::= { atmSoftPVpcEntry 2 }


atmSoftPVpcTargetSelectType	OBJECT-TYPE
	SYNTAX	INTEGER {
			required(1),
			any(2)
			}
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Indicates whether the target VPI value
		is to be used at the destination.
		If the value 'any' is specified, the
		destination switch will choose the VPI
		value. In such a case, once the Soft PVPC
		atmSoftPVpcOperStatus value is 'connected',
		the value of this object changes to 'required',
		such that the same VPI value will continue to
		be used even if the connection is subsequently
		torn down and re-established. The VPI value
		chosen will be available for reading in
		atmSoftPVpcTargetVpi.

		If the value 'required' is specified, then
		a value must be supplied for object
		atmSoftPVpcTargetVpi prior to activation
		of the row. This value is then to be used
		at the destination."
	DEFVAL { required }
	::= { atmSoftPVpcEntry 3 }


atmSoftPVpcTargetVpi	OBJECT-TYPE
	SYNTAX	INTEGER (0..4095)
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"The VPI value of the VPL used at the
		target interface.

		This value must be filled in when the
		atmSoftPVpcTargetSelectType is set to 'required'.
		This value is not relevant when the value of
		atmSoftPVpcTargetSelectType is 'any'."
	::= { atmSoftPVpcEntry 4 }


atmSoftPVpcLastReleaseCause	OBJECT-TYPE
	SYNTAX	INTEGER(1..127)
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Value of the Cause field of the Cause
		Information Element in the last RELEASE
		signalling message received for this Soft PVPC.
		Indicates the reason for the Release."
	::= { atmSoftPVpcEntry 5 }


atmSoftPVpcLastReleaseDiagnostic	OBJECT-TYPE
	SYNTAX	OCTET STRING (SIZE(0..8))
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Value of the first 8 bytes of diagnostic information
		from the Cause field of the Cause Information Element
		in the last RELEASE signalling message received for
		this Soft PVPC."
	::= { atmSoftPVpcEntry 6 }


atmSoftPVpcOperStatus	OBJECT-TYPE
	SYNTAX	INTEGER {
				other(1),
				establishmentInProgress(2),
				connected(3),
				retriesExhausted(4),
                                noAddressSupplied(5),
                                lowerLayerDown(6)
				}
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
	      "Describes the status of the Soft PVPC. 
                   other              - none of the types specified below
                   establishmentInProgress - connection or party is not
                                             operational, but setup or add
                                             party attempts are ongoing
                   connected          - connection or party is currently
                                        operational
                   retriesExhausted   - retry limit has been reached and
                                        setup or add party attempts have
                                        ceased
                   noAddressSupplied  - no remote address has been
                                        configured, so no setup or add
                                        party attempts are initiated
                   lowerLayerDown     - underlying ATM interface is not
                                        operational
                When the row is not 'active', the value of this
		object is 'other'."
	::= { atmSoftPVpcEntry 7 }


atmSoftPVpcRestart	OBJECT-TYPE
	SYNTAX	INTEGER {
				restart(1),
				noop(2)
				}
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"When the value is set to 'restart', the Soft PVPC is
		released if necessary and a new setup procedure is begun.
		As a result of this action, the atmSoftPVpcOperStatus
		object transitions to 'establishmentInProgress' (if not
		already in this state) and the atmSoftPVpcRetryFailures
		object is cleared.

		When the value is set to 'noop', no operation is performed.
		When read, the value 'noop' is returned."
	::= { atmSoftPVpcEntry 8 }


atmSoftPVpcRetryInterval	OBJECT-TYPE
	SYNTAX	INTEGER (0..3600)
	UNITS		"seconds"
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Defines the period to wait before attempting
		to establish the Soft PVPC after the first failed 
                call attempt.  The time to wait between subsequent
                call attempts may differ to implement a backoff scheme.
                Zero represents an infinite interval indicating no 
                retries."
	DEFVAL { 10 }
	::= { atmSoftPVpcEntry 9 }


atmSoftPVpcRetryTimer	OBJECT-TYPE
	SYNTAX	INTEGER (0..86400)
	UNITS		"seconds" 
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Indicates the current value of the retry timer for
		this connection. When the value reaches zero an attempt
		will be made to establish the Soft PVPC. When the
		timer is not running, the value zero shall be returned."
	::= { atmSoftPVpcEntry 10 }


atmSoftPVpcRetryThreshold  OBJECT-TYPE
	SYNTAX	INTEGER (0..65535)
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Indicates the number of consecutive call setup attempts for
		the same Soft PVPC which need to fail before the
		atmSoftPvcCallFailures object is incremented. A value of
		zero indicates that an infinite number of call attempts
		are required to increment the atmSoftPvcCallFailures object
		and thus disables alarms for the Soft PVPC."
	DEFVAL { 1 }
	::= { atmSoftPVpcEntry 11 }


atmSoftPVpcRetryFailures	OBJECT-TYPE
	SYNTAX	Gauge32 
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"Indicates how many attempts to establish the connection
		have failed.  This count is reset whenever a connection
		is successfully established or the Soft PVPC is restarted."
	::= { atmSoftPVpcEntry 12 }


atmSoftPVpcRetryLimit	OBJECT-TYPE
	SYNTAX	INTEGER (0..65535)
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Sets a maximum limit on how many consecutive unsuccessful
		call setup attempts can be made before stopping the attempt
		to set up the connection. If this limit is reached then
		management action will be required (e.g. setting
		atmSoftPVpcRestart to 'restart') to initiate a new attempt
		to establish the connection. A value of zero indicates no
		limit - the attempts will continue until successful."
	DEFVAL { 0 }
	::= { atmSoftPVpcEntry 13 }


atmSoftPVpcRowStatus	OBJECT-TYPE
	SYNTAX	RowStatus
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Used to create and delete a Soft PVPC. When this
		object is set to 'active' an attempt is made to
		set up the Soft PVPC. When this object has the value
		'active' and is set to another value, any
		set-up or connection in-progress is released."
	::= { atmSoftPVpcEntry 14 }


--
-- This table is used to configure one or more ATM addresses
-- prior to setting up Soft PVCCs or Soft PVPCs at an ATM 
-- interface in a node.
-- In addition, prior to setting up a Soft PVC at the source
-- interface, this table can be consulted at the destination
-- interface.
--

atmInterfaceSoftPvcAddressTable	OBJECT-TYPE
	SYNTAX	SEQUENCE OF AtmInterfaceSoftPvcAddressEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"This table is used to configure ATM addresses at 
		an ATM interface on this node prior to setting up
		Soft PVPCs or Soft PVPCs at that interface."
	::= { atmSoftPvcMIBObjects 4 }


atmInterfaceSoftPvcAddressEntry	OBJECT-TYPE
	SYNTAX	AtmInterfaceSoftPvcAddressEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"ATM address entry for configuring Soft PVCCs or
		Soft PVPCs at an ATM interface."
	INDEX { ifIndex, atmInterfaceSoftPvcAddress }
	::= { atmInterfaceSoftPvcAddressTable 1 }


AtmInterfaceSoftPvcAddressEntry ::=
	SEQUENCE {
		atmInterfaceSoftPvcAddress		AtmAddr,
		atmInterfaceSoftPvcAddressRowStatus	RowStatus
		}


atmInterfaceSoftPvcAddress	OBJECT-TYPE
	SYNTAX	AtmAddr
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"Specifies the address that can be used to establish a Soft
		PVCC or Soft PVPC to this interface."
	::= { atmInterfaceSoftPvcAddressEntry 1 }


atmInterfaceSoftPvcAddressRowStatus	OBJECT-TYPE
	SYNTAX	RowStatus
	MAX-ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"Used to create and delete an ATM address at this interface
		for setting up Soft PVCCs or Soft PVPCs."
	::= { atmInterfaceSoftPvcAddressEntry 2 }


-- Currently Failing Soft PVCC table


atmCurrentlyFailingSoftPVccTable	OBJECT-TYPE
	SYNTAX	SEQUENCE OF AtmCurrentlyFailingSoftPVccEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"A table indicating all Soft Permanent Virtual Channel
		Connections (Soft PVCCs) for which the atmSoftPVccRowStatus
		is 'active' and the atmSoftPVccOperStatus is other than
		'connected'."
	::= { atmSoftPvcMIBObjects 5 }


atmCurrentlyFailingSoftPVccEntry	OBJECT-TYPE
	SYNTAX	AtmCurrentlyFailingSoftPVccEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"Each entry in this table represents a Soft Permanent
		Virtual Channel Connection (Soft PVCC) for which the
		atmSoftPVccRowStatus is 'active' and the 
		atmSoftPVccOperStatus is other than 'connected'."
	INDEX { ifIndex,
		atmVclVpi,
		atmVclVci,
		atmSoftPVccLeafReference }
	::= { atmCurrentlyFailingSoftPVccTable 1 }


AtmCurrentlyFailingSoftPVccEntry ::=
	SEQUENCE {
		atmCurrentlyFailingSoftPVccTimeStamp	TimeStamp
		}


atmCurrentlyFailingSoftPVccTimeStamp	OBJECT-TYPE
	SYNTAX	TimeStamp
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"The time at which this Soft PVCC began to fail."
	::= { atmCurrentlyFailingSoftPVccEntry 1 }




-- Currently Failing Soft PVPC table

atmCurrentlyFailingSoftPVpcTable	OBJECT-TYPE
	SYNTAX	SEQUENCE OF AtmCurrentlyFailingSoftPVpcEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"A table indicating all Soft Permanent Virtual Path
		Connections (Soft PVPCs) for which the atmSoftPVpcRowStatus
		is 'active' and the atmSoftPVpcOperStatus is other than
		'connected'."
	::= { atmSoftPvcMIBObjects 6 }


atmCurrentlyFailingSoftPVpcEntry	OBJECT-TYPE
	SYNTAX	AtmCurrentlyFailingSoftPVpcEntry
	MAX-ACCESS	not-accessible
	STATUS	current
	DESCRIPTION
		"Each entry in this table represents a Soft Permanent
		Virtual Path Connection (Soft PVPC) for which the
		atmSoftPVpcRowStatus is 'active' and the 
		atmSoftPVpcOperStatus is other than 'connected'."
	INDEX { ifIndex,
		atmVclVpi,
		atmSoftPVpcLeafReference }
	::= { atmCurrentlyFailingSoftPVpcTable 1 }


AtmCurrentlyFailingSoftPVpcEntry ::=
	SEQUENCE {
		atmCurrentlyFailingSoftPVpcTimeStamp	TimeStamp
		}


atmCurrentlyFailingSoftPVpcTimeStamp	OBJECT-TYPE
	SYNTAX	TimeStamp
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"The time at which this Soft PVPC began to fail."
	::= { atmCurrentlyFailingSoftPVpcEntry 1 }


-- Soft PVC Traps

atmSoftPvcTraps		OBJECT IDENTIFIER ::= { atmSoftPvcMIBTraps 1 }

atmSoftPvcTrapsPrefix	OBJECT IDENTIFIER ::= { atmSoftPvcTraps 0 }

atmSoftPvcCallFailuresTrap	NOTIFICATION-TYPE
	OBJECTS	{ atmSoftPvcCallFailures,
			atmSoftPvcCurrentlyFailingSoftPVccs,
			atmSoftPvcCurrentlyFailingSoftPVpcs }
	STATUS	current
	DESCRIPTION
		"A notification indicating that one or more series of
		call attempts in trying to establish a Soft PVPC or
		Soft PVCC have failed since the last
		atmSoftPvcCallFailureTrap was sent. If this trap has
		not been sent for the last atmSoftPvcNotificationInterval,
		then it will be sent on the next increment of
		atmSoftPvcCallFailures."
::= { atmSoftPvcTrapsPrefix 1 }


-- conformance information

atmSoftPvcMIBConformance
		OBJECT IDENTIFIER ::= { atmSoftPvcMIB 3 }
atmSoftPvcMIBCompliances
		OBJECT IDENTIFIER ::= { atmSoftPvcMIBConformance 1 }
atmSoftPvcMIBGroups
		OBJECT IDENTIFIER ::= { atmSoftPvcMIBConformance 2 }


-- compliance statements

atmSoftPvcMIBCompliance	MODULE-COMPLIANCE
	STATUS	current
	DESCRIPTION
		"The compliance statement for the ATM Soft PVC group."
	MODULE	-- this module
	MANDATORY-GROUPS
		{ atmSoftPvcBaseMIBGroup, atmSoftPvcVccMIBGroup,
		  atmSoftPvcAddressMIBGroup
		}
	OBJECT atmSoftPVccRetryLimit
	MIN-ACCESS read-only
	DESCRIPTION
		"Write access not required."

	GROUP atmSoftPvcVpcMIBGroup
	DESCRIPTION
		"Required if Soft PVPCs are supported."

	OBJECT atmSoftPVpcRetryLimit
	MIN-ACCESS read-only
	DESCRIPTION
		"Write access not required."

	::= { atmSoftPvcMIBCompliances 1 }


-- units of conformance

atmSoftPvcBaseMIBGroup	OBJECT-GROUP
	OBJECTS {
		atmSoftPvcCallFailuresTrapEnable,
		atmSoftPvcCallFailures,
		atmSoftPvcCurrentlyFailingSoftPVccs,
		atmSoftPvcCurrentlyFailingSoftPVpcs,
		atmSoftPvcNotificationInterval
		}
	STATUS	current
	DESCRIPTION
		"A collection of objects to related to failing
		Soft PVCCs and Soft PVPCs."
	::= { atmSoftPvcMIBGroups 1 }




atmSoftPvcVccMIBGroup	OBJECT-GROUP
	OBJECTS {
		atmSoftPVccTargetAddress,
		atmSoftPVccTargetSelectType, atmSoftPVccTargetVpi,
		atmSoftPVccTargetVci, atmSoftPVccLastReleaseCause,
		atmSoftPVccLastReleaseDiagnostic,
		atmSoftPVccOperStatus, atmSoftPVccRestart,
		atmSoftPVccRetryInterval,
		atmSoftPVccRetryTimer, atmSoftPVccRetryThreshold,
		atmSoftPVccRetryFailures, atmSoftPVccRetryLimit, 
		atmSoftPVccRowStatus
		}
	STATUS	current
	DESCRIPTION
		"A collection of objects managing Soft PVCCs."
	::= { atmSoftPvcMIBGroups 2 }


atmSoftPvcVpcMIBGroup	OBJECT-GROUP
	OBJECTS	{
		atmSoftPVpcTargetAddress,
		atmSoftPVpcTargetSelectType, atmSoftPVpcTargetVpi,
		atmSoftPVpcLastReleaseCause,
		atmSoftPVpcLastReleaseDiagnostic,
		atmSoftPVpcOperStatus, atmSoftPVpcRestart,
		atmSoftPVpcRetryInterval,
		atmSoftPVpcRetryTimer, atmSoftPVpcRetryThreshold,
		atmSoftPVpcRetryFailures,
		atmSoftPVpcRetryLimit,atmSoftPVpcRowStatus
		}
	STATUS	current
	DESCRIPTION
		"A collection of objects managing Soft PVPCs."
	::= { atmSoftPvcMIBGroups 3 }


atmSoftPvcAddressMIBGroup	OBJECT-GROUP
	OBJECTS	{
		atmInterfaceSoftPvcAddressRowStatus
		}
	STATUS	current
	DESCRIPTION
		"A collection of objects managing interfaces addresses for
		Soft PVCCs and Soft PVPCs."
	::= { atmSoftPvcMIBGroups 4 }


atmCurrentlyFailingSoftPVccMIBGroup	OBJECT-GROUP
	OBJECTS	{
		atmCurrentlyFailingSoftPVccTimeStamp
		}
	STATUS	current
	DESCRIPTION
		"A collection of objects for management of currently
		failing Soft PVCCs."
	::= { atmSoftPvcMIBGroups 5 }


atmCurrentlyFailingSoftPVpcMIBGroup	OBJECT-GROUP
	OBJECTS	{
		atmCurrentlyFailingSoftPVpcTimeStamp
		}
	STATUS	current
	DESCRIPTION
		"A collection of objects for management of currently
		failing Soft PVPCs."
	::= { atmSoftPvcMIBGroups 6 }


END

