VDSL-LINE-MIB DEFINITIONS ::= BEGIN

IMPORTS

MODULE-IDENTITY,
OBJECT-TYPE,
Gauge32,
Integer32,
Unsigned32,
NOTIFICATION-TYPE,
transmission                    FROM SNMPv2-SMI          -- [RFC2578]
ZeroBasedCounter64              FROM HCNUM-TC            -- [RFC2856]
TEXTUAL-CONVENTION,
RowStatus,
TruthValue                      FROM SNMPv2-TC           -- [RFC2579]
HCPerfValidIntervals,
HCPerfInvalidIntervals,
HCPerfTimeElapsed,
HCPerfIntervalThreshold,
HCPerfCurrentCount,
HCPerfIntervalCount             FROM HC-PerfHist-TC-MIB  -- [RFC3705]
MODULE-COMPLIANCE,
OBJECT-GROUP,
NOTIFICATION-GROUP              FROM SNMPv2-CONF         -- [RFC2580]
ifIndex                         FROM IF-MIB              -- [RFC2863]
SnmpAdminString                 FROM SNMP-FRAMEWORK-MIB; -- [RFC3411]

vdslMIB MODULE-IDENTITY
   LAST-UPDATED "200402190000Z" -- February 19, 2004
   ORGANIZATION "ADSLMIB Working Group"
   CONTACT-INFO "WG-email:  adslmib@ietf.org
          Info:      https://www1.ietf.org/mailman/listinfo/adslmib

          Chair:     Mike Sneed
                     Sand Channel Systems
          Postal:    P.O.  Box 37324
                     Raleigh, NC 27627-7324
                     USA
          Email:     sneedmike@hotmail.com
          Phone:     +1 206 600 7022

          Co-editor: Bob Ray
                     PESA Switching Systems, Inc.
          Postal:    330-A Wynn Drive
                     Huntsville, AL 35805
                     USA
          Email:     rray@pesa.com
          Phone:     +1 256 726 9200 ext.  142

          Co-editor: Rajesh Abbi
                     Alcatel USA
          Postal:    2301 Sugar Bush Road
                     Raleigh, NC 27612-3339
                     USA
          Email:     Rajesh.Abbi@alcatel.com
          Phone:     +1 919 850 6194
        "
DESCRIPTION
    "The MIB module defining objects for the management of a pair
    of VDSL transceivers at each end of the VDSL line.  Each such
    line has an entry in an ifTable which may include multiple
    transceiver lines.  An agent may reside at either end of the
    VDSL line.  However, the MIB is designed to require no
    management communication between them beyond that inherent in
    the low-level VDSL line protocol.  The agent may monitor and
    control this protocol for its needs.

    VDSL 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 a VDSL
    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 vdsl(97), fast(125), and
    interleaved(124), respectively.  The ifStackTable is used to
    represent the relationship between the entries.

    Naming Conventions:
        Vtuc -- (VTUC) transceiver at near (Central) end of line
        Vtur -- (VTUR) transceiver at Remote end of line
        Vtu  -- One of either Vtuc or Vtur
        Curr -- Current
        Prev -- Previous
        Atn  -- Attenuation
        ES   -- Errored Second.
        SES  -- Severely Errored Second
        UAS  -- Unavailable Second
        LCS  -- Line Code Specific
        Lof  -- Loss of Frame
        Lol  -- Loss of Link
        Los  -- Loss of Signal
        Lpr  -- Loss of Power
        xxxs -- Sum of Seconds in which xxx has occured
                (e.g., xxx = Lof, Los, Lpr, Lol)
        Max  -- Maximum
        Mgn  -- Margin
        Min  -- Minimum
        Psd  -- Power Spectral Density
        Snr  -- Signal to Noise Ratio
        Tx   -- Transmit
        Blks -- Blocks

    Copyright (C) The Internet Society (2004).  This version
    of this MIB module is part of RFC 3728: see the RFC
    itself for full legal notices."
       REVISION "200402190000Z" -- February 19, 2004
       DESCRIPTION "Initial version, published as RFC 3728."
   ::= { transmission 97 }

vdslLineMib    OBJECT IDENTIFIER ::= { vdslMIB 1 }
vdslMibObjects OBJECT IDENTIFIER ::= { vdslLineMib 1 }

--
-- textual conventions used in this MIB
--

VdslLineCodingType ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "This data type is used as the syntax for the VDSL Line
        Code.  Attributes with this syntax identify the line coding
        used.  Specified as an INTEGER, the three values are:

        other(1)  -- none of the following
        mcm(2)    -- Multiple Carrier Modulation
        scm(3)    -- Single Carrier Modulation"
    SYNTAX  INTEGER
        {
        other(1),
        mcm(2),
        scm(3)
        }

VdslLineEntity ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "Identifies a transceiver as being either Vtuc or Vtur.
        A VDSL line consists of two transceivers, a Vtuc and a
        Vtur.  Attributes with this syntax reference the two sides
        of a line.  Specified as an INTEGER, the two values are:

        vtuc(1)  -- central site transceiver
        vtur(2)  -- remote site transceiver"
    SYNTAX  INTEGER
        {
        vtuc(1),
        vtur(2)
        }

--
-- objects
--

vdslLineTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslLineEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table includes common attributes describing
        both ends of the line.  It is required for all VDSL
        physical interfaces.  VDSL physical interfaces are
        those ifEntries where ifType is equal to vdsl(97)."
    ::= { vdslMibObjects 1 }

vdslLineEntry OBJECT-TYPE
    SYNTAX       VdslLineEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION  "An entry in the vdslLineTable."
    INDEX { ifIndex }
    ::= { vdslLineTable 1 }

VdslLineEntry ::=
    SEQUENCE
        {
        vdslLineCoding                 VdslLineCodingType,
        vdslLineType                   INTEGER,
        vdslLineConfProfile            SnmpAdminString,
        vdslLineAlarmConfProfile       SnmpAdminString
        }

vdslLineCoding OBJECT-TYPE
    SYNTAX       VdslLineCodingType
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Specifies the VDSL coding type used on this line."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslLineEntry 1 }

vdslLineType OBJECT-TYPE
    SYNTAX       INTEGER
        {
        noChannel(1),         -- no channels exist
        fastOnly(2),          -- only fast channel exists
        interleavedOnly(3),   -- only interleaved channel exists
        fastOrInterleaved(4), -- either fast or interleaved channel
                              -- exist, but only one at a time
        fastAndInterleaved(5) -- both fast and interleaved channels
                              -- exist
        }
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Defines the type of VDSL 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.  Defined values are:

        noChannel(1)          -- no channels exist
        fastOnly(2)           -- only fast channel exists
        interleavedOnly(3)    -- only interleaved channel exists
        fastOrInterleaved(4)  -- either fast or interleaved channel
                              -- exist, but only one at a time
        fastAndInterleaved(5) -- both fast and interleaved channels
                              -- exist

        Note that 'slow' and 'interleaved' refer to the same
        channel.  In the case that the line is channelized, the
        manager can use the ifStackTable to determine the ifIndex
        for the associated channel(s)."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslLineEntry 2 }

vdslLineConfProfile OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE(1..32))
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The value of this object identifies the row in the VDSL
        Line Configuration Profile Table, vdslLineConfProfileTable,
        which applies for this VDSL line, and channels if
        applicable.

        This object MUST be maintained in a persistent manner."
    DEFVAL       { "DEFVAL" }
    ::= { vdslLineEntry 3 }

vdslLineAlarmConfProfile OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE(1..32))
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The value of this object identifies the row in the VDSL
        Line Alarm Configuration Profile Table,
        vdslLineAlarmConfProfileTable, which applies to this
        VDSL line, and channels if applicable.

        This object MUST be maintained in a persistent manner."
    DEFVAL       { "DEFVAL" }
    ::= { vdslLineEntry 4 }

vdslPhysTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslPhysEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides one row for each Vtu.  Each row
        contains the Physical Layer Parameters table for that
        Vtu.  VDSL physical interfaces are those ifEntries where
        ifType is equal to vdsl(97)."
    ::= { vdslMibObjects 2 }

vdslPhysEntry OBJECT-TYPE
    SYNTAX       VdslPhysEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION  "An entry in the vdslPhysTable."
    INDEX { ifIndex,
            vdslPhysSide }
    ::= { vdslPhysTable 1 }

VdslPhysEntry ::=
    SEQUENCE
        {
        vdslPhysSide                   VdslLineEntity,
        vdslPhysInvSerialNumber        SnmpAdminString,
        vdslPhysInvVendorID            SnmpAdminString,
        vdslPhysInvVersionNumber       SnmpAdminString,
        vdslPhysCurrSnrMgn             Integer32,
        vdslPhysCurrAtn                Gauge32,
        vdslPhysCurrStatus             BITS,
        vdslPhysCurrOutputPwr          Integer32,
        vdslPhysCurrAttainableRate     Gauge32,
        vdslPhysCurrLineRate           Gauge32
        }

vdslPhysSide OBJECT-TYPE
    SYNTAX       VdslLineEntity
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "Identifies whether the transceiver is the Vtuc or Vtur."
    ::= { vdslPhysEntry 1 }

vdslPhysInvSerialNumber OBJECT-TYPE
    SYNTAX       SnmpAdminString(SIZE (0..32))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The vendor specific string that identifies the

        vendor equipment."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPhysEntry 2 }

vdslPhysInvVendorID 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 expressed as readable characters
        in hexadecimal notation."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPhysEntry 3 }

vdslPhysInvVersionNumber OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE (0..16))
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The vendor specific version number sent by this Vtu
        as part of the initialization messages.  It is a copy
        of the binary version number field expressed as
        readable characters in hexadecimal notation."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPhysEntry 4 }

