Status of this Memo

This memo defines objects for managing DS1 Interface objects for use with the SNMP protocol. This memo is a product of the Transmission MIB Working Group of the Internet Engineering Task Force (IETF). This RFC specifies an IAB standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "IAB Official Protocol Standards" for the standardization state and status of this protocol. Distribution of this memo is unlimited.

The Internet-standard Network Management Framework consists of three components. They are:

RFC 1155 which defines the SMI, the mechanisms used for describing and naming objects for the purpose of management. RFC 1212 defines a more concise description mechanism, which is wholly consistent with the SMI.

RFC 1156 which defines MIB-I, the core set of managed objects for the Internet suite of protocols. RFC 1213, defines MIB-II, an evolution of MIB-I based on implementation experience and new operational requirements.

RFC 1157 which defines the SNMP, the protocol used for network access to managed objects.

The Framework permits new objects to be defined for the purpose of experimentation and evaluation.

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

The syntax of an object type defines the abstract data structure corresponding to that object type. The ASN.1 language is used for this purpose. However, the SMI [3] purposely restricts the ASN.1 constructs which may be used. These restrictions are explicitly made for simplicity.

The encoding of an object type is simply how that object type is represented using the object type's syntax. Implicitly tied to the notion of an object type's syntax and encoding is how the object type is represented when being transmitted on the network.

Transmission MIB Working Group [Page 2]

RFC 1232 DS1 Interface Objects May 1991

The SMI specifies the use of the basic encoding rules of ASN.1 [8], subject to the additional requirements imposed by the SNMP.

Section 5 contains contains the specification of all object types contained in this MIB module. The object types are defined using the conventions defined in the SMI, as amended by the extensions specified in [13].

These objects are used when the particular media being used to realize an interface is a DS1 physical interface. At present, this applies to these values of the ifType variable in the Internet- standard MIB:

ds1 (18) e1 (19)

The definitions contained herein are based on the AT&T T-1 specifications and Extended Superframe (ESF) format [9, 10], the latter of which conforms to proposed ANSI specifications [14, 15]. The various T1 and E1 line disciplines are similar enough that separate MIBs are unwarranted, although there are some differences. For example, Loss of Frame is defined more rigorously in the ESF specification than in the D4 specification, but it is defined in both.

It should be noted that it is possible to multiplex multiple bit streams onto a single DS1 physical interface (CSU), realizing multiple interfaces from the perspective of the Internet-standard MIB. It is also possible to concatenate physical interfaces to provide a single logical interface. As such, it is important to be able to distinguish between the indices used to identify the CSUs attached to a node and the indices used to identify an interface (in the MIB sense) attached to a node.

Each agent which resides on a host which uses DS1 physical interfaces is required to assign a small, positive integer uniquely to each CSU. This is known as the "CSUIndex", and is used to distinguish between different CSUs attached to a node. The CSUIndex is also used as the "key" when accessing tabular information about DS1 physical interfaces.

The potentially many-to-one binding between CSU indices and the

Transmission MIB Working Group [Page 3]

RFC 1232 DS1 Interface Objects May 1991

ifIndex value assigned to each MIB interface are defined in the ds1ConfigTable table defined in the next section.

There are numerous things that could be included in a MIB for DS1 Interfaces: the management of multiplexors, CSUs, DSUs, and the like. The intent of this document is to facilitate the common management of CSUs, both in-chassis and external via proxy. As such, a design decision was made up front to very closely align the MIB with the set of objects that can generally be read from CSUs that are currently deployed, which is to say ESF CSUs conforming to AT&T specifications. However, by simple generalization of these objects, the MIB is also made applicable to D4 and G.704 devices.

To meet a requirement not easily satisfied in other places, there is one additional group present, the Fractional DS1 group. This is intended to facilitate the use of fractional DS1 devices (i.e., devices which utilize a subset of the 8 bit channels available in the frame) over the managed CSUs.

