--  Protocol private MIB Definitions
--  if compiles this mib with mg-soft, there must be mpls-vpn.mib and zxr10.mib files in
--  the same director.

     ZXR10-VSWITCH-MIB DEFINITIONS ::= BEGIN

   IMPORTS
   MODULE-IDENTITY, OBJECT-TYPE,
      TimeTicks, enterprises                      FROM SNMPv2-SMI

   EntryStatus                    FROM RMON-MIB

   IpAddress                      FROM RFC1155-SMI;



   zte OBJECT IDENTIFIER ::= { enterprises 3902 }
   zxr10 OBJECT IDENTIFIER ::= { zte 3}
    zxr10protocol OBJECT IDENTIFIER ::= { zxr10 101}

     zxr10vswitch MODULE-IDENTITY
          LAST-UPDATED "0408031136Z"  -- 3 Aug 2004 11:36:00 GMT
          ORGANIZATION "ZXR10 ROS OAM group"
          CONTACT-INFO
            "          Nanjing Institute of ZTE Corporation
              Postal:  No.1 Zijinghua Rd. Yuhuatai District,
                       Nanjing,
                       China
              Tel:     +86 25 52871677
              E-mail:  chen.wei3@mail.zte.com.cn

              Fax:     +86 25 52871000"
          DESCRIPTION
           "This MIB Module provides Textual Conventions
           and OBJECT-IDENTITY Objects to be used by
           vswitch module."
          ::= { zxr10protocol 4 }

    -- zxr10vswitch OBJECT IDENTIFIER ::= { zxr10protocol 3}


      DisplayString ::= OCTET STRING
          --  This data type is used to model textual information taken
          --  from the NVT ASCII character set.  By convention, objects
          --  with this syntax are declared as having
          --
          --       SIZE (0..255)
      VsiwtchTransMode ::= INTEGER
                          {
                             ip(0),
                             vlan(1),
                             mix(2)
                          }
      -- ip the v-switch interface using ip transfered mode
      -- vlan the v-switch interface usiing vlan transfered mode
      -- mix the v-switch interface using ip and vlan tranfsfered mode

      VsiwtchVlanDirection ::= INTEGER
                              {
                                 intoout(0),
                                 both(1)
                              }

      --        EntryStatus ::= INTEGER
      --                   { valid(1),
      --                     createRequest(2),
      --                     underCreation(3),
      --                     invalid(4)
      --                   }

--v-switch interface mib define ,added by chenwei 2004-2-9 9:26

    zxr10vswitchIfTable  OBJECT-TYPE
              SYNTAX  SEQUENCE OF Zxr10VswitchIfEntry
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "The description of zxr10 interface which is enable v-switch transfer mode.
                       It is a list of v-switch interface entries."
               ::= { zxr10vswitch 1 }

    zxr10vswitchIfEntry  OBJECT-TYPE
              SYNTAX  Zxr10VswitchIfEntry
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "A v-switch interface entry containing objects that
                       v-switch interface infomation,such as:
                       v-switch ifindex, v-switch iftype, v-switchtranstype."
              INDEX  { zxr10vsiwtchIfIndex }
              ::= { zxr10vswitchIfTable 1 }

    Zxr10VswitchIfEntry ::=
              SEQUENCE {
                zxr10vsiwtchIfIndex
                    INTEGER,
                zxr10vswitchIfType
                    INTEGER,
                zxr10vswitchIfTransType
                    VsiwtchTransMode,
                zxr10vswitchIfStatus
                    INTEGER,
                zxr10vswitchIfAddr
                    IpAddress,
                zxr10vswitchIfDesc
                    DisplayString
              }

   zxr10vsiwtchIfIndex  OBJECT-TYPE
              SYNTAX  INTEGER
              MAX-ACCESS  read-only --not-accessible
              STATUS  current
              DESCRIPTION
                      "The v-switch interface index which is the same as ifIndex defined in RFC1213 ifTable."
              ::= { zxr10vswitchIfEntry 1 }

   zxr10vswitchIfType  OBJECT-TYPE
              SYNTAX  INTEGER
              MAX-ACCESS  read-only
              STATUS  current
              DESCRIPTION
                      "The interface type of this v-switch, which is the same as ifType defined in RFC1213 ifTable."
              ::= { zxr10vswitchIfEntry 2 }

   zxr10vswitchIfTransType OBJECT-TYPE
              SYNTAX  VsiwtchTransMode
              MAX-ACCESS  read-only
              STATUS  current
              DESCRIPTION
                  "The v-switch interface transfer type, such as ip, vlan , or ip and vlan."
             ::= { zxr10vswitchIfEntry 3 }

   zxr10vswitchIfStatus OBJECT-TYPE
              SYNTAX  INTEGER
              MAX-ACCESS  read-only
              STATUS  current
              DESCRIPTION
                  "The v-switch interface status, ie the interface protocol status (up or down)."
             ::= { zxr10vswitchIfEntry 4 }

   zxr10vswitchIfAddr OBJECT-TYPE
             SYNTAX  IpAddress
             MAX-ACCESS  read-only
             STATUS  current
             DESCRIPTION
                     "The IP address of this v-switch interface."
             ::= { zxr10vswitchIfEntry 5 }

   zxr10vswitchIfDesc OBJECT-TYPE
             SYNTAX  DisplayString (SIZE(0..64))
             MAX-ACCESS  read-create
             STATUS  current
             DESCRIPTION
                     "The description of this v-switch interface."
             ::= { zxr10vswitchIfEntry 6 }


  -- v-switch table last change time

   zxr10vswitchIfTableLastchange OBJECT-TYPE
             SYNTAX  TimeTicks
             MAX-ACCESS  read-only
             STATUS  current
             DESCRIPTION
                     "The last time of the v-switch interface table changed."
             ::= { zxr10vswitch 2 }