vdslPhysCurrSnrMgn OBJECT-TYPE
    SYNTAX       Integer32 (-127..127)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Noise Margin as seen by this Vtu with respect to its
        received signal in 0.25dB.  The effective range is
        -31.75 to +31.75 dB."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
     ::= { vdslPhysEntry 5 }

vdslPhysCurrAtn OBJECT-TYPE
    SYNTAX       Gauge32 (0..255)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Measured difference in the total power transmitted by
        the peer Vtu and the total power received by this Vtu.
        The effective range is 0 to +63.75 dB."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
     ::= { vdslPhysEntry 6 }

vdslPhysCurrStatus OBJECT-TYPE
    SYNTAX       BITS
        {
        noDefect(0),
        lossOfFraming(1),
        lossOfSignal(2),
        lossOfPower(3),
        lossOfSignalQuality(4),
        lossOfLink(5),
        dataInitFailure(6),
        configInitFailure(7),
        protocolInitFailure(8),
        noPeerVtuPresent(9)
        }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates current state of the Vtu line.  This is a
        bit-map of possible conditions.  The various bit
        positions are:

        0   noDefect             There are no defects on the line.

        1   lossOfFraming        Vtu failure due to not receiving
                                 a valid frame.

        2   lossOfSignal         Vtu failure due to not receiving
                                 signal.

        3   lossOfPower          Vtu 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.

        5   lossOfLink           Vtu failure due to inability to
                                 link with peer Vtu.  Set whenever
                                 the transceiver is in the 'Warm
                                 Start' state.

        6   dataInitFailure      Vtu failure during initialization
                                 due to bit errors corrupting
                                 startup exchange data.

        7   configInitFailure    Vtu failure during initialization
                                 due to peer Vtu not able to
                                 support requested configuration.

        8   protocolInitFailure  Vtu failure during initialization
                                 due to incompatible protocol used
                                 by the peer Vtu.

        9   noPeerVtuPresent     Vtu failure during initialization
                                 due to no activation sequence
                                 detected from peer Vtu.

        This is intended to supplement ifOperStatus."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
     ::= { vdslPhysEntry 7 }

vdslPhysCurrOutputPwr OBJECT-TYPE
    SYNTAX       Integer32 (0..160)
    UNITS        "0.1dBm"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Measured total output power transmitted by this VTU.
        This is the measurement that was reported during
        the last activation sequence."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPhysEntry 8 }

vdslPhysCurrAttainableRate OBJECT-TYPE
    SYNTAX       Gauge32
    UNITS        "kbps"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Indicates the maximum currently attainable data rate
        in steps of 1000 bits/second by the Vtu.  This value
        will be equal to or greater than vdslPhysCurrLineRate.
        Note that for SCM, the minimum and maximum data rates
        are equal.  Note: 1 kbps = 1000 bps."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPhysEntry 9 }

vdslPhysCurrLineRate OBJECT-TYPE
    SYNTAX       Gauge32
    UNITS        "kbps"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Indicates the current data rate in steps of 1000
        bits/second by the Vtu.  This value will be less than
        or equal to vdslPhysCurrAttainableRate.  Note: 1 kbps =
        1000 bps."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPhysEntry 10 }

vdslChanTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslChanEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides one row for each Vtu channel.
        VDSL channel interfaces are those ifEntries where
        ifType is equal to interleave(124) or fast(125)."
    ::= { vdslMibObjects 3 }

vdslChanEntry OBJECT-TYPE
    SYNTAX       VdslChanEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry in the vdslChanTable."
    INDEX { ifIndex,
            vdslPhysSide }
    ::= { vdslChanTable 1 }

VdslChanEntry ::=
    SEQUENCE
        {
        vdslChanInterleaveDelay        Gauge32,
        vdslChanCrcBlockLength         Gauge32,
        vdslChanCurrTxRate             Gauge32,
        vdslChanCurrTxSlowBurstProtect Gauge32,
        vdslChanCurrTxFastFec          Gauge32
        }

vdslChanInterleaveDelay OBJECT-TYPE
    SYNTAX       Gauge32
    UNITS        "milliseconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Interleave Delay for this channel.

        Interleave delay applies only to the interleave
        (slow) 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), return
        a value of zero."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanEntry 1 }

vdslChanCrcBlockLength OBJECT-TYPE
    SYNTAX       Gauge32
    UNITS        "bytes"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Indicates the length of the channel data-block
        on which the CRC operates."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanEntry 2 }

vdslChanCurrTxRate OBJECT-TYPE
    SYNTAX       Gauge32
    UNITS        "kbps"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Actual transmit data rate on this channel.  Note: 1
        kbps = 1000 bps."
    ::= { vdslChanEntry 3 }

vdslChanCurrTxSlowBurstProtect OBJECT-TYPE
    SYNTAX       Gauge32 (0..1275)
    UNITS        "microseconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Actual level of impulse noise (burst) protection
        for an interleaved (slow) channel.  This parameter is
        not applicable to fast channels.  For fast channels,
        a value of zero shall be returned."
    REFERENCE    "ITU-T G.997.1, section 7.3.2.3"
    ::= { vdslChanEntry 4 }

vdslChanCurrTxFastFec OBJECT-TYPE
    SYNTAX       Gauge32 (0..50)
    UNITS        "%"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Actual Forward Error Correction (FEC) redundancy
        related overhead for a fast channel.  This parameter
        is not applicable to an interleaved (slow) channel.
        For interleaved channels, a value of zero shall be
        returned."
    ::= { vdslChanEntry 5 }

vdslPerfDataTable       OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslPerfDataEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides one row for each VDSL physical
        interface.  VDSL physical interfaces are those ifEntries
        where ifType is equal to vdsl(97)."
    ::= { vdslMibObjects 4 }

vdslPerfDataEntry       OBJECT-TYPE
    SYNTAX        VdslPerfDataEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "An entry in the vdslPerfDataTable."
    INDEX { ifIndex,
            vdslPhysSide }
    ::= { vdslPerfDataTable 1 }

VdslPerfDataEntry ::=
    SEQUENCE
        {
        vdslPerfDataValidIntervals         HCPerfValidIntervals,
        vdslPerfDataInvalidIntervals       HCPerfInvalidIntervals,
        vdslPerfDataLofs                   Unsigned32,
        vdslPerfDataLoss                   Unsigned32,
        vdslPerfDataLprs                   Unsigned32,
        vdslPerfDataLols                   Unsigned32,
        vdslPerfDataESs                    Unsigned32,
        vdslPerfDataSESs                   Unsigned32,
        vdslPerfDataUASs                   Unsigned32,
        vdslPerfDataInits                  Unsigned32,
        vdslPerfDataCurr15MinTimeElapsed   HCPerfTimeElapsed,
        vdslPerfDataCurr15MinLofs          HCPerfCurrentCount,
        vdslPerfDataCurr15MinLoss          HCPerfCurrentCount,
        vdslPerfDataCurr15MinLprs          HCPerfCurrentCount,
        vdslPerfDataCurr15MinLols          HCPerfCurrentCount,
        vdslPerfDataCurr15MinESs           HCPerfCurrentCount,
        vdslPerfDataCurr15MinSESs          HCPerfCurrentCount,
        vdslPerfDataCurr15MinUASs          HCPerfCurrentCount,
        vdslPerfDataCurr15MinInits         HCPerfCurrentCount,
        vdslPerfData1DayValidIntervals     HCPerfValidIntervals,
        vdslPerfData1DayInvalidIntervals   HCPerfInvalidIntervals,
        vdslPerfDataCurr1DayTimeElapsed    HCPerfTimeElapsed,
        vdslPerfDataCurr1DayLofs           Unsigned32,
        vdslPerfDataCurr1DayLoss           Unsigned32,
        vdslPerfDataCurr1DayLprs           Unsigned32,
        vdslPerfDataCurr1DayLols           Unsigned32,
        vdslPerfDataCurr1DayESs            Unsigned32,
        vdslPerfDataCurr1DaySESs           Unsigned32,
        vdslPerfDataCurr1DayUASs           Unsigned32,
        vdslPerfDataCurr1DayInits          Unsigned32
        }

vdslPerfDataValidIntervals OBJECT-TYPE
    SYNTAX       HCPerfValidIntervals
    UNITS        "intervals"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Valid Intervals per definition found in
        HC-PerfHist-TC-MIB."
    ::= { vdslPerfDataEntry 1 }

vdslPerfDataInvalidIntervals OBJECT-TYPE
    SYNTAX       HCPerfInvalidIntervals
    UNITS        "intervals"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Invalid Intervals per definition found in
        HC-PerfHist-TC-MIB."
    ::= { vdslPerfDataEntry 2 }

vdslPerfDataLofs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds since the unit was last reset that there
        was Loss of Framing."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 3 }

vdslPerfDataLoss OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds since the unit was last reset that there
        was Loss of Signal."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 4 }

vdslPerfDataLprs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds since the unit was last reset that there
        was Loss of Power."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 5 }

vdslPerfDataLols OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds since the unit was last reset that there
        was Loss of Link."
    ::= { vdslPerfDataEntry 6 }

vdslPerfDataESs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Errored Seconds since the unit was last reset.
        An Errored Second is a one-second interval containing one
        or more CRC anomalies, or one or more LOS or LOF defects."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 7 }

vdslPerfDataSESs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Severely Errored Seconds since the unit was last
        reset."
    ::= { vdslPerfDataEntry 8 }

vdslPerfDataUASs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Unavailable Seconds since the unit was last
        reset."
    ::= { vdslPerfDataEntry 9 }

vdslPerfDataInits OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "occurrences"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of the line initialization attempts since the unit
        was last reset.  This count includes both successful and
        failed attempts."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 10 }

vdslPerfDataCurr15MinTimeElapsed OBJECT-TYPE
    SYNTAX       HCPerfTimeElapsed
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Total elapsed seconds in this interval."
    ::= { vdslPerfDataEntry 11 }

