RFC2662

From RFC-Wiki

Network Working Group G. Bathrick Request for Comments: 2662 AG Communication Systems Category: Standards Track F. Ly

                                            Copper Mountain Networks
                                                         August 1999
       Definitions of Managed Objects for the ADSL Lines

Status of this Memo

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

Copyright Notice

Copyright (C) The Internet Society (1999). All Rights Reserved.

4.  Relationship of the ADSL LINE MIB with standard MIBs ...   3

Abstract

This document defines a standard SNMP MIB for ADSL lines based on the ADSL Forum standard data model [9]. The ADSL standard describes ATU-C and ATU-R as two sides of the ADSL line. This MIB covers both ATU-C and ATU-R agent's perspectives. Each instance defined in the

MIB represents a single ADSL line.

It should be noted that the ADSL Forum Network Management Working Group provided input towards the content of this document. See the Acknowledgement Section for a list of individuals who made this document possible.

The SNMP Network Management Framework

The SNMP Management Framework presently consists of five major components:

o An overall architecture, described in RFC 2571 [13].

o Mechanisms for describing and naming objects and events for the

  purpose of management.  The first version of this Structure of
  Management Information (SMI) is called SMIv1 and described in STD
  16, RFC 1155 [14], STD 16, RFC 1212 [15] and RFC 1215 [16].  The
  second version, called SMIv2, is described in STD 58, RFC 2578
  [1], STD 58, RFC 2579 [2] and STD 58, RFC 2580 [17].

o Message protocols for transferring management information. The

  first version of the SNMP message protocol is called SNMPv1 and
  described in STD 15, RFC 1157 [7].  A second version of the SNMP
  message protocol, which is not an Internet standards track
  protocol, is called SNMPv2c and described in RFC 1901 [18] and RFC
  1906 [19].  The third version of the message protocol is called
  SNMPv3 and described in RFC 1906 [19], RFC 2572 [20] and RFC 2574
  [21].

o Protocol operations for accessing management information. The

  first set of protocol operations and associated PDU formats is
  described in STD 15, RFC 1157 [7].  A second set of protocol
  operations and associated PDU formats is described in RFC 1905
  [8].

o A set of fundamental applications described in RFC 2573 [22] and

  the view-based access control mechanism described in RFC 2575
  [23].

This document specifies a MIB module that is compliant to the SMIv2. A MIB conforming to the SMIv1 can be produced through the appropriate translations. The resulting translated MIB must be semantically equivalent, except where objects or events are omitted because no translation is possible (e.g., use of Counter64). Some machine readable information in SMIv2 will be converted into textual descriptions in SMIv1 during the translation process. However, this loss of machine readable information is not considered to change the semantics of the MIB.

Object Definitions

Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the extended subset of Abstract Syntax Notation One (ASN.1) defined in the SMI. In particular, each object type is named by an OBJECT IDENTIFIER, an administratively assigned name. The object type together with an object instance serves to uniquely identify a specific instantiation of the object. For human convenience, we often use a textual string, termed the descriptor, to also refer to the object type.

Relationship of the ADSL LINE MIB with standard MIBs

This section outlines the relationship of ADSL Line MIB with other MIBs described in RFCs and in their various degrees of "standardization".

Use of the IfTable

The ADSL LINE MIB specifies the detailed attributes of a data interface. As such, it needs to integrate with IF-MIB [5]. The IANA has assigned the following ifType(s) relative to ADSL:

   IANAifType ::= TEXTUAL-CONVENTION
       . . .
   SYNTAX INTEGER {
            . . .
       adsl(94),    -- Asymmetric Digital Subscriber Loop
            . . .
       adslInterleave(124),    -- ADSL Interleaved Channel
       adslFast(125),          -- ADSL Fast Channel
            . . .          }

Interfaces of each of these types are modeled by this document. Most MIB tables in this document represent information of one of these interface types and are indexed by ifIndex. Remaining are `profile' tables which may be accessed by the profileIndex. This is explained in more detail in section 5.4 Profiles.

ADSL Interface Types

As shown below, three ADSL interface types are defined in this document, namely physical, interleaved channel, and fast channel. The physical interface represents characteristics of the physical media associated with both the ATUC and ATUR. The interleaved and fast channel interface represent the characteristics of the two types of ADSL channels.

For each ADSL Line, a physical interface always exists. Depending on which ADSL operational configuration is present (as listed in Figure 5), the channel interfaces (fast or interleaved) may or may not exist.

           ______                      ______
          |      |____________________|      |
          | ATUC |                    | ATUR |
          |      |____________________|      |
          |______|                    |______|
             | <----- physical --------> |
             | <--- fast channel ------> |
             | <- interleaved channel -> |
                  Figure 1: ADSL Model

Use of IF-MIB (Interface MIB RFC 2233) [5]

The following attributes are part of the required ifGeneralInformationGroup object group specified in RFC 2233 [5], and are not duplicated in the ADSL MIB. Keep in mind that these objects apply to the agent's view of the line.

          ifTable Object    Use for ADSL
======================================================
          ifIndex           Interface index.
          ifDescr           See interfaces MIB [5]
          ifType            physical    - adsl(94)
                            fast        - adslFast(125)
                            interleaved - adslInterleave(124)
          ifSpeed           Transmit rate from the perspective
                            of the agent.
                            physical      - line rate
                            fast          - channel rate
                            interleaved   - channel rate
          ifPhysAddress     This object should have an octet string
                            with zero length.
          ifAdminStatus     See interfaces MIB [5]
          ifOperStatus      See interfaces MIB [5]
                            Supplemented by adslAturCurrStatus and
                            adslAturCurrStatus
          ifLastChange      See interfaces MIB [5]
          ifName            See interfaces MIB [5]
          ifLinkUpDownTrapEnable   See interfaces MIB [5]
                            Default set as follows:
                            physical      - enabled(1)
                            fast          - disabled(2)
                            interleaved   - disabled(2)
          ifHighSpeed       Speed of line in Mega-bits per second
                            (ifSpeed/1,000,000)
          ifConnectorPresent See interfaces MIB [5]
                            Default set as follows:
                            physical      - true(1)
                            fast          - false(2)
                            interleaved   - false(2)
          ifAlias           See interfaces MIB [5]
          ifTableLastChange See interfaces MIB [5]
======================================================
    Figure 2: Use of ifTable Objects: ifGeneralInformationGroup

Use of the ifStackTable to associate the entries for physical, fast, interleaved channels, and higher layers (e.g., ATM) is shown below in figure 3. Use of ifStackTable is necessary, because configuration information is stored in profile tables associated with the physical-layer ifEntry only. The channels' ifEntrys need the ifStackTable to find their associated physical-layer entry and thus their configuration parameters. (See Profile section, 5.4).

           ______       (ifEntry=j)        ______
          |      |      fast channel      |      |
          |      |________________________|      |
          |      |        and/or          |      |
          |      |                        |      |
          |      |     (ifEntry=k)        |      |
          |      |   interleaved channel  |      |
          |      |________________________|      |
          | ATUC |                        | ATUR |
          |      |                        |      |
          |      |     (ifEntry=i)        |      |
          |      |      physical          |      |
          |      |________________________|      |
          |______|                        |______|
           Figure 3: Use of ifStackTable (part 1)

The ifStackTable is then used to show the relationships between the various ADSL interfaces, as illustrated below in figure 4.

                 HigherLayer   LowerLayer
                --------------------------
                     j             i
                     k             i
              Figure 4: Use of ifStackTable (part 2)

The ifRcvAddressTable is not applicable for ADSL interfaces.

Relationship with RFC 2037 [25]

Implementation of the Entity MIB [25] is optional. It in no way alters the information required in the adslLineMib, nor does it alter the relationship with IF-MIB.

The Entity MIB introduces a standardized way of presenting the components of complex systems, such as a Digital Subscriber Line Access Multiplexer (DSLAM), that may contain multiple racks, shelves, line cards, and/or ports. The Entity MIB's main goal is to present these system components, their containment relationship, and mapping information with other MIBs such as the Interface MIB and the adslLineMib.

If ATU-C agent is implemented, the Entity MIB should include entities for the ATU-C in the entPhysicalTable. The MIB's entAliasMappingTable would contain mapping information identifying the 'ifIndex' object associated with each ATU-C. However, if ATU-R agent is implemented, the Entity MIB should include entities for the ATU-R in the entPhysicalTable. In this case, the MIB's entAliasMappingTable would contain mapping information identifying the 'ifIndex' object associated with each ATU-R.

Also associating the relationship between the ifTable and Entity MIB, the entPhysicalTable contains an 'entPhysicalName' object, which approximates the semantics of the 'ifName' object from the Interface MIB.

Conventions used in the MIB

Naming Conventions

A. Atuc/Atur are used for the ATU-C and ATU-R. In other RFCs, these

  are sometimes referred to as the Near End (Ne) and Far End (Fe)
  respectively, but not in this document.

B. The terms, "transmit" and "receive", are from the perspective of

  the corresponding table's end of the line.  For example, in the
  case of Fast channels, adslAtucChanConfFastMaxTxRate defines the
  "downstream" rate, while adslAturChanConfFastMaxTxRate defines the
  "upstream" rate for a particular channel.

C. There are two possible channels: fast, and interleaved. None, one

  or both may be implemented on a particular ADSL Line.  Figure 5
  illustrates all possible operational configurations.

D. Lof, Lol, Los, Lpr mean Loss of Framing, Link, Signal, and Power,

  respectively.  Lpr is used by T1E1, so it is used for consistency
  (rather than Lop).
  A Loss of Link condition is declared at the ATU-C if a Loss of
  Signal is not preceded by a `dying-gasp' message from the ATU-R.
  Note that Loss of Link is only supported by the ATU-C.

E. ES means errored second. An Errored Second is any second

  containing one or more CRC anomaly, or one or more Los(s) or
  Severely Errored Frame (Sef) defect(s).

F. A "block" is a physical-layer `data buffer' over which CRCs are

  calculated.  For example, in DMT, the block is defined as the ADSL
  superframe.  The block duration is 250 micro-seconds so the block
  length in bytes, as defined in adslAtu*ChanCrcBlockLength, varies
  with data rate.  See Line Code Specific MIBs [11] [12] for more
  line code specific information.

G. Atn means Attenuation, Psd is Power Spectral Density and Snr is

  Signal to Noise Ratio.

H. LCS means line code specific, e.g.,

  o DMT = Discrete MultiTone
  o CAP = Carrierless Amplitude and Phase modulation and
  o QAM = Quadrature Amplitude Modulation

I. Vendor (in the Inventory objects) refers to the manufacturer of

  the ATU-C or ATU-R assembly, not the modem chip vendor. When in
  doubt, use the manufacturer of the smallest field replaceable unit
  (e.g., stand-alone modem box, plug-in board).

J. RADSL - Rate Adaptive Asymmetric Digital Subscriber Loop

Structure

The MIB has multiple parallel tables. There are tables for:

  o line -  common attributes
  o atuc and atur status
  o atuc and atur performance
     - Current and up to 96 buckets of 15 min performance history
     - Current and Previous 1-day bucket performance history
  o profiles - configuration parameters and alarm parameters

There are separate tables for Physical and Channel layers. Since their attributes are similar, only one set of "channel" tables are defined to be used for both fast and interleaved channels. The corresponding ifType gives the proper interpretation for that ifEntry.

It is intented that Line Code Specific MIBs be located under adslLCSMib. These MIBs will be defined in separate modules.

There could have been fewer tables by combining the ATU-C and ATU-R information into shared tables. However, the tables are more easily read when there are two identical sets of data.

The figure below lists the five possible ADSL operational configurations. (indicated by the value of the adslLineType). In all configurations, the physical line interface entry will exist. However, the existence of the ADSL channel varies in each case, as shown below.

   Table                         Phys     Fast  Interleaved

___________________________________________________________

 No Channels (1)               |  Y    |        |        |
 Fast Only (2)                 |  Y    |   Y    |        |
 Interleaved Only (3)          |  Y    |        |   Y    |
 Fast or Interleaved (4)       |  Y    |   Y    |   Y    |
 Fast and Interleaved (5)      |  Y    |   Y    |   Y    |
          Figure 5: ADSL Operational configurations

NOTE: In (4), channel exists of either Fast or Interleaved type, but not both. The Manager may select the type of channel to be used.

Depending on which operation configuration exists, some or all ADSL MIB tables could be supported, as shown in below. See Conformance Statements for more information on which objects are mandatory.

   Table                         Phys     Fast  Interleaved

___________________________________________________________

 adslLineTable                  |  Y    |        |        |
 adslAtucPhysTable              |  Y    |        |        |
 adslAturPhysTable              |  Y    |        |        |
 adslAtucChanTable              |       |   Y    |   Y    |
 adslAturChanTable              |       |   Y    |   Y    |
 adslAtucPerfDataTable          |  Y    |        |        |
 adslAturPerfDataTable          |  Y    |        |        |
 adslAtucIntervalTable          |  Y    |        |        |
 adslAturIntervalTable          |  Y    |        |        |
 adslAtucChanPerfDataTable      |       |   Y    |   Y    |
 adslAturChanPerfDataTable      |       |   Y    |   Y    |
 adslAtucChanIntervalTable      |       |   Y    |   Y    |
 adslAturChanIntervalTable      |       |   Y    |   Y    |

Figure 6: Use of ADSL MIB Tables with various ifIndex values

NOTE: The adslLineConfProfileTable and adslLineAlarmConfProfileTable will be present for all scenarios. See Profile Section of this document for implementation details such as profile creation, assignment, and indexing.

Structure of Conformance Groups

The MIB is organized to cover both ends of the ADSL line, ATU-C and ATU-R. Objects defined can be categorized into two groups: the ATU-C group which provides objects that are supported by ATU-C agents and the ATU-R group which provides objects that are supported by ATU-R agents. These two groups are defined by the conformance section of the MIB. All objects defined in the MIB module are supported by the ATU-C agent and only portions of the objects are supported by the ATU-R agent. Figure 7 lists all tables/objects that are supported by the ATU-R agent.

          Table                         Objects
         _______________________________________________________
          adslLineTable                 adslLineCoding
          adslAtucPhysTable             adslAtucInvVendorID
                                        adslAtucInvVersionNumber
                                        adslAtucCurrStatus (Partial)
                                        adslAtucCurrOutputPwr
                                        adslAtucCurrAttainableRate
          adslAturPhysTable             all are supported
          adslAtucChanTable             all except
                                        adslAtucChanCrcBlockLength
                                        are supported
          adslAtucPerfDataTable         all except
                                        adslAtucPerfLols,

adslAtucPerfLprs

                                        adslAtucPerfCurr15MinLols,
                                        adslAtucPerfCurr15MinLprs,
                                        adslAtucPerfCurr1DayLols,
                                        adslAtucPerfCurr1DayLprs,
                                        adslAtucPerfPrev1DayLols and
                                        adslAtucPerfPrev1DayLprs
                                        are supported
          adslAturPerfDataTable         all are supported
          adslAtucIntervalTable         adslAtucIntervalLofs
                                        adslAtucIntervalLoss
                                        adslAtucIntervalESs
                                        adslAtucIntervalInits
                                        adslAtucIntervalValidData
          adslAturIntervalTable         all are supported
          adslAtucChanPerfDataTable     all are supported
          adslAturChanPerfDataTable     all are supported
          adslAtucChanIntervalTable     all are supported
          adslAturChanIntervalTable     all are supported
          adslLineConfProfileTable      not supported
          adslLineAlarmConfProfileTable all are supported except
                                        adslAtucThresh15MinLols
                                        and adslAtucThresh15MinLprs

 Figure 7: MIB Tables and Objects Supported by the ATU-R Agent

All traps supported by the ATU-R agent are also listed:

             adslAtucPerfLofsThreshTrap
             adslAtucPerfLossThreshTrap
             adslAtucPerfESsThreshTrap
             adslAtucRateChangeTrap
             adslAturPerfLofsThreshTrap
             adslAturPerfLossThreshTrap
             adslAturPerfLprsThreshTrap
             adslAturPerfESsThreshTrap
             adslAturRateChangeTrap

Counters, Interval Buckets and Thresholds

For physical-level ES, Los, Lof, Lol, Lpr and line initialization attempts, there are event counters, current 15-minute and one (up to 96) 15-minute history bucket(s) of "interval-counters", as well as current and previous 1-day interval-counters. Each physical-layer current 15-minute event bucket has threshold trap.

At the channel level, there are counters for total received blocks, received-and-corrected blocks, received-but-uncorrectable blocks, and transmitted blocks. There are the same set of 15-minute and 1-day buckets as at the physical-layer.

There is no requirement for an agent to ensure fixed relationship between the start of a fifteen minute and any wall clock; however some implementations may align the fifteen minute intervals with quarter hours. Likewise, an implementation may choose to align one day intervals with start of a day.

Separate tables are provided for the 96 interval-counters. They are indexed by {ifIndex, AdslAtu*IntervalNumber}.

Counters are not reset when an ATU-C or ATU-R is reinitialized, only when the agent is reset or reinitialized (or under specific request outside the scope of this MIB).

The 15-minute event counters are of type PerfCurrentCount and PerfIntervalCount. The 1-day event counters are of type AdslPerfCurrDayCount and AdslPerfPrevDayCount. Both 15-minute and 1- day time elapsed counters are of type AdslPerfTimeElapsed.

Profiles

As a managed node can handle a large number of ATU-Cs (e.g., hundreds or perhaps thousands of ADSL lines), provisioning every parameter on every ATU-C may become burdensome. In response, two MIB tables have been created to define ADSL equipment configuration data profiles, as well as a mechanism to associate the equipment to these profiles.

Profile tables may be implemented in one of two ways, but not simultaneously:

  o  MODE-I: Dynamic Profiles - one profile shared by one or
     multiple ADSL lines.
  o  MODE-II: Static Profiles - one profile per ADSL physical line
     always.

MODE-I : Dynamic Profiles

Implementations using this mode will enable the manager to dynamically create and delete profiles as needed. The index of the profile is an locally-unique administratively assigned name for the profile having the textual convention `SnmpAdminString' (RFC2571 [13]).