The terminology used in this document to describe error conditions on a T1 or E1 circuit monitored by a CSU are from references [10], [11], [14], and [15].

Out of Frame event An Out of Frame event is declared when the receiver detects two or more framing-bit errors within a 3 millisecond period, or two or more errors out of five or less consecutive framing-bits. At this time, the framer enters the Out of Frame State, and starts searching for a correct framing pattern. The Out of Frame state ends when reframe occurs.

Loss of Signal This event is declared upon observing 175 +/- 75 contiguous pulse positions with no pulses of either positive or negative polarity (also called keep alive).

Code Violation Error Event A Code Violation Error Event is the occurrence of a received Cyclic Redundancy Check code that is not identical to the corresponding locally-calculated code.

Bipolar Violation A Bipolar Violation, for B8ZS-coded signals, is the

Transmission MIB Working Group [Page 4]

RFC 1232 DS1 Interface Objects May 1991

occurrence of a received bipolar violation that is not part of a zero-substitution code. It also includes other error patterns such as: eight or more consecutive zeros and incorrect parity.

Errored Seconds An Errored Second is a second with one or more Code Violation Error Events OR one or more Out of Frame events. In D4 and G.704 section 2.1.3.2 (eg, G.704 which does not implement the CRC), the presence of Bipolar Violations also triggers an Errored Second.

Severely Errored Seconds A Severely Errored Second is a second with 320 or more Code Violation Error Events OR one or more Out of Frame events.

Severely Errored Framing Second An Severely Errored Framing Second is a second with one or more Out of Frame events.

Unavailable Signal State This state is declared at the onset of 10 consecutive Severely Errored Seconds. It is cleared at the onset of 10 consecutive seconds with no Severely Errored Second.

Unavailable Seconds Unavailable Seconds are calculated by counting the number of seconds that the CSU is in the Unavailable Signal State, including the initial 10 seconds to enter the state but not including the 10 seconds to exit the state.

Note that any second that may be counted as an Unavailable Second may not be counted as an Errored Second, a Severely Errored Second. Since the 10 Severely Errored Seconds that comprise the transition from the available to Unavailable Signal State may also be counted as Errored Seconds, and Severely Errored Seconds previous to entering the state, these three counters are adjusted so that any second counted during this transition is then subtracted. The 10 seconds in the transition from unavailable to available may be counted as Errored Seconds.

A special case exists when the 10 or more second period crosses the 900 second statistics window boundary, as the foregoing description implies that the Severely Errored Second and Unavailable Second counters must be adjusted

Transmission MIB Working Group [Page 5]

RFC 1232 DS1 Interface Objects May 1991

when the Unavailable Signal State is entered. Clearly, successive GETs of the affected ds1IntervalSES and ds1IntervalUAS objects will return differing values if the first GET occurs during the first few seconds of the window. This is viewed as an unavoidable side-effect of selecting the presently deployed AT&T objects as a basis for this memo.

Yellow Alarm A Yellow Alarm is declared because of an incoming Yellow Signal from the far-end. In effect, the circuit is declared to be a one way link.

Red Alarm A Red Alarm is declared because of an incoming Loss of Signal, Loss of Framing, Alarm Indication Signal. After a Red Alarm is declared, the device sends a Yellow Signal to the far-end. The far-end, when receives the Yellow Signal, declares a Yellow Alarm.

Circuit Identifier This is a character string specified by the circuit vendor, and is useful when communicating with the vendor during the troubleshooting process.

-- Although the objects in this group are read-only, at the -- agent's discretion they may be made read-write so that the -- management station, when appropriately authorized, may -- change the behavior of the CSU, e.g., to place the device -- into a loopback state or emit a QRSS BER test.

-- Implementation of this group is mandatory for all systems -- that attach to a ds1.

ds1Index OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "An index value that uniquely identifies an interface to a ds1. The interface identified by a particular value of this index is the same interface as identified by the same value an ifIndex object instance." ::= { ds1ConfigEntry 2 }

