smilint output for ./PW-TDM-MIB


Message Severities
SeverityCount
error2
warning2
fyi1
Message Types
TypeCount
bad-identifier-case (error)1
identifier-case-match (warning)1
object-identifier-not-prefix (error)1
previous-definition (fyi)1
type-without-format (warning)1

Messages:

PW-TDM-MIB

   1: -- extracted from draft-ietf-pwe3-tdm-mib-08.txt
   2: -- at Thu Apr  5 06:08:17 2007
   3: 
   4:    PW-TDM-MIB DEFINITIONS ::= BEGIN
   5: 
   6:    IMPORTS
   7:      MODULE-IDENTITY, OBJECT-TYPE,
   8:      Integer32, Counter32, Unsigned32, transmission
   9:         FROM SNMPv2-SMI
  10: 
  11:      MODULE-COMPLIANCE, OBJECT-GROUP
  12:         FROM SNMPv2-CONF
  13: 
  14:      TEXTUAL-CONVENTION, TruthValue,  RowStatus, StorageType,
  15:       TimeStamp
  16:         FROM SNMPv2-TC
  17: 
  18:      InterfaceIndexOrZero
  19:         FROM IF-MIB                 -- [IFMIB]
  20: 
  21:      SnmpAdminString
  22:         FROM SNMP-FRAMEWORK-MIB     -- [RFC3411]
  23: 
  24:      PerfCurrentCount, PerfIntervalCount
  25:         FROM PerfHist-TC-MIB
  26: 
  27:      pwIndex
  28:         FROM PW-STD-MIB
  29: 
  30:      PwCfgIndexOrzero
  31:         FROM PW-TC-STD-MIB;
  32: 
  33:    -- The TDM MIB
  34: 
  35:      pwTDMMIB MODULE-IDENTITY
  36: 
  37:      LAST-UPDATED "200704030000Z"
  38:      ORGANIZATION "Pseudo-Wire Emulation Edge-to-Edge (PWE3)
  39:                    Working Group"
  40:      CONTACT-INFO
  41:          "        Orly Nicklass
  42:           Postal: RAD Data Communications
  43:                   24 Raoul Wallenberg St., Bldg C
  44:                   Tel Aviv 69719, Israel
  45:                   Email: orly_n@rad.com
  46: 
  47:           The PWE3 Working Group (email distribution pwe3@ietf.org,
  48:           http://www.ietf.org/html.charters/pwe3-charter.html)
  49:           "
  50: 
  51:      DESCRIPTION
  52:          "This MIB contains managed object definitions for
  53:           encapsulating TDM (T1,E1, T3, E3, NxDS0) as
  54:           pseudo-wires over packet-switching networks (PSN).
  55: 
  56:           This MIB supplements the PW-STD-MIB as in: Zelig, D.,
  57:           Nadeau,T. 'Pseudo Wire (PW) Management Information Base'.
  58:           The PW-STD-MIB contains structures and MIB associations
  59:           generic to Pseudo-Wire (PW) emulation. PW-specific
  60:           MIBs (such as this) contain config and stats for specific
  61:           PW types.
  62: 
  63:           Copyright (C) The IETF Trust (2007). This version
  64:           of this MIB module is part of RFC yyyy; see the RFC
  65:           itself for full legal notices.
  66:    -- RFC Ed.: replace yyyy with actual RFC number & remove this
  67:           note"
  68: 
  69:      REVISION  "200704030000Z"  -- April 2007
  70:      DESCRIPTION
  71:          "Initial version published as part of RFC YYYY."
  72:    -- RFC Editor: please replace YYYY with IANA assigned value, and
  73:    -- delete this note.
  74: 
  75:      ::= { transmission XXX }
  75: error - `XXX' should start with a lower case letter
  75: error - Object identifier element `XXX' name only allowed as first element
  76:    -- RFC Editor: replace XXX with IANA-assigned number & remove this
  77:    -- note. Please see IANA considerations section
  78:    -- Local Textual conventions
  79:       PwTDMCfgIndex ::= TEXTUAL-CONVENTION
  79: fyi - info: previous definition of `PwTDMCfgIndex'
  79: warning - warning: type `PwTDMCfgIndex' has no format specification
  80:         STATUS      current
  81:         DESCRIPTION
  82:              "Index into the relevant pwXXXCfgTable."
  83:         SYNTAX Unsigned32 (1..4294967295)
  84: 
  85: 
  86:    -- Tables, Scalars
  87:    pwTDMObjects       OBJECT IDENTIFIER
  88:                                 ::= { pwTDMMIB 1 }
  89:    -- Notifications
  90:    pwTDMNotifications OBJECT IDENTIFIER
  91:                                 ::= { pwTDMMIB 2 }
  92: 
  93:    -- Conformance
  94:    pwTDMConformance   OBJECT IDENTIFIER
  95:                                 ::= { pwTDMMIB 3 }
  96: 
  97:    -- TDM PW table
  98: 
  99:    pwTDMTable OBJECT-TYPE
 100:      SYNTAX        SEQUENCE OF PwTDMEntry
 101:      MAX-ACCESS    not-accessible
 102:      STATUS        current
 103:      DESCRIPTION
 104:          "This table contains basic information including ifIndex,
 105:           and pointers to entries in the relevant TDM config
 106:           tables for this TDM PW."
 107:      ::= { pwTDMObjects 1 }
 108: 
 109:    pwTDMEntry OBJECT-TYPE
 110:      SYNTAX        PwTDMEntry
 111:      MAX-ACCESS    not-accessible
 112:      STATUS        current
 113:      DESCRIPTION
 114:          "This table is indexed by the same index that was
 115:           created for the associated entry in the PW Table
 116:           (in the PW-STD-MIB).
 117: 
 118:             - The PwIndex.
 119: 
 120:           An entry is created in this table by the agent for every
 121:           entry in the pwTable with a pwType equal to one of the
 122:           following:
 123:           e1Satop(17), t1Satop(18), e3Satop(19), t3Satop(20),
 124:           basicCesPsn(21), basicTdmIp(22),  tdmCasCesPsn(23),
 125:           tdmCasTdmIp(24).
 126:           Unless otherwise specified, all RW objects in this table
 127:           MUST NOT be changed after row activation (see [PWMIB])
 128:           and should remain unchanged after reboot."
 129: 
 130:      INDEX  { pwIndex }
 131: 
 132:         ::= { pwTDMTable 1 }
 133: 
 134:    PwTDMEntry ::= SEQUENCE {
 135: 
 136:         pwTDMRate                      Integer32,
 137:         pwTDMIfIndex                   InterfaceIndexOrZero,
 138:         pwGenTDMCfgIndex               PwCfgIndexOrzero,
 139:         pwRelTDMCfgIndex               PwCfgIndexOrzero,
 140: 
 141:         pwTDMConfigError               BITS,
 142:         pwTDMTimeElapsed               Integer32,
 143:         pwTDMValidIntervals            Integer32,
 144:         pwTDMValidDayIntervals         Integer32,
 145:         pwTDMLastEsTimeStamp           TimeStamp
 146:         }
 147: 
 148:    pwTDMRate OBJECT-TYPE
 149:      SYNTAX     Integer32
 150:      MAX-ACCESS    read-write
 151:      STATUS        current
 152:      DESCRIPTION
 153:          "The parameter represents the bit-rate of the TDM service
 154:           in multiples of the 'basic' 64 Kbit/s rate [TDMCP-EXT].
 155:           It complements the definition of pwType used in
 156:           PW-STD-MIB.
 157:           For structure-agnostic the following should be used:
 158:           a) Satop E1 - 32
 159:           b) Satop T1 emulation:
 160:              i)   MUST be set to 24 in the basic emulation mode
 161:              ii)  MUST be set to 25 for the 'Octet-aligned T1'
 162:                   emulation mode
 163:           c) Satop E3 - 535
 164:           d) Satop T3 - 699
 165:           For all kinds of structure-aware emulation, this parameter
 166:           MUST be set to N where N is the number of DS0 channels
 167:           in the corresponding attachment circuit."
 168:      REFERENCE
 169:       "TDMCP-EXT"
 170:      DEFVAL { 32 }
 171:      ::= { pwTDMEntry 1 }
 172: 
 173:    pwTDMIfIndex OBJECT-TYPE
 174:      SYNTAX        InterfaceIndexOrZero
 175:      MAX-ACCESS    read-write
 176:      STATUS        current
 177:      DESCRIPTION
 178:          "This is a unique index within the ifTable. It represents
 179:           the interface index of the full link or the interface
 180:           index for the bundle holding the group of
 181:           time slots to be transmitted via this PW connection.
 182: 
 183:           A value of zero indicates an interface index that has yet
 184:           to be determined.
 185:           Once set, if the TDM ifIndex is (for some reason) later
 186:           removed, the agent SHOULD delete the associated PW rows
 187:           (e.g., this pwTDMTable entry). If the agent does not
 188:           delete the rows,  the agent MUST set this object to
 189:           zero."
 190:      ::= { pwTDMEntry 2 }
 191: 
 192:    pwGenTDMCfgIndex OBJECT-TYPE
 193:      SYNTAX        PwCfgIndexOrzero
 194:      MAX-ACCESS    read-write
 195:      STATUS        current
 196:      DESCRIPTION
 197:          "Index to the generic parameters in the TDM configuration
 198:           table that appears in this MIB module. It is likely that
 199:           multiple TDM PWs of the same characteristic will share
 200:           a single TDM Cfg entry."
 201:      ::= { pwTDMEntry 3 }
 202: 
 203:    pwRelTDMCfgIndex OBJECT-TYPE
 204:      SYNTAX        PwCfgIndexOrzero
 205:      MAX-ACCESS    read-write
 206:      STATUS        current
 207:      DESCRIPTION
 208:          "Index to the relevant TDM configuration table entry
 209:           that appears in one of the related MIB modules
 210:           such as TDMoIP or CESoPSN. It is likely that
 211:           multiple TDM PWs of the same characteristic will share
 212:           a single configuration entry of the relevant type.
 213:           The value 0 implies no entry in other related MIB"
 214:      ::= { pwTDMEntry 4 }
 215: 
 216:    pwTDMConfigError OBJECT-TYPE
 217:      SYNTAX BITS {
 218:            notApplicable                 ( 0),
 219:            tdmTypeIncompatible           ( 1),
 220:            peerRtpIncompatible           ( 2),
 221:            peerPayloadSizeIncompatible   ( 3)
 222:            }
 223:      MAX-ACCESS    read-only
 224:      STATUS        current
 225:      DESCRIPTION
 226:          "Any of the bits are set if the local configuration is
 227:           not compatible with the peer configuration as available
 228:           from the various parameters options. Setting is done based
 229:           on signaling, or else value (0) will be set.
 230: 
 231:           -tdmTypeIncompatible bit is set if the local configuration
 232:           is not carrying the same TDM type as the peer configuration.
 233: 
 234:           -peerRtpIncompatible bit is set if the local configuration
 235:           is configured to send RTP packets for this PW, and the
 236:           remote is not capable of accepting RTP packets.
 237: 
 238:           -peerPayloadSizeIncompatible bit is set if the local
 239:           configuration is not carrying the same Payload Size as the
 240:           peer configuration.  "
 241:      ::= { pwTDMEntry 5}
 242: 
 243:    pwTDMTimeElapsed OBJECT-TYPE
 244:       SYNTAX  Integer32 (1..900)
 245:       MAX-ACCESS  read-only
 246:       STATUS  current
 247:       DESCRIPTION
 248:           "The number of seconds, including partial seconds,
 249:            that have elapsed since the beginning of the current
 250:            measurement period. If, for some reason, such as an
 251:            adjustment in the system's time-of-day clock, the
 252:            current interval exceeds the maximum value, the
 253:            agent will return the maximum value."
 254:       ::= { pwTDMEntry 6}
 255: 
 256:    pwTDMValidIntervals OBJECT-TYPE
 257:       SYNTAX  Integer32 (0..96)
 258:       MAX-ACCESS  read-only
 259:       STATUS  current
 260:       DESCRIPTION
 261:           "The number of previous 15-minute intervals for which data
 262:            was collected.
 263:            An agent with TDM capability must be capable of supporting
 264:            at least n intervals. The minimum value of n is 4, The
 265:            default of n is 32 and the maximum value of n is 96.
 266:            The value will be n unless the measurement was (re-)
 267:            started within the last (n*15) minutes, in which case
 268:            the value will be the number of complete 15 minute
 269:            intervals for which the agent has at least some data.
 270:            In certain cases(e.g., in the case where the agent is
 271:            a proxy) it is possible that some intervals are unavailable.
 272:            In this case, this interval is the maximum interval number
 273:            for which data is available. "
 274:       ::= { pwTDMEntry 7}
 275: 
 276:    pwTDMValidDayIntervals OBJECT-TYPE
 277:       SYNTAX  Integer32 (0..30)
 278:       MAX-ACCESS  read-only
 279:       STATUS  current
 280:       DESCRIPTION
 281:           "The number of previous days for which data
 282:            was collected.
 283:            An agent with TDM capability must be capable of supporting
 284:            at least n intervals. The minimum value of n is 1, The
 285:            default of n is 1 and the maximum value of n is 30."
 286:       ::= { pwTDMEntry 8}
 287: 
 288:    pwTDMLastEsTimeStamp OBJECT-TYPE
 289:      SYNTAX      TimeStamp
 290:      MAX-ACCESS  read-only
 291:      STATUS      current
 292:      DESCRIPTION
 293:          "The value of sysUpTime at the most recent occasion at
 294:           which the TDM PW entered the ES or SES state."
 295:      ::= { pwTDMEntry 11}
 296: 
 297:    -- End of TDM PW table
 298: 
 299:    -- PW Generic TDM PW Configuration Table
 300: 
 301:    pwTDMCfgIndexNext OBJECT-TYPE
 302:      SYNTAX            Unsigned32
 303:      MAX-ACCESS        read-only
 304:      STATUS            current
 305:      DESCRIPTION
 306:          "This object contains the value to be used for
 307:           pwTDMCfgIndex when creating entries in the
 308:           pwTDMCfgTable. The value 0 indicates that no
 309:           unassigned entries are available.  To obtain the
 310:           value of pwTDMCfgIndexNext for a new entry in the
 311:           pwTDMCfgTable, the manager issues a management
 312:           protocol retrieval operation. The agent will
 313:           determine through its local policy when this
 314:           index value will be made available for reuse."
 315: 
 316:      ::= { pwTDMObjects 2 }
 317: 
 318:    pwTDMCfgTable   OBJECT-TYPE
 319:      SYNTAX                  SEQUENCE OF PwTDMCfgEntry
 320:      MAX-ACCESS              not-accessible
 321:      STATUS                  current
 322:      DESCRIPTION
 323:          "This table contains a set of parameters that may be
 324:           referenced by one or more TDM PWs in pwTDMTable."
 325: 
 326:      ::= { pwTDMObjects 3 }
 327: 
 328:    pwTDMCfgEntry   OBJECT-TYPE
 329:      SYNTAX            PwTDMCfgEntry
 330:      MAX-ACCESS        not-accessible
 331:      STATUS            current
 332:      DESCRIPTION
 333:          "These parameters define the characteristics of a
 334:           TDM PW. They are grouped here to ease NMS burden.
 335:           Once an entry is created here it may be re-used
 336:           by many PWs.
 337:           Unless otherwise specified, all objects in this table
 338:           MUST NOT be changed after row activation (see [PWMIB])
 339:           if the row index is in used by an entry in pwTDMTable.
 340:           Rows should remain unchanged after reboot."
 341: 
 342:      INDEX  { pwTDMCfgIndex }
 343: 
 344:         ::= { pwTDMCfgTable 1 }
 345: 
 346:    PwTDMCfgEntry ::= SEQUENCE {
 347:         pwTDMCfgIndex                    PwTDMCfgIndex,
 348:         pwTDMCfgRowStatus                RowStatus,
 349:         pwTDMCfgPayloadSize              Unsigned32,
 350:         pwTDMCfgPktReorder               TruthValue,
 351:         pwTDMCfgRtpHdrUsed               TruthValue,
 352:         pwTDMCfgJtrBfrDepth              Unsigned32,
 353:         pwTDMCfgPayloadSuppression       INTEGER,
 354: 
 355:         pwTDMCfgConsecPktsInSynch        Unsigned32,
 356:         pwTDMCfgConsecMissPktsOutSynch   Unsigned32,
 357:         pwTDMCfgSetUp2SynchTimeOut       Unsigned32,
 358: 
 359:         pwTDMCfgPktReplacePolicy         INTEGER,
 360: 
 361:         pwTDMCfgAvePktLossTimeWindow     Integer32,
 362:         pwTDMCfgExcessivePktLossThreshold   Unsigned32,
 363: 
 364:         pwTDMCfgAlarmThreshold           Unsigned32,
 365:         pwTDMCfgClearAlarmThreshold      Unsigned32,
 366:         pwTDMCfgMissingPktsToSes         Unsigned32,
 367: 
 368:         pwTDMCfgTimestampMode            INTEGER,
 369:         pwTDMCfgStorageType              StorageType,
 370:         pwTDMCfgPktFiller                Unsigned32,
 371:         pwTDMCfgName                     SnmpAdminString
 372:         }
 373: 
 374:    pwTDMCfgIndex   OBJECT-TYPE
 374: warning - warning: identifier `pwTDMCfgIndex' differs from `PwTDMCfgIndex' only in case
 375:      SYNTAX        PwTDMCfgIndex
 376:      MAX-ACCESS    not-accessible
 377:      STATUS        current
 378:      DESCRIPTION
 379:          "Index to an entry in this table. The value is a copy of the
 380:           assigned pwTDMCfgIndexNext"
 381:      ::= { pwTDMCfgEntry 1 }
 382: 
 383:    pwTDMCfgRowStatus    OBJECT-TYPE
 384:      SYNTAX               RowStatus
 385:      MAX-ACCESS           read-create
 386:      STATUS               current
 387:      DESCRIPTION
 388:          "Object used for creating, modifying, and deleting
 389:           a row from this table. The following objects should not be
 390:           modified if the entry is in used and the status is active:
 391:           pwTDMCfgPayloadSize, pwTDMCfgRtpHdrUsed,
 392:           pwTDMCfgJtrBfrDepth, and pwTDMCfgPayloadSuppression.
 393:           The row should not be deleted if the entry is in used"
 394:      ::= { pwTDMCfgEntry 2 }
 395: 
 396:    pwTDMCfgPayloadSize OBJECT-TYPE
 397:      SYNTAX        Unsigned32
 398:      MAX-ACCESS    read-create
 399:      STATUS        current
 400:      DESCRIPTION
 401:          "The value of this object indicates the PayLoad Size (in bytes)
 402:           to be defined during the PW setUp. Upon TX, implementation
 403:           must be capable of carrying that amount of bytes.
 404:           Upon RX, when the LEN field is set to 0, the payload of
 405:           packet  MUST assume this size, and if the actual
 406:           packet size is inconsistent with this length,
 407:           the packet MUST be considered to be malformed. "
 408:      ::= { pwTDMCfgEntry 4 }
 409: 
 410:    pwTDMCfgPktReorder OBJECT-TYPE
 411:      SYNTAX        TruthValue
 412:      MAX-ACCESS    read-create
 413:      STATUS        current
 414:      DESCRIPTION
 415:          "If set True: as CE bound packets are queued in the
 416:           jitter buffer, out of order packets are re-ordered. The
 417:           maximum sequence number differential (i.e., the range in
 418:           which re-sequencing can occur) is dependant on the depth
 419:           of the jitter buffer. See pwTDMCfgJtrBfrDepth.
 420: 
 421:           NOTE: Some implementations may not support this feature.
 422:           The agent is then required to set this to False."
 423:      ::= { pwTDMCfgEntry 5 }
 424: 
 425:    pwTDMCfgRtpHdrUsed OBJECT-TYPE
 426:      SYNTAX        TruthValue
 427:      MAX-ACCESS    read-create
 428:      STATUS        current
 429:      DESCRIPTION
 430:          "If set to False: an RTP header is not pre-pended to the
 431:           TDM packet."
 432:      REFERENCE
 433:       "SATOP"
 434:      DEFVAL { false }
 435:      ::= { pwTDMCfgEntry 6 }
 436: 
 437:    pwTDMCfgJtrBfrDepth OBJECT-TYPE
 438:      SYNTAX        Unsigned32
 439:      UNITS         "microsecond"
 440:      MAX-ACCESS    read-create
 441:      STATUS        current
 442:      DESCRIPTION
 443:          "The size of this buffer SHOULD be locally
 444:           configured to allow accommodation to the PSN-specific packet
 445:           delay variation.
 446: 
 447:           If configured to a value not supported by the
 448:           implementation, the agent MUST return an error code
 449:           'jtrBfrDepth' in 'pwTDMConfigError '
 450: 
 451:           NOTE: jitter buffers are a limited resource to
 452:           be managed. The actual size should be at least twice as big
 453:           as the value of pwTDMCfgJtrBfrDepth "
 454:      DEFVAL { 3000 }
 455: 
 456:      ::= { pwTDMCfgEntry 7 }
 457: 
 458:    pwTDMCfgPayloadSuppression  OBJECT-TYPE
 459:      SYNTAX        INTEGER
 460:                     {
 461:                        enable  ( 1),
 462:                        disable ( 2)
 463:                     }
 464:      MAX-ACCESS    read-create
 465:      STATUS        current
 466:      DESCRIPTION
 467:          "Selecting 'enable' means: Payload suppression is allowed.
 468:           Payload MAY be omitted in order to conserve bandwidth.
 469:           Selecting 'disable' means: no suppresion under any
 470:           condition.
 471:           Object  MAY be changed at any time."
 472:     DEFVAL { disable }
 473: 
 474:      ::= { pwTDMCfgEntry 8 }
 475: 
 476:    pwTDMCfgConsecPktsInSynch          OBJECT-TYPE
 477:      SYNTAX        Unsigned32
 478:      MAX-ACCESS    read-create
 479:      STATUS        current
 480:      DESCRIPTION
 481:          "The number of consecutive packets with sequential
 482:           sequence numbers that are required to exit the
 483:           LOPS state.
 484:           Object  MAY be changed when the related PW is
 485:           defined as not active."
 486:      REFERENCE
 487:          "SATOP"
 488:      DEFVAL { 2 }
 489:      ::= { pwTDMCfgEntry 9 }
 490: 
 491:    pwTDMCfgConsecMissPktsOutSynch  OBJECT-TYPE
 492:      SYNTAX        Unsigned32
 493:      MAX-ACCESS    read-create
 494:      STATUS        current
 495:      DESCRIPTION
 496:          "The number of consecutive missing packets that are
 497:           required to enter the LOPS state.
 498:           Object  MAY be changed when the related PW is
 499:           defined as not active."
 500:      REFERENCE
 501:          "SATOP"
 502:      DEFVAL { 10 }
 503:      ::= { pwTDMCfgEntry 10 }
 504: 
 505:    pwTDMCfgSetUp2SynchTimeOut OBJECT-TYPE
 506:      SYNTAX        Unsigned32
 507:      UNITS         "millisecond"
 508:      MAX-ACCESS    read-create
 509:      STATUS        current
 510:      DESCRIPTION
 511:          "The amount of time the host should wait before declaring the
 512:           pseudo wire in down state,  if the number of consecutive
 513:           TDM packets that have been received after changing the
 514:           adminstrative status to up and after finalization of
 515:           signaling (if supported) between the two PEs is smaller
 516:           than pwTDMCfgConsecPktsInSynch. Once the the pw has
 517:           OperStatus of 'up' this parameter is no longer valid. This
 518:           parameter is defined to ensure that the host does not
 519:           prematurely inform failure of the pw. In particular pw 'down'
 520:           notifications should not be sent before expiration of this
 521:           timer. This parameter is valid only after adminisrative
 522:           changes of the status of the pw. If the pw fails due to
 523:           network impairments a 'down' notification should be sent.
 524:           Object  MAY be changed when the related PW is
 525:           defined as not active."
 526:      DEFVAL {5000}
 527:      ::= { pwTDMCfgEntry 11 }
 528: 
 529:    pwTDMCfgPktReplacePolicy OBJECT-TYPE
 530:      SYNTAX        INTEGER
 531:                          {
 532:                           allOnes (1),
 533:                           implementationSpecific(2),
 534:                           filler (3)  --user defined
 535:                           }
 536:      MAX-ACCESS    read-create
 537:      STATUS        current
 538:      DESCRIPTION
 539:          "This parameter determines the value to be played when CE bound
 540:           packets have over/underflow the jitter buffer, or are missing
 541:           for any reason. This byte pattern is sent(played)on
 542:           the TDM line. Selecting implementationSpecific(2) implies
 543:           agent specific algorithm. Selecting filler(3) requires setting
 544:           of pwTDMCfgPktFiller.
 545:           Object  MAY be changed when the related PW is
 546:           defined as not active."
 547:      DEFVAL { allOnes } -- Play AIS
 548:      ::= { pwTDMCfgEntry 12 }
 549: 
 550:    pwTDMCfgAvePktLossTimeWindow OBJECT-TYPE
 551:      SYNTAX        Integer32
 552:      UNITS         "millisecond"
 553:      MAX-ACCESS    read-create
 554:      STATUS        current
 555:      DESCRIPTION
 556:          "The length of time over which the average packet
 557:           loss rate should be computed to detect Excessive packet
 558:           loss rate.
 559:           Object  MAY be changed when the related PW is
 560:           defined as not active."
 561:      ::= { pwTDMCfgEntry 13}
 562: 
 563:    pwTDMCfgExcessivePktLossThreshold OBJECT-TYPE
 564:      SYNTAX        Unsigned32
 565:      UNITS         "Percent"
 566:      MAX-ACCESS    read-create
 567:      STATUS        current
 568:      DESCRIPTION
 569:          "Excessive packet loss rate is detected by computing the
 570:           average packetloss rate over a pwTDMCfgAvePktLossTimeWindow
 571:           amount of time and comparing it with this threshold value.
 572:           The rate is expressed in precentage.
 573:           Object  MAY be changed when the related PW is
 574:           defined as not active."
 575:      ::= { pwTDMCfgEntry 14 }
 576: 
 577: 
 578:    pwTDMCfgAlarmThreshold OBJECT-TYPE
 579:      SYNTAX        Unsigned32
 580:      MAX-ACCESS    read-create
 581:      STATUS        current
 582:      DESCRIPTION
 583:          "Alarms are only reported when the defect state persists
 584:           for the length of time specified by this object.
 585:           The object's unit is millisec.
 586:           Object  MAY be changed when the related PW is
 587:           defined as not active."
 588:      DEFVAL { 2500 }
 589:      ::= { pwTDMCfgEntry 15 }
 590: 
 591:    pwTDMCfgClearAlarmThreshold OBJECT-TYPE
 592:      SYNTAX        Unsigned32
 593:      MAX-ACCESS    read-create
 594:      STATUS        current
 595:      DESCRIPTION
 596:          "Alarm MUST be cleared after the corresponding defect is
 597:           undetected for the amount of time specified by this object.
 598:           The object's unit is millisec.
 599:           Object  MAY be changed when the related PW is
 600:           defined as not active."
 601:      DEFVAL { 10000 }
 602:      ::= { pwTDMCfgEntry 16 }
 603: 
 604:    pwTDMCfgMissingPktsToSes OBJECT-TYPE
 605:      SYNTAX        Unsigned32
 606:      UNITS         "Percent"
 607:      MAX-ACCESS    read-create
 608:      STATUS        current
 609:      DESCRIPTION
 610:          "Percent of missing packets detected (consecutive or not)
 611:           within a 1 second window to cause a Severely Error
 612:           Second (SES) to be counted.
 613:           Object  MAY be changed when the related PW is
 614:           defined as not active."
 615:      DEFVAL { 30 }
 616:      ::= { pwTDMCfgEntry 17 }
 617: 
 618:    pwTDMCfgTimestampMode  OBJECT-TYPE
 619:      SYNTAX        INTEGER
 620:                     {
 621:                      notApplicable (1),
 622:                      absolute      (2),
 623:                      differential  (3)
 624:                     }
 625: 
 626:      MAX-ACCESS    read-create
 627:      STATUS        current
 628:      DESCRIPTION
 629:          "Timestamp generation MAY be used in one of the following
 630:           modes:
 631:           1. Absolute mode: the PSN-bound IWF sets timestamps
 632:            using the clock recovered from the incoming TDM attachment
 633:            circuit. As a consequence, the timestamps are closely
 634:            correlated with the sequence numbers. All TDM implementations
 635:            that support usage of the RTP header MUST support this mode.
 636:           2. Differential mode: Both IWFs have access to a common high-
 637:            quality timing source, and this source is used for timestamp
 638:            generation. Support of this mode is OPTIONAL.
 639:            Object  MAY be changed when the related PW is
 640:            defined as not active."
 641: 
 642:      ::= { pwTDMCfgEntry 18 }
 643: 
 644:    pwTDMCfgStorageType  OBJECT-TYPE
 645:      SYNTAX            StorageType
 646:      MAX-ACCESS        read-create
 647:      STATUS            current
 648:      DESCRIPTION
 649:          "This variable indicates the storage type for this
 650:           row."
 651:      ::= { pwTDMCfgEntry 19 }
 652: 
 653:    pwTDMCfgPktFiller OBJECT-TYPE
 654:       SYNTAX        Unsigned32 (0..255)
 655:       MAX-ACCESS    read-create
 656:       STATUS        current
 657:       DESCRIPTION
 658:           "Filler byte pattern played out on the TDM
 659:           interface if pwTDMCfgPktReplacePolicy
 660:           was set to filler(3).
 661:           Object  MAY be changed when the related PW is
 662:           defined as not active."
 663:       DEFVAL
 664:           { 255 } -- Play all ones, equal to AIS indications.
 665:       ::= { pwTDMCfgEntry 20 }
 666: 
 667: 
 668:    pwTDMCfgName OBJECT-TYPE
 669:      SYNTAX        SnmpAdminString
 670:      MAX-ACCESS    read-create
 671:      STATUS        current
 672:      DESCRIPTION
 673:          "A descriptive string, prefereably unique name, to an entry
 674:          in this table.
 675:          Object  MAY be changed at any time."
 676:      ::= { pwTDMCfgEntry 21 }
 677: 
 678:    -- END of Table
 679: 
 680:    -- The following counters work together to integrate
 681:    -- errors and the lack of errors on the TDM PW. An error is
 682:    -- caused by a missing packet. Missing packet can be a result
 683:    -- of: packet loss in the network, (uncorrectable) packet out
 684:    -- of sequence, packet length error, jitter buffer overflow,
 685:    -- and jitter buffer underflow. The result is declaring whether
 686:    -- or not the TDM PW is in Loss of Packet (LOPS) state.
 687: 
 688:    -- TDM PW Performance Current Table.
 689: 
 690:    pwTDMPerfCurrentTable OBJECT-TYPE
 691:      SYNTAX        SEQUENCE OF PwTDMPerfCurrentEntry
 692:      MAX-ACCESS    not-accessible
 693:      STATUS        current
 694:      DESCRIPTION
 695:          "The current 15 minute interval counts are in
 696:           this table.
 697: 
 698:           This table provides per TDM PW performance information."
 699: 
 700:      ::= { pwTDMObjects 5 }
 701: 
 702:    pwTDMPerfCurrentEntry OBJECT-TYPE
 703:      SYNTAX        PwTDMPerfCurrentEntry
 704:      MAX-ACCESS    not-accessible
 705:      STATUS        current
 706:      DESCRIPTION
 707:          "An entry in this table is created by the agent for every
 708:           pwTDMTable entry. After 15 minutes, the contents of this
 709:           table entry are copied to a new entry in the
 710:           pwTDMPerfInterval table and the counts in this entry
 711:           are reset to zero."
 712: 
 713:      INDEX  { pwIndex }
 714: 
 715:      ::= { pwTDMPerfCurrentTable 1 }
 716: 
 717:    PwTDMPerfCurrentEntry ::= SEQUENCE {
 718: 
 719:         pwTDMPerfCurrentMissingPkts         PerfCurrentCount,
 720:         pwTDMPerfCurrentPktsReOrder         PerfCurrentCount,
 721:         pwTDMPerfCurrentJtrBfrUnderruns     PerfCurrentCount,
 722:         pwTDMPerfCurrentMisOrderDropped     PerfCurrentCount,
 723:         pwTDMPerfCurrentMalformedPkt        PerfCurrentCount,
 724: 
 725:         pwTDMPerfCurrentESs                 PerfCurrentCount,
 726:         pwTDMPerfCurrentSESs                PerfCurrentCount,
 727:         pwTDMPerfCurrentUASs                PerfCurrentCount,
 728:         pwTDMPerfCurrentFC                  PerfCurrentCount
 729:      }
 730: 
 731:    pwTDMPerfCurrentMissingPkts OBJECT-TYPE
 732:      SYNTAX        PerfCurrentCount
 733:      MAX-ACCESS    read-only
 734:      STATUS       current
 735:      DESCRIPTION
 736:          "Number of missing packets (as detected via control word
 737:           sequence number gaps)."
 738:      ::= { pwTDMPerfCurrentEntry 1 }
 739: 
 740:    pwTDMPerfCurrentPktsReOrder OBJECT-TYPE
 741:      SYNTAX        PerfCurrentCount
 742:      MAX-ACCESS    read-only
 743:      STATUS        current
 744:      DESCRIPTION
 745:          "Number of packets detected out of sequence (via control
 746:           word sequence number), but successfully re-ordered.
 747:           Note: some implementations may not support this Feature."
 748:      ::= { pwTDMPerfCurrentEntry 2 }
 749: 
 750:    pwTDMPerfCurrentJtrBfrUnderruns OBJECT-TYPE
 751:      SYNTAX        PerfCurrentCount
 752:      MAX-ACCESS    read-only
 753:      STATUS        current
 754:      DESCRIPTION
 755:          "Number of times a packet needed to be played
 756:           out and the jitter buffer was empty."
 757:      ::= { pwTDMPerfCurrentEntry 3 }
 758: 
 759:    pwTDMPerfCurrentMisOrderDropped OBJECT-TYPE
 760:      SYNTAX        PerfCurrentCount
 761:      MAX-ACCESS    read-only
 762:      STATUS        current
 763:      DESCRIPTION
 764:          "Number of packets detected out of order(via control word
 765:           sequence numbers), and could not be re-ordered, or could
 766:           not fit in the jitter buffer."
 767:       ::= { pwTDMPerfCurrentEntry 4 }
 768: 
 769:    pwTDMPerfCurrentMalformedPkt OBJECT-TYPE
 770:      SYNTAX        PerfCurrentCount
 771:      MAX-ACCESS    read-only
 772:      STATUS        current
 773:      DESCRIPTION
 774:          "Number of packets detected with unexpected size, or
 775:           bad headers' stack"
 776:      ::= { pwTDMPerfCurrentEntry 5 }
 777: 
 778:    pwTDMPerfCurrentESs OBJECT-TYPE
 779:       SYNTAX       PerfCurrentCount
 780:       MAX-ACCESS   read-only
 781:       STATUS       current
 782:       DESCRIPTION
 783:           "The counter associated with the number of Error
 784:            Seconds encountered. Any malformed packet, seq. error, LOPS
 785:            and similar are considered as error second"
 786:       ::= { pwTDMPerfCurrentEntry 6 }
 787: 
 788:    pwTDMPerfCurrentSESs OBJECT-TYPE
 789:       SYNTAX        PerfCurrentCount
 790:       MAX-ACCESS    read-only
 791:       STATUS        current
 792:       DESCRIPTION
 793:           "The counter associated with the number of
 794:            Severely Error Seconds encountered. "
 795:       ::= { pwTDMPerfCurrentEntry 7 }
 796: 
 797:    pwTDMPerfCurrentUASs OBJECT-TYPE
 798:       SYNTAX        PerfCurrentCount
 799:       MAX-ACCESS    read-only
 800:       STATUS        current
 801:       DESCRIPTION
 802:           "The counter associated with the number of
 803:            Unavailable Seconds encountered. Any consequtive
 804:            ten seconds of SES are counted as one UAS"
 805:       ::= { pwTDMPerfCurrentEntry 8 }
 806: 
 807:    pwTDMPerfCurrentFC OBJECT-TYPE
 808:       SYNTAX        PerfCurrentCount
 809:       MAX-ACCESS    read-only
 810:       STATUS        current
 811:       DESCRIPTION
 812:           "TDM Failure Counts (FC-TDM). The number of TDM failure
 813:            events. A failure event begins when the LOPS failure
 814:            is declared, and ends when the failure is cleared. A
 815:            failure event that begins in one period and ends in
 816:            another period is counted only in the period in which
 817:            it begins."
 818:       ::= { pwTDMPerfCurrentEntry 9 }
 819: 
 820:    -- End TDM PW Performance Current Interval Table
 821: 
 822: 
 823:    -- TDM PW Performance Interval Table.
 824: 
 825:    pwTDMPerfIntervalTable OBJECT-TYPE
 826:      SYNTAX        SEQUENCE OF PwTDMPerfIntervalEntry
 827:      MAX-ACCESS    not-accessible
 828:      STATUS        current
 829:      DESCRIPTION
 830:          "This table provides performance information per TDM PW
 831:           similar to the pwTDMPerfCurrentTable above. However,
 832:           these counts represent historical 15 minute intervals.
 833:           Typically, this table will have a maximum of 96 entries
 834:           for a 24 hour period, but is not limited to this. "
 835:      ::= { pwTDMObjects 6 }
 836: 
 837:    pwTDMPerfIntervalEntry OBJECT-TYPE
 838:      SYNTAX        PwTDMPerfIntervalEntry
 839:      MAX-ACCESS    not-accessible
 840:      STATUS        current
 841:      DESCRIPTION
 842:          "An entry in this table is created by the agent for
 843:           every pwTDMPerfCurrentEntry that is 15 minutes old.
 844:           The contents of the Current entry are copied to the new
 845:           entry here. The Current entry, then resets its counts
 846:           to zero for the next current 15 minute interval. "
 847: 
 848:      INDEX  { pwIndex, pwTDMPerfIntervalNumber }
 849: 
 850:      ::= { pwTDMPerfIntervalTable 1 }
 851: 
 852:    PwTDMPerfIntervalEntry ::= SEQUENCE {
 853:         pwTDMPerfIntervalNumber           Unsigned32,
 854:         pwTDMPerfIntervalValidData        TruthValue,
 855:         pwTDMPerfIntervalDuration         Unsigned32,
 856: 
 857:         pwTDMPerfIntervalMissingPkts      PerfIntervalCount,
 858:         pwTDMPerfIntervalPktsReOrder      PerfIntervalCount,
 859:         pwTDMPerfIntervalJtrBfrUnderruns  PerfIntervalCount,
 860:         pwTDMPerfIntervalMisOrderDropped  PerfIntervalCount,
 861:         pwTDMPerfIntervalMalformedPkt     PerfIntervalCount,
 862: 
 863:         pwTDMPerfIntervalESs              PerfIntervalCount,
 864:         pwTDMPerfIntervalSESs             PerfIntervalCount,
 865:         pwTDMPerfIntervalUASs             PerfIntervalCount,
 866:         pwTDMPerfIntervalFC               PerfIntervalCount
 867:         }
 868: 
 869:    pwTDMPerfIntervalNumber OBJECT-TYPE
 870:      SYNTAX        Unsigned32
 871:      MAX-ACCESS    not-accessible
 872:      STATUS        current
 873:      DESCRIPTION
 874:          "A number (normally between 1 and 96 to cover a 24 hour
 875:           period) which identifies the interval for which the set
 876:           of statistics is available. The interval identified by 1
 877:           is the most recently completed 15 minute interval, and
 878:           the interval identified by N is the interval immediately
 879:           preceding the one identified by N-1. The minimum range of
 880:           N is 1 through 4. The default range is 1 through 32. The
 881:           maximum value of N is 1 through 96."
 882:      ::= { pwTDMPerfIntervalEntry 1 }
 883: 
 884:    pwTDMPerfIntervalValidData OBJECT-TYPE
 885:      SYNTAX        TruthValue
 886:      MAX-ACCESS    read-only
 887:      STATUS        current
 888:      DESCRIPTION
 889:          "This variable indicates if the data for this interval
 890:           is valid."
 891:      ::= { pwTDMPerfIntervalEntry 2 }
 892: 
 893:    pwTDMPerfIntervalDuration OBJECT-TYPE
 894:       SYNTAX      Unsigned32
 895:       MAX-ACCESS  read-only
 896:       STATUS      current
 897:       DESCRIPTION
 898:         "The duration of a particular interval in seconds,
 899:          Adjustments in the system's time-of-day clock, may
 900:          cause the interval to be greater or less than, the
 901:          normal value. Therefore this actual interval value
 902:          is provided."
 903:       ::= { pwTDMPerfIntervalEntry 3 }
 904: 
 905:    pwTDMPerfIntervalMissingPkts OBJECT-TYPE
 906:      SYNTAX        PerfIntervalCount
 907:      MAX-ACCESS    read-only
 908:      STATUS        current
 909:      DESCRIPTION
 910:          "Number of missing packets (as detected via control
 911:           word sequence number gaps)."
 912:      ::= { pwTDMPerfIntervalEntry 4 }
 913: 
 914:    pwTDMPerfIntervalPktsReOrder OBJECT-TYPE
 915:      SYNTAX        PerfIntervalCount
 916:      MAX-ACCESS    read-only
 917:      STATUS        current
 918:      DESCRIPTION
 919:          "Number of packets detected out of sequence (via control
 920:           word sequence number), but successfully re-ordered.
 921:           Note: some implementations may not support this
 922:           Feature."
 923:      ::= { pwTDMPerfIntervalEntry 5 }
 924: 
 925:    pwTDMPerfIntervalJtrBfrUnderruns OBJECT-TYPE
 926:      SYNTAX        PerfIntervalCount
 927:      MAX-ACCESS    read-only
 928:      STATUS        current
 929:      DESCRIPTION
 930:          "Number of times a packet needed to be played
 931:           out and the jitter buffer was empty."
 932:      ::= { pwTDMPerfIntervalEntry 6 }
 933: 
 934:    pwTDMPerfIntervalMisOrderDropped OBJECT-TYPE
 935:      SYNTAX        PerfIntervalCount
 936:      MAX-ACCESS    read-only
 937:      STATUS        current
 938:      DESCRIPTION
 939:          "Number of packets detected out of order(via control word
 940:           sequence numbers), and could not be re-ordered, or could
 941:           not fit in the jitter buffer."
 942:      ::= { pwTDMPerfIntervalEntry 7 }
 943: 
 944:    pwTDMPerfIntervalMalformedPkt OBJECT-TYPE
 945:      SYNTAX        PerfIntervalCount
 946:      MAX-ACCESS    read-only
 947:      STATUS        current
 948:      DESCRIPTION
 949:          "Number of packets detected with unexpected size, or
 950:           bad headers' stack"
 951:      ::= { pwTDMPerfIntervalEntry 8 }
 952: 
 953: 
 954:    pwTDMPerfIntervalESs OBJECT-TYPE
 955:      SYNTAX       PerfIntervalCount
 956:      MAX-ACCESS   read-only
 957:      STATUS       current
 958:      DESCRIPTION
 959:          "The counter associated with the number of Error
 960:           Seconds encountered."
 961:      ::= { pwTDMPerfIntervalEntry 9 }
 962: 
 963:    pwTDMPerfIntervalSESs OBJECT-TYPE
 964:      SYNTAX        PerfIntervalCount
 965:      MAX-ACCESS    read-only
 966:      STATUS        current
 967:      DESCRIPTION
 968:          "The counter associated with the number of
 969:           Severely Error Seconds encountered."
 970:      ::= { pwTDMPerfIntervalEntry 10 }
 971: 
 972:    pwTDMPerfIntervalUASs OBJECT-TYPE
 973:      SYNTAX        PerfIntervalCount
 974:      MAX-ACCESS    read-only
 975:      STATUS        current
 976:      DESCRIPTION
 977:          "The counter associated with the number of
 978:           Unavailable Seconds encountered."
 979:      ::= { pwTDMPerfIntervalEntry 11 }
 980: 
 981:    pwTDMPerfIntervalFC OBJECT-TYPE
 982:      SYNTAX        PerfIntervalCount
 983:      MAX-ACCESS    read-only
 984:      STATUS        current
 985:      DESCRIPTION
 986:          "TDM Failure Counts (FC-TDM). The number of TDM failure
 987:           events. A failure event begins when the LOPS failure
 988:           is declared, and ends when the failure is cleared. A
 989:           failure event that begins in one period and ends in
 990:           another period is counted only in the period in which
 991:           it begins."
 992:      ::= { pwTDMPerfIntervalEntry 12 }
 993: 
 994:    -- End TDM PW Performance Interval Table
 995: 
 996: 
 997:    -- TDM PW 1day Performance Table
 998: 
 999:    pwTDMPerf1DayIntervalTable OBJECT-TYPE