vdslPerfDataCurr15MinLofs OBJECT-TYPE
    SYNTAX       HCPerfCurrentCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds during this interval that there
        was Loss of Framing."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 12 }

vdslPerfDataCurr15MinLoss OBJECT-TYPE
    SYNTAX       HCPerfCurrentCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds during this interval that there
        was Loss of Signal."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 13 }

vdslPerfDataCurr15MinLprs OBJECT-TYPE
    SYNTAX       HCPerfCurrentCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds during this interval that there
        was Loss of Power."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 14 }

vdslPerfDataCurr15MinLols OBJECT-TYPE
    SYNTAX       HCPerfCurrentCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds during this interval that there
        was Loss of Link."
    ::= { vdslPerfDataEntry 15 }

vdslPerfDataCurr15MinESs OBJECT-TYPE
    SYNTAX       HCPerfCurrentCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Errored Seconds during this interval.  An Errored
        Second is a one-second interval containing one or more CRC
        anomalies, or one or more LOS or LOF defects."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 16 }

vdslPerfDataCurr15MinSESs OBJECT-TYPE
    SYNTAX       HCPerfCurrentCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Severely Errored Seconds during this interval."
    ::= { vdslPerfDataEntry 17 }

vdslPerfDataCurr15MinUASs OBJECT-TYPE
    SYNTAX       HCPerfCurrentCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Unavailable Seconds during this interval."
    ::= { vdslPerfDataEntry 18 }

vdslPerfDataCurr15MinInits OBJECT-TYPE
    SYNTAX       HCPerfCurrentCount
    UNITS        "occurrences"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of the line initialization attempts during this
        interval.  This count includes both successful and
        failed attempts."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfDataEntry 19 }

vdslPerfData1DayValidIntervals OBJECT-TYPE
    SYNTAX       HCPerfValidIntervals
    UNITS        "intervals"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Valid Intervals per definition found in
        HC-PerfHist-TC-MIB."
    ::= { vdslPerfDataEntry 20 }

vdslPerfData1DayInvalidIntervals OBJECT-TYPE
    SYNTAX       HCPerfInvalidIntervals
    UNITS        "intervals"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Invalid Intervals per definition found in
        HC-PerfHist-TC-MIB."
    ::= { vdslPerfDataEntry 21 }

vdslPerfDataCurr1DayTimeElapsed OBJECT-TYPE
    SYNTAX       HCPerfTimeElapsed
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Number of seconds that have elapsed since the beginning
         of the current 1-day interval."
    ::= { vdslPerfDataEntry 22 }

vdslPerfDataCurr1DayLofs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Loss of Framing (LOF) Seconds since the
        beginning of the current 1-day interval."
    ::= { vdslPerfDataEntry 23 }

vdslPerfDataCurr1DayLoss OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Loss of Signal (LOS) Seconds since the beginning
        of the current 1-day interval."
    ::= { vdslPerfDataEntry 24 }

vdslPerfDataCurr1DayLprs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Loss of Power (LPR) Seconds since the beginning
        of the current 1-day interval."
    ::= { vdslPerfDataEntry 25 }

vdslPerfDataCurr1DayLols OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Loss of Link (LOL) Seconds since the beginning
        of the current 1-day interval."
    ::= { vdslPerfDataEntry 26 }

vdslPerfDataCurr1DayESs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Errored Seconds (ES) since the beginning
        of the current 1-day interval."
    ::= { vdslPerfDataEntry 27 }

vdslPerfDataCurr1DaySESs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Severely Errored Seconds (SES) since the
        beginning of the current 1-day interval."
    ::= { vdslPerfDataEntry 28 }

vdslPerfDataCurr1DayUASs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Unavailable Seconds (UAS) since the beginning
        of the current 1-day interval."
    ::= { vdslPerfDataEntry 29 }

vdslPerfDataCurr1DayInits OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of the line initialization attempts since the
        beginning of the current 1-day interval.  This count
        includes both successful and failed attempts."
    ::= { vdslPerfDataEntry 30 }

vdslPerfIntervalTable       OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslPerfIntervalEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides one row for each Vtu performance
        data collection interval.  VDSL physical interfaces are

        those ifEntries where ifType is equal to vdsl(97)."
    ::= { vdslMibObjects 5 }

vdslPerfIntervalEntry       OBJECT-TYPE
    SYNTAX        VdslPerfIntervalEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "An entry in the vdslPerfIntervalTable."
    INDEX { ifIndex,
            vdslPhysSide,
            vdslPerfIntervalNumber }
    ::= { vdslPerfIntervalTable 1 }

VdslPerfIntervalEntry ::=
    SEQUENCE
        {
        vdslPerfIntervalNumber             Unsigned32,
        vdslPerfIntervalLofs               HCPerfIntervalCount,
        vdslPerfIntervalLoss               HCPerfIntervalCount,
        vdslPerfIntervalLprs               HCPerfIntervalCount,
        vdslPerfIntervalLols               HCPerfIntervalCount,
        vdslPerfIntervalESs                HCPerfIntervalCount,
        vdslPerfIntervalSESs               HCPerfIntervalCount,
        vdslPerfIntervalUASs               HCPerfIntervalCount,
        vdslPerfIntervalInits              HCPerfIntervalCount
        }

vdslPerfIntervalNumber OBJECT-TYPE
    SYNTAX       Unsigned32 (1..96)
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "Performance Data Interval number 1 is the most recent
        previous interval; interval 96 is 24 hours ago.
        Intervals 2 to 96 are optional."
    ::= { vdslPerfIntervalEntry 1 }

vdslPerfIntervalLofs OBJECT-TYPE
    SYNTAX       HCPerfIntervalCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds in the interval when there was Loss
        of Framing."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfIntervalEntry 2 }

vdslPerfIntervalLoss OBJECT-TYPE
    SYNTAX       HCPerfIntervalCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds in the interval when there was Loss
        of Signal."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfIntervalEntry 3 }

vdslPerfIntervalLprs OBJECT-TYPE
    SYNTAX       HCPerfIntervalCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds in the interval when there was Loss
        of Power."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfIntervalEntry 4 }

vdslPerfIntervalLols OBJECT-TYPE
    SYNTAX       HCPerfIntervalCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of seconds in the interval when there was Loss
        of Link."
    ::= { vdslPerfIntervalEntry 5 }

vdslPerfIntervalESs OBJECT-TYPE
    SYNTAX       HCPerfIntervalCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Errored Seconds (ES) in the interval.  An Errored
        Second is a one-second interval containing one or more CRC
        anomalies, one or more LOS or LOF defects."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfIntervalEntry 6 }

vdslPerfIntervalSESs OBJECT-TYPE
    SYNTAX       HCPerfIntervalCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Severely Errored Seconds in the interval."
    ::= { vdslPerfIntervalEntry 7 }

vdslPerfIntervalUASs OBJECT-TYPE
    SYNTAX       HCPerfIntervalCount
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of Unavailable Seconds in the interval."
    ::= { vdslPerfIntervalEntry 8 }

vdslPerfIntervalInits OBJECT-TYPE
    SYNTAX       HCPerfIntervalCount
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of the line initialization attempts during this
        interval.  This count includes both successful and
        failed attempts."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerfIntervalEntry 9 }

vdslPerf1DayIntervalTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslPerf1DayIntervalEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides one row for each VDSL performance
        data collection interval.  This table contains live data
        from equipment.  As such, it is NOT persistent."
    ::= { vdslMibObjects 6 }

vdslPerf1DayIntervalEntry OBJECT-TYPE
    SYNTAX       VdslPerf1DayIntervalEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry in the vdslPerf1DayIntervalTable."
    INDEX { ifIndex,
            vdslPhysSide,
            vdslPerf1DayIntervalNumber }
    ::= { vdslPerf1DayIntervalTable 1 }

VdslPerf1DayIntervalEntry ::=
    SEQUENCE

    {
    vdslPerf1DayIntervalNumber             Unsigned32,
    vdslPerf1DayIntervalMoniSecs           HCPerfTimeElapsed,
    vdslPerf1DayIntervalLofs               Unsigned32,
    vdslPerf1DayIntervalLoss               Unsigned32,
    vdslPerf1DayIntervalLprs               Unsigned32,
    vdslPerf1DayIntervalLols               Unsigned32,
    vdslPerf1DayIntervalESs                Unsigned32,
    vdslPerf1DayIntervalSESs               Unsigned32,
    vdslPerf1DayIntervalUASs               Unsigned32,
    vdslPerf1DayIntervalInits              Unsigned32
    }

vdslPerf1DayIntervalNumber OBJECT-TYPE
    SYNTAX       Unsigned32 (1..30)
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "History Data Interval number.  Interval 1 is the most
        recent previous day; interval 30 is 30 days ago.  Intervals
        2 to 30 are optional."
    ::= { vdslPerf1DayIntervalEntry 1 }

vdslPerf1DayIntervalMoniSecs OBJECT-TYPE
    SYNTAX       HCPerfTimeElapsed
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The amount of time in the 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."
    ::= { vdslPerf1DayIntervalEntry 2 }

vdslPerf1DayIntervalLofs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Count of Loss of Frame (LOF) Seconds during the 1-day
         interval as measured by vdslPerf1DayIntervalMoniSecs."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerf1DayIntervalEntry 3 }

vdslPerf1DayIntervalLoss OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Count of Loss of Signal (LOS) Seconds during the 1-day
         interval as measured by vdslPerf1DayIntervalMoniSecs."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerf1DayIntervalEntry 4 }

vdslPerf1DayIntervalLprs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Count of Loss of Power (LPR) Seconds during the 1-day
         interval as measured by vdslPerf1DayIntervalMoniSecs."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerf1DayIntervalEntry 5 }