ds1TimeElapsed OBJECT-TYPE SYNTAX INTEGER (1..900) ACCESS read-only STATUS mandatory DESCRIPTION "The number of seconds that have elapsed since the beginning of the current error-measurement period. Any fraction is rounded up." ::= { ds1ConfigEntry 3 }

ds1ValidIntervals OBJECT-TYPE SYNTAX INTEGER (0..96) ACCESS read-only STATUS mandatory DESCRIPTION "The number of previous intervals for which valid data was collected. The value will be 96 unless the CSU device was brought online within the last 24 hours, in which case the value will be the number of complete 15 minute intervals the CSU has been online." ::= { ds1ConfigEntry 4 }

Transmission MIB Working Group [Page 8]

RFC 1232 DS1 Interface Objects May 1991

ds1LineType OBJECT-TYPE SYNTAX INTEGER { other(1), ds1ESF(2), ds1D4(3), ds1ANSI-ESF(4), ds1G704(5), ds1G704-CRC(6) } ACCESS read-only STATUS mandatory DESCRIPTION "This variable indicates the variety of DS1 Line implementing this circuit. The type of circuit affects the number of bits per second that the circuit can reasonably carry, as well as the interpretation of the usage and error statistics.

ds1JammedBit refers the Jammed bit Zero Encoding, in which the AT&T specification of at least one pulse every 8 bit periods is literally implemented

Transmission MIB Working Group [Page 9]

RFC 1232 DS1 Interface Objects May 1991

by forcing a pulse in bit 8 of each channel. Thus, only seven bits per channel, or 1.344 Mbps, is available for data.

ds1B8ZS refers to the use of a specified pattern of normal bits and bipolar violations which are used to replace a sequence of eight zero bits (see [14]). In this context, all eight bits in a channel are technically available for data, but care must be taken with D4 encoded data to avoid having HDLC Flag streams imitate spurious Yellow Alarm conditions. Typically, one bit per frame is ignored to force flag streams to rotate, thereby avoiding this error type. CCITT Recommendation G.703 [11] may be referred to for further definition of these.

ds1InvertedHDLC refers to the practice, common on HDLC encoded DS1 data links, of inverting the data between the serial interface chip and the CSU. Since HDLC guarantees one zero every 6 bits in the worst case, while the standards call for (in effect) at least one pulse every eight, inverted HDLC enjoys 4/24 one's density on the line, which may improve the effective clock stability of a DS1 line. As with B8ZS, all eight bits in a channel are technically available for data, but care must be taken with D4 encoded data to avoid having HDLC Flag streams imitate spurious Yellow Alarm conditions. Typically, one bit per frame is ignored to force flag streams to rotate, thereby avoiding this error type.

ACCESS read-only STATUS mandatory DESCRIPTION "This variable represents the loopback state of the CSU. Devices supporting read/write access should return badValue in response to a requested loopback state that the CSU does not support. The values mean:

ds1NoLoop

Not in the loopback state. A device that is not capable of performing a loopback on either interface shall always return this as it's value.

ds1LocalLoopbackLocalSide

Signal received from the local side of the device is looped back at the local connector (eg, without involving the CSU).

ds1LocalLoopbackRemoteSide

Signal received from the local side of the device is looped back at the remote connector (eg, through the CSU).

ds1RemoteLoopbackLocalSide

Signal received from the remote side of the device is looped back at the local connector (eg, through the CSU).

ds1RemoteLoopbackRemoteSide

Signal received from the remote side of the device is looped back at the remote connector (eg, without involving the CSU)." ::= { ds1ConfigEntry 7 }

-- Implementation of this group is mandatory for all systems -- that attach to a ds1.

-- It is recognized that some currently deployed CSUs do not -- record the entire set of statistics specified in this -- group. Accordingly, some agents queried for these objects -- may treat these objects as having an ACCESS clause value -- of not-accessible.

ds1IntervalIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index value which uniquely identifies the CSU to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the same value an ds1CSUIndex object instance." ::= { ds1IntervalEntry 1 }

ds1IntervalCVs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The counter associated with the number of Code Violation Error Events, as defined by ANSI Draft Standard T1M1.3/90 - 027R2[15], encountered by a DS1 CSU during one of the previous 96 fifteen minute intervals.

Note that D4 and G.704 (section 2.1.3.2) interfaces do not support Code Violation Error Events. Accordingly, such agents may treat this object as having an ACCESS clause value of not- accessible." ::= { ds1IntervalEntry 9 }

-- the DS1 Current group

-- Implementation of this group is mandatory for all systems -- that attach to a ds1.

-- It is recognized that some currently deployed CSUs do not -- record the entire set of statistics specified in this -- group. Accordingly, some agents queried for these objects -- may treat these objects as having an ACCESS clause value -- of not-accessible.

ds1CurrentIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index value which uniquely identifies the CSU to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the same value

ds1CurrentCVs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The counter associated with the number of Code Violation Error Events, as defined by ANSI Draft Standard T1M1.3/90 - 027R2[15], encountered by a DS1 CSU in the current 15 minute interval.

Note that D4 and G.704 (section 2.1.3.2) interfaces do not support Code Violation Error Events. Accordingly, such agents may treat this object as having an ACCESS clause value of not- accessible." ::= { ds1CurrentEntry 8 }

-- the DS1 Total group

-- Implementation of this group is mandatory for all systems -- that attach to a ds1.

-- It is recognized that some currently deployed CSUs do not -- record the entire set of statistics specified in this -- group. Accordingly, some agents queried for these objects

Transmission MIB Working Group [Page 19]

RFC 1232 DS1 Interface Objects May 1991

-- may treat these objects as having an ACCESS clause value -- of not-accessible.

-- The DS1 Total Table contains the cumulative sum of the -- various statistics for the 24 hour interval preceding the -- first valid interval in the ds1CurrentTable.

DESCRIPTION "The index value which uniquely identifies the CSU to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the same value an ds1CSUIndex object instance." ::= { ds1TotalEntry 1 }

Note that D4 and G.704 (section 2.1.3.2) interfaces do not support Code Violation Error Events. Accordingly, such agents may treat this object as having an ACCESS clause value of not- accessible." ::= { ds1TotalEntry 8 }

-- the DS1 Fractional group

-- Implementation of this group is mandatory for those

Transmission MIB Working Group [Page 22]

RFC 1232 DS1 Interface Objects May 1991

-- systems utilizing a fractional DS1 capability

-- The DS1 fractional table contains identifies which DS1 -- channels associated with a CSU are being used to support a -- logical interface, i.e., an entry in the interfaces table -- from the Internet-standard MIB. For Clear Channel -- implementations, exactly one ifTable entry corresponds to -- the CSU being managed. In this very typical case, the -- variable ds1Index indicates the value of ifIndex which -- corresponds to the interface being supported by a -- particular CSU.

-- However, for fractional DS1 implementations, the -- correspondent value of ds1Index is 0, and for each DS1 -- channel supporting a logical interface, there is an entry -- in the DS1 fractional table which names a value for -- ifIndex. -- -- For ds1ESF, ds1D4, and ds1ANSI-ESF, there are 24 legal -- channels, numbered 1 through 24. -- -- For G.704, there are 32 legal channels, numbered 1 -- through 32. ds1G704 can carry user data in channels 2 -- through 32, channel 1 being an overhead channel. -- ds1G704-CRC can carry user data in channels 2 through -- 16 and 18 through 32, channels 1 and 17 being overhead -- channels.

ds1FracIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index value which uniquely identifies the CSU to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the same value an ds1CSUIndex object instance." ::= { ds1FracEntry 1 }

ds1FracIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "An index value that uniquely identifies an interface to a ds1. The interface identified by a particular value of this index is the same interface as identified by the same value an ifIndex object instance." ::= { ds1FracEntry 3 }