One or more ADSL lines may be configured to share parameters of a single profile (e.g., adslLineConfProfileName = `silver') by setting its adslLineConfProfile objects to the index value of this profile. If a change is made to the profile, all lines that refer to it will be re-configured to the changed parameters. Before a profile can be deleted or taken out of service it must be first unreferenced from all associated lines.

This figure below shows an example of how this mode can be implemented. In the example, ADSL lines `1' and `x' share the configuration of the `silver' profile, while line `2' uses the `platinum' profile. The `gold' profile has no lines associated with it.

ADSL ifIndex ifTable Configuration Line Profile Table __________________________________________________________________

1 i1 ADSL Line -- ---> Platinum Profile

         j1         Fast Chan    |        |
         k1         Int Chan     |        |
                                 |        ^
                                 v        |     Gold Profile

2 i2 ADSL Line ------->----

         j2         Fast Chan    |
         k2         Int Chan     |
                                 |
                                 |
                                 |
                                 v

x ix ADSL Line ------>------> Silver Profile

         jx         Fast Chan  --------------->
         kx         Int Chan

__________________________________________________________________

           Figure 8: Use of Dynamic Profiles: MODE-I

In the figure above, note that three interface entries of an ADSL line, physical, fast channel, and interleaved channel, are represented by `i', `j', and `k'. Only the physical-layer entry `i' contains an adslLineTable entry, therefore only those entries contain pointers to the adslLineConfProfileTable. The ifStackTable (see rfc2233 [5]) can be used to link the channel entries to the corresponding physical-layer entry to get the channel's configuration parameters. See figure 4 for use of the ifStackTable.

The same characteristics and mechanisms are present for the alarm profile type. There is no requirement that its index be the same as the configuration profile.

Implementations of this mode, must provide a default profile whose name is `DEFVAL' for each profile type: Configuration and Alarm. The values of the associated parameters will be vendor specific unless otherwise indicated in this document. Before a line's profiles have been set, these profiles will be automatically used by setting adslLineConfProfile and adslLineAlarmConfProfile to `DEFVAL'.

In this mode, profiles are created, assigned, and deleted dynamically using these four objects: adslLineConfProfile, adslLineConfProfileRowStatus, adslLineAlarmConfProfile, and adslLineAlarmConfProfileRowStatus.

MODE-II : Static Profiles

Implementations with this mode will automatically create a profile one-for-one with each ADSL line physical entry. The name of this profile is a system generated read-only object whose value is equivalent to the index of the physical line. The Agent will not allow a Manager to create/delete profiles in this mode. Therefore, adslLineConfProfile, adslLineConfProfileRowStatus, adslLineAlarmConfProfile, and adslLineAlarmConfProfileRowStatus objects have minimal value in this mode and are read-only.

The figure below shows an example of this mode. In the example, ADSL lines `1', `2', and `x' each have their own profiles.

ADSL ifIndex ifTable Configuration Line Profile Table __________________________________________________________________

1 i1 ADSL Line ------------> Profile

         j1         Fast Chan
         k1         Int Chan

2 i2 ADSL Line ------------> Profile

         j2         Fast Chan
         k2         Int Chan

x ix ADSL Line ------------> Profile

         jx         Fast Chan
         kx         Int Chan

__________________________________________________________________

            Figure 9: Use of Static Profiles: MODE II

Traps

These SNMP traps are required: coldStart / warmStart (per [6]) -- which are per agent (e.g., per DSLAM in such a device), and linkUp / linkDown (per [5]) -- which are per interface (i.e., ADSL line). Note: RFC 2233 [5] recommends that linkUp / linkDown only be used at a physical-layer ifEntry, as discussed above.

A linkDown trap is generated whenever any of Lof, Los, Lol, Loss of Signal Quality, or Lpr events occurs. At this operational point, a manager can use adslAtu*CurrStatus for additional detailed information. The corresponding linkUp trap is sent when all link failure conditions are cleared.

The traps defined in this MIB are for initialization failure, rate change, and for the threshold crossings associated with the following events: Lofs, Lols, Loss, Lprs, and ESs. Each threshold has its own enable/threshold value. When that value is 0, the trap is disabled.

The current status objects (adslAtu*CurrStatus) indicate, through a bitmask, all outstanding error conditions or that the line is operational. Note that each object claims to represent the status of the modem at that end of the line. However, since the SNMP agent likely co-resides with only one end of the line, the corresponding far-end current status object may be incomplete. For example, when there are errors on the line, the far-end ATU may not be able to correctly report this condition. Therefore, not all conditions are included in its current status.

A threshold trap occurs whenever the corresponding current 15-minute interval error counter becomes equal and/or exceeds to the threshold value. One trap will be sent per interval per interface. Since the current 15-minute counter are reset to 0 every 15 minutes, if the condition persists, the trap may recur as often as every 15 minutes. For example, to get a trap whenever a "loss of" event occurs (but at most once every 15 minutes), set the corresponding "Thresh15Min" to 1. The agent will generate a trap when the event originally occurs.

Note that the NMS will get a linkDown trap, as well, if enabled. At the beginning of the next 15 minute interval, the counter is reset. When the first second goes by and the event occurs, the current interval bucket will be 1, which equals the threshold and the trap will be sent again.

The rate change trap is invoked when the transmit rate on a channel either increases by adsl(x)Thresh(y)RateUp or decreases by adsl(x)Thresh(y)RateDown. The trap is per direction:(x) == Atuc or Atur, and per channel: (y) == Fast or Interleave. In other words, the trap is sent whenever the rate changes in either direction on either channel and:

            CurrTxRate >= PrevTxRate plus ThreshRateUp
                                or
           CurrTxRate <= PrevTxRate minus ThreshRateDown

No trap is sent on initialization.

It can be disabled by setting the Up (and/or) Down threshold rates to 0.

The PrevTxRate object is set to the current value at initialization and when a trap is sent. Thus rate changes are cumulative until the total change reaches the threshold.

Conformance and Compliance

See the conformance and compliance statements within the information module.

Definitions

ADSL-TC-MIB DEFINITIONS ::= BEGIN

IMPORTS

   transmission,
   MODULE-IDENTITY, Gauge32            FROM SNMPv2-SMI
   TEXTUAL-CONVENTION                  FROM SNMPv2-TC;

adsltcmib MODULE-IDENTITY

LAST-UPDATED "9908190000Z"

ORGANIZATION "IETF ADSL MIB Working Group"

CONTACT-INFO

   "
   Gregory Bathrick
   AG Communication Systems
   A Subsidiary of Lucent Technologies
   2500 W Utopia Rd.
   Phoenix, AZ 85027 USA
   Tel: +1 602-582-7679
   Fax: +1 602-582-7697
   E-mail: [email protected]
   Faye Ly
   Copper Mountain Networks
   Norcal Office
   2470 Embarcadero Way
   Palo Alto, CA 94303
   Tel: +1 650-858-8500
   Fax: +1 650-858-8085
   E-Mail: [email protected]
   IETF ADSL MIB Working Group ([email protected])
   "
   DESCRIPTION
       "The MIB module which provides a ADSL
       Line Coding Textual Convention to be used
       by ADSL Lines."
   --  Revision history
   REVISION     "9908190000Z"  -- 19 August 1999, midnight
   DESCRIPTION  "Initial Version, published as RFC 2662"
   ::= { transmission 94 2 } -- adslMIB 2
   AdslLineCodingType ::= TEXTUAL-CONVENTION
       STATUS       current
       DESCRIPTION
           "This data type is used as the syntax for the ADSL
           Line Code."
       SYNTAX  INTEGER {
           other(1),-- none of the following
           dmt (2), -- Discrete MultiTone
           cap (3), -- Carrierless Amplitude & Phase modulation
           qam (4)  -- Quadrature Amplitude Modulation
       }
   AdslPerfCurrDayCount ::= TEXTUAL-CONVENTION
       STATUS  current
       DESCRIPTION
           "A counter associated with interface performance
           measurements in a current 1-day (24 hour) measurement
           interval.
           The value of this counter starts at zero at the
           beginning of an interval and is increased when
           associated events occur, until the end of the
           1-day interval.  At that time the value of the
           counter is stored in the previous 1-day history
           interval, if available, and the current interval
           counter is restarted at zero.
           In the case where the agent has no valid data available
           for this interval the corresponding object
           instance is not available and upon a retrieval
           request a corresponding error message shall be
           returned to indicate that this instance does
           not exist (for example, a noSuchName error for
           SNMPv1 and a noSuchInstance for SNMPv2 GET
           operation)."
        SYNTAX  Gauge32
   AdslPerfPrevDayCount ::= TEXTUAL-CONVENTION
       STATUS  current
       DESCRIPTION
           "A counter associated with interface performance
           measurements during the most previous 1-day (24 hour)
           measurement interval.  The value of this counter is
           equal to the value of the current day counter at
           the end of its most recent interval.
           In the case where the agent has no valid data available
           for this interval the corresponding object
           instance is not available and upon a retrieval
           request a corresponding error message shall be
           returned to indicate that this instance does
           not exist (for example, a noSuchName error for
           SNMPv1 and a noSuchInstance for SNMPv2 GET
           operation)."
       SYNTAX  Gauge32
   AdslPerfTimeElapsed ::= TEXTUAL-CONVENTION
       STATUS current
       DESCRIPTION
           "The number of seconds that have elapsed since
           the beginning of the current measurement period.
           If, for some reason, such as an adjustment in the
           system's time-of-day clock, the current interval
           exceeds the maximum value, the agent will return
           the maximum value."
       SYNTAX  Gauge32

END

ADSL-LINE-MIB DEFINITIONS ::= BEGIN

IMPORTS

   MODULE-IDENTITY, OBJECT-TYPE,
   Counter32, Gauge32,
   NOTIFICATION-TYPE,
   transmission, Unsigned32          FROM SNMPv2-SMI
   RowStatus,
   TruthValue, VariablePointer       FROM SNMPv2-TC
   MODULE-COMPLIANCE, OBJECT-GROUP,
   NOTIFICATION-GROUP                FROM SNMPv2-CONF
   ifIndex                           FROM IF-MIB
   PerfCurrentCount,
   PerfIntervalCount                 FROM PerfHist-TC-MIB
   SnmpAdminString                   FROM SNMP-FRAMEWORK-MIB
   AdslPerfCurrDayCount,
   AdslPerfPrevDayCount,
   AdslPerfTimeElapsed,
   AdslLineCodingType                FROM ADSL-TC-MIB
   ;

adslMIB MODULE-IDENTITY

LAST-UPDATED "9908190000Z"

ORGANIZATION "IETF ADSL MIB Working Group"

CONTACT-INFO

   "
   Gregory Bathrick
   AG Communication Systems
   A Subsidiary of Lucent Technologies
   2500 W Utopia Rd.
   Phoenix, AZ 85027 USA
   Tel: +1 602-582-7679
   Fax: +1 602-582-7697
   E-mail: [email protected]
   Faye Ly
   Copper Mountain Networks
   Norcal Office
   2470 Embarcadero Way
   Palo Alto, CA 94303
   Tel: +1 650-858-8500
   Fax: +1 650-858-8085
   E-Mail: [email protected]
   (ADSL Forum input only)
   John Burgess
   Predictive Systems, Inc.
   25A Vreeland Rd.
   Florham Park, NJ 07932 USA
   Tel: +1 973-301-5610
   Fax: +1 973-301-5699
   E-mail: [email protected]
   IETF ADSL MIB Working Group ([email protected])
   "

DESCRIPTION

   "The MIB module defining objects for the management of a pair of
   ADSL modems at each end of the ADSL line.  Each such line has
   an entry in an ifTable which may include multiple modem lines.
   An agent may reside at either end of the ADSL line however the
   MIB is designed to require no management communication between
   them beyond that inherent in the low-level ADSL line protocol.
   The agent may monitor and control this protocol for its needs.
   ADSL lines may support optional Fast or Interleaved channels.
   If these are supported, additional entries corresponding to the
   supported channels must be created in the ifTable. Thus an ADSL
   line that supports both channels will have three entries in the
   ifTable, one for each physical, fast, and interleaved, whose
   ifType values are equal to adsl(94), fast(125), and
   interleaved(124), respectively. The ifStackTable is used to
   represent the relationship between the entries.
   Naming Conventions:
             Atuc -- (ATUC) modem at near (Central) end of line
             Atur -- (ATUR) modem at Remote end of line
             Curr -- Current
             Prev -- Previous
             Atn -- Attenuation
             ES  -- Errored Second.
             LCS -- Line Code Specific
             Lof -- Loss of Frame
             Lol -- Loss of Link
             Los -- Loss of Signal
             Lpr -- Loss of Power
             xxxs-- interval of Seconds in which xxx occurs
                     (e.g., xxx=Lof, Los, Lpr)
             Max -- Maximum
             Mgn -- Margin
             Min -- Minimum
             Psd -- Power Spectral Density
             Snr -- Signal to Noise Ratio
             Tx  -- Transmit
             Blks-- Blocks, a data unit, see
                    adslAtuXChanCrcBlockLength
     "
     --  Revision history
     REVISION     "9908190000Z"  -- 19 August 1999, midnight
     DESCRIPTION  "Initial Version, published as RFC 2662"
= { transmission 94 }

adslLineMib OBJECT IDENTIFIER ::= { adslMIB 1 }

adslMibObjects OBJECT IDENTIFIER ::= { adslLineMib 1 }

-- objects

     adslLineTable   OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslLineEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table includes common attributes describing
             both ends of the line.  It is required for all ADSL
             physical interfaces.  ADSL physical interfaces are
             those ifEntries where ifType is equal to adsl(94)."
     ::= { adslMibObjects 1 }
     adslLineEntry   OBJECT-TYPE
         SYNTAX          AdslLineEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in adslLineTable."
         INDEX           { ifIndex }
     ::= { adslLineTable 1 }
     AdslLineEntry ::=
         SEQUENCE {
         adslLineCoding           AdslLineCodingType,
         adslLineType             INTEGER,
         adslLineSpecific         VariablePointer,
         adslLineConfProfile      SnmpAdminString,
         adslLineAlarmConfProfile SnmpAdminString
         }
     adslLineCoding OBJECT-TYPE
         SYNTAX      AdslLineCodingType
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Specifies the ADSL coding type used on this
             line."
     ::= { adslLineEntry 1 }
    adslLineType OBJECT-TYPE
         SYNTAX      INTEGER {
             noChannel (1),        -- no channels exist
             fastOnly (2),         -- fast channel exists only
             interleavedOnly (3),  -- interleaved channel exists
                                   -- only
             fastOrInterleaved (4),-- either fast or interleaved
                                   -- channels can exist, but
                                   -- only one at any time
             fastAndInterleaved (5)-- both fast or interleaved
                                   -- channels exist
         }
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Defines the type of ADSL physical line
             entity that exists, by defining whether and how
             the line is channelized.  If the line is channelized,
             the value will be other than noChannel(1).  This
             object defines which channel type(s) are supported.
             In the case that the line is channelized, the manager
             can use the ifStackTable to determine the ifIndex for
             the associated channel(s)."
     ::= { adslLineEntry 2 }
     adslLineSpecific OBJECT-TYPE
         SYNTAX      VariablePointer
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "OID instance in vendor-specific MIB. The Instance may
             be used to determine shelf/slot/port of the ATUC
             interface in a DSLAM."
     ::= { adslLineEntry 3 }
    adslLineConfProfile OBJECT-TYPE
         SYNTAX      SnmpAdminString (SIZE (1..32))
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
             "The value of this object identifies the row
             in the ADSL Line Configuration Profile Table,
             (adslLineConfProfileTable), which applies for this
             ADSL line, and channels if applicable.
             For `dynamic' mode, in the case which the
             configuration profile has not been set, the
             value will be set to `DEFVAL'.
             If the implementator of this MIB has chosen not
             to implement `dynamic assignment' of profiles, this
             object's MIN-ACCESS is read-only."
     ::= { adslLineEntry 4 }
    adslLineAlarmConfProfile OBJECT-TYPE
         SYNTAX      SnmpAdminString (SIZE (1..32))
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
             "The value of this object identifies the row
             in the ADSL Line Alarm Configuration Profile Table,
             (adslLineAlarmConfProfileTable), which applies to this
             ADSL line, and channels if applicable.
             For `dynamic' mode, in the case which the
             alarm profile has not been set, the
             value will be set to `DEFVAL'.
             If the implementator of this MIB has chosen not
             to implement `dynamic assignment' of profiles, this
             object's MIN-ACCESS is read-only."
     ::= { adslLineEntry 5 }
     adslAtucPhysTable       OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAtucPhysEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUC.
             Each row contains the Physical Layer Parameters
             table for that ATUC. ADSL physical interfaces are
             those ifEntries where ifType is equal to adsl(94)."
     ::= { adslMibObjects 2 }
     adslAtucPhysEntry       OBJECT-TYPE
         SYNTAX          AdslAtucPhysEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in the adslAtucPhysTable."
         INDEX           { ifIndex }
     ::= { adslAtucPhysTable 1 }
     AdslAtucPhysEntry ::=
         SEQUENCE {
         adslAtucInvSerialNumber         SnmpAdminString,
         adslAtucInvVendorID             SnmpAdminString,
         adslAtucInvVersionNumber        SnmpAdminString,
         adslAtucCurrSnrMgn              INTEGER,
         adslAtucCurrAtn                 Gauge32,
         adslAtucCurrStatus              BITS,
         adslAtucCurrOutputPwr           INTEGER,
         adslAtucCurrAttainableRate      Gauge32
         }
     -- inventory group
     --
     -- These items should describe the lowest level identifiable
     -- component, be it a stand-alone modem, a card in a rack,
     -- a child-board, etc.
     --
     adslAtucInvSerialNumber OBJECT-TYPE
         SYNTAX      SnmpAdminString (SIZE (0..32))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The vendor specific string that identifies the
             vendor equipment."
     ::= { adslAtucPhysEntry 1 }
     adslAtucInvVendorID OBJECT-TYPE
         SYNTAX      SnmpAdminString (SIZE (0..16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The vendor ID code is a copy of the binary
             vendor identification field defined by the
             PHY[10] and expressed as readable characters."
         REFERENCE "ANSI T1.413[10]"
     ::= { adslAtucPhysEntry 2 }
     adslAtucInvVersionNumber OBJECT-TYPE
         SYNTAX      SnmpAdminString (SIZE (0..16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The vendor specific version number sent by this ATU
             as part of the initialization messages.  It is a copy
             of the binary version number field defined by the
             PHY[10] and expressed as readable characters."
         REFERENCE "ANSI T1.413[10]"
     ::= { adslAtucPhysEntry 3 }
     -- current status group
     --
     adslAtucCurrSnrMgn OBJECT-TYPE
         SYNTAX      INTEGER (-640..640)
         UNITS       "tenth dB"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Noise Margin as seen by this ATU with respect to its
             received signal in tenth dB."
     ::= { adslAtucPhysEntry 4 }
     adslAtucCurrAtn OBJECT-TYPE
         SYNTAX      Gauge32(0..630)
         UNITS       "tenth dB"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Measured difference in the total power transmitted by
             the peer ATU and the total power received by this ATU."
     ::= { adslAtucPhysEntry 5 }
    adslAtucCurrStatus OBJECT-TYPE
         SYNTAX      BITS {
                           noDefect(0),
                           lossOfFraming(1),
                           lossOfSignal(2),
                           lossOfPower(3),
                           lossOfSignalQuality(4),
                           lossOfLink(5),
                           dataInitFailure(6),
                           configInitFailure(7),
                           protocolInitFailure(8),
                           noPeerAtuPresent(9)
                          }
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Indicates current state of the ATUC line.  This is a
             bit-map of possible conditions.  The various bit
             positions are:
      0      noDefect             There no defects on the line
      1      lossOfFraming        ATUC failure due to not
                                  receiving valid frame.
      2      lossOfSignal         ATUC failure due to not
                                  receiving signal.
      3      lossOfPower          ATUC failure due to loss of
                                  power.
                                  Note: the Agent may still
                                  function.
      4      lossOfSignalQuality  Loss of Signal Quality is
                                  declared when the Noise Margin
                                  falls below the Minimum Noise
                                  Margin, or the bit-error-rate
                                  exceeds 10^-7.
      5      lossOfLink           ATUC failure due to inability
                                  to link with ATUR.
      6      dataInitFailure      ATUC failure during
                                  initialization due to bit
                                  errors corrupting startup
                                  exchange data.
      7      configInitFailure    ATUC failure during
                                  initialization due to peer
                                  ATU not able to support
                                  requested configuration
      8      protocolInitFailure  ATUC failure during
                                  initialization due to
                                  incompatible protocol used by
                                  the peer ATU.
      9      noPeerAtuPresent     ATUC failure during
                                  initialization due to no
                                  activation sequence detected
                                  from peer ATU.
             This is intended to supplement ifOperStatus."
     ::= { adslAtucPhysEntry 6 }
     adslAtucCurrOutputPwr OBJECT-TYPE
         SYNTAX      INTEGER (-310..310)
         UNITS       "tenth dBm"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Measured total output power transmitted by this ATU.
             This is the measurement that was reported during
             the last activation sequence."
     ::= { adslAtucPhysEntry 7 }
     adslAtucCurrAttainableRate OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS       "bps"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Indicates the maximum currently attainable data rate
             by the ATU.  This value will be equal or greater than
             the current line rate."
     ::= { adslAtucPhysEntry 8 }
     adslAturPhysTable        OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAturPhysEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUR
             Each row contains the Physical Layer Parameters
             table for that ATUR. ADSL physical interfaces are
             those ifEntries where ifType is equal to adsl(94)."
     ::= { adslMibObjects 3 }
     adslAturPhysEntry       OBJECT-TYPE
         SYNTAX          AdslAturPhysEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in the adslAturPhysTable."
         INDEX           { ifIndex }
     ::= { adslAturPhysTable 1 }
     AdslAturPhysEntry ::=
         SEQUENCE {
         adslAturInvSerialNumber         SnmpAdminString,
         adslAturInvVendorID             SnmpAdminString,
         adslAturInvVersionNumber        SnmpAdminString,
         adslAturCurrSnrMgn              INTEGER,
         adslAturCurrAtn                 Gauge32,
         adslAturCurrStatus              BITS,
         adslAturCurrOutputPwr           INTEGER,
         adslAturCurrAttainableRate      Gauge32
         }
     -- inventory group
     --
     adslAturInvSerialNumber OBJECT-TYPE
         SYNTAX      SnmpAdminString (SIZE (0..32))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The vendor specific string that identifies the
             vendor equipment."
     ::= { adslAturPhysEntry 1 }
     adslAturInvVendorID OBJECT-TYPE
         SYNTAX      SnmpAdminString (SIZE (0..16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The vendor ID code is a copy of the binary
             vendor identification field defined by the
             PHY[10] and expressed as readable characters."
         REFERENCE "ANSI T1.413"
     ::= { adslAturPhysEntry 2 }
     adslAturInvVersionNumber OBJECT-TYPE
         SYNTAX      SnmpAdminString (SIZE (0..16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The vendor specific version number sent by this ATU
             as part of the initialization messages.  It is a copy
             of the binary version number field defined by the
             PHY[10] and expressed as readable characters."
         REFERENCE "ANSI T1.413"
     ::= { adslAturPhysEntry 3 }
     -- current status group
     --
     adslAturCurrSnrMgn OBJECT-TYPE
         SYNTAX      INTEGER (-640..640)
         UNITS       "tenth dB"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Noise Margin as seen by this ATU with respect to its
             received signal in tenth dB."
     ::= { adslAturPhysEntry 4 }
     adslAturCurrAtn OBJECT-TYPE
         SYNTAX      Gauge32(0..630)
         UNITS       "tenth dB"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Measured difference in the total power transmitted by
             the peer ATU and the total power received by this ATU."
     ::= { adslAturPhysEntry 5 }
    adslAturCurrStatus OBJECT-TYPE
         SYNTAX     BITS {
                          noDefect(0),
                          lossOfFraming(1),
                          lossOfSignal(2),
                          lossOfPower(3),
                          lossOfSignalQuality(4)
                         }
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Indicates current state of the ATUR line.  This is a
             bit-map of possible conditions.  Due to the isolation
             of the ATUR when line problems occur, many state
             conditions like loss of power, loss of quality signal,
             and initialization errors,  can not be determined.
             While trouble shooting ATUR, also use object,
             adslAtucCurrStatus.  The various bit positions are:
      0      noDefect             There no defects on the line
      1      lossOfFraming        ATUR failure due to not
                                  receiving valid frame
      2      lossOfSignal         ATUR failure due to not
                                  receiving signal
      3      lossOfPower          ATUR failure due to loss of
                                  power
      4      lossOfSignalQuality  Loss of Signal Quality is
                                  declared when the Noise Margin
                                  falls below the Minimum Noise
                                  Margin, or the
                                  bit-error-rate exceeds 10^-7.
             This is intended to supplement ifOperStatus."
     ::= { adslAturPhysEntry 6 }
     adslAturCurrOutputPwr OBJECT-TYPE
         SYNTAX      INTEGER (-310..310)
         UNITS       "tenth dBm"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Measured total output power transmitted by this ATU.
             This is the measurement that was reported during
             the last activation sequence."
     ::= { adslAturPhysEntry 7 }
     adslAturCurrAttainableRate OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS       "bps"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Indicates the maximum currently attainable data rate
             by the ATU.  This value will be equal or greater than
             the current line rate."
     ::= { adslAturPhysEntry 8 }
     adslAtucChanTable       OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAtucChanEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUC channel.
             ADSL channel interfaces are those ifEntries
             where ifType is equal to adslInterleave(124)
             or adslFast(125)."
     ::= { adslMibObjects 4 }
     adslAtucChanEntry       OBJECT-TYPE
         SYNTAX          AdslAtucChanEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in the adslAtucChanTable."
         INDEX           { ifIndex }
     ::= { adslAtucChanTable 1 }
     AdslAtucChanEntry ::=
         SEQUENCE {
         adslAtucChanInterleaveDelay     Gauge32,
         adslAtucChanCurrTxRate          Gauge32,
         adslAtucChanPrevTxRate          Gauge32,
         adslAtucChanCrcBlockLength      Gauge32
         }
     -- current group
     --
     adslAtucChanInterleaveDelay OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS       "milli-seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Interleave Delay for this channel.
             Interleave delay applies only to the
             interleave channel and defines the mapping
             (relative spacing) between subsequent input
             bytes at the interleaver input and their placement
             in the bit stream at the interleaver output.
             Larger numbers provide greater separation between
             consecutive input bytes in the output bit stream
             allowing for improved impulse noise immunity at
             the expense of payload latency.
             In the case where the ifType is Fast(125), use
             noSuchObject."
     ::= { adslAtucChanEntry 1 }
     adslAtucChanCurrTxRate  OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS       "bps"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Actual transmit rate on this channel."
     ::= { adslAtucChanEntry 2 }
     adslAtucChanPrevTxRate OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS        "bps"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The rate at the time of the last
             adslAtucRateChangeTrap event. It is also set at
             initialization to prevent a trap being sent.
             Rate changes less than adslAtucThresh(*)RateDown
             or less than adslAtucThresh(*)RateUp will not
             cause a trap or cause this object to change.
             (*) == Fast or Interleave.
             See AdslLineAlarmConfProfileEntry."
     ::= { adslAtucChanEntry 3 }
     adslAtucChanCrcBlockLength OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS        "byte"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Indicates the length of the channel data-block
             on which the CRC operates.  Refer to Line Code
             Specific MIBs, [11] and [12] for more
             information."
     ::= { adslAtucChanEntry 4 }
    adslAturChanTable       OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAturChanEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUR channel.
             ADSL channel interfaces are those ifEntries
             where ifType is equal to adslInterleave(124)
             or adslFast(125)."
     ::= { adslMibObjects 5 }
     adslAturChanEntry       OBJECT-TYPE
         SYNTAX          AdslAturChanEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in the adslAturChanTable."
         INDEX           { ifIndex }
     ::= { adslAturChanTable 1 }
     AdslAturChanEntry ::=
         SEQUENCE {
         adslAturChanInterleaveDelay     Gauge32,
         adslAturChanCurrTxRate          Gauge32,
         adslAturChanPrevTxRate          Gauge32,
         adslAturChanCrcBlockLength      Gauge32
         }
     -- current group
     --
     adslAturChanInterleaveDelay OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS       "milli-seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Interleave Delay for this channel.
             Interleave delay applies only to the
             interleave channel and defines the mapping
             (relative spacing) between subsequent input
             bytes at the interleaver input and their placement
             in the bit stream at the interleaver output.
             Larger numbers provide greater separation between
             consecutive input bytes in the output bit stream
             allowing for improved impulse noise immunity at
             the expense of payload latency.
             In the case where the ifType is Fast(125), use
             noSuchObject."
     ::= { adslAturChanEntry 1 }
     adslAturChanCurrTxRate  OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS       "bps"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Actual transmit rate on this channel."
     ::= { adslAturChanEntry 2 }
     adslAturChanPrevTxRate OBJECT-TYPE
         SYNTAX      Gauge32
         UNITS       "bps"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "The rate at the time of the last
             adslAturRateChangeTrap event. It is also set at
             initialization to prevent a trap being sent.
             Rate changes less than adslAturThresh(*)RateDown
             or less than adslAturThresh(*)RateUp will not
             cause a trap or cause this object to change.
             (*) == Fast or Interleave.
             See AdslLineAlarmConfProfileEntry."
     ::= { adslAturChanEntry 3 }
     adslAturChanCrcBlockLength OBJECT-TYPE
         SYNTAX      Gauge32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Indicates the length of the channel data-block
             on which the CRC operates.  Refer to Line Code
             Specific MIBs, [11] and [12] for more
             information."
     ::= { adslAturChanEntry 4 }
     adslAtucPerfDataTable   OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAtucPerfDataEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUC.
             ADSL physical interfaces are
             those ifEntries where ifType is equal to adsl(94)."
     ::= { adslMibObjects 6 }
     adslAtucPerfDataEntry       OBJECT-TYPE
         SYNTAX          AdslAtucPerfDataEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in adslAtucPerfDataTable."
         INDEX           { ifIndex }
     ::= { adslAtucPerfDataTable 1 }
     AdslAtucPerfDataEntry ::=
         SEQUENCE {
         adslAtucPerfLofs                 Counter32,
         adslAtucPerfLoss                 Counter32,
         adslAtucPerfLols                 Counter32,
         adslAtucPerfLprs                 Counter32,
         adslAtucPerfESs                  Counter32,
         adslAtucPerfInits                Counter32,
         adslAtucPerfValidIntervals       INTEGER,
         adslAtucPerfInvalidIntervals     INTEGER,
         adslAtucPerfCurr15MinTimeElapsed AdslPerfTimeElapsed,
         adslAtucPerfCurr15MinLofs        PerfCurrentCount,
         adslAtucPerfCurr15MinLoss        PerfCurrentCount,
         adslAtucPerfCurr15MinLols        PerfCurrentCount,
         adslAtucPerfCurr15MinLprs        PerfCurrentCount,
         adslAtucPerfCurr15MinESs         PerfCurrentCount,
         adslAtucPerfCurr15MinInits       PerfCurrentCount,
         adslAtucPerfCurr1DayTimeElapsed  AdslPerfTimeElapsed,
         adslAtucPerfCurr1DayLofs         AdslPerfCurrDayCount,
         adslAtucPerfCurr1DayLoss         AdslPerfCurrDayCount,
         adslAtucPerfCurr1DayLols         AdslPerfCurrDayCount,
         adslAtucPerfCurr1DayLprs         AdslPerfCurrDayCount,
         adslAtucPerfCurr1DayESs          AdslPerfCurrDayCount,
         adslAtucPerfCurr1DayInits        AdslPerfCurrDayCount,
         adslAtucPerfPrev1DayMoniSecs     INTEGER,
         adslAtucPerfPrev1DayLofs         AdslPerfPrevDayCount,
         adslAtucPerfPrev1DayLoss         AdslPerfPrevDayCount,
         adslAtucPerfPrev1DayLols         AdslPerfPrevDayCount,
         adslAtucPerfPrev1DayLprs         AdslPerfPrevDayCount,
         adslAtucPerfPrev1DayESs          AdslPerfPrevDayCount,
         adslAtucPerfPrev1DayInits        AdslPerfPrevDayCount
         }
     -- Event Counters
     --
     -- Also see adslAtucIntervalTable for 15 minute interval
     -- elapsed counters.
     --
     adslAtucPerfLofs OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Loss of Framing failures since
             agent reset."
     ::= { adslAtucPerfDataEntry 1 }
     adslAtucPerfLoss  OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Loss of Signal failures since
             agent reset."
     ::= { adslAtucPerfDataEntry 2 }
     adslAtucPerfLols OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Loss of Link failures since
             agent reset."
     ::= { adslAtucPerfDataEntry 3 }
     adslAtucPerfLprs OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Loss of Power failures since
             agent reset."
     ::= { adslAtucPerfDataEntry 4 }
     adslAtucPerfESs OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Errored Seconds since agent
             reset.  The errored second parameter is a count of
             one-second intervals containing one or more crc
             anomalies, or one or more los or sef defects."
     ::= { adslAtucPerfDataEntry 5 }
     adslAtucPerfInits OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the line initialization attempts since
             agent reset. Includes both successful and failed
             attempts."
     ::= { adslAtucPerfDataEntry 6 }
     -- general 15 min interval information
     --
     adslAtucPerfValidIntervals OBJECT-TYPE
         SYNTAX      INTEGER(0..96)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of previous 15-minute intervals in the
             interval table for which data was collected.  Given
             that <n> is the maximum # of intervals supported.
             The value will be <n> unless the measurement was
             (re-)started within the last (<n>*15) minutes, in which
             case the value will be the number of complete 15
             minute intervals for which the agent has at least
             some data. In certain cases (e.g., in the case
             where the agent is a proxy) it is possible that some
             intervals are unavailable.  In this case, this
             interval is the maximum interval number for
             which data is available."
     ::= { adslAtucPerfDataEntry 7 }
     adslAtucPerfInvalidIntervals OBJECT-TYPE
         SYNTAX      INTEGER(0..96)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of intervals in the range from
             0 to the value of adslAtucPerfValidIntervals
             for which no data is available. This object
             will typically be zero except in cases where
             the data for some intervals are not available
             (e.g., in proxy situations)."
     ::= { adslAtucPerfDataEntry 8 }
     -- 15 min current performance group
     --
     adslAtucPerfCurr15MinTimeElapsed OBJECT-TYPE
         SYNTAX      AdslPerfTimeElapsed(0..899)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Total elapsed seconds in this interval."
     ::= { adslAtucPerfDataEntry 9 }
     adslAtucPerfCurr15MinLofs OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the current 15 minute interval
             when there was Loss of Framing."
     ::= { adslAtucPerfDataEntry 10 }
     adslAtucPerfCurr15MinLoss  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the current 15 minute interval
             when there was Loss of Signal."
     ::= { adslAtucPerfDataEntry 11 }
     adslAtucPerfCurr15MinLols  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the current 15 minute interval
             when there was Loss of Link."
     ::= { adslAtucPerfDataEntry 12 }
     adslAtucPerfCurr15MinLprs  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the current 15 minute interval
             when there was Loss of Power."
     ::= { adslAtucPerfDataEntry 13 }
     adslAtucPerfCurr15MinESs OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of Errored Seconds in the current 15 minute
             interval.  The errored second parameter is a count of
             one-second intervals containing one or more crc
             anomalies, or one or more los or sef defects."
     ::= { adslAtucPerfDataEntry 14 }
     adslAtucPerfCurr15MinInits  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the line initialization attempts in the
             current 15 minute interval. Includes both successful
             and failed attempts."
     ::= { adslAtucPerfDataEntry 15 }
     -- 1-day current and previous performance group
     --
     adslAtucPerfCurr1DayTimeElapsed OBJECT-TYPE
         SYNTAX      AdslPerfTimeElapsed(0..86399)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Number of seconds that have elapsed since the
             beginning of the current 1-day interval."
     ::= { adslAtucPerfDataEntry 16 }
     adslAtucPerfCurr1DayLofs  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of seconds when there was Loss of
             Framing during the current day as measured by
             adslAtucPerfCurr1DayTimeElapsed."
     ::= { adslAtucPerfDataEntry 17 }
     adslAtucPerfCurr1DayLoss  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of seconds when there was Loss of
             Signal during the current day as measured by
             adslAtucPerfCurr1DayTimeElapsed."
     ::= { adslAtucPerfDataEntry 18 }
     adslAtucPerfCurr1DayLols  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of seconds when there was Loss of
             Link during the current day as measured by
             adslAtucPerfCurr1DayTimeElapsed."
     ::= { adslAtucPerfDataEntry 19 }
     adslAtucPerfCurr1DayLprs  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of seconds when there was Loss of
             Power during the current day as measured by
             adslAtucPerfCurr1DayTimeElapsed."
     ::= { adslAtucPerfDataEntry 20 }
     adslAtucPerfCurr1DayESs OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of Errored Seconds during the current day as
             measured by adslAtucPerfCurr1DayTimeElapsed.
             The errored second parameter is a count of
             one-second intervals containing one or more crc
             anomalies, or one or more los or sef defects."
     ::= { adslAtucPerfDataEntry 21 }
     adslAtucPerfCurr1DayInits  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the line initialization attempts in the
             day as measured by adslAtucPerfCurr1DayTimeElapsed.
             Includes both successful and failed attempts."
     ::= { adslAtucPerfDataEntry 22 }
     adslAtucPerfPrev1DayMoniSecs OBJECT-TYPE
         SYNTAX      INTEGER(0..86400)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The amount of time in the previous 1-day interval
             over which the performance monitoring information
             is actually counted. This value will be the same as
             the interval duration except in a situation where
             performance monitoring data could not be collected
             for any reason."
     ::= { adslAtucPerfDataEntry 23 }
     adslAtucPerfPrev1DayLofs  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Framing within the most recent previous
             1-day period."
     ::= { adslAtucPerfDataEntry 24 }
     adslAtucPerfPrev1DayLoss  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Signal within the most recent previous
             1-day period."
     ::= { adslAtucPerfDataEntry 25 }
     adslAtucPerfPrev1DayLols  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Link within the most recent previous
             1-day period."
     ::= { adslAtucPerfDataEntry 26 }
     adslAtucPerfPrev1DayLprs  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Power within the most recent previous
             1-day period."
     ::= { adslAtucPerfDataEntry 27 }
     adslAtucPerfPrev1DayESs OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of Errored Seconds within the most recent
             previous 1-day period. The errored second parameter is
             a count of one-second intervals containing one or more
             crc anomalies, or one or more los or sef defects."
     ::= { adslAtucPerfDataEntry 28 }
     adslAtucPerfPrev1DayInits  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the line initialization attempts in the most
             recent previous 1-day period. Includes both successful
             and failed attempts."
     ::= { adslAtucPerfDataEntry 29 }
     adslAturPerfDataTable   OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAturPerfDataEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUR.
             ADSL physical interfaces are
             those ifEntries where ifType is equal to adsl(94)."
     ::= { adslMibObjects 7 }
     adslAturPerfDataEntry       OBJECT-TYPE
         SYNTAX          AdslAturPerfDataEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in adslAturPerfDataTable."
         INDEX           { ifIndex }
     ::= { adslAturPerfDataTable 1 }
     AdslAturPerfDataEntry ::=
         SEQUENCE {
         adslAturPerfLofs                 Counter32,
         adslAturPerfLoss                 Counter32,
         adslAturPerfLprs                 Counter32,
         adslAturPerfESs                  Counter32,
         adslAturPerfValidIntervals       INTEGER,
         adslAturPerfInvalidIntervals     INTEGER,
         adslAturPerfCurr15MinTimeElapsed AdslPerfTimeElapsed,
         adslAturPerfCurr15MinLofs        PerfCurrentCount,
         adslAturPerfCurr15MinLoss        PerfCurrentCount,
         adslAturPerfCurr15MinLprs        PerfCurrentCount,
         adslAturPerfCurr15MinESs         PerfCurrentCount,
         adslAturPerfCurr1DayTimeElapsed  AdslPerfTimeElapsed,
         adslAturPerfCurr1DayLofs         AdslPerfCurrDayCount,
         adslAturPerfCurr1DayLoss         AdslPerfCurrDayCount,
         adslAturPerfCurr1DayLprs         AdslPerfCurrDayCount,
         adslAturPerfCurr1DayESs          AdslPerfCurrDayCount,
         adslAturPerfPrev1DayMoniSecs     INTEGER,
         adslAturPerfPrev1DayLofs         AdslPerfPrevDayCount,
         adslAturPerfPrev1DayLoss         AdslPerfPrevDayCount,
         adslAturPerfPrev1DayLprs         AdslPerfPrevDayCount,
         adslAturPerfPrev1DayESs          AdslPerfPrevDayCount
         }
     -- Event (Raw) Counters
     --
     -- Also see adslAturIntervalTable for 15 minute interval
     -- elapsed counters.
     --
     adslAturPerfLofs OBJECT-TYPE
         SYNTAX      Counter32
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Loss of Framing failures since
             agent reset."
     ::= { adslAturPerfDataEntry 1 }
     adslAturPerfLoss  OBJECT-TYPE
         SYNTAX      Counter32
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Loss of Signal failures since
             agent reset."
     ::= { adslAturPerfDataEntry 2 }
    adslAturPerfLprs  OBJECT-TYPE
         SYNTAX      Counter32
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Loss of Power failures since
             agent reset."
     ::= { adslAturPerfDataEntry 3 }
     adslAturPerfESs  OBJECT-TYPE
         SYNTAX      Counter32
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of Errored Seconds since agent
             reset.  The errored second parameter is a count of
             one-second intervals containing one or more crc
             anomalies, or one or more los or sef defects."
     ::= { adslAturPerfDataEntry 4 }
     -- general 15 min interval information
     --
     adslAturPerfValidIntervals OBJECT-TYPE
         SYNTAX      INTEGER(0..96)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of previous 15-minute intervals in the
             interval table for which data was collected.  Given
             that <n> is the maximum # of intervals supported.
             The value will be <n> unless the measurement was
             (re-)started within the last (<n>*15) minutes, in which
             case the value will be the number of complete 15
             minute intervals for which the agent has at least
             some data. In certain cases (e.g., in the case
             where the agent is a proxy) it is possible that some
             intervals are unavailable.  In this case, this
             interval is the maximum interval number for
             which data is available."
     ::= { adslAturPerfDataEntry 5 }
     adslAturPerfInvalidIntervals OBJECT-TYPE
         SYNTAX      INTEGER(0..96)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of intervals in the range from
             0 to the value of adslAturPerfValidIntervals
             for which no data is available. This object
             will typically be zero except in cases where
             the data for some intervals are not available
             (e.g., in proxy situations)."
     ::= { adslAturPerfDataEntry 6 }
     -- 15 min current performance group
     --
     adslAturPerfCurr15MinTimeElapsed OBJECT-TYPE
         SYNTAX      AdslPerfTimeElapsed(0..899)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Total elapsed seconds in this interval."
     ::= { adslAturPerfDataEntry 7 }
     adslAturPerfCurr15MinLofs OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the current 15 minute interval
             when there was Loss of Framing."
     ::= { adslAturPerfDataEntry 8 }
     adslAturPerfCurr15MinLoss  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the current 15 minute interval
             when there was Loss of Signal."
     ::= { adslAturPerfDataEntry 9 }
     adslAturPerfCurr15MinLprs  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the current 15 minute interval
             when there was Loss of Power."
     ::= { adslAturPerfDataEntry 10 }
     adslAturPerfCurr15MinESs OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "Count of Errored Seconds in the current 15 minute
            interval.  The errored second parameter is a count of
            one-second intervals containing one or more crc
            anomalies, or one or more los or sef defects."
     ::= { adslAturPerfDataEntry 11 }
     -- 1-day current and previous performance group
     --
     adslAturPerfCurr1DayTimeElapsed OBJECT-TYPE
         SYNTAX      AdslPerfTimeElapsed(0..86399)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Number of seconds that have elapsed since the
             beginning of the current 1-day interval."
     ::= { adslAturPerfDataEntry 12 }
     adslAturPerfCurr1DayLofs  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of seconds when there was Loss
             of Framing during the current day as measured by
             adslAturPerfCurr1DayTimeElapsed."
     ::= { adslAturPerfDataEntry 13 }
     adslAturPerfCurr1DayLoss  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of seconds when there was Loss
             of Signal during the current day as measured by
             adslAturPerfCurr1DayTimeElapsed."
     ::= { adslAturPerfDataEntry 14 }
     adslAturPerfCurr1DayLprs  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the number of seconds when there was Loss
             of Power during the current day as measured by
             adslAturPerfCurr1DayTimeElapsed."
     ::= { adslAturPerfDataEntry 15 }
adslAturPerfCurr1DayESs OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of Errored Seconds during the current day as
             measured by adslAturPerfCurr1DayTimeElapsed.
             The errored second parameter is a count of
             one-second intervals containing one or more crc
             anomalies, or one or more los or sef defects."
     ::= { adslAturPerfDataEntry 16 }
     adslAturPerfPrev1DayMoniSecs OBJECT-TYPE
         SYNTAX      INTEGER(0..86400)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The amount of time in the previous 1-day interval
             over which the performance monitoring information
             is actually counted. This value will be the same as
             the interval duration except in a situation where
             performance monitoring data could not be collected
             for any reason."
     ::= { adslAturPerfDataEntry 17 }
     adslAturPerfPrev1DayLofs  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Framing within the most recent previous
             1-day period."
     ::= { adslAturPerfDataEntry 18 }
     adslAturPerfPrev1DayLoss  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Signal within the most recent previous
             1-day period."
     ::= { adslAturPerfDataEntry 19 }
     adslAturPerfPrev1DayLprs  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Power within the most recent previous
             1-day period."
     ::= { adslAturPerfDataEntry 20 }
     adslAturPerfPrev1DayESs OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of Errored Seconds within the most recent
             previous 1-day period. The errored second parameter is
             a count of one-second intervals containing one or more
             crc anomalies, or one or more los or sef defects."
     ::= { adslAturPerfDataEntry 21 }
     adslAtucIntervalTable   OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAtucIntervalEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUC
             performance data collection interval.
             ADSL physical interfaces are
             those ifEntries where ifType is equal to adsl(94)."
     ::= { adslMibObjects 8 }
     adslAtucIntervalEntry   OBJECT-TYPE
         SYNTAX          AdslAtucIntervalEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in the adslAtucIntervalTable."
         INDEX           { ifIndex, adslAtucIntervalNumber }
     ::= { adslAtucIntervalTable 1 }
     AdslAtucIntervalEntry ::=
         SEQUENCE {
         adslAtucIntervalNumber          INTEGER,
         adslAtucIntervalLofs            PerfIntervalCount,
         adslAtucIntervalLoss            PerfIntervalCount,
         adslAtucIntervalLols            PerfIntervalCount,
         adslAtucIntervalLprs            PerfIntervalCount,
         adslAtucIntervalESs             PerfIntervalCount,
         adslAtucIntervalInits           PerfIntervalCount,
         adslAtucIntervalValidData       TruthValue
         }
     adslAtucIntervalNumber OBJECT-TYPE
         SYNTAX      INTEGER(1..96)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "Performance Data Interval number 1 is the
             the most recent previous interval; interval
             96 is 24 hours ago.  Intervals 2..96 are
             optional."
     ::= { adslAtucIntervalEntry 1 }
     adslAtucIntervalLofs OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was Loss
             of Framing."
     ::= { adslAtucIntervalEntry 2 }
     adslAtucIntervalLoss  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was Loss
             of Signal."
     ::= { adslAtucIntervalEntry 3 }
     adslAtucIntervalLols  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was Loss
             of Link."
     ::= { adslAtucIntervalEntry 4 }
     adslAtucIntervalLprs  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was Loss
             of Power."
     ::= { adslAtucIntervalEntry 5 }
     adslAtucIntervalESs OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of Errored Seconds in the interval.
             The errored second parameter is a count of
             one-second intervals containing one or more crc
             anomalies, or one or more los or sef defects."
     ::= { adslAtucIntervalEntry 6 }
     adslAtucIntervalInits  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of the line initialization attempts
             during the interval. Includes both successful
             and failed attempts."
     ::= { adslAtucIntervalEntry 7 }
     adslAtucIntervalValidData OBJECT-TYPE
         SYNTAX TruthValue
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "This variable indicates if the data for this
             interval is valid."
     ::= { adslAtucIntervalEntry 8 }
     adslAturIntervalTable   OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAturIntervalEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUR
             performance data collection interval.
             ADSL physical interfaces are those
             ifEntries where ifType is equal to adsl(94)."
     ::= { adslMibObjects 9 }
     adslAturIntervalEntry   OBJECT-TYPE
         SYNTAX          AdslAturIntervalEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in the adslAturIntervalTable."
         INDEX           { ifIndex, adslAturIntervalNumber }
     ::= { adslAturIntervalTable 1 }
     AdslAturIntervalEntry ::=
         SEQUENCE {
         adslAturIntervalNumber          INTEGER,
         adslAturIntervalLofs            PerfIntervalCount,
         adslAturIntervalLoss            PerfIntervalCount,
         adslAturIntervalLprs            PerfIntervalCount,
         adslAturIntervalESs             PerfIntervalCount,
         adslAturIntervalValidData       TruthValue
         }
     adslAturIntervalNumber OBJECT-TYPE
         SYNTAX      INTEGER(1..96)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "Performance Data Interval number 1 is the
             the most recent previous interval; interval
             96 is 24 hours ago.  Intervals 2..96 are
             optional."
     ::= { adslAturIntervalEntry 1 }
     adslAturIntervalLofs OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Framing."
     ::= { adslAturIntervalEntry 2 }
     adslAturIntervalLoss  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Signal."
     ::= { adslAturIntervalEntry 3 }
     adslAturIntervalLprs  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of seconds in the interval when there was
             Loss of Power."
     ::= { adslAturIntervalEntry 4 }
     adslAturIntervalESs OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of Errored Seconds in the interval.
             The errored second parameter is a count of
             one-second intervals containing one or more crc
             anomalies, or one or more los or sef defects."
     ::= { adslAturIntervalEntry 5 }
     adslAturIntervalValidData OBJECT-TYPE
         SYNTAX TruthValue
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "This variable indicates if the data for this
             interval is valid."
     ::= { adslAturIntervalEntry 6 }
     adslAtucChanPerfDataTable       OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAtucChanPerfDataEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUC channel.
             ADSL channel interfaces are those ifEntries
             where ifType is equal to adslInterleave(124)
             or adslFast(125)."
     ::= { adslMibObjects 10 }
     adslAtucChanPerfDataEntry       OBJECT-TYPE
         SYNTAX          AdslAtucChanPerfDataEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in adslAtucChanPerfDataTable."
         INDEX           { ifIndex }
     ::= { adslAtucChanPerfDataTable 1 }
     AdslAtucChanPerfDataEntry ::=
      SEQUENCE {
      adslAtucChanReceivedBlks                 Counter32,
      adslAtucChanTransmittedBlks              Counter32,
      adslAtucChanCorrectedBlks                Counter32,
      adslAtucChanUncorrectBlks                Counter32,
      adslAtucChanPerfValidIntervals           INTEGER,
      adslAtucChanPerfInvalidIntervals         INTEGER,
      adslAtucChanPerfCurr15MinTimeElapsed     AdslPerfTimeElapsed,
      adslAtucChanPerfCurr15MinReceivedBlks    PerfCurrentCount,
      adslAtucChanPerfCurr15MinTransmittedBlks PerfCurrentCount,
      adslAtucChanPerfCurr15MinCorrectedBlks   PerfCurrentCount,
      adslAtucChanPerfCurr15MinUncorrectBlks   PerfCurrentCount,
      adslAtucChanPerfCurr1DayTimeElapsed      AdslPerfTimeElapsed,
      adslAtucChanPerfCurr1DayReceivedBlks     AdslPerfCurrDayCount,
      adslAtucChanPerfCurr1DayTransmittedBlks  AdslPerfCurrDayCount,
      adslAtucChanPerfCurr1DayCorrectedBlks    AdslPerfCurrDayCount,
      adslAtucChanPerfCurr1DayUncorrectBlks    AdslPerfCurrDayCount,
      adslAtucChanPerfPrev1DayMoniSecs         INTEGER,
      adslAtucChanPerfPrev1DayReceivedBlks     AdslPerfPrevDayCount,
      adslAtucChanPerfPrev1DayTransmittedBlks  AdslPerfPrevDayCount,
      adslAtucChanPerfPrev1DayCorrectedBlks    AdslPerfPrevDayCount,
      adslAtucChanPerfPrev1DayUncorrectBlks    AdslPerfPrevDayCount
     }
     -- performance group
     --
     -- Note: block is intended to be the length of the channel
     --       data-block on which the CRC operates. See
     --       adslAtucChanCrcBlockLength for more information.
     --
     adslAtucChanReceivedBlks OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this channel
             since agent reset."
     ::= { adslAtucChanPerfDataEntry 1 }
     adslAtucChanTransmittedBlks  OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel since agent reset."
     ::= { adslAtucChanPerfDataEntry 2 }
     adslAtucChanCorrectedBlks  OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected since agent reset.  These blocks are passed
             on as good data."
     ::= { adslAtucChanPerfDataEntry 3 }
     adslAtucChanUncorrectBlks  OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors since agent reset."
     ::= { adslAtucChanPerfDataEntry 4 }
     -- general 15 min interval information
     --
     adslAtucChanPerfValidIntervals OBJECT-TYPE
         SYNTAX      INTEGER(0..96)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of previous 15-minute intervals in the
             interval table for which data was collected.  Given
             that <n> is the maximum # of intervals supported.
             The value will be <n> unless the measurement was
             (re-)started within the last (<n>*15) minutes, in which
             case the value will be the number of complete 15
             minute intervals for which the agent has at least
             some data. In certain cases (e.g., in the case
             where the agent is a proxy) it is possible that some
             intervals are unavailable.  In this case, this
             interval is the maximum interval number for
             which data is available."
     ::= { adslAtucChanPerfDataEntry 5 }
     adslAtucChanPerfInvalidIntervals OBJECT-TYPE
         SYNTAX      INTEGER(0..96)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of intervals in the range from
             0 to the value of adslAtucChanPerfValidIntervals
             for which no data is available. This object
             will typically be zero except in cases where
             the data for some intervals are not available
             (e.g., in proxy situations)."
     ::= { adslAtucChanPerfDataEntry 6 }
     -- 15 min current performance group
     --
     adslAtucChanPerfCurr15MinTimeElapsed OBJECT-TYPE
         SYNTAX      AdslPerfTimeElapsed(0..899)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Total elapsed seconds in this interval."
     ::= { adslAtucChanPerfDataEntry 7 }
     adslAtucChanPerfCurr15MinReceivedBlks OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this channel
             within the current 15 minute interval."
     ::= { adslAtucChanPerfDataEntry 8 }
     adslAtucChanPerfCurr15MinTransmittedBlks OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel within the current 15 minute interval."
     ::= { adslAtucChanPerfDataEntry 9 }
     adslAtucChanPerfCurr15MinCorrectedBlks  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected on this channel within the current 15 minute
             interval."
     ::= { adslAtucChanPerfDataEntry 10 }
     adslAtucChanPerfCurr15MinUncorrectBlks  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors on this channel within the current 15 minute
             interval."
     ::= { adslAtucChanPerfDataEntry 11 }
     -- 1-day current and previous performance group
     --
     adslAtucChanPerfCurr1DayTimeElapsed OBJECT-TYPE
         SYNTAX      AdslPerfTimeElapsed(0..86399)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Number of seconds that have elapsed since the
             beginning of the current 1-day interval."
     ::= { adslAtucChanPerfDataEntry 12 }
     adslAtucChanPerfCurr1DayReceivedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this
             channel during the current day as measured by
             adslAtucChanPerfCurr1DayTimeElapsed."
     ::= { adslAtucChanPerfDataEntry 13 }
     adslAtucChanPerfCurr1DayTransmittedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel during the current day as measured by
             adslAtucChanPerfCurr1DayTimeElapsed."
     ::= { adslAtucChanPerfDataEntry 14 }
     adslAtucChanPerfCurr1DayCorrectedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected on this channel during the current day as
             measured by adslAtucChanPerfCurr1DayTimeElapsed."
     ::= { adslAtucChanPerfDataEntry 15 }
     adslAtucChanPerfCurr1DayUncorrectBlks  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors on this channel during the current day as
             measured by adslAtucChanPerfCurr1DayTimeElapsed."
     ::= { adslAtucChanPerfDataEntry 16 }
     adslAtucChanPerfPrev1DayMoniSecs OBJECT-TYPE
         SYNTAX      INTEGER(0..86400)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The amount of time in the previous 1-day interval
             over which the performance monitoring information
             is actually counted. This value will be the same as
             the interval duration except in a situation where
             performance monitoring data could not be collected
             for any reason."
     ::= { adslAtucChanPerfDataEntry 17 }
     adslAtucChanPerfPrev1DayReceivedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this
             channel within the most recent previous 1-day
             period."
     ::= { adslAtucChanPerfDataEntry 18 }
     adslAtucChanPerfPrev1DayTransmittedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel within the most recent previous 1-day
             period."
     ::= { adslAtucChanPerfDataEntry 19 }
     adslAtucChanPerfPrev1DayCorrectedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected on this channel within the most recent
             previous 1-day period."
     ::= { adslAtucChanPerfDataEntry 20 }
     adslAtucChanPerfPrev1DayUncorrectBlks  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors on this channel within the most recent previous
             1-day period."
     ::= { adslAtucChanPerfDataEntry 21 }
     adslAturChanPerfDataTable       OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAturChanPerfDataEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUR channel.
             ADSL channel interfaces are those ifEntries
             where ifType is equal to adslInterleave(124)
             or adslFast(125)."
     ::= { adslMibObjects 11 }
     adslAturChanPerfDataEntry       OBJECT-TYPE
         SYNTAX          AdslAturChanPerfDataEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in adslAturChanPerfDataTable."
         INDEX           { ifIndex }
     ::= { adslAturChanPerfDataTable 1 }
     AdslAturChanPerfDataEntry ::=
      SEQUENCE {
      adslAturChanReceivedBlks                 Counter32,
      adslAturChanTransmittedBlks              Counter32,
      adslAturChanCorrectedBlks                Counter32,
      adslAturChanUncorrectBlks                Counter32,
      adslAturChanPerfValidIntervals           INTEGER,
      adslAturChanPerfInvalidIntervals         INTEGER,
      adslAturChanPerfCurr15MinTimeElapsed     AdslPerfTimeElapsed,
      adslAturChanPerfCurr15MinReceivedBlks    PerfCurrentCount,
      adslAturChanPerfCurr15MinTransmittedBlks PerfCurrentCount,
      adslAturChanPerfCurr15MinCorrectedBlks   PerfCurrentCount,
      adslAturChanPerfCurr15MinUncorrectBlks   PerfCurrentCount,
      adslAturChanPerfCurr1DayTimeElapsed      AdslPerfTimeElapsed,
      adslAturChanPerfCurr1DayReceivedBlks     AdslPerfCurrDayCount,
      adslAturChanPerfCurr1DayTransmittedBlks  AdslPerfCurrDayCount,
      adslAturChanPerfCurr1DayCorrectedBlks    AdslPerfCurrDayCount,
      adslAturChanPerfCurr1DayUncorrectBlks    AdslPerfCurrDayCount,
      adslAturChanPerfPrev1DayMoniSecs         INTEGER,
      adslAturChanPerfPrev1DayReceivedBlks     AdslPerfPrevDayCount,
      adslAturChanPerfPrev1DayTransmittedBlks  AdslPerfPrevDayCount,
      adslAturChanPerfPrev1DayCorrectedBlks    AdslPerfPrevDayCount,
      adslAturChanPerfPrev1DayUncorrectBlks    AdslPerfPrevDayCount
      }
     -- performance group
     --
     -- Note: block is intended to be the length of the channel
     --       data-block on which the CRC operates. See
     --       adslAturChanCrcBlockLength for more information.
     --
     adslAturChanReceivedBlks OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this channel
             since agent reset."
     ::= { adslAturChanPerfDataEntry 1 }
     adslAturChanTransmittedBlks  OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel since agent reset."
     ::= { adslAturChanPerfDataEntry 2 }
     adslAturChanCorrectedBlks  OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected since agent reset.  These blocks are passed
             on as good data."
     ::= { adslAturChanPerfDataEntry 3 }
     adslAturChanUncorrectBlks  OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors since agent reset."
     ::= { adslAturChanPerfDataEntry 4 }
     -- general 15 min interval information
     --
     adslAturChanPerfValidIntervals OBJECT-TYPE
         SYNTAX      INTEGER(0..96)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of previous 15-minute intervals in the
             interval table for which data was collected.  Given
             that <n> is the maximum # of intervals supported.
             The value will be <n> unless the measurement was
             (re-)started within the last (<n>*15) minutes, in which
             case the value will be the number of complete 15
             minute intervals for which the agent has at least
             some data. In certain cases (e.g., in the case
             where the agent is a proxy) it is possible that some
             intervals are unavailable.  In this case, this
             interval is the maximum interval number for
             which data is available."
     ::= { adslAturChanPerfDataEntry 5 }
     adslAturChanPerfInvalidIntervals OBJECT-TYPE
         SYNTAX      INTEGER(0..96)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of intervals in the range from
             0 to the value of adslAturChanPerfValidIntervals
             for which no data is available. This object
             will typically be zero except in cases where
             the data for some intervals are not available
             (e.g., in proxy situations)."
     ::= { adslAturChanPerfDataEntry 6 }
     -- 15 min current performance group
     --
     adslAturChanPerfCurr15MinTimeElapsed OBJECT-TYPE
         SYNTAX      AdslPerfTimeElapsed(0..899)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Total elapsed seconds in this interval.
             A full interval is 900 seconds."
     ::= { adslAturChanPerfDataEntry 7 }
     adslAturChanPerfCurr15MinReceivedBlks OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this
             channel within the current 15 minute interval."
     ::= { adslAturChanPerfDataEntry 8 }
     adslAturChanPerfCurr15MinTransmittedBlks OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel within the current 15 minute interval."
     ::= { adslAturChanPerfDataEntry 9 }
     adslAturChanPerfCurr15MinCorrectedBlks  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected on this channel within the current 15 minute
             interval."
     ::= { adslAturChanPerfDataEntry 10 }
     adslAturChanPerfCurr15MinUncorrectBlks  OBJECT-TYPE
         SYNTAX      PerfCurrentCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors on this channel within the current 15 minute
             interval."
     ::= { adslAturChanPerfDataEntry 11 }
     -- 1-day current and previous performance group
     --
     adslAturChanPerfCurr1DayTimeElapsed OBJECT-TYPE
         SYNTAX      AdslPerfTimeElapsed(0..86399)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Number of seconds that have elapsed since the
             beginning of the current 1-day interval."
     ::= { adslAturChanPerfDataEntry 12 }
     adslAturChanPerfCurr1DayReceivedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this
             channel during the current day as measured by
             adslAturChanPerfCurr1DayTimeElapsed."
     ::= { adslAturChanPerfDataEntry 13 }
     adslAturChanPerfCurr1DayTransmittedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel during the current day as measured by
             adslAturChanPerfCurr1DayTimeElapsed."
     ::= { adslAturChanPerfDataEntry 14 }
     adslAturChanPerfCurr1DayCorrectedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected on this channel during the current day as
             measured by adslAturChanPerfCurr1DayTimeElapsed."
     ::= { adslAturChanPerfDataEntry 15 }
     adslAturChanPerfCurr1DayUncorrectBlks  OBJECT-TYPE
         SYNTAX      AdslPerfCurrDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors on this channel during the current day as
             measured by adslAturChanPerfCurr1DayTimeElapsed."
     ::= { adslAturChanPerfDataEntry 16 }
     adslAturChanPerfPrev1DayMoniSecs OBJECT-TYPE
         SYNTAX      INTEGER(0..86400)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The amount of time in the previous 1-day interval
             over which the performance monitoring information
             is actually counted. This value will be the same as
             the interval duration except in a situation where
             performance monitoring data could not be collected
             for any reason."
     ::= { adslAturChanPerfDataEntry 17 }
     adslAturChanPerfPrev1DayReceivedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this
             channel within the most recent previous 1-day
             period."
     ::= { adslAturChanPerfDataEntry 18 }
     adslAturChanPerfPrev1DayTransmittedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel within the most recent previous 1-day
             period."
     ::= { adslAturChanPerfDataEntry 19 }
     adslAturChanPerfPrev1DayCorrectedBlks  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected on this channel within the most recent
             previous 1-day period."
     ::= { adslAturChanPerfDataEntry 20 }
     adslAturChanPerfPrev1DayUncorrectBlks  OBJECT-TYPE
         SYNTAX      AdslPerfPrevDayCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors on this channel within the most recent previous
             1-day period."
     ::= { adslAturChanPerfDataEntry 21 }
     adslAtucChanIntervalTable   OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAtucChanIntervalEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUC channel's
             performance data collection interval.
             ADSL channel interfaces are those ifEntries
             where ifType is equal to adslInterleave(124)
             or adslFast(125)."
     ::= { adslMibObjects 12 }
     adslAtucChanIntervalEntry   OBJECT-TYPE
         SYNTAX          AdslAtucChanIntervalEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in the adslAtucIntervalTable."
         INDEX           { ifIndex, adslAtucChanIntervalNumber }
     ::= { adslAtucChanIntervalTable 1 }
     AdslAtucChanIntervalEntry ::=
         SEQUENCE {
         adslAtucChanIntervalNumber          INTEGER,
         adslAtucChanIntervalReceivedBlks    PerfIntervalCount,
         adslAtucChanIntervalTransmittedBlks PerfIntervalCount,
         adslAtucChanIntervalCorrectedBlks   PerfIntervalCount,
         adslAtucChanIntervalUncorrectBlks   PerfIntervalCount,
         adslAtucChanIntervalValidData       TruthValue
         }
     adslAtucChanIntervalNumber OBJECT-TYPE
         SYNTAX      INTEGER(1..96)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "Performance Data Interval number 1 is the
             the most recent previous interval; interval
             96 is 24 hours ago.  Intervals 2..96 are
             optional."
     ::= { adslAtucChanIntervalEntry 1 }
     adslAtucChanIntervalReceivedBlks OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this channel
             during this interval."
     ::= { adslAtucChanIntervalEntry 2 }
     adslAtucChanIntervalTransmittedBlks  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel during this interval."
     ::= { adslAtucChanIntervalEntry 3 }
     adslAtucChanIntervalCorrectedBlks  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected on this channel during this interval."
     ::= { adslAtucChanIntervalEntry 4 }
     adslAtucChanIntervalUncorrectBlks  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors on this channel during this interval."
     ::= { adslAtucChanIntervalEntry 5 }
     adslAtucChanIntervalValidData OBJECT-TYPE
         SYNTAX TruthValue
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "This variable indicates if the data for this
             interval is valid."
     ::= { adslAtucChanIntervalEntry 6 }
     adslAturChanIntervalTable   OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslAturChanIntervalEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table provides one row for each ATUR channel's
             performance data collection interval.
             ADSL channel interfaces are those ifEntries
             where ifType is equal to adslInterleave(124)
             or adslFast(125)."
     ::= { adslMibObjects 13 }
     adslAturChanIntervalEntry   OBJECT-TYPE
         SYNTAX          AdslAturChanIntervalEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION     "An entry in the adslAturIntervalTable."
         INDEX           { ifIndex, adslAturChanIntervalNumber }
     ::= { adslAturChanIntervalTable 1 }
     AdslAturChanIntervalEntry ::=
         SEQUENCE {
         adslAturChanIntervalNumber               INTEGER,
         adslAturChanIntervalReceivedBlks         PerfIntervalCount,
         adslAturChanIntervalTransmittedBlks      PerfIntervalCount,
         adslAturChanIntervalCorrectedBlks        PerfIntervalCount,
         adslAturChanIntervalUncorrectBlks        PerfIntervalCount,
         adslAturChanIntervalValidData            TruthValue
         }
     adslAturChanIntervalNumber OBJECT-TYPE
         SYNTAX      INTEGER(1..96)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "Performance Data Interval number 1 is the
             the most recent previous interval; interval
             96 is 24 hours ago.  Intervals 2..96 are
             optional."
     ::= { adslAturChanIntervalEntry 1 }
     adslAturChanIntervalReceivedBlks OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks received on this channel
             during this interval."
     ::= { adslAturChanIntervalEntry 2 }
     adslAturChanIntervalTransmittedBlks  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all encoded blocks transmitted on this
             channel during this interval."
     ::= { adslAturChanIntervalEntry 3 }
     adslAturChanIntervalCorrectedBlks  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with errors that were
             corrected on this channel during this interval."
     ::= { adslAturChanIntervalEntry 4 }
     adslAturChanIntervalUncorrectBlks  OBJECT-TYPE
         SYNTAX      PerfIntervalCount
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Count of all blocks received with uncorrectable
             errors on this channel during this interval."
     ::= { adslAturChanIntervalEntry 5 }
     adslAturChanIntervalValidData OBJECT-TYPE
         SYNTAX TruthValue
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "This variable indicates if the data for this
             interval is valid."
     ::= { adslAturChanIntervalEntry 6 }
     -- Profile Group
     --
     adslLineConfProfileTable    OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslLineConfProfileEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table contains information on the ADSL line
             configuration.  One entry in this table reflects a
             profile defined by a manager which can be used to
             configure the ADSL line."
     ::= { adslMibObjects 14}
     adslLineConfProfileEntry    OBJECT-TYPE
         SYNTAX          AdslLineConfProfileEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "Each entry consists of a list of parameters that
             represents the configuration of an ADSL modem.
             When `dynamic' profiles are implemented, a default
             profile will always exist.  This profile's name will
             be set to `DEFVAL' and its parameters will be set
             to vendor specific values, unless otherwise specified
             in this document.
             When `static' profiles are implemented, profiles
             are automaticly created or destroyed as ADSL
             physical lines are discovered and removed by
             the system.  The name of the profile will be
             equivalent to the decimal value of the line's
             interface index.
             "
         INDEX { IMPLIED adslLineConfProfileName}
     ::= { adslLineConfProfileTable 1}
     AdslLineConfProfileEntry ::=
         SEQUENCE {
         adslLineConfProfileName               SnmpAdminString,
         adslAtucConfRateMode                  INTEGER,
         adslAtucConfRateChanRatio             INTEGER,
         adslAtucConfTargetSnrMgn              INTEGER,
         adslAtucConfMaxSnrMgn                 INTEGER,
         adslAtucConfMinSnrMgn                 INTEGER,
         adslAtucConfDownshiftSnrMgn           INTEGER,
         adslAtucConfUpshiftSnrMgn             INTEGER,
         adslAtucConfMinUpshiftTime            INTEGER,
         adslAtucConfMinDownshiftTime          INTEGER,
         adslAtucChanConfFastMinTxRate         Unsigned32,
         adslAtucChanConfInterleaveMinTxRate   Unsigned32,
         adslAtucChanConfFastMaxTxRate         Unsigned32,
         adslAtucChanConfInterleaveMaxTxRate   Unsigned32,
         adslAtucChanConfMaxInterleaveDelay    INTEGER,
         adslAturConfRateMode                  INTEGER,
         adslAturConfRateChanRatio             INTEGER,
         adslAturConfTargetSnrMgn              INTEGER,
         adslAturConfMaxSnrMgn                 INTEGER,
         adslAturConfMinSnrMgn                 INTEGER,
         adslAturConfDownshiftSnrMgn           INTEGER,
         adslAturConfUpshiftSnrMgn             INTEGER,
         adslAturConfMinUpshiftTime            INTEGER,
         adslAturConfMinDownshiftTime          INTEGER,
         adslAturChanConfFastMinTxRate         Unsigned32,
         adslAturChanConfInterleaveMinTxRate   Unsigned32,
         adslAturChanConfFastMaxTxRate         Unsigned32,
         adslAturChanConfInterleaveMaxTxRate   Unsigned32,
         adslAturChanConfMaxInterleaveDelay    INTEGER,
         adslLineConfProfileRowStatus          RowStatus
     }
     adslLineConfProfileName    OBJECT-TYPE
             SYNTAX          SnmpAdminString (SIZE (1..32))
             MAX-ACCESS      not-accessible
             STATUS          current
             DESCRIPTION
             "This object is used by the line configuration table
             in order to identify a row of this table.
             When `dynamic' profiles are implemented, the profile
             name is user specified.  Also, the system will always
             provide a default profile whose name is `DEFVAL'.
             When `static' profiles are implemented, there is an
             one-to-one relationship between each line and its
             profile.  In which case, the profile name will
             need to algorithmicly represent the Line's ifIndex.
             Therefore, the profile's name is a decimalized string
             of the ifIndex that is fixed-length (i.e., 10) with
             leading zero(s).  For example, the profile name for
             ifIndex which equals '15' will be '0000000015'."
     ::= { adslLineConfProfileEntry 1 }
     adslAtucConfRateMode OBJECT-TYPE
         SYNTAX      INTEGER {
             fixed (1),              -- no rate adaptation
             adaptAtStartup (2),     -- perform rate adaptation
                                     -- only at initialization
             adaptAtRuntime (3)      -- perform rate adaptation at
                                     -- any time
         }
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Defines what form of transmit rate adaptation is
             configured on this modem.  See ADSL Forum TR-005 [3]
             for more information."
     ::= { adslLineConfProfileEntry 2 }
     adslAtucConfRateChanRatio OBJECT-TYPE
         SYNTAX      INTEGER(0..100)
         UNITS        "%"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured allocation ratio of excess transmit
             bandwidth between fast and interleaved channels.  Only
             applies when two channel mode and RADSL are supported.
             Distribute bandwidth on each channel in excess of the
             corresponding ChanConfMinTxRate so that:
             adslAtucConfRateChanRatio =
                     [Fast / (Fast + Interleaved)] * 100
             In other words this value is the fast channel
             percentage."
     ::= { adslLineConfProfileEntry 3 }
   adslAtucConfTargetSnrMgn OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Target Signal/Noise Margin.
             This is the Noise Margin the modem must achieve
             with a BER of 10-7 or better to successfully complete
             initialization."
     ::= { adslLineConfProfileEntry 4 }
   adslAtucConfMaxSnrMgn OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Maximum acceptable Signal/Noise Margin.
             If the Noise Margin is above this the modem should
             attempt to reduce its power output to optimize its
             operation."
     ::= { adslLineConfProfileEntry 5 }
     adslAtucConfMinSnrMgn  OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Minimum acceptable Signal/Noise Margin.
             If the noise margin falls below this level, the modem
             should attempt to increase its power output.  If that
             is not possible the modem will attempt to
             re-initialize or shut down."
     ::= { adslLineConfProfileEntry 6 }
     adslAtucConfDownshiftSnrMgn  OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Signal/Noise Margin for rate downshift.
             If the noise margin falls below this level, the modem
             should attempt to decrease its transmit rate.  In
             the case that RADSL mode is not present,
             the value will be `0'."
     ::= { adslLineConfProfileEntry 7 }
     adslAtucConfUpshiftSnrMgn  OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Signal/Noise Margin for rate upshift.
             If the noise margin rises above this level, the modem
             should attempt to increase its transmit rate.    In
             the case that RADSL is not present, the value will
             be `0'."
     ::= { adslLineConfProfileEntry 8 }
     adslAtucConfMinUpshiftTime OBJECT-TYPE
         SYNTAX      INTEGER(0..16383)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Minimum time that the current margin is above
             UpshiftSnrMgn before an upshift occurs.
             In the case that RADSL is not present, the value will
             be `0'."
     ::= { adslLineConfProfileEntry 9 }
    adslAtucConfMinDownshiftTime OBJECT-TYPE
         SYNTAX      INTEGER(0..16383)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Minimum time that the current margin is below
             DownshiftSnrMgn before a downshift occurs.
             In the case that RADSL mode is not present,
             the value will be `0'."
     ::= { adslLineConfProfileEntry 10 }
     adslAtucChanConfFastMinTxRate  OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Minimum Transmit rate for `Fast' channels,
             in bps.  See adslAtucConfRateChanRatio for information
             regarding RADSL mode and ATUR transmit rate for
             ATUC receive rates."
     ::= { adslLineConfProfileEntry 11 }
     adslAtucChanConfInterleaveMinTxRate OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Minimum Transmit rate for `Interleave'
             channels, in bps.  See adslAtucConfRateChanRatio for
             information regarding RADSL mode and see
             ATUR transmit rate for receive rates."
     ::= { adslLineConfProfileEntry 12 }
     adslAtucChanConfFastMaxTxRate  OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Maximum Transmit rate for `Fast' channels,
             in bps.  See adslAtucConfRateChanRatio for information
             regarding RADSL mode and see ATUR transmit rate for
             ATUC receive rates."
     ::= { adslLineConfProfileEntry 13 }
     adslAtucChanConfInterleaveMaxTxRate OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Maximum Transmit rate for `Interleave'
             channels, in bps.  See adslAtucConfRateChanRatio for
             information regarding RADSL mode and ATUR transmit
             rate for ATUC receive rates."
     ::= { adslLineConfProfileEntry 14 }
     adslAtucChanConfMaxInterleaveDelay OBJECT-TYPE
         SYNTAX      INTEGER(0..255)
         UNITS        "milli-seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured maximum Interleave Delay for this channel.
             Interleave delay applies only to the interleave channel
             and defines the mapping (relative spacing) between
             subsequent input bytes at the interleaver input and
             their placement in the bit stream at the interleaver
             output.  Larger numbers provide greater separation
             between consecutive input bytes in the output bit
             stream allowing for improved impulse noise immunity
             at the expense of payload latency."
     ::= { adslLineConfProfileEntry 15 }
     adslAturConfRateMode OBJECT-TYPE
         SYNTAX      INTEGER {
             fixed (1),              -- no rate adaptation
             adaptAtStartup (2),     -- perform rate adaptation
                                     -- only at initialization
             adaptAtRuntime (3)      -- perform rate adaptation at
                                     -- any time
         }
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Defines what form of transmit rate adaptation is
             configured on this modem.  See ADSL Forum TR-005 [3]
             for more information."
     ::= { adslLineConfProfileEntry 16 }
     adslAturConfRateChanRatio OBJECT-TYPE
         SYNTAX      INTEGER(0..100)
         UNITS        "%"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured allocation ratio of excess transmit
             bandwidth between fast and interleaved channels.  Only
             applies when two channel mode and RADSL are supported.
             Distribute bandwidth on each channel in excess of the
             corresponding ChanConfMinTxRate so that:
             adslAturConfRateChanRatio =
                     [Fast / (Fast + Interleaved)] * 100
             In other words this value is the fast channel
             percentage."
     ::= { adslLineConfProfileEntry 17 }
   adslAturConfTargetSnrMgn OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Target Signal/Noise Margin.
             This is the Noise Margin the modem must achieve
             with a BER of 10-7 or better to successfully complete
             initialization."
     ::= { adslLineConfProfileEntry 18 }
   adslAturConfMaxSnrMgn OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Maximum acceptable Signal/Noise Margin.
             If the Noise Margin is above this the modem should
             attempt to reduce its power output to optimize its
             operation."
     ::= { adslLineConfProfileEntry 19 }
    adslAturConfMinSnrMgn  OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Minimum acceptable Signal/Noise Margin.
             If the noise margin falls below this level, the modem
             should attempt to increase its power output.  If that
             is not possible the modem will attempt to
             re-initialize or shut down."
     ::= { adslLineConfProfileEntry 20 }
     adslAturConfDownshiftSnrMgn  OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Signal/Noise Margin for rate downshift.
             If the noise margin falls below this level, the modem
             should attempt to decrease its transmit rate.
             In the case that RADSL mode is not present,
             the value will be `0'."
     ::= { adslLineConfProfileEntry 21 }
     adslAturConfUpshiftSnrMgn  OBJECT-TYPE
         SYNTAX      INTEGER (0..310)
         UNITS       "tenth dB"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Signal/Noise Margin for rate upshift.
             If the noise margin rises above this level, the modem
             should attempt to increase its transmit rate.
             In the case that RADSL is not present,
             the value will be `0'."
     ::= { adslLineConfProfileEntry 22 }
     adslAturConfMinUpshiftTime OBJECT-TYPE
         SYNTAX      INTEGER(0..16383)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Minimum time that the current margin is above
             UpshiftSnrMgn before an upshift occurs.
             In the case that RADSL is not present, the value will
             be `0'."
     ::= { adslLineConfProfileEntry 23 }
    adslAturConfMinDownshiftTime OBJECT-TYPE
         SYNTAX      INTEGER(0..16383)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Minimum time that the current margin is below
             DownshiftSnrMgn before a downshift occurs.
             In the case that RADSL mode is not present,
             the value will be `0'."
     ::= { adslLineConfProfileEntry 24 }
     adslAturChanConfFastMinTxRate  OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Minimum Transmit rate for `Fast' channels,
             in bps.  See adslAturConfRateChanRatio for information
             regarding RADSL mode and ATUC transmit rate
             for ATUR receive rates."
     ::= { adslLineConfProfileEntry 25 }
     adslAturChanConfInterleaveMinTxRate OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Minimum Transmit rate for `Interleave'
             channels, in bps.  See adslAturConfRateChanRatio for
             information regarding RADSL mode and ATUC transmit rate
             for ATUR receive rates."
     ::= { adslLineConfProfileEntry 26 }
     adslAturChanConfFastMaxTxRate  OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Maximum Transmit rate for `Fast' channels,
             in bps.  See adslAturConfRateChanRatio for information
             regarding RADSL mode and ATUC transmit rate
             for ATUR receive rates."
     ::= { adslLineConfProfileEntry 27 }
     adslAturChanConfInterleaveMaxTxRate OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured Maximum Transmit rate for `Interleave'
             channels, in bps.  See adslAturConfRateChanRatio for
             information regarding RADSL mode and see
             ATUC transmit rate for ATUR receive rates."
     ::= { adslLineConfProfileEntry 28 }
     adslAturChanConfMaxInterleaveDelay OBJECT-TYPE
         SYNTAX      INTEGER(0..255)
         UNITS        "milli-seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Configured maximum Interleave Delay for this channel.
             Interleave delay applies only to the interleave channel
             and defines the mapping (relative spacing) between
             subsequent input bytes at the interleaver input and
             their placement in the bit stream at the interleaver
             output.  Larger numbers provide greater separation
             between consecutive input bytes in the output bit
             stream allowing for improved impulse noise immunity
             at the expense of payload latency."
     ::= { adslLineConfProfileEntry 29 }
     adslLineConfProfileRowStatus OBJECT-TYPE
         SYNTAX          RowStatus
         MAX-ACCESS      read-create
         STATUS          current
         DESCRIPTION
             "This object is used to create a new row or modify or
             delete an existing row in this table.
             A profile activated by setting this object to
             `active'.  When `active' is set, the system
             will validate the profile.
             Before a profile can be deleted or taken out of
             service, (by setting this object to `destroy' or
             `outOfService') it must be first unreferenced
             from all associated lines.
             If the implementator of this MIB has chosen not
             to implement `dynamic assignment' of profiles, this
             object's MIN-ACCESS is read-only and its value
             is always to be `active'."
     ::= { adslLineConfProfileEntry 30 }
     adslLineAlarmConfProfileTable    OBJECT-TYPE
         SYNTAX          SEQUENCE OF AdslLineAlarmConfProfileEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This table contains information on the ADSL line
             configuration.  One entry in this table reflects a
             profile defined by a manager which can be used to
             configure the modem for a physical line"
     ::= { adslMibObjects 15}
     adslLineAlarmConfProfileEntry    OBJECT-TYPE
         SYNTAX          AdslLineAlarmConfProfileEntry
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "Each entry consists of a list of parameters that
             represents the configuration of an ADSL modem.
             When `dynamic' profiles are implemented, a default
             profile will always exist.  This profile's name will
             be set to `DEFVAL' and its parameters will be set to
             vendor specific values, unless otherwise specified
             in this document.
             When `static' profiles are implemented, profiles
             are automaticly created or destroyed as ADSL
             physical lines are discovered and removed by
             the system.  The name of the profile will be
             equivalent to the decimal value of the line's
             interface index.
             "
         INDEX { IMPLIED adslLineAlarmConfProfileName}
     ::= { adslLineAlarmConfProfileTable 1}
     AdslLineAlarmConfProfileEntry ::=
         SEQUENCE {
         adslLineAlarmConfProfileName          SnmpAdminString,
         adslAtucThresh15MinLofs               INTEGER,
         adslAtucThresh15MinLoss               INTEGER,
         adslAtucThresh15MinLols               INTEGER,
         adslAtucThresh15MinLprs               INTEGER,
         adslAtucThresh15MinESs                INTEGER,
         adslAtucThreshFastRateUp              Unsigned32,
         adslAtucThreshInterleaveRateUp        Unsigned32,
         adslAtucThreshFastRateDown            Unsigned32,
         adslAtucThreshInterleaveRateDown      Unsigned32,
         adslAtucInitFailureTrapEnable         INTEGER,
         adslAturThresh15MinLofs               INTEGER,
         adslAturThresh15MinLoss               INTEGER,
         adslAturThresh15MinLprs               INTEGER,
         adslAturThresh15MinESs                INTEGER,
         adslAturThreshFastRateUp              Unsigned32,
         adslAturThreshInterleaveRateUp        Unsigned32,
         adslAturThreshFastRateDown            Unsigned32,
         adslAturThreshInterleaveRateDown      Unsigned32,
         adslLineAlarmConfProfileRowStatus     RowStatus
         }
     adslLineAlarmConfProfileName    OBJECT-TYPE
         SYNTAX          SnmpAdminString (SIZE (1..32))
         MAX-ACCESS      not-accessible
         STATUS          current
         DESCRIPTION
             "This object is used by the line alarm configuration
             table in order to identify a row of this table.
             When `dynamic' profiles are implemented, the profile
             name is user specified.  Also, the system will always
             provide a default profile whose name is `DEFVAL'.
             When `static' profiles are implemented, there is an
             one-to-one relationship between each line and its
             profile.  In which case, the profile name will
             need to algorithmicly represent the Line's ifIndex.
             Therefore, the profile's name is a decimalized string
             of the ifIndex that is fixed-length (i.e., 10) with
             leading zero(s).  For example, the profile name for
             ifIndex which equals '15' will be '0000000015'."
     ::= { adslLineAlarmConfProfileEntry 1}
     adslAtucThresh15MinLofs OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Loss of Frame Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAtucPerfLofsThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 2}
     adslAtucThresh15MinLoss  OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Loss of Signal Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAtucPerfLossThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 3}
     adslAtucThresh15MinLols  OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Loss of Link Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAtucPerfLolsThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 4}
     adslAtucThresh15MinLprs  OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Loss of Power Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAtucPerfLprsThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 5}
     adslAtucThresh15MinESs  OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Errored Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAtucPerfESsThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 6}
     adslAtucThreshFastRateUp OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Applies to `Fast' channels only.
             Configured change in rate causing an
             adslAtucRateChangeTrap. A trap is produced when:
             ChanCurrTxRate >= ChanPrevTxRate plus the value of
             this object. A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 7}
     adslAtucThreshInterleaveRateUp OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Applies to `Interleave' channels only.
             Configured change in rate causing an
             adslAtucRateChangeTrap.  A trap is produced when:
             ChanCurrTxRate >= ChanPrevTxRate plus the value of
             this object. A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 8}
     adslAtucThreshFastRateDown OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Applies to `Fast' channels only.
             Configured change in rate causing an
             adslAtucRateChangeTrap.  A trap is produced when:
             ChanCurrTxRate <= ChanPrevTxRate minus the value of
             this object. A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 9 }
     adslAtucThreshInterleaveRateDown OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Applies to `Interleave' channels only.
             Configured change in rate causing an
             adslAtucRateChangeTrap.  A trap is produced when:
             ChanCurrTxRate <= ChanPrevTxRate minus the value of
             this object. A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 10 }
     adslAtucInitFailureTrapEnable OBJECT-TYPE
         SYNTAX      INTEGER {
             enable (1),
             disable (2)
         }
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Enables and disables the InitFailureTrap.  This
             object is defaulted disable(2)."
     DEFVAL { disable }
     ::= { adslLineAlarmConfProfileEntry 11 }
     adslAturThresh15MinLofs OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Loss of Frame Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAturPerfLofsThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 12 }
     adslAturThresh15MinLoss  OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Loss of Signal Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAturPerfLossThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 13 }
     adslAturThresh15MinLprs  OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Loss of Power Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAturPerfLprsThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 14 }
     adslAturThresh15MinESs  OBJECT-TYPE
         SYNTAX      INTEGER(0..900)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The number of Errored Seconds
             encountered by an ADSL interface within any given 15
             minutes performance data collection period, which
             causes the SNMP agent to send an
             adslAturPerfESsThreshTrap.
             One trap will be sent per interval per interface.
             A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 15 }
     adslAturThreshFastRateUp OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Applies to `Fast' channels only.
             Configured change in rate causing an
             adslAturRateChangeTrap.  A trap is produced when:
             ChanCurrTxRate >= ChanPrevTxRate plus the value of
             this object. A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 16 }
     adslAturThreshInterleaveRateUp OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Applies to `Interleave' channels only.
             configured change in rate causing an
             adslAturRateChangeTrap.  A trap is produced when:
             ChanCurrTxRate >= ChanPrevTxRate plus the value of
             this object. A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 17 }
     adslAturThreshFastRateDown OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Applies to `Fast' channels only.
             Configured change in rate causing an
             adslAturRateChangeTrap.  A trap is produced when:
             ChanCurrTxRate <= ChanPrevTxRate minus the value of
             this object. A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 18 }
     adslAturThreshInterleaveRateDown OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "bps"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "Applies to `Interleave' channels only.
             Configured change in rate causing an
             adslAturRateChangeTrap.  A trap is produced when:
             ChanCurrTxRate <= ChanPrevTxRate minus the value of
             this object. A value of `0' will disable the trap."
     ::= { adslLineAlarmConfProfileEntry 19 }
     adslLineAlarmConfProfileRowStatus OBJECT-TYPE
         SYNTAX          RowStatus
         MAX-ACCESS      read-create
         STATUS          current
         DESCRIPTION
             "This object is used to create a new row or modify or
             delete an existing row in this table.
             A profile activated by setting this object to
             `active'.  When `active' is set, the system
             will validate the profile.
             Before a profile can be deleted or taken out of
             service, (by setting this object to `destroy' or
             `outOfService') it must be first unreferenced
             from all associated lines.
             If the implementator of this MIB has chosen not
             to implement `dynamic assignment' of profiles, this
             object's MIN-ACCESS is read-only and its value
             is always to be `active'."
     ::= { adslLineAlarmConfProfileEntry 20 }
     -- Line Code Specific Tables
     -- These are place holders for the Line Code Specific MIBs
     -- once they become available.
     adslLCSMib  OBJECT IDENTIFIER ::= { adslMibObjects 16 }

-- trap definitions

adslTraps OBJECT IDENTIFIER ::= { adslLineMib 2 }

adslAtucTraps OBJECT IDENTIFIER ::= { adslTraps 1 }

     adslAtucPerfLofsThreshTrap      NOTIFICATION-TYPE
         OBJECTS { adslAtucPerfCurr15MinLofs,
                   adslAtucThresh15MinLofs }
         STATUS  current
         DESCRIPTION
             "Loss of Framing 15-minute interval threshold reached."
     ::= { adslAtucTraps 0 1 }
     adslAtucPerfLossThreshTrap      NOTIFICATION-TYPE
         OBJECTS { adslAtucPerfCurr15MinLoss,
                   adslAtucThresh15MinLoss }
         STATUS  current
         DESCRIPTION
             "Loss of Signal 15-minute interval threshold reached."
     ::= { adslAtucTraps 0 2 }
     adslAtucPerfLprsThreshTrap      NOTIFICATION-TYPE
         OBJECTS { adslAtucPerfCurr15MinLprs,
                   adslAtucThresh15MinLprs }
         STATUS  current
         DESCRIPTION
             "Loss of Power 15-minute interval threshold reached."
     ::= { adslAtucTraps 0 3 }
     adslAtucPerfESsThreshTrap       NOTIFICATION-TYPE
         OBJECTS { adslAtucPerfCurr15MinESs,
                   adslAtucThresh15MinESs }
         STATUS  current
         DESCRIPTION
             "Errored Second 15-minute interval threshold reached."
     ::= { adslAtucTraps 0 4 }
     adslAtucRateChangeTrap  NOTIFICATION-TYPE
         OBJECTS { adslAtucChanCurrTxRate,
                   adslAtucChanPrevTxRate }
         STATUS  current
         DESCRIPTION
             "The ATUCs transmit rate has changed (RADSL mode only)"
     ::= { adslAtucTraps 0 5 }
     adslAtucPerfLolsThreshTrap      NOTIFICATION-TYPE
         OBJECTS { adslAtucPerfCurr15MinLols,
                   adslAtucThresh15MinLols }
         STATUS  current
         DESCRIPTION
             "Loss of Link 15-minute interval threshold reached."
     ::= { adslAtucTraps 0 6 }
     adslAtucInitFailureTrap NOTIFICATION-TYPE
         OBJECTS { adslAtucCurrStatus }
         STATUS  current
         DESCRIPTION
             "ATUC initialization failed. See adslAtucCurrStatus
             for potential reasons."
     ::= { adslAtucTraps 0 7 }

adslAturTraps OBJECT IDENTIFIER ::= { adslTraps 2 }

     adslAturPerfLofsThreshTrap      NOTIFICATION-TYPE
         OBJECTS { adslAturPerfCurr15MinLofs,
                   adslAturThresh15MinLofs }
         STATUS  current
         DESCRIPTION
             "Loss of Framing 15-minute interval threshold reached."
     ::= { adslAturTraps 0 1 }
     adslAturPerfLossThreshTrap      NOTIFICATION-TYPE
         OBJECTS { adslAturPerfCurr15MinLoss,
                   adslAturThresh15MinLoss }
         STATUS  current
         DESCRIPTION
             "Loss of Signal 15-minute interval threshold reached."
     ::= { adslAturTraps 0 2 }
     adslAturPerfLprsThreshTrap      NOTIFICATION-TYPE
         OBJECTS { adslAturPerfCurr15MinLprs,
                   adslAturThresh15MinLprs }
         STATUS  current
         DESCRIPTION
             "Loss of Power 15-minute interval threshold reached."
     ::= { adslAturTraps 0 3 }
     adslAturPerfESsThreshTrap       NOTIFICATION-TYPE
         OBJECTS { adslAturPerfCurr15MinESs,
                   adslAturThresh15MinESs }
         STATUS  current
         DESCRIPTION
             "Errored Second 15-minute interval threshold reached."
     ::= { adslAturTraps 0 4 }
     adslAturRateChangeTrap  NOTIFICATION-TYPE
         OBJECTS { adslAturChanCurrTxRate,
                   adslAturChanPrevTxRate }
         STATUS  current
         DESCRIPTION
             "The ATURs transmit rate has changed (RADSL mode only)"
     ::= { adslAturTraps 0 5 }
     -- no adslAturPerfLolsThreshTrap possible { 0 6 }
     -- no adslAturInitFailureTrap possible { 0 7 }

-- conformance information

adslConformance OBJECT IDENTIFIER ::= { adslLineMib 3 }

adslGroups OBJECT IDENTIFIER ::= { adslConformance 1 } adslCompliances OBJECT IDENTIFIER ::= { adslConformance 2 }

     -- ATU-C agent compliance statements
     adslLineMibAtucCompliance MODULE-COMPLIANCE
         STATUS  current
         DESCRIPTION
             "The compliance statement for SNMP entities
              which manage ADSL ATU-C interfaces."
         MODULE  -- this module
         MANDATORY-GROUPS
            {
            adslLineGroup, adslPhysicalGroup, adslChannelGroup,
            adslAtucPhysPerfIntervalGroup,
            adslAturPhysPerfIntervalGroup, adslLineConfProfileGroup,
            adslLineAlarmConfProfileGroup,
            adslLineConfProfileControlGroup
            }
         GROUP       adslAtucPhysPerfRawCounterGroup
         DESCRIPTION
             "This group is optional.  Implementations which
              require continuous ATU-C physical event counters
              should implement this group."
         GROUP       adslAturPhysPerfRawCounterGroup
         DESCRIPTION
             "This group is optional.  Implementations which
              require continuous ATU-R physical event counters
              should implement this group."
         GROUP       adslAtucChanPerformanceGroup
         DESCRIPTION
             "This group is optional.  Implementations which
              require ATU-C channel block event counters should
              implement this group."
         GROUP       adslAturChanPerformanceGroup
         DESCRIPTION
             "This group is optional.  Implementations which
              require ATU-R channel block event counters should
              implement this group."
         OBJECT      adslLineConfProfile
         MIN-ACCESS  read-only
         DESCRIPTION
             "Read-only access is applicable when static
              profiles are implemented."
         OBJECT      adslAtucConfRateMode
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucConfRateChanRatio
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucConfTargetSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucConfMaxSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucConfMinSnrMgn
         MIN-ACCESS  read-wr
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucConfDownshiftSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucConfUpshiftSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucConfMinUpshiftTime
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucConfMinDownshiftTime
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucChanConfFastMinTxRate
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucChanConfInterleaveMinTxRate
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucChanConfFastMaxTxRate
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucChanConfInterleaveMaxTxRate
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucChanConfMaxInterleaveDelay
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfRateMode
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfRateChanRatio
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfTargetSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfMaxSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfMinSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfDownshiftSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfUpshiftSnrMgn
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfMinUpshiftTime
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturConfMinDownshiftTime
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturChanConfFastMinTxRate
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturChanConfInterleaveMinTxRate
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturChanConfFastMaxTxRate
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturChanConfInterleaveMaxTxRate
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturChanConfMaxInterleaveDelay
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslLineConfProfileRowStatus
         MIN-ACCESS  read-only
         DESCRIPTION
             "Read-only access is applicable only when static
              profiles are implemented."
         OBJECT      adslLineAlarmConfProfile
         MIN-ACCESS  read-only
         DESCRIPTION
             "Read-only access is applicable only when static
              profiles are implemented."
         OBJECT      adslAtucThresh15MinLofs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThresh15MinLoss
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThresh15MinLols
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThresh15MinLprs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThresh15MinESs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThreshFastRateUp
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThreshInterleaveRateUp
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThreshFastRateDown
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThreshInterleaveRateDown
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucInitFailureTrapEnable
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThresh15MinLofs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThresh15MinLoss
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThresh15MinLprs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThresh15MinESs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThreshFastRateUp
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThreshInterleaveRateUp
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThreshFastRateDown
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThreshInterleaveRateDown
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslLineAlarmConfProfileRowStatus
         MIN-ACCESS  read-only
         DESCRIPTION
             "Read-only access is applicable only when static
              profiles are implemented."
     ::= { adslCompliances 1 }
     -- ATU-R agent compliance statements
     adslLineMibAturCompliance MODULE-COMPLIANCE
         STATUS  current
         DESCRIPTION
             "The compliance statement for SNMP entities
              which manage ADSL ATU-R interfaces."
         MODULE  -- this module
         MANDATORY-GROUPS
             {
             adslAturLineGroup, adslAturPhysicalGroup,
             adslAturChannelGroup,
             adslAturAtucPhysPerfIntervalGroup,
             adslAturAturPhysPerfIntervalGroup,
             adslAturLineAlarmConfProfileGroup,
             adslAturLineConfProfileControlGroup
             }
         GROUP       adslAturAtucPhysPerfRawCounterGroup
         DESCRIPTION
             "This group is optional.  Implementations which
              require continuous ATU-C physical event counters
              should implement this group."
         GROUP       adslAturAturPhysPerfRawCounterGroup
         DESCRIPTION
             "This group is optional.  Implementations which
              require continuous ATU-R physical event counters
              should implement this group."
         GROUP       adslAturAtucChanPerformanceGroup
         DESCRIPTION
             "This group is optional.  Implementations which
              require ATU-C channel block event counters should
              implement this group."
         GROUP       adslAturAturChanPerformanceGroup
         DESCRIPTION
             "This group is optional.  Implementations which
              require ATU-R channel block event counters should
              implement this group."
         OBJECT      adslLineAlarmConfProfile
         MIN-ACCESS  read-only
         DESCRIPTION
             "Read-only access is applicable only when static
              profiles are implemented."
         OBJECT      adslAtucThresh15MinLofs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThresh15MinLoss
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThresh15MinESs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThreshFastRateUp
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThreshInterleaveRateUp
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucThreshFastRateDown
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAtucInitFailureTrapEnable
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThresh15MinLofs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThresh15MinLoss
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThresh15MinLprs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThresh15MinESs
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThreshFastRateUp
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThreshInterleaveRateUp
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThreshFastRateDown
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslAturThreshInterleaveRateDown
         MIN-ACCESS  read-write
         DESCRIPTION
             "Read-write access is applicable when
              static profiles are implemented."
         OBJECT      adslLineAlarmConfProfileRowStatus
         MIN-ACCESS  read-only
         DESCRIPTION
             "Read-only access is applicable only when static
              profiles are implemented."
         OBJECT     adslAtucCurrStatus
         SYNTAX   BITS {
                        noDefect(0),
                        lossOfFraming(1),
                        lossOfSignal(2)
                       }
         DESCRIPTION
             "It is allowable to implement only noDefect(0),
             lossOfFraming(1) and lossOfSignal(2) by the ATU-R
             agent."
    ::= { adslCompliances 2 }
     -- units of conformance
     adslLineGroup    OBJECT-GROUP
         OBJECTS {
            adslLineCoding, adslLineType, adslLineSpecific
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing configuration
             information about an ADSL Line."
     ::= { adslGroups 1 }
     adslPhysicalGroup    OBJECT-GROUP
         OBJECTS {
            adslAtucInvSerialNumber, adslAtucInvVendorID,
            adslAtucInvVersionNumber, adslAtucCurrSnrMgn,
            adslAtucCurrAtn, adslAtucCurrStatus,
            adslAtucCurrOutputPwr, adslAtucCurrAttainableRate,
            adslAturInvSerialNumber, adslAturInvVendorID,
            adslAturInvVersionNumber, adslAturCurrSnrMgn,
            adslAturCurrAtn, adslAturCurrStatus,
            adslAturCurrOutputPwr, adslAturCurrAttainableRate
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing physical
             configuration information of the ADSL Line."
     ::= { adslGroups 2 }
     adslChannelGroup    OBJECT-GROUP
         OBJECTS {
            adslAtucChanInterleaveDelay, adslAtucChanCurrTxRate,
            adslAtucChanPrevTxRate, adslAtucChanCrcBlockLength,
            adslAturChanInterleaveDelay, adslAturChanCurrTxRate,
            adslAturChanPrevTxRate, adslAturChanCrcBlockLength
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing configuration
             information about an ADSL channel."
     ::= { adslGroups 3 }
     adslAtucPhysPerfRawCounterGroup OBJECT-GROUP
         OBJECTS {
            adslAtucPerfLofs, adslAtucPerfLoss,
            adslAtucPerfLols, adslAtucPerfLprs,
            adslAtucPerfESs, adslAtucPerfInits
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing raw performance
             counts on an ADSL Line (ATU-C end)."
     ::= { adslGroups 4 }
     adslAtucPhysPerfIntervalGroup OBJECT-GROUP
         OBJECTS {
            adslAtucPerfValidIntervals,
            adslAtucPerfInvalidIntervals,
            adslAtucPerfCurr15MinTimeElapsed,
            adslAtucPerfCurr15MinLofs, adslAtucPerfCurr15MinLoss,
            adslAtucPerfCurr15MinLols, adslAtucPerfCurr15MinLprs,
            adslAtucPerfCurr15MinESs, adslAtucPerfCurr15MinInits,
            adslAtucPerfCurr1DayLofs, adslAtucPerfCurr1DayLoss,
            adslAtucPerfCurr1DayLols, adslAtucPerfCurr1DayLprs,
            adslAtucPerfCurr1DayESs, adslAtucPerfCurr1DayInits,
            adslAtucPerfPrev1DayMoniSecs,
            adslAtucPerfPrev1DayLofs, adslAtucPerfPrev1DayLoss,
            adslAtucPerfPrev1DayLols, adslAtucPerfPrev1DayLprs,
            adslAtucPerfPrev1DayESs, adslAtucPerfPrev1DayInits,
            adslAtucIntervalLofs, adslAtucIntervalLoss,
            adslAtucIntervalLols, adslAtucIntervalLprs,
            adslAtucIntervalESs, adslAtucIntervalInits,
            adslAtucIntervalValidData
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing current 15-minute,
             1-day; and previous 1-day performance counts on
             ADSL Line (ATU-C end) ."
     ::= { adslGroups 5 }
     adslAturPhysPerfRawCounterGroup OBJECT-GROUP
         OBJECTS {
            adslAturPerfLofs, adslAturPerfLoss,
            adslAturPerfLprs, adslAturPerfESs
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing raw performance
             counts on an ADSL Line (ATU-R end)."
     ::= { adslGroups 6 }
     adslAturPhysPerfIntervalGroup OBJECT-GROUP
         OBJECTS {
            adslAturPerfValidIntervals,
            adslAturPerfInvalidIntervals,
            adslAturPerfCurr15MinTimeElapsed,
            adslAturPerfCurr15MinLofs, adslAturPerfCurr15MinLoss,
            adslAturPerfCurr15MinLprs, adslAturPerfCurr15MinESs,
            adslAturPerfCurr1DayTimeElapsed,
            adslAturPerfCurr1DayLofs, adslAturPerfCurr1DayLoss,
            adslAturPerfCurr1DayLprs, adslAturPerfCurr1DayESs,
            adslAturPerfPrev1DayMoniSecs,
            adslAturPerfPrev1DayLofs, adslAturPerfPrev1DayLoss,
            adslAturPerfPrev1DayLprs, adslAturPerfPrev1DayESs,
            adslAturIntervalLofs,
            adslAturIntervalLoss, adslAturIntervalLprs,
            adslAturIntervalESs, adslAturIntervalValidData
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing current 15-minute,
             1-day; and previous 1-day performance counts on
             ADSL Line (ATU-R end)."
     ::= { adslGroups 7 }
     adslAtucChanPerformanceGroup OBJECT-GROUP
         OBJECTS {
            adslAtucChanReceivedBlks,
            adslAtucChanTransmittedBlks,
            adslAtucChanCorrectedBlks,
            adslAtucChanUncorrectBlks,
            adslAtucChanPerfValidIntervals,
            adslAtucChanPerfInvalidIntervals,
            adslAtucChanPerfCurr15MinTimeElapsed,
            adslAtucChanPerfCurr15MinReceivedBlks,
            adslAtucChanPerfCurr15MinTransmittedBlks,
            adslAtucChanPerfCurr15MinCorrectedBlks,
            adslAtucChanPerfCurr15MinUncorrectBlks,
            adslAtucChanPerfCurr1DayTimeElapsed,
            adslAtucChanPerfCurr1DayReceivedBlks,
            adslAtucChanPerfCurr1DayTransmittedBlks,
            adslAtucChanPerfCurr1DayCorrectedBlks,
            adslAtucChanPerfCurr1DayUncorrectBlks,
            adslAtucChanPerfPrev1DayMoniSecs,
            adslAtucChanPerfPrev1DayReceivedBlks,
            adslAtucChanPerfPrev1DayTransmittedBlks,
            adslAtucChanPerfPrev1DayCorrectedBlks,
            adslAtucChanPerfPrev1DayUncorrectBlks,
            adslAtucChanIntervalReceivedBlks,
            adslAtucChanIntervalTransmittedBlks,
            adslAtucChanIntervalCorrectedBlks,
            adslAtucChanIntervalUncorrectBlks,
            adslAtucChanIntervalValidData
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing channel block
             performance information on an ADSL channel
             (ATU-C end)."
     ::= { adslGroups 8 }
     adslAturChanPerformanceGroup OBJECT-GROUP
         OBJECTS {
            adslAturChanReceivedBlks,
            adslAturChanTransmittedBlks,
            adslAturChanCorrectedBlks,
            adslAturChanUncorrectBlks,
            adslAturChanPerfValidIntervals,
            adslAturChanPerfInvalidIntervals,
            adslAturChanPerfCurr15MinTimeElapsed,
            adslAturChanPerfCurr15MinReceivedBlks,
            adslAturChanPerfCurr15MinTransmittedBlks,
            adslAturChanPerfCurr15MinCorrectedBlks,
            adslAturChanPerfCurr15MinUncorrectBlks,
            adslAturChanPerfCurr1DayTimeElapsed,
            adslAturChanPerfCurr1DayReceivedBlks,
            adslAturChanPerfCurr1DayTransmittedBlks,
            adslAturChanPerfCurr1DayCorrectedBlks,
            adslAturChanPerfCurr1DayUncorrectBlks,
            adslAturChanPerfPrev1DayMoniSecs,
            adslAturChanPerfPrev1DayReceivedBlks,
            adslAturChanPerfPrev1DayTransmittedBlks,
            adslAturChanPerfPrev1DayCorrectedBlks,
            adslAturChanPerfPrev1DayUncorrectBlks,
            adslAturChanIntervalReceivedBlks,
            adslAturChanIntervalTransmittedBlks,
            adslAturChanIntervalCorrectedBlks,
            adslAturChanIntervalUncorrectBlks,
            adslAturChanIntervalValidData
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing channel block
             performance information on an ADSL channel
             (ATU-C end)."
     ::= { adslGroups 9 }
     adslLineConfProfileGroup OBJECT-GROUP
         OBJECTS {
            adslAtucConfRateMode, adslAtucConfRateChanRatio,
            adslAtucConfTargetSnrMgn, adslAtucConfMaxSnrMgn,
            adslAtucConfMinSnrMgn,
            adslAtucConfDownshiftSnrMgn,
            adslAtucConfUpshiftSnrMgn,
            adslAtucConfMinUpshiftTime,
            adslAtucConfMinDownshiftTime,
            adslAtucChanConfFastMinTxRate,
            adslAtucChanConfInterleaveMinTxRate,
            adslAtucChanConfFastMaxTxRate,
            adslAtucChanConfInterleaveMaxTxRate,
            adslAtucChanConfMaxInterleaveDelay,
            adslAturConfRateMode, adslAturConfRateChanRatio,
            adslAturConfTargetSnrMgn, adslAturConfMaxSnrMgn,
            adslAturConfMinSnrMgn, adslAturConfDownshiftSnrMgn,
            adslAturConfUpshiftSnrMgn,
            adslAturConfMinUpshiftTime,
            adslAturConfMinDownshiftTime,
            adslAturChanConfFastMinTxRate,
            adslAturChanConfInterleaveMinTxRate,
            adslAturChanConfFastMaxTxRate,
            adslAturChanConfInterleaveMaxTxRate,
            adslAturChanConfMaxInterleaveDelay
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing provisioning
             information about an ADSL Line."
     ::= { adslGroups 10 }
     adslLineAlarmConfProfileGroup OBJECT-GROUP
         OBJECTS {
            adslAtucThresh15MinLofs, adslAtucThresh15MinLoss,
            adslAtucThresh15MinLols, adslAtucThresh15MinLprs,
            adslAtucThresh15MinESs, adslAtucThreshFastRateUp,
            adslAtucThreshInterleaveRateUp,
            adslAtucThreshFastRateDown,
            adslAtucThreshInterleaveRateDown,
            adslAtucInitFailureTrapEnable,
            adslAturThresh15MinLofs, adslAturThresh15MinLoss,
            adslAturThresh15MinLprs, adslAturThresh15MinESs,
            adslAturThreshFastRateUp,
            adslAturThreshInterleaveRateUp,
            adslAturThreshFastRateDown,
            adslAturThreshInterleaveRateDown
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing alarm provisioning
             information about an ADSL Line."
     ::= { adslGroups 11 }
     adslLineConfProfileControlGroup OBJECT-GROUP
         OBJECTS {
            adslLineConfProfile, adslLineAlarmConfProfile,
            adslLineConfProfileRowStatus,
            adslLineAlarmConfProfileRowStatus
            }
         STATUS     current
         DESCRIPTION
             "A collection of objects providing profile
             control for the ADSL system."
     ::= { adslGroups 12 }
     adslNotificationsGroup NOTIFICATION-GROUP
         NOTIFICATIONS {
            adslAtucPerfLofsThreshTrap,
            adslAtucPerfLossThreshTrap,
            adslAtucPerfLprsThreshTrap,
            adslAtucPerfESsThreshTrap,
            adslAtucRateChangeTrap,
            adslAtucPerfLolsThreshTrap,
            adslAtucInitFailureTrap,
            adslAturPerfLofsThreshTrap,
            adslAturPerfLossThreshTrap,
            adslAturPerfLprsThreshTrap,
            adslAturPerfESsThreshTrap,
            adslAturRateChangeTrap
            }
         STATUS        current
         DESCRIPTION
             "The collection of adsl notifications."
     ::= { adslGroups 13 }

-- units of conformance for ATU-R agent

        adslAturLineGroup    OBJECT-GROUP
            OBJECTS {
               adslLineCoding
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing configuration
                information about an ADSL Line on the ATU-R side."
        ::= { adslGroups 14 }
        adslAturPhysicalGroup    OBJECT-GROUP
            OBJECTS {
               adslAtucInvVendorID,
               adslAtucInvVersionNumber,
               adslAtucCurrOutputPwr, adslAtucCurrAttainableRate,
               adslAturInvSerialNumber, adslAturInvVendorID,
               adslAturInvVersionNumber, adslAturCurrSnrMgn,
               adslAturCurrAtn, adslAturCurrStatus,
               adslAturCurrOutputPwr, adslAturCurrAttainableRate,
               adslAtucCurrStatus
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing physical
                configuration information of the ADSL Line on the
                ATU-R side."
        ::= { adslGroups 15 }
        adslAturChannelGroup    OBJECT-GROUP
            OBJECTS {
               adslAtucChanInterleaveDelay, adslAtucChanCurrTxRate,
               adslAtucChanPrevTxRate,
               adslAturChanInterleaveDelay, adslAturChanCurrTxRate,
               adslAturChanPrevTxRate, adslAturChanCrcBlockLength
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing configuration
               information about an ADSL channel on the ATU-R
               side."
        ::= { adslGroups 16 }
        adslAturAtucPhysPerfRawCounterGroup OBJECT-GROUP
            OBJECTS {
               adslAtucPerfLofs, adslAtucPerfLoss,
               adslAtucPerfESs, adslAtucPerfInits
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing raw performance
               counts on an ADSL Line (ATU-C end) provided by the
               ATU-R agent."
        ::= { adslGroups 17 }
        adslAturAtucPhysPerfIntervalGroup OBJECT-GROUP
            OBJECTS {
               adslAtucPerfValidIntervals,
               adslAtucPerfInvalidIntervals,
               adslAtucPerfCurr15MinTimeElapsed,
               adslAtucPerfCurr15MinLofs, adslAtucPerfCurr15MinLoss,
               adslAtucPerfCurr15MinESs, adslAtucPerfCurr15MinInits,
               adslAtucPerfCurr1DayTimeElapsed,
               adslAtucPerfCurr1DayLofs, adslAtucPerfCurr1DayLoss,
               adslAtucPerfCurr1DayESs, adslAtucPerfCurr1DayInits,
               adslAtucPerfPrev1DayMoniSecs,
               adslAtucPerfPrev1DayLofs, adslAtucPerfPrev1DayLoss,
               adslAtucPerfPrev1DayESs, adslAtucPerfPrev1DayInits,
               adslAtucIntervalLofs, adslAtucIntervalLoss,
               adslAtucIntervalESs, adslAtucIntervalInits,
               adslAtucIntervalValidData
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing current
               15-minute, 1-day; and previous 1-day performance
               counts on ADSL Line (ATU-C end) provided by the
               ATU-R agent."
        ::= { adslGroups 18 }
        adslAturAturPhysPerfRawCounterGroup OBJECT-GROUP
            OBJECTS {
               adslAturPerfLofs, adslAturPerfLoss,
               adslAturPerfLprs, adslAturPerfESs
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing raw performance
               counts on an ADSL Line (ATU-R end) provided by the
               ATU-R agent."
        ::= { adslGroups 19 }
        adslAturAturPhysPerfIntervalGroup OBJECT-GROUP
            OBJECTS {
               adslAturPerfValidIntervals,
               adslAturPerfInvalidIntervals,
               adslAturPerfCurr15MinTimeElapsed,
               adslAturPerfCurr15MinLofs, adslAturPerfCurr15MinLoss,
               adslAturPerfCurr15MinLprs, adslAturPerfCurr15MinESs,
               adslAturPerfCurr1DayTimeElapsed,
               adslAturPerfCurr1DayLofs, adslAturPerfCurr1DayLoss,
               adslAturPerfCurr1DayLprs, adslAturPerfCurr1DayESs,
               adslAturPerfPrev1DayMoniSecs,
               adslAturPerfPrev1DayLofs, adslAturPerfPrev1DayLoss,
               adslAturPerfPrev1DayLprs, adslAturPerfPrev1DayESs,
               adslAturIntervalLofs,
               adslAturIntervalLoss, adslAturIntervalLprs,
               adslAturIntervalESs, adslAturIntervalValidData
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing current
               15-minute, 1-day; and previous 1-day performance
               counts on ADSL Line (ATU-R end) provided by the
               ATU-R agent."
        ::= { adslGroups 20 }
        adslAturAtucChanPerformanceGroup OBJECT-GROUP
            OBJECTS {
               adslAtucChanReceivedBlks,
               adslAtucChanTransmittedBlks,
               adslAtucChanCorrectedBlks,
               adslAtucChanUncorrectBlks,
               adslAtucChanPerfCurr15MinTimeElapsed,
               adslAtucChanPerfCurr15MinReceivedBlks,
               adslAtucChanPerfCurr15MinTransmittedBlks,
               adslAtucChanPerfCurr15MinCorrectedBlks,
               adslAtucChanPerfCurr15MinUncorrectBlks,
               adslAtucChanPerfCurr1DayTimeElapsed,
               adslAtucChanPerfCurr1DayReceivedBlks,
               adslAtucChanPerfCurr1DayTransmittedBlks,
               adslAtucChanPerfCurr1DayCorrectedBlks,
               adslAtucChanPerfCurr1DayUncorrectBlks,
               adslAtucChanPerfPrev1DayMoniSecs,
               adslAtucChanPerfPrev1DayReceivedBlks,
               adslAtucChanPerfPrev1DayTransmittedBlks,
               adslAtucChanPerfPrev1DayCorrectedBlks,
               adslAtucChanPerfPrev1DayUncorrectBlks,
               adslAtucChanPerfValidIntervals,
               adslAtucChanPerfInvalidIntervals,
               adslAtucChanIntervalReceivedBlks,
               adslAtucChanIntervalTransmittedBlks,
               adslAtucChanIntervalCorrectedBlks,
               adslAtucChanIntervalUncorrectBlks,
               adslAtucChanIntervalValidData
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing channel block
                performance information on an ADSL channel
                (ATU-C end) provided by the ATU-R agent."
        ::= { adslGroups 21 }
        adslAturAturChanPerformanceGroup OBJECT-GROUP
            OBJECTS {
               adslAturChanReceivedBlks,
               adslAturChanTransmittedBlks,
               adslAturChanCorrectedBlks,
               adslAturChanUncorrectBlks,
               adslAturChanPerfValidIntervals,
               adslAturChanPerfInvalidIntervals,
               adslAturChanPerfCurr15MinTimeElapsed,
               adslAturChanPerfCurr15MinReceivedBlks,
               adslAturChanPerfCurr15MinTransmittedBlks,
               adslAturChanPerfCurr15MinCorrectedBlks,
               adslAturChanPerfCurr15MinUncorrectBlks,
               adslAturChanPerfCurr1DayTimeElapsed,
               adslAturChanPerfCurr1DayReceivedBlks,
               adslAturChanPerfCurr1DayTransmittedBlks,
               adslAturChanPerfCurr1DayCorrectedBlks,
               adslAturChanPerfCurr1DayUncorrectBlks,
               adslAturChanPerfPrev1DayMoniSecs,
               adslAturChanPerfPrev1DayReceivedBlks,
               adslAturChanPerfPrev1DayTransmittedBlks,
               adslAturChanPerfPrev1DayCorrectedBlks,
               adslAturChanPerfPrev1DayUncorrectBlks,
               adslAturChanIntervalReceivedBlks,
               adslAturChanIntervalTransmittedBlks,
               adslAturChanIntervalCorrectedBlks,
               adslAturChanIntervalUncorrectBlks,
               adslAturChanIntervalValidData
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing channel block
                performance information on an ADSL channel
                (ATU-R end) provided by the ATU-R agent."
        ::= { adslGroups 22 }
        adslAturLineAlarmConfProfileGroup OBJECT-GROUP
            OBJECTS {
               adslAtucThresh15MinLofs, adslAtucThresh15MinLoss,
               adslAtucThresh15MinESs, adslAtucThreshFastRateUp,
               adslAtucThreshInterleaveRateUp,
               adslAtucThreshFastRateDown,
               adslAtucThreshInterleaveRateDown,
               adslAtucInitFailureTrapEnable,
               adslAturThresh15MinLofs, adslAturThresh15MinLoss,
               adslAturThresh15MinLprs, adslAturThresh15MinESs,
               adslAturThreshFastRateUp,
               adslAturThreshInterleaveRateUp,
               adslAturThreshFastRateDown,
               adslAturThreshInterleaveRateDown
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing alarm

provisioning

                information about an ADSL Line provided by the
                ATU-R agent."
        ::= { adslGroups 23 }
        adslAturLineConfProfileControlGroup OBJECT-GROUP
            OBJECTS {
               adslLineAlarmConfProfile,
               adslLineAlarmConfProfileRowStatus
               }
            STATUS     current
            DESCRIPTION
                "A collection of objects providing profile
                control for the ADSL system by the ATU-R agent."
        ::= { adslGroups 24 }
        adslAturNotificationsGroup NOTIFICATION-GROUP
            NOTIFICATIONS {
                adslAtucPerfLofsThreshTrap,
                adslAtucPerfLossThreshTrap,
                adslAtucPerfESsThreshTrap,
                adslAtucRateChangeTrap,
                adslAturPerfLofsThreshTrap,
                adslAturPerfLossThreshTrap,
                adslAturPerfLprsThreshTrap,
                adslAturPerfESsThreshTrap,
                adslAturRateChangeTrap
                }
            STATUS        current
            DESCRIPTION
                "The collection of ADSL notifications implemented by
                the ATU-R agent."
        ::= { adslGroups 25 }

END

Acknowledgments

The current authors/editors are:

     Gregory Bathrick (AG Communication Systems)
     Faye Ly (Copper Mountain Networks)

Input from the ADSL Forum was edited by:

     Gregory Bathrick (AG Communication Systems)
     John Burgess (Predictive Systems)

Contributions have been received from, but not limited to the following. (in alphabetical order)

  David Allen (Nortel)
  Rajesh Abbi (Alcatel)
  Gregory Bathrick (AG Communication Systems)
  Umberto Bonollo (NEC)
  John Burgess (Predictive Systems)
  Gail Cone (Amati)
  Andrew Cheers (NEC)
  Peter Duffy (Atlantech)
  Kevin Godfrey (Motorola)
  Bill Hong (Diamond Lane)
  Bob Jenness (Siemens)
  Lars Johansson (Ericsson)
  Jeff Johnson (RedBack Network)
  Tsu Kai Lu (DSC)
  Faye Ly (Copper Mountain Networks)
  Gigi Karmous-Edwards (Pulsecom)
  Ron Knipper (Diamond Lane)
  Adil Masood (AG Communication Systems)
  Padmore Peterson (BT)
  Anna Salguero (SBC)
  Donald Simon (Motorola)
  Mike Sneed (Pulsecom)
  Ted Soo-Hoo (Pulsecom)
  John Stehman (Diamond Lane)
  Chuck Storry (Newbridge)
  Chi-Lin Tom (AFC)
  Frank Van der Putten (Alcatel)
  Marc Van Vlimmeren (Alcatel)
  Bert Wijnen (IBM)

References

[1]  McCloghrie K., Perkins D. and J. Schoenwaelder, "Structure of
     Management Information Version 2 (SMIv2)", STD 58, RFC 2578,
     April 1999.
[2]  McCloghrie K., Perkins D. and J. Schoenwaelder, "Textual
     Conventions for SMIv2", STD 58, RFC 2579, April 1999.
[3]  ADSL Forum TR-005, "Network Management Element Management",
     March 1998.
[4]  McCloghrie, K. and M. Rose, Editors, "Management Information
     Base for Network Management of TCP/IP-based internets: MIB-II",
     STD 17, RFC 1213, March 1991.
[5]  McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB
     using SMIv2", RFC 2233, November 1997.
[6]  Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
     "Management Information Base for version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1907, January 1996.
[7]  Case, J., Fedor, M., Schoffstall, M. and J. Davin. " A Simple
     Network Management Protocol (SNMP)", STD 15, RFC 1157, May
     1990.
[8]  Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Protocol
     Operations for Version 2 of the Simple Network Management
     Protocol (SNMPv2)", RFC 1905, January 1996.
[9]  ADSL Forum TR-006, "SNMP-based ADSL Line MIB", March 1998.

[10] American National Standards Institute, ANSI T1.413-1995, August

     1995.

[11] ADSL Forum WT-014, "DMT Line Code Specific MIB", February 1999.

[12] ADSL Forum WT-015, "CAP Line Code Specific MIB", February 1999.

[13] Wijnen, B., Harrington, D. and R. Presuhn, "An Architecture for

     Describing SNMP Management Frameworks", RFC 2571, April 1999.

[14] Rose, M. and K. McCloghrie, "Structure and Identification of

     Management Information for TCP/IP-based Internets", STD 16, RFC
     1155, May 1990.

[15] Rose, M. and K. McCloghrie, "Concise MIB Definitions", STD 16,

     RFC 1212, March 1991.

[16] Rose, M., "A Convention for Defining Traps for use with the

     SNMP", RFC 1215, March 1991.

[17] McCloghrie K., Perkins D. and J. Schoenwaelder, "Conformance

     Statements for SMIv2", RFC 2580, April 1999.

[18] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,

     "Introduction to Community-based SNMPv2", RFC 1901, January
     1996.

[19] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,

     "Transport Mappings for Version 2 of the Simple Network
     Management Protocol (SNMPv2)", RFC 1906, January 1996.

[20] Case, J., Harrington D., Presuhn R. and B. Wijnen, "Message

     Processing and Dispatching for the Simple Network Management
     Protocol (SNMP)", RFC 2572, April 1999.

[21] Blumenthal, U. and B. Wijnen, "User-based Security Model (USM)

     for version 3 of the Simple Network Management Protocol
     (SNMPv3)", RFC 2574, April 1999.

[22] Levi, D., Meyer, P. and B. Stewart, "SNMP Applications", RFC

     2573, April 1999.

[23] Wijnen, B., Presuhn, R. and K. McCloghrie, "View-based Access

     Control Model (VACM) for the Simple Network Management Protocol
     (SNMP)", RFC 2575, April 1999.

[24] Ahmed, M. and K. Tesink, Editors, "Definitions of Managed

     Objects for ATM Management Version 8.0 using SMIv2", RFC 1695,
     August 1994.

[25] McCloghrie, K. and A. Bierman, "Entity MIB", RFC 2037, October

     1996.

[26] Yergeau, F., "UTF-8, a transformation format of ISO 10646", RFC

     2279, January 1998.

10. Security Considerations

1) Blocking unauthorized access to the ADSL MIB via the element management system is outside the scope of this document. It should be noted that access to the MIB permits the unauthorized entity to modify the profiles (sect 6.4) such that both subscriber service and network operations can be interfered with. Subscriber service can be altered by modifying any of a number of service characteristics such as rate partitioning and maximum transmission rates. Network operations can be impacted by modification of trap thresholds such as SNR margins.

2) There are a number of managed objects in this MIB that may be considered to contain sensitive information. In particular, the certain objects may be considered sensitive in many environments, since it would allow an intruder to obtain information about which vendor's equipment is in use on the network. Therefore, it may be important in some environments to control read access to these objects and possibly to even encrypt the values of these object when sending them over the network via SNMP. Not all versions of SNMP provide features for such a secure environment.

SNMPv1 by itself is such an insecure environment. Even if the network itself is secure (for example by using IPSec), even then, there is no control as to who on the secure network is allowed to access and GET (read) the objects in this MIB. It is recommended that the implementors consider the security features as provided by the SNMPv3 framework. Specifically, the use of the User-based Security Model RFC 2574 [21] and the View-based Access Control Model RFC 2575 [23] is recommended.

It is then a customer/user responsibility to ensure that the SNMP entity giving access to an instance of this MIB, is properly configured to give access to those objects only to those principals (users) that have legitimate rights to access them.

3) ADSL layer connectivity from the ATU-R will permit the subscriber to manipulate both the ADSL link directly and the AOC/EOC channels for their own loop. For example, unchecked or unfiltered fluctuations initiated by the subscriber could generate sufficient traps to potentially overwhelm either the management interface to the network or the element manager. Other attacks affecting the ATU-R portions of the MIB may also be possible.

11. Intellectual Property Notice

The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF Secretariat."

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director.

12. Authors' Addresses

Gregory Bathrick AG Communication Systems [A Subsidiary of Lucent Technologies] 2500 W Utopia Rd. Phoenix, AZ 85027 USA

Phone: +1 602-582-7679 Fax: +1 602-582-7697 EMail: [email protected]

Faye Ly Copper Mountain Networks Norcal Office 2470 Embarcadero Way Palo Alto, CA 94303

Phone: +1 650-858-8500 Fax: +1 650-858-8085 EMail: [email protected]

13. Full Copyright Statement

Copyright (C) The Internet Society (1999). All Rights Reserved.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

Funding for the RFC Editor function is currently provided by the Internet Society.