vdslPerf1DayIntervalLols OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Count of Loss of Link (LOL) Seconds during the 1-day
         interval as measured by vdslPerf1DayIntervalMoniSecs."
    ::= { vdslPerf1DayIntervalEntry 6 }

vdslPerf1DayIntervalESs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Count of Errored Seconds (ES) during the 1-day
         interval as measured by vdslPerf1DayIntervalMoniSecs."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerf1DayIntervalEntry 7 }

vdslPerf1DayIntervalSESs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Count of Severely Errored Seconds (SES) during the 1-day
         interval as measured by vdslPerf1DayIntervalMoniSecs."
    ::= { vdslPerf1DayIntervalEntry 8 }

vdslPerf1DayIntervalUASs OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Count of Unavailable Seconds (UAS) during the 1-day
         interval as measured by vdslPerf1DayIntervalMoniSecs."
    ::= { vdslPerf1DayIntervalEntry 9 }

vdslPerf1DayIntervalInits OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Count of the line initialization attempts during the
        1-day interval as measured by vdslPerf1DayIntervalMoniSecs.
        This count includes both successful and failed attempts."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslPerf1DayIntervalEntry 10 }

vdslChanPerfDataTable       OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslChanPerfDataEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides one row for each Vtu channel.
        VDSL channel interfaces are those ifEntries where
        ifType is equal to interleave(124) or fast(125)."
    ::= { vdslMibObjects 7 }

vdslChanPerfDataEntry OBJECT-TYPE
    SYNTAX        VdslChanPerfDataEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "An entry in the vdslChanPerfDataTable."
    INDEX { ifIndex,
            vdslPhysSide }
    ::= { vdslChanPerfDataTable 1 }

VdslChanPerfDataEntry ::=
    SEQUENCE

        {
        vdslChanValidIntervals         HCPerfValidIntervals,
        vdslChanInvalidIntervals       HCPerfInvalidIntervals,
        vdslChanFixedOctets            ZeroBasedCounter64,
        vdslChanBadBlks                ZeroBasedCounter64,
        vdslChanCurr15MinTimeElapsed   HCPerfTimeElapsed,
        vdslChanCurr15MinFixedOctets   HCPerfCurrentCount,
        vdslChanCurr15MinBadBlks       HCPerfCurrentCount,
        vdslChan1DayValidIntervals     HCPerfValidIntervals,
        vdslChan1DayInvalidIntervals   HCPerfInvalidIntervals,
        vdslChanCurr1DayTimeElapsed    HCPerfTimeElapsed,
        vdslChanCurr1DayFixedOctets    HCPerfCurrentCount,
        vdslChanCurr1DayBadBlks        HCPerfCurrentCount
        }

vdslChanValidIntervals OBJECT-TYPE
    SYNTAX        HCPerfValidIntervals
    UNITS        "intervals"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Valid Intervals per definition found in
        HC-PerfHist-TC-MIB."
    ::= { vdslChanPerfDataEntry 1 }

vdslChanInvalidIntervals OBJECT-TYPE
    SYNTAX        HCPerfInvalidIntervals
    UNITS        "intervals"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Invalid Intervals per definition found in
        HC-PerfHist-TC-MIB."
    ::= { vdslChanPerfDataEntry 2 }

vdslChanFixedOctets OBJECT-TYPE
    SYNTAX        ZeroBasedCounter64
    UNITS         "octets"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of corrected octets since the unit was last reset."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanPerfDataEntry 3 }

vdslChanBadBlks OBJECT-TYPE
    SYNTAX        ZeroBasedCounter64
    UNITS         "blocks"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of uncorrectable blocks since the unit was last
        reset."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanPerfDataEntry 4 }

vdslChanCurr15MinTimeElapsed OBJECT-TYPE
    SYNTAX        HCPerfTimeElapsed
    UNITS         "seconds"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Total elapsed seconds in this interval."
    ::= { vdslChanPerfDataEntry 5 }

vdslChanCurr15MinFixedOctets OBJECT-TYPE
    SYNTAX        HCPerfCurrentCount
    UNITS         "octets"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of corrected octets in this interval."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanPerfDataEntry 6 }

vdslChanCurr15MinBadBlks OBJECT-TYPE
    SYNTAX        HCPerfCurrentCount
    UNITS         "blocks"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of uncorrectable blocks in this interval."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanPerfDataEntry 7 }

vdslChan1DayValidIntervals OBJECT-TYPE
    SYNTAX        HCPerfValidIntervals
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Valid Intervals per definition found in
        HC-PerfHist-TC-MIB."
    ::= { vdslChanPerfDataEntry 8 }

vdslChan1DayInvalidIntervals OBJECT-TYPE
    SYNTAX        HCPerfInvalidIntervals
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Invalid Intervals per definition found in
        HC-PerfHist-TC-MIB."
    ::= { vdslChanPerfDataEntry 9 }

vdslChanCurr1DayTimeElapsed OBJECT-TYPE
    SYNTAX       HCPerfTimeElapsed
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
         "Number of seconds that have elapsed since the beginning
         of the current 1-day interval."
    ::= { vdslChanPerfDataEntry 10 }

vdslChanCurr1DayFixedOctets OBJECT-TYPE
    SYNTAX        HCPerfCurrentCount
    UNITS         "octets"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of corrected octets since the beginning of the
        current 1-day interval."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanPerfDataEntry 11 }

vdslChanCurr1DayBadBlks OBJECT-TYPE
    SYNTAX        HCPerfCurrentCount
    UNITS         "blocks"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of uncorrectable blocks since the beginning of the
        current 1-day interval."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanPerfDataEntry 12 }

vdslChanIntervalTable       OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslChanIntervalEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides one row for each Vtu channel data
        collection interval.  VDSL channel interfaces are those
        ifEntries where ifType is equal to interleave(124) or
        fast(125)."
    ::= { vdslMibObjects 8 }

vdslChanIntervalEntry OBJECT-TYPE
    SYNTAX        VdslChanIntervalEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "An entry in the vdslChanIntervalTable."
    INDEX { ifIndex,
            vdslPhysSide,
            vdslChanIntervalNumber }
    ::= { vdslChanIntervalTable 1 }

VdslChanIntervalEntry ::=
    SEQUENCE
        {
        vdslChanIntervalNumber         Unsigned32,
        vdslChanIntervalFixedOctets    HCPerfIntervalCount,
        vdslChanIntervalBadBlks        HCPerfIntervalCount
        }

vdslChanIntervalNumber OBJECT-TYPE
    SYNTAX        Unsigned32 (1..96)
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Performance Data Interval number 1 is the most recent
        previous interval; interval 96 is 24 hours ago.
        Intervals 2 to 96 are optional."
    ::= { vdslChanIntervalEntry 1 }

vdslChanIntervalFixedOctets OBJECT-TYPE
    SYNTAX        HCPerfIntervalCount
    UNITS        "octets"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of corrected octets in this interval."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanIntervalEntry 2 }

vdslChanIntervalBadBlks OBJECT-TYPE
    SYNTAX        HCPerfIntervalCount
    UNITS        "blocks"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of uncorrectable blocks in this interval."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChanIntervalEntry 3 }

vdslChan1DayIntervalTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslChan1DayIntervalEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides one row for each VDSL performance
        data collection interval.  This table contains live data
        from equipment.  As such, it is NOT persistent."
    ::= { vdslMibObjects 9 }

vdslChan1DayIntervalEntry OBJECT-TYPE
    SYNTAX       VdslChan1DayIntervalEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry in the vdslChan1DayIntervalTable."
    INDEX { ifIndex,
            vdslPhysSide,
            vdslChan1DayIntervalNumber }
    ::= { vdslChan1DayIntervalTable 1 }

VdslChan1DayIntervalEntry ::=
    SEQUENCE
    {
    vdslChan1DayIntervalNumber         Unsigned32,
    vdslChan1DayIntervalMoniSecs       HCPerfTimeElapsed,
    vdslChan1DayIntervalFixedOctets    HCPerfCurrentCount,
    vdslChan1DayIntervalBadBlks        HCPerfCurrentCount
    }

vdslChan1DayIntervalNumber OBJECT-TYPE
    SYNTAX       Unsigned32 (1..30)
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "History Data Interval number.  Interval 1 is the most
        recent previous day; interval 30 is 30 days ago.  Intervals
        2 to 30 are optional."
    ::= { vdslChan1DayIntervalEntry 1 }

vdslChan1DayIntervalMoniSecs OBJECT-TYPE
    SYNTAX       HCPerfTimeElapsed
    UNITS        "seconds"
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The amount of time in the 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."
    ::= { vdslChan1DayIntervalEntry 2 }

vdslChan1DayIntervalFixedOctets OBJECT-TYPE
    SYNTAX        HCPerfCurrentCount
    UNITS        "octets"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of corrected octets in this interval."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChan1DayIntervalEntry 3 }

vdslChan1DayIntervalBadBlks OBJECT-TYPE
    SYNTAX        HCPerfCurrentCount
    UNITS        "blocks"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Count of uncorrectable blocks in this interval."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    ::= { vdslChan1DayIntervalEntry 4 }

--
-- profile tables
--

vdslLineConfProfileTable OBJECT-TYPE
    SYNTAX         SEQUENCE OF VdslLineConfProfileEntry
    MAX-ACCESS     not-accessible
    STATUS         current
    DESCRIPTION
        "This table contains information on the VDSL line
        configuration.  One entry in this table reflects a
        profile defined by a manager which can be used to
        configure the VDSL line.

        Entries in this table MUST be maintained in a
        persistent manner."
    ::= { vdslMibObjects 11 }

