Internet Draft                                               David Zelig
Expires: August 2004                                   Corrigent Systems

                                                        Thomas D. Nadeau
                                                     Cisco Systems, Inc.

                                                          Dave Danenberg

                                                           Sharon Mantin
                                                                AxONLink
                                                           February 2004


               Pseudo Wire (PW) Management Information Base

                      draft-ietf-pwe3-pw-mib-04.txt

Status of this Memo

    This document is an Internet-Draft and is in full conformance with
    all provisions of Section 10 of RFC2026.
    Internet-Drafts are working documents of the Internet Engineering
    Task Force (IETF), its areas, and its working groups.  Note that
    other groups may also distribute working documents as Internet-
    Drafts.

    Internet-Drafts are draft documents valid for a maximum of six
    months and may be updated, replaced, or obsoleted by other
    documents at any time.  It is inappropriate to use Internet-Drafts
    as reference material or to cite them other than as "work in
    progress."
    The list of current Internet-Drafts can be accessed at
         http://www.ietf.org/ietf/1id-abstracts.txt
    The list of Internet-Draft Shadow Directories can be accessed at
         http://www.ietf.org/shadow.html.
    Copyright (C) The Internet Society (2001). All rights reserved.

1  Abstract

    This memo defines an experimental portion of the Management
    Information Base (MIB) for use with network management protocols
    in the Internet community.  In particular, it describes managed
    objects for modeling of Pseudo Wire (PW) services on a general
    Packet Switched Net (PSN).








     Zelig et al.        Expires August 2004                 [page 1]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


Table of Contents


   1  Abstract.......................................................1
   2  Introduction...................................................2
   3  Terminology....................................................3
   4  The Internet-Standard Management Framework.....................3
   5  Feature Checklist..............................................3
   6  PWE3 MIB Modules usage.........................................3
   6.1  MIB modules Architecture.....................................3
   6.2  PW MIB usage.................................................4
   6.3  Relations to other PWE3 MIB modules..........................4
   6.4  Relations to the ifTable.....................................5
   6.5  Example of the PW MIB modules usage..........................5
   7  Object definitions.............................................7
   8  Security considerations.......................................44
   9  IANA considerations...........................................45
   10   References..................................................45
   10.1 Normative references........................................45
   10.2 Informative references......................................47
   11   Author's Addresses..........................................47
   12   Full Copyright Statement....................................47
   13   Intellectual Property Notice................................48


2  Introduction

    This document describes a model for managing pseudo wire services
    for transmission over a packet Switched Network (PSN). This MIB
    module is generic and common to all types of PSN and PW services.
    This document is closely related to [FRARCH], describing the
    transport and encapsulation of L1 and L2 services over any type of
    PSN and MPLS respectively, creating a Pseudo Wire (PW) service.
    This document describes the MIB objects that define the generic
    pseudo wire association to the PSN and pseudo wire configurations
    that are not specific to the carried service. A PW type field will
    be used to point to the relevant service MIB tables, described in
    other documents, and a similar PSN type field will point to PSN
    specific modules, for example [PWMPLSMIB].

Conventions used in this document
    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
    NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and
    "OPTIONAL" in this document are to be interpreted as described in
    RFC-2119 [BCP14].




    Zelig et al          Expires August 2004                 [page 2]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


3  Terminology

    This document uses terminology from the document describing the PW
    architecture [PWARCH].

4  The Internet-Standard Management Framework

    For a detailed overview of the documents that describe the current
    Internet-Standard Management Framework, please refer to section 7
    of RFC 3410 [RFC3410].

    Managed objects are accessed via a virtual information store,
    termed the Management Information Base or MIB.  MIB objects are
    generally accessed through the Simple Network Management Protocol
    (SNMP). Objects in the MIB are defined using the mechanisms
    defined in the Structure of Management Information (SMI).  This
    memo specifies a MIB module that is compliant to the SMIv2, which
    is described in STD 58,RFC 2578 [RFC2578], STD 58, RFC 2579
    [RFC2579] and STD 58, RFC 2580 [RFC2580].


5  Feature Checklist

    The PW MIB module is designed to satisfy the following
    requirements and constraints:

     - The MIB is designed to be extensible to all types of PSN. PSN
       type specific MIB modules will be defined in additional
       documents.

     - The MIB enables the use of any emulated service. Emulated
       service specific MIB modules will be defined in additional
       documents.

     - The MIB module supports manually configured PWs.

     - The MIB module supports the PW ID and Group ID, as well as the
       generalized PW ID identification.

     - The MIB module supports point-to-point PW connections.

6  PWE3 MIB Modules usage

6.1  MIB modules Architecture

    The MIB module structure for defining a PW service is composed
    from three types of modules.

    The first type is the PW MIB module, which configures general
    parameters of the PW that are common to all types of emulated
    services and PSN types.

    Zelig et al          Expires August 2004                 [page 3]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



    The second type of modules is PSN type specific module. There is a
    different module for each type of PSN. These modules associate the
    PW with one or more "tunnels" that carry the service over the PSN.
    These modules are defined in other documents; see for example
    [PWMPLSMIB].

    The third type of modules is service-specific module, which is
    emulated signal type dependent. These modules are defined in other
    documents; see for example [CEPMIB].

    [PWTC] defines some of the object types used in these modules.

6.2  PW MIB usage

    An entry in the PW table (pwVcTable) MUST exist for all PW types
    (ATM, FR, Ethernet, SONET, etc.). This table holds generic
    parameters related to the PW creation and monitoring.

    A row can be created in the pwVcTable by:

    1) The operator creates a row in the PwVcTable when configuring
    the node for a new service. This mode MUST be supported by the
    agent, and MUST used when creating a non-signaled PW (manually
    assigned).

    2) The agent when if a signaling message has been received from a
    peer node for a combination of signaling identifications
    parameters already unknown to the local node. This mode is
    OPTIONAL.

    3) The agent for PW created automatically due to some auto
    discovery application. This mode is OPTIONAL.

    - The agent creates the rows in the (locally supported)
    performance tables and reverse mapping tables in PW MIB module.

6.3  Relations to other PWE3 MIB modules

    - Based on the PSN type defined for the PW, rows are created in
    PSN specific module (for example [PWMPLSMIB]) and associated to
    the PW table by the common pwVcindex.

    - Based on the PW type defined for the PW, rows are created in
    service-specific module (for example [CEPMIB]) and associated to
    the PW table by the common pwVcindex.

    - Unless all the necessary entries in the applicable tables have
    been created and all the parameters have been consistently
    configured in those tables, signaling cannot be performed from the
    local node, and the pwVcOperStatus should report ‘notPresent’.

    Zelig et al          Expires August 2004                 [page 4]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base




6.4  Relations to the ifTable

    The PW itself is in general not an ifIndex as it's own, from agent
    scalability reasons. In many cases the PW is associated via the
    MIB tables to an ifIndex the VC is emulating. This ifIndex may
    represent a physical entity - for example a PW emulating a SONET
    path as in CEP: The PW itself is not an ifIndex, however the MIB
    associate the PW to the ifIndex of the path to be emulated. In
    some cases, the PW will be associated to an ifIndex representing a
    virtual interface.  An example is VPLS service where the PW
    emulates a logical interface of a (logical) bridge. The physical
    ports association to the VPLS service instance is defined in non-
    PW MIBs in this case.

    Exception to the above MAY exist in some services, where it is
    convenient to manage the PW as an ifIndex in the ifTable. A
    special ifType to represent a PW virtual interface (exact number
    to be assigned by IANA) will be used in the ifTable in this case.

    Note that the ifIndex that carry the PW toward/from the PSN is in
    general not explicitly configured via PW MIB modules except in
    rare cases. In most cases the PW is carried inside a PSN tunnel,
    and the interfaces carrying the tunnel are specified in the
    related MIBs that control the PSN tunnels.

6.5  Example of the PW MIB modules usage

    In this section we provide an example of using the MIB objects
    described in section 7 to set up a CEP PW over MPLS PSN. While
    this example is not meant to illustrate every permutation of the
    MIB, it is intended as an aid to understanding some of the key
    concepts. It is meant to be read after going through the MIB
    itself.
    In this example a PW service for CEP is configured over an MPLS
    PSN (MPLS-TE tunnel). It uses LDP as in [PWCNTRL] for service set-
    up.

    In PW MIB:

    In pwVcTable:
    {
       pwVcIndex               5,

       pwVcType                cep,
       pwVcOwner               pwIdFecSignaling,
       pwVcPsnType             mpls,
       pwVcSetUpPriority       0, -- Highest
       pwVcHoldingPriority     0, -- Highest
       pwVcInboundMode         loose,

    Zelig et al          Expires August 2004                 [page 5]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



       pwVcPeerAddrType        ipv4,
       pwVcPeerAddr            1.4.3.2, -- In this case equal to the
                                        -- peer LDP entity IP addr
       pwVcID                  10,
       pwVcLocalGroupID        12,
       ..

       pwVcCwPreference        true,  --  Actually ignored for CEP
       pwVcLocalIfMtu          0,      -- Do not send ifMtu parameter
       pwVcLocalIfString       false,  -- Do not send interface string
       pwVcCapabAdvert         0,      -- Does not support status
                                       -- report to the peer.
       pwVcRemoteGroupID       0xFFFF, -- Will be received by
                                       -- maintenance protocol
       pwVcRemoteCwStatus      notKnownYet,
       pwVcRemoteIfMtu         0,
       pwVcRemoteIfString      "",
       pwVcRemoteCapabilities  notYetKnown,
       ..
       pwVcOutboundVcLabel     0xFFFF, -- Will be received by
                                       -- maintenance protocol
       pwVcInboundVcLabel      0xFFFF, -- Will be set by maintenance
                                       -- protocol
       pwVcName                "Example of CEP VC",
       pwVcDescr               "",
       ..

       pwVcAdminStatus         up,
       ..
   }

    The agent now creates a row in pwVcMplsTable [PWMPLS] based on the
    pwVcindex. The EMS should configure this table with MPLS specific
    values.

    In PW MPLS MIB:

    In pwVcMplsTable:
    {
          pwVcMplsMplsType        mplsTe,
          pwVcMplsExpBitsMode     outerTunnel,
          pwVcMplsExpBits         0, -- Not applicable
          pwVcMplsTtl             2,
          ...
    }

    The operator now associates the PW with an outgoing TE tunnel, via
    PwVcMplsOutboundEntry (which the agent has created automatically
    for the specified PW).


    Zelig et al          Expires August 2004                 [page 6]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


    In PwVcMplsOutboundEntry:

    {
     pwVcMplsOutboundLsrXcIndex       0, -- A TE Tunnel
     pwVcMplsOutboundTunnelIndex      500,
     pwVcMplsOutboundTunnelInstance   0,
     pwVcMplsOutboundTunnelPeerLsrID  1.4.3.2
     pwVcMplsOutboundTunnelLocalLsrID 1.2.3.4, -- Always the LSR ID
                                      -- of the current node.
     PwVcMplsOutboundIfIndex          0,
     ..
    }


    For the operation in the service specific MIB module, see the
    specific MIB module memo. This example is continued in the memo
    describing the PW CEP MIB [CEPMIB].