-- vlan trans table

    zxr10vswitchVlanTable  OBJECT-TYPE
              SYNTAX  SEQUENCE OF Zxr10VswitchVlanEntry
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "The description of zxr10 vlan transfer table.
                       It is a list of vlan transfer entries."
               ::= { zxr10vswitch 3 }

    zxr10vsiwtchVlanEntry  OBJECT-TYPE
              SYNTAX  Zxr10VswitchVlanEntry
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "A vlan transfer table entry containing objects that
                       the interface vlan transfer configuration infomation,such as:
                       input vlanid, inputInner vlanid, outputvlanid, outputInner vlanid, vlanrow status."
              INDEX  { zxr10vswitchVlanIngressIfIndex,
                       zxr10vswitchVlanIngressExtVlanid }
              ::= { zxr10vswitchVlanTable 1 }

    Zxr10VswitchVlanEntry ::=
              SEQUENCE {
                zxr10vswitchVlanIngressExtVlanid
                    INTEGER,
                zxr10vswitchVlanIngressIfIndex
                    INTEGER,
                zxr10vswitchVlanIngressIntVlanid
                    INTEGER,
                zxr10vswitchVlanEgressExtVlanid
                    INTEGER,
                zxr10vswitchVlanEgressIfIndex
                    INTEGER,
                zxr10vswitchVlanEgressIntVlanid
                    INTEGER,
                zxr10vswitchVlanVlanidRange
                    INTEGER,
                zxr10vswitchVlandDirection
                    VsiwtchVlanDirection,
                zxr10vswitchVlanRowStatus
                    EntryStatus,
                zxr10vswitchVlanDesc
                    DisplayString
              }

   zxr10vswitchVlanIngressExtVlanid  OBJECT-TYPE
              SYNTAX  INTEGER --(1-4095)
              MAX-ACCESS  read-only -- read-create?
              STATUS  current
              DESCRIPTION
                      "The vswitch input vlan index."
              ::= { zxr10vsiwtchVlanEntry 1 }

   zxr10vswitchVlanIngressIfIndex  OBJECT-TYPE
              SYNTAX  INTEGER
              MAX-ACCESS  read-only --read-write
              STATUS  current
              DESCRIPTION
                      "The interface that the vswitch vlan packet input."
              ::= { zxr10vsiwtchVlanEntry 2 }

   zxr10vswitchVlanIngressIntVlanid OBJECT-TYPE
              SYNTAX  INTEGER
              MAX-ACCESS  read-only
              STATUS  current
              DESCRIPTION
                  "The vswitch inner vlan index."
             ::= { zxr10vsiwtchVlanEntry 3 }

   zxr10vswitchVlanEgressExtVlanid OBJECT-TYPE
             SYNTAX  INTEGER
             MAX-ACCESS  read-write
             STATUS  current
             DESCRIPTION
                     "The vswitch out vlan index."
             ::= { zxr10vsiwtchVlanEntry 4 }

   zxr10vswitchVlanEgressIfIndex OBJECT-TYPE
             SYNTAX  INTEGER
             MAX-ACCESS  read-write
             STATUS  current
             DESCRIPTION
                     "The interface that the vsiwtch vlan packet output."
             ::= { zxr10vsiwtchVlanEntry 5 }

   zxr10vswitchVlanEgressIntVlanid OBJECT-TYPE
             SYNTAX  INTEGER
             MAX-ACCESS  read-only
             STATUS  current
             DESCRIPTION
                     "The vswitch inner out put vlan index."
             ::= { zxr10vsiwtchVlanEntry 6 }

   zxr10vswitchVlanVlanidRange OBJECT-TYPE
             SYNTAX  INTEGER
             MAX-ACCESS  read-write
             STATUS  current
             DESCRIPTION
                     "The vswitch vlan index range (default is 1)."
             ::= { zxr10vsiwtchVlanEntry 7 }

   zxr10vswitchVlandDirection OBJECT-TYPE
             SYNTAX  VsiwtchVlanDirection
             MAX-ACCESS  read-write
             STATUS  current
             DESCRIPTION
                     "The vswitch vlan input output direction (default is uni-direction)."
             ::= { zxr10vsiwtchVlanEntry 8 }

   zxr10vswitchVlanRowStatus OBJECT-TYPE
             SYNTAX  EntryStatus
             MAX-ACCESS  read-write
             STATUS  current
             DESCRIPTION
                     "The vswitch row status when it changes to invalid the row will be deleted."
             ::= { zxr10vsiwtchVlanEntry 9 }

   zxr10vswitchVlanDesc OBJECT-TYPE
             SYNTAX  DisplayString
             MAX-ACCESS  read-write
             STATUS  current
             DESCRIPTION
                     "The vswitch row descrption, for nm01 using."
             ::= { zxr10vsiwtchVlanEntry 10 }

  -- v-switch vlan config table last change time

   zxr10vswitchVlanTableLastchange OBJECT-TYPE
             SYNTAX  TimeTicks
             MAX-ACCESS  read-only
             STATUS  current
             DESCRIPTION
                     "The last time of the v-switch vlan table changed."
             ::= { zxr10vswitch 4 }


-- end added by chenwei for vswitch private mib


     END