vdslLineConfProfileEntry OBJECT-TYPE
    SYNTAX         VdslLineConfProfileEntry
    MAX-ACCESS     not-accessible
    STATUS         current
    DESCRIPTION
        "Each entry consists of a list of parameters that
        represents the configuration of a VDSL line.

        A default profile with an index of 'DEFVAL', will
        always exist and its parameters will be set to vendor
        specific values, unless otherwise specified in this
        document."
    INDEX { vdslLineConfProfileName }
    ::= { vdslLineConfProfileTable 1 }

VdslLineConfProfileEntry ::=
    SEQUENCE
        {
        vdslLineConfProfileName            SnmpAdminString,
        vdslLineConfDownRateMode           INTEGER,
        vdslLineConfUpRateMode             INTEGER,
        vdslLineConfDownMaxPwr             Unsigned32,
        vdslLineConfUpMaxPwr               Unsigned32,
        vdslLineConfDownMaxSnrMgn          Unsigned32,
        vdslLineConfDownMinSnrMgn          Unsigned32,
        vdslLineConfDownTargetSnrMgn       Unsigned32,
        vdslLineConfUpMaxSnrMgn            Unsigned32,
        vdslLineConfUpMinSnrMgn            Unsigned32,
        vdslLineConfUpTargetSnrMgn         Unsigned32,
        vdslLineConfDownFastMaxDataRate    Unsigned32,
        vdslLineConfDownFastMinDataRate    Unsigned32,
        vdslLineConfDownSlowMaxDataRate    Unsigned32,
        vdslLineConfDownSlowMinDataRate    Unsigned32,
        vdslLineConfUpFastMaxDataRate      Unsigned32,
        vdslLineConfUpFastMinDataRate      Unsigned32,
        vdslLineConfUpSlowMaxDataRate      Unsigned32,
        vdslLineConfUpSlowMinDataRate      Unsigned32,
        vdslLineConfDownRateRatio          Unsigned32,
        vdslLineConfUpRateRatio            Unsigned32,
        vdslLineConfDownMaxInterDelay      Unsigned32,
        vdslLineConfUpMaxInterDelay        Unsigned32,
        vdslLineConfDownPboControl         INTEGER,
        vdslLineConfUpPboControl           INTEGER,
        vdslLineConfDownPboLevel           Unsigned32,
        vdslLineConfUpPboLevel             Unsigned32,
        vdslLineConfDeploymentScenario     INTEGER,
        vdslLineConfAdslPresence           INTEGER,
        vdslLineConfApplicableStandard     INTEGER,
        vdslLineConfBandPlan               INTEGER,
        vdslLineConfBandPlanFx             Unsigned32,
        vdslLineConfBandOptUsage           INTEGER,
        vdslLineConfUpPsdTemplate          INTEGER,
        vdslLineConfDownPsdTemplate        INTEGER,
        vdslLineConfHamBandMask            BITS,
        vdslLineConfCustomNotch1Start      Unsigned32,
        vdslLineConfCustomNotch1Stop       Unsigned32,
        vdslLineConfCustomNotch2Start      Unsigned32,
        vdslLineConfCustomNotch2Stop       Unsigned32,
        vdslLineConfDownTargetSlowBurst    Unsigned32,
        vdslLineConfUpTargetSlowBurst      Unsigned32,
        vdslLineConfDownMaxFastFec         Unsigned32,
        vdslLineConfUpMaxFastFec           Unsigned32,
        vdslLineConfLineType               INTEGER,
        vdslLineConfProfRowStatus          RowStatus
        }

vdslLineConfProfileName OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE (1..32))
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This object identifies a row in this table.

        A default profile with an index of 'DEFVAL', will
        always exist and its parameters will be set to vendor
        specific values, unless otherwise specified in this
        document."
    ::= { vdslLineConfProfileEntry 1 }

vdslLineConfDownRateMode OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 manual(1),
                 adaptAtInit(2)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the rate selection behavior for the line
        in the downstream direction.

        manual(1)       forces the rate to the configured rate
        adaptAtInit(2)  adapts the line based upon line quality."
    DEFVAL       { adaptAtInit }
    ::= { vdslLineConfProfileEntry 2 }