7  Object definitions


   PW-DRAFT04-MIB DEFINITIONS ::= BEGIN

   IMPORTS
      NOTIFICATION-TYPE, MODULE-IDENTITY, OBJECT-TYPE,
      Integer32, Unsigned32, Counter32, Counter64, TimeTicks
         FROM SNMPv2-SMI

      MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
         FROM SNMPv2-CONF

      TruthValue, RowStatus, StorageType,
      TimeStamp
         FROM SNMPv2-TC

      SnmpAdminString
         FROM SNMP-FRAMEWORK-MIB

      PwVcIndexType, PwGroupID, PwVcIDType, PwOperStatus, PwVcType,
      PwVcAttachmentIdentifierType, PwVcCwStatus, PwVcCapabilities,
      PwVcStatus, PwVcFragSize, PwVcFragStatus, pwStdMIB
         FROM PW-TC-DRAFT04-MIB

      InterfaceIndexOrZero
         FROM IF-MIB

      InetAddressType, InetAddress
         FROM INET-ADDRESS-MIB

      PerfCurrentCount, PerfIntervalCount
         FROM PerfHist-TC-MIB

    Zelig et al          Expires August 2004                 [page 7]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



      HCPerfCurrentCount, HCPerfIntervalCount, HCPerfTimeElapsed,
      HCPerfValidIntervals
         FROM HC-PerfHist-TC-MIB
   ;

   pwVcMIB MODULE-IDENTITY
      LAST-UPDATED "200402031200Z"  -- 3 February 2004 12:00:00 GMT
      ORGANIZATION "Pseudo Wire Edge to Edge Emulation (PWE3) Working
                    Group"
      CONTACT-INFO
          "
           David Zelig
           Postal: Corrigent Systems
                   126, Yigal Alon St.
                   Tel Aviv, ISRAEL
                   Phone: +972-3-6945273
           E-mail: davidz@corrigent.com

           Thomas D. Nadeau
           Postal: Cisco Systems, Inc.
                   250 Apollo Drive
                   Chelmsford, MA 01824
           Tel:    +1-978-497-3051
           Email:  tnadeau@cisco.com

           Dave Danenberg
           Email:  dave_danenberg@yahoo.com

                    Sharon Mantin
           Postal:  AxONLink (Israel) Ltd
                    9 Bareket St.
                    Petah Tikva 49517, Israel
           Tel:     +972-3-9263972
           Email:   sharon.mantin@axonlink.com

           The PWE3 Working Group (email distribution pwe3@ietf.org,
           http://www.ietf.org/html.charters/pwe3-charter.html)
           "

      DESCRIPTION
          "This MIB module contains managed object definitions for
           Pseudo Wire operation as in: Bryant., et al, 'PWE3
           architecture', Martini, L., et al, 'Pseudowire Setup and
           Maintenance using LDP', and Townsley, M., et al, 'Layer Two
           Tunneling Protocol (Version 3)'.

   -- Editor note: will add RFC numbers when available.
           This MIB module enables the use of any underlying packet
           switched network (PSN). MIB nodules that will support
           PW operations over specific PSN types are defined in

    Zelig et al          Expires August 2004                 [page 8]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


           separate memos.

           The indexes for this MIB module are also used to index the
           PSN-specific tables and the PW-specific tables. The PW Type
           dictates which PW-specific MIB module to use.

           Copyright (C) The Internet Society (date).  This version
           of this MIB module is part of RFC yyyy;  see the RFC
           itself for full legal notices.
   -- RFC Ed.: replace yyyy with actual RFC number & remove this note
           "

      -- Revision history.

      REVISION
          "200402031200Z"  -- 3 February 2004 12:00:00 GMT
      DESCRIPTION
          " published as draft-ietf-pw-mib-04. Changes from previous
            draft:
            - Adding an option for PW stitching - pwVcAttachedPwIndex.
            - Removing unnecessary index from pwVcPeerMappingTable.
            - Adding 32 bit counter support across performance tables.
            - Changing pwVcIndexMappingVcIndex to read-create in order
              to enable an option for EMS control on pwVcIndex.
            - Add optional mapping of a pwVcIndex to an ifIndex.
            - remove RowStatus from mapping table.
            - Change time elapsed items to HCPerfTimeElapsed TC
            - Change current and interval counters to their respective
              TC from existing TC modules.
            - Add disable/enable control for pwVcDeletedNotification.
            - Change pwVcRemoteCwStatus to pwVcCwStatus, and it now
              represent both the signaling status whether CW is to be
              present or not.
         "

      REVISION
          "200312101200Z"  -- 10 December 2003 12:00:00 EST
      DESCRIPTION
          " re-published as draft-ietf-pw-mib-03. Changes from
   previous
            draft:
            - Changing textual convention back to TruthValue where
              required for correct compilation.
            - Editing description clauses.
            - Adapting main description clause to MIB boilerplate.
            - Adapat MIB names to STD-MIB naming convention.
            - Add pwVcRemoteStatusCapable.
            - Add PW delete notification.
            - Add pwVcLastChanged.
            - Clarify usage of pwVcIndexMappingTable.
           "

    Zelig et al          Expires August 2004                 [page 9]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



      REVISION
          "200307211200Z"  -- 21 July 2003 12:00:00 EST
      DESCRIPTION
          " published as draft-ietf-pw-mib-02. Changes from previous
            draft:
            1) Aligned with draft-pwe3-control-protocol-02.txt
            2) Add support for Generalized ID FEC Element option.
            3) Add support for fragmentation status.
            3) Add notifications and notification control.
            4) Remove control word to service specific MIB modules.
           "

      REVISION
          "200205261200Z"  -- 26 May 2002 12:00:00 EST
      DESCRIPTION
          "Moved to draft-ietf-00 status. Changes from previous draft:
           1) Change name of pwVcPriority to pwVcSetUpPriority and
              added pwVcHoldingPriority.
           2) Add pwVcIdMappingTable and pwVcPeersMappingTable to help
              ordered query of the MIB tables for EMS applications.
           3) Clarification to work in progress objects.
           4) Editorial and typos in descriptions.
           5) Added pwVcPerfTotalDiscontinuityTime and
              pwVcPerfIntervalTimeElapsed.
           6) Remove 32 bit counters.
          "
      REVISION
          "200201301200Z"  -- 30 January 2002 12:00:00 EST
      DESCRIPTION
          " Changes from -01 draft:
            1) Inbound and outbound clarification and name changes.
            2) Removing pwVcPeerIpv4Addr and pwVcPeerIpv6Addr,
               replacing them with pwVcPeerAddr and adding type for
               address type selection.
            3) Adding type for VC OperStatus.
            4) Adding pwVcTimeElapsed and pwVcValidIntervals.

          "
      REVISION
          "200111071200Z"  -- 7 November 2001 12:00:00 EST
      DESCRIPTION
         "Changes from -00 draft:
         1) Remove VcInstance from tables indexes in order to simplify
            the MIB.
         2) Removing APS 1+1 table.
         3) Changing hdlcCisco to hdlc in pwVcType.
         4) Add description of VC label at pending PW signaling stage.
         5) Add interval valid object in interval performance tables.
         6) Remove VC APS notification.
         7) Change 'conservative'/'liberal' to 'strict'/'loose'.

    Zelig et al          Expires August 2004                [page 10]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


         8) Add objects for interface MTU, use of control word,
            interface string.
         9) Ordering of objects based on functionality.
         10) Update operation of pwVcOperStatus.
         "

      REVISION
          "200107111200Z"  -- 11 July 2001 12:00:00 EST
      DESCRIPTION
         "draft-00 version"

      ::= { pwStdMIB 2 } -- To be assigned by IANA

   -- Top-level components of this MIB.

   -- Notifications
   pwVcNotifications OBJECT IDENTIFIER
                                 ::= { pwVcMIB 0 }
   -- Tables, Scalars
   pwVcObjects       OBJECT IDENTIFIER
                                 ::= { pwVcMIB 1 }
   -- Conformance
   pwVcConformance   OBJECT IDENTIFIER
                                 ::= { pwVcMIB 2 }

   -- PW Virtual Connection (VC) Table

   pwVcIndexNext OBJECT-TYPE
      SYNTAX            Unsigned32
      MAX-ACCESS        read-only
      STATUS            current
      DESCRIPTION
          "This object contains an appropriate value to be used
           for pwVcIndex when creating entries in the
           pwVcTable. The value 0 indicates that no
           unassigned entries are available.  To obtain the
           value of pwVcIndex for a new entry in the
           pwVcTable, the manager issues a management
           protocol retrieval operation to obtain the current
           value of pwVcIndex.  After each retrieval
           operation, the agent should modify the value to
           reflect the next unassigned index.  After a manager
           retrieves a value the agent will determine through
           its local policy when this index value will be made
           available for reuse."
      ::= { pwVcObjects 1 }


   pwVcTable   OBJECT-TYPE
      SYNTAX        SEQUENCE OF PwVcEntry
      MAX-ACCESS    not-accessible

    Zelig et al          Expires August 2004                [page 11]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      STATUS        current
      DESCRIPTION
          "This table specifies information for configuring and
           status monitoring which are common to all service types
           and PSN types."

      ::= { pwVcObjects 2 }

   pwVcEntry   OBJECT-TYPE
      SYNTAX        PwVcEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "A row in this table represents a pseudo wire (PW) virtual
            connection (VC) across a packet network. It is indexed by
            pwVcIndex, which uniquely identifying a singular
            connection.
            A row is created by the operator or by the agent if the PW
            is created by non-SNMP application or due to autosicovery
            process."
      INDEX  { pwVcIndex }

         ::= { pwVcTable 1 }

   PwVcEntry ::= SEQUENCE {
         pwVcIndex               PwVcIndexType,
         pwVcType                PwVcType,
         pwVcOwner               INTEGER,
         pwVcPsnType             INTEGER,
         pwVcSetUpPriority       Integer32,
         pwVcHoldingPriority     Integer32,
         pwVcPeerAddrType        InetAddressType,
         pwVcPeerAddr            InetAddress,
         pwVcAttachedPwIndex     PwVcIndexType,
         pwVcIfIndex             InterfaceIndexOrZero,

         pwVcID                  PwVcIDType,
         pwVcLocalGroupID        PwGroupID,
         pwVcGroupAttachmentID   PwVcAttachmentIdentifierType,
         pwVcLocalAttachmentID   PwVcAttachmentIdentifierType,
         pwVcPeerAttachmentID    PwVcAttachmentIdentifierType,

         pwVcCwPreference        TruthValue,
         pwVcLocalIfMtu          Unsigned32,
         pwVcLocalIfString       TruthValue,
         pwVcLocalCapabAdvert    PwVcCapabilities,
         pwVcRemoteGroupID       PwGroupID,
         pwVcCwStatus            PwVcCwStatus,
         pwVcRemoteIfMtu         Unsigned32,
         pwVcRemoteIfString      SnmpAdminString,
         pwVcRemoteCapabilities  PwVcCapabilities,

    Zelig et al          Expires August 2004                [page 12]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



         pwVcFragmentCfgSize     PwVcFragSize,
         pwVcRmtFragCapability   PwVcFragStatus,
         pwVcFcsRetentioncfg     INTEGER,
         pwVcFcsRetentionStatus  BITS,

         pwVcOutboundVcLabel     Unsigned32,
         pwVcInboundVcLabel      Unsigned32,

         pwVcName                SnmpAdminString,
         pwVcDescr               SnmpAdminString,
         pwVcCreateTime          TimeStamp,
         pwVcUpTime              TimeTicks,
         pwVcLastChange          TimeTicks,
         pwVcAdminStatus         INTEGER,
         pwVcOperStatus          PwOperStatus,
         pwVcLocalStatus         PwVcStatus,
         pwVcRemoteStatusCapable INTEGER,
         pwVcRemoteStatus        PwVcStatus,

         pwVcTimeElapsed         HCPerfTimeElapsed,
         pwVcValidIntervals      HCPerfValidIntervals,

         pwVcRowStatus           RowStatus,
         pwVcStorageType         StorageType
      }

   pwVcIndex OBJECT-TYPE
      SYNTAX        PwVcIndexType
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
          "Index for the conceptual row identifying a PW within
           this PW Emulation table."
      ::= { pwVcEntry 1 }

   pwVcType OBJECT-TYPE
      SYNTAX        PwVcType
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "This value indicate the service to be carried over
           this PW.
          "
      ::= { pwVcEntry 2 }

   pwVcOwner OBJECT-TYPE
      SYNTAX   INTEGER {
             manual                (1),
             pwIdFecSignaling      (2), -- PW signaling with PW ID FEC
             genFecSignaling       (3), -- Generalized attachment FEC

    Zelig et al          Expires August 2004                [page 13]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


             l2tpControlProtocol   (4),
             other                 (5)
                       }
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
           "Set by the operator to indicate the protocol responsible
            for establishing this PW. Value 'manual' is used in all
            cases where no maintenance protocol (PW signaling) is used
            to set-up the PW, i.e. require configuration of entries in
            the PW tables including PW labels, etc. The value
            'pwIdFecSignaling' is used in case of signaling with the
            Pwid FEC element with LDP signaling, and
            'genFecSignaling' is used of the generalized FEC with LDP
            is used for signaling purposes.
            The value 'l2tpControlProtocol' indicate the use of L2TP
            control protocol.
            Value 'other' is used for other types of signaling."
      ::= { pwVcEntry 3 }


   pwVcPsnType OBJECT-TYPE
      SYNTAX   INTEGER {
          mpls       (1),
          l2tp       (2),
          ip         (3),
          mplsOverIp (4),
          gre        (5),
          other      (6)
                       }
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
           "Set by the operator to indicate the PSN type on which this
            PW will be carried. Based on this object, the relevant PSN
            table entries are created in the in the PSN specific MIB
            modules. For example, if mpls(1) is defined, the agent
            create an entry in pwVcMplsTable, which further define the
            MPLS PSN configuration.
           "
      ::= { pwVcEntry 4 }

   pwVcSetUpPriority  OBJECT-TYPE
      SYNTAX         Integer32 (0..7)
      MAX-ACCESS     read-create
      STATUS         current
      DESCRIPTION
           "This object define the relative set-up priority of the PW
            in a lowest-to-highest fashion, where 0 is the highest
            priority. PWs with the same priority are treated with
            equal priority. Dropped VC will be set 'dormant' (as

    Zelig et al          Expires August 2004                [page 14]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


            indicated in pwVcOperStatus).
            This value is significant if there are competing resources
            between VCs and the implementation support this feature.
            If not supported or not relevant, the value of zero MUST
            be used."
      DEFVAL
          { 0 }
      ::= { pwVcEntry 5 }

   pwVcHoldingPriority  OBJECT-TYPE
      SYNTAX         Integer32 (0..7)
      MAX-ACCESS     read-create
      STATUS         current
      DESCRIPTION
           "This object define the relative holding priority of the PW
            in a lowest-to-highest fashion, where 0 is the highest
            priority. PWs with the same priority are treated with
            equal priority. Dropped VC will be set 'dormant' (as
            indicated in pwVcOperStatus).
            This value is significant if there are competing resources
            between PWs and the implementation support this feature.
            If not supported or not relevant, the value of zero MUST
            be used."
      DEFVAL
          { 0 }
      ::= { pwVcEntry 6 }


   pwVcPeerAddrType OBJECT-TYPE
      SYNTAX        InetAddressType
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
           "Denotes the address type of the peer node maintenance
            protocol (signaling) address if PW maintenance protocol is
            used for the PW creation. It should be set to
            'unknown' if PE/PW maintenance protocol is not used,
            i.e. pwVcOwner is set to 'manual'. "
      DEFVAL        { ipv4 }
      ::= { pwVcEntry 8 }

   pwVcPeerAddr OBJECT-TYPE
      SYNTAX        InetAddress
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
           "This object contain the value of the peer node address
            of the PW/PE maintenance protocol entity. This object
            should contain a value of 0 if not applicable (manual
            configuration of the PW)."
      ::= { pwVcEntry 9 }

    Zelig et al          Expires August 2004                [page 15]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



   pwVcAttachedPwIndex OBJECT-TYPE
      SYNTAX        PwVcIndexType
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "If the PW is attached to another PW instead of a local
           native service, this item indicates the pwVcIndex of the
           attached PW, and the PW specific entry in the service MIB
           module MUST not be created. Otherwise, this object MUST
           be set to zero."
      DEFVAL { 0 }
             ::= { pwVcEntry 10 }

   pwVcIfIndex OBJECT-TYPE
      SYNTAX        InterfaceIndexOrZero
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "If the PW is represented in the ifTable as an ifIndex, this
           item holds the ifIndex of the PW in the ifTable, otherwise
           it MUST be set to zero."
      DEFVAL { 0 }
      ::= { pwVcEntry 11 }

   pwVcID OBJECT-TYPE
      SYNTAX        PwVcIDType
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "Used in the outgoing PW ID field within the 'Virtual
           Circuit FEC Element'.
           Applicable if pwVcOwner equal 'pwIdFecSignaling' or
           'l2tpControlProtocol', should be set to zero otherwise."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
             ::= { pwVcEntry 12 }

   pwVcLocalGroupID OBJECT-TYPE
      SYNTAX        PwGroupID
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "Used in the Group ID field sent to the peer PWES
           within the maintenance protocol used for PW setup.
           Applicable if pwVcOwner equal 'pwIdFecSignaling' or
           'l2tpControlProtocol', should be set to zero otherwise."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 13 }


    Zelig et al          Expires August 2004                [page 16]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


   pwVcGroupAttachmentID OBJECT-TYPE
      SYNTAX        PwVcAttachmentIdentifierType
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "This object is an octet string representing the attachment
           group identifier (AGI) this PW belongs too, which typically
           identifies the VPN ID.
           Applicable if pwVcOwner equal 'genFecSignaling'. Should be
           set to NULL (zero length) if not applicable."
       REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 14 }

   pwVcLocalAttachmentID   OBJECT-TYPE
      SYNTAX        PwVcAttachmentIdentifierType
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "This object is an octet string representing the local
           forwarder attachment individual identifier (AII) to be
           used by this PW. It is used as the SAII for outgoing
           signaling messages and the TAII in the incoming messages
           from the peer.
           Applicable if pwVcOwner equal 'genFecSignaling'. Should be
           set to NULL (zero length) if not applicable. "
       REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 15 }

   pwVcPeerAttachmentID   OBJECT-TYPE
      SYNTAX        PwVcAttachmentIdentifierType
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "This object is an octet string representing the peer
           forwarder attachment individual identifier (AII) to be
           used by this PW. It is used as the TAII for outgoing
           signaling messages and the SAII in the incoming messages
           from the peer.
           Applicable if pwVcOwner equal 'genFecSignaling'. Should be
           set to NULL (zero length) if not applicable. "
       REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 16 }

   pwVcCwPreference OBJECT-TYPE
      SYNTAX        TruthValue
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION

    Zelig et al          Expires August 2004                [page 17]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


          "Define if the control word will be sent with each packet
           by the local node. Some PW types mandate the use of
           control word, and is such cases the value configured has
           no effect on the existence of the control word."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      DEFVAL
          { false }
      ::= { pwVcEntry 17 }

   pwVcLocalIfMtu OBJECT-TYPE
      SYNTAX        Unsigned32 (0..65535)
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "If not equal zero, the optional IfMtu object in the
           maintenance protocol will be sent with this value,
           representing the locally supported MTU size over the
           interface (or the virtual interface) associated with the
           PW."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      DEFVAL
          { 0 }
      ::= { pwVcEntry 18 }

   pwVcLocalIfString OBJECT-TYPE
      SYNTAX        TruthValue
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "Each PW is associated to an interface (or a virtual
           interface) in the ifTable of the node as part of the
           service configuration. This object defines if the
           maintenance protocol will send the interface's name as
           appears on the ifTable in the name object as part of the
           maintenance protocol. If set to false, the optional
           element will not be sent."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      DEFVAL
          { false }
      ::= { pwVcEntry 19 }

   pwVcLocalCapabAdvert OBJECT-TYPE
      SYNTAX        PwVcCapabilities
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "Indicate the capabilities to be advertised by this node
           to the peer."

    Zelig et al          Expires August 2004                [page 18]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 20 }

   pwVcRemoteGroupID OBJECT-TYPE
      SYNTAX        PwGroupID
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "Obtained from the Group ID field as received via the
           maintenance protocol used for VC setup, zero if not used.
           Value of 0xFFFF shall be used if the object is yet to be
           defined by the PW maintenance protocol."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 21 }

   pwVcCwStatus OBJECT-TYPE
      SYNTAX        PwVcCwStatus
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "If signaling is used for PW establishment, this object
           indicates the status of the control word negotiation,
           and in both signaling or manual configuration indicates
           if CW is to be present or not for this PW.
          "
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>.
          "
      ::= { pwVcEntry 22 }

   pwVcRemoteIfMtu OBJECT-TYPE
      SYNTAX        Unsigned32
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "The remote interface MTU as (optionally) received from the
           remote node via the maintenance protocol. Should be zero
           if this parameter is not available or not used."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 23 }

   pwVcRemoteIfString OBJECT-TYPE
      SYNTAX        SnmpAdminString (SIZE (0..80))
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "Indicate the interface description string as received by
           the maintenance protocol, MUST be NULL string if not

    Zelig et al          Expires August 2004                [page 19]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


           applicable or not known yet."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 24 }

   pwVcRemoteCapabilities OBJECT-TYPE
      SYNTAX        PwVcCapabilities
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "Indicate the capabilities as advertised by the peer."
      REFERENCE
          "Martini, et al, <draft-pwe3-control-protocol>."
      ::= { pwVcEntry 25 }

   pwVcFragmentCfgSize OBJECT-TYPE
      SYNTAX        PwVcFragSize
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "If set to value other than zero, indicate that
           fragmentation is desired for this PW."
      REFERENCE
          "Malis A., Townsley M., 'PWE3 Fragmentation and Reassembly'
           - work in progress"
      ::= { pwVcEntry 26 }

   pwVcRmtFragCapability OBJECT-TYPE
      SYNTAX        PwVcFragStatus
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "The status of the fragmentation based on the local
           configuration and the peer capabilities as advertised by
           the peer if control protocol is used."
      REFERENCE
          "Malis A., Townsley M., 'PWE3 Fragmentation and Reassembly'
           - work in progress"
      ::= { pwVcEntry 27 }

   pwVcFcsRetentioncfg OBJECT-TYPE
      SYNTAX        INTEGER {
                    fcsRetentionDisable  (1),
                    fcsRetentionEnable   (2)
      }
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "The local configuration of FCS retention for this PW. FCS
           retention can be configured for PW types HDLC, PPP and
           Ethernet only. If the agent does not support FCS retention

    Zelig et al          Expires August 2004                [page 20]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


           the error should be configured in pwVcFcsRetentionStatus."
      REFERENCE
          "Malis A., et al.,  'PWE3 Frame Check Sequence Retention'
           - work in progress"
      DEFVAL { fcsRetentionDisable }
     ::= { pwVcEntry 28 }

   pwVcFcsRetentionStatus OBJECT-TYPE
      SYNTAX   BITS {
               remoteIndicationUnknown   (0),
               remoteRequestFcsRetention (1),
               fcsRetentionEnabled       (2),
               fcsRetentionDisabled      (3),
               localFcsRetentionCfgErr   (4)
               }
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
         "The status of the FCS retention negotiation process based on
          local configuration and the remote advertisement.
          remoteIndicationUnknown - set if a FEC has not been received
          from the remote.
          remoteRequestFcsRetention - indicates that the peer has
          requested for FCS retention. FCS retention will be used if
          the local node is capable and configured to use it for this
          PW.
          fcsRetentionEnabled - FCS retention is enabled (both peers
          were configured for FCS retention for signaled PW, or the
          local node is configured and capable for FCS retention.
          fcsRetentionDisabled - FCS retention is disabled (not
          configured locally or not advertised by the peer).
          localFcsRetentionCfgErr - Is set if the local node has been
          configured for FCS retention but is not capable to support
          it.
         "
      REFERENCE
          "Malis A., et al.,  'PWE3 Frame Check Sequence Retention'
           - work in progress"
      ::= { pwVcEntry 29 }

   pwVcOutboundVcLabel OBJECT-TYPE
      SYNTAX        Unsigned32
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "The PW label used in the outbound direction (i.e. toward
           the PSN). It may be set up manually if owner is 'manual'
           or automatically otherwise. Examples: For MPLS PSN, it
           represents the 20 bits of PW tag, for L2TP it represent
           the 32 bits Session ID.
           If the label is not yet known (signaling in process), the

    Zelig et al          Expires August 2004                [page 21]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


           object should return a value of 0xFFFF."
     ::= { pwVcEntry 30 }

   pwVcInboundVcLabel OBJECT-TYPE
      SYNTAX        Unsigned32
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "The PW label used in the inbound direction (i.e. packets
           received from the PSN. It may be set up manually if owner
           is 'manual' or automatically otherwise.
           Examples: For MPLS PSN, it represents the 20 bits of PW
           tag, for L2TP it represent the 32 bits Session ID.
           If the label is not yet known (signaling in process), the
           object should return a value of 0xFFFF."
      ::= { pwVcEntry 31 }

   pwVcName  OBJECT-TYPE
      SYNTAX        SnmpAdminString
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "The canonical name assigned to the PW."
      ::= { pwVcEntry 32 }

   pwVcDescr OBJECT-TYPE
      SYNTAX        SnmpAdminString
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "A textual string containing information about the PW.
           If there is no description this object contains a zero
           length string."
      ::= { pwVcEntry 33 }

   pwVcCreateTime OBJECT-TYPE
      SYNTAX        TimeStamp
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "System time when this PW was created."
      ::= { pwVcEntry 34 }

   pwVcUpTime  OBJECT-TYPE
      SYNTAX        TimeTicks
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "Specifies the total time this PW operStatus has been
           Up(1)."
      ::= { pwVcEntry 35 }

    Zelig et al          Expires August 2004                [page 22]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



   pwVcLastChange OBJECT-TYPE
      SYNTAX        TimeTicks
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
         "The value of sysUpTime at the time the PW entered
          its current operational state.  If the current state was
          entered prior to the last re-initialization of the local
          network management subsystem, then this object contains a
          zero value."
      ::= { pwVcEntry 36 }

   pwVcAdminStatus OBJECT-TYPE
      SYNTAX   INTEGER {
                   up(1),     -- ready to pass packets
                   down(2),
                   testing(3) -- in some test mode
      }
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "The desired operational status of this PW."
      ::= { pwVcEntry 37 }

   pwVcOperStatus OBJECT-TYPE
      SYNTAX        PwOperStatus
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "This object indicates the operational status of the PW, it
            does not reflect however the status of the CE bound
            interface.
            It is set to down only if pwNotForwarding,
            psnFacingPwRxFault, or psnFacingPwTxFault indications are
            set in pwVcLocalStatus or pwVcRemoteStatus.
            It indicate 'lowerLayerDown' only if the only reason for
            not being in the 'up' state is either outer tunnel
            failure.
            All other states are declared base on the description in
            the textual convention.
            "
      ::= { pwVcEntry 38 }

   pwVcLocalStatus OBJECT-TYPE
      SYNTAX        PwVcStatus
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "Indicates the status of the PW in the local node.
            The various indications in this object should be

    Zelig et al          Expires August 2004                [page 23]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


            available independent of the ability of the local node to
            advertise them or the remote node to accept these status
            indications through the control protocol.
           "
      ::= { pwVcEntry 39 }

   pwVcRemoteStatusCapable OBJECT-TYPE
      SYNTAX        INTEGER {
             notApplicable    (1),
             notYetKnown      (2),
             remoteCapable    (3),
             remoteNotCapable (4)

      }
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "Indicates the remote node capability to advertise the
            PW status notification.
            notAppicable should be reported for manually set PW, or
            if the local node is not capable of sending the status
            notification object.
            notYetKnown should be reported if the signaling protocol
            has not yet finished the process of capability
            determination.
            remoteCapable and remoteNotcapable should be reported
            based on the initial signaling exchange that has
            determined the remote node capability.
          "
      ::= { pwVcEntry 40 }

   pwVcRemoteStatus OBJECT-TYPE
      SYNTAX        PwVcStatus
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "Indicate the status of the PW as was advertised by the
            remote. If the remote is not capable of advertising the
            status object, or the local node is not able to accept
            the status object through signaling, then the applicable
            bit is 'pwNotForwarding' which is set if the remote has
            sent label release or label withdraw for this PW.
           "
      ::= { pwVcEntry 41 }

   pwVcTimeElapsed OBJECT-TYPE
       SYNTAX  HCPerfTimeElapsed
       MAX-ACCESS  read-only
       STATUS  current
       DESCRIPTION
            "The number of seconds, including partial seconds,

    Zelig et al          Expires August 2004                [page 24]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


             that have elapsed since the beginning of the current
             interval measurement period."
       ::= { pwVcEntry 42 }

   pwVcValidIntervals OBJECT-TYPE
       SYNTAX  HCPerfValidIntervals
       MAX-ACCESS  read-only
       STATUS  current
       DESCRIPTION
          "The number of previous 15-minute intervals
          for which data was collected."
       ::= { pwVcEntry 43 }

   pwVcRowStatus OBJECT-TYPE
      SYNTAX        RowStatus
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "For creating, modifying, and deleting this row."
       ::= { pwVcEntry 44 }

   pwVcStorageType OBJECT-TYPE
      SYNTAX        StorageType
      MAX-ACCESS    read-create
      STATUS        current
      DESCRIPTION
          "This variable indicates the storage type for this
           object."
       ::= { pwVcEntry 45 }

   -- End of PW Virtual Connection Table

   -- PW Performance Table.

   pwVcPerfCurrentTable  OBJECT-TYPE
      SYNTAX        SEQUENCE OF PwVcPerfCurrentEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "This table provides per-PW performance information for
            the current interval."
      ::= { pwVcObjects 3 }

   pwVcPerfCurrentEntry OBJECT-TYPE
      SYNTAX        PwVcPerfCurrentEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "An entry in this table is created by the agent for
            every PW."
      INDEX  { pwVcIndex }

    Zelig et al          Expires August 2004                [page 25]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      ::= { pwVcPerfCurrentTable 1 }

   PwVcPerfCurrentEntry ::= SEQUENCE {
         pwVcPerfCurrentInHCPackets         HCPerfCurrentCount,
         pwVcPerfCurrentInHCBytes           HCPerfCurrentCount,
         pwVcPerfCurrentOutHCPackets        HCPerfCurrentCount,
         pwVcPerfCurrentOutHCBytes          HCPerfCurrentCount,
         pwVcPerfCurrentInPackets           PerfCurrentCount,
         pwVcPerfCurrentInBytes             PerfCurrentCount,
         pwVcPerfCurrentOutPackets          PerfCurrentCount,
         pwVcPerfCurrentOutBytes            PerfCurrentCount
         }

   pwVcPerfCurrentInHCPackets OBJECT-TYPE
      SYNTAX        HCPerfCurrentCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for number of packets received by
            the PW (from the PSN) in the current 15-minute interval.
            This is the 64 bit version of pwVcPerfCurrentInPackets,
            if pwVcPerfCurrentInHCPackets is supported according to
            the rules spelled out in RFC2863."
      ::= { pwVcPerfCurrentEntry 1 }

   pwVcPerfCurrentInHCBytes OBJECT-TYPE
      SYNTAX        HCPerfCurrentCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for number of bytes received by the
            PW (from the PSN) in the current 15-minute interval.
            This is the 64 bit version of pwVcPerfCurrentInBytes, if
            pwVcPerfCurrentInHCBytes is supported according to the
            rules spelled out in RFC2863."
      ::= { pwVcPerfCurrentEntry 2 }

   pwVcPerfCurrentOutHCPackets OBJECT-TYPE
      SYNTAX        HCPerfCurrentCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for number of packets forwarded by
            the PW (to the PSN) in the current 15-minute interval.
            This is the 64 bit version of pwVcPerfCurrentOutPackets,
            if pwVcPerfCurrentOutHCPackets is supported according to
            the rules spelled out in RFC2863."
      ::= { pwVcPerfCurrentEntry 3 }

   pwVcPerfCurrentOutHCBytes OBJECT-TYPE
      SYNTAX        HCPerfCurrentCount

    Zelig et al          Expires August 2004                [page 26]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for number of bytes forwarded by
            the PW (to the PSN) in the current 15-minute interval.
            This is the 64 bit version of pwVcPerfCurrentOutBytes,
            if pwVcPerfCurrentOutHCBytes is supported according to
            the rules spelled out in RFC2863."
      ::= { pwVcPerfCurrentEntry 4 }

   pwVcPerfCurrentInPackets OBJECT-TYPE
      SYNTAX        PerfCurrentCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "The counter for number of packets received by the PW (from
            the PSN) in the current 15-minute interval.
            This is the 32 bit version of pwVcPerfCurrentInHCPackets,
            if pwVcPerfCurrentInHCPackets is supported according to
            the rules spelled out in RFC2863."
      ::= { pwVcPerfCurrentEntry 5 }

   pwVcPerfCurrentInBytes OBJECT-TYPE
      SYNTAX        PerfCurrentCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "The counter for number of bytes received by the
            PW (from the PSN) in the current 15-minute interval.
            It MUST be equal to the least significant 32 bits of
            pwVcPerfCurrentInHCBytes, if pwVcPerfCurrentInHCBytes is
            supported according to the rules spelled out in RFC2863."
      ::= { pwVcPerfCurrentEntry 6 }

   pwVcPerfCurrentOutPackets OBJECT-TYPE
      SYNTAX        PerfCurrentCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "The counter for number of packets forwarded by
            the PW (to the PSN) in the current 15-minute interval.
            It MUST be equal to the least significant 32 bits of
            pwVcPerfCurrentOutHCPackets, if
            pwVcPerfCurrentOutHCPackets is supported according to the
            rules spelled out in RFC2863."
      ::= { pwVcPerfCurrentEntry 7 }

   pwVcPerfCurrentOutBytes OBJECT-TYPE
      SYNTAX        PerfCurrentCount
      MAX-ACCESS    read-only
      STATUS        current

    Zelig et al          Expires August 2004                [page 27]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      DESCRIPTION
           "The counter for number of bytes forwarded by
            the PW (to the PSN) in the current 15-minute interval.
            It MUST be equal to the least significant 32 bits of
            pwVcPerfCurrentOutHCBytes, if pwVcPerfCurrentOutHCBytes is
            supported according to the rules spelled out in RFC2863."
      ::= { pwVcPerfCurrentEntry 8 }

   -- End of PW Perf current Table

   -- PW Performance Interval Table.

   pwVcPerfIntervalTable  OBJECT-TYPE
      SYNTAX        SEQUENCE OF PwVcPerfIntervalEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "This table provides per-PW performance information for
            each interval."
      ::= { pwVcObjects 4 }

   pwVcPerfIntervalEntry OBJECT-TYPE
      SYNTAX        PwVcPerfIntervalEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "An entry in this table is created agent for every PW."
      INDEX  { pwVcIndex, pwVcPerfIntervalNumber }
      ::= { pwVcPerfIntervalTable 1 }

   PwVcPerfIntervalEntry ::= SEQUENCE {
         pwVcPerfIntervalNumber               Integer32,
         pwVcPerfIntervalValidData            TruthValue,
         pwVcPerfIntervalTimeElapsed          HCPerfTimeElapsed,
         pwVcPerfIntervalInHCPackets          HCPerfIntervalCount,
         pwVcPerfIntervalInHCBytes            HCPerfIntervalCount,
         pwVcPerfIntervalOutHCPackets         HCPerfIntervalCount,
         pwVcPerfIntervalOutHCBytes           HCPerfIntervalCount,
         pwVcPerfIntervalInPackets            PerfIntervalCount,
         pwVcPerfIntervalInBytes              PerfIntervalCount,
         pwVcPerfIntervalOutPackets           PerfIntervalCount,
         pwVcPerfIntervalOutBytes             PerfIntervalCount
                           }

   pwVcPerfIntervalNumber OBJECT-TYPE
       SYNTAX  Integer32 (1..96)
       MAX-ACCESS  not-accessible
       STATUS  current
       DESCRIPTION
           "A number N, between 1 and 96, which identifies the
            interval for which the set of statistics is available.

    Zelig et al          Expires August 2004                [page 28]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


            The interval identified by 1 is the most recently
            completed 15 minute interval, and the interval identified
            by N is the interval immediately preceding the one
            identified by N-1.
            The minimum range of N is 1 through 4. The default range
            is 1 to 32. The maximum range of N is 1 through 96. "
      REFERENCE
          "Tesink, K. 'Definitions of Managed Objects for the
           SONET/SDH Interface Type', RFC 2558"
      ::= { pwVcPerfIntervalEntry 1 }

   pwVcPerfIntervalValidData OBJECT-TYPE
      SYNTAX        TruthValue
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This variable indicates if the data for this interval
           is valid."
      ::= { pwVcPerfIntervalEntry 2 }

   pwVcPerfIntervalTimeElapsed OBJECT-TYPE
       SYNTAX      HCPerfTimeElapsed
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
         "The duration of this interval in seconds."
       ::= { pwVcPerfIntervalEntry 3 }

   pwVcPerfIntervalInHCPackets OBJECT-TYPE
      SYNTAX        HCPerfIntervalCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for number of packets received by
            the PW (from the PSN) during the interval. This is the 64
            bit version of pwVcPerfIntervalInPackets, if
            pwVcPerfIntervalInHCPackets is supported according to the
            rules spelled out in RFC2863."
      ::= { pwVcPerfIntervalEntry 4 }

   pwVcPerfIntervalInHCBytes OBJECT-TYPE
      SYNTAX        HCPerfIntervalCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for number of bytes received by the
            PW (from the PSN) during the interval.
            This is the 64 bit version of pwVcPerfIntervalInBytes, if
            pwVcPerfIntervalInHCBytes is supported according to the
            rules spelled out in RFC2863."
      ::= { pwVcPerfIntervalEntry 5 }

    Zelig et al          Expires August 2004                [page 29]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



   pwVcPerfIntervalOutHCPackets OBJECT-TYPE
      SYNTAX        HCPerfIntervalCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for number of packets forwarded by
            the PW (to the PSN) during the interval.
            This is the 64 bit version of pwVcPerfIntervalOutPackets,
            if pwVcPerfIntervalOutHCPackets is supported according to
            the rules spelled out in RFC2863."
      ::= { pwVcPerfIntervalEntry 6 }

   pwVcPerfIntervalOutHCBytes OBJECT-TYPE
      SYNTAX        HCPerfIntervalCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for number of bytes forwarded by
            the PW (to the PSN) during the interval.
            This is the 64 bit version of pwVcPerfIntervalOutBytes,
            if pwVcPerfIntervalOutHCBytes is supported according to
            the rules spelled out in RFC2863."
      ::= { pwVcPerfIntervalEntry 7 }

   pwVcPerfIntervalInPackets OBJECT-TYPE
      SYNTAX        PerfIntervalCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This value represents the number of packets received
           by this PW during the interval.
           It MUST be equal to the least significant 32 bits of
           pwVcPerfIntervalInHCPackets if pwVcPerfIntervalInHCPackets
           is supported according to the rules spelled out in
   RFC2863."
      ::= { pwVcPerfIntervalEntry 8 }

   pwVcPerfIntervalInBytes OBJECT-TYPE
      SYNTAX        PerfIntervalCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This value represents the number of bytes received
           by this PW during the interval.
           It MUST be equal to the least significant 32 bits of
           if pwVcPerfIntervalInHCBytes is supported according to
           the rules spelled out in RFC2863."
      ::= { pwVcPerfIntervalEntry 9 }

   pwVcPerfIntervalOutPackets OBJECT-TYPE

    Zelig et al          Expires August 2004                [page 30]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      SYNTAX        PerfIntervalCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This value represents the number of packets sent by this
           PW during the interval.
           It MUST be equal to the least significant 32 bits of
           pwVcPerfIntervalOutHCPackets if
           pwVcPerfIntervalOutHCPackets is supported according to the
           rules spelled out in RFC2863."
      ::= { pwVcPerfIntervalEntry 10 }

   pwVcPerfIntervalOutBytes OBJECT-TYPE
      SYNTAX        PerfIntervalCount
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This value represents the number of bytes sent by this
           PW during the intrval.
           It MUST be equal to the least significant 32
           bits of pwVcPerfIntervalOutHCBytes
           if pwVcPerfIntervalOutHCBytes is supported according to
           the rules spelled out in RFC2863."
      ::= { pwVcPerfIntervalEntry 11 }

   -- End of PW Performance Interval Table

   -- PW Performance Total Table.

   pwVcPerfTotalTable  OBJECT-TYPE
      SYNTAX        SEQUENCE OF PwVcPerfTotalEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "This table provides per-PW Performance information from
            PW start time or management application reset."
      ::= { pwVcObjects 5 }

   pwVcPerfTotalEntry OBJECT-TYPE
      SYNTAX        PwVcPerfTotalEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "An entry in this table is created by the agent for every
            PW.

            pwVcPerfTotalDiscontinuityTime indicates the
            time of the last discontinuity in all of these
            objects."

      INDEX  { pwVcIndex }

    Zelig et al          Expires August 2004                [page 31]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      ::= { pwVcPerfTotalTable 1 }

   PwVcPerfTotalEntry ::= SEQUENCE {
         pwVcPerfTotalInHCPackets          Counter64,
         pwVcPerfTotalInHCBytes            Counter64,
         pwVcPerfTotalOutHCPackets         Counter64,
         pwVcPerfTotalOutHCBytes           Counter64,
         pwVcPerfTotalInPackets            Counter32,
         pwVcPerfTotalInBytes              Counter32,
         pwVcPerfTotalOutPackets           Counter32,
         pwVcPerfTotalOutBytes             Counter32,
         pwVcPerfTotalDiscontinuityTime    TimeStamp
                           }

   pwVcPerfTotalInHCPackets OBJECT-TYPE
      SYNTAX        Counter64
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for the total number of packets
            received by the PW (from the PSN).
            This is the 64 bit version of pwVcPerfTotalInPackets, if
            pwVcPerfTotalInHCPackets is supported according to the
            rules spelled out in RFC2863."
      ::= { pwVcPerfTotalEntry 1 }

   pwVcPerfTotalInHCBytes OBJECT-TYPE
      SYNTAX        Counter64
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for the total number of bytes
            received by the PW (from the PSN).
            This is the 64 bit version of pwVcPerfTotalInBytes, if
            pwVcPerfTotalInHCBytes is supported according to the
            rules spelled out in RFC2863."
      ::= { pwVcPerfTotalEntry 2 }

   pwVcPerfTotalOutHCPackets OBJECT-TYPE
      SYNTAX        Counter64
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for the total number of packets
            forwarded by the PW (to the PSN).
            This is the 64 bit version of pwVcPerfTotalOutPackets,
            if pwVcPerfTotalOutHCPackets is supported according to
            the rules spelled out in RFC2863."
      ::= { pwVcPerfTotalEntry 3 }

   pwVcPerfTotalOutHCBytes OBJECT-TYPE

    Zelig et al          Expires August 2004                [page 32]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      SYNTAX        Counter64
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "High capacity counter for the total number of bytes
            forwarded by the PW (to the PSN).
            This is the 64 bit version of pwVcPerfTotalOutBytes,
            if pwVcPerfTotalOutHCBytes is supported according to
            the rules spelled out in RFC2863."
      ::= { pwVcPerfTotalEntry 4 }

   pwVcPerfTotalInPackets OBJECT-TYPE
      SYNTAX        Counter32
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This value represents the total number of packets received
           by this PW.
           It MUST be equal to the least significant 32 bits of
           pwVcPerfTotalInHCPackets if pwVcPerfTotalInHCPackets
           is supported according to the rules spelled out in
           RFC2863."
      ::= { pwVcPerfTotalEntry 5 }

   pwVcPerfTotalInBytes OBJECT-TYPE
      SYNTAX        Counter32
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This value represents the total number of bytes received
           by this PW.
           It MUST be equal to the least significant 32 bits of
           if pwVcPerfTotalInHCBytes is supported according to
           the rules spelled out in RFC2863."
      ::= { pwVcPerfTotalEntry 6 }

   pwVcPerfTotalOutPackets OBJECT-TYPE
      SYNTAX        Counter32
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This value represents the total number of packets sent by
           this PW.
           It MUST be equal to the least significant 32 bits of
           pwVcPerfTotalOutHCPackets if pwVcPerfTotalOutHCPackets
           is supported according to the rules spelled out in
           RFC2863."
      ::= { pwVcPerfTotalEntry 7 }

   pwVcPerfTotalOutBytes OBJECT-TYPE
      SYNTAX        Counter32

    Zelig et al          Expires August 2004                [page 33]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "This value represents the total number of bytes sent by
           this PW.
           It MUST be equal to the least significant 32
           bits of pwVcPerfTotalOutHCBytes
           if pwVcPerfTotalOutHCBytes is supported according to
           the rules spelled out in RFC2863."
      ::= { pwVcPerfTotalEntry 8 }

   pwVcPerfTotalDiscontinuityTime OBJECT-TYPE
      SYNTAX      TimeStamp
      MAX-ACCESS  read-only
      STATUS      current
      DESCRIPTION
          "The value of sysUpTime on the most recent occasion at
           which any one or more of this row Counter32 or
           Counter64 suffered a discontinuity. If no such
           discontinuities have occurred since the last re-
           initialization of the local management subsystem, then
           this object contains a zero value."
      ::= { pwVcPerfTotalEntry 9 }

   -- End of PW Perf Total Table

   -- Error counter scalar

   pwVcPerfTotalErrorPackets OBJECT-TYPE
      SYNTAX        Counter32
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
           "Counter for number of error at the PW processing level,
            for example packets received with unknown PW label."
      ::= { pwVcObjects 6 }

   -- Reverse mapping tables

   -- The PW ID mapping table
   pwVcIndexMappingTable  OBJECT-TYPE
      SYNTAX        SEQUENCE OF PwVcIndexMappingEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "This table enables the reverse mapping the unique PWid
            parameters <peer IP, PW type and PW ID> and the
            pwVcIndex. The table is not applicable for PW created
            manually or by using the generalized FEC."
      ::= { pwVcObjects 7 }


    Zelig et al          Expires August 2004                [page 34]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


   pwVcIndexMappingEntry OBJECT-TYPE
      SYNTAX        PwVcIndexMappingEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "An entry in this table MUST be created by the agent for
            every PW created by the pwVcTable for which pwVcOwner is
            equal pwIdFecSignaling."

      INDEX  { pwVcIndexMappingVcType,  pwVcIndexMappingVcID,
               pwVcIndexMappingPeerAddrType, pwVcIndexMappingPeerAddr
               }
      ::= { pwVcIndexMappingTable 1 }

   PwVcIndexMappingEntry ::= SEQUENCE {
         pwVcIndexMappingVcType        PwVcType,
         pwVcIndexMappingVcID          PwVcIDType,
         pwVcIndexMappingPeerAddrType  InetAddressType,
         pwVcIndexMappingPeerAddr      InetAddress,
         pwVcIndexMappingVcIndex       PwVcIndexType
                          }

   pwVcIndexMappingVcType OBJECT-TYPE
      SYNTAX        PwVcType
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "The PW type (indicate the service) of this PW."
      ::= { pwVcIndexMappingEntry 1 }

   pwVcIndexMappingVcID OBJECT-TYPE
      SYNTAX        PwVcIDType
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "The PW ID of this PW. Zero if the PW is configured
            manually."
      ::= { pwVcIndexMappingEntry 2 }

   pwVcIndexMappingPeerAddrType OBJECT-TYPE
      SYNTAX        InetAddressType
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "IP address type of the peer node."
      ::= { pwVcIndexMappingEntry 3 }

   pwVcIndexMappingPeerAddr OBJECT-TYPE
      SYNTAX        InetAddress
      MAX-ACCESS    not-accessible
      STATUS        current

    Zelig et al          Expires August 2004                [page 35]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      DESCRIPTION
           "IP address type of the peer node."
      ::= { pwVcIndexMappingEntry 4 }

   pwVcIndexMappingVcIndex  OBJECT-TYPE
      SYNTAX        PwVcIndexType
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "The value that represent the PW in the pwVcTable."
      ::= { pwVcIndexMappingEntry 5 }

   -- End of the PW ID mapping table

   -- The peer mapping table

   pwVcPeerMappingTable  OBJECT-TYPE
      SYNTAX        SEQUENCE OF PwVcPeerMappingEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "This table provides reverse mapping of the existing PW
            based on PW type and PW ID ordering. This table is
            typically useful for EMS ordered query of existing PWs."
      ::= { pwVcObjects 8 }

   pwVcPeerMappingEntry OBJECT-TYPE
      SYNTAX        PwVcPeerMappingEntry
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "An entry in this table is created by the agent for every
            PW configured in pwVcTable."

      INDEX  { pwVcPeerMappingPeerAddrType, pwVcPeerMappingPeerAddr,
               pwVcPeerMappingVcType,  pwVcPeerMappingVcID }

      ::= { pwVcPeerMappingTable 1 }

   PwVcPeerMappingEntry ::= SEQUENCE {
         pwVcPeerMappingPeerAddrType         InetAddressType,
         pwVcPeerMappingPeerAddr             InetAddress,
         pwVcPeerMappingVcType               PwVcType,
         pwVcPeerMappingVcID                 PwVcIDType,
         pwVcPeerMappingVcIndex              PwVcIndexType
                          }

   pwVcPeerMappingPeerAddrType OBJECT-TYPE
      SYNTAX        InetAddressType
      MAX-ACCESS    not-accessible
      STATUS        current

    Zelig et al          Expires August 2004                [page 36]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


      DESCRIPTION
           "IP address type of the peer node."
      ::= { pwVcPeerMappingEntry 1 }

   pwVcPeerMappingPeerAddr OBJECT-TYPE
      SYNTAX        InetAddress
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "IP address type of the peer node."
      ::= { pwVcPeerMappingEntry 2 }

   pwVcPeerMappingVcType OBJECT-TYPE
      SYNTAX        PwVcType
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "The PW type (indicate the service) of this PW."
      ::= { pwVcPeerMappingEntry 3 }

   pwVcPeerMappingVcID OBJECT-TYPE
      SYNTAX        PwVcIDType
      MAX-ACCESS    not-accessible
      STATUS        current
      DESCRIPTION
           "The PW ID of this PW. Zero if the PW is configured
            manually."
      ::= { pwVcPeerMappingEntry 4 }

   pwVcPeerMappingVcIndex  OBJECT-TYPE
      SYNTAX        PwVcIndexType
      MAX-ACCESS    read-only
      STATUS        current
      DESCRIPTION
          "The value that represent the PW in the pwVcTable."
      ::= { pwVcPeerMappingEntry 5 }

   -- End of the peer mapping table

   -- End of reverse mapping tables

   pwVcUpDownNotifEnable  OBJECT-TYPE
      SYNTAX      TruthValue
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
         "If this object is set to true(1), then it enables
          the emission of pwVcUp and pwVcDown
          notifications; otherwise these notifications are not
          emitted."
      REFERENCE

    Zelig et al          Expires August 2004                [page 37]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


         "See also RFC3413 for explanation that
          notifications are under the ultimate control of the
          MIB module in this document."
      DEFVAL { false }
      ::= { pwVcObjects 9 }

   pwVcDeletedNotifEnable  OBJECT-TYPE
      SYNTAX      TruthValue
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
         "If this object is set to true(1), then it enables the
          emission of pwVcDeleted notification; otherwise this
          notification is not emitted."
      REFERENCE
         "See also RFC3413 for explanation that
          notifications are under the ultimate control of the
          MIB module in this document."
      DEFVAL { false }
      ::= { pwVcObjects 10 }

   pwVcNotifRate  OBJECT-TYPE
      SYNTAX      Unsigned32
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
         "This object defines the maximum number of PW notifications
          that can be emitted from the device per second."
      ::= { pwVcObjects 11 }

   -- Notifications - PW

   pwVcDown NOTIFICATION-TYPE
      OBJECTS { pwVcOperStatus, --start of range
                pwVcOperStatus  --end of range
      }
      STATUS  current
      DESCRIPTION
          "This notification is generated when the
           pwVcOperStatus object for one or more contiguous
           entries in pwVcTable are about to enter the
           down(2) state from some other state. The included values
           of pwVcOperStatus MUST all be set equal to this
           down(2) state.  The two instances of pwVcOperStatus
           in this notification indicate the range of indexes
           that are affected.  Note that all the indexes of the
           two ends of the range can be derived from the
           instance identifiers of these two objects.  For
           cases where a contiguous range of cross-connects
           have transitioned into the down(2) state at roughly
           the same time, the device SHOULD issue a single

    Zelig et al          Expires August 2004                [page 38]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


           notification for each range of contiguous indexes in
           an effort to minimize the emission of a large number
           of notifications.  If a notification has to be
           issued for just a single cross-connect entry, then
           the instance identifier (and values) of the two
           pwVcOperStatus objects MUST be identical."
      ::= { pwVcNotifications  1 }

   pwVcUp NOTIFICATION-TYPE
      OBJECTS { pwVcOperStatus, --start of range
                pwVcOperStatus  --end of range
      }
      STATUS  current
      DESCRIPTION
          "This notification is generated when the
           pwVcOperStatus object for one or more contiguous
           entries in pwVcTable are about to enter the up(1)
           state from some other state. The included values of
           pwVcOperStatus MUST both be set equal to this
           new state (i.e: up(1)).  The two instances of
           pwVcOperStatus in this notification indicate the range
           of indexes that are affected.  Note that all the indexes
           of the two ends of the range can be derived from the
           instance identifiers of these two objects.  For
           cases where a contiguous range of cross-connects
           have transitioned into the up(1) state at roughly
           the same time, the device SHOULD issue a single
           notification for each range of contiguous indexes in
           an effort to minimize the emission of a large number
           of notifications.  If a notification has to be
           issued for just a single cross-connect entry, then
           the instance identifier (and values) of the two
           pwVcOperStatus objects MUST be the identical."
      ::= { pwVcNotifications 2 }

   pwVcDeleted NOTIFICATION-TYPE
      OBJECTS { pwVcType,
                pwVcID,
                pwVcPeerAddrType,
                pwVcPeerAddr
      }
      STATUS  current
      DESCRIPTION
          "This notification is generated when the PW has been
           deleted, i.e. when the pwVcRowStatus has been set to
           destroy(6), the PW has been deleted by a non-MIB
           application or due to auto discovery process.
          "
      ::= { pwVcNotifications  3 }

   -- End of notifications.

    Zelig et al          Expires August 2004                [page 39]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



   -- conformance information

   pwVcGroups      OBJECT IDENTIFIER ::= { pwVcConformance   1 }
   pwVcCompliances OBJECT IDENTIFIER ::= { pwVcConformance   2 }

   pwModuleCompliance MODULE-COMPLIANCE
       STATUS  current
       DESCRIPTION
           "The compliance statement for agent that support PW
            operation."

       MODULE  -- this module
           MANDATORY-GROUPS { pwVcGroup,
                              pwVcPeformanceTotalGroup }

        ::= { pwVcCompliances 1 }

   -- Units of conformance.

   pwVcGroup   OBJECT-GROUP
      OBJECTS {
               pwVcIndexNext,
               pwVcType,
               pwVcOwner,
               pwVcPsnType,
               pwVcSetUpPriority,
               pwVcHoldingPriority,
               pwVcPeerAddrType,
               pwVcPeerAddr,
               pwVcAttachedPwIndex,
               pwVcIfIndex,
               pwVcID,
               pwVcLocalGroupID,
               pwVcGroupAttachmentID,
               pwVcLocalAttachmentID,
               pwVcPeerAttachmentID,
               pwVcCwPreference,
               pwVcLocalIfMtu,
               pwVcLocalIfString,
               pwVcLocalCapabAdvert,
               pwVcRemoteGroupID,
               pwVcCwStatus,
               pwVcRemoteIfMtu,
               pwVcRemoteIfString,
               pwVcRemoteCapabilities,
               pwVcFragmentCfgSize,
               pwVcRmtFragCapability,
               pwVcFcsRetentioncfg,
               pwVcFcsRetentionStatus,
               pwVcOutboundVcLabel,

    Zelig et al          Expires August 2004                [page 40]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


               pwVcInboundVcLabel,
               pwVcName,
               pwVcDescr,
               pwVcCreateTime,
               pwVcUpTime,
               pwVcLastChange,
               pwVcAdminStatus,
               pwVcOperStatus,
               pwVcLocalStatus,
               pwVcRemoteStatusCapable,
               pwVcRemoteStatus,
               pwVcTimeElapsed,
               pwVcValidIntervals,
               pwVcRowStatus,
               pwVcStorageType
             }

      STATUS  current
      DESCRIPTION
          "Collection of objects needed for PW configuration."
      ::= { pwVcGroups 1 }


   pwVcPerformanceGeneralGroup OBJECT-GROUP
      OBJECTS {
               pwVcPerfTotalDiscontinuityTime,
               pwVcPerfTotalErrorPackets
             }

      STATUS  current
      DESCRIPTION
          "Collection of general objects needed for managing the
           total running performance parameters."
      ::= { pwVcGroups 2 }

   pwVcPerformanceIntervalGeneralGroup OBJECT-GROUP
      OBJECTS {
               pwVcPerfIntervalValidData,
               pwVcPerfIntervalTimeElapsed
             }

      STATUS  current
      DESCRIPTION
          "Collection of general objects needed for managing the
           interval performance parameters."
      ::= { pwVcGroups 3 }

   pwVcPeformanceTotalGroup OBJECT-GROUP
      OBJECTS {
               pwVcPerfTotalInPackets,
               pwVcPerfTotalInBytes,

    Zelig et al          Expires August 2004                [page 41]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


               pwVcPerfTotalOutPackets,
               pwVcPerfTotalOutBytes,

               pwVcPerfTotalErrorPackets
             }

      STATUS  current
      DESCRIPTION
          "Collection of 32 bits objects needed for PW running total
           performance collection."
      ::= { pwVcGroups 4 }

   pwVcPeformanceIntervalGroup OBJECT-GROUP
      OBJECTS {
               pwVcPerfCurrentInPackets,
               pwVcPerfCurrentInBytes,
               pwVcPerfCurrentOutPackets,
               pwVcPerfCurrentOutBytes,

               pwVcPerfIntervalInPackets,
               pwVcPerfIntervalInBytes,
               pwVcPerfIntervalOutPackets,
               pwVcPerfIntervalOutBytes
             }

      STATUS  current
      DESCRIPTION
          "Collection of 32 bits objects needed for PW performance
           collection in 15 minutes intervals."
      ::= { pwVcGroups 5 }

   pwVcHCPeformanceTotalGroup OBJECT-GROUP
      OBJECTS {
               pwVcPerfTotalInHCPackets,
               pwVcPerfTotalInHCBytes,
               pwVcPerfTotalOutHCPackets,
               pwVcPerfTotalOutHCBytes
             }

      STATUS  current
      DESCRIPTION
          "Collection of HC objects needed for PW running total
           performance collection."
      ::= { pwVcGroups 6 }

   pwVcHCPeformanceIntervalGroup OBJECT-GROUP
      OBJECTS {
               pwVcPerfCurrentInHCPackets,
               pwVcPerfCurrentInHCBytes,
               pwVcPerfCurrentOutHCPackets,
               pwVcPerfCurrentOutHCBytes,

    Zelig et al          Expires August 2004                [page 42]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base



               pwVcPerfIntervalInHCPackets,
               pwVcPerfIntervalInHCBytes,
               pwVcPerfIntervalOutHCPackets,
               pwVcPerfIntervalOutHCBytes
             }

      STATUS  current
      DESCRIPTION
          "Collection of HC objects needed for PW performance
           collection in 15 minutes intervals."
      ::= { pwVcGroups 7 }

   pwVcMappingTablesGroup OBJECT-GROUP
      OBJECTS {
               pwVcIndexMappingVcIndex,
               pwVcPeerMappingVcIndex
             }

      STATUS  current
      DESCRIPTION
          "Collection of objects contained in the reverse
           mapping tables."
      ::= { pwVcGroups 8 }

   pwVcNotificationControlGroup OBJECT-GROUP
      OBJECTS {
               pwVcUpDownNotifEnable,
               pwVcDeletedNotifEnable,
               pwVcNotifRate
             }

      STATUS  current
      DESCRIPTION
          "Collection of objects for controlling the PW
           notifications."
      ::= { pwVcGroups 9 }

   pwVcNotificationGroup NOTIFICATION-GROUP
      NOTIFICATIONS {
               pwVcUp,
               pwVcDown,
               pwVcDeleted
             }

      STATUS  current
      DESCRIPTION
          "Collection PW notifications objects."

      ::= { pwVcGroups 10 }


    Zelig et al          Expires August 2004                [page 43]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


   -- END of PW MIB module

   END



8  Security considerations

    It is clear that this MIB module is potentially useful for
    monitoring of PW capable PEs.  This MIB can also be used for
    configuration of certain objects, and anything that can be
    configured can be incorrectly configured, with potentially
    disastrous results.

    There are a number of management objects defined in this MIB
    module with a MAX-ACCESS clause of read-write and/or read-create.
    Such objects may be considered sensitive or vulnerable in some
    network environments.  The support for SET operations in a non-
    secure environment without proper protection can have a negative
    effect on network operations.  These are the tables and objects
    and their sensitivity/vulnerability:

     o    the pwVcTable contains objects to configure PW parameters on
          a Provider Edge (PE) device. Unauthorized access to objects
          in this table, could result in disruption of traffic on
          the network.  The objects pwVcUpDownNotifEnable and
          pwVcNotifRate control the reports from the network element
          to the EMS. Unauthorized access to these objects could
          result in disruption of configuration and status change
          reporting, resulting mis-view of the network conditions.
          The use of stronger mechanisms such as SNMPv3 security
          should be considered where possible.  Specifically,
          SNMPv3 VACM and USM MUST be used with any v3 agent which
          implements this MIB module.  Administrators should consider
          whether read access to these objects should be allowed,
          since read access may be undesirable under certain
          circumstances.

    Some of the readable objects in this MIB module "i.e., objects
    with a MAX-ACCESS other than not-accessible" may be considered
    sensitive or vulnerable in some network environments.  It is thus
    important to control even GET and/or NOTIFY access to these
    objects and possibly to even encrypt the values of these objects
    when sending them over the network via SNMP.  These are the tables
    and objects and their sensitivity/vulnerability:

      o    the pwVcTable, pwVcPerfCurrentTable, pwVcPerfIntervalTable,
           pwVcPerfTotalTable, pwVcIndexMappingTable and
           pwVcPeerMappingTable collectively show the pseudo wire
           connectivity topology and its performance characteristics.
           If an Administrator does not want to reveal this

    Zelig et al          Expires August 2004                [page 44]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


           information, then these tables should be
           considered sensitive/vulnerable.

    SNMP versions prior to SNMPv3 did not include adequate security.
    Even if the network itself is secure "for example by using IPSec",
    even then, there is no control as to who on the secure network is
    allowed to access and GET/SET "read/change/create/delete" the
    objects in this MIB module.

    It is RECOMMENDED that implementers consider the security features
    as provided by the SNMPv3 framework "see [RFC3410], section 8",
    including full support for the SNMPv3 cryptographic mechanisms
    "for authentication and privacy".

    Further, deployment of SNMP versions prior to SNMPv3 is NOT
    RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to
    enable cryptographic security.  It is then a customer/operator
    responsibility to ensure that the SNMP entity giving access to an
    instance of this MIB module, is properly configured to give access
    to the objects only to those principals "users" that have
    legitimate rights to indeed GET or SET "change/create/delete"
    them.

