   PW-TC-STD-MIB DEFINITIONS ::= BEGIN

   IMPORTS
      MODULE-IDENTITY, Unsigned32
         FROM SNMPv2-SMI               -- [RFC2578]

     pwe3
        FROM FOUNDRY-SN-ROOT-MIB

      TEXTUAL-CONVENTION
         FROM SNMPv2-TC;               -- [RFC2579]

   pwTcStdMIB MODULE-IDENTITY
      LAST-UPDATED "200705241200Z"  -- 24 May 2007 12:00:00 GMT
      ORGANIZATION "Pseudo Wire Edge-to-Edge Emulation (PWE3) Working
                    Group"
      CONTACT-INFO
      " Thomas D. Nadeau
        Email:  tnadeau@cisco.com

        David Zelig
        Email: davidz@corrigent.com

        Orly Nicklass
        Email: orly_n@rad.com

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

      DESCRIPTION
           "This MIB module defines TEXTUAL CONVENTIONs
            for concepts used in Pseudo Wire Edge-to-Edge
            networks.

            Copyright (C) The IETF Trust (2007). The
            initial version of this MIB module as published
            in RFC YYYY. For full legal notices see the RFC
            itself or see:
            http://www.ietf.org/copyrights/ianamib.html

   -- RFC Editor: Please replace YYYY with the RFC number and remove
   -- this note.
               "
      -- Revision history.

      REVISION "200705241200Z"  -- 24 May 2007 12:00:00 GMT
      DESCRIPTION
           "Original Version"
         ::= { pwe3 1 }
         --::= { transmission XXXX }
   -- RFC Editor: please replace XXXX with IANA assigned value and
   -- delete this note.

   PwGroupID ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "d"
      STATUS      current
      DESCRIPTION
           "An administrative identification for grouping a
            set of service-specific pseudo-wire services."
      SYNTAX  Unsigned32

   PwIDType ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "d"
      STATUS      current
      DESCRIPTION
           "Pseudo-Wire Identifier. Used to identify the PW
            (together with some other fields) in the signaling
            session."
      SYNTAX  Unsigned32

   PwIndexType ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "d"
      STATUS      current
      DESCRIPTION
           "Pseudo Wire Index. A unique value, greater than zero,
           for each locally-defined PW for indexing
           several MIB tables associated with the particular PW.
           It is recommended that values are assigned contiguously
           starting from 1.  The value for each PW MUST remain
           constant at least from one re-initialization
           to the next re-initialization."
      SYNTAX  Unsigned32 (1..4294967295)

   PwIndexOrZeroType ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "d"
      STATUS      current
      DESCRIPTION
           "This textual convention is an extension of the
            PwIndexType convention.  The latter defines a greater-
            than-zero value used to identify a Pseudo Wire
            in the managed system.  This extension permits the
            additional value of zero. The zero value is object-specific
            and MUST therefore be defined as part of the description of
            any object which uses this syntax.  Examples of the usage of
            zero might include situations where Pseudo Wire was unknown,
            or when none or all Pseudo Wires need to be referenced."
       SYNTAX  Unsigned32 (0..4294967295)

   PwVlanCfg ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "d"
      STATUS      current
      DESCRIPTION
           "VLAN configuration for Ethernet PW.
            Values between 0 and 4095 indicate the actual VLAN field
            value.
            A value of 4096 indicates that the object refers to
            untagged frames, i.e. frames without a 802.1Q field.
            A value of 4097 indicates that the object is not
            relevant."
      SYNTAX  Unsigned32 (0..4097)

   PwOperStatusTC ::= TEXTUAL-CONVENTION
      STATUS      current
      DESCRIPTION
        "Indicates the operational status of the PW.

        - up(1):            Ready to pass packets.
        - down(2):          If PW signaling is not yet finished, or
                            indications available at the service
                            level indicate that the PW is not
                            passing packets.
        - testing(3):       If AdminStatus at the PW level is set to
                            test.
        - dormant(4):       The PW is not in a condition to pass
                            packets, but is in a 'pending' state,
                            waiting for some external event.
        - notPresent(5):    Some component is missing to accomplish
                            the setup of the PW. It can be configuration
                            error, incomplete configuration or missing
                            of H/W component.
        - lowerLayerDown(6):One or more of the lower-layer interfaces
                            responsible for running the underlying PSN
                            is not in OperStatus 'up' state."
    SYNTAX   INTEGER {
        up(1),
        down(2),
        testing(3),
        dormant(4),
        notPresent(5),
        lowerLayerDown(6)
        }

   PwAttachmentIdentifierType ::= TEXTUAL-CONVENTION
      STATUS      current
      DESCRIPTION
         "An octet string used in the generalized FEC element for
          identifying attachment forwarder and groups. A NULL
          identifier is of zero length.
         "
     SYNTAX    OCTET STRING (SIZE (0..255))

   PwCwStatusTC ::= TEXTUAL-CONVENTION
      STATUS      current
      DESCRIPTION
         "Indicates the status of the control word negotiation based
          on the local configuration and the indications received from
          the peer node.

          waitingForNextMsg(1) indicates that the node is waiting for
          another label mapping from the peer.

          sentWrongBitErrorCode(2) indicates that the local node has
          notified the peer about a mismatch in the C bit.

          rxWithdrawWithWrongBitErrorCode(3) indicates that a withdraw
          message has been received with the wrong C-bit error code.

          illegalReceivedBit(4) indicates a C-bit configuration with
          the peer which is not compatible with the PW type.

          cwPresent(5) indicates that the CW is present for this PW:
          If signaling is used - the C bit is set and agreed between the
          nodes, and for manualy-configured PW the local configuration
          requires the use of the CW.

          cwNotPresent(6) indicates that the CW is not present for
          this PW: If signaling is used - the C bit is reset and agreed
          between the nodes, and for manualy-configured PW the local
          configuration requires that the CW not be used.

          notYetKnown(7) indicates that a label mapping has not yet
          been received from the peer.
         "
      REFERENCE
         "Martini, et al, 'Pseudowire Setup and Maintenance using
          the Label Distribution Protocol', [RFC4447]."

      SYNTAX    INTEGER {
                 waitingForNextMsg (1),
                 sentWrongBitErrorCode (2),
                 rxWithdrawWithWrongBitErrorCode (3),
                 illegalReceivedBit (4),
                 cwPresent (5),
                 cwNotPresent (6),
                 notYetKnown(7)
                 }

   PwStatus ::= TEXTUAL-CONVENTION
      STATUS      current
      DESCRIPTION
         "Indicates the status of the PW and the interfaces affecting
          this PW. If none of the bits are set, it indicates no faults
          are reported.
         "
      SYNTAX   BITS {
        pwNotForwarding (0),
        servicePwRxFault (1),
        servicePwTxFault (2),
        psnPwRxFault  (3),
        psnPwTxFault  (4)
        }

   PwFragSize ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "d"
      STATUS      current
      DESCRIPTION
         "If set to a value other than zero, it indicates the desired
          fragmentation length in bytes. If set to zero,
          fragmentation is not desired for PSN bound packets.
         "
      SYNTAX   Unsigned32

   PwFragStatus ::= TEXTUAL-CONVENTION
      STATUS      current
      DESCRIPTION
         "Indicates the status of the fragmentation process based on
          local configuration and peer capability.

          noFrag(0) bit indicates that local configuration is for no
          fragmentation.

          cfgFragGreaterThanPsnMtu(1) bit indicates the local node
          is set to fragment, but the fragmentation size is greater
          than the MTU available at the PSN between the nodes.
          Fragmentation is not done in this case.

          cfgFragButRemoteIncapable(2) bit indicates that the local
          configuration indicates the desire for fragmentation but
          the peer is not capable of fragmentation.

          remoteFragCapable(3) bit indicates that the remote node
          is capable to accept fragmented PDUs.

          fragEnabled(4) bit indicates that fargmenteation will be used
          on this PW. Fragmentation can be used if the local node was
          configured for fragmentation, the peer has the cabability
          to accept fragmented packets, and the CW is in use for this
          PW."

      REFERENCE
          "Malis, A. and M. Townsley, 'Pseudowire Emulation Edge-to-
           Edge (PWE3) Fragmentation and Reassembly', [RFC4623]."
      SYNTAX   BITS {
         noFrag (0),
         cfgFragGreaterThanPsnMtu (1),
         cfgFragButRemoteIncapable (2),
         remoteFragCapable (3),
         fragEnabled (4)
         }

   PwCfgIndexOrzero ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "d"
      STATUS      current
      DESCRIPTION
           "Index in any of the relevant configuration tables for
           supplement information regarding configuration of the
           specific technology. Value 0 implies no additional
           configuration information is applicable."
      SYNTAX  Unsigned32 (0..4294967295)
   END