vdslLineConfUpRateMode OBJECT-TYPE
    SYNTAX       INTEGER

                 {
                 manual(1),
                 adaptAtInit(2)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the rate selection behavior for the line
        in the upstream direction.

        manual(1)       forces the rate to the configured rate
        adaptAtInit(2)  adapts the line based upon line quality."
    DEFVAL       { adaptAtInit }
    ::= { vdslLineConfProfileEntry 3 }

vdslLineConfDownMaxPwr OBJECT-TYPE
    SYNTAX       Unsigned32 (0..58)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum aggregate downstream power
        level in the range 0 to 14.5 dBm."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 4 }

vdslLineConfUpMaxPwr OBJECT-TYPE
    SYNTAX       Unsigned32 (0..58)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum aggregate upstream power
        level in the range 0 to 14.5 dBm."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 5 }

vdslLineConfDownMaxSnrMgn OBJECT-TYPE
    SYNTAX       Unsigned32 (0..127)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum downstream Signal/Noise Margin
        in units of 0.25 dB, for a range of 0 to 31.75 dB."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 6 }

vdslLineConfDownMinSnrMgn OBJECT-TYPE
    SYNTAX       Unsigned32 (0..127)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the minimum downstream Signal/Noise Margin
        in units of 0.25 dB, for a range of 0 to 31.75 dB."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 7 }

vdslLineConfDownTargetSnrMgn OBJECT-TYPE
    SYNTAX       Unsigned32 (0..127)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the target downstream Signal/Noise Margin
        in units of 0.25 dB, for a range of 0 to 31.75 dB.
        This is the Noise Margin the transceivers must achieve
        with a BER of 10^-7 or better to successfully complete
        initialization."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 8 }

vdslLineConfUpMaxSnrMgn OBJECT-TYPE
    SYNTAX       Unsigned32 (0..127)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum upstream Signal/Noise Margin
        in units of 0.25 dB, for a range of 0 to 31.75 dB."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 9 }

vdslLineConfUpMinSnrMgn OBJECT-TYPE
    SYNTAX       Unsigned32 (0..127)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the minimum upstream Signal/Noise Margin
        in units of 0.25 dB, for a range of 0 to 31.75 dB."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 10 }

vdslLineConfUpTargetSnrMgn OBJECT-TYPE
    SYNTAX       Unsigned32 (0..127)
    UNITS        "0.25dBm"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the target upstream Signal/Noise Margin in
        units of 0.25 dB, for a range of 0 to 31.75 dB.  This
        is the Noise Margin the transceivers must achieve with
        a BER of 10^-7 or better to successfully complete
        initialization."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 11 }

vdslLineConfDownFastMaxDataRate OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kbps"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum downstream fast channel
        data rate in steps of 1000 bits/second."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 12 }

vdslLineConfDownFastMinDataRate OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kbps"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the minimum downstream fast channel
        data rate in steps of 1000 bits/second."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 13 }

vdslLineConfDownSlowMaxDataRate OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kbps"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum downstream slow channel
        data rate in steps of 1000 bits/second.

        The maximum aggregate downstream transmit speed
        of the line can be derived from the sum of maximum
        downstream fast and slow channel data rates."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 14 }

vdslLineConfDownSlowMinDataRate OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kbps"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the minimum downstream slow channel
        data rate in steps of 1000 bits/second.

        The minimum aggregate downstream transmit speed
        of the line can be derived from the sum of minimum
        downstream fast and slow channel data rates."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 15 }

vdslLineConfUpFastMaxDataRate OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kbps"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum upstream fast channel
        data rate in steps of 1000 bits/second.

        The maximum aggregate upstream transmit speed
        of the line can be derived from the sum of maximum
        upstream fast and slow channel data rates."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 16 }

vdslLineConfUpFastMinDataRate OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kbps"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the minimum upstream fast channel
        data rate in steps of 1000 bits/second.

        The minimum aggregate upstream transmit speed
        of the line can be derived from the sum of minimum
        upstream fast and slow channel data rates."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 17 }

vdslLineConfUpSlowMaxDataRate OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kbps"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum upstream slow channel
        data rate in steps of 1000 bits/second."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 18 }

vdslLineConfUpSlowMinDataRate OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kbps"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the minimum upstream slow channel
        data rate in steps of 1000 bits/second."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 19 }

vdslLineConfDownRateRatio OBJECT-TYPE
    SYNTAX       Unsigned32 (0..100)
    UNITS        "percent"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "For dynamic rate adaptation at startup, the allocation
        of data rate in excess of the minimum data rate for each
        channel is controlled by the object.  This object specifies
        the ratio of the allocation of the excess data rate between
        the fast and the slow channels.  This allocation represents
        downstream Fast Channel Allocation / Slow Channel
        Allocation."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 20 }

vdslLineConfUpRateRatio OBJECT-TYPE
    SYNTAX       Unsigned32 (0..100)
    UNITS        "percent"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "For dynamic rate adaptation at startup, the allocation
        of data rate in excess of the minimum data rate for each
        channel is controlled by the object.  This object specifies
        the ratio of the allocation of the excess data rate between
        the fast and the slow channels.  This allocation represents
        upstream Fast Channel Allocation/Slow Channel Allocation."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 21 }

vdslLineConfDownMaxInterDelay OBJECT-TYPE
    SYNTAX       Unsigned32 (0..255)
    UNITS        "milliseconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum interleave delay for the
        downstream slow channel."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 22 }

vdslLineConfUpMaxInterDelay OBJECT-TYPE
    SYNTAX       Unsigned32 (0..255)
    UNITS        "milliseconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the maximum interleave delay for the
        upstream slow channel."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 23 }

vdslLineConfDownPboControl OBJECT-TYPE
    SYNTAX       INTEGER
                    {
                 disabled(1),
                 auto(2),
                 manual(3)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Downstream power backoff (PBO) control for this
        line.  For transceivers which do not support downstream
        PBO control, this object MUST be fixed at disabled(1).
        If auto(2) is selected, the transceiver will automatically
        adjust the power backoff.  If manual(3) is selected,
        then the transceiver will use the value from
        vdslLineConfDownPboLevel."
    DEFVAL       { disabled }
    ::= { vdslLineConfProfileEntry 24 }

vdslLineConfUpPboControl OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 disabled(1),
                 auto(2),
                 manual(3)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Upstream power backoff (PBO) control for this
        line.  For transceivers which do not support upstream
        PBO control, this object MUST be fixed at disabled(1).
        If auto(2) is selected, the transceiver will automatically
        adjust the power backoff.  If manual(3) is selected,
        then the transceiver will use the value from
        vdslLineConfUpPboLevel."
    DEFVAL       { disabled }
    ::= { vdslLineConfProfileEntry 25 }

vdslLineConfDownPboLevel OBJECT-TYPE
    SYNTAX       Unsigned32 (0..160)
    UNITS        "0.25dB"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the downstream backoff level to be used
        when vdslLineConfDownPboControl = manual(3)."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 26 }

vdslLineConfUpPboLevel OBJECT-TYPE
    SYNTAX       Unsigned32 (0..160)
    UNITS        "0.25dB"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the upstream backoff level to be used
        when vdslLineConfUpPboControl = manual(3)."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 27 }

vdslLineConfDeploymentScenario OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 fttCab(1),
                 fttEx(2),
                 other(3)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The VDSL line deployment scenario.  When using
        fttCab(1), the VTU-C is located in a street cabinet.
        When using fttEx(2), the VTU-C is located at the
        central office.  Changes to this value will have
        no effect on the transceiver."
    REFERENCE    "DSL Forum TR-057"
    DEFVAL       { fttCab }
    ::= { vdslLineConfProfileEntry 28 }

vdslLineConfAdslPresence OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 none(1),
                 adslOverPots(2),
                 adslOverISDN(3)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Indicates presence of ADSL service in the associated
        cable bundle/binder.

        none(1)         indicates no ADSL service in the bundle
        adslOverPots(2) indicates ADSL service over POTS is
                        present in the bundle
        adslOverISDN(3) indicates ADSL service over ISDN is
                        present in the bundle"
    DEFVAL       { none }
    ::= { vdslLineConfProfileEntry 29 }

vdslLineConfApplicableStandard OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 ansi(1),
                 etsi(2),
                 itu(3),
                 other(4)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The VDSL standard to be used for the line.

         ansi(1)      indicates ANSI standard
         etsi(2)      indicates ETSI standard
         itu(3)       indicates ITU standard
         other(4)     indicates a standard other than the above."
    DEFVAL       { ansi }
    ::= { vdslLineConfProfileEntry 30 }

vdslLineConfBandPlan OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 bandPlan997(1),
                 bandPlan998(2),
                 bandPlanFx(3),
                 other(4)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The VDSL band plan to be used for the line.

         bandPlan997(1) is to be used for
              ITU-T G.993.1 Bandplan-B
              ETSI Bandplan
              ANSI Plan 997

         bandPlan998(2) is to be used for
              ITU-T G.993.1 Bandplan-A
              ANSI Plan 998

         bandPlanFx(3) is to be used for
              ITU-T G.993.1 Bandplan-C.

         other(4) is to be used for
              non-standard bandplans.

         If this object is set to bandPlanFx(3), then the
         object vdslLineConfBandPlanFx MUST also be set."
    DEFVAL       { bandPlan997 }
    ::= { vdslLineConfProfileEntry 31 }

vdslLineConfBandPlanFx OBJECT-TYPE
    SYNTAX       Unsigned32 (3750..12000)
    UNITS        "kHz"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The frequency limit between bands D2 and U2 when
        vdslLineConfBandPlan is set to bandPlanFx(3)."
    DEFVAL       { 3750 }
    ::= { vdslLineConfProfileEntry 32 }

   vdslLineConfBandOptUsage OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 unused(1),
                 upstream(2),
                 downstream(3)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Defines the VDSL link use of the optional frequency
        range [25kHz - 138kHz] (Opt).

        unused(1)     indicates Opt is unused
        upstream(2)   indicates Opt usage is for upstream
        downstream(3) indicates Opt usage is for downstream."
    REFERENCE    "ITU-T G.993.1, section 6.1"
    DEFVAL       { unused }
    ::= { vdslLineConfProfileEntry 33 }

vdslLineConfUpPsdTemplate OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 templateMask1(1),
                 templateMask2(2)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The upstream PSD template to be used for the line.
        Here, templateMask1(1) refers to a notched mask that
        limits the transmitted PSD within the internationally
        standardized HAM (Handheld Amateur Radio) radio bands,
        while templateMask2(2) refers to an unnotched mask.

        The masks themselves depend upon the applicable
        standard being used (vdslLineConfApplicableStandard)."
    REFERENCE    "DSL TR-057"
    DEFVAL       { templateMask1 }
    ::= { vdslLineConfProfileEntry 34 }

vdslLineConfDownPsdTemplate OBJECT-TYPE
    SYNTAX       INTEGER
                 {
                 templateMask1(1),
                 templateMask2(2)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The downstream PSD template to be used for the line.
        Here, templateMask1(1) refers to a notched mask that
        limits the transmitted PSD within the internationally
        standardized HAM (Handheld Amateur Radio) radio bands,
        while templateMask2(2) refers to an unnotched mask.

        The masks themselves depend upon the applicable
        standard being used (vdslLineConfApplicableStandard)."
    REFERENCE    "DSL TR-057"
    DEFVAL       { templateMask1 }
    ::= { vdslLineConfProfileEntry 35 }

vdslLineConfHamBandMask OBJECT-TYPE
    SYNTAX       BITS
        {
        customNotch1(0),     -- custom (region-specific) notch
        customNotch2(1),     -- custom (region-specific) notch
        amateurBand30m(2),   -- amateur radio band notch
        amateurBand40m(3),   -- amateur radio band notch
        amateurBand80m(4),   -- amateur radio band notch
        amateurBand160m(5)   -- amateur radio band notch
        }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The transmit power spectral density mask code, used
        to avoid interference with HAM (Handheld Amateur Radio)
        radio bands by introducing power control (notching) in one
        or more of these bands.

        Amateur radio band notching is defined in the VDSL
        spectrum as follows:

        Band  Start Frequency     Stop Frequency
        ----  ------------------  --------------------------------
        30m   1810 kHz            2000 kHz
        40m   3500 kHz            3800 kHz (ETSI); 4000 kHz (ANSI)
        80m   7000 kHz            7100 kHz (ETSI); 7300 kHz (ANSI)
        160m  10100 kHz           10150 kHz

        Notching for each standard band can be enabled or disabled
        via the bit mask.

        Two custom notches may be specified.  If either of these
        are enabled via the bit mask, then the following objects
        MUST be specified:

        If customNotch1 is enabled, then both
            vdslLineConfCustomNotch1Start
            vdslLineConfCustomNotch1Stop
        MUST be specified.

        If customNotch2 is enabled, then both
            vdslLineConfCustomNotch2Start
            vdslLineConfCustomNotch2Stop
        MUST be specified."
    REFERENCE    "DSLF TR-057, section 2.6"
    DEFVAL       { { } }
    ::= { vdslLineConfProfileEntry 36 }

vdslLineConfCustomNotch1Start OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kHz"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the start frequency of custom HAM (Handheld
        Amateur Radio) notch 1.  vdslLineConfCustomNotch1Start MUST
        be less than or equal to vdslLineConfCustomNotch1Stop."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 37 }

vdslLineConfCustomNotch1Stop OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kHz"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the stop frequency of custom HAM (Handheld
        Amateur Radio) notch 1.  vdslLineConfCustomNotch1Stop MUST
        be greater than or equal to vdslLineConfCustomNotch1Start."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 38 }

vdslLineConfCustomNotch2Start OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kHz"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the start frequency of custom HAM (Handheld
        Amateur Radio) notch 2.  vdslLineConfCustomNotch2Start MUST
        be less than or equal to vdslLineConfCustomNotch2Stop."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 39 }

vdslLineConfCustomNotch2Stop OBJECT-TYPE
    SYNTAX       Unsigned32
    UNITS        "kHz"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the stop frequency of custom HAM (Handheld
        Amateur Radio) notch 2.  vdslLineConfCustomNotch2Stop MUST
        be greater than or equal to vdslLineConfCustomNotch2Start."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 40 }

vdslLineConfDownTargetSlowBurst OBJECT-TYPE
    SYNTAX       Unsigned32 (0..1275)
    UNITS        "microseconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the target level of impulse noise (burst)
        protection for an interleaved (slow) channel."
    REFERENCE    "ITU-T G.997.1, section 7.3.2.3"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 41 }

vdslLineConfUpTargetSlowBurst OBJECT-TYPE
    SYNTAX       Unsigned32 (0..1275)
    UNITS        "microseconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Specifies the target level of impulse noise (burst)
        protection for an interleaved (slow) channel."
    REFERENCE    "ITU-T G.997.1, section 7.3.2.3"
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 42 }

vdslLineConfDownMaxFastFec OBJECT-TYPE
    SYNTAX       Unsigned32 (0..50)
    UNITS        "%"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This parameter provisions the maximum level of Forward
        Error Correction (FEC) redundancy related overhead to
        be maintained for a fast channel."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 43 }

vdslLineConfUpMaxFastFec OBJECT-TYPE
    SYNTAX       Unsigned32 (0..50)
    UNITS        "%"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This parameter provisions the maximum level of Forward
        Error Correction (FEC) redundancy related overhead to
        be maintained for a fast channel."
    DEFVAL       { 0 }
    ::= { vdslLineConfProfileEntry 44 }

vdslLineConfLineType OBJECT-TYPE
    SYNTAX       INTEGER
        {
        noChannel(1),         -- no channels exist
        fastOnly(2),          -- only fast channel exists
        interleavedOnly(3),   -- only interleaved channel exists
        fastOrInterleaved(4), -- either fast or interleaved channel
                              -- exist, but only one at a time
        fastAndInterleaved(5) -- both fast and interleaved channels
                              -- exist
        }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This parameter provisions the VDSL physical entity at
        start-up by defining whether and how the line will be
        channelized, i.e., which channel type(s) are supported.
        If the line is to be channelized, the value will be other
        than noChannel(1).

        This configuration can be activated only during start-up.
        Afterwards, the value of vdslLineType coincides with the
        value of vdslLineConfLineType.  Depending on this value,
        the corresponding entries in the ifTable for the
        interleaved and the fast channels are enabled or disabled
        according to the value of their ifOperStatus.

        Defined values are:

        noChannel(1)          -- no channels exist
        fastOnly(2)           -- only fast channel exists
        interleavedOnly(3)    -- only interleaved channel exists
        fastOrInterleaved(4)  -- either fast or interleaved channel
                              -- exists, but only one at a time
        fastAndInterleaved(5) -- both fast and interleaved channels
                              -- exist

        Note that 'slow' and 'interleaved' refer to the same
        channel."
    REFERENCE    "T1E1.4/2000-009R3, Part 1, common spec"
    DEFVAL       { noChannel }
    ::= { vdslLineConfProfileEntry 45 }

vdslLineConfProfRowStatus 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.

        An 'active' profile may be modified at any time.  Note
        that some changes may require that any referenced lines be
        restarted (e.g., vdslLineConfLineType)."
    ::= { vdslLineConfProfileEntry 46 }

--
-- Alarm configuration profile table
--

vdslLineAlarmConfProfileTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF VdslLineAlarmConfProfileEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table contains information on the VDSL line alarm
        configuration.  One entry in this table reflects a profile
        defined by a manager which can be used to configure the
        VDSL line alarm thresholds.

        Entries in this table MUST be maintained in a
        persistent manner."
    ::= { vdslMibObjects 20 }

vdslLineAlarmConfProfileEntry OBJECT-TYPE
    SYNTAX       VdslLineAlarmConfProfileEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "Each entry consists of a list of parameters that
        represents the configuration of a VDSL line alarm
        profile.

        A default profile with an index of 'DEFVAL', will
        always exist and its parameters will be set to vendor
        specific values, unless otherwise specified in this
        document."
    INDEX { vdslLineAlarmConfProfileName }
    ::= { vdslLineAlarmConfProfileTable 1 }

VdslLineAlarmConfProfileEntry ::=
    SEQUENCE
        {
        vdslLineAlarmConfProfileName       SnmpAdminString,
        vdslLineAlarmConfThresh15MinLofs   HCPerfIntervalThreshold,
        vdslLineAlarmConfThresh15MinLoss   HCPerfIntervalThreshold,
        vdslLineAlarmConfThresh15MinLprs   HCPerfIntervalThreshold,
        vdslLineAlarmConfThresh15MinLols   HCPerfIntervalThreshold,
        vdslLineAlarmConfThresh15MinESs    HCPerfIntervalThreshold,
        vdslLineAlarmConfThresh15MinSESs   HCPerfIntervalThreshold,
        vdslLineAlarmConfThresh15MinUASs   HCPerfIntervalThreshold,
        vdslLineAlarmConfInitFailure       TruthValue,
        vdslLineAlarmConfProfRowStatus     RowStatus
        }

vdslLineAlarmConfProfileName OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE (1..32))
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "The name for this profile as specified by an
        administrator."
    ::= { vdslLineAlarmConfProfileEntry 1 }

vdslLineAlarmConfThresh15MinLofs OBJECT-TYPE
    SYNTAX       HCPerfIntervalThreshold
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This object configures the threshold for the number of
         loss of frame seconds (lofs) within any given 15-minute
         performance data collection interval.  If the value of
         loss of frame seconds in a particular 15-minute collection
         interval reaches/exceeds this value, a
         vdslPerfLofsThreshNotification notification will be
         generated.  No more than one notification will be sent
         per interval."
    DEFVAL       { 0 }
    ::= { vdslLineAlarmConfProfileEntry 2 }

vdslLineAlarmConfThresh15MinLoss OBJECT-TYPE
    SYNTAX       HCPerfIntervalThreshold
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This object configures the threshold for the number of
         loss of signal seconds (loss) within any given 15-minute
         performance data collection interval.  If the value of
         loss of signal seconds in a particular 15-minute
         collection interval reaches/exceeds this value, a
         vdslPerfLossThreshNotification notification will be
         generated.  One notification will be sent per interval
         per endpoint."
    DEFVAL       { 0 }
    ::= { vdslLineAlarmConfProfileEntry 3 }

vdslLineAlarmConfThresh15MinLprs OBJECT-TYPE
    SYNTAX       HCPerfIntervalThreshold
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This object configures the threshold for the number of
         loss of power seconds (lprs) within any given 15-minute
         performance data collection interval.  If the value of
         loss of power seconds in a particular 15-minute collection
         interval reaches/exceeds this value, a
         vdslPerfLprsThreshNotification notification will be
         generated.  No more than one notification will be sent
         per interval."
    DEFVAL       { 0 }
    ::= { vdslLineAlarmConfProfileEntry 4 }

vdslLineAlarmConfThresh15MinLols OBJECT-TYPE
    SYNTAX       HCPerfIntervalThreshold
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This object configures the threshold for the number of
         loss of link seconds (lols) within any given 15-minute
         performance data collection interval.  If the value of
         loss of power seconds in a particular 15-minute collection
         interval reaches/exceeds this value, a
         vdslPerfLolsThreshNotification notification will be
         generated.  No more than one notification will be sent
         per interval."
    DEFVAL       { 0 }
    ::= { vdslLineAlarmConfProfileEntry 5 }

vdslLineAlarmConfThresh15MinESs OBJECT-TYPE
    SYNTAX       HCPerfIntervalThreshold
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This object configures the threshold for the number of
         errored seconds (ESs) within any given 15-minute
         performance data collection interval.  If the value of
         errored seconds in a particular 15-minute collection
         interval reaches/exceeds this value, a
         vdslPerfESsThreshNotification notification will be
         generated.  No more than one notification will be sent
         per interval."
    DEFVAL       { 0 }
    ::= { vdslLineAlarmConfProfileEntry 6 }

vdslLineAlarmConfThresh15MinSESs OBJECT-TYPE
    SYNTAX       HCPerfIntervalThreshold
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This object configures the threshold for the number of
         severely errored seconds (SESs) within any given 15-minute
         performance data collection interval.  If the value of
         severely errored seconds in a particular 15-minute
         collection interval reaches/exceeds this value, a
         vdslPerfSESsThreshNotification notification will be
         generated.  No more than one notification will be sent
         per interval."
    DEFVAL       { 0 }
    ::= { vdslLineAlarmConfProfileEntry 7 }

vdslLineAlarmConfThresh15MinUASs OBJECT-TYPE
    SYNTAX       HCPerfIntervalThreshold
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This object configures the threshold for the number of
         unavailable seconds (UASs) within any given 15-minute
         performance data collection interval.  If the value of
         unavailable seconds in a particular 15-minute collection
         interval reaches/exceeds this value, a
         vdslPerfUASsThreshNotification notification will be
         generated.  No more than one notification will be sent
         per interval."
    DEFVAL       { 0 }
    ::= { vdslLineAlarmConfProfileEntry 8 }

vdslLineAlarmConfInitFailure OBJECT-TYPE
    SYNTAX       TruthValue
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "This object specifies if a vdslInitFailureNotification
        notification will be generated if an initialization
        failure occurs."
    DEFVAL       { false }
    ::= { vdslLineAlarmConfProfileEntry 9 }

vdslLineAlarmConfProfRowStatus 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.

        An 'active' profile may be modified at any time."
    ::= { vdslLineAlarmConfProfileEntry 10 }

-- Notification definitions

vdslNotifications OBJECT IDENTIFIER ::= { vdslLineMib 0 }

vdslPerfLofsThreshNotification NOTIFICATION-TYPE
    OBJECTS      {
                 vdslPerfDataCurr15MinLofs
                 }
    STATUS       current
    DESCRIPTION
        "Loss of Framing 15-minute interval threshold
         (vdslLineAlarmConfThresh15MinLofs) reached."
    ::= { vdslNotifications 1 }

vdslPerfLossThreshNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPerfDataCurr15MinLoss
                  }
    STATUS        current
    DESCRIPTION
        "Loss of Signal 15-minute interval threshold
        (vdslLineAlarmConfThresh15MinLoss) reached."
    ::= { vdslNotifications 2 }

vdslPerfLprsThreshNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPerfDataCurr15MinLprs
                  }
    STATUS        current
    DESCRIPTION
        "Loss of Power 15-minute interval threshold
        (vdslLineAlarmConfThresh15MinLprs) reached."
    ::= { vdslNotifications 3 }

vdslPerfLolsThreshNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPerfDataCurr15MinLols
                  }
    STATUS        current
    DESCRIPTION
        "Loss of Link 15-minute interval threshold
        (vdslLineAlarmConfThresh15MinLols) reached."
    ::= { vdslNotifications 4 }

vdslPerfESsThreshNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPerfDataCurr15MinESs
                  }
    STATUS        current
    DESCRIPTION
        "Errored Seconds 15-minute interval threshold
        (vdslLineAlarmConfThresh15MinESs) reached."
    ::= { vdslNotifications 5 }

vdslPerfSESsThreshNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPerfDataCurr15MinSESs
                  }
    STATUS        current
    DESCRIPTION
        "Severely Errored Seconds 15-minute interval threshold
        (vdslLineAlarmConfThresh15MinSESs) reached."
    ::= { vdslNotifications 6 }

vdslPerfUASsThreshNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPerfDataCurr15MinUASs
                  }
    STATUS        current
    DESCRIPTION
        "Unavailable Seconds 15-minute interval threshold
        (vdslLineAlarmConfThresh15MinUASs) reached."
    ::= { vdslNotifications 7 }

vdslDownMaxSnrMgnNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPhysCurrSnrMgn
                  }
    STATUS        current
    DESCRIPTION
        "The downstream Signal to Noise Margin exceeded
        vdslLineConfDownMaxSnrMgn.  The object
        vdslPhysCurrSnrMgn will contain the Signal to Noise
        margin as measured by the VTU-R."
    ::= { vdslNotifications 8 }

vdslDownMinSnrMgnNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPhysCurrSnrMgn
                  }
    STATUS        current
    DESCRIPTION
        "The downstream Signal to Noise Margin fell below
        vdslLineConfDownMinSnrMgn.  The object vdslPhysCurrSnrMgn
        will contain the Signal to Noise margin as measured by
        the VTU-R."
    ::= { vdslNotifications 9 }

vdslUpMaxSnrMgnNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPhysCurrSnrMgn
                  }
    STATUS        current
    DESCRIPTION
        "The upstream Signal to Noise Margin exceeded
        vdslLineConfUpMaxSnrMgn.  The object vdslPhysCurrSnrMgn
        will contain the Signal to Noise margin as measured
        by the VTU-C."
    ::= { vdslNotifications 10 }

vdslUpMinSnrMgnNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPhysCurrSnrMgn
                  }
    STATUS        current
    DESCRIPTION
        "The upstream Signal to Noise Margin fell below
        vdslLineConfUpMinSnrMgn.  The object vdslPhysCurrSnrMgn
        will contain the Signal to Noise margin as measured
        by the VTU-C."
    ::= { vdslNotifications 11 }

vdslInitFailureNotification NOTIFICATION-TYPE
    OBJECTS       {
                  vdslPhysCurrStatus
                  }
    STATUS        current
    DESCRIPTION
        "Vtu initialization failed.  See vdslPhysCurrStatus for
        potential reasons."
    ::= { vdslNotifications 12 }

-- conformance information

vdslConformance OBJECT IDENTIFIER ::= { vdslLineMib 3 }
vdslGroups OBJECT IDENTIFIER ::= { vdslConformance 1 }
vdslCompliances OBJECT IDENTIFIER ::= { vdslConformance 2 }

vdslLineMibCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
        "The compliance statement for SNMP entities which
        manage VDSL interfaces."

    MODULE  -- this module
    MANDATORY-GROUPS
        {
        vdslGroup,
        vdslNotificationGroup
        }
    ::= { vdslCompliances 1 }

-- units of conformance

    vdslGroup OBJECT-GROUP
        OBJECTS
            {
            vdslLineCoding,
            vdslLineType,
            vdslLineConfProfile,
            vdslLineAlarmConfProfile,
            vdslPhysInvSerialNumber,
            vdslPhysInvVendorID,
            vdslPhysInvVersionNumber,
            vdslPhysCurrSnrMgn,
            vdslPhysCurrAtn,
            vdslPhysCurrStatus,
            vdslPhysCurrOutputPwr,
            vdslPhysCurrAttainableRate,
            vdslPhysCurrLineRate,
            vdslChanInterleaveDelay,
            vdslChanCrcBlockLength,
            vdslChanCurrTxRate,
            vdslChanCurrTxSlowBurstProtect,
            vdslChanCurrTxFastFec,
            vdslPerfDataValidIntervals,
            vdslPerfDataInvalidIntervals,
            vdslPerfDataLofs,
            vdslPerfDataLoss,
            vdslPerfDataLprs,
            vdslPerfDataLols,
            vdslPerfDataESs,
            vdslPerfDataSESs,
            vdslPerfDataUASs,
            vdslPerfDataInits,
            vdslPerfDataCurr15MinTimeElapsed,
            vdslPerfDataCurr15MinLofs,
            vdslPerfDataCurr15MinLoss,
            vdslPerfDataCurr15MinLprs,
            vdslPerfDataCurr15MinLols,
            vdslPerfDataCurr15MinESs,
            vdslPerfDataCurr15MinSESs,
            vdslPerfDataCurr15MinUASs,
            vdslPerfDataCurr15MinInits,
            vdslPerfData1DayValidIntervals,
            vdslPerfData1DayInvalidIntervals,
            vdslPerfDataCurr1DayTimeElapsed,
            vdslPerfDataCurr1DayLofs,
            vdslPerfDataCurr1DayLoss,
            vdslPerfDataCurr1DayLprs,
            vdslPerfDataCurr1DayLols,
            vdslPerfDataCurr1DayESs,
            vdslPerfDataCurr1DaySESs,
            vdslPerfDataCurr1DayUASs,
            vdslPerfDataCurr1DayInits,
            vdslPerfIntervalLofs,
            vdslPerfIntervalLoss,
            vdslPerfIntervalLprs,
            vdslPerfIntervalLols,
            vdslPerfIntervalESs,
            vdslPerfIntervalSESs,
            vdslPerfIntervalUASs,
            vdslPerfIntervalInits,
            vdslPerf1DayIntervalMoniSecs,
            vdslPerf1DayIntervalLofs,
            vdslPerf1DayIntervalLoss,
            vdslPerf1DayIntervalLprs,
            vdslPerf1DayIntervalLols,
            vdslPerf1DayIntervalESs,
            vdslPerf1DayIntervalSESs,
            vdslPerf1DayIntervalUASs,
            vdslPerf1DayIntervalInits,
            vdslChanValidIntervals,
            vdslChanInvalidIntervals,
            vdslChanFixedOctets,
            vdslChanBadBlks,
            vdslChanCurr15MinTimeElapsed,
            vdslChanCurr15MinFixedOctets,
            vdslChanCurr15MinBadBlks,
            vdslChan1DayValidIntervals,
            vdslChan1DayInvalidIntervals,
            vdslChanCurr1DayTimeElapsed,
            vdslChanCurr1DayFixedOctets,
            vdslChanCurr1DayBadBlks,
            vdslChanIntervalFixedOctets,
            vdslChanIntervalBadBlks,
            vdslChan1DayIntervalMoniSecs,
            vdslChan1DayIntervalFixedOctets,
            vdslChan1DayIntervalBadBlks,
            vdslLineConfDownRateMode,
            vdslLineConfUpRateMode,
            vdslLineConfDownMaxPwr,
            vdslLineConfUpMaxPwr,
            vdslLineConfDownMaxSnrMgn,
            vdslLineConfDownMinSnrMgn,
            vdslLineConfDownTargetSnrMgn,
            vdslLineConfUpMaxSnrMgn,
            vdslLineConfUpMinSnrMgn,
            vdslLineConfUpTargetSnrMgn,
            vdslLineConfDownFastMaxDataRate,
            vdslLineConfDownFastMinDataRate,
            vdslLineConfDownSlowMaxDataRate,
            vdslLineConfDownSlowMinDataRate,
            vdslLineConfUpFastMaxDataRate,
            vdslLineConfUpFastMinDataRate,
            vdslLineConfUpSlowMaxDataRate,
            vdslLineConfUpSlowMinDataRate,
            vdslLineConfDownRateRatio,
            vdslLineConfUpRateRatio,
            vdslLineConfDownMaxInterDelay,
            vdslLineConfUpMaxInterDelay,
            vdslLineConfDownPboControl,
            vdslLineConfUpPboControl,
            vdslLineConfDownPboLevel,
            vdslLineConfUpPboLevel,
            vdslLineConfDeploymentScenario,
            vdslLineConfAdslPresence,
            vdslLineConfApplicableStandard,
            vdslLineConfBandPlan,
            vdslLineConfBandPlanFx,
            vdslLineConfBandOptUsage,
            vdslLineConfUpPsdTemplate,
            vdslLineConfDownPsdTemplate,
            vdslLineConfHamBandMask,
            vdslLineConfCustomNotch1Start,
            vdslLineConfCustomNotch1Stop,
            vdslLineConfCustomNotch2Start,
            vdslLineConfCustomNotch2Stop,
            vdslLineConfDownTargetSlowBurst,
            vdslLineConfUpTargetSlowBurst,
            vdslLineConfDownMaxFastFec,
            vdslLineConfUpMaxFastFec,
            vdslLineConfLineType,
            vdslLineConfProfRowStatus,
            vdslLineAlarmConfThresh15MinLofs,
            vdslLineAlarmConfThresh15MinLoss,
            vdslLineAlarmConfThresh15MinLprs,
            vdslLineAlarmConfThresh15MinLols,
            vdslLineAlarmConfThresh15MinESs,
            vdslLineAlarmConfThresh15MinSESs,
            vdslLineAlarmConfThresh15MinUASs,
            vdslLineAlarmConfInitFailure,
            vdslLineAlarmConfProfRowStatus
            }
        STATUS     current
        DESCRIPTION
            "A collection of objects providing information about
             a VDSL Line."
        ::= { vdslGroups 1 }

    vdslNotificationGroup    NOTIFICATION-GROUP
        NOTIFICATIONS
            {
            vdslPerfLofsThreshNotification,
            vdslPerfLossThreshNotification,
            vdslPerfLprsThreshNotification,
            vdslPerfLolsThreshNotification,
            vdslPerfESsThreshNotification,
            vdslPerfSESsThreshNotification,
            vdslPerfUASsThreshNotification,
            vdslDownMaxSnrMgnNotification,
            vdslDownMinSnrMgnNotification,
            vdslUpMaxSnrMgnNotification,
            vdslUpMinSnrMgnNotification,
            vdslInitFailureNotification
            }
        STATUS      current
        DESCRIPTION
             "This group supports notifications of significant
             conditions associated with VDSL Lines."
    ::= { vdslGroups 2 }

END