9  IANA considerations

    As requested in the PW TC MIB [PWTCMIB], PWE3 related standards
    track MIB modules should be rooted under the pwStdMIB subtree. The
    IANA is requested to assign { pwStdMIB 2 } to the PW MIB module
    specified in this document.

10 References

10.1 Normative references

  [PWARCH]    Bryant et al, “PWE3 Architecture”, work-in-progress.

  [PWREQ]     Xiao et al, "Requirements for Pseudo Wire Emulation
               Edge-to-Edge (PWE3)", work-in-progress.

  [L2TPv3]    Townsley, et al., "Layer Two Tunneling Protocol
               (Version 3) "L2TPv3"", work-in-progress

  [PWCNTRL]   Martini et al, "Pseudowire Setup and Maintenance using
               LDP", work-in-progress.

  [PWFRAG]    Malis, A. et al, “PWE3 Fragmentation and Reassembly”,
               work-in-progress.

  [PWFCS]     Malis, A. et al, “PWE3 Frame Check Sequence Retention”,
               work-in-progress.


    Zelig et al          Expires August 2004                [page 45]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


  [PWTC]      Nadeau, T., et al, "Definitions for Textual Conventions
               and OBJECT-IDENTITIES for Pseudo-Wires Management",
               work-in-progress

  [PWMPLSMIB] Zelig,D., et al, “Pseudo Wire (PW) Over MPLS PSN
               Management Information Base”, work-in-progress.

  [Assigned]  Reynolds, J., and J. Postel, "Assigned Numbers", RFC
               1700, October 1994. See also: http://www.isi.edu/in-
               notes/iana/assignments/smi-numbers

  [IANAFamily] Internet Assigned Numbers Authority (IANA), ADDRESS
               FAMILY NUMBERS,(http://www.isi.edu/in-
               notes/iana/assignements/address-family-numbers), for
               MIB see:
               ftp://ftp.isi.edu/mib/ianaaddressfamilynumbers.mib

  [IFMIB]     McCloghrie, K., and F. Kastenholtz, "The Interfaces
               Group MIB using SMIv2", RFC 2863, June 2000.

  [RFC2434]   Narten, T. and H. Alvestrand, "Guidelines for Writing
               an IANA Considerations Section in RFCs", BCP: 26, RFC
               2434, October 1998.

  [BCP14]     Bradner, S., "Key words for use in RFCs to Indicate
               requirement Levels", BCP 14, RFC 2119, March 1997.

  [RFC2571]   Harrington, D., Presuhn, R. and B. Wijnen, "An
               Architecture for Describing SNMP Management
               Frameworks", RFC 2571, April 1999.

  [RFC2578]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
               J.,Rose, M. and S. Waldbusser, "Structure of Management
               Information Version 2 (SMIv2)", STD 58, RFC 2578, April
               1999.

  [RFC2579]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
               J., Rose, M. and S. Waldbusser, "Textual Conventions
               for SMIv2", STD 58, RFC 2579, April 1999.

  [RFC2580]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
               J., Rose, M. and S. Waldbusser, "Conformance Statements
               for SMIv2", STD 58, RFC 2580, April 1999.

  [RFC2863]   McCloghrie, K., F. Kastenholz,  "The Interfaces Group
               MIB using SMIv2", RFC 2863, June 2000.

  [RFC3291]   Daniele, M., Haberman, B., Routhier, S. and J.
               Schoenwaelder, "Textual Conventions for Internet
               Network Addresses", RFC 3291, December 2001.


    Zelig et al          Expires August 2004                [page 46]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


  [RFC3593]   Tesink, K., “Textual Conventions for MIB Modules Using
               Performance History Based on 15 Minute Intervals”, RFC
               3593, September 2003.

  [RFC3705]   Ray, B., Abbi, R., “Textual Conventions for MIB Modules
               Using Performance History Based on 15 Minute
               Intervals”, RFC 3705, February 2004.