1000:      SYNTAX        SEQUENCE OF PwTDMPerf1DayIntervalEntry
1001:      MAX-ACCESS    not-accessible
1002:      STATUS        current
1003:      DESCRIPTION
1004:          "This table provides performance information per TDM PW
1005:           similar to the pwTDMPerfIntervalTable above. However,
1006:           these counters represent historical 1 day intervals up to
1007:           one full month. The table consists of real time data, as
1008:           such it is not persistence across re-boot."
1009:      ::= { pwTDMObjects 7 }
1010: 
1011:    pwTDMPerf1DayIntervalEntry OBJECT-TYPE
1012:      SYNTAX        PwTDMPerf1DayIntervalEntry
1013:      MAX-ACCESS    not-accessible
1014:      STATUS        current
1015:      DESCRIPTION
1016:          "An entry is created in this table by the agent
1017:           for every entry in the pwTDMTable table."
1018: 
1019:      INDEX  { pwIndex,pwTDMPerf1DayIntervalNumber }
1020: 
1021:         ::= { pwTDMPerf1DayIntervalTable 1 }
1022: 
1023:    PwTDMPerf1DayIntervalEntry ::= SEQUENCE {
1024:         pwTDMPerf1DayIntervalNumber                Unsigned32,
1025:         pwTDMPerf1DayIntervalValidData             TruthValue,
1026:         pwTDMPerf1DayIntervalDuration              Unsigned32,
1027:         pwTDMPerf1DayIntervalMissingPkts           Counter32,
1028:         pwTDMPerf1DayIntervalPktsReOrder           Counter32,
1029:         pwTDMPerf1DayIntervalJtrBfrUnderruns       Counter32,
1030:         pwTDMPerf1DayIntervalMisOrderDropped       Counter32,
1031:         pwTDMPerf1DayIntervalMalformedPkt          Counter32,
1032: 
1033:         pwTDMPerf1DayIntervalESs                   Counter32,
1034:         pwTDMPerf1DayIntervalSESs                  Counter32,
1035:         pwTDMPerf1DayIntervalUASs                  Counter32,
1036:         pwTDMPerf1DayIntervalFC                    Counter32
1037:         }
1038: 
1039:    pwTDMPerf1DayIntervalNumber OBJECT-TYPE
1040:      SYNTAX        Unsigned32
1041:      MAX-ACCESS    not-accessible
1042:      STATUS        current
1043:      DESCRIPTION
1044:          "The number of interval, where 1 indicates current day
1045:           measured period and 2 and above indicate previous days
1046:           respectively"
1047:      ::= { pwTDMPerf1DayIntervalEntry 1 }
1048: 
1049:    pwTDMPerf1DayIntervalValidData OBJECT-TYPE
1050:      SYNTAX        TruthValue
1051:      MAX-ACCESS    read-only
1052:      STATUS        current
1053:      DESCRIPTION
1054:          "This variable indicates if the data for this interval
1055:           is valid."
1056:      ::= { pwTDMPerf1DayIntervalEntry 2 }
1057: 
1058:    pwTDMPerf1DayIntervalDuration OBJECT-TYPE
1059:      SYNTAX      Unsigned32
1060:      MAX-ACCESS  read-only
1061:      STATUS      current
1062:      DESCRIPTION
1063:        "The duration of a particular interval in seconds,
1064:         Adjustments in the system's time-of-day clock, may
1065:         cause the interval to be greater or less than, the
1066:         normal value. Therefore this actual interval value
1067:         is provided."
1068:      ::= { pwTDMPerf1DayIntervalEntry 3 }
1069: 
1070:    pwTDMPerf1DayIntervalMissingPkts OBJECT-TYPE
1071:      SYNTAX        Counter32
1072:      MAX-ACCESS    read-only
1073:      STATUS        current
1074:      DESCRIPTION
1075:        "Number of missing packets (as detected via control word
1076:         sequence number gaps)."
1077:      ::= { pwTDMPerf1DayIntervalEntry 4 }
1078: 
1079:    pwTDMPerf1DayIntervalPktsReOrder OBJECT-TYPE
1080:      SYNTAX        Counter32
1081:      MAX-ACCESS    read-only
1082:      STATUS        current
1083:      DESCRIPTION
1084:          "Number of packets detected out of sequence (via control
1085:           word sequence number), but successfully re-ordered.
1086:           Note: some implementations may not support this
1087:           feature."
1088:      ::= { pwTDMPerf1DayIntervalEntry 5 }
1089: 
1090:    pwTDMPerf1DayIntervalJtrBfrUnderruns OBJECT-TYPE
1091:      SYNTAX        Counter32
1092:      MAX-ACCESS    read-only
1093:      STATUS        current
1094:      DESCRIPTION
1095:          "Number of times a packet needed to be played
1096:           out and the jitter buffer was empty."
1097:      ::= { pwTDMPerf1DayIntervalEntry 6 }
1098: 
1099:    pwTDMPerf1DayIntervalMisOrderDropped OBJECT-TYPE
1100:      SYNTAX        Counter32
1101:      MAX-ACCESS    read-only
1102:      STATUS        current
1103:      DESCRIPTION
1104:          "Number of packets detected out of order(via control word
1105:           sequence numbers), and could not be re-ordered, or could
1106:           not fit in the jitter buffer."
1107:      ::= { pwTDMPerf1DayIntervalEntry 7 }
1108: 
1109:    pwTDMPerf1DayIntervalMalformedPkt OBJECT-TYPE
1110:      SYNTAX        Counter32
1111:      MAX-ACCESS    read-only
1112:      STATUS        current
1113:      DESCRIPTION
1114:          "Number of packets detected with unexpected size, or
1115:           bad headers' stack."
1116:      ::= { pwTDMPerf1DayIntervalEntry 8 }
1117: 
1118: 
1119:    pwTDMPerf1DayIntervalESs OBJECT-TYPE
1120:      SYNTAX       Counter32
1121:      MAX-ACCESS   read-only
1122:      STATUS       current
1123:      DESCRIPTION
1124:          "The counter associated with the number of Error
1125:           Seconds encountered."
1126:      ::= { pwTDMPerf1DayIntervalEntry 9 }
1127: 
1128:    pwTDMPerf1DayIntervalSESs OBJECT-TYPE
1129:      SYNTAX        Counter32
1130:      MAX-ACCESS    read-only
1131:      STATUS        current
1132:      DESCRIPTION
1133:          "The counter associated with the number of Severely
1134:           Error Seconds."
1135:      ::= { pwTDMPerf1DayIntervalEntry 10 }
1136: 
1137:    pwTDMPerf1DayIntervalUASs OBJECT-TYPE
1138:      SYNTAX        Counter32
1139:      MAX-ACCESS    read-only
1140:      STATUS        current
1141:      DESCRIPTION
1142:          "The counter associated with the number of
1143:           UnAvailable Seconds.
1144: 
1145:           NOTE: When first entering the UAS state, the number
1146:           of SES To UAS is added to this object, then as each
1147:           additional UAS occurs, this object increments by one."
1148: 
1149:      ::= { pwTDMPerf1DayIntervalEntry 11 }
1150: 
1151:    pwTDMPerf1DayIntervalFC OBJECT-TYPE
1152:      SYNTAX        Counter32
1153:      MAX-ACCESS    read-only
1154:      STATUS        current
1155:      DESCRIPTION
1156:          "TDM Failure Counts (FC-TDM). The number of TDM failure
1157:           events. A failure event begins when the LOPS failure
1158:           is declared, and ends when the failure is cleared."
1159:      ::= { pwTDMPerf1DayIntervalEntry 12 }
1160: 
1161:    -- End of PW TDM Performance table
1162: 
1163:    -- Conformance Information
1164: 
1165: 
1166:    pwTDMGroups      OBJECT IDENTIFIER ::= { pwTDMConformance 1 }
1167:    pwTDMCompliances OBJECT IDENTIFIER ::= { pwTDMConformance 2 }
1168: 
1169: 
1170:    pwTDMModuleCompliance MODULE-COMPLIANCE
1171:       STATUS  current
1172:       DESCRIPTION
1173:           "The compliance statement for agent that support TDM PW
1174:            over  PSN operation."
1175: 
1176:       MODULE  -- this module
1177:           MANDATORY-GROUPS { pwTDMGroup,
1178:                              pwTDMPerfCurrentGroup,
1179:                              pwTDMPerfIntervalGroup,
1180:                              pwTDMPerf1DayIntervalGroup
1181:                            }
1182: 
1183:                      OBJECT pwGenTDMCfgIndex
1184:                      MIN-ACCESS read-only
1185:                      DESCRIPTION
1186:                          "The ability to set the an index pointer
1187:                          is not required."
1188: 
1189:                      OBJECT pwRelTDMCfgIndex
1190:                      MIN-ACCESS read-only
1191:                      DESCRIPTION
1192:                          "The ability to set the an index pointer
1193:                          is not required."
1194: 
1195:                      OBJECT pwTDMCfgPktReorder
1196:                      MIN-ACCESS read-only
1197:                      DESCRIPTION
1198:                          "The ability to set the packet reordering
1199:                          is not required."
1200: 
1201:                      OBJECT pwTDMCfgRtpHdrUsed
1202:                      MIN-ACCESS read-only
1203:                      DESCRIPTION
1204:                          "The ability to set whether to use the
1205:                           RTP header or not is not required."
1206: 
1207:                      OBJECT pwTDMCfgPayloadSuppression
1208:                      MIN-ACCESS read-only
1209:                      DESCRIPTION
1210:                          "The ability to set this object is not
1211:                           required."
1212: 
1213:                      OBJECT pwTDMCfgPktReplacePolicy
1214:                      MIN-ACCESS read-only
1215:                      DESCRIPTION
1216:                          "The ability to set the replace policy
1217:                          is not required."
1218: 
1219:                      OBJECT pwTDMCfgStorageType
1220:                      MIN-ACCESS read-only
1221:                      DESCRIPTION
1222:                          "The ability to set the storage type is
1223:                          not required."
1224: 
1225:                      OBJECT pwTDMCfgPktFiller
1226:                      MIN-ACCESS read-only
1227:                      DESCRIPTION
1228:                          "The ability to set the Filler pattern
1229:                          is not required."
1230: 
1231:                      OBJECT pwTDMCfgName
1232:                      MIN-ACCESS read-only
1233:                      DESCRIPTION
1234:                          "The ability to set the an Aliase
1235:                          is not required."
1236: 
1237:       ::= { pwTDMCompliances 1 }
1238: 
1239:    -- Units of conformance.
1240: 
1241:    pwTDMGroup OBJECT-GROUP
1242:      OBJECTS {
1243:               pwTDMRate,
1244:               pwTDMIfIndex,
1245:               pwGenTDMCfgIndex,
1246:               pwRelTDMCfgIndex,
1247:               pwTDMConfigError,
1248:               pwTDMTimeElapsed,
1249:               pwTDMValidIntervals,
1250:               pwTDMValidDayIntervals,
1251: 
1252:               pwTDMLastEsTimeStamp,
1253: 
1254:               pwTDMCfgIndexNext,
1255: 
1256:               pwTDMCfgRowStatus,
1257: 
1258:               pwTDMCfgPayloadSize,
1259:               pwTDMCfgPktReorder,
1260:               pwTDMCfgRtpHdrUsed,
1261:               pwTDMCfgJtrBfrDepth,
1262:               pwTDMCfgPayloadSuppression,
1263:               pwTDMCfgConsecPktsInSynch,
1264:               pwTDMCfgConsecMissPktsOutSynch,
1265:               pwTDMCfgSetUp2SynchTimeOut,
1266: 
1267:               pwTDMCfgPktReplacePolicy,
1268: 
1269:               pwTDMCfgAvePktLossTimeWindow ,
1270:               pwTDMCfgExcessivePktLossThreshold,
1271: 
1272:               pwTDMCfgAlarmThreshold ,
1273:               pwTDMCfgClearAlarmThreshold,
1274:               pwTDMCfgMissingPktsToSes,
1275: 
1276:               pwTDMCfgTimestampMode,
1277:               pwTDMCfgStorageType,
1278:               pwTDMCfgPktFiller,
1279:               pwTDMCfgName
1280:               }
1281:      STATUS  current
1282:      DESCRIPTION
1283:          "Collection of objects for basic TDM PW config and
1284:           status."
1285:      ::= { pwTDMGroups 1 }
1286: 
1287:    pwTDMPerfCurrentGroup OBJECT-GROUP
1288:      OBJECTS {
1289:               pwTDMPerfCurrentMissingPkts,
1290:               pwTDMPerfCurrentPktsReOrder,
1291:               pwTDMPerfCurrentJtrBfrUnderruns,
1292:               pwTDMPerfCurrentMisOrderDropped,
1293:               pwTDMPerfCurrentMalformedPkt,
1294: 
1295:               pwTDMPerfCurrentESs,
1296:               pwTDMPerfCurrentSESs,
1297:               pwTDMPerfCurrentUASs,
1298:               pwTDMPerfCurrentFC
1299:               }
1300:      STATUS  current
1301:      DESCRIPTION
1302:          "Collection of current statistics objects for TDM PWs."
1303:      ::= { pwTDMGroups 2 }
1304: 
1305: 
1306:    pwTDMPerfIntervalGroup OBJECT-GROUP
1307:      OBJECTS {
1308:               pwTDMPerfIntervalValidData,
1309:               pwTDMPerfIntervalDuration,
1310: 
1311:               pwTDMPerfIntervalMissingPkts,
1312:               pwTDMPerfIntervalPktsReOrder,
1313:               pwTDMPerfIntervalJtrBfrUnderruns,
1314:               pwTDMPerfIntervalMisOrderDropped,
1315:               pwTDMPerfIntervalMalformedPkt,
1316: 
1317:               pwTDMPerfIntervalESs,
1318:               pwTDMPerfIntervalSESs,
1319:               pwTDMPerfIntervalUASs,
1320:               pwTDMPerfIntervalFC
1321: 
1322:      }
1323:      STATUS  current
1324:      DESCRIPTION
1325:             "Collection of Interval statistics objects for TDM PWs."
1326:      ::= { pwTDMGroups 3 }
1327: 
1328:    pwTDMPerf1DayIntervalGroup OBJECT-GROUP
1329:      OBJECTS {
1330:               pwTDMPerf1DayIntervalValidData,
1331:               pwTDMPerf1DayIntervalDuration,
1332:               pwTDMPerf1DayIntervalMissingPkts,
1333:               pwTDMPerf1DayIntervalPktsReOrder,
1334:               pwTDMPerf1DayIntervalJtrBfrUnderruns,
1335:               pwTDMPerf1DayIntervalMisOrderDropped,
1336:               pwTDMPerf1DayIntervalMalformedPkt,
1337: 
1338:               pwTDMPerf1DayIntervalESs,
1339:               pwTDMPerf1DayIntervalSESs,
1340:               pwTDMPerf1DayIntervalUASs,
1341:               pwTDMPerf1DayIntervalFC
1342:               }
1343:      STATUS  current
1344:      DESCRIPTION
1345:             "Collection of Daily statistics objects for TDM PWs."
1346:      ::= { pwTDMGroups 4 }
1347: 
1348: 
1349: 
1350:    END
1351: 
1352: -- 
1353: --    Copyright (C) The IETF Trust (2007).
1354: -- 
1355: --    This document is subject to the rights, licenses and restrictions
1356: --    contained in BCP 78, and except as set forth therein, the authors
1357: --    retain all their rights.
1358: -- 
1359: --    This document and the information contained herein are provided on an
1360: --    "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
1361: --    OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
1362: --    THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
1363: --    OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
1364: --    THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
1365: --    WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
1366: -- 
1367: -- 
1368: -- Intellectual Property
1369: -- 
1370: --    The IETF takes no position regarding the validity or scope of any
1371: --    Intellectual Property Rights or other rights that might be claimed to
1372: --    pertain to the implementation or use of the technology described in
1373: --    this document or the extent to which any license under such rights
1374: --    might or might not be available; nor does it represent that it has
1375: --    made any independent effort to identify any such rights.  Information
1376: --    on the procedures with respect to rights in RFC documents can be
1377: --    found in BCP 78 and BCP 79.
1378: -- 
1379: --    Copies of IPR disclosures made to the IETF Secretariat and any
1380: --    assurances of licenses to be made available, or the result of an
1381: --    attempt made to obtain a general license or permission for the use of
1382: --    such proprietary rights by implementers or users of this
1383: --    specification can be obtained from the IETF on-line IPR repository at
1384: --    http://www.ietf.org/ipr.
1385: -- 
1386: --    The IETF invites any interested party to bring to its attention any
1387: --    copyrights, patents or patent applications, or other proprietary
1388: --    rights that may cover technology that may be required to implement
1389: --    this standard.  Please address the information to the IETF at
1390: --    ietf-ipr@ietf.org.
1391: -- 
1392: -- 
1393: -- Acknowledgment
1394: -- 
1395: --    Funding for the RFC Editor function is provided by the IETF
1396: --    Administrative Support Activity (IASA).
1397: