PDN-BRIDGE-MIB DEFINITIONS ::= BEGIN

-- Version :  1.0 APPROVED
-- Enterprise pdn bridge mib
-- Copyright (C) 1999 Paradyne Corporation.

-- Created by : Wayne Jadoo / Prakash Easwar

-- This MIB contains objects that is used to perform  
-- operations on the bridge.

--  04/27/00 Prakash Easwar
--
-- 1) pdnDot1dTpPortTable stats collected on a per interface
--    and not on a per interface per vnid basis made changes to
--    reflect this.


IMPORTS

MacAddress
FROM SNMPv2-TC
Counter
FROM RFC1155-SMI
ifIndex
FROM RFC1213-MIB
OBJECT-TYPE
FROM RFC-1212
pdn-bridge
FROM PDN-HEADER-MIB
VnidRange
FROM PDN-TC
;

pdnBridgeGenericMIBObjects OBJECT IDENTIFIER ::= { pdn-bridge 1 }
pdnBridgeMIBTraps OBJECT IDENTIFIER ::= { pdn-bridge 2 }
pdnDot1dGenericBridge OBJECT IDENTIFIER ::= { pdnBridgeGenericMIBObjects 1 }
pdnDot1dTpFdb      OBJECT IDENTIFIER ::= { pdnBridgeGenericMIBObjects  2 }
pdnDot1dTp         OBJECT IDENTIFIER ::= { pdnBridgeGenericMIBObjects  3 }
 
       pdnDot1dBaseBridgeAddress OBJECT-TYPE
              SYNTAX  MacAddress
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The MAC address used by this bridge when it must
                      be referred to in a unique fashion.   It is
                      recommended that this be the numerically smallest
                      MAC address of all ports that belong to this
                      bridge.  However it is only required to be
             unique."
              ::= { pdnDot1dGenericBridge 1 }

          pdnDot1dBaseNumPorts OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ports controlled by this bridging
              entity."
              ::= { pdnDot1dGenericBridge 2 }

          pdnDot1dBaseType OBJECT-TYPE
              SYNTAX  INTEGER {
                          unknown(1),
                          transparent-only(2),
                          sourceroute-only(3),
                          srt(4)
                      }
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "Indicates what type of bridging this bridge can
            perform."
              ::= { pdnDot1dGenericBridge 3 }

          pdnDot1dTpLearnedEntryDiscards OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of Forwarding Database entries,
                      which have been or would have been learned, but
                      have been discarded due to a lack of space to
                      store them in the Forwarding Database.  If this
                      counter is increasing, it indicates that the
                      Forwarding Database is regularly becoming full (a
                      condition which has unpleasant performance effects
                      on the subnetwork).  If this counter has a
                      significant value but is not presently increasing,
                      it indicates that the problem has been occurring
                      but is not persistent."
              ::= { pdnDot1dGenericBridge 4 }

          pdnDot1dTpAgeingTime OBJECT-TYPE
              SYNTAX   INTEGER (10..1000000)
              ACCESS   read-write
              STATUS   mandatory
              DESCRIPTION
                      "The timeout period in seconds for aging out
                      dynamically learned forwarding information.
                      802.1D-1990 recommends a default of 300 seconds."
              DEFVAL { 300 }
              ::= { pdnDot1dGenericBridge 5 }

          pdnDot1dTpAgeingCleanupTime OBJECT-TYPE
              SYNTAX   INTEGER (5..500000)
              ACCESS   read-write
              STATUS   mandatory
              DESCRIPTION
                      " pdnDot1dTpEntryAgeingCleanupupTime is the length of 
                        time before an entry is removed from the bridge . 
                        This parameter is typically set to one-half of the 
                        bridge Ageing time."
              DEFVAL { 150 }
              ::= { pdnDot1dGenericBridge 6 }


          pdnDot1dTpFdbTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF PdnDot1dTpFdbEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A table that contains information about unicast
                      entries for which the bridge has forwarding and/or
                      filtering information.  This information is used
                      by the transparent bridging function in
                      determining how to propagate a received frame."
              ::= { pdnDot1dTpFdb 1 }

          pdnDot1dTpFdbEntry OBJECT-TYPE
              SYNTAX  PdnDot1dTpFdbEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "Information about a specific unicast MAC address
                      for which the bridge has some forwarding and/or
                      filtering information."
              INDEX   { pdnDot1dTpFdbAddress, 
                        pdnDot1dTpFdbVnidId }
              ::= { pdnDot1dTpFdbTable 1 }

          PdnDot1dTpFdbEntry ::=
              SEQUENCE {
                  pdnDot1dTpFdbAddress     MacAddress,
                  pdnDot1dTpFdbVnidId      VnidRange,
                  pdnDot1dTpFdbIfIndex     INTEGER,
                  pdnDot1dTpFdbStatus      INTEGER,
                  pdnDot1dTpFdbAgeTime     INTEGER,
                  pdnDot1dTpFdbFlags       INTEGER
 }

          pdnDot1dTpFdbAddress OBJECT-TYPE
              SYNTAX  MacAddress
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "A unicast MAC address for which the bridge has
                       forwarding and/or filtering information."
              ::= { pdnDot1dTpFdbEntry 1 }

          pdnDot1dTpFdbVnidId OBJECT-TYPE
              SYNTAX  VnidRange
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                 "The VNID Id number of the virtual network for which the
                  bridge has forwarding and/or filtering information."
              ::= { pdnDot1dTpFdbEntry 2 }
			 
			 pdnDot1dTpFdbIfIndex OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                 "The ifIndex of the interface associated with the 
						mac address and vlan-id."
              ::= { pdnDot1dTpFdbEntry 3 }

          pdnDot1dTpFdbStatus OBJECT-TYPE
              SYNTAX  INTEGER {
                          other(1),
                          invalid(2),
                          learned(3),
                          self(4),
                          mgmt(5)
                      }
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                  "The status of this entry.  The meanings of the
                  values are:

                    other(1)   : none of the following.  This would
                                 include the case where some other
                                 MIB object (not the corresponding
                                 instance of pdnDot1dTpFdbPort, nor 
                                 an entry in the pdnDot1dStaticTable)
                                 in being used to determine if and how
                                 frames addressed to the value of
                                 the corresponding instance of
                                 pdnDot1dTpFdbAddress are being
                                 forwarded.

                    invalid(2) : this entry is not longer valid
                                 (e.g., it was learned but has since

                                 aged-out), but has not yet been
                                 flushed from the table.

                    learned(3) : the value of the corresponding
                                 instance of pdnDot1dTpFdbPort was
                                 learned, and is being used.

                    self(4)    : the value of the corresponding
                                 instance of pdnDot1dTpFdbAddress
                                 represents one of the bridge's
                                 addresses.  The corresponding
                                 instance of pdnDot1dTpFdbPort
                                 indicates which of the bridge's
                                 ports has this address.

                    mgmt(5)    : the value of the corresponding
                                 instance of pdnDot1dTpFdbAddress is

                                 also the value of an existing
                                 instance of pdnDot1dStaticAddress."
              ::= { pdnDot1dTpFdbEntry 4 }

          pdnDot1dTpFdbAgeTime OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The amount of time in seconds that 
                       this entry is in the Bridge table"
              ::= { pdnDot1dTpFdbEntry 5 }

          pdnDot1dTpFdbFlags OBJECT-TYPE
              SYNTAX  INTEGER {
                          other(1),
                          permanentDHCP(2),
                          permanentCONFIGURED(3),
                          dynamic(4)
                      }
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                "This object indicates the type of
                 entry in the Bridge table.
                 permanentDHCP       -- Entry added due to DHCP client
                 permanentCONFIGURED -- Entry added by User 
                 dynamic             -- Dynamic Entry
                "
              ::= { pdnDot1dTpFdbEntry 6 }

          --  Port Table for Transparent Bridges

          pdnDot1dTpPortTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF PdnDot1dTpPortEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A table that contains information about every
                      port that is associated with this transparent
                      bridge."
              ::= { pdnDot1dTp 1 }

          pdnDot1dTpPortEntry OBJECT-TYPE
              SYNTAX  PdnDot1dTpPortEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A list of information for each port of a
                      transparent bridge."
              INDEX   { ifIndex }
              ::= { pdnDot1dTpPortTable 1 }

          PdnDot1dTpPortEntry ::=
              SEQUENCE {
                  pdnDot1dTpPortMaxInfo        INTEGER,
                  pdnDot1dTpPortInFrames       Counter,
                  pdnDot1dTpPortOutFrames      Counter,
                  pdnDot1dTpPortInDiscards     Counter
              }

          pdnDot1dTpPortMaxInfo OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The maximum size of the INFO (non-MAC) field that

                      this port will receive or transmit."
              ::= { pdnDot1dTpPortEntry 1 }

          pdnDot1dTpPortInFrames OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of frames that have been received by
                      this port from its segment. Note that a frame
                      received on the interface corresponding to this
                      port is only counted by this object if and only if
                      it is for a protocol being processed by the local
                      bridging function, including bridge management
                      frames."
              ::= { pdnDot1dTpPortEntry 2 }

          pdnDot1dTpPortOutFrames OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of frames that have been transmitted
                      by this port to its segment.  Note that a frame
                      transmitted on the interface corresponding to this
                      port is only counted by this object if and only if
                      it is for a protocol being processed by the local
                      bridging function, including bridge management
                      frames."
              ::= { pdnDot1dTpPortEntry 3 }

          pdnDot1dTpPortInDiscards OBJECT-TYPE
              SYNTAX   Counter
              ACCESS   read-only
              STATUS   mandatory
              DESCRIPTION
                      "Count of frames received which were
                      discarded (i.e., filtered) by the Forwarding
                      Process."
              ::= { pdnDot1dTpPortEntry 4 }

          END