10.2 Informative references


  [RFC3410]   Case, J., Mundy, R., Partain, D. and B. Stewart,
               Introduction and Applicability Statements for Internet-
               Standard Management Framework", RFC 3410, December
               2002.


11 Author's Addresses

    David Zelig
    Corrigent Systems
    126, Yigal Alon st.
    Tel Aviv, ISRAEL
    Phone:  +972-3-6945273
    Email:  davidz@corrigent.com

    Thomas D. Nadeau
    Cisco Systems, Inc.
    250 Apollo Drive
    Chelmsford, MA 01824
    Email: tnadeau@cisco.com

    Dave Danenberg
    Email: dave_danenberg@yahoo.com

    Sharon Mantin
    AxONLink (Israel) Ltd
    9 Bareket St.
    Petah Tikva 49517, Israel
    Phone: +972-3-9263972
    Email: sharon.mantin@axonlink.com


12 Full Copyright Statement

    Copyright (C) The Internet Society (2000).  All Rights Reserved.
    This document and translations of it may be copied and furnished
    to others, and derivative works that comment on or otherwise
    explain it or assist in its implementation may be prepared,
    copied, published and distributed, in whole or in part, without

    Zelig et al          Expires August 2004                [page 47]


                        Pseudo Wire (PW) Management     February 2004
                             Information Base


    restriction of any kind, provided that the above copyright notice
    and this paragraph are included on all such copies and derivative
    works.  However, this document itself may not be modified in any
    way, such as by removing the copyright notice or references to the
    Internet Society or other Internet organizations, except as needed
    for the purpose of developing Internet standards in which case the
    procedures for copyrights defined in the Internet Standards
    process must be followed, or as required to translate it into
    languages other than English.
    The limited permissions granted above are perpetual and will not
    be revoked by the Internet Society or its successors or assigns.
    This document and the information contained herein is provided on
    an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET
    ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR
    IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
    THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
    WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

13 Intellectual Property Notice

    The IETF takes no position regarding the validity or scope of any
    intellectual property or other rights that might be claimed to
    pertain to the implementation or use of the technology described
    in this document or the extent to which any license under such
    rights might or might not be available; neither does it represent
    that it has made any effort to identify any such rights.
    Information on the IETF's procedures with respect to rights in
    standards-track and standards-related documentation can be found
    in BCP-11 [RFC2028].
    Copies of claims of rights made available for publication and any
    assurances of licenses to be made available, or the result of an
    attempt made to obtain a general license or permission for the use
    of such proprietary rights by implementors or users of this
    specification can be obtained from the IETF Secretariat.
    The IETF invites any interested party to bring to its attention
    any copyrights, patents or patent applications, or other
    proprietary rights that may cover technology that may be required
    to practice this standard.  Please address the information to the
    IETF Executive Director.













    Zelig et al          Expires August 2004                [page 48]