-- Copyright (C) 2006-2012 Aricent Group . All Rights Reserved

-- /*****************************************************************
--  *                                                                *
--  * $Id: fsmpbgp4.mib,v 1.22 2015/09/23 07:01:29 siva Exp $          *
--  * fsmpbgp4.mib                                                   *
--  *                                                                *
--  * BGP4 Proprietary MIB.                                          *
--  *                                                                *
--  ****************************************************************/

-- MIB FOR BGP-MI

ARICENT-MI-BGP-MIB DEFINITIONS ::= BEGIN

IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,NOTIFICATION-TYPE,
IpAddress, Unsigned32, Integer32, enterprises, Gauge32, Counter32  FROM SNMPv2-SMI
DisplayString, RowStatus, DateAndTime, TruthValue                  FROM SNMPv2-TC
InetAddress, InetAddressType, BgpSafi                              FROM ARICENT-BGP-MIB;


fsMIBgp MODULE-IDENTITY
    LAST-UPDATED "201211280000Z"
    ORGANIZATION "ARICENT COMMUNICATIONS SOFTWARE"
    CONTACT-INFO "support@aricent.com"
    DESCRIPTION
    "The Proprietary BGP MIB Created for MI support"
    ::=  { enterprises aricent-communication-holding-ltd(29601) iss(2) 77 }


-- Scalar object for BGP MI support

fsMIBgp4GlobalTraceDebug OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
        "This object is used to enable global trace for the BGP module.
     A four byte integer value is specified for enabling
     the level of tracing. Each Bit in the four byte integer variable
     represents a level of Trace.
     The bits represents the levels as follows:
        0 - All Failures,
        1 - All Resource Allocation failure,
        2 - Init & Shutdown Trace,
        3 - Management Trace,
        4 - Control Path Trace,
        5 - Data Path Trace,
        6 - Peer Connection Trace,
        7 - Update Message Trace,
        8 - FDB Update Trace,
        9 - Keep-Alive Trace,
       10 - All Transmission Trace,
       11 - All Reception Trace,
       12 - Dampening Trace,
       13 - Events Trace,
       14 - High level Packet Dump
       15 - Low level packet Dump
       16 - Hex Dump
     This Traces will be displayed when fsMIBgp4LocalAs is configured for any VR."

    ::= { fsMIBgp 1 }

fsMIBgp4LocalAs     OBJECT-TYPE
    SYNTAX      Unsigned32 (0..4294967295)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This is Global local autonomous system number."
    DEFVAL      { 0 }
    ::= { fsMIBgp 2 }

fsMIBgp4MaxPeerEntry    OBJECT-TYPE
    SYNTAX            Integer32 (0..50)
                      -- MaxPeerEntry (Range should be modified
                      -- according to the DEFVAL)
    MAX-ACCESS        read-write
    STATUS            current
    DESCRIPTION
    "The Maximum number of peers supported by BGP"
    DEFVAL     { 50 }
    ::= { fsMIBgp 3 }

fsMIBgp4MaxNoofRoutes         OBJECT-TYPE
    SYNTAX                  Integer32 (0..5000)
                            -- MaxNoofRoutes (Range should be modified
                            -- according to the DEFVAL )
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "It represents the maximum number of routes in the routing table"
    DEFVAL     { 5000 }
    ::= { fsMIBgp 4 }

fsMIBgp4GRAdminStatus  OBJECT-TYPE
    SYNTAX      INTEGER {
                       enable  (1),
                       disable (2)
                   }

    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object is used to enable or disable GR capability in BGP speaker."
    DEFVAL      { enable }
    ::= {  fsMIBgp 5 }

fsMIBgp4GRRestartTimeInterval    OBJECT-TYPE
    SYNTAX  Integer32 (1..4096)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This is the estimated time (in seconds) it will take for the BGP
     session to be re-established after a restart. Suggested default value
     should be less than or equal to Hold Time carried in open message.

     The GR restart time interval configured can be used only for the new peers 
     sessions established and not for the already established peer sessions"
    DEFVAL     { 90 }
    ::= {  fsMIBgp 6 }


fsMIBgp4RestartExitReason    OBJECT-TYPE
      SYNTAX      INTEGER {
                none (1),           -- none attempted
                inProgress (2),     -- restart in progress
                completed (3),      -- successfully completed
                failure (4)         -- restart failure.
              }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
    "Describes the outcome of the last attempt at a graceful restart.
    If the value is 'none': no restart  has yet been attempted.
    'inProgress': a restart attempt is currently underway.
    'Completed': a restart is completed successfully.
    'failure': failure due to the speaker is not completed the
    restart process within the restart interval."
    ::= {  fsMIBgp 7 }    


fsMIBgp4GRSelectionDeferralTimeInterval    OBJECT-TYPE
    SYNTAX  Integer32 (60..1800)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This interval is the upper bound on the amount of time a router
     defers its route selection. The value of this timer should be large
     enough, so as to provide all the peers of the Restarting Speaker with
     enough time to send all the routes to the Restarting Speaker."
    DEFVAL     { 60 }
    ::= {  fsMIBgp 8 }

fsMIBgp4GRStaleTimeInterval    OBJECT-TYPE
    SYNTAX  Integer32 (90..3600)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This interval is the upper bound on the amount of time a router retains
     the stale routes.

     The GR stale time interval configured can be used only for the new peers 
     sessions established and not for the already established peer sessions"
    DEFVAL     { 150 }
    ::= {  fsMIBgp 9 }

fsMIBgp4GRMode    OBJECT-TYPE
    SYNTAX      INTEGER {
                  restarting (1),
                  receiving (2),
                  none(3)
                }

    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
    "This object indicates whether the BGP speaker is restarting speaker
     or receiving speaker."
    ::= {  fsMIBgp 10 }

fsMIBgp4RestartSupport    OBJECT-TYPE
    SYNTAX      INTEGER {
                       none (1),
                       plannedOnly (2),
                       plannedAndUnplanned (3)
                }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "The router's support for BGP graceful restart Options include:
     no restart support, only planned restarts, or both planned and unplanned
     restarts. This object is persistent and when written the entity SHOULD 
     save the change to non-volatile storage. When BGP GR admin status is 
     enabled, the restart option can be one of the following: only planned 
     restarts, or both planned and unplanned restarts."
    DEFVAL { none }
    ::= {  fsMIBgp 11 }

fsMIBgp4RestartStatus    OBJECT-TYPE
    SYNTAX      INTEGER {
                       none (1),
                       plannedRestart (2),
                       unplannedRestart (3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
    "Current status of BGP graceful restart, it indicates whether the speaker
    restarted or not if it is restarted whether it is a planned restart or unplanned restart "
    ::= {  fsMIBgp 12 }

fsMIBgp4ForwardingPreservation    OBJECT-TYPE
    SYNTAX      INTEGER {
                       preserved (1),
                       notPreserved (2)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
    "This object indicates whether the forwarding plane is preserved during restart or not"
    ::= {  fsMIBgp 13 }

-- End of scalar object

-- Context table for BGP MI support

fsMIBgpContextTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF FsMIBgpContextEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION 
            "This context table contains the global parameters of BGP 
             that is required to be configured for each context."
    ::= { fsMIBgp 14 }

fsMIBgpContextEntry OBJECT-TYPE
    SYNTAX     FsMIBgpContextEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION 
            "An Entry for the configuration in a particular VR."
    INDEX { fsMIBgp4ContextId } 
    ::= { fsMIBgpContextTable 1 }

FsMIBgpContextEntry ::= SEQUENCE {
                        fsMIBgp4ContextId				        Integer32,
                        fsMIBgp4GlobalAdminStatus			    INTEGER,
                        fsMIBgp4Identifier				        IpAddress,
                        fsMIBgp4Synchronization				    INTEGER,
                        fsMIBgp4DefaultLocalPref			    Unsigned32,
                        fsMIBgp4AdvtNonBgpRt				    INTEGER,
                        fsMIBgp4TraceEnable				        Unsigned32,
                        fsMIBgp4DebugEnable				        Unsigned32,
                        fsMIBgp4OverlappingRoute			    INTEGER,
                        fsMIBgp4AlwaysCompareMED		    	INTEGER,
                        fsMIBgp4DefaultOriginate	    		INTEGER,
                        fsMIBgp4DefaultIpv4UniCast  			INTEGER,
                        fsMIBgp4IsTrapEnabled   				INTEGER,
                        fsMIBgp4NextHopProcessingInterval		Integer32,
                        fsMIBgp4IBGPRedistributionStatus		INTEGER,
                        fsMIBgp4RRDAdminStatus                       INTEGER,
                        fsMIBgp4RRDProtoMaskForEnable                Integer32,
                        fsMIBgp4RRDSrcProtoMaskForDisable            Integer32,
                        fsMIBgp4RRDDefaultMetric                     Unsigned32,
                        fsMIBgp4RRDRouteMapName                      DisplayString,
                        fsMIBgp4RRDMatchTypeEnable                   INTEGER,
                        fsMIBgp4RRDMatchTypeDisable                  INTEGER,
                        fsMIBgp4AscConfedId                          Unsigned32,   
                        fsMIBgp4AscConfedBestPathCompareMED          Integer32,
                        fsMIBgp4RflbgpClusterId                      OCTET STRING,
                        fsMIBgp4RflRflSupport                        INTEGER,
                        fsMIBgp4RfdCutOff                            Integer32,
                        fsMIBgp4RfdReuse                             Integer32,
                        fsMIBgp4RfdCeiling                           Integer32,
                        fsMIBgp4RfdMaxHoldDownTime                   Integer32,
                        fsMIBgp4RfdDecayHalfLifeTime                 Integer32,
                        fsMIBgp4RfdDecayTimerGranularity             Integer32,
                        fsMIBgp4RfdReuseTimerGranularity             Integer32,
                        fsMIBgp4RfdReuseIndxArraySize                Integer32,
                        fsMIBgp4RfdAdminStatus                       INTEGER,
                        fsMIBgp4CommMaxInFTblEntries                 Integer32,
                        fsMIBgp4CommMaxOutFTblEntries                Integer32,
                        fsMIBgp4ExtCommMaxInFTblEntries              Integer32,
                        fsMIBgp4ExtCommMaxOutFTblEntries             Integer32,
                        fsMIBgp4CapabilitySupportAvailable           TruthValue,
                        fsMIBgp4MaxCapsPerPeer                       Integer32,
                        fsMIBgp4MaxInstancesPerCap                   Integer32,
                        fsMIBgp4MaxCapDataSize                       Integer32,
                        fsMIBgp4PreferenceValue                      Integer32,
                        fsMIBgp4ContextStatus                        INTEGER,
                        fsMIBgp4IBGPMaxPaths                         Integer32,
                        fsMIBgp4EBGPMaxPaths                         Integer32,
                        fsMIBgp4EIBGPMaxPaths                        Integer32,
                        fsMIBgp4OperIBGPMaxPaths                     Integer32,
                        fsMIBgp4OperEBGPMaxPaths                     Integer32,
                        fsMIBgp4OperEIBGPMaxPaths                    Integer32,
                        fsMIBgp4FourByteASNSupportStatus             INTEGER,
                        fsMIBgp4FourByteASNotationType               INTEGER,
                        fsMIBgp4LocalAsNo                            Unsigned32,
                        fsMIBgp4RIBRoutes                            Counter32,
                        fsMIBgp4Ipv4AddrFamily                       INTEGER,
                        fsMIBgp4Ipv6AddrFamily                       INTEGER,
                        fsMIBgp4VPNV4AddrFamily                      INTEGER,
                        fsMIBgp4VpnLabelAllocPolicy                  INTEGER,
                        fsMIBgp4L2vpnAddrFamily                      INTEGER,
                        fsMIBgp4EvpnAddrFamily                       INTEGER
 }

fsMIBgp4ContextId OBJECT-TYPE
    SYNTAX     Integer32 (0..65535)
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION 
            "The index value that uniquely identifies the virtual router in which the configuration is done."
    ::= { fsMIBgpContextEntry 1 }

fsMIBgp4GlobalAdminStatus OBJECT-TYPE
    SYNTAX       INTEGER {
                            up  (1),
                            down(2)
                         }
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
    "The desired state of the BGP system. The BGP4 speaker is
     functionally active only when the global admin status is up. The global
     admin status can be made up only if the fsMIBgp4LocalAs is configured."
    DEFVAL      { down }
    ::= { fsMIBgpContextEntry  2 }

fsMIBgp4Identifier OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object configures the BGP Identifier in that VR. If admin status 
     is made up, by default the BGP Identifier will take
     the value of highest interface address. If the BGP Speaker is
     administratively active, then the BGP Identifier can be configured
     explicitly. If configured explicitly,then this configured value will be
     preserved even across BGP restarts. Inorder to restore the default value
     for BGP Identifier configure this object as 0.0.0.0. Peering sessions
     will be reset if the BGP Identifer is changed. This object can be set
     only if fsMIBgp4LocalAs has been configured."
    ::= { fsMIBgpContextEntry 3 }

fsMIBgp4Synchronization   OBJECT-TYPE
    SYNTAX     INTEGER {
                       enable  (1),
                       disable (2)
                   }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "Attribute to enable/disable synchronization within an AS.
     This object can be set only if fsMIBgp4LocalAs has been configured."
    DEFVAL     { disable }
    ::= { fsMIBgpContextEntry 4 }

fsMIBgp4DefaultLocalPref  OBJECT-TYPE
    SYNTAX              Unsigned32 ( 0 .. 2147483647 )
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "The default value of local-pref that is to be sent in updates to internal
     peers.This object can be set only if fsMIBgp4LocalAs has been configured."
    DEFVAL     { 100 }
    ::=   { fsMIBgpContextEntry 5 }

fsMIBgp4AdvtNonBgpRt  OBJECT-TYPE
    SYNTAX          INTEGER
                    {
                        external(1),
                        externalAndinternal(2)
                    }
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
    "This mib object can be used to configure the peer type to whom
     non-bgp routes can be propagated.
        external            - indicates non-bgp routes can be exported to only
                              external peers.All types of non-bgp routes
                              can be propagated to external peers.
        externalAndInternal - non-bgp routes can be propagated to both external
                              and internal peers.
     This object can be set only if fsMIBgp4LocalAs has been configured."
    DEFVAL     { externalAndinternal }
    ::= { fsMIBgpContextEntry 6 }

fsMIBgp4TraceEnable   OBJECT-TYPE
    SYNTAX          Unsigned32 (0..4294967295)
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
    "This object can be used to enable trace dynamically in BGP
     module. A four byte integer value is specified for enabling
     the level of tracing.Each Bit in the four byte integer variable
     represents a level of Trace.
     The bits represents the levels as follows:
        0 - All Failures,
        1 - All Resource Allocation failure,
        2 - Init & Shutdown Trace,
        3 - Management Trace,
        4 - Control Path Trace,
        5 - Data Path Trace,
        6 - Peer Connection Trace,
        7 - Update Message Trace,
        8 - FDB Update Trace,
        9 - Keep-Alive Trace,
       10 - All Transmission Trace,
       11 - All Reception Trace,
       12 - Dampening Trace,
       13 - Events Trace,
       14 - High level Packet Dump
       15 - Low level packet Dump
       16 - Hex Dump
     The remaining  bits are unused.
     The combination of levels are also allowed. For example if the bits 1
     and  2 are set, then the Trace statements related to management and Data
     Path will be printed.
     The user have to enter the corresponding integer value for the bits set.
     For example if bits 1 and 2 are set then value of 6 should be entered.
     This object can be set only if fsMIBgp4LocalAs has been configured."
    ::= { fsMIBgpContextEntry 7 }

fsMIBgp4DebugEnable   OBJECT-TYPE
    SYNTAX          Unsigned32 (0..4294967295)
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
    "This object can be used to enable debug dynamically in BGP module.
     Its a four byte integer value specified for enabling the level
     of debugging. Each Bit in the four byte integer variable
     represents a level of debug. The combination of levels are also
     allowed. This object can be set only if fsMIBgp4LocalAs is configured."
    ::= { fsMIBgpContextEntry 8 }

fsMIBgp4OverlappingRoute    OBJECT-TYPE
    SYNTAX                INTEGER
                          {
                              moreSpecific(1),
                              lessSpecific(2),
                              both(3)
                          }
    MAX-ACCESS            read-write
    STATUS                current
    DESCRIPTION
    "This object is used to configure the BGP speaker's policy for handling
     the overlapping routes. When an overlapping route is received, depending
     upon the configured policy either the less-specific routes or
     more-specific routes or both routes are installed in the RIB tree. This
     object can be set only if fsMIBgp4LocalAs has been configured and
     fsMIBgp4GlobalAdminStatus is down."
    DEFVAL { both }
    ::= { fsMIBgpContextEntry 9 }


fsMIBgp4AlwaysCompareMED      OBJECT-TYPE
    SYNTAX                  INTEGER
                            {
                                enable(1),
                                disable(2)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "If this object is set to disable, then in best route decision process,
     MED will be compared only between routes received from the same
     autonomous system. If set to enable, irrespective of the autonomous
     system from which the routes are received, MED comparision will be done.
     This object can be set only if the fsMIBgp4LocalAs is set."
    DEFVAL  { disable }
    ::= { fsMIBgpContextEntry 10 }

fsMIBgp4DefaultOriginate      OBJECT-TYPE
    SYNTAX                  INTEGER
                            {
                                enable(1),
                                disable(2)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "If this object is set to enable/disable the redistribution and
     advertisement of the default route (0.0.0.0/0). By default, the
     default routes are not redistributed into BGP. Only if this object
     is set as enable, the default route gets redistributed and advertised
     to BGP Peers. If the default route is neither present in IP FDB nor
     received from any Peer, enabling this object will not result in
     advertisement of default route. This object can be set only if the
     fsMIBgp4LocalAs is set."
    DEFVAL  { disable }
    ::= { fsMIBgpContextEntry 11 }

fsMIBgp4DefaultIpv4UniCast    OBJECT-TYPE
    SYNTAX                  INTEGER
                            {
                                enable(1),
                                disable(2)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "If this object is set to enable, and if a neighbor is created, then
     the MP IPv4 Unicast Address Family Capability will be negotiate for
     that peer. If this object is set as disable and if a neighbor is
     created, then IPv4 unicast capability will not be negotiated for that
     neighbor, unless IPv4 unicast capability is explicitly configured for
     that neighbor. Changing the status of this object will not cause
     any change in the MP IPV4 Unicast negotiation status of the already
     existing peer. This object can be set only if fsMIBgp4LocalAs is
     configured."
    DEFVAL  { enable }
    ::= { fsMIBgpContextEntry 12 }

fsMIBgp4IsTrapEnabled         OBJECT-TYPE
    SYNTAX                  INTEGER
                            {
                                enable(1),
                                disable(2)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "If this object is set to disable, then the NOTIFICATION messages wont be sent to
    the SNMP Manager. If enabled, NOTIFICATION messages are sent."
    DEFVAL  { enable }
    ::= { fsMIBgpContextEntry 13 }

fsMIBgp4NextHopProcessingInterval         OBJECT-TYPE
    SYNTAX                  Integer32
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "This object is used to configure the interval at which next hops will be mointored for reachablity"
    DEFVAL  { 60 }
    ::= { fsMIBgpContextEntry 14 }

fsMIBgp4IBGPRedistributionStatus       OBJECT-TYPE
    SYNTAX                  INTEGER
                            {
                                enable (1),
                                disable (2)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "If this object is set to enable, IBGP routes will also be redistributed to other
    IGP protocols when redistribution is enabled for that protocol"
    DEFVAL  { disable }
    ::= { fsMIBgpContextEntry 15 }
                                           
fsMIBgp4RRDAdminStatus         OBJECT-TYPE
       SYNTAX                   INTEGER {
                                    disable(0),
                                    enable(1)
                                }
       MAX-ACCESS               read-write
       STATUS                   current
       DESCRIPTION
       "Controls redistribution of Direct, Static, IGP(OSPF,RIP) routes into
        BGP. If this object is set to enable, then routes from protocols as
        specified by fsMIBgp4RRDProtoMaskForEnable will be imported into BGP and
        the BGP learnt routes will be distributed to IGP. If this object is set
        as disable, then the routes learned from protocols specified by
        fsMIBgp4RRDProtoMaskForEnable will be removed from BGP and no route will
        be either distributed to or imported from IGP. This object can
        be set only if fsbgp4GlobalAdminStatus is up. When the global admin
        state changes the fsMIBgp4RRDAdminStatus also changes."
       DEFVAL { enable }
       ::= { fsMIBgpContextEntry 16 }

fsMIBgp4RRDProtoMaskForEnable       OBJECT-TYPE
       SYNTAX                       Integer32
                                    -- See the description
       MAX-ACCESS                   read-write
       STATUS                       current
       DESCRIPTION
       "The bit mask of source protocols from which routes are
       imported to BGP.(LSB corresponds to Bit 0)

            Bit 1, if set, indicates that direct routes can be
            redistributed into BGP. (value = 2)

            Bit 2, if set, indicates that static routes can be
            redistributed into BGP. (value = 4)

            Bit 7, if set, indicates that routes from RIP can be
            redistributed into  BGP. (value = 128)

            Bit 12, if set, indicates that OSPF routes can be
            redistributed into BGP. (value = 4096)

       Other bits are reserved for future use."
       ::= { fsMIBgpContextEntry 17 }

 fsMIBgp4RRDSrcProtoMaskForDisable      OBJECT-TYPE
       SYNTAX                       Integer32
                                        -- See the description
       MAX-ACCESS                       read-write
       STATUS                           current
       DESCRIPTION
       "The bit mask of source protocols from which redistribution
       to BGP is disabled.(LSB corresponds to Bit 0)

            Bit 1, if set, indicates that direct routes cannot be
            redistributed into BGP. (value = 2)

          Bit 2, if set, indicates that static routes cannot be
            redistributed into BGP. (value = 4)

            Bit 7, if set, indicates that routes from RIP cannot be
            redistributed into BGP. (value = 128)

            Bit 12, if set, indicates that OSPF routes cannot be
            redistributed into BGP. (value = 4096)

       Other bits are reserved for future use."
       ::= { fsMIBgpContextEntry 18 }

fsMIBgp4RRDDefaultMetric  OBJECT-TYPE
        SYNTAX      Unsigned32 ( 0 .. 2147483647 )
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
        "The default metric value for the IGP routes and static route. If
        configured to 0, the metric received from the IGP route will be used.
        If configured to other value, the MED value of the redistributed routes
        take this value. This value have no effect on the Direct routes."
        DEFVAL   { 0 }
       ::= { fsMIBgpContextEntry 19 }

fsMIBgp4RRDRouteMapName              OBJECT-TYPE
        SYNTAX             DisplayString (SIZE (0..20))
        MAX-ACCESS         read-write
        STATUS             current
        DESCRIPTION        "Name  Identifies the  specified route-map
                            in the list of route-maps. If this Object needs to be
                            changed, first reset this object and then configure the
                            new value."
        ::= { fsMIBgpContextEntry 20 }

 fsMIBgp4RRDMatchTypeEnable   OBJECT-TYPE
         SYNTAX                  INTEGER
                                 {
                                    external(1),
                                    internal(2),
                                    nssaExternal(4)
                                 }
         MAX-ACCESS              read-write
         STATUS                  current
         DESCRIPTION             "Match type Enable specifies the OSPF route type that
                                  needs to be redistributed into BGP, This object is
                                  used only ospf redistribution."
         ::= { fsMIBgpContextEntry 21 }

 fsMIBgp4RRDMatchTypeDisable   OBJECT-TYPE
         SYNTAX                   INTEGER
                                  {
                                     external(1),
                                     internal(2),
                                     nssaExternal(4)
                                  }
         MAX-ACCESS               read-write
         STATUS                   current
         DESCRIPTION              "Match type Disable specifies the OSPF route type
                                   that should be disbled from redistribution into BGP.
                                   This object is used only for OSPF protocol."

        ::= { fsMIBgpContextEntry 22 }

 fsMIBgp4AscConfedId OBJECT-TYPE
        SYNTAX Unsigned32 (0 .. 4294967295)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "The Local Confederation Identification number of
        the AS confederation, a value of zero indicates the
        absence of this value. The object fsbgp4LocalAs must be
        configured prior to configuring this object.
        If already set (to non-zero value), this value must be
        reset to zero (represets absence of confed) before
        reconfiguring confed id."
        DEFVAL {0}
        ::= { fsMIBgpContextEntry  23}

 fsMIBgp4AscConfedBestPathCompareMED OBJECT-TYPE
        SYNTAX INTEGER
        {
                set(1),
                clear(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object is used to  compare MED among paths learned
        from confed peers. if this object value is set and AS path
        contains only AS_CONFED segments then then MED should be
        compared if this object value is clear and sanitized path
        has different left-most entry in AS path then MED should not
        be compared"
        DEFVAL {clear}
        ::= { fsMIBgpContextEntry 24 }

 fsMIBgp4RflbgpClusterId    OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (4))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "The configured Cluster-ID of the local router. By default, when the BGP
     speaker acts as Route Reflector, the BGP Identifier is used as the
     cluster id. Administrator can overwrite the default cluster-id by
     configuring this object. This object can be configured only if
     fsMIBgp4LocalAS is configured."
    REFERENCE
    "RFC 2796 - BGP Route Reflection"
    ::= { fsMIBgpContextEntry 25  }

 fsMIBgp4RflRflSupport OBJECT-TYPE
    SYNTAX       INTEGER {
                          none (1),
                          clientsupport (2),
                          noClientSupport (3)
                        }
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
    "The desired support of the Route Reflector in the cluster.
     Note that none(1) value is for read-only.  This object can be set only if
     fsMIBgp4LocalAS is configured."
    DEFVAL       {2}
    ::= { fsMIBgpContextEntry 26 }
 
 fsMIBgp4RfdCutOff OBJECT-TYPE
    SYNTAX      Integer32 (2000..3999)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "The figure-of-merit value above which the route will be suppressed.
     This object can be set only if fsMIBgp4RfdAdminStatus is disabled
     is set to down and fsMIBgp4LocalAS is configured."
    DEFVAL      { 2000 }
    ::= {fsMIBgpContextEntry 27 }

fsMIBgp4RfdReuse  OBJECT-TYPE
    SYNTAX      Integer32 (100..1999)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "The figure-of-merit value below which the suppressed route will be reused.
     This object can be set only if fsMIBgp4RfdAdminStatus is disabled
     and fsMIBgp4LocalAS is configured."
    DEFVAL      { 750 }
    ::= {fsMIBgpContextEntry 28  }

fsMIBgp4RfdCeiling    OBJECT-TYPE
    SYNTAX          Integer32 (4000..10000)
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
    "The highest value the figure-of-merit can attain."
    DEFVAL          { 8000 }
    ::= {fsMIBgpContextEntry 29 }

fsMIBgp4RfdMaxHoldDownTime  OBJECT-TYPE
    SYNTAX                Integer32 (1800..10800)
    MAX-ACCESS            read-write
    STATUS                current
    DESCRIPTION
    "Maximum time (in seconds) a route can be suppressed.
     This object can be set only if fsMIBgp4RfdAdminStatus is disabled
     and fsMIBgp4LocalAS is configured."
    DEFVAL                { 3600 }
    ::= {fsMIBgpContextEntry 30 }

fsMIBgp4RfdDecayHalfLifeTime  OBJECT-TYPE
    SYNTAX                  Integer32 (600..2700)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "The time duration in seconds during which the figure-of-merit will be
     reduced by half. This object can be set only if fsMIBgp4RfdAdminStatus is
     disabled and fsMIBgp4LocalAS is configured."
    DEFVAL                  { 900 }
    ::= { fsMIBgpContextEntry 31 }

fsMIBgp4RfdDecayTimerGranularity  OBJECT-TYPE
    SYNTAX                      Integer32 (1..10800)
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "Time granularity in seconds used to perform all decay calculations.
     This object can be set only if fsMIBgp4RfdAdminStatus is disabled
     and fsMIBgp4LocalAS is configured."
    DEFVAL                      { 1 }
    ::= {fsMIBgpContextEntry 32 }

fsMIBgp4RfdReuseTimerGranularity  OBJECT-TYPE
    SYNTAX                      Integer32 (15..10800)
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "Time interval between evaluations of the reuse lists.
     This object can be set only if fsMIBgp4RfdAdminStatus is disabled
     and fsMIBgp4LocalAS is configured."
    DEFVAL                      { 15 }
    ::= {fsMIBgpContextEntry 33 }

fsMIBgp4RfdReuseIndxArraySize OBJECT-TYPE
    SYNTAX                  Integer32 (256..65535)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "Size of reuse index arrays.This object can be set only if
     fsMIBgp4GlobalAdminStatus is set to down and fsMIBgp4LocalAS is
     configured."
    DEFVAL                  { 1024 }
    ::= {fsMIBgpContextEntry 34 }

fsMIBgp4RfdAdminStatus        OBJECT-TYPE
    SYNTAX                  INTEGER {
                               enable (1),
                               disable (2)
    }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
        "The desired state of the RouteFlap Dampening feature of the BGP system.
    The AricentBGP4 speaker's route flap dampending is functionally active only
    when the RFD admin status is enabled. The RFD admin status can be enabled
    only if the fsMIBgp4GlobalAdminStatus is set to up. When
    fsMIBgp4GlobalAdminStatus is set to down, RFD admin status will also be
    disabled. On disabling RFD admin status, the route dampening history
    and peer dampening history will be cleared and the dampened routes will
    be advertised as feasible routes. By default after the
    fsMIBgp4GlobalAdminStatus is set to up, the RFD admin status will be made up."
    DEFVAL      { enable }
    ::= {fsMIBgpContextEntry 35 }

fsMIBgp4CommMaxInFTblEntries  OBJECT-TYPE
    SYNTAX              Integer32 (1..50000)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "Maximum Number of Entries in the Input Community Filter Table.
     This object can not be set to a higher value than the initial value of the
     object.However initial value can be changed in inc/system.size file"
    DEFVAL              { 10000 }
    ::= {fsMIBgpContextEntry 36 }

fsMIBgp4CommMaxOutFTblEntries OBJECT-TYPE
    SYNTAX              Integer32 (1..50000)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "Maximum number of entries in the outgoing community filter table.
     This object can not be set to a higher value than the initial value of the
     object.However initial value can be changed in inc/system.size file"
    DEFVAL              { 10000 }
    ::= {fsMIBgpContextEntry 37 }

fsMIBgp4ExtCommMaxInFTblEntries   OBJECT-TYPE
    SYNTAX                  Integer32 (1..10000)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "Maximum Number of Entries in the Input Extended Community Filter Table.
     This object can not be set to a higher value than the initial value of the
     object.However initial value can be changed in inc/system.size file"
    DEFVAL              { 2000 }
    ::= {fsMIBgpContextEntry 38 }

fsMIBgp4ExtCommMaxOutFTblEntries  OBJECT-TYPE
    SYNTAX                  Integer32 (1..10000)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "Maximum number of entries in the outgoing extended community filter table.
     This object can not be set to a higher value than the initial value of the
     object.However initial value can be changed in inc/system.size file"
    DEFVAL              { 2000 }
    ::= {fsMIBgpContextEntry 39 }

fsMIBgp4CapabilitySupportAvailable    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This variable determines whether the Capability Advertisement
    Support is enabled or not.This object can be set only if
    fsMIBgp4GlobalAdminStatus is set to down and fsMIBgp4LocalAS is configured."
    DEFVAL      { true }
    ::= {fsMIBgpContextEntry 40 }

fsMIBgp4MaxCapsPerPeer    OBJECT-TYPE
    SYNTAX              Integer32 (1..255)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "The maximum number of Capabilities that can be supported per peer
     or received from peer.
     This object can not be set to a higher value than the initial value of the
     object.However initial value can be changed in inc/system.size file"
    DEFVAL      { 10 }
    ::= { fsMIBgpContextEntry 41 }

fsMIBgp4MaxInstancesPerCap    OBJECT-TYPE
    SYNTAX              Integer32 (1..255)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "The maximum number of Instances of same Capability code can be advertised
     to peer or received from peer.
     This object can not be set to a higher value than the initial value of the
     object.However initial value can be changed in inc/system.size file"
    DEFVAL      { 5 }
    ::= { fsMIBgpContextEntry 42 }

fsMIBgp4MaxCapDataSize    OBJECT-TYPE
    SYNTAX          Integer32 (4..252)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "The maximum size of the Capability Data size of each Capability.
     To enable packing, the size should be multiples of 4.
     This object can not be set to a higher value than the initial value of the
     object.However initial value can be changed in inc/system.size file"
    DEFVAL      { 16 }
    ::= { fsMIBgpContextEntry 43 }

fsMIBgp4PreferenceValue OBJECT-TYPE
       SYNTAX Integer32 (0..255)
       MAX-ACCESS read-write
       STATUS current
       DESCRIPTION
           "Preference value for RIP routes. Use '0' to set default value"
       DEFVAL { 122 }
       ::= { fsMIBgpContextEntry 44 }
     
fsMIBgp4ContextStatus OBJECT-TYPE
       SYNTAX INTEGER
       {
         enable(1),
         disable(2)
       }
       MAX-ACCESS read-write
       STATUS current
       DESCRIPTION
       "this is used to enable or disable status of context"
       ::= { fsMIBgpContextEntry 45 }

fsMIBgp4IBGPMaxPaths  OBJECT-TYPE
    SYNTAX      Integer32 (1..64)
    MAX-ACCESS  read-write
    STATUS      current 
    DESCRIPTION
    "Maximum number of internal BGP multipath routes to be added per destination network in Routing table.
    When this object takes the value 1, then only best route is added to Forwarding table.
    This configuration will have effect only after hard/soft reset."
    DEFVAL      { 1 }
    ::= { fsMIBgpContextEntry 46 }

fsMIBgp4EBGPMaxPaths    OBJECT-TYPE
    SYNTAX      Integer32 (1..64)
    MAX-ACCESS  read-write
    STATUS      current 
    DESCRIPTION 
    "Maximum number of external BGP multipath routes to be added per destination network in Routing table.
    When this object takes the value 1, then only best route is added to Forwarding table.
    This configuration will have effect only after hard/soft reset."
    DEFVAL      { 1 }
    ::= { fsMIBgpContextEntry 47 }

fsMIBgp4EIBGPMaxPaths   OBJECT-TYPE
    SYNTAX      Integer32 (1..64)
    MAX-ACCESS  read-write
    STATUS      current 
    DESCRIPTION 
    "Maximum number of external plus internal BGP multipath routes (with same AS PATH) to be
    added per destination network in Routing table.
    When this object takes the value 1, then only best route is added to Forwarding table.
    This configuration will have effect only after hard/soft reset."
    DEFVAL      { 1 }
    ::=  { fsMIBgpContextEntry 48 }

fsMIBgp4OperIBGPMaxPaths    OBJECT-TYPE
    SYNTAX      Integer32 (1..64)
    MAX-ACCESS  read-only
    STATUS      current 
    DESCRIPTION 
    "Operational value for Maximum number of internal BGP multipath routes to be added per 
    destination network in Routing table.
    When this object takes the value 1, then only best route is added to Forwarding table."
    DEFVAL      { 1 }
    ::= { fsMIBgpContextEntry 49}

fsMIBgp4OperEBGPMaxPaths   OBJECT-TYPE
    SYNTAX      Integer32 (1..64)
    MAX-ACCESS  read-only
    STATUS      current 
    DESCRIPTION 
    "Operational value for Maximum number of external BGP multipath routes that to be added 
    per destination network  in Routing table.
    When this object takes the value 1, then only best route is added to Forwarding table."
    DEFVAL      { 1 }
    ::= { fsMIBgpContextEntry 50 }


fsMIBgp4OperEIBGPMaxPaths  OBJECT-TYPE
    SYNTAX      Integer32 (1..64)
    MAX-ACCESS  read-only
    STATUS      current 
    DESCRIPTION 
    "Operational value for Maximum number of  external plus internal BGP multipath routes
    (with same AS PATH) to be added in Routing table.
    When this object takes the value 1, then only best route is added to Forwarding table."
    DEFVAL      { 1 }
    ::= { fsMIBgpContextEntry 51 }

fsMIBgp4FourByteASNSupportStatus    OBJECT-TYPE
    SYNTAX      INTEGER {
                       enable (1),
                       disable (2)
                }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object is used to enable or disable 4 byte ASN support in BGP Speaker.
     This can be configured only if fsMIBgp4GlobalAdminStatus is down."
    DEFVAL      { enable }
    ::= {  fsMIBgpContextEntry 52 }

fsMIBgp4FourByteASNotationType    OBJECT-TYPE
    SYNTAX      INTEGER {
                       asplain (1),
                       asdot (2)
                }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object denotes the notation to be used to display the 4 byte ASN. This
     will change only the way the AS number is represented within router show
     commands in the Command Line Interface (CLI) framework. This object can be
     configured only if fsbgp4FourByteASNSupportStatus is enabled"
    DEFVAL      { asplain }
    ::= {  fsMIBgpContextEntry 53 }

fsMIBgp4LocalAsNo     OBJECT-TYPE
    SYNTAX      Unsigned32 (0..4294967295)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This is local autonomous system number specific to a Context."
    DEFVAL      { 0 }
    ::= { fsMIBgpContextEntry 54 }

fsMIBgp4RIBRoutes OBJECT-TYPE
       SYNTAX Counter32
       MAX-ACCESS read-only
       STATUS current
       DESCRIPTION
           "This is the total number of the routes present in the RIB of a context at the given instance."
       ::= { fsMIBgpContextEntry 55 }

fsMIBgp4Ipv4AddrFamily OBJECT-TYPE
       SYNTAX      INTEGER
                   {
                       enable  (1),
                       disable (2)
                   }
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
        "This Object is used to enable/disable the ipv4 address family capability for the BGP 
         virtual context. Enable/Disabling address family will not be immediately reflected on 
         the supported capabilities for the configured peers. It will be reflected only after 
         activating the neighbor's default capabilities"
       DEFVAL      { enable }
              ::= { fsMIBgpContextEntry 56 }
                 

fsMIBgp4Ipv6AddrFamily OBJECT-TYPE
       SYNTAX      INTEGER
                   {
                       enable   (1),
                       disable  (2)
                   }    
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
        "This Object is used to enable/disable the ipv6 address family capability for the BGP 
         virtual context. Enable/Disabling address family will not be immediately reflected on 
         the supported capabilities for the configured peers. It will be reflected only after 
         activating the neighbor's default capabilities"
       DEFVAL      { disable }
              ::= { fsMIBgpContextEntry 57 }
fsMIBgp4VpnLabelAllocPolicy    OBJECT-TYPE
       SYNTAX      INTEGER
                   {
                       pervrf (1),
                       perroute (2)
                   }
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
       "This object denotes the Label Allocation policy."
       DEFVAL      { pervrf }
       ::= {  fsMIBgpContextEntry 58 }
fsMIBgp4VPNV4AddrFamily OBJECT-TYPE
       SYNTAX      INTEGER
                   {
                       enable   (1),
                       disable  (2)
                   } 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This Object is used to enable/disable the VPNV4 address family capability for the BGP
    virtual context. Enable/Disabling address family will not be immediately reflected on
    the supported capabilities for the configured peers. It will be reflected only after
    activating the neighbor's default capabilities"
    DEFVAL      { disable }
            ::= { fsMIBgpContextEntry 59 }

fsMIBgp4L2vpnAddrFamily OBJECT-TYPE
       SYNTAX      INTEGER
                   {
                       enable   (1),
                       disable  (2)
                   }    
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
        "This Object is used to enable/disable the L2vpn address family capability for the BGP 
         virtual context. Enable/Disabling address family will not be immediately reflected on 
         the supported capabilities for the configured peers. It will be reflected only after 
         activating the neighbor's default capabilities"
       DEFVAL      { disable }
              ::= { fsMIBgpContextEntry 60 }
fsMIBgp4EvpnAddrFamily OBJECT-TYPE
       SYNTAX      INTEGER
                   {
                       enable   (1),
                       disable  (2)
                   }
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
        "This Object is used to enable/disable the Evpn address family capability for the BGP
         virtual context. Enable/Disabling address family will not be immediately reflected on
         the supported capabilities for the configured peers. It will be reflected only after
         activating the neighbor's default capabilities"
       DEFVAL      { disable }
              ::= { fsMIBgpContextEntry 61 }

-- End of Context Table

-- RRDMetric Table

    fsMIBgp4RRDMetricTable OBJECT-TYPE
        SYNTAX SEQUENCE OF FsMIBgp4RRDMetricEntry
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "A table describing the configuration of metric values to
             the redistributed routes."
    ::= { fsMIBgp 15 }

    fsMIBgp4RRDMetricEntry OBJECT-TYPE
        SYNTAX FsMIBgp4RRDMetricEntry
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "Information describing the configuration of single entry."
        INDEX {fsMIBgp4ContextId, 
               fsMIBgp4RRDMetricProtocolId}
    ::=  { fsMIBgp4RRDMetricTable 1 }

    FsMIBgp4RRDMetricEntry ::= SEQUENCE {
        fsMIBgp4RRDMetricProtocolId                  INTEGER,
        fsMIBgp4RRDMetricValue                       Integer32
    }

    fsMIBgp4RRDMetricProtocolId    OBJECT-TYPE
        SYNTAX              INTEGER
                            {
                              ospf(1),
                              rip(2),
                              connected(3),
                              static(4)
                             }
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "Protocol Id for which the Metric value needs to be changed by the User."
    ::=  { fsMIBgp4RRDMetricEntry 1 }

    fsMIBgp4RRDMetricValue OBJECT-TYPE
        SYNTAX              Integer32
        MAX-ACCESS          read-write
        STATUS              current
        DESCRIPTION
            "The Metric value to be considered instead of the default value from RTM
             for the protocol specified. If the value not secified by the user,
             default metric value is considered."
    ::=  { fsMIBgp4RRDMetricEntry 2 }

-- End of RRDMetric Table


-- Incoming Filter Table
-- Represents the incoming filter status (can be either accept/deny)
-- for a given community value

fsMIBgpComm   OBJECT IDENTIFIER ::= { fsMIBgp 16 }

fsMIBgp4CommInFilterTable  OBJECT-TYPE
    SYNTAX              SEQUENCE OF FsMIBgp4CommInFilterEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
    "This table is used to configure the incoming filter status
    for a given community value"
    ::= {fsMIBgpComm 1 }

fsMIBgp4CommInFilterEntry  OBJECT-TYPE
    SYNTAX      FsMIBgp4CommInFilterEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "Incoming Communities Filter Table Entry"
    INDEX  {    fsMIBgp4ContextId,
 		fsMIBgp4InFilterCommVal
          }
    ::= { fsMIBgp4CommInFilterTable 1 }

FsMIBgp4CommInFilterEntry ::= SEQUENCE {
    fsMIBgp4InFilterCommVal
         Unsigned32,
    fsMIBgp4CommIncomingFilterStatus
       INTEGER,
    fsMIBgp4InFilterRowStatus
         RowStatus
    }

fsMIBgp4InFilterCommVal   OBJECT-TYPE
    SYNTAX              Unsigned32 (65536..4294901759|4294967041..4294967043)
    MAX-ACCESS           not-accessible
    STATUS               current
    DESCRIPTION
    "The community value for which the input filtering
    policy is to be updated"
    ::= { fsMIBgp4CommInFilterEntry 1 }

fsMIBgp4CommIncomingFilterStatus  OBJECT-TYPE
    SYNTAX                      INTEGER {
                                           none   (1),
                                           accept (2),
                                           deny   (3)
                                        }
    MAX-ACCESS                  read-create
    STATUS                      current
    DESCRIPTION
    "Incoming filtering policy for the community.
       o none   - is for read-only
       o accept - Accept the community value.
       o deny   - Deny the community value."
    DEFVAL              { 2 }
    ::= { fsMIBgp4CommInFilterEntry 2 }

fsMIBgp4InFilterRowStatus OBJECT-TYPE
    SYNTAX                  RowStatus
    MAX-ACCESS              read-create
    STATUS                  current
    DESCRIPTION
    "Row status for creating entries into this table.This object can be set
     only if fsMIBgp4LocalAs is configured."
    ::= { fsMIBgp4CommInFilterEntry 3 }

--- Outgoing Filter Table
--- Represents the outgoing filter status (can be either adevertise/filter)
--- for a given community value

fsMIBgp4CommOutFilterTable OBJECT-TYPE
    SYNTAX              SEQUENCE OF FsMIBgp4CommOutFilterEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
    "This table is used to configure the outgoing filter status
    for a given community value"
    ::= {fsMIBgpComm 2 }

fsMIBgp4CommOutFilterEntry OBJECT-TYPE
    SYNTAX              FsMIBgp4CommOutFilterEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
    "Outgoing Communities Filter Table Entry"
    INDEX  {    fsMIBgp4ContextId,
		fsMIBgp4OutFilterCommVal
          }
    ::= { fsMIBgp4CommOutFilterTable 1 }

FsMIBgp4CommOutFilterEntry ::= SEQUENCE {
    fsMIBgp4OutFilterCommVal
         Unsigned32,
    fsMIBgp4CommOutgoingFilterStatus
       INTEGER,
    fsMIBgp4OutFilterRowStatus
         RowStatus
    }

fsMIBgp4OutFilterCommVal  OBJECT-TYPE
    SYNTAX              Unsigned32  (65536..4294901759|4294967041..4294967043)
    MAX-ACCESS           not-accessible
    STATUS               current
    DESCRIPTION
    "The community value for which the outgoing filtering
     policy is to be updated"
    ::= { fsMIBgp4CommOutFilterEntry 1 }

fsMIBgp4CommOutgoingFilterStatus  OBJECT-TYPE
    SYNTAX                      INTEGER {
                                            none (1),
                                            advertise (2),
                                            filter (3)
                                        }
    MAX-ACCESS                  read-create
    STATUS                      current
    DESCRIPTION
    "Outgoing filtering policy for the community.
       o none       - is for read-only
       o advertise - Advertise the community value.
       o filter    - Filter the community value."
    DEFVAL                      { 2 }
    ::= { fsMIBgp4CommOutFilterEntry 2 }

fsMIBgp4OutFilterRowStatus OBJECT-TYPE
    SYNTAX                  RowStatus
    MAX-ACCESS               read-create
    STATUS                  current
    DESCRIPTION
    "Row status for creating entries into this table.This object can be set
     only if fsMIBgp4LocalAs is configured."
    ::= { fsMIBgp4CommOutFilterEntry 3 }


--- Incoming Extended Community Filter Table
--- Represents the incoming filter status (can be either accept/deny)
--- for a given extended community value

fsMIBgpExtComm   OBJECT IDENTIFIER ::= { fsMIBgp 17 }


fsMIBgp4ExtCommInFilterTable  OBJECT-TYPE
    SYNTAX              SEQUENCE OF FsMIBgp4ExtCommInFilterEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
    "This table is used to configure the incoming filter status
     for a given extended community value"
    ::= {fsMIBgpExtComm 1}

fsMIBgp4ExtCommInFilterEntry  OBJECT-TYPE
    SYNTAX      FsMIBgp4ExtCommInFilterEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "Incoming Extended Communities Filter Table Entry"
    INDEX  {    fsMIBgp4ContextId, 
		fsMIBgp4ExtCommInFilterCommVal
           }
    ::= { fsMIBgp4ExtCommInFilterTable 1 }

FsMIBgp4ExtCommInFilterEntry ::= SEQUENCE {
    fsMIBgp4ExtCommInFilterCommVal
        OCTET STRING,
    fsMIBgp4ExtCommIncomingFilterStatus
      INTEGER,
    fsMIBgp4ExtCommInFilterRowStatus
        RowStatus
    }

fsMIBgp4ExtCommInFilterCommVal    OBJECT-TYPE
    SYNTAX          OCTET STRING  (SIZE(8))
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
    "The extended community value for which the input filtering
     policy is to be updated"
    ::= { fsMIBgp4ExtCommInFilterEntry 1 }

fsMIBgp4ExtCommIncomingFilterStatus   OBJECT-TYPE
    SYNTAX                          INTEGER {
                                        none   (1),
                                        accept (2),
                                        deny   (3)
                                    }
    MAX-ACCESS                      read-create
    STATUS                          current
    DESCRIPTION
    "Incoming filtering policy for the extended community.
       o none     - is for read-only
       o accept - Accept the extended community value.
       o deny   - Deny the extended community value."
    DEFVAL              { 2 }
    ::= { fsMIBgp4ExtCommInFilterEntry 2 }

fsMIBgp4ExtCommInFilterRowStatus  OBJECT-TYPE
    SYNTAX                 RowStatus
    MAX-ACCESS              read-create
    STATUS                 current
    DESCRIPTION
    "Row Status for creating the entries into this table.This object can be set
     only if fsMIBgp4LocalAs is configured."
    ::= { fsMIBgp4ExtCommInFilterEntry 3 }

--- Outgoing Extended Community Filter Table
--- Represents the outgoing filter status (can be either adevertise/filter)
--- for a given extended community value

fsMIBgp4ExtCommOutFilterTable OBJECT-TYPE
    SYNTAX              SEQUENCE OF FsMIBgp4ExtCommOutFilterEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
    "This table is used to configure the outgoing filter status
     for a given extended community value"
    ::= {fsMIBgpExtComm 2}

fsMIBgp4ExtCommOutFilterEntry OBJECT-TYPE
    SYNTAX              FsMIBgp4ExtCommOutFilterEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
    "Outgoing Extended Communities Filter Table Entry"
    INDEX  {    fsMIBgp4ContextId,
		fsMIBgp4ExtCommOutFilterCommVal
           }
    ::= { fsMIBgp4ExtCommOutFilterTable 1 }

FsMIBgp4ExtCommOutFilterEntry ::= SEQUENCE {
    fsMIBgp4ExtCommOutFilterCommVal
        OCTET STRING,
    fsMIBgp4ExtCommOutgoingFilterStatus
        INTEGER,
    fsMIBgp4ExtCommOutFilterRowStatus
         RowStatus
    }

fsMIBgp4ExtCommOutFilterCommVal   OBJECT-TYPE
    SYNTAX                  OCTET STRING  (SIZE(8))
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "The extended community value for which the outgoing filtering
     policy is to be updated"
    ::= { fsMIBgp4ExtCommOutFilterEntry 1 }

fsMIBgp4ExtCommOutgoingFilterStatus   OBJECT-TYPE
    SYNTAX                          INTEGER {
                                        none        (1),
                                        advertise   (2),
                                        noadvertise (3)
                                    }
    MAX-ACCESS                      read-create
    STATUS                          current
    DESCRIPTION
    "Outgoing filtering policy for the extended community.
       o none     - is for read-only
       o advertise - Advertise the extended community value.
       o filter    - Filter the extended community value."
    ::= { fsMIBgp4ExtCommOutFilterEntry 2 }

fsMIBgp4ExtCommOutFilterRowStatus OBJECT-TYPE
    SYNTAX                  RowStatus
    MAX-ACCESS               read-create
    STATUS                  current
    DESCRIPTION
    "Row Status to create entries into this table.This object can be set
     only if fsMIBgp4LocalAs is configured."
    ::= { fsMIBgp4ExtCommOutFilterEntry 3 }


fsMIBgp4TCPMD5Auth   OBJECT IDENTIFIER ::= { fsMIBgp 18 }

-- TCP MD5 Authentication Table

    fsMIBgp4TCPMD5AuthTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF FsMIBgp4TCPMD5AuthEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "TCP MD5 Authientication Table"
        ::= { fsMIBgp4TCPMD5Auth 1 }

    fsMIBgp4TCPMD5AuthEntry OBJECT-TYPE
        SYNTAX     FsMIBgp4TCPMD5AuthEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Entry corresponds to the TCP MD5 authentication password."
        INDEX { fsMIBgp4ContextId,
                fsMIBgp4TCPMD5AuthPeerType,
                fsMIBgp4TCPMD5AuthPeerAddr
              }
        ::= { fsMIBgp4TCPMD5AuthTable 1 }

     FsMIBgp4TCPMD5AuthEntry ::= SEQUENCE {
        fsMIBgp4TCPMD5AuthPeerType
            InetAddressType,
        fsMIBgp4TCPMD5AuthPeerAddr
           OCTET STRING,
        fsMIBgp4TCPMD5AuthPassword
           OCTET STRING,
        fsMIBgp4TCPMD5AuthPwdSet
           INTEGER
        }


     fsMIBgp4TCPMD5AuthPeerType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Address Family Identifier of the peer remote address."
        ::= { fsMIBgp4TCPMD5AuthEntry 1 }


    fsMIBgp4TCPMD5AuthPeerAddr OBJECT-TYPE
        SYNTAX    OCTET STRING (SIZE (1 .. 16))
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The IP address of the peer for which the TCP MD5 Authentication
        Password has to be set.
        to be read."
        ::= { fsMIBgp4TCPMD5AuthEntry 2 }

    fsMIBgp4TCPMD5AuthPassword OBJECT-TYPE
        SYNTAX     OCTET STRING (SIZE (1..80))
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
        " The TCP MD5 Authentication Password that has to be sent with all TCP
        packets originated from the peer."
        ::= { fsMIBgp4TCPMD5AuthEntry 3 }

    fsMIBgp4TCPMD5AuthPwdSet OBJECT-TYPE
        SYNTAX      INTEGER
                    {
                      set (1),
                      clear (2)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
        " This object indicates whether TCP MD5 password needs to be set/reset
          for the peer. This object needs to be set before the object
          fsMIBgp4TCPMD5AuthPassword can be set."
        DEFVAL  { clear }
        ::= { fsMIBgp4TCPMD5AuthEntry 4 }

-- End of TCP MD5 Auth Table

-- AsConfed Table

fsMIBgpAsc   OBJECT IDENTIFIER ::= { fsMIBgp 19 }

    fsMIBgpAscConfedPeerTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF FsMIBgpAscConfedPeerEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "BGP peer confederation table, this table contains information
        about the Member-ASs of the confederation"
        ::= { fsMIBgpAsc 1 }

    fsMIBgpAscConfedPeerEntry OBJECT-TYPE
        SYNTAX     FsMIBgpAscConfedPeerEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Entry containing information about a member-AS of the confederation."
        INDEX {     fsMIBgp4ContextId, 
                    fsMIBgpAscConfedPeerASNo
              }
        ::= { fsMIBgpAscConfedPeerTable 1 }

    FsMIBgpAscConfedPeerEntry ::= SEQUENCE {
        fsMIBgpAscConfedPeerASNo
            Unsigned32,
        fsMIBgpAscConfedPeerStatus
            INTEGER
        }

    fsMIBgpAscConfedPeerASNo OBJECT-TYPE
        SYNTAX     Unsigned32 (1 .. 4294967295 )
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The local AS number of member-AS,
        a value of zero indicates the absence of this value "
        ::= { fsMIBgpAscConfedPeerEntry 1 }

    fsMIBgpAscConfedPeerStatus OBJECT-TYPE
        SYNTAX     INTEGER
        {
            enable(1),
            disable(2)
        }
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
        "This object is used to  enable or disable the member-AS.
        Use disable, if member-AS entry needs to disabled,
        Use enable, if member-AS entry needs to be enabled."
        ::= { fsMIBgpAscConfedPeerEntry 2 }

-- End of ASConfed Table

-- Extensions to the fsMIBgp4 mib
-- Peer Table

fsMIBgp4MpeBgpPeerTable        OBJECT-TYPE
    SYNTAX          SEQUENCE OF FsMIBgp4MpeBgpPeerEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "BGP peer table.  This table contains, one entry per BGP peer,
        information about the connections with BGP peers."
    ::= { fsMIBgp 20 }

fsMIBgp4MpeBgpPeerEntry    OBJECT-TYPE
    SYNTAX     FsMIBgp4MpeBgpPeerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Entry containing information about the connection with a BGP peer."
    INDEX {
            fsMIBgp4ContextId,
            fsMIBgp4mpebgpPeerRemoteAddrType,
            fsMIBgp4mpebgpPeerRemoteAddr
          }
    ::= { fsMIBgp4MpeBgpPeerTable 1 }

FsMIBgp4MpeBgpPeerEntry ::= SEQUENCE {
    fsMIBgp4mpebgpPeerIdentifier
        InetAddress,
    fsMIBgp4mpebgpPeerRemoteAddrType
        InetAddressType,
    fsMIBgp4mpebgpPeerLocalAs 
           Unsigned32,
    fsMIBgp4mpebgpPeerState
           INTEGER,
    fsMIBgp4mpebgpPeerAdminStatus
           INTEGER,
    fsMIBgp4mpebgpPeerNegotiatedVersion
           Integer32,
    fsMIBgp4mpebgpPeerLocalAddr
           InetAddress,
    fsMIBgp4mpebgpPeerLocalPort
           Integer32,
    fsMIBgp4mpebgpPeerRemoteAddr
           InetAddress,
    fsMIBgp4mpebgpPeerRemotePort
           Integer32,
    fsMIBgp4mpebgpPeerRemoteAs
           Unsigned32,
    fsMIBgp4mpebgpPeerInUpdates
           Counter32,
    fsMIBgp4mpebgpPeerOutUpdates
           Counter32,
    fsMIBgp4mpebgpPeerInTotalMessages
           Counter32,
    fsMIBgp4mpebgpPeerOutTotalMessages
           Counter32,
    fsMIBgp4mpebgpPeerLastError
           OCTET STRING,
    fsMIBgp4mpebgpPeerFsmEstablishedTransitions
           Counter32,
    fsMIBgp4mpebgpPeerFsmEstablishedTime
           Gauge32,
    fsMIBgp4mpebgpPeerConnectRetryInterval
           Integer32,
    fsMIBgp4mpebgpPeerHoldTime
           Integer32,
    fsMIBgp4mpebgpPeerKeepAlive
           Integer32,
    fsMIBgp4mpebgpPeerHoldTimeConfigured
           Integer32,
    fsMIBgp4mpebgpPeerKeepAliveConfigured
           Integer32,
    fsMIBgp4mpebgpPeerMinASOriginationInterval
           Integer32,
    fsMIBgp4mpebgpPeerMinRouteAdvertisementInterval
           Integer32,
    fsMIBgp4mpebgpPeerInUpdateElapsedTime
           Gauge32,
    fsMIBgp4mpebgpPeerEndOfRIBMarkerSentStatus
       INTEGER,
    fsMIBgp4mpebgpPeerEndOfRIBMarkerReceivedStatus
       INTEGER,
    fsMIBgp4mpebgpPeerRestartMode
       INTEGER,
    fsMIBgp4mpePeerRestartTimeInterval
           Integer32,
    fsMIBgp4mpePeerAllowAutomaticStart
           INTEGER,
    fsMIBgp4mpePeerAllowAutomaticStop
           INTEGER,
    fsMIBgp4mpebgpPeerIdleHoldTimeConfigured
           Integer32,
    fsMIBgp4mpeDampPeerOscillations
           INTEGER,
    fsMIBgp4mpePeerDelayOpen
           INTEGER,
    fsMIBgp4mpebgpPeerDelayOpenTimeConfigured
           Integer32,
    fsMIBgp4mpePeerPrefixUpperLimit
           Integer32,
    fsMIBgp4mpePeerTcpConnectRetryCnt
           Integer32,
    fsMIBgp4mpePeerTcpCurrentConnectRetryCnt
           Integer32,
    fsMIBgp4mpeIsPeerDamped
           INTEGER,
    fsMIBgp4mpePeerSessionAuthStatus
           INTEGER,
    fsMIBgp4mpePeerTCPAOKeyIdInUse
           Integer32,
    fsMIBgp4mpePeerTCPAOAuthNoMKTDiscard
           INTEGER,
    fsMIBgp4mpePeerTCPAOAuthICMPAccept
           INTEGER,
    fsMIBgp4mpePeerIpPrefixNameIn
           DisplayString,
    fsMIBgp4mpePeerIpPrefixNameOut
           DisplayString,
    fsMIBgp4mpePeerBfdStatus
           INTEGER,
    fsMIBgp4mpePeerHoldAdvtRoutes
           INTEGER
    }


fsMIBgp4mpebgpPeerIdentifier   OBJECT-TYPE
    SYNTAX          InetAddress
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The BGP Identifier of this entry's BGP peer."
    ::= { fsMIBgp4MpeBgpPeerEntry 1 }

fsMIBgp4mpebgpPeerRemoteAddrType OBJECT-TYPE
    SYNTAX          InetAddressType
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Type of the remote peer"
    ::= { fsMIBgp4MpeBgpPeerEntry 2 }

fsMIBgp4mpebgpPeerLocalAs OBJECT-TYPE
    SYNTAX          Unsigned32 (0..4294967295)
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
	"It is used to configure as Local As per peer "
    ::= { fsMIBgp4MpeBgpPeerEntry 3 }

fsMIBgp4mpebgpPeerState    OBJECT-TYPE
    SYNTAX      INTEGER {
                    idle(1),
                    connect(2),
                    active(3),
                    opensent(4),
                    openconfirm(5),
                    established(6)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The BGP peer connection state."
    ::= { fsMIBgp4MpeBgpPeerEntry 4 }

fsMIBgp4mpebgpPeerAdminStatus  OBJECT-TYPE
    SYNTAX          INTEGER {
                        stop(1),
                        start(2),
                        autostart(3)
                    }
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
        "The desired state of the BGP connection.  A transition from
        'stop' to 'start' will cause the BGP Start Event to be generated.
        A transition from 'start' to 'stop' will cause the BGP Stop
        Event to be generated.  This parameter can be used to restart BGP
        peer connections. Whenever the 'fsMIBgp4mpePeerAllowAutomaticStart' is
        enabled, 'fsMIBgp4mpebgpPeerAdminStatus' will take the value 'auto-start'.
        The peer waits till the IdleHold Timer expires, and then it will
        proceed to generate the BGP Start Event. 'fsMIBgp4mpebgpPeerAdminStatus'
        takes the value 'stop' under two circumstances:
        1) Whenever the administrator manually triggers BGP Stop Event.
        2) Whenever the 'fsMIBgp4mpePeerAllowAutomaticStop' is enabled and also if
        the IdleHold Timer exceeds its Maximum Threshold value, then BGP Stop
        Event is issued automatically, without the manual intervention of the
        administrator.
        Care should be used in providing write access
        to this object without adequate authentication."
    ::= { fsMIBgp4MpeBgpPeerEntry 5 }

fsMIBgp4mpebgpPeerNegotiatedVersion    OBJECT-TYPE
    SYNTAX                  Integer32
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "The negotiated version of BGP running between the two peers."
    ::= { fsMIBgp4MpeBgpPeerEntry 6 }

fsMIBgp4mpebgpPeerLocalAddr    OBJECT-TYPE
    SYNTAX          InetAddress
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The local IP address of this entry's BGP connection."
    ::= { fsMIBgp4MpeBgpPeerEntry 7 }

fsMIBgp4mpebgpPeerLocalPort    OBJECT-TYPE
    SYNTAX          Integer32 (0..65535)
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The local port for the TCP connection between the BGP peers."
    ::= { fsMIBgp4MpeBgpPeerEntry 8 }

fsMIBgp4mpebgpPeerRemoteAddr   OBJECT-TYPE
    SYNTAX          InetAddress
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "The remote IP address of this entry's BGP peer."
    ::= { fsMIBgp4MpeBgpPeerEntry 9 }

fsMIBgp4mpebgpPeerRemotePort   OBJECT-TYPE
    SYNTAX          Integer32 (0..65535)
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The remote port for the TCP connection between the BGP peers.
        Note that the objects bgpPeerLocalAddr, bgpPeerLocalPort,
        bgpPeerRemoteAddr and bgpPeerRemotePort provide the appropriate
        reference to the standard MIB TCP connection table."
    ::= { fsMIBgp4MpeBgpPeerEntry 10 }

fsMIBgp4mpebgpPeerRemoteAs OBJECT-TYPE
    SYNTAX      Unsigned32 (0..4294967295)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The remote autonomous system number."
    ::= { fsMIBgp4MpeBgpPeerEntry 11 }

fsMIBgp4mpebgpPeerInUpdates    OBJECT-TYPE
    SYNTAX          Counter32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The number of BGP UPDATE messages received on this connection.
        This object should be initialized to zero (0) when the connection
        is established."
    ::= { fsMIBgp4MpeBgpPeerEntry 12 }

fsMIBgp4mpebgpPeerOutUpdates   OBJECT-TYPE
    SYNTAX          Counter32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The number of BGP UPDATE messages transmitted on this connection.
        This object should be initialized to zero (0) when the connection
        is established."
    ::= { fsMIBgp4MpeBgpPeerEntry 13 }

fsMIBgp4mpebgpPeerInTotalMessages  OBJECT-TYPE
    SYNTAX              Counter32
    MAX-ACCESS          read-only
    STATUS              current
    DESCRIPTION
        "The total number of messages received from the remote peer on this
        connection.  This object should be initialized to zero when the
        connection is established."
    ::= { fsMIBgp4MpeBgpPeerEntry 14 }
fsMIBgp4mpebgpPeerOutTotalMessages OBJECT-TYPE
    SYNTAX              Counter32
    MAX-ACCESS          read-only
    STATUS              current
    DESCRIPTION
        "The total number of messages transmitted to the remote peer on
         this connection.  This object should be initialized to zero when
        the connection is established."
    ::= { fsMIBgp4MpeBgpPeerEntry 15 }

fsMIBgp4mpebgpPeerLastError    OBJECT-TYPE
    SYNTAX          OCTET STRING (SIZE (2))
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The last error code and subcode seen by this peer on this connection.
        If no error has occurred, this field is zero.  Otherwise, the first
        byte of this two byte OCTET STRING contains the error code, and the
        second byte contains the subcode."
    ::= { fsMIBgp4MpeBgpPeerEntry 16 }

fsMIBgp4mpebgpPeerFsmEstablishedTransitions    OBJECT-TYPE
    SYNTAX                          Counter32
    MAX-ACCESS                      read-only
    STATUS                          current
    DESCRIPTION
        "The total number of times the BGP FSM transitioned into the
        established state."
    ::= { fsMIBgp4MpeBgpPeerEntry 17 }

fsMIBgp4mpebgpPeerFsmEstablishedTime   OBJECT-TYPE
    SYNTAX                  Gauge32
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "This timer indicates how long (in seconds) this peer has been in the
         Established state or how long since this peer was last in the
         Established state.  It is set to zero when a new peer is configured
         or the router is booted."
    ::= { fsMIBgp4MpeBgpPeerEntry 18 }

fsMIBgp4mpebgpPeerConnectRetryInterval OBJECT-TYPE
    SYNTAX                  Integer32 (1..65535)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
        "Time interval in seconds for the ConnectRetry timer.  The suggested
        value for this timer is 120 seconds."
    ::= { fsMIBgp4MpeBgpPeerEntry 19 }

fsMIBgp4mpebgpPeerHoldTime     OBJECT-TYPE
    SYNTAX          Integer32  ( 0 | 3..65535 )
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Time interval in seconds for the Hold Timer established with the
        peer.  The value of this object is calculated by this BGP speaker
        by using the smaller of the value in bgpPeerHoldTimeConfigured and
        the Hold Time received in the OPEN message.  This value must be at
        lease three seconds if it is not zero (0) in which case the Hold
        Timer has not been established with the peer, or, the value of
        bgpPeerHoldTimeConfigured is zero (0)."
    ::= { fsMIBgp4MpeBgpPeerEntry 20 }

fsMIBgp4mpebgpPeerKeepAlive    OBJECT-TYPE
    SYNTAX          Integer32 ( 0 | 1..21845 )
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Time interval in seconds for the KeepAlive timer established with
        the peer.  The value of this object is calculated by this BGP
        speaker such that, when compared with bgpPeerHoldTime, it has the
        same proportion as what bgpPeerKeepAliveConfigured has when compared
        with bgpPeerHoldTimeConfigured.  If the value of this object is
        zero (0), it indicates that the KeepAlive timer has not been
        established with the peer, or, the value of bgpPeerKeepAliveConfigured
        is zero (0)."
   ::= { fsMIBgp4MpeBgpPeerEntry 21 }

fsMIBgp4mpebgpPeerHoldTimeConfigured   OBJECT-TYPE
    SYNTAX                  Integer32 ( 0 | 3..65535 )
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
        "Time interval in seconds for the Hold Time configured for this
        BGP speaker with this peer.  This value is placed in an OPEN
        message sent to this peer by this BGP speaker, and is compared
        with the Hold Time field in an OPEN message received from the peer
        when determining the Hold Time (bgpPeerHoldTime) with the peer.
        This value must not be less than three seconds if it is not zero (0)
        in which case the Hold Time is NOT to be established with the peer.
        The suggested value for this timer is 90 seconds."
    ::= { fsMIBgp4MpeBgpPeerEntry 22 }

fsMIBgp4mpebgpPeerKeepAliveConfigured  OBJECT-TYPE
    SYNTAX                  Integer32 ( 0 | 1..21845 )
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
        "Time interval in seconds for the
         KeepAlive timer configured for this BGP
         speaker with this peer.  The value of this
         object will only determine the
         KEEPALIVE messages' frequency relative to
         the value specified in
         bgpPeerHoldTimeConfigured; the actual
         time interval for the KEEPALIVE messages
         is indicated by bgpPeerKeepAlive.  A
         reasonable maximum value for this timer
         would be configured to be one
         third of that of
         bgpPeerHoldTimeConfigured.
         If the value of this object is zero (0),
         now periodical KEEPALIVE messages are sent
         to the peer after the BGP connection has
         been established.  The suggested value for
         this timer is 30 seconds."
    ::= { fsMIBgp4MpeBgpPeerEntry 23 }

fsMIBgp4mpebgpPeerMinASOriginationInterval OBJECT-TYPE
    SYNTAX                      Integer32 (1..65535)
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
        "Time interval in seconds for the
         MinASOriginationInterval timer.
         The suggested value for this timer is 15
         seconds."
    ::= { fsMIBgp4MpeBgpPeerEntry 24 }

fsMIBgp4mpebgpPeerMinRouteAdvertisementInterval    OBJECT-TYPE
    SYNTAX                              Integer32 (1..65535)
    MAX-ACCESS                          read-write
    STATUS                              current
    DESCRIPTION
        "Time interval in seconds for the
         MinRouteAdvertisementInterval timer.
         The suggested value for this timer is 30
         seconds."
    ::= { fsMIBgp4MpeBgpPeerEntry 25 }

fsMIBgp4mpebgpPeerInUpdateElapsedTime  OBJECT-TYPE
    SYNTAX                  Gauge32
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "Elapsed time in seconds since the last BGP
         UPDATE message was received from the peer.
         Each time bgpPeerInUpdates is incremented,
         the value of this object is set to zero
         (0)."
    ::= { fsMIBgp4MpeBgpPeerEntry 26 }

fsMIBgp4mpebgpPeerEndOfRIBMarkerSentStatus  OBJECT-TYPE
    SYNTAX          INTEGER {
                           none(0), --  if GR capability is not enabled
                           true(1),-- End-Of-RIB marker not sent to peer
                           false(2) -- End-Of-RIB marker sent to peer
                    }
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
    "This object indicates that whether the End-Of-RIB marker sent to peer or not"
    ::= { fsMIBgp4MpeBgpPeerEntry 27 }

fsMIBgp4mpebgpPeerEndOfRIBMarkerReceivedStatus  OBJECT-TYPE
    SYNTAX          INTEGER {
                           none(0),-- If GR capability is not enabled
                           true(1),-- End-Of-RIB marker not received from peer
                           false(2) -- End-Of-RIB marker received from peer
                    }
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
    "This object indicates that whether the End-Of-RIB marker received from peer or not"
    ::= { fsMIBgp4MpeBgpPeerEntry 28 }

fsMIBgp4mpebgpPeerRestartMode  OBJECT-TYPE
    SYNTAX    INTEGER {
                    restarting (1),
                    receiving (2),
                none(3)
              }
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
    "This object indicates whether the peer BGP speaker is restarting speaker or receiving speaker or not having GR capability"
    ::= { fsMIBgp4MpeBgpPeerEntry 29 }

fsMIBgp4mpePeerRestartTimeInterval    OBJECT-TYPE
    SYNTAX  Integer32 (1..4096)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
    "This is the time (in seconds) received from peer through GR capability of open message. This is used in receiving speaker to make sure that the restarting speaker restarted within this interval"
    ::= { fsMIBgp4MpeBgpPeerEntry 30 }

fsMIBgp4mpePeerAllowAutomaticStart    OBJECT-TYPE
        SYNTAX          INTEGER {
                                enable(1),
                                disable(2)
                                }
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
        "This MIB object specifies whether BGP session with the associated peer
          can be started automatically. This object when set to 'disabled',
          requires manual start for initiating BGP session with the peer via
          MIB object 'fsMIBgp4mpebgpPeerAdminStatus'. When set to 'enabled',
          the peer session can be automatically started in the IDLE state,
          after a BGP Peer session is brought down either by Autostop or via
          reception of invalid BGP message. The BGP session will be automatically
          started after an interval specified by
          'fsMIBgp4mpebgpPeerIdleHoldTimeConfigured'. If
          fsMIBgp4mpeDampPeerOscillations is enabled, then automaticStart will not
          occur if peer is damped."

        DEFVAL { disable }
        ::= { fsMIBgp4MpeBgpPeerEntry 31 }

fsMIBgp4mpePeerAllowAutomaticStop      OBJECT-TYPE
        SYNTAX          INTEGER {
                                enable(1),
                                disable(2)
                                }
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
        " This MIB object specifies whether a BGP connection needs to be
        automatically stopped after a TCP connect-retry count value specified
        by MIB object 'fsMIBgp4mpePeerTcpConnectRetryCnt'. The resources
        allocated for the BGP peer are released and it continues to remain in
        IDLE state. After an automatic stop, the Peer connection needs to be
        re-intiated manually by the administrator. When AutomaticStop is
        disabled, the connect retry count value is set to 0."


        DEFVAL { disable }
        ::= {  fsMIBgp4MpeBgpPeerEntry 32 }

fsMIBgp4mpebgpPeerIdleHoldTimeConfigured   OBJECT-TYPE
        SYNTAX                  Integer32 ( 1..65535 )
        MAX-ACCESS              read-write
        STATUS                  current
        DESCRIPTION
        "IdleHoldTime specifies the length of time the BGP peer is held in the
        Idle state prior to allowing the next automatic restart.
        The IdleHoldTime is configured only when the
        fsMIBgp4mpePeerAllowAutomaticStart is Enabled or when the
        fsMIBgp4mpeDampPeerOscillations is Enabled. The configurable value
        differs based on the two options that are enabled.The Suggested default
        value is 60 secs for automatic start and after each dampening, the value
        of the IdleHoldTime is doubled consecutively."

        DEFVAL { 60 }
        ::= {  fsMIBgp4MpeBgpPeerEntry 33 }


fsMIBgp4mpeDampPeerOscillations    OBJECT-TYPE
        SYNTAX          INTEGER {
                                enable(1),
                                disable(2)
                                }
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
        "The DampPeerOscillations option specifies that the implementation
        engages additional logic to damp the oscillations of BGP peers in
        the face of series of automatic start and automatic stop operations
        in the IDLE state.The DampPeerOscillations option indicates that the
        BGP connection is using logic that damps BGP peer oscillations in
        states other than 'established' state."


        DEFVAL { disable }
        ::= {  fsMIBgp4MpeBgpPeerEntry 34 }

fsMIBgp4mpePeerDelayOpen          OBJECT-TYPE
        SYNTAX          INTEGER {
                                enable(1),
                                disable(2)
                                }
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
        "This MIB object allows configuration option to enable/disable delay
        in sending of OPEN messages to the BGP peer for a specific time period
        (DelayOpenTime). The delay allows the remote BGP Peer to send the first
        OPEN message."


        DEFVAL { disable }
        ::= {  fsMIBgp4MpeBgpPeerEntry 35 }

fsMIBgp4mpebgpPeerDelayOpenTimeConfigured  OBJECT-TYPE
        SYNTAX                  Integer32 ( 0..65535 )
        MAX-ACCESS              read-write
        STATUS                  current
        DESCRIPTION
        "The DelayOpen time specifies the amount of time the BGP Peer should
        delay in sending the OPEN message to the remote peer. If the
        fsMIBgp4mpePeerDelayOpen option is enabled, the DelayOpen time can bei
        configured. The default value is kept as 0 secs, which implies thati
        the BGP Peer can send an OPEN message without any delay to its
        neighbor."

        DEFVAL { 0 }
        ::= { fsMIBgp4MpeBgpPeerEntry 36 }

fsMIBgp4mpePeerPrefixUpperLimit     OBJECT-TYPE
        SYNTAX                  Integer32 (1..2147483647)
        MAX-ACCESS              read-write
        STATUS                  current
        DESCRIPTION
        "BGP speaker imposes a locally-configured, upper bound on the number of
        address prefixes the speaker is willing to accept from a neighbor. The
        default value is calculated as the following:

        fsMIBgp4MaxNoofRoutes / fsMIBgp4MaxPeerEntry

        Administrator can configure a value less than the default value at
        runtime. Prefixes exceeding the PrefixUpperLimit will not be processedi
        by the system."
        DEFVAL { 100 }
        ::= { fsMIBgp4MpeBgpPeerEntry 37 }

fsMIBgp4mpePeerTcpConnectRetryCnt  OBJECT-TYPE
        SYNTAX          Integer32 (1..50)
        MAX-ACCESS          read-write
        STATUS              current
        DESCRIPTION
        "This counter denotes the Maximum number of times the BGP Peer has
        tried to issue a TCP-Connect with its neighboring peers.
        The default value for the counter is set as 5."
        DEFVAL { 5 }
        ::= { fsMIBgp4MpeBgpPeerEntry 38 }


fsMIBgp4mpePeerTcpCurrentConnectRetryCnt  OBJECT-TYPE
        SYNTAX          Integer32 (1..50)
        MAX-ACCESS      read-only
        STATUS              current
        DESCRIPTION
        " This counter denotes the number of times the BGP Peer has tried to
        issue a TCP-Connect with its neighboring peers. It is an internal value.
        It increments for each Autostop event. If the
        'fsMIBgp4mpePeerTcpCurrentConnectRetryCnt' exceeds the
        'fsMIBgp4mpePeerTcpConnectRetryCnt'  value, PeerDampening is performed,
        provided the corresponding flag is enabled."
        ::= { fsMIBgp4MpeBgpPeerEntry 39 }

fsMIBgp4mpeIsPeerDamped       OBJECT-TYPE
        SYNTAX          INTEGER {
                                enable(1),
                                disable(2)
                                }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
        "This MIB object specifies the PeerDamped Status. If it is enabled, it
        denotes that the peer is in damped state. If it is disabled, it
        denotes that either the peer has recovered from the damped state or not
        entered into the Damped state. If enabled and if the IdleHold Timer
        Threshold value is exceeded, issue Manual Stop, reset the
        fsMIBgp4mpePeerTcpCurrentConnectRetryCnt value to zero and disable the
        fsMIBgp4mpePeerAllowAutomaticStart."

        DEFVAL { disable }
        ::= { fsMIBgp4MpeBgpPeerEntry 40 }

fsMIBgp4mpePeerSessionAuthStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                            nosession (1),
                            authenticatedMd5 (2),
                            unauthenticated (3),
                            authenticatedTcpAo (4)
                            }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
       "This object indicates whether peer-session is TCP MD5/TCP-AO
       authenticated or not. If no session is established yet, its value is
       no-session"
       ::= { fsMIBgp4MpeBgpPeerEntry 41 }


fsMIBgp4mpePeerTCPAOKeyIdInUse OBJECT-TYPE
       SYNTAX       Integer32 (0 .. 255)
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
       "Key id of the MKT which is used by the TCP session of the peer, 
        this field will be valid only when fsMIBgp4mpePeerSessionAuthStatus 
        has value authenticatedTcpAo"
       ::= { fsMIBgp4MpeBgpPeerEntry 42 }

fsMIBgp4mpePeerTCPAOAuthNoMKTDiscard OBJECT-TYPE
        SYNTAX      INTEGER
        {
            accept (1),
            discard (2)
        }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
        "Discard packet for the peer, if packets are received with TCP-AO
        and no matching MKT is found, default value is accept"
        DEFVAL { accept }
        ::=  { fsMIBgp4MpeBgpPeerEntry 43 }

fsMIBgp4mpePeerTCPAOAuthICMPAccept OBJECT-TYPE
        SYNTAX      INTEGER
         {
            accept (1),
            ignore (2)
        }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
        "Accept ICMPv4 type 3 & ICMPv6 type 1 messages for the TCP-AO 
        authenticated peer, default value is ignore"
        DEFVAL { ignore }
        ::=  { fsMIBgp4MpeBgpPeerEntry 44 }


fsMIBgp4mpePeerIpPrefixNameIn OBJECT-TYPE
    SYNTAX              DisplayString
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to configure the IP Prefix list name in IN direction for this peer entry."
    ::= { fsMIBgp4MpeBgpPeerEntry 45 }

fsMIBgp4mpePeerIpPrefixNameOut OBJECT-TYPE
    SYNTAX              DisplayString
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to configure the IP Prefix list name in OUT direction for this peer entry."
    ::= { fsMIBgp4MpeBgpPeerEntry 46 }

fsMIBgp4mpePeerBfdStatus OBJECT-TYPE
    SYNTAX              INTEGER {
                                    enable (1),
                                    disable (2)
                                }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to enable or disable BFD monitoring for the BGP IPv4/IPv6 neighbor path.
         When this is enabled for a BGP peer, BGP will register with BFD for IP path monitoring
         when the session state becomes ESTABLISHED. When this is disabled, BGP will de-register 
         with BFD if it was already registered. By default it is disabled."
    DEFVAL { disable }
    ::= { fsMIBgp4MpeBgpPeerEntry 47 }

fsMIBgp4mpePeerHoldAdvtRoutes OBJECT-TYPE
    SYNTAX              INTEGER {                                                                                                                                         enable (1),
                                    disable (2)
                                }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object enables/disables advertised routes holding status to the peer.
         When enabled , all the routes advertised to the peer are
         stored for retrieval. When disabled, routes advertised to the peer are
         not stored."

    DEFVAL { disable }
    ::= { fsMIBgp4MpeBgpPeerEntry 48 }



-- End of Peer Table

-- BGP4 Received Path Attribute Table.  This table
-- contains, one entry per path to a network, path
-- attributes received from all peers running BGP-4.

fsMIBgp4MpeBgp4PathAttrTable   OBJECT-TYPE
    SYNTAX          SEQUENCE OF FsMIBgp4MpeBgp4PathAttrEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "The BGP-4 Received Path Attribute Table
         contains information about paths to
         destination networks received from all
         BGP4 peers."
    ::= { fsMIBgp 21 }

fsMIBgp4MpeBgp4PathAttrEntry   OBJECT-TYPE
    SYNTAX          FsMIBgp4MpeBgp4PathAttrEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Information about a path to a network."
    INDEX { fsMIBgp4ContextId,
            fsMIBgp4mpebgp4PathAttrRouteAfi,
            fsMIBgp4mpebgp4PathAttrRouteSafi,
            fsMIBgp4mpebgp4PathAttrIpAddrPrefix,
            fsMIBgp4mpebgp4PathAttrIpAddrPrefixLen,
            fsMIBgp4mpebgp4PathAttrPeerType,
            fsMIBgp4mpebgp4PathAttrPeer
          }
    ::= { fsMIBgp4MpeBgp4PathAttrTable 1 }

FsMIBgp4MpeBgp4PathAttrEntry ::= SEQUENCE {
    fsMIBgp4mpebgp4PathAttrRouteAfi
        InetAddressType,
    fsMIBgp4mpebgp4PathAttrRouteSafi
        BgpSafi,
    fsMIBgp4mpebgp4PathAttrPeerType
        InetAddressType,
    fsMIBgp4mpebgp4PathAttrPeer
        InetAddress,
    fsMIBgp4mpebgp4PathAttrIpAddrPrefixLen
        Integer32,
    fsMIBgp4mpebgp4PathAttrIpAddrPrefix
        InetAddress,
    fsMIBgp4mpebgp4PathAttrOrigin
        INTEGER,
    fsMIBgp4mpebgp4PathAttrASPathSegment
        OCTET STRING,
    fsMIBgp4mpebgp4PathAttrNextHop
        InetAddress,
    fsMIBgp4mpebgp4PathAttrMultiExitDisc
        Integer32,
    fsMIBgp4mpebgp4PathAttrLocalPref
        Integer32,
    fsMIBgp4mpebgp4PathAttrAtomicAggregate
        INTEGER,
    fsMIBgp4mpebgp4PathAttrAggregatorAS
        Unsigned32,
    fsMIBgp4mpebgp4PathAttrAggregatorAddr
        IpAddress,
    fsMIBgp4mpebgp4PathAttrCalcLocalPref
        Integer32,
    fsMIBgp4mpebgp4PathAttrBest
        INTEGER,
    fsMIBgp4mpebgp4PathAttrCommunity
        OCTET STRING,
    fsMIBgp4mpebgp4PathAttrOriginatorId
        OCTET STRING,
    fsMIBgp4mpebgp4PathAttrClusterList
        OCTET STRING,
    fsMIBgp4mpebgp4PathAttrExtCommunity
        OCTET STRING,
    fsMIBgp4mpebgp4PathAttrUnknown
        OCTET STRING,
    fsMIBgp4mpebgp4PathAttrLabel
        OCTET STRING,
    fsMIBgp4mpebgp4PathAttrAS4PathSegment
        OCTET STRING,
    fsMIBgp4mpebgp4PathAttrAggregatorAS4
        Unsigned32
}

fsMIBgp4mpebgp4PathAttrRouteAfi OBJECT-TYPE
    SYNTAX          InetAddressType
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "The AFI of the prefix"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 1 }

fsMIBgp4mpebgp4PathAttrRouteSafi OBJECT-TYPE
    SYNTAX          BgpSafi
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "The SAFI of the prefix"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 2 }

fsMIBgp4mpebgp4PathAttrPeerType  OBJECT-TYPE
    SYNTAX          InetAddressType
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "The AFI of the peer"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 3 }

fsMIBgp4mpebgp4PathAttrPeer    OBJECT-TYPE
    SYNTAX          InetAddress
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "The IP address of the peer where the path
         information was learned."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 4 }

fsMIBgp4mpebgp4PathAttrIpAddrPrefixLen OBJECT-TYPE
    SYNTAX                  Integer32 (0..32)
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
        "Length in bits of the IP address prefix
         in the Network Layer Reachability
         Information field."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 5 }

fsMIBgp4mpebgp4PathAttrIpAddrPrefix    OBJECT-TYPE
    SYNTAX                  InetAddress
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
        "An IP address prefix in the Network Layer
         Reachability Information field.  This object
         is an IP address containing the prefix with
         length specified by
         bgp4PathAttrIpAddrPrefixLen.
         Any bits beyond the length specified by
         bgp4PathAttrIpAddrPrefixLen are zeroed."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 6 }

fsMIBgp4mpebgp4PathAttrOrigin  OBJECT-TYPE
    SYNTAX          INTEGER {
                        igp(1),-- networks are interior
                        egp(2),-- networks learned via EGP
                        incomplete(3) -- undetermined
                    }
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The ultimate origin of the path
         information."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 7 }

fsMIBgp4mpebgp4PathAttrASPathSegment   OBJECT-TYPE
    SYNTAX                  OCTET STRING (SIZE (2..255))
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "The sequence of AS path segments.  Each AS
         path segment is represented by a triple
         <type, length, value>.
         The type is a 1-octet field which has two
         possible values:
         1      AS_SET: unordered set of ASs, traversed by a
                route in the UPDATE message.
         2      AS_SEQUENCE: ordered set of ASs, traversed by
                a route in the UPDATE message.
         The length is a 1-octet field containing the
         number of ASs in the value field.
         The value field contains one or more AS
         numbers, each AS is represented in the octet
         string as a pair of octets according to the
         following algorithm:
         first-byte-of-pair = ASNumber / 256;
         second-byte-of-pair = ASNumber & 255;"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 8 }

fsMIBgp4mpebgp4PathAttrNextHop OBJECT-TYPE
    SYNTAX          InetAddress
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The address of the border router that
         should be used for the destination network."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 9 }

fsMIBgp4mpebgp4PathAttrMultiExitDisc   OBJECT-TYPE
    SYNTAX                  Integer32 (-1..2147483647)
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "This metric is used to discriminate
         between multiple exit points to an
         adjacent autonomous system.  A value of -1
         indicates the absence of this attribute."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 10 }

fsMIBgp4mpebgp4PathAttrLocalPref   OBJECT-TYPE
    SYNTAX              Integer32 (-1..2147483647)
    MAX-ACCESS          read-only
    STATUS              current
    DESCRIPTION
        "The originating BGP4 speaker's degree of
         preference for an advertised route.  A
         value of -1 indicates the absence of this
         attribute."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 11 }

fsMIBgp4mpebgp4PathAttrAtomicAggregate OBJECT-TYPE
    SYNTAX                  INTEGER {
                                lessSpecificRrouteNotSelected(1),
                                lessSpecificRouteSelected(2)
                            }
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "Whether or not the local system has
         selected a less specific route without
         selecting a more specific route."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 12 }

fsMIBgp4mpebgp4PathAttrAggregatorAS    OBJECT-TYPE
    SYNTAX                  Unsigned32 (0..4294967295)
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "The AS number of the last BGP4 speaker that
         performed route aggregation.  A value of
         zero (0) indicates the absence of this
         attribute."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 13 }

fsMIBgp4mpebgp4PathAttrAggregatorAddr  OBJECT-TYPE
    SYNTAX                  IpAddress
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "The IP address of the last BGP4 speaker
         that performed route aggregation.  A value
         of 0.0.0.0 indicates the absence of this
         attribute."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 14 }

fsMIBgp4mpebgp4PathAttrCalcLocalPref   OBJECT-TYPE
    SYNTAX                  Integer32 (-1..2147483647)
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "The degree of preference calculated by the
         receiving BGP4 speaker for an advertised
         route.  A value of -1 indicates the
         absence of this attribute."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 15 }

fsMIBgp4mpebgp4PathAttrBest    OBJECT-TYPE
    SYNTAX          INTEGER {
                        nonbest(1),-- not chosen as best route
                        best(2), -- chosen as best route
                        stale(3) -- chosen as stale route
                    }
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "An indication of whether or not this route
         was chosen as the best BGP4 route."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 16 }

fsMIBgp4mpebgp4PathAttrCommunity OBJECT-TYPE
    SYNTAX          OCTET STRING (SIZE(0..800))
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The community values received for this destinatin
        from the peer"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 17 }

fsMIBgp4mpebgp4PathAttrOriginatorId OBJECT-TYPE
    SYNTAX          OCTET STRING (SIZE(4))
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The Originator-ID identifying the router that initially
       advertised this destination to a Route Reflector.
       A value of 0.0.0.0 indicates the absence of this attribute"
    REFERENCE
        "This attribute is defined in [RFC 2796]"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 18 }

fsMIBgp4mpebgp4PathAttrClusterList OBJECT-TYPE
    SYNTAX          OCTET STRING (SIZE(0..4096))
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "A sequence of four octet long values Cluster-IDs representing
        the reflection path that the route has passed. Each four octet
        long value represents the ID of a cluster that the route has
        traversed. A length of zero (0) indicates the absence of this
        attibute."
    REFERENCE
        "This attribute is defined in [RFC 2796]"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 19 } 	

fsMIBgp4mpebgp4PathAttrExtCommunity OBJECT-TYPE
    SYNTAX          OCTET STRING (SIZE(0..800))
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The extended community values received for this
        destinatin from the peer"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 20 }

fsMIBgp4mpebgp4PathAttrUnknown OBJECT-TYPE
    SYNTAX          OCTET STRING (SIZE(0..255))
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "One or more path attributes not understood
            by this BGP4 speaker.  Size zero (0)
         indicates the absence of such
         attribute(s).  Octets beyond the maximum
         size, if any, are not recorded by this
         object."
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 21 }

fsMIBgp4mpebgp4PathAttrLabel  OBJECT-TYPE
    SYNTAX          OCTET STRING (SIZE(0..24))
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
         "MPLS Label received for this destination from the peer "
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 22 }

fsMIBgp4mpebgp4PathAttrAS4PathSegment   OBJECT-TYPE
    SYNTAX                  OCTET STRING (SIZE (2..255))
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "The sequence of AS path segments.  Each AS
         path segment is represented by a triple
         <type, length, value>.
         The type is a 1-octet field which has two
         possible values:
         1      AS_SET: unordered set of ASs, traversed by a
                route in the UPDATE message.
         2      AS_SEQUENCE: ordered set of ASs, traversed by
                a route in the UPDATE message.
         The length is a 1-octet field containing the
         number of ASs in the value field.
         The value field contains one or more AS
         numbers, each AS is represented in the octet
         string as 2 pairs of octets"
    REFERENCE
        "This attribute is defined in [RFC 6793]"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 23 }

fsMIBgp4mpebgp4PathAttrAggregatorAS4    OBJECT-TYPE
    SYNTAX                  Unsigned32 (0..4294967295)
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
        "The 4 Byte AS number of the last BGP4 speaker that
         performed route aggregation.  A value of
         zero (0) indicates the absence of this
         attribute."
    REFERENCE
        "This attribute is defined in [RFC 6793]"
    ::= { fsMIBgp4MpeBgp4PathAttrEntry 24 }

-- End of Path Attr Table


-- MIB FOR fsMIBgp_PEER_EXTENSIONS_TABLE BEGIN

-- This table is an Extension to the bgpPeerTable from stdbgp4.mib.
-- This table contains, one entry per BGP peer, information
-- about the BGP peer.

fsMIBgp4MpePeerExtTable          OBJECT-TYPE
    SYNTAX                  SEQUENCE OF FsMIBgp4MpePeerExtEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "BGP Peer Extension Table. The entries in the table specifies
     the additional features supported for a peer by futureBGP4
     Speaker in addition to the features specified as in bgpPeerTable
     (described in  stdbgp4.mib.). All entries in this table can be
     configured only if fsMIBgp4LocalAs has be configured."
    ::= { fsMIBgp 22 }

fsMIBgp4MpePeerExtEntry          OBJECT-TYPE
    SYNTAX                  FsMIBgp4MpePeerExtEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Entry containing information about the additional features supported
     for a peer by futureBGP4 Speaker."
    INDEX {fsMIBgp4ContextId, 
           fsMIBgp4mpePeerExtPeerType,
           fsMIBgp4mpePeerExtPeerRemoteAddr }
    ::= { fsMIBgp4MpePeerExtTable 1 }

FsMIBgp4MpePeerExtEntry ::=    SEQUENCE {
                                fsMIBgp4mpePeerExtPeerType
                                    InetAddressType,
                                fsMIBgp4mpePeerExtPeerRemoteAddr
                                    InetAddress,
                                fsMIBgp4mpePeerExtConfigurePeer
                                    INTEGER,
                                fsMIBgp4mpePeerExtPeerRemoteAs
                                    Unsigned32,
                                fsMIBgp4mpePeerExtEBGPMultiHop
                                    INTEGER,
                                fsMIBgp4mpePeerExtEBGPHopLimit
                                    Integer32,
                                fsMIBgp4mpePeerExtNextHopSelf
                                    INTEGER,
                                fsMIBgp4mpePeerExtRflClient
                                    INTEGER,
                                fsMIBgp4mpePeerExtTcpSendBufSize
                                    Integer32,
                                fsMIBgp4mpePeerExtTcpRcvBufSize
                                    Integer32,
                                fsMIBgp4mpePeerExtLclAddress
                                    InetAddress,
                                fsMIBgp4mpePeerExtNetworkAddress
                                    InetAddress,
                                fsMIBgp4mpePeerExtGateway
                                    InetAddress,
                                fsMIBgp4mpePeerExtCommSendStatus
                                    INTEGER,
                                fsMIBgp4mpePeerExtECommSendStatus
                                    INTEGER,
                                fsMIBgp4mpePeerExtPassive
                                    INTEGER,
                                fsMIBgp4mpePeerExtDefaultOriginate
                                    INTEGER,
                                fsMIBgp4mpePeerExtOverrideCapability
                                    INTEGER
                            }

fsMIBgp4mpePeerExtPeerType           OBJECT-TYPE
    SYNTAX                      InetAddressType
    MAX-ACCESS                  not-accessible
    STATUS                      current
    DESCRIPTION
    "The Type of the remote peer "
    ::= { fsMIBgp4MpePeerExtEntry 1 }

fsMIBgp4mpePeerExtPeerRemoteAddr     OBJECT-TYPE
    SYNTAX                      InetAddress
    MAX-ACCESS                  not-accessible
    STATUS                      current
    DESCRIPTION
    "The remote IP address of this entry's BGP peer."
    ::= { fsMIBgp4MpePeerExtEntry 2 }

fsMIBgp4mpePeerExtConfigurePeer     OBJECT-TYPE
    SYNTAX                     INTEGER
                               {
                                   create (1),
                                   delete (2)
                               }
    MAX-ACCESS                 read-write
    STATUS                     current
    DESCRIPTION
    "This object is used to create or delete a peer. If called with create
     and no matching peer exists, then a new peer entry will be created. The
     admin status of this newly created peer will be stop. To enable the peer
     set the peers remote AS (fsMIBgp4mpePeerExtPeerRemoteAS)and change the peer's
     admin state (bgpPeerAdminState in stdbgp4.mib) to start. If this object
     is called with create and a matching peer exists, then no action is done.
     If called with delete and if a matching peer exists, then the complete
     instance associated with that peer will be deleted."
    ::= { fsMIBgp4MpePeerExtEntry 3 }

fsMIBgp4mpePeerExtPeerRemoteAs   OBJECT-TYPE
    SYNTAX                  Unsigned32 (1..4294967295)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "The remote autonomous system number of the Peer. The peer admin status
     can be made up only if this object is configured for a valid AS number.
     When OPEN message is received from this peer during the BGP Connection
     establishment, this configured AS value is compared against the AS number
     received in the OPEN message. If both matches, then connection
     establishment continues. If there is any mismatch, then the connection is
     terminated. This object can be set only when the peer's admin status is 
     down."
    ::= { fsMIBgp4MpePeerExtEntry 4 } 

fsMIBgp4mpePeerExtEBGPMultiHop   OBJECT-TYPE
    SYNTAX                  INTEGER
                            {
                               enable(1),
                               disable(2)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "This objects enables the BGP4 Speaker to accept or attempt
     connections to external peers residing on network that are not directly
     connected. By default, only directly connected EBGP peers are allowed.
     For the internal peers, this object has no effect."
    DEFVAL { disable }
    ::= { fsMIBgp4MpePeerExtEntry 5 }

fsMIBgp4mpePeerExtEBGPHopLimit   OBJECT-TYPE
    SYNTAX                  Integer32 (1..255)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "This objects enables the BGP4 Speaker to accept or attempt
     connections to external peers residing on network that are not directly
     connected and seperated by a maximum hop limit as configured by this
     object.  For the internal peers, this object has no effect."
    DEFVAL { 1 }
    ::= { fsMIBgp4MpePeerExtEntry 6 }

fsMIBgp4mpePeerExtNextHopSelf    OBJECT-TYPE
    SYNTAX                  INTEGER 
                            {
                                automatic(1),
                                self(2) 
                            }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object specifies how the next hop attribute sent in the update 
     messages to this peer has to be generated.  When the object takes the
     value of self,the next Hop attribute will always be the sender Local
     Address else the next hop will be generated based on the IP address of
     the destination and the present next hop in the route information."
    DEFVAL { automatic }
    ::= { fsMIBgp4MpePeerExtEntry 7 }

fsMIBgp4mpePeerExtRflClient      OBJECT-TYPE
    SYNTAX                  INTEGER
                            {
    	                        nonClient (1),
                                client (2)
                            } 
    MAX-ACCESS          read-write
    STATUS              current
	DESCRIPTION  
    "This object specifies whether the peer is Client peer or Non-Client
    peer. By default, the peer is created as Non-Client Peer."
	DEFVAL				{1}
	::= { fsMIBgp4MpePeerExtEntry 8 }

fsMIBgp4mpePeerExtTcpSendBufSize   OBJECT-TYPE
    SYNTAX                    Integer32 (4096..65536)
    MAX-ACCESS                read-write
    STATUS                    current
    DESCRIPTION
    "This object configures the tcp window size on the sender side." 
    DEFVAL { 65536 }
    ::= { fsMIBgp4MpePeerExtEntry 9 }

fsMIBgp4mpePeerExtTcpRcvBufSize   OBJECT-TYPE
    SYNTAX                    Integer32 (4096..65536)
    MAX-ACCESS                read-write
    STATUS                    current
    DESCRIPTION
    "This object configures the tcp window size on the receiver side." 
    DEFVAL { 65536 }
    ::= { fsMIBgp4MpePeerExtEntry 10 }

fsMIBgp4mpePeerExtLclAddress    OBJECT-TYPE
    SYNTAX                 InetAddress  
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object specifies which address should be used as the source address
    of the TCP session initiated with the Peer. By default this object takes
    value as 0 and the source address of the TCP session is filled by TCP.
    This object can take value of any interface address. If this object
    refers to a valid interface address, then the TCP session initiated
    with the peer should have this interface address as the source address."
    ::= { fsMIBgp4MpePeerExtEntry 11 }

fsMIBgp4mpePeerExtNetworkAddress    OBJECT-TYPE
    SYNTAX                     InetAddress  
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object specifies the remote peer's network address. TCP connection is
     established using the peer's remote-address. If the peer's remote-address
     is a IPv4 address, the peer's network address carries the IPv6 network
     address. Similarly, if the peer's remote-address is a IPv6 address, the
     peer's network address carries the IPv4 network address. This object can
     be configured only after the peer's remote-address and the corresponding
     local interface are configured." 
    ::= { fsMIBgp4MpePeerExtEntry 12 }

fsMIBgp4mpePeerExtGateway    OBJECT-TYPE
    SYNTAX              InetAddress  
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object specifies  the gateway router's address that will be used as 
     nexthop in the routes advertised to the peer. This ensures that the 
     traffic coming from this peer is routed through this gateway."
    ::= { fsMIBgp4MpePeerExtEntry 13 }

fsMIBgp4mpePeerExtCommSendStatus    OBJECT-TYPE
    SYNTAX                     INTEGER {
                                   none (1), 
                                   send (2),
                                   donotsend (3)
                                }
    MAX-ACCESS          read-create
    STATUS              current
    DESCRIPTION 
    "Community Send status of the peer.
       o none       - is for read-only 
       o send       - send communities to this peer
       o donotsend  - do not send communities to this peer."
    DEFVAL { send }
    ::= { fsMIBgp4MpePeerExtEntry 14 } 

fsMIBgp4mpePeerExtECommSendStatus OBJECT-TYPE
    SYNTAX                       INTEGER {
                                   none       (1),
                                   send       (2),
                                   donotsend  (3)
                                }
    MAX-ACCESS          read-create
    STATUS              current
    DESCRIPTION 
    "Extended Community Send status of the peer.
       o none     - is for read-only 
       o send       - send extended communities to this peer
       o donotsend  - do not send extended communities to this peer."
    DEFVAL { send }
    ::= { fsMIBgp4MpePeerExtEntry 15 } 

fsMIBgp4mpePeerExtPassive        OBJECT-TYPE
    SYNTAX                     INTEGER
                               {
                                   enable (1),
                                   disable (2)
                               }
    MAX-ACCESS                 read-write
    STATUS                     current
    DESCRIPTION
    "This object is used to set a peer connection to be passive, that means
     the speaker will not initiate the session with that peer instead it
     waits for the remote peer to initiate the session"
    ::= { fsMIBgp4MpePeerExtEntry 16 }

fsMIBgp4mpePeerExtDefaultOriginate        OBJECT-TYPE
    SYNTAX                           INTEGER
                                     {
                                         enable(1),
                                         disable(2)
                                     }
    MAX-ACCESS                       read-write
    STATUS                           current
    DESCRIPTION
    "If this object is set to enable/disable the advertisement of the default
     route to the peer. This object overrides the global default
     route configuration (fsMIBgp4DefaultOriginate) and always send a default
     route to the peer with self next-hop. This advertisement occurs
     irrespective of the presence of default route in FDB. This object can
     be set only if the fsMIBgp4LocalAs is set."
    DEFVAL  { disable }
    ::= { fsMIBgp4MpePeerExtEntry 17 }


fsMIBgp4mpePeerExtOverrideCapability     OBJECT-TYPE
    SYNTAX                           INTEGER
                                     {
                                         enable(1),
                                         disable(2)
                                     }
    MAX-ACCESS                       read-write
    STATUS                           current
    DESCRIPTION
    "If this object is set to enable/disable the override capability"
    DEFVAL  { disable }
    ::= { fsMIBgp4MpePeerExtEntry 18 }

-- MIB FOR fsMIBgp_PEER_EXTENSIONS_TABLE END

--- Multi-Exit Discriminator Table
--- This table specifies the value that has to be assigned to the
--- Multi-Exit Discriminator attribute when an update is sent.

fsMIBgp4MpeMEDTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF FsMIBgp4MpeMEDEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "BGP4 MED table. This table contains the MED values that are to
     be assigned to routes."
    ::= { fsMIBgp 23 }

fsMIBgp4MpeMEDEntry  OBJECT-TYPE
    SYNTAX      FsMIBgp4MpeMEDEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
      "Entry containing information about the MED value."
    INDEX  { fsMIBgp4mpeMEDIndex }
    ::= { fsMIBgp4MpeMEDTable 1 }

FsMIBgp4MpeMEDEntry ::= SEQUENCE {
    fsMIBgp4mpeMEDIndex
        Integer32,
    fsMIBgp4mpeMEDAdminStatus
        INTEGER,
    fsMIBgp4mpeMEDRemoteAS
        Unsigned32,
    fsMIBgp4mpeMEDIPAddrAfi
        InetAddressType,
    fsMIBgp4mpeMEDIPAddrSafi
        BgpSafi,
    fsMIBgp4mpeMEDIPAddrPrefix
        InetAddress,
    fsMIBgp4mpeMEDIPAddrPrefixLen
        Integer32,
    fsMIBgp4mpeMEDIntermediateAS
        DisplayString,
    fsMIBgp4mpeMEDDirection
        INTEGER,
    fsMIBgp4mpeMEDValue
        Unsigned32,
    fsMIBgp4mpeMEDPreference
        INTEGER,
    fsMIBgp4mpeMEDVrfName
        DisplayString
    }

fsMIBgp4mpeMEDIndex  OBJECT-TYPE
    SYNTAX      Integer32 (1..10)
    MAX-ACCESS  not-accessible 
    STATUS      current
    DESCRIPTION 
      " This is the index to the table. Any entry in the table can be 
        configured only if fsMIBgp4LocalAs is set."
    ::= { fsMIBgp4MpeMEDEntry 1 } 

fsMIBgp4mpeMEDAdminStatus    OBJECT-TYPE
    SYNTAX              INTEGER {
                            up(1),
                            down(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "The desired state of this entry. The entries in a row are
         configurable only if the admin status is DOWN."
    ::= { fsMIBgp4MpeMEDEntry 2 }

fsMIBgp4mpeMEDRemoteAS   OBJECT-TYPE
    SYNTAX          Unsigned32 ( 0..4294967295)
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION 
    " The remote autonomous system with which this entry is associated.
      A value of zero indicates that this entry is not valid and will not 
      be matched for when the MED value for an update is calculated."
    DEFVAL  { 0 }
    ::= { fsMIBgp4MpeMEDEntry 3 }

fsMIBgp4mpeMEDIPAddrAfi      OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "Type of IP address prefix in the Network Layer Reachability Information
     field in updates. This field needs to be set before setting the object
     fsMIBgp4mpeMEDIPAddrPrefix."
    ::= { fsMIBgp4MpeMEDEntry 4 }

fsMIBgp4mpeMEDIPAddrSafi     OBJECT-TYPE
    SYNTAX              BgpSafi
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "Type of IP address prefix in the Network Layer Reachability Information
     field in updates. This field needs to be set before setting the object
     fsMIBgp4mpeMEDIPAddrPrefix."
    ::= { fsMIBgp4MpeMEDEntry 5 }

fsMIBgp4mpeMEDIPAddrPrefix   OBJECT-TYPE
    SYNTAX              InetAddress
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "An IP address prefix in the Network Layer Reachability Information
     field in updates. A value of zero indicates that the entry is not 
     valid and will not be matched for when the MED value for an update is 
     calculated."
    DEFVAL  { '00000000'H }
    ::= { fsMIBgp4MpeMEDEntry 6 }

fsMIBgp4mpeMEDIPAddrPrefixLen    OBJECT-TYPE
    SYNTAX                  Integer32 (0..32)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "Length in bits of the IP address prefix in the Network Layer Reachability
     Information field. A value of zero indicates that the entry is not 
     valid and will not be matched for when the MED value for an update is 
     calculated."
    DEFVAL  { 0 }
    ::= { fsMIBgp4MpeMEDEntry 7 }

fsMIBgp4mpeMEDIntermediateAS OBJECT-TYPE
    SYNTAX              DisplayString
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
          "Comma seperated list of AS numbers that are to
           be checked against the AS_PATH attribute of the Update.
           An empty field indicates that the same need not be
           checked for in the update.Maximum configurable size is 100."
    ::= { fsMIBgp4MpeMEDEntry 8 }

fsMIBgp4mpeMEDDirection  OBJECT-TYPE
    SYNTAX          INTEGER {
                        in(1),
                        out(2)
                    }
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
    "The direction of the update with which the entry is to be associated."
    DEFVAL  { in }
   ::= { fsMIBgp4MpeMEDEntry 9 }

fsMIBgp4mpeMEDValue  OBJECT-TYPE
    SYNTAX      Unsigned32 ( 0 .. 2147483647 )
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "The value assigned to the MED Attribute for the route present in NLRI"
    DEFVAL   { 0 }
    ::= { fsMIBgp4MpeMEDEntry 10 }

fsMIBgp4mpeMEDPreference OBJECT-TYPE
    SYNTAX          INTEGER {
                        false(1),
                        true(2)
                    }
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
    "This object specifies whether the value present
    in this entry takes precedence when the attribute
    is already present in the update message that has
    been received."
    DEFVAL  { false }
    ::= { fsMIBgp4MpeMEDEntry 11 } 

fsMIBgp4mpeMEDVrfName    OBJECT-TYPE
   SYNTAX           DisplayString (SIZE (0..16))
   MAX-ACCESS       read-write
   STATUS           current
   DESCRIPTION
       "The human-readable name of the VPN."
    ::= { fsMIBgp4MpeMEDEntry 12 }

--  Local Preference Table.
--  This table specifies the value that has to assigned to the
--  Local Preference attribute when an update is sent to an
--  internal Peer or received from an external or internal peer.

fsMIBgp4MpeLocalPrefTable    OBJECT-TYPE
    SYNTAX              SEQUENCE OF FsMIBgp4MpeLocalPrefEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
    "BGP Local Preference table.  This table contains,
    the value that is to be assigned to the Local
    Preference attibute."
    ::= { fsMIBgp 24 }

fsMIBgp4MpeLocalPrefEntry    OBJECT-TYPE
    SYNTAX              FsMIBgp4MpeLocalPrefEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
    "Entry containing information about the connection with a BGP peer."
    INDEX { fsMIBgp4mpeLocalPrefIndex }
    ::= { fsMIBgp4MpeLocalPrefTable 1 }

FsMIBgp4MpeLocalPrefEntry ::= SEQUENCE {
    fsMIBgp4mpeLocalPrefIndex
        Integer32,
    fsMIBgp4mpeLocalPrefAdminStatus
        INTEGER,
    fsMIBgp4mpeLocalPrefRemoteAS
        Unsigned32,
    fsMIBgp4mpeLocalPrefIPAddrAfi
        InetAddressType,
    fsMIBgp4mpeLocalPrefIPAddrSafi
        BgpSafi,
    fsMIBgp4mpeLocalPrefIPAddrPrefix
        InetAddress,
    fsMIBgp4mpeLocalPrefIPAddrPrefixLen
        Integer32,
    fsMIBgp4mpeLocalPrefIntermediateAS
        DisplayString,
    fsMIBgp4mpeLocalPrefDirection
        INTEGER,
    fsMIBgp4mpeLocalPrefValue
        Unsigned32,
    fsMIBgp4mpeLocalPrefPreference
        INTEGER,
    fsMIBgp4mpeLocalPrefVrfName
        DisplayString
    }

fsMIBgp4mpeLocalPrefIndex    OBJECT-TYPE
    SYNTAX              Integer32  (1..10)
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "This is the index to the table. Any entry in the table can be
         configured only if fsMIBgp4mpeLocalAs is set."
    ::= { fsMIBgp4MpeLocalPrefEntry 1 }

fsMIBgp4mpeLocalPrefAdminStatus  OBJECT-TYPE
    SYNTAX                  INTEGER {
                                up(1),
                                down(2)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
        "The desired state of this entry. The entries in a row are
         configurable only if the admin status is DOWN."
    ::= { fsMIBgp4MpeLocalPrefEntry 2 }

fsMIBgp4mpeLocalPrefRemoteAS OBJECT-TYPE
    SYNTAX              Unsigned32 (0..4294967295)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "The remote autonomous system with which this entry
    is associated. A value of zero indicates that this
    entry is not valid and will not be matched for when
    the LocalPref value for an update is calculated."
    DEFVAL   { 0 }
    ::= { fsMIBgp4MpeLocalPrefEntry 3 }

fsMIBgp4mpeLocalPrefIPAddrAfi    OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "Type of IP address prefix in the Network Layer Reachability 
     Information field. This field needs to be set before setting the object
     fsMIBgp4mpeLocalPrefIPAddrPrefix."
    ::= { fsMIBgp4MpeLocalPrefEntry 4 }

fsMIBgp4mpeLocalPrefIPAddrSafi   OBJECT-TYPE
    SYNTAX                  BgpSafi
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "Sub-sequent address family of IP address prefix in the 
     Network Layer Reachability Information field.This field needs to be set
     before setting the object fsMIBgp4mpeLocalPrefIPAddrPrefix. "
    ::= { fsMIBgp4MpeLocalPrefEntry 5 }

fsMIBgp4mpeLocalPrefIPAddrPrefix OBJECT-TYPE
    SYNTAX                  InetAddress
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "An IP address prefix in the Network Layer Reachability Information field.
     A value of zero indicates that the entry is not valid and will not be 
     matched for when the Local Pref value for an update is calculated."
    DEFVAL   { '00000000'H }
    ::= { fsMIBgp4MpeLocalPrefEntry 6 }

fsMIBgp4mpeLocalPrefIPAddrPrefixLen  OBJECT-TYPE
    SYNTAX                      Integer32 (0..32)
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "Length in bits of the IP address prefix in the Network Layer Reachability
    Information field.  A value of zero indicates that the entry is not valid 
    and will not be matched for when the Local Pref value for an update 
    is calculated."
    DEFVAL  { 0 }
    ::= { fsMIBgp4MpeLocalPrefEntry 7 }

fsMIBgp4mpeLocalPrefIntermediateAS   OBJECT-TYPE
    SYNTAX                      DisplayString
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "Comma separated list of AS numbers that are to
    be present in the AS_PATH attribute of the Update.
    An empty field indicates that the same need not be
    checked for in the update.Maximum configurable size is 100."
    ::= { fsMIBgp4MpeLocalPrefEntry 8 }

fsMIBgp4mpeLocalPrefDirection    OBJECT-TYPE
    SYNTAX                  INTEGER {
                                in(1), -- incoming updates
                                out(2) -- outgoing updates
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "The direction of the update with which the entry is to be associated."
    DEFVAL  { in }
    ::= { fsMIBgp4MpeLocalPrefEntry 9 }

fsMIBgp4mpeLocalPrefValue    OBJECT-TYPE
    SYNTAX              Unsigned32 ( 0 .. 2147483647 )
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
    "The value assigned to the LP Attribute for the route present in NLRI"
    DEFVAL  { 100 }
    ::= { fsMIBgp4MpeLocalPrefEntry 10 }

fsMIBgp4mpeLocalPrefPreference   OBJECT-TYPE
    SYNTAX                  INTEGER {
                                false(1),
                                true(2)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "This object specifies whether the value present
     in this entry takes precedence when the attribute
     is already present in the update message that has
     been received."
    DEFVAL  { false }
    ::= { fsMIBgp4MpeLocalPrefEntry 11 }

fsMIBgp4mpeLocalPrefVrfName  OBJECT-TYPE
   SYNTAX               DisplayString (SIZE (0..16))
   MAX-ACCESS           read-write
   STATUS               current
   DESCRIPTION
       "The human-readable name of the VPN."
    ::= { fsMIBgp4MpeLocalPrefEntry 12 }

-- End of Local Preference Table

-- Update Filter Table.
-- This table is used to filter out routing updates

fsMIBgp4MpeUpdateFilterTable     OBJECT-TYPE
    SYNTAX                  SEQUENCE OF FsMIBgp4MpeUpdateFilterEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "BGP Update Filter Table.  This table contains
    Rules to filter out updates based on the AS from
    which it is received, NLRI and AS through which it
    had passed."
    ::= { fsMIBgp 25 }

fsMIBgp4MpeUpdateFilterEntry     OBJECT-TYPE
    SYNTAX                  FsMIBgp4MpeUpdateFilterEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    	"Entry containing information about the updates
         that are to be filtered."
    INDEX { fsMIBgp4mpeUpdateFilterIndex }
    ::= { fsMIBgp4MpeUpdateFilterTable 1 }

FsMIBgp4MpeUpdateFilterEntry ::= SEQUENCE {
    fsMIBgp4mpeUpdateFilterIndex
        Integer32,
    fsMIBgp4mpeUpdateFilterAdminStatus
        INTEGER,
    fsMIBgp4mpeUpdateFilterRemoteAS
        Unsigned32,
    fsMIBgp4mpeUpdateFilterIPAddrAfi
        InetAddressType,
    fsMIBgp4mpeUpdateFilterIPAddrSafi
        BgpSafi,
    fsMIBgp4mpeUpdateFilterIPAddrPrefix
        InetAddress,
    fsMIBgp4mpeUpdateFilterIPAddrPrefixLen
        Integer32,
    fsMIBgp4mpeUpdateFilterIntermediateAS
        DisplayString,
    fsMIBgp4mpeUpdateFilterDirection
        INTEGER,
    fsMIBgp4mpeUpdateFilterAction
        INTEGER,
    fsMIBgp4mpeUpdateFilterVrfName
        DisplayString
    }

fsMIBgp4mpeUpdateFilterIndex OBJECT-TYPE
    SYNTAX              Integer32  (1..10)
    MAX-ACCESS          not-accessible 
    STATUS              current
    DESCRIPTION
    "This is the index to the table. Any entry in the table can be configured
     only if fsMIBgp4LocalAs is set."
    ::= { fsMIBgp4MpeUpdateFilterEntry 1 }

fsMIBgp4mpeUpdateFilterAdminStatus   OBJECT-TYPE
    SYNTAX                      INTEGER {
                                    up(1),
                                    down(2)
                                }
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
        "The desired state of this entry. The entries in a row are
         configurable only if the admin status is DOWN."
    ::= { fsMIBgp4MpeUpdateFilterEntry 2 }

fsMIBgp4mpeUpdateFilterRemoteAS  OBJECT-TYPE
    SYNTAX                  Unsigned32 (0..4294967295)
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "The remote autonomous system with which this entry
    is associated. A value of zero indicates that this
    entry is not valid and will not be matched for when
    the update is checked."
    DEFVAL  { 0 }
    ::= { fsMIBgp4MpeUpdateFilterEntry 3 }

fsMIBgp4mpeUpdateFilterIPAddrAfi     OBJECT-TYPE
    SYNTAX                      InetAddressType
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "Type of IP address prefix in the Network Layer Reachability 
     Information field. This field needs to be set, before setting the object
     fsMIBgp4mpeUpdateFilterIPAddrPrefix."
    ::= { fsMIBgp4MpeUpdateFilterEntry 4 }

fsMIBgp4mpeUpdateFilterIPAddrSafi    OBJECT-TYPE
    SYNTAX                      BgpSafi
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "SAFI of IP address prefix in the Network Layer Reachability 
     Information field. This field needs to be set, before setting the object
     fsMIBgp4mpeUpdateFilterIPAddrPrefix."
    ::= { fsMIBgp4MpeUpdateFilterEntry 5 }

fsMIBgp4mpeUpdateFilterIPAddrPrefix  OBJECT-TYPE
    SYNTAX                      InetAddress
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "An IP address prefix in the Network Layer Reachability Information field.
     A value of zero in this field indicates that the NLRI field may not be 
     matched."
    DEFVAL  { '00000000'H }
    ::= { fsMIBgp4MpeUpdateFilterEntry 6 }

fsMIBgp4mpeUpdateFilterIPAddrPrefixLen   OBJECT-TYPE
    SYNTAX                          Integer32 (0..32)
    MAX-ACCESS                      read-write
    STATUS                          current
    DESCRIPTION
    "Length in bits of the IP address prefix
    in the Network Layer Reachability
    Information field. A value of zero in this field
    indicates that the NLRI field may not be matched."
    DEFVAL { 0 }
    ::= { fsMIBgp4MpeUpdateFilterEntry 7 }

fsMIBgp4mpeUpdateFilterIntermediateAS    OBJECT-TYPE
    SYNTAX                          DisplayString
    MAX-ACCESS                      read-write
    STATUS                          current
    DESCRIPTION
    "Comma separated list of AS numbers that are to
    be present in the AS_PATH attribute of the Update.
    An empty field indicates that the same need not be
    checked for in the update."
    ::= { fsMIBgp4MpeUpdateFilterEntry 8 }

fsMIBgp4mpeUpdateFilterDirection     OBJECT-TYPE
    SYNTAX                      INTEGER {
                                    in(1), -- incoming updates
                                    out(2) -- outgoing updates
                                }
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "The direction of the update with which the entry is to be associated."
    DEFVAL  { in }
    ::= { fsMIBgp4MpeUpdateFilterEntry 9 }

fsMIBgp4mpeUpdateFilterAction    OBJECT-TYPE
    SYNTAX                  INTEGER {
                                allow (1), -- do not filter
                                filter (2) -- filter
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "The action to be taken when the characteristics
    that are specified in the entry is matched."
    DEFVAL  { filter }
    ::= { fsMIBgp4MpeUpdateFilterEntry 10 }

fsMIBgp4mpeUpdateFilterVrfName   OBJECT-TYPE
   SYNTAX                   DisplayString (SIZE (0..16))
   MAX-ACCESS               read-write
   STATUS                   current
   DESCRIPTION
       "The human-readable name of the VPN."
    ::= { fsMIBgp4MpeUpdateFilterEntry 11 }

-- End of Update Filter Table

-- Aggregation Table.
-- This table is used to aggregate the routing information
-- before the same are advertised to peers.

fsMIBgp4MpeAggregateTable        OBJECT-TYPE
    SYNTAX                  SEQUENCE OF FsMIBgp4MpeAggregateEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "BGP Aggregate Table. The entries in the table
    specifies the IP address based on which the routing
    information has to be aggregated."
    ::= { fsMIBgp 26 }

fsMIBgp4MpeAggregateEntry        OBJECT-TYPE
    SYNTAX                  FsMIBgp4MpeAggregateEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Entry containing information about the IP address
    on which the aggregation has to be done."
    INDEX { fsMIBgp4mpeAggregateIndex }
    ::= { fsMIBgp4MpeAggregateTable 1 }

FsMIBgp4MpeAggregateEntry ::=    SEQUENCE {
                                fsMIBgp4mpeAggregateIndex
                                    Integer32,
                                fsMIBgp4mpeAggregateAdminStatus
                                    INTEGER,
                                fsMIBgp4mpeAggregateIPAddrAfi
                                    InetAddressType,
                                fsMIBgp4mpeAggregateIPAddrSafi
                                    BgpSafi,
                                fsMIBgp4mpeAggregateIPAddrPrefix
                                    InetAddress,
                                fsMIBgp4mpeAggregateIPAddrPrefixLen
                                    Integer32,
                                fsMIBgp4mpeAggregateAdvertise
                                    INTEGER,
                                fsMIBgp4mpeAggregateVrfName
                                    DisplayString,
                                fsMIBgp4mpeAggregateAsSet
                                    INTEGER,
                                fsMIBgp4mpeAggregateAdvertiseRouteMapName
                                    DisplayString,
                                fsMIBgp4mpeAggregateSuppressRouteMapName
                                    DisplayString,
                                fsMIBgp4mpeAggregateAttributeRouteMapName
                                    DisplayString
                            }

fsMIBgp4mpeAggregateIndex        OBJECT-TYPE
    SYNTAX                  Integer32 (0..65535)
    MAX-ACCESS              not-accessible 
    STATUS                  current
    DESCRIPTION
    "This is the index to the table.Any entry in the table can be
         configured only if fsMIBgp4LocalAs is set."
    ::= { fsMIBgp4MpeAggregateEntry 1 }

fsMIBgp4mpeAggregateAdminStatus  OBJECT-TYPE
    SYNTAX                  INTEGER {
                                up(1),
                                down(2),
                                invalid(3)
                            }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
        "The desired state of this entry. When the adminstatus is set to up,
         the aggregate entry will be made active and the aggregate route 
         will be formed for this entry. When the adminstatus is set to down,
         the aggregate route, if advertised will be withdrawn and the 
         more-specific routes will be advertised. When the adminstatus is 
         set to invalid, the aggregate entry will be deleted."
    ::= { fsMIBgp4MpeAggregateEntry 2 }

fsMIBgp4mpeAggregateIPAddrAfi     OBJECT-TYPE
    SYNTAX                   InetAddressType
    MAX-ACCESS               read-write
    STATUS                   current
    DESCRIPTION
    "Type of IP address prefix in the Network Layer Reachability 
     Information field. This field needs to be set before setting the object
     fsMIBgp4mpeAggregateIPAddrPrefix. "
    ::= { fsMIBgp4MpeAggregateEntry 3 }

fsMIBgp4mpeAggregateIPAddrSafi   OBJECT-TYPE
    SYNTAX                  BgpSafi
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "SAFI of IP address prefix in the Network Layer Reachability 
     Information field. This field needs to be set before setting the object
     fsMIBgp4mpeAggregateIPAddrPrefix..
     [Note] SAFI for Carrying Label (4) can't be set. The configuration with
     SAFI unicast(1) holds good for both labelled and unlabelled prefixes."
    ::= { fsMIBgp4MpeAggregateEntry 4 }

fsMIBgp4mpeAggregateIPAddrPrefix  OBJECT-TYPE
    SYNTAX                   InetAddress
    MAX-ACCESS               read-write
    STATUS                   current
    DESCRIPTION
    "An IP address prefix in the Network Layer Reachability Information field.
     This field is configurable only if the admin status is DOWN"
    ::= { fsMIBgp4MpeAggregateEntry 5 }

fsMIBgp4mpeAggregateIPAddrPrefixLen  OBJECT-TYPE
    SYNTAX                      Integer32 (0..32)
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "Length in bits of the IP address prefix in the Network Layer Reachability
     Information field. This field is configurable only if the admin status
     is DOWN."
    ::= { fsMIBgp4MpeAggregateEntry 6 }

fsMIBgp4mpeAggregateAdvertise        OBJECT-TYPE
    SYNTAX                      INTEGER {
                                    summaryOnly (1),
                                    all (2)
                                }
    MAX-ACCESS                  read-write
    STATUS                      current
    DESCRIPTION
    "This object specifies the route update that should be sent
     to the peers -
        summary-only - specifies that only the summarized route 
                       has to be advertised to peers.
        All          - specifies that both the summary and the
                       more-specific routes based on which the summary entry
                       was generated has to be advertised to the peers."
    ::=  { fsMIBgp4MpeAggregateEntry 7 }

fsMIBgp4mpeAggregateVrfName      OBJECT-TYPE
   SYNTAX                   DisplayString (SIZE (0..16))
   MAX-ACCESS               read-write
   STATUS                   current
   DESCRIPTION
       "The human-readable name of the VPN."
    ::=  { fsMIBgp4MpeAggregateEntry 8 }

fsMIBgp4mpeAggregateAsSet     OBJECT-TYPE
    SYNTAX                  INTEGER {
                                enable(1),
                                disable(2)
                                }
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
        "Enables/Disables the  autonomous system set path information. 
         It is an optional parameter "
     ::= { fsMIBgp4MpeAggregateEntry 9 }

fsMIBgp4mpeAggregateAdvertiseRouteMapName      OBJECT-TYPE
   SYNTAX                   DisplayString (SIZE (1..20))
   MAX-ACCESS               read-write
   STATUS                   current
   DESCRIPTION
       "The human-readable name for adverise route-map. The route map contains
       the rules for advertising the routes while aggregation. When we use
       advertise-map, only advertise-map influences the creation of aggregate
       entry. In absence of advertise-map, the aggregate route inherits the
       attributes of the more specific routes, both suppressed and unsuppressed.
       When advertise-map is used with fsMIBgp4mpeAggregateAsSet (as enable)  and
       suppress map, the aggregate inherits the attributes of only the routes
       that are selected in the advertise-map, irrespective of whether
       suppress-map suppresses the routes."
    ::=  { fsMIBgp4MpeAggregateEntry 10 }

fsMIBgp4mpeAggregateSuppressRouteMapName      OBJECT-TYPE
   SYNTAX                   DisplayString (SIZE (1..20))
   MAX-ACCESS               read-write
   STATUS                   current
   DESCRIPTION
       "The human-readable name for suppress route-map. The route map contains
       the rules for suppressing the routes while aggregation. when we use
       suppress-map configuration along with (summaryonly option set for)
       fsMIBgp4mpeAggregateAdvertise, it does'nt have any effect. And the
       more-specific routes that the suppress-map suppresses are not
       advertised. Other routes are advertised. When we use
       fsMIBgp4mpeAggregateAsSet (with enabled option) with suppress-map although
       suppress routes are not advertised, the aggregated routes inherits the
       attributes of all the suppressesed rotues. But it can be overwritten by
       attribute-map."
    ::=  { fsMIBgp4MpeAggregateEntry 11 }

fsMIBgp4mpeAggregateAttributeRouteMapName      OBJECT-TYPE
   SYNTAX                   DisplayString (SIZE (1..20))
   MAX-ACCESS               read-write
   STATUS                   current
   DESCRIPTION
       "The human-readable name for attribute route-map. The route map contains
        the rules for setting the attributes the aggregated route. When
        attribute-map and advertise-map along with fsMIBgp4mpeAggregateAsSet (enable)
        and other configurations, the attribute-map overrides the attribute that
        are configured in the attribute-map."
    ::=  { fsMIBgp4MpeAggregateEntry 12 }


-- End of Aggregation Table

-- SCALAR_TABLE_END fsMIBgp4RRDGroup


-- RRD OBJECT DEFINITION END

-- MIB for Importing STATIC routes to BGP and Viewing non-BGP routes.

-- Start of Import Route Table

fsMIBgp4MpeImportRouteTable      OBJECT-TYPE
    SYNTAX                  SEQUENCE OF FsMIBgp4MpeImportRouteEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Non-BGP routes imported into the BGP RIB can be viewed through this table.
     Also allows importing a static route into BGP.After updating the RIB tree,
     if there is any change in the best route selected, then the  route is 
     updated to the Common Forwarding table."
    ::= { fsMIBgp 27 }

fsMIBgp4MpeImportRouteEntry      OBJECT-TYPE
    SYNTAX                  FsMIBgp4MpeImportRouteEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Import Route entry."
    INDEX   {   fsMIBgp4ContextId,
                fsMIBgp4mpeImportRoutePrefixAfi, 
                fsMIBgp4mpeImportRoutePrefixSafi, 
                fsMIBgp4mpeImportRoutePrefix, 
                fsMIBgp4mpeImportRoutePrefixLen,
                fsMIBgp4mpeImportRouteProtocol,
                fsMIBgp4mpeImportRouteNextHop, 
                fsMIBgp4mpeImportRouteIfIndex,
                fsMIBgp4mpeImportRouteMetric,
                fsMIBgp4mpeImportRouteVrf
            }
    ::= { fsMIBgp4MpeImportRouteTable 1 }

FsMIBgp4MpeImportRouteEntry ::= SEQUENCE {
        fsMIBgp4mpeImportRoutePrefixAfi  InetAddressType,
        fsMIBgp4mpeImportRoutePrefixSafi BgpSafi,
        fsMIBgp4mpeImportRoutePrefix     InetAddress,
        fsMIBgp4mpeImportRoutePrefixLen  Integer32,
        fsMIBgp4mpeImportRouteProtocol   Integer32,
        fsMIBgp4mpeImportRouteNextHop    InetAddress,
        fsMIBgp4mpeImportRouteIfIndex    Integer32,
        fsMIBgp4mpeImportRouteMetric     Integer32,
        fsMIBgp4mpeImportRouteVrf        DisplayString,
        fsMIBgp4mpeImportRouteAction     INTEGER
    }

fsMIBgp4mpeImportRoutePrefixAfi  OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible 
    STATUS                  current
    DESCRIPTION
    "Type of Prefix of the route to be imported."
    ::= { fsMIBgp4MpeImportRouteEntry 1 }

fsMIBgp4mpeImportRoutePrefixSafi OBJECT-TYPE
    SYNTAX                  BgpSafi
    MAX-ACCESS              not-accessible 
    STATUS                  current
    DESCRIPTION
    "SAFI of Prefix of the route to be imported. Only UNICAST (1) is allowed
    right now. Route can be imported into VRF by providing SAFI (1) and
    VRF name."
    ::= { fsMIBgp4MpeImportRouteEntry 2 }

fsMIBgp4mpeImportRoutePrefix     OBJECT-TYPE
    SYNTAX                  InetAddress
    MAX-ACCESS              not-accessible 
    STATUS                  current
    DESCRIPTION
    "Prefix of the route to be imported."
    ::= { fsMIBgp4MpeImportRouteEntry 3 }

fsMIBgp4mpeImportRoutePrefixLen   OBJECT-TYPE
    SYNTAX                   Integer32 (1..32) 
    MAX-ACCESS               not-accessible
    STATUS                   current
    DESCRIPTION
    "Prefix length of the route."
    ::= { fsMIBgp4MpeImportRouteEntry 4 }

fsMIBgp4mpeImportRouteProtocol   OBJECT-TYPE
    SYNTAX                  Integer32 (2|3|8|13)
    MAX-ACCESS              not-accessible 
    STATUS                  current
    DESCRIPTION
    "Protocol value for Non-BGP routes. 
     2- LOCAL, 
     3 - STATIC,
     8 - RIP, 
     13 - OSPF. 
     Only STATIC routes (protocol 3) can be added through this table. 
     However all non-BGP protocol (Local, Static, RIP, OSPF) routes can 
     be viewed."
    ::= { fsMIBgp4MpeImportRouteEntry 5 }

fsMIBgp4mpeImportRouteNextHop    OBJECT-TYPE
    SYNTAX                  InetAddress
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "NextHop Ipaddress for the route."
    ::= { fsMIBgp4MpeImportRouteEntry 6 }

fsMIBgp4mpeImportRouteIfIndex    OBJECT-TYPE
    SYNTAX                  Integer32 (1..2147483647)
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Interface Index of the Route"
    ::= { fsMIBgp4MpeImportRouteEntry 7 }

fsMIBgp4mpeImportRouteMetric     OBJECT-TYPE
    SYNTAX                  Integer32 (1..2147483647)
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Metric for the route being imported."
    ::= { fsMIBgp4MpeImportRouteEntry 8 }

fsMIBgp4mpeImportRouteVrf        OBJECT-TYPE
    SYNTAX                  DisplayString (SIZE (0..16))  
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Vrf in which the route should be imported. If the rotueis to be installed
    in default VRF, the value should be NULL string"
    ::= { fsMIBgp4MpeImportRouteEntry 9 }

fsMIBgp4mpeImportRouteAction     OBJECT-TYPE
    SYNTAX                  INTEGER {
		                    add (1), -- route addition
		                    delete (2) -- route deletion
			                }
    MAX-ACCESS              read-write 
    STATUS                  current
    DESCRIPTION
        "Controls addition or deletion of route."
        ::= { fsMIBgp4MpeImportRouteEntry 10 }

-- End of Import Route Table
        


-- MIB for Importing DIRECT/STATIC routes to BGP end

-- MIB for getting FSM transition history  

         
fsMIBgp4MpeFsmTransitionHistTable      OBJECT-TYPE
    SYNTAX                  SEQUENCE OF FsMIBgp4MpeFsmTransitionHistEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Gets FSM transitions history per peer" 
    ::= { fsMIBgp 28 }

fsMIBgp4MpeFsmTransitionHistEntry      OBJECT-TYPE
    SYNTAX                  FsMIBgp4MpeFsmTransitionHistEntry
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Fsm Hist entry."
    INDEX   {       fsMIBgp4ContextId, 
             		fsMIBgp4mpePeerType,
            		fsMIBgp4mpePeer 
		}
        ::= { fsMIBgp4MpeFsmTransitionHistTable 1 }

FsMIBgp4MpeFsmTransitionHistEntry ::= SEQUENCE {
        fsMIBgp4mpePeerType          InetAddressType,
        fsMIBgp4mpePeer   	         InetAddress,
        fsMIBgp4mpeFsmTransitionHist	DisplayString
    }

fsMIBgp4mpePeerType         OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Type of Peer from which FSM transition history would be read."
    ::= { fsMIBgp4MpeFsmTransitionHistEntry 1 }

fsMIBgp4mpePeer     	OBJECT-TYPE
    SYNTAX                  InetAddress
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Peer from which FSM transition history would be read."
    ::= { fsMIBgp4MpeFsmTransitionHistEntry 2 }

fsMIBgp4mpeFsmTransitionHist     OBJECT-TYPE
    SYNTAX                 DisplayString 
    MAX-ACCESS              read-only
    STATUS                  current
    DESCRIPTION
    " sequence of FSM states separated by space"
    ::= { fsMIBgp4MpeFsmTransitionHistEntry 3 }
 
-- End of FSM Transition History  Table


-- Routes Damping History Table

fsMIBgp4MpeRfd   OBJECT IDENTIFIER ::= { fsMIBgp 29 } 

fsMIBgp4MpeRfdRtDampHistTable OBJECT-TYPE
	SYNTAX          SEQUENCE OF FsMIBgp4MpeRfdRtDampHistEntry
	MAX-ACCESS      not-accessible
	STATUS          current
	DESCRIPTION 
    "Route damping history table.This table contains the figure-of-merit and 
    the route status"
	::= { fsMIBgp4MpeRfd 1 }

fsMIBgp4MpeRfdRtDampHistEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeRfdRtDampHistEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
      "Entry contains route damping history"
    	INDEX  { fsMIBgp4ContextId,
           fsMIBgp4mpePathAttrAddrPrefixAfi,
           fsMIBgp4mpePathAttrAddrPrefixSafi,
           fsMIBgp4mpePathAttrAddrPrefix,
           fsMIBgp4mpePathAttrAddrPrefixLen,
           fsMIBgp4mpePathAttrPeerType,
           fsMIBgp4mpePathAttrPeer
           }
	::= { fsMIBgp4MpeRfdRtDampHistTable 1 }

FsMIBgp4MpeRfdRtDampHistEntry ::= SEQUENCE {
    fsMIBgp4mpePathAttrAddrPrefixAfi
        InetAddressType,
    fsMIBgp4mpePathAttrAddrPrefixSafi
        BgpSafi,
    fsMIBgp4mpePathAttrAddrPrefix
        InetAddress,
    fsMIBgp4mpePathAttrAddrPrefixLen
        Integer32,
    fsMIBgp4mpePathAttrPeerType
        InetAddressType,
    fsMIBgp4mpePathAttrPeer
        InetAddress,
    fsMIBgp4mpeRfdRtFom
        Integer32,
    fsMIBgp4mpeRfdRtLastUpdtTime
        Integer32,
    fsMIBgp4mpeRfdRtState
        INTEGER,
    fsMIBgp4mpeRfdRtStatus
        INTEGER,
    fsMIBgp4mpeRfdRtFlapCount
        Integer32,
    fsMIBgp4mpeRfdRtFlapTime
        Integer32,
    fsMIBgp4mpeRfdRtReuseTime
        Integer32
    }

fsMIBgp4mpePathAttrAddrPrefixAfi OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION 
    "AFI of the route "
    ::= { fsMIBgp4MpeRfdRtDampHistEntry 1 } 

fsMIBgp4mpePathAttrAddrPrefixSafi    OBJECT-TYPE
    SYNTAX                      BgpSafi
    MAX-ACCESS                  not-accessible 
    STATUS                      current
    DESCRIPTION 
    "SAFI of the route "
    ::= { fsMIBgp4MpeRfdRtDampHistEntry 2 } 

fsMIBgp4mpePathAttrAddrPrefix OBJECT-TYPE
	SYNTAX	    InetAddress
	MAX-ACCESS  not-accessible 
	STATUS      current
	DESCRIPTION 
    "An IP address prefix in the NLRI field. This object is an IP address
    containing the prefix with the length specified by 
    fsMIBgp4mpePathAttrAddrPrefixLen. Any bits beyond the length specified by 
    bgp4PathAttrAddrPrefixLen are 
    zeroed."
	::= { fsMIBgp4MpeRfdRtDampHistEntry 3 } 

fsMIBgp4mpePathAttrAddrPrefixLen OBJECT-TYPE
	SYNTAX	    Integer32 (0..32)
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "Length in bits of the IP address prefix in NLRI field."
	::= { fsMIBgp4MpeRfdRtDampHistEntry 4 } 

fsMIBgp4mpePathAttrPeerType  OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION 
    "AFI of the peer "
    ::= { fsMIBgp4MpeRfdRtDampHistEntry 5 } 

fsMIBgp4mpePathAttrPeer OBJECT-TYPE
	SYNTAX	    InetAddress
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "The Peer remote address of the peer where the path information was 
    learned."
	::= { fsMIBgp4MpeRfdRtDampHistEntry 6 } 

fsMIBgp4mpeRfdRtFom  OBJECT-TYPE
	SYNTAX	    Integer32 (0..65535)
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION 
    "The figure-of-merit of the route"
	::= { fsMIBgp4MpeRfdRtDampHistEntry 7 } 

fsMIBgp4mpeRfdRtLastUpdtTime OBJECT-TYPE
    SYNTAX       Integer32(1..2147483647)
    MAX-ACCESS   read-only
    STATUS       current
	DESCRIPTION
    "The time when the route figure-of-merit was updated."
	::= {fsMIBgp4MpeRfdRtDampHistEntry 8 }

fsMIBgp4mpeRfdRtState    OBJECT-TYPE
	SYNTAX	        INTEGER {
                            none(1),
                            suppressed (2),
                            unsuppressed (3)
                            }
	MAX-ACCESS      read-only
	STATUS          current
	DESCRIPTION 
    "The value gives the status whether the route is suppressed or not "
	::= { fsMIBgp4MpeRfdRtDampHistEntry 9 } 

fsMIBgp4mpeRfdRtStatus    OBJECT-TYPE
	SYNTAX	        INTEGER {
                            none(1),
                            feasibleroute (2),
                            unfeasibleroute (3)
                            }
	MAX-ACCESS      read-only
	STATUS          current
	DESCRIPTION 
    "The value gives the status whether the route is  feasible or unfeasible 
    route"
	::= { fsMIBgp4MpeRfdRtDampHistEntry 10 } 

fsMIBgp4mpeRfdRtFlapCount    OBJECT-TYPE
        SYNTAX           Integer32
        MAX-ACCESS       read-only
        STATUS           current
        DESCRIPTION 
      "This value gives the number of times the route being flapped"
         ::= { fsMIBgp4MpeRfdRtDampHistEntry 11 }

fsMIBgp4mpeRfdRtFlapTime    OBJECT-TYPE
        SYNTAX            Integer32(1..2147483647)
        MAX-ACCESS        read-only
        STATUS            current
        DESCRIPTION
       "The time calculated for a route, from when a route is being flapped for 
        first time, time in seconds"
          ::= { fsMIBgp4MpeRfdRtDampHistEntry 12 }

fsMIBgp4mpeRfdRtReuseTime    OBJECT-TYPE
        SYNTAX             Integer32(1..2147483647)
        MAX-ACCESS         read-only
        STATUS             current
        DESCRIPTION
       "The time after which a route can be reused again after it moves to 
        suppressed state from unsuppressed state, time in seconds"
          ::= { fsMIBgp4MpeRfdRtDampHistEntry 13 }

-- End of routes damping history Table


--- Peers Damping History Table


fsMIBgp4MpeRfdPeerDampHistTable  OBJECT-TYPE
	SYNTAX      SEQUENCE OF FsMIBgp4MpeRfdPeerDampHistEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "Peer Damping history table. It contains the peer figure-of-merit and 
    peer status."
	::= { fsMIBgp4MpeRfd 2 }

fsMIBgp4MpeRfdPeerDampHistEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeRfdPeerDampHistEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Entry contains peer damping history"
    INDEX  { fsMIBgp4ContextId,
             fsMIBgp4mpePeerRemoteIpAddrType,
             fsMIBgp4mpePeerRemoteIpAddr
           }
	::= { fsMIBgp4MpeRfdPeerDampHistTable 1 }

FsMIBgp4MpeRfdPeerDampHistEntry ::= SEQUENCE {
    fsMIBgp4mpePeerRemoteIpAddrType
        InetAddressType,
    fsMIBgp4mpePeerRemoteIpAddr
    	InetAddress,
    fsMIBgp4mpeRfdPeerFom
        Integer32,
    fsMIBgp4mpeRfdPeerLastUpdtTime
        Integer32,
    fsMIBgp4mpeRfdPeerState
        INTEGER,
    fsMIBgp4mpeRfdPeerStatus
        INTEGER
    }

fsMIBgp4mpePeerRemoteIpAddrType  OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible 
    STATUS                  current
    DESCRIPTION 
    "AFI of the remote peer "
    ::= { fsMIBgp4MpeRfdPeerDampHistEntry 1 } 

fsMIBgp4mpePeerRemoteIpAddr OBJECT-TYPE
	SYNTAX	    InetAddress
	MAX-ACCESS  not-accessible 
	STATUS      current
	DESCRIPTION 
    "The peer remote address of the peer."
	::= { fsMIBgp4MpeRfdPeerDampHistEntry 2 } 

fsMIBgp4mpeRfdPeerFom OBJECT-TYPE
    SYNTAX       Integer32(0..65535)
    MAX-ACCESS   read-only
    STATUS       current
	DESCRIPTION
    "The current figure-of-merit of peer"
	::= {fsMIBgp4MpeRfdPeerDampHistEntry 3 }

fsMIBgp4mpeRfdPeerLastUpdtTime OBJECT-TYPE
    SYNTAX       Integer32(1..2147483647)
    MAX-ACCESS   read-only
    STATUS       current
	DESCRIPTION
    "The time when the figure-of-merit was updated."
	::= {fsMIBgp4MpeRfdPeerDampHistEntry 4 }

fsMIBgp4mpeRfdPeerState    OBJECT-TYPE
	SYNTAX	        INTEGER {
                            none(1),
                            suppressed (2),
                            unsuppressed (3)
                            }
	MAX-ACCESS      read-only
	STATUS          current
	DESCRIPTION 
    "This value gives the status whether peer is suppressed or not"
	::= {fsMIBgp4MpeRfdPeerDampHistEntry 5 }

fsMIBgp4mpeRfdPeerStatus    OBJECT-TYPE
        SYNTAX          INTEGER {
                            none(1),
                            peerup (2),
                            peerdown (3)
                            }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
    "This value gives the status whether peer is up or down"
        ::= {fsMIBgp4MpeRfdPeerDampHistEntry 6 }

-- End of Peer damping history Table


-- Routes Reuse List Table 

fsMIBgp4MpeRfdRtsReuseListTable  OBJECT-TYPE
	SYNTAX      SEQUENCE OF FsMIBgp4MpeRfdRtsReuseListEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "Routes Reuse List Table. It contains the IP prefix and prefix length."
	::= { fsMIBgp4MpeRfd 3 }

fsMIBgp4MpeRfdRtsReuseListEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeRfdRtsReuseListEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Entry contains routes reuse list"
	INDEX  {     fsMIBgp4ContextId,
                 fsMIBgp4mpeRtAfi,
                 fsMIBgp4mpeRtSafi,
		         fsMIBgp4mpeRtIPPrefix,
                 fsMIBgp4mpeRtIPPrefixLen,
                 fsMIBgp4mpeRfdRtsReusePeerType,
                 fsMIBgp4mpePeerRemAddress
           }
	::= { fsMIBgp4MpeRfdRtsReuseListTable 1 }

FsMIBgp4MpeRfdRtsReuseListEntry ::= SEQUENCE {
    fsMIBgp4mpeRtAfi
        InetAddressType,
    fsMIBgp4mpeRtSafi
        BgpSafi,
    fsMIBgp4mpeRtIPPrefix
        InetAddress,
    fsMIBgp4mpeRtIPPrefixLen
        Integer32,
    fsMIBgp4mpeRfdRtsReusePeerType
        InetAddressType,
    fsMIBgp4mpePeerRemAddress
        InetAddress,
    fsMIBgp4mpeRfdRtReuseListRtFom
        Integer32,
    fsMIBgp4mpeRfdRtReuseListRtLastUpdtTime
        Integer32,
    fsMIBgp4mpeRfdRtReuseListRtState
        INTEGER,
    fsMIBgp4mpeRfdRtReuseListRtStatus
        INTEGER
            
    }

fsMIBgp4mpeRtAfi     OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible 
    STATUS      current
    DESCRIPTION 
    "AFI of the route"
    ::= { fsMIBgp4MpeRfdRtsReuseListEntry 1 } 

fsMIBgp4mpeRtSafi    OBJECT-TYPE
    SYNTAX      BgpSafi
    MAX-ACCESS  not-accessible 
    STATUS      current
    DESCRIPTION 
    "AFI of the route"
    ::= { fsMIBgp4MpeRfdRtsReuseListEntry 2 } 

fsMIBgp4mpeRtIPPrefix OBJECT-TYPE
	SYNTAX	    InetAddress
	MAX-ACCESS  not-accessible 
	STATUS      current
	DESCRIPTION 
    "An IP address prefix in the NLRI field. This object is an IP address
    containing the prefix with the length specified by fsMIBgp4RtIPPrefixLen.
    Any bits beyond the length specified by fsMIBgp4IPPrefixLen are 
    zeroed."
	::= { fsMIBgp4MpeRfdRtsReuseListEntry 3 } 

fsMIBgp4mpeRtIPPrefixLen OBJECT-TYPE
	SYNTAX	    Integer32 (0..32)
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "Length in bits of the IP address prefix in NLRI field."
	::= { fsMIBgp4MpeRfdRtsReuseListEntry 4 } 

fsMIBgp4mpeRfdRtsReusePeerType   OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION 
    "AFI of the remote peer"
    ::= { fsMIBgp4MpeRfdRtsReuseListEntry 5 } 

fsMIBgp4mpePeerRemAddress OBJECT-TYPE
	SYNTAX	    InetAddress
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "The Peer remote address of the peer where the path information was 
    learned."
	::= { fsMIBgp4MpeRfdRtsReuseListEntry 6 } 

fsMIBgp4mpeRfdRtReuseListRtFom  OBJECT-TYPE
	SYNTAX	    Integer32 (0..65535)
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION 
    "The figure-of-merit of the route which is in the routes reuse list"
	::= {fsMIBgp4MpeRfdRtsReuseListEntry 7 } 

fsMIBgp4mpeRfdRtReuseListRtLastUpdtTime OBJECT-TYPE
    SYNTAX       Integer32(1..2147483647)
    MAX-ACCESS   read-only
    STATUS       current
	DESCRIPTION
    "The time when the route figure-of-merit was updated."
	::= {fsMIBgp4MpeRfdRtsReuseListEntry 8 }

fsMIBgp4mpeRfdRtReuseListRtState    OBJECT-TYPE
	SYNTAX	        INTEGER {
                            none(1),
                            suppressed (2),
                            unsuppressed (3)
                            }
	MAX-ACCESS      read-only
	STATUS          current
	DESCRIPTION 
    "The value gives the status whether the route is suppressed or not "
	::= { fsMIBgp4MpeRfdRtsReuseListEntry 9 } 

fsMIBgp4mpeRfdRtReuseListRtStatus    OBJECT-TYPE
	SYNTAX	        INTEGER {
                            none(1),
                            feasibleroute (2),
                            unfeasibleroute (3)
                            }
	MAX-ACCESS      read-only
	STATUS          current
	DESCRIPTION 
    "The value gives the status whether the route is  feasible or unfeasible 
    route"
	::= { fsMIBgp4MpeRfdRtsReuseListEntry 10 } 

-- End of Routes Reuse Table


--- Peer's Reuse List Table

fsMIBgp4MpeRfdPeerReuseListTable  OBJECT-TYPE
	SYNTAX      SEQUENCE OF FsMIBgp4MpeRfdPeerReuseListEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "Peer's Reuse List Table. It contains the Peer Remote Address."
	::= { fsMIBgp4MpeRfd 4 }

fsMIBgp4MpeRfdPeerReuseListEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeRfdPeerReuseListEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Entry contains routes reuse list"
    	INDEX  { fsMIBgp4ContextId,
                 fsMIBgp4mpeRfdPeerRemIpAddrType,
                 fsMIBgp4mpeRfdPeerRemIpAddr
           }
	::= {fsMIBgp4MpeRfdPeerReuseListTable  1 }

FsMIBgp4MpeRfdPeerReuseListEntry ::= SEQUENCE {
    fsMIBgp4mpeRfdPeerRemIpAddrType
        InetAddressType,
    fsMIBgp4mpeRfdPeerRemIpAddr
    	InetAddress,
    fsMIBgp4mpeRfdPeerReuseListPeerFom
        Integer32,
    fsMIBgp4mpeRfdPeerReuseListLastUpdtTime 
        Integer32,
    fsMIBgp4mpeRfdPeerReuseListPeerState
        INTEGER,
    fsMIBgp4mpeRfdPeerReuseListPeerStatus
        INTEGER

    }

fsMIBgp4mpeRfdPeerRemIpAddrType  OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible 
    STATUS                  current
    DESCRIPTION 
    "AFI of the peer"
    ::= { fsMIBgp4MpeRfdPeerReuseListEntry 1 } 

fsMIBgp4mpeRfdPeerRemIpAddr OBJECT-TYPE
	SYNTAX	    InetAddress
	MAX-ACCESS  not-accessible 
	STATUS      current
	DESCRIPTION 
    "The peer remote address of the peer which is in the peer's reuse list."
	::= { fsMIBgp4MpeRfdPeerReuseListEntry 2 } 

fsMIBgp4mpeRfdPeerReuseListPeerFom OBJECT-TYPE
    SYNTAX       Integer32(0..65535)
    MAX-ACCESS   read-only
    STATUS       current
	DESCRIPTION
    "The current figure-of-merit of peer"
	::= {fsMIBgp4MpeRfdPeerReuseListEntry 3 }

fsMIBgp4mpeRfdPeerReuseListLastUpdtTime OBJECT-TYPE
    SYNTAX       Integer32(1..2147483647)
    MAX-ACCESS   read-only
    STATUS       current
	DESCRIPTION
    "The time when the figure-of-merit was updated."
	::= {fsMIBgp4MpeRfdPeerReuseListEntry 4 }


fsMIBgp4mpeRfdPeerReuseListPeerState    OBJECT-TYPE
	SYNTAX	        INTEGER {
                            none(1),
                            suppressed (2),
                            unsuppressed (3)
                            }
	MAX-ACCESS      read-only
	STATUS          current
	DESCRIPTION 
    "This value gives the status whether peer is suppressed or not"
	::= {fsMIBgp4MpeRfdPeerReuseListEntry 5 }

fsMIBgp4mpeRfdPeerReuseListPeerStatus    OBJECT-TYPE
	SYNTAX	        INTEGER {
                            none(1),
                            peerup (2),
                            peerdown (3)
                            }
	MAX-ACCESS      read-only
	STATUS          current
	DESCRIPTION 
    "This value gives the status whether peer is up or down"
	::= {fsMIBgp4MpeRfdPeerReuseListEntry 6 }

-- End of Peer's reuse Table


-- MIB FOR fsMIBgp_ROUTEFLAPDAMPING end
-- MIB FOR fsMIBgp_COMMUNITY


--- Routes Additive Community Table
--- Represents the additive communities configured for
--- destinations.

fsMIBgp4MpeComm   OBJECT IDENTIFIER ::= { fsMIBgp 30 } 

fsMIBgp4MpeCommRouteAddCommTable OBJECT-TYPE
	SYNTAX        SEQUENCE OF FsMIBgp4MpeCommRouteAddCommEntry
	MAX-ACCESS    not-accessible
	STATUS        current
	DESCRIPTION 
    "This table is used to configure additive communities
     for a given destination." 
	::= {fsMIBgp4MpeComm 1 }

fsMIBgp4MpeCommRouteAddCommEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeCommRouteAddCommEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Routes configured additive communities Table Entry"
    INDEX  {fsMIBgp4ContextId,
            fsMIBgp4mpeAddCommRtAfi,
            fsMIBgp4mpeAddCommRtSafi,
            fsMIBgp4mpeAddCommIpNetwork,
            fsMIBgp4mpeAddCommIpPrefixLen,
            fsMIBgp4mpeAddCommVal
          }
	::= { fsMIBgp4MpeCommRouteAddCommTable 1 }

FsMIBgp4MpeCommRouteAddCommEntry ::= SEQUENCE {
    fsMIBgp4mpeAddCommRtAfi
        InetAddressType,
    fsMIBgp4mpeAddCommRtSafi
        BgpSafi,
    fsMIBgp4mpeAddCommIpNetwork
        InetAddress,
    fsMIBgp4mpeAddCommIpPrefixLen
        Integer32,
    fsMIBgp4mpeAddCommVal
        Unsigned32,
    fsMIBgp4mpeAddCommRowStatus
        RowStatus
    }

fsMIBgp4mpeAddCommRtAfi  OBJECT-TYPE
    SYNTAX          InetAddressType
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
    "AFI of IP address of the destination"
    ::= { fsMIBgp4MpeCommRouteAddCommEntry 1 } 

fsMIBgp4mpeAddCommRtSafi OBJECT-TYPE
    SYNTAX          BgpSafi
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
    "SAFI of IP address of the destination"
    ::= { fsMIBgp4MpeCommRouteAddCommEntry 2 } 

fsMIBgp4mpeAddCommIpNetwork OBJECT-TYPE
	SYNTAX	   InetAddress
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "IP address of the destination"
	::= { fsMIBgp4MpeCommRouteAddCommEntry 3 } 

fsMIBgp4mpeAddCommIpPrefixLen   OBJECT-TYPE
	SYNTAX	    Integer32 (1..32)
	MAX-ACCESS   not-accessible
	STATUS       current
	DESCRIPTION 
    "IP prefix length for the destination"
	::= { fsMIBgp4MpeCommRouteAddCommEntry 4 } 

fsMIBgp4mpeAddCommVal    OBJECT-TYPE
	SYNTAX	        Unsigned32  (65536..4294901759|4294967041..4294967043)
	MAX-ACCESS       not-accessible
	STATUS           current
	DESCRIPTION 
    "Additive Community configured for the Route"
	::= { fsMIBgp4MpeCommRouteAddCommEntry 5 } 

fsMIBgp4mpeAddCommRowStatus    OBJECT-TYPE
	SYNTAX	         RowStatus
	MAX-ACCESS	 read-create
	STATUS	         current
	DESCRIPTION 
	"Row status for creating entries into this table.This object can be set
     only if fsMIBgp4LocalAS is configured."
	::= { fsMIBgp4MpeCommRouteAddCommEntry 6 } 

-- End of Routes Additive Table


-- Routes Delete Community Table
-- Represents the communities to be deleted for the
-- destinations.

fsMIBgp4MpeCommRouteDeleteCommTable OBJECT-TYPE
	SYNTAX        SEQUENCE OF FsMIBgp4MpeCommRouteDeleteCommEntry
	MAX-ACCESS    not-accessible
	STATUS        current
	DESCRIPTION 
    "This table is used to configure delete communities
     for a given destination."
	::= { fsMIBgp4MpeComm 2 }

fsMIBgp4MpeCommRouteDeleteCommEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeCommRouteDeleteCommEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Routes configured delete communities Table Entry"
    INDEX  {fsMIBgp4ContextId,
            fsMIBgp4mpeDeleteCommRtAfi,
            fsMIBgp4mpeDeleteCommRtSafi,
            fsMIBgp4mpeDeleteCommIpNetwork,
            fsMIBgp4mpeDeleteCommIpPrefixLen,
            fsMIBgp4mpeDeleteCommVal
          }
	::= { fsMIBgp4MpeCommRouteDeleteCommTable 1 }

FsMIBgp4MpeCommRouteDeleteCommEntry ::= SEQUENCE {
    fsMIBgp4mpeDeleteCommRtAfi
        InetAddressType,
    fsMIBgp4mpeDeleteCommRtSafi
        BgpSafi,
    fsMIBgp4mpeDeleteCommIpNetwork
        InetAddress,
    fsMIBgp4mpeDeleteCommIpPrefixLen
        Integer32,
    fsMIBgp4mpeDeleteCommVal
        Unsigned32,
    fsMIBgp4mpeDeleteCommRowStatus
	     RowStatus
    }

fsMIBgp4mpeDeleteCommRtAfi   OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION 
    "AFI of IP address of the destination"
    ::= { fsMIBgp4MpeCommRouteDeleteCommEntry 1 } 

fsMIBgp4mpeDeleteCommRtSafi  OBJECT-TYPE
    SYNTAX              BgpSafi
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION 
    "SAFI of IP address of the destination"
    ::= { fsMIBgp4MpeCommRouteDeleteCommEntry 2 } 

fsMIBgp4mpeDeleteCommIpNetwork OBJECT-TYPE
	SYNTAX	   InetAddress
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "IP address of the destination"
	::= { fsMIBgp4MpeCommRouteDeleteCommEntry 3 } 

fsMIBgp4mpeDeleteCommIpPrefixLen   OBJECT-TYPE
	SYNTAX	    Integer32 (1..32)
	MAX-ACCESS   not-accessible
	STATUS       current
	DESCRIPTION 
    "IP prefix length for the destination"
	::= { fsMIBgp4MpeCommRouteDeleteCommEntry 4 } 

fsMIBgp4mpeDeleteCommVal    OBJECT-TYPE
	SYNTAX	        Unsigned32  (65536..4294901759|4294967041..4294967043)
	MAX-ACCESS       not-accessible
	STATUS           current
	DESCRIPTION 
    "Delete Community configured for the Route"
	::= { fsMIBgp4MpeCommRouteDeleteCommEntry 5 } 

fsMIBgp4mpeDeleteCommRowStatus    OBJECT-TYPE
	SYNTAX	         RowStatus
	MAX-ACCESS	      read-create
	STATUS	         current
	DESCRIPTION 
	"Row status for creating entries into this table.This object can be set 
         only if fsMIBgp4LocalAS is configured."
	::= { fsMIBgp4MpeCommRouteDeleteCommEntry 6 } 

-- End of Routes delete community Table


-- Routes Community Set Status Table


-- Represents the status or local policy (can be either, addition of 
-- communities, deletion of communities or both or complete
-- ommission of communities) for destinations.

fsMIBgp4MpeCommRouteCommSetStatusTable OBJECT-TYPE
	SYNTAX        SEQUENCE OF FsMIBgp4MpeCommRouteCommSetStatusEntry
	MAX-ACCESS    not-accessible
	STATUS        current
	DESCRIPTION 
    "This table is used to configure the local policy of communities
    for a given destination."
	::= { fsMIBgp4MpeComm  3 }

fsMIBgp4MpeCommRouteCommSetStatusEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeCommRouteCommSetStatusEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Routes configured delete communities Table Entry"
    INDEX  {fsMIBgp4ContextId,
            fsMIBgp4mpeCommSetStatusAfi,
            fsMIBgp4mpeCommSetStatusSafi,
            fsMIBgp4mpeCommSetStatusIpNetwork,
            fsMIBgp4mpeCommSetStatusIpPrefixLen
          }
	::= { fsMIBgp4MpeCommRouteCommSetStatusTable 1 }

FsMIBgp4MpeCommRouteCommSetStatusEntry ::= SEQUENCE {
    fsMIBgp4mpeCommSetStatusAfi
        InetAddressType,
    fsMIBgp4mpeCommSetStatusSafi
        BgpSafi,
    fsMIBgp4mpeCommSetStatusIpNetwork
        InetAddress,
    fsMIBgp4mpeCommSetStatusIpPrefixLen
        Integer32,
    fsMIBgp4mpeCommSetStatus
        INTEGER,
    fsMIBgp4mpeCommSetStatusRowStatus
	RowStatus
    }

fsMIBgp4mpeCommSetStatusAfi  OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION 
    "AFI of IP address of the destination"
    ::= { fsMIBgp4MpeCommRouteCommSetStatusEntry 1 } 

fsMIBgp4mpeCommSetStatusSafi OBJECT-TYPE
    SYNTAX              BgpSafi
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION 
    "SAFI of IP address of the destination"
    ::= { fsMIBgp4MpeCommRouteCommSetStatusEntry 2 } 

fsMIBgp4mpeCommSetStatusIpNetwork OBJECT-TYPE
	SYNTAX	   InetAddress
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "IP address of the destination"
	::= { fsMIBgp4MpeCommRouteCommSetStatusEntry 3 } 

fsMIBgp4mpeCommSetStatusIpPrefixLen   OBJECT-TYPE
	SYNTAX	    Integer32 (1..32)
	MAX-ACCESS   not-accessible
	STATUS       current
	DESCRIPTION 
    "IP prefix length for the destination"
	::= { fsMIBgp4MpeCommRouteCommSetStatusEntry 4 } 

fsMIBgp4mpeCommSetStatus OBJECT-TYPE
	SYNTAX	        INTEGER {
                                 none    (1),
                                 set     (2),
                                 setnone (3),
                                 modify  (4)
                              }
	MAX-ACCESS       read-create
	STATUS           current
	DESCRIPTION 
    "Community Set status for the Route. 
       o none     - is for read-only 
       o set      - to send only with configured additive communities
       o setnone  - to send without communities, 
       o modify   - to strip delete communities in received 
                    communities and add additive communities
     This object can be set only if fsMIBgp4LocalAs is configured." 
    DEFVAL { 4 }
	::= { fsMIBgp4MpeCommRouteCommSetStatusEntry 5 } 

fsMIBgp4mpeCommSetStatusRowStatus    OBJECT-TYPE
	SYNTAX	         RowStatus
	MAX-ACCESS	 read-create
	STATUS	         current
	DESCRIPTION 
	"Row status for creating entries into this table.
     This object can be set only if fsMIBgp4LocalAs is configured."
	::= { fsMIBgp4MpeCommRouteCommSetStatusEntry 6 } 

-- End of Routes community set status Table


-- MIB FOR fsMIBgp_COMMUNITY end
-- MIB FOR fsMIBgp_EXTCOMM

--- Routes Additive Ext-Community Table

--- Represents the additive extended communities configured for
--- destinations.
fsMIBgp4MpeExtComm   OBJECT IDENTIFIER ::= { fsMIBgp 31 } 

fsMIBgp4MpeExtCommRouteAddExtCommTable OBJECT-TYPE
	SYNTAX        SEQUENCE OF FsMIBgp4MpeExtCommRouteAddExtCommEntry
	MAX-ACCESS    not-accessible
	STATUS        current
	DESCRIPTION 
    "This table is used to configure additive extended communities
     for a given destination."
	::= { fsMIBgp4MpeExtComm 1 }

fsMIBgp4MpeExtCommRouteAddExtCommEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeExtCommRouteAddExtCommEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Routes configured additive ext-communities Table Entry"
    INDEX  {fsMIBgp4ContextId,
            fsMIBgp4mpeAddExtCommRtAfi,
            fsMIBgp4mpeAddExtCommRtSafi,
            fsMIBgp4mpeAddExtCommIpNetwork,
            fsMIBgp4mpeAddExtCommIpPrefixLen,
            fsMIBgp4mpeAddExtCommVal
           }
	::= { fsMIBgp4MpeExtCommRouteAddExtCommTable 1 }

FsMIBgp4MpeExtCommRouteAddExtCommEntry ::= SEQUENCE {
    fsMIBgp4mpeAddExtCommRtAfi
        InetAddressType,
    fsMIBgp4mpeAddExtCommRtSafi
        BgpSafi,
    fsMIBgp4mpeAddExtCommIpNetwork
        InetAddress,
    fsMIBgp4mpeAddExtCommIpPrefixLen
        Integer32,
    fsMIBgp4mpeAddExtCommVal
        OCTET STRING,
    fsMIBgp4mpeAddExtCommRowStatus
	     RowStatus
    }

fsMIBgp4mpeAddExtCommRtAfi   OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION 
    "AFI of IP address of the destination"
    ::= { fsMIBgp4MpeExtCommRouteAddExtCommEntry 1 } 

fsMIBgp4mpeAddExtCommRtSafi  OBJECT-TYPE
    SYNTAX              BgpSafi
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION 
    "AFI of IP address of the destination"
    ::= { fsMIBgp4MpeExtCommRouteAddExtCommEntry 2 } 

fsMIBgp4mpeAddExtCommIpNetwork OBJECT-TYPE
	SYNTAX	   InetAddress
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "IP address of the destination"
	::= { fsMIBgp4MpeExtCommRouteAddExtCommEntry 3 } 

fsMIBgp4mpeAddExtCommIpPrefixLen   OBJECT-TYPE
	SYNTAX	    Integer32 (1..32)
	MAX-ACCESS   not-accessible
	STATUS       current
	DESCRIPTION 
    "IP prefix length for the destination"
	::= { fsMIBgp4MpeExtCommRouteAddExtCommEntry 4 } 

fsMIBgp4mpeAddExtCommVal    OBJECT-TYPE
	SYNTAX	        OCTET STRING  (SIZE(8)) 
	MAX-ACCESS       not-accessible
	STATUS           current
	DESCRIPTION 
    "Additive Ext-Community for the destination"
	::= { fsMIBgp4MpeExtCommRouteAddExtCommEntry 5 } 

fsMIBgp4mpeAddExtCommRowStatus    OBJECT-TYPE
	SYNTAX	         RowStatus
	MAX-ACCESS	     read-create
	STATUS	         current
	DESCRIPTION 
	"Row status for creating entries into this table.This object can be set
     only if fsMIBgp4LocalAs is configured."
	::= { fsMIBgp4MpeExtCommRouteAddExtCommEntry 6 } 

-- End of Routes Additive Ext-community Table


--- Routes Delete Ext-Community Table

--- Represents the extended communities to be deleted for the
--- destinations.

fsMIBgp4MpeExtCommRouteDeleteExtCommTable OBJECT-TYPE
	SYNTAX        SEQUENCE OF FsMIBgp4MpeExtCommRouteDeleteExtCommEntry
	MAX-ACCESS    not-accessible
	STATUS        current
	DESCRIPTION 
    "This table is used to configure delete extended communities
     for a given destination."
	::= { fsMIBgp4MpeExtComm 2 }

fsMIBgp4MpeExtCommRouteDeleteExtCommEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeExtCommRouteDeleteExtCommEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Routes configured delete ext-communities Table Entry"
    INDEX  {fsMIBgp4ContextId,
            fsMIBgp4mpeDeleteExtCommRtAfi,
            fsMIBgp4mpeDeleteExtCommRtSafi,
            fsMIBgp4mpeDeleteExtCommIpNetwork,
            fsMIBgp4mpeDeleteExtCommIpPrefixLen,
            fsMIBgp4mpeDeleteExtCommVal
           }
	::= { fsMIBgp4MpeExtCommRouteDeleteExtCommTable 1 }

FsMIBgp4MpeExtCommRouteDeleteExtCommEntry ::= SEQUENCE {
    fsMIBgp4mpeDeleteExtCommRtAfi
        InetAddressType,
    fsMIBgp4mpeDeleteExtCommRtSafi
        BgpSafi,
    fsMIBgp4mpeDeleteExtCommIpNetwork
        InetAddress,
    fsMIBgp4mpeDeleteExtCommIpPrefixLen
        Integer32,
    fsMIBgp4mpeDeleteExtCommVal
	     OCTET STRING,
    fsMIBgp4mpeDeleteExtCommRowStatus
	     RowStatus
    }

fsMIBgp4mpeDeleteExtCommRtAfi    OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION 
    "AFI of IP address of the destination"
    ::= { fsMIBgp4MpeExtCommRouteDeleteExtCommEntry 1 } 

fsMIBgp4mpeDeleteExtCommRtSafi   OBJECT-TYPE
    SYNTAX                  BgpSafi
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION 
    "SAFI of IP address of the destination"
    ::= { fsMIBgp4MpeExtCommRouteDeleteExtCommEntry 2 } 
fsMIBgp4mpeDeleteExtCommIpNetwork OBJECT-TYPE
	SYNTAX	   InetAddress
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "IP address of the destination"
	::= { fsMIBgp4MpeExtCommRouteDeleteExtCommEntry 3 } 

fsMIBgp4mpeDeleteExtCommIpPrefixLen   OBJECT-TYPE
	SYNTAX	    Integer32 (1..32)
	MAX-ACCESS   not-accessible
	STATUS       current
	DESCRIPTION 
    "IP prefix length for the destination"
	::= { fsMIBgp4MpeExtCommRouteDeleteExtCommEntry 4 } 

fsMIBgp4mpeDeleteExtCommVal    OBJECT-TYPE
	SYNTAX	        OCTET STRING  (SIZE(8)) 
	MAX-ACCESS       not-accessible
	STATUS           current
	DESCRIPTION 
    "Delete Ext-Community for the destination"
	::= { fsMIBgp4MpeExtCommRouteDeleteExtCommEntry 5 } 

fsMIBgp4mpeDeleteExtCommRowStatus    OBJECT-TYPE
	SYNTAX	         RowStatus
	MAX-ACCESS	      read-create
	STATUS	         current
	DESCRIPTION 
	"Row status to create entries into this table. This object can be set only
         if fsMIBgp4LocalAs is configured."
	::= { fsMIBgp4MpeExtCommRouteDeleteExtCommEntry 6 } 

-- End of Routes delete Ext-Community Table

-- Routes Ext-Community Set Status Table

-- Represents the status or local policy (can be either, addition of extended
-- communities, deletion of extended communities or both or complete
-- ommission of extended communities) for destinations.

fsMIBgp4MpeExtCommRouteExtCommSetStatusTable OBJECT-TYPE
	SYNTAX        SEQUENCE OF FsMIBgp4MpeExtCommRouteExtCommSetStatusEntry
	MAX-ACCESS    not-accessible
	STATUS        current
	DESCRIPTION 
    "This table is used to configure the local policy of extended communities
     for a given destination."
	::= {fsMIBgp4MpeExtComm 3 }

fsMIBgp4MpeExtCommRouteExtCommSetStatusEntry  OBJECT-TYPE
	SYNTAX      FsMIBgp4MpeExtCommRouteExtCommSetStatusEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION
    "Routes configured delete ext-communities Table Entry"
    INDEX  { fsMIBgp4ContextId,
             fsMIBgp4mpeExtCommSetStatusRtAfi,
             fsMIBgp4mpeExtCommSetStatusRtSafi,
             fsMIBgp4mpeExtCommSetStatusIpNetwork,
             fsMIBgp4mpeExtCommSetStatusIpPrefixLen
           }
	::= { fsMIBgp4MpeExtCommRouteExtCommSetStatusTable 1 }

FsMIBgp4MpeExtCommRouteExtCommSetStatusEntry ::= SEQUENCE {
    fsMIBgp4mpeExtCommSetStatusRtAfi
        InetAddressType,
    fsMIBgp4mpeExtCommSetStatusRtSafi
        BgpSafi,
    fsMIBgp4mpeExtCommSetStatusIpNetwork
        InetAddress,
    fsMIBgp4mpeExtCommSetStatusIpPrefixLen
        Integer32,
    fsMIBgp4mpeExtCommSetStatus
        INTEGER,
    fsMIBgp4mpeExtCommSetStatusRowStatus
	RowStatus
    }

fsMIBgp4mpeExtCommSetStatusRtAfi OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION 
    "AFI of IP address of the destination"
    ::= { fsMIBgp4MpeExtCommRouteExtCommSetStatusEntry 1 } 

fsMIBgp4mpeExtCommSetStatusRtSafi    OBJECT-TYPE
    SYNTAX                      BgpSafi
    MAX-ACCESS                  not-accessible
    STATUS                      current
    DESCRIPTION 
    "SAFI of IP address of the destination"
    ::= { fsMIBgp4MpeExtCommRouteExtCommSetStatusEntry 2 } 

fsMIBgp4mpeExtCommSetStatusIpNetwork OBJECT-TYPE
	SYNTAX	   InetAddress
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "IP address of the destination"
	::= { fsMIBgp4MpeExtCommRouteExtCommSetStatusEntry 3 } 

fsMIBgp4mpeExtCommSetStatusIpPrefixLen   OBJECT-TYPE
	SYNTAX	    Integer32 (1..32)
	MAX-ACCESS   not-accessible
	STATUS       current
	DESCRIPTION 
    "IP prefix length of the destination"
	::= { fsMIBgp4MpeExtCommRouteExtCommSetStatusEntry 4 } 

fsMIBgp4mpeExtCommSetStatus OBJECT-TYPE
	SYNTAX	        INTEGER {
                                 none    (1),
                                 set     (2),
                                 setnone (3),
                                 modify  (4)
                              }
	MAX-ACCESS       read-create
	STATUS           current
	DESCRIPTION 
    "Ext-Community Set status for the Route. 
       o none     - is for read-only 
       o set      - to send only with configured additive ext-communities
       o setnone  - to send without ext-communities, 
       o modify   - to strip delete ext-communities in received extended 
                    communities and add additive ext-communities.
     This object can be set only if fsMIBgp4LocalAs is configured." 
    DEFVAL { 4 }
	::= { fsMIBgp4MpeExtCommRouteExtCommSetStatusEntry 5 } 

fsMIBgp4mpeExtCommSetStatusRowStatus    OBJECT-TYPE
	SYNTAX	         RowStatus
	MAX-ACCESS	      read-create
	STATUS	         current
	DESCRIPTION 
	"Row status to create entries into this table. This object can be set only
         if fsMIBgp4LocalAs is configured."
	::= { fsMIBgp4MpeExtCommRouteExtCommSetStatusEntry 6 } 

-- End of Routes Ext-Community set status table



-- Peer Link Bandwidth Table

-- Represents the link bandwidth for a given peer.

fsMIBgp4MpePeerLinkBwTable   OBJECT-TYPE
	SYNTAX              SEQUENCE OF FsMIBgp4MpePeerLinkBwEntry
	MAX-ACCESS          not-accessible
	STATUS              current
	DESCRIPTION 
    "This table is used to configure the link bandwidths for a given peer"
	::= {fsMIBgp4MpeExtComm 4}

fsMIBgp4MpePeerLinkBwEntry   OBJECT-TYPE
	SYNTAX              FsMIBgp4MpePeerLinkBwEntry
	MAX-ACCESS          not-accessible
	STATUS              current
	DESCRIPTION
    "Peer Link Bandwidth Table Entry"
    	INDEX  { fsMIBgp4ContextId, 
                 fsMIBgp4mpePeerLinkType,
                 fsMIBgp4mpePeerLinkRemAddr
          }
	::= { fsMIBgp4MpePeerLinkBwTable 1 }

FsMIBgp4MpePeerLinkBwEntry ::= SEQUENCE {
    fsMIBgp4mpePeerLinkType
        InetAddressType,
    fsMIBgp4mpePeerLinkRemAddr
    	InetAddress,
    fsMIBgp4mpeLinkBandWidth
      Unsigned32,
    fsMIBgp4mpePeerLinkBwRowStatus
		RowStatus
    }

fsMIBgp4mpePeerLinkType      OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION 
    "AFI of IP address of the Peer"
    ::= { fsMIBgp4MpePeerLinkBwEntry 1 } 

fsMIBgp4mpePeerLinkRemAddr   OBJECT-TYPE
	SYNTAX	            InetAddress
	MAX-ACCESS           not-accessible
	STATUS               current
	DESCRIPTION 
    "IP address of the Peer"
	::= { fsMIBgp4MpePeerLinkBwEntry 2 } 

fsMIBgp4mpeLinkBandWidth OBJECT-TYPE
	SYNTAX	        Unsigned32 (7000..4294967295)
	MAX-ACCESS       read-create
	STATUS           current
	DESCRIPTION 
    "Link Bandwidth in bytes per second.This object can be set only if 
     fsMIBgp4LocalAs is configured."
	::= { fsMIBgp4MpePeerLinkBwEntry 3 } 

fsMIBgp4mpePeerLinkBwRowStatus   OBJECT-TYPE
	SYNTAX	                RowStatus
	MAX-ACCESS	             read-create
	STATUS	                current
	DESCRIPTION 
    "Row Status to create entries into this table.
     This object can be set only if fsMIBgp4LocalAs is configured." 
	::= { fsMIBgp4MpePeerLinkBwEntry 4 } 

-- End of Peer Link Table

-- MIB FOR fsMIBgp_EXTCOMM end
-- MIB FOR fsMIBgp_CABILITIES

fsMIBgp4MpeCaps   OBJECT IDENTIFIER ::= { fsMIBgp 32 }
-- Supported Capabilities Table

fsMIBgp4MpeCapSupportedCapsTable  OBJECT-TYPE
	SYNTAX      SEQUENCE OF FsMIBgp4MpeCapSupportedCapsEntry
	MAX-ACCESS  not-accessible
	STATUS      current
	DESCRIPTION 
    "Supported Capabilities Table. This table contains, the capabilities
     that are supported for particular peer"
	::= {fsMIBgp4MpeCaps 1 }

fsMIBgp4MpeCapSupportedCapsEntry OBJECT-TYPE
	SYNTAX                  FsMIBgp4MpeCapSupportedCapsEntry
	MAX-ACCESS              not-accessible
	STATUS                  current
	DESCRIPTION
    "Entry contains supported Capabilites"
	INDEX  { fsMIBgp4ContextId,
                 fsMIBgp4mpeCapPeerType,
		 fsMIBgp4mpeCapPeerRemoteIpAddr,
                 fsMIBgp4mpeSupportedCapabilityCode, 
                 fsMIBgp4mpeSupportedCapabilityLength,
                 fsMIBgp4mpeSupportedCapabilityValue
           }
	::= { fsMIBgp4MpeCapSupportedCapsTable 1 }

FsMIBgp4MpeCapSupportedCapsEntry ::= SEQUENCE {
    fsMIBgp4mpeCapPeerType
        InetAddressType,
    fsMIBgp4mpeCapPeerRemoteIpAddr
    	InetAddress,
    fsMIBgp4mpeSupportedCapabilityCode
        Integer32,
    fsMIBgp4mpeSupportedCapabilityLength
        Integer32,
    fsMIBgp4mpeSupportedCapabilityValue
        OCTET STRING,
    fsMIBgp4mpeCapSupportedCapsRowStatus
	 RowStatus,
    fsMIBgp4mpeCapAnnouncedStatus
        INTEGER,
    fsMIBgp4mpeCapReceivedStatus
        INTEGER,
    fsMIBgp4mpeCapNegotiatedStatus
        INTEGER,
    fsMIBgp4mpeCapConfiguredStatus
        INTEGER
    }

fsMIBgp4mpeCapPeerType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "The remote IP Address of Peer "
    ::= { fsMIBgp4MpeCapSupportedCapsEntry 1 }

fsMIBgp4mpeCapPeerRemoteIpAddr OBJECT-TYPE
	SYNTAX	    InetAddress (SIZE (4..16)) 
	MAX-ACCESS  not-accessible 
	STATUS      current
	DESCRIPTION 
    "The remote IP Address of Peer "
	::= { fsMIBgp4MpeCapSupportedCapsEntry 2 } 

fsMIBgp4mpeSupportedCapabilityCode   OBJECT-TYPE
	SYNTAX	                    Integer32 (0..255)
	MAX-ACCESS                  not-accessible
	STATUS                      current
	DESCRIPTION 
    "BGP-4 Capability Advertisement Capability Code that is supported for 
     peer."

	::= { fsMIBgp4MpeCapSupportedCapsEntry 3 } 

fsMIBgp4mpeSupportedCapabilityLength OBJECT-TYPE
	SYNTAX	                    Integer32 (0..251)
	MAX-ACCESS                  not-accessible 
	STATUS                      current
	DESCRIPTION 
    "The length of the supported Capability data. Currently the
     max size is set as 16. Update the BGP_MAX_CAP_DATA_SIZE in
     inc/system.size file or BGP_DEF_MAX_CAP_DATA_SIZE in
     inc/size.h to increase this MAX value."
	::= { fsMIBgp4MpeCapSupportedCapsEntry 4 } 

fsMIBgp4mpeSupportedCapabilityValue  OBJECT-TYPE
	SYNTAX	                    OCTET STRING (SIZE(0..64)) 
	MAX-ACCESS                  not-accessible 
	STATUS                      current
	DESCRIPTION 
    "The value of the supported Capability"
	::= { fsMIBgp4MpeCapSupportedCapsEntry 5 } 

fsMIBgp4mpeCapSupportedCapsRowStatus OBJECT-TYPE
	SYNTAX	                    RowStatus
	MAX-ACCESS                  read-create
	STATUS	                    current
	DESCRIPTION 
	" The variable displays the status of the entry.Setting it to
        'invalid' has the effect of rendering it inoperative."
	::= { fsMIBgp4MpeCapSupportedCapsEntry 6 } 

fsMIBgp4mpeCapAnnouncedStatus        OBJECT-TYPE
    SYNTAX                      INTEGER {
                                    announced (1),
                                    notAnnounced (2)
                                  }
    MAX-ACCESS                  read-only
    STATUS                      current
    DESCRIPTION 
    " The variable displays the status whether the capability is 
      announced to the peer or not." 
    ::= { fsMIBgp4MpeCapSupportedCapsEntry 7 } 

fsMIBgp4mpeCapReceivedStatus        OBJECT-TYPE
    SYNTAX                      INTEGER {
                                    received (1),
                                    notReceived (2)
                                  }
    MAX-ACCESS                  read-only
    STATUS                      current
    DESCRIPTION 
    " The variable displays the status whether the capability is 
      received from the peer or not." 
    ::= { fsMIBgp4MpeCapSupportedCapsEntry 8 } 


fsMIBgp4mpeCapNegotiatedStatus       OBJECT-TYPE
    SYNTAX                      INTEGER {
                                    negotiated (1),
                                    notNegotiated(2)
                                  }
    MAX-ACCESS                  read-only
    STATUS                      current
    DESCRIPTION 
    " The variable displays the status whether the capability is 
      Negotiated to the peer or not." 
    ::= { fsMIBgp4MpeCapSupportedCapsEntry 9 }
    
fsMIBgp4mpeCapConfiguredStatus       OBJECT-TYPE
    SYNTAX                      INTEGER {
                                    configured (1),
                                    automatic (2)
                                  }
    MAX-ACCESS                  read-only
    STATUS                      current
    DESCRIPTION
    "The variable displays the status whether the capability is
     enabled by default or through configuration"
    ::= { fsMIBgp4MpeCapSupportedCapsEntry 10 }
  

-- MIB FOR Route Refresh STARTS
fsMIBgp4MpeRtRefresh   OBJECT IDENTIFIER ::= {fsMIBgp 33 } 

-- Route Refresh Inbound Table 

    fsMIBgp4MpeRtRefreshInboundTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF FsMIBgp4MpeRtRefreshInboundEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Route Refresh Inbound Table"
        ::= { fsMIBgp4MpeRtRefresh 1 }

    fsMIBgp4MpeRtRefreshInboundEntry OBJECT-TYPE
        SYNTAX     FsMIBgp4MpeRtRefreshInboundEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Entry corresponds to Route Refresh Inbound."
        INDEX {
                fsMIBgp4ContextId,
                fsMIBgp4mpeRtRefreshInboundPeerType,
                fsMIBgp4mpeRtRefreshInboundPeerAddr,
                fsMIBgp4mpeRtRefreshInboundAfi,
                fsMIBgp4mpeRtRefreshInboundSafi
              }
        ::= { fsMIBgp4MpeRtRefreshInboundTable 1 }

    FsMIBgp4MpeRtRefreshInboundEntry ::= SEQUENCE {
        fsMIBgp4mpeRtRefreshInboundPeerType
           InetAddressType,
        fsMIBgp4mpeRtRefreshInboundPeerAddr
           InetAddress,
        fsMIBgp4mpeRtRefreshInboundAfi
           InetAddressType,
        fsMIBgp4mpeRtRefreshInboundSafi
           BgpSafi,
        fsMIBgp4mpeRtRefreshInboundRequest
          INTEGER,
        fsMIBgp4mpeRtRefreshInboundPrefixFilter
          INTEGER
        }

    fsMIBgp4mpeRtRefreshInboundPeerType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Address Family Identifier of the peer remote address"
        ::= { fsMIBgp4MpeRtRefreshInboundEntry 1 }

    fsMIBgp4mpeRtRefreshInboundPeerAddr OBJECT-TYPE
        SYNTAX    InetAddress
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The IP address of the peeri for which the Route Refresh request has to
        be issued."
        ::= { fsMIBgp4MpeRtRefreshInboundEntry 2 }
        
    fsMIBgp4mpeRtRefreshInboundAfi   OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "The AFI for which the Route-Refresh message is to be sent"
        ::= { fsMIBgp4MpeRtRefreshInboundEntry 3 }

    fsMIBgp4mpeRtRefreshInboundSafi OBJECT-TYPE
        SYNTAX      BgpSafi
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "The SAFI for which the Route-Refresh message is to be sent"
        ::= { fsMIBgp4MpeRtRefreshInboundEntry 4 }

    fsMIBgp4mpeRtRefreshInboundRequest OBJECT-TYPE
        SYNTAX     INTEGER
                   {
                       true (1)
                   }

        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
        "Setting this object triggers the sending of the Route Refresh message
        to the peer. This object will be cleared once the Route Refresh message
        is sent to the peer. Route-Refresh message support is a default feature
        If not negotiated via capability negotiation, inbound soft-reconfig is
        internally done on setting this object."
        ::= { fsMIBgp4MpeRtRefreshInboundEntry 5 }

        fsMIBgp4mpeRtRefreshInboundPrefixFilter OBJECT-TYPE
        SYNTAX     INTEGER
                   {
                       true (1)
                   }

        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
        "Setting this object triggers the sending of the ORF entris in the 
        Route Refresh message to the peer. This object will be cleared once 
        the ORF message is sent to the peer. Get operation of this object will
        always return zero."
        ::= { fsMIBgp4MpeRtRefreshInboundEntry 6 }

--
-- Route Refresh Statistics Table
--

    fsMIBgp4MpeRtRefreshStatisticsTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF FsMIBgp4MpeRtRefreshStatisticsEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Route Refresh Statistics Table"
        ::= { fsMIBgp4MpeRtRefresh 2 }

    fsMIBgp4MpeRtRefreshStatisticsEntry OBJECT-TYPE
        SYNTAX     FsMIBgp4MpeRtRefreshStatisticsEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Entry gives the statistics of Route Refresh."
        INDEX {
                fsMIBgp4ContextId,
                fsMIBgp4mpeRtRefreshStatisticsPeerType,
                fsMIBgp4mpeRtRefreshStatisticsPeerAddr,
                fsMIBgp4mpeRtRefreshStatisticsAfi,
                fsMIBgp4mpeRtRefreshStatisticsSafi
              }
        ::= { fsMIBgp4MpeRtRefreshStatisticsTable 1 }

     FsMIBgp4MpeRtRefreshStatisticsEntry ::= SEQUENCE {
        fsMIBgp4mpeRtRefreshStatisticsPeerType
            InetAddressType,
        fsMIBgp4mpeRtRefreshStatisticsPeerAddr
           InetAddress,
        fsMIBgp4mpeRtRefreshStatisticsAfi
           InetAddressType,
        fsMIBgp4mpeRtRefreshStatisticsSafi
           BgpSafi,
        fsMIBgp4mpeRtRefreshStatisticsRtRefMsgSentCntr 
           Counter32,
        fsMIBgp4mpeRtRefreshStatisticsRtRefMsgTxErrCntr 
           Counter32,
        fsMIBgp4mpeRtRefreshStatisticsRtRefMsgRcvdCntr 
           Counter32,
        fsMIBgp4mpeRtRefreshStatisticsRtRefMsgInvalidCntr 
           Counter32
          
        }

     fsMIBgp4mpeRtRefreshStatisticsPeerType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Address Family Identifier of the peer remote address."
        ::= { fsMIBgp4MpeRtRefreshStatisticsEntry 1 }

    fsMIBgp4mpeRtRefreshStatisticsPeerAddr OBJECT-TYPE
        SYNTAX     InetAddress
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The IP address of the peer for which the Route Refresh Statistics has
        to be read."
        ::= { fsMIBgp4MpeRtRefreshStatisticsEntry 2 }
 
    fsMIBgp4mpeRtRefreshStatisticsAfi OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "AFI for for which the Route Refresh Statistics has
        to be read."
        ::= { fsMIBgp4MpeRtRefreshStatisticsEntry 3 }

    fsMIBgp4mpeRtRefreshStatisticsSafi OBJECT-TYPE
        SYNTAX     BgpSafi 
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "SAFI for for which the Route Refresh Statistics has
        to be read."
        ::= { fsMIBgp4MpeRtRefreshStatisticsEntry 4 }

     fsMIBgp4mpeRtRefreshStatisticsRtRefMsgSentCntr OBJECT-TYPE
        SYNTAX     Counter32 
        MAX-ACCESS read-only 
        STATUS     current
        DESCRIPTION
        " The number of Route Refresh messages sent to the peer."
        ::= { fsMIBgp4MpeRtRefreshStatisticsEntry 5 }
 
     fsMIBgp4mpeRtRefreshStatisticsRtRefMsgTxErrCntr OBJECT-TYPE
        SYNTAX     Counter32 
        MAX-ACCESS read-only 
        STATUS     current
        DESCRIPTION
        " The number of Route Refresh messages that could not be 
          transmitted to the peer."
        ::= { fsMIBgp4MpeRtRefreshStatisticsEntry 6 }
 
    fsMIBgp4mpeRtRefreshStatisticsRtRefMsgRcvdCntr OBJECT-TYPE
        SYNTAX     Counter32 
        MAX-ACCESS read-only 
        STATUS     current
        DESCRIPTION
        " The number of Route Refresh messages received from the peer."
        ::= { fsMIBgp4MpeRtRefreshStatisticsEntry 7 }
 
     fsMIBgp4mpeRtRefreshStatisticsRtRefMsgInvalidCntr OBJECT-TYPE
        SYNTAX     Counter32 
        MAX-ACCESS read-only 
        STATUS     current
        DESCRIPTION
        " The number of invalid Route Refresh messages received from the peer."
        ::= { fsMIBgp4MpeRtRefreshStatisticsEntry 8 }
 
-- MIB FOR OutBound Soft-Reconfig STARTS

fsMIBgp4MpeSoftReconfigOut   OBJECT IDENTIFIER ::= { fsMIBgp 34 } 

    fsMIBgp4MpeSoftReconfigOutboundTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF FsMIBgp4MpeSoftReconfigOutboundEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Soft Reconfig outbound Table"
        ::= { fsMIBgp4MpeSoftReconfigOut 1 }

    fsMIBgp4MpeSoftReconfigOutboundEntry OBJECT-TYPE
        SYNTAX     FsMIBgp4MpeSoftReconfigOutboundEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Entry corresponds to Soft Reconfig outbound."
        INDEX { fsMIBgp4ContextId,
                fsMIBgp4mpeSoftReconfigOutboundPeerType,
                fsMIBgp4mpeSoftReconfigOutboundPeerAddr,
                fsMIBgp4mpeSoftReconfigOutboundAfi,
                fsMIBgp4mpeSoftReconfigOutboundSafi
              }
        ::= { fsMIBgp4MpeSoftReconfigOutboundTable 1 }

    FsMIBgp4MpeSoftReconfigOutboundEntry ::= SEQUENCE {
        fsMIBgp4mpeSoftReconfigOutboundPeerType
            InetAddressType,
        fsMIBgp4mpeSoftReconfigOutboundPeerAddr
           InetAddress,
        fsMIBgp4mpeSoftReconfigOutboundAfi
            InetAddressType,
        fsMIBgp4mpeSoftReconfigOutboundSafi
            BgpSafi,
        fsMIBgp4mpeSoftReconfigOutboundRequest
          INTEGER
        }

    fsMIBgp4mpeSoftReconfigOutboundPeerType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Address Family Identifier of the peer remote address"
        ::= { fsMIBgp4MpeSoftReconfigOutboundEntry 1 }

    fsMIBgp4mpeSoftReconfigOutboundPeerAddr OBJECT-TYPE
        SYNTAX    InetAddress
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The IP address of the peer for which the outbound soft-reconfig has to
        be performed."
        ::= { fsMIBgp4MpeSoftReconfigOutboundEntry 2 }
        
    fsMIBgp4mpeSoftReconfigOutboundAfi   OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "AFI for which the outbound soft-reconfig has to
        be performed."
        ::= { fsMIBgp4MpeSoftReconfigOutboundEntry 3 }

    fsMIBgp4mpeSoftReconfigOutboundSafi  OBJECT-TYPE
        SYNTAX     BgpSafi
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "SAFI for which the outbound soft-reconfig has to
        be performed."
        ::= { fsMIBgp4MpeSoftReconfigOutboundEntry 4 }

    fsMIBgp4mpeSoftReconfigOutboundRequest OBJECT-TYPE
        SYNTAX     INTEGER
                   {
                       true (1)
                   }

        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
        "Setting this object triggers the outbound soft-reconfig process for the peer. This object value is cleared once the soft-reconfig process is
         completed." 
        ::= { fsMIBgp4MpeSoftReconfigOutboundEntry 5 }

--
-- Prefix counter table
--

    fsMIBgp4MpePrefixCountersTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF FsMIBgp4MpePrefixCountersEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Additional per-peer, per AFI/SAFI counters for prefixes"
        ::= { fsMIBgp 35 }

    fsMIBgp4MpePrefixCountersEntry OBJECT-TYPE
        SYNTAX     FsMIBgp4MpePrefixCountersEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Entry containing information about a bgp-peer's prefix
        counters."
        INDEX {
        fsMIBgp4ContextId,    
        fsMIBgp4MpePeerRemoteAddrType,
        fsMIBgp4MpePeerRemoteAddr,
        fsMIBgp4MpePrefixCountersAfi,
        fsMIBgp4MpePrefixCountersSafi
            }
        ::= { fsMIBgp4MpePrefixCountersTable 1 }

    FsMIBgp4MpePrefixCountersEntry ::= SEQUENCE {
        fsMIBgp4MpePeerRemoteAddrType
            InetAddressType,
        fsMIBgp4MpePeerRemoteAddr
            InetAddress,
        fsMIBgp4MpePrefixCountersAfi
            InetAddressType,
        fsMIBgp4MpePrefixCountersSafi
            BgpSafi,
        fsMIBgp4MpePrefixCountersPrefixesReceived
            Counter32,
        fsMIBgp4MpePrefixCountersPrefixesSent
            Counter32,
        fsMIBgp4MpePrefixCountersWithdrawsReceived
            Counter32,
        fsMIBgp4MpePrefixCountersWithdrawsSent
            Counter32,
        fsMIBgp4MpePrefixCountersInPrefixes
            Gauge32,
        fsMIBgp4MpePrefixCountersInPrefixesAccepted
            Gauge32,
        fsMIBgp4MpePrefixCountersInPrefixesRejected
            Gauge32,
        fsMIBgp4MpePrefixCountersOutPrefixes
            Gauge32
        }

    fsMIBgp4MpePeerRemoteAddrType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The type of the remote address of peer."
        ::= { fsMIBgp4MpePrefixCountersEntry 1 }

    fsMIBgp4MpePeerRemoteAddr   OBJECT-TYPE
        SYNTAX     InetAddress
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The remote address of the peer."
        ::= { fsMIBgp4MpePrefixCountersEntry 2 }

    fsMIBgp4MpePrefixCountersAfi OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The AFI index of the per-peer, per prefix counters"
        ::= { fsMIBgp4MpePrefixCountersEntry 3 }

    fsMIBgp4MpePrefixCountersSafi OBJECT-TYPE
        SYNTAX     BgpSafi
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "The SAFI index of the per-peer, per prefix counters"
        ::= { fsMIBgp4MpePrefixCountersEntry 4 }

    fsMIBgp4MpePrefixCountersPrefixesReceived OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "Total number of discrete prefixes received from this peer. The
        value in fsMIBgp4MpePrefixCountersPrefixesReceived will be greater
        than or equal to what is in fsMIBgp4MpePrefixCountersInPrefixes, 
        since it will reflect prefixes received from this peer which
        may have been subsquently withdrawn, and hence will no longer
        be stored in the Adj-Ribs-In for that peer."
        ::= { fsMIBgp4MpePrefixCountersEntry 5 }

    fsMIBgp4MpePrefixCountersPrefixesSent OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "Total number of prefixes which the local BGP speaker
        has announced to this peer.  The value for 
        fsMIBgp4MpePrefixCountersPrefixesSent will be greater than or equal to 
        fsMIBgp4MpePrefixCountersOutPrefixes, since it reflects prefixes 
        which have been subsequently withdrawn after their announcement
        (assuming any such withdrawn prefixes exist)."
        ::= { fsMIBgp4MpePrefixCountersEntry 6 }

    fsMIBgp4MpePrefixCountersWithdrawsReceived OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "Total number of prefixes withdrawn by this peer.  Specifically,
        this is the total number of withdrawn-routes which have
        been received in UPDATE messages from this peer."
        ::= { fsMIBgp4MpePrefixCountersEntry 7 }

    fsMIBgp4MpePrefixCountersWithdrawsSent  OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
        "Total number of prefixes which have been reported as 
        withdrawn by the local BGP speaker to the peer in 
        locally generated UPDATE messages to the peer."
        ::= { fsMIBgp4MpePrefixCountersEntry 8 }
	
	fsMIBgp4MpePrefixCountersInPrefixes OBJECT-TYPE
        SYNTAX     Gauge32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The number of prefixes received from a peer and are
         stored in the Adj-Ribs-In for that peer."
        -- jmh - note that we're allowing stuff to be discarded
        ::= { fsMIBgp4MpePrefixCountersEntry 9 }


    fsMIBgp4MpePrefixCountersInPrefixesAccepted OBJECT-TYPE
        SYNTAX     Gauge32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The number of prefixes for a peer that are installed
         in the Adj-Ribs-In and are eligible to become active
         in the Loc-Rib."
        ::= { fsMIBgp4MpePrefixCountersEntry 10 }


    fsMIBgp4MpePrefixCountersInPrefixesRejected OBJECT-TYPE
        SYNTAX     Gauge32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The number of prefixes for a peer that are installed
         in the Adj-Ribs-In and are NOT eligible to become active
         in the Loc-Rib."
        ::= { fsMIBgp4MpePrefixCountersEntry 11 }

    fsMIBgp4MpePrefixCountersOutPrefixes OBJECT-TYPE
        SYNTAX     Gauge32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The number of prefixes for a peer that are installed
         in that peer's Adj-Ribs-Out."
        ::= { fsMIBgp4MpePrefixCountersEntry 12 }

--**************************************************************************

-- FILTERING OBJECT DEFINITION BEGIN

 fsMIBgp4DistInOutRouteMap OBJECT IDENTIFIER ::= { fsMIBgp 36 }

    fsMIBgp4DistInOutRouteMapTable OBJECT-TYPE
        SYNTAX SEQUENCE OF FsMIBgp4DistInOutRouteMapEntry
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "A table describing the configuration of filtering for route map."
    ::= { fsMIBgp4DistInOutRouteMap 1 }

    fsMIBgp4DistInOutRouteMapEntry OBJECT-TYPE
        SYNTAX FsMIBgp4DistInOutRouteMapEntry
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "Information describing the filtering configuration of single entry."
        INDEX {fsMIBgp4ContextId,
               fsMIBgp4DistInOutRouteMapName, 
               fsMIBgp4DistInOutRouteMapType}
    ::=  { fsMIBgp4DistInOutRouteMapTable 1 }

    FsMIBgp4DistInOutRouteMapEntry ::= SEQUENCE {
        fsMIBgp4DistInOutRouteMapName         DisplayString,
        fsMIBgp4DistInOutRouteMapType         Integer32,
        fsMIBgp4DistInOutRouteMapValue        Integer32,
        fsMIBgp4DistInOutRouteMapRowStatus    RowStatus
    }

    fsMIBgp4DistInOutRouteMapName OBJECT-TYPE
        SYNTAX              DisplayString (SIZE(1..20))
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "Route map name."
    ::=  { fsMIBgp4DistInOutRouteMapEntry 1 }

    fsMIBgp4DistInOutRouteMapType OBJECT-TYPE
        SYNTAX              Integer32(1..3)
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "Type of route map to indicate the route map is for
            distribute in or for distribute out or for distance.
            1 - distance
            2 - distribute in
            3 - distribute out"
    ::=  { fsMIBgp4DistInOutRouteMapEntry 2 }

    fsMIBgp4DistInOutRouteMapValue  OBJECT-TYPE
        SYNTAX              Integer32(1..255)
        MAX-ACCESS          read-write
        STATUS              current
        DESCRIPTION
            "Distance value ( this will be unused for distribute list )"
    ::=  { fsMIBgp4DistInOutRouteMapEntry 3 }

    fsMIBgp4DistInOutRouteMapRowStatus OBJECT-TYPE
        SYNTAX              RowStatus
        MAX-ACCESS          read-write
        STATUS              current
        DESCRIPTION
            "The status of this row, by which new entries may be
            created, or old entries deleted from this table."
    ::=  { fsMIBgp4DistInOutRouteMapEntry 4 }

-- FILTERING OBJECT DEFINITION END

-- TRAP objects
fsMIBgp4Notification OBJECT IDENTIFIER ::= { fsMIBgp 37 }
fsMIBgp4Trap         OBJECT IDENTIFIER ::= { fsMIBgp4Notification 0}
fsMIBgp4Objects      OBJECT IDENTIFIER ::= { fsMIBgp4Notification 1}

fsMIBgp4TrapContextId       OBJECT-TYPE
    SYNTAX        INTEGER
    MAX-ACCESS    accessible-for-notify
    STATUS        current
    DESCRIPTION
        "This object refers to the BGP Context in 
        which the route addition failed."
    ::= { fsMIBgp4Objects 1 }
     
fsMIBgp4TrapRouteAddressType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
         "This object refers to the addresstype of BGP Route.
         Used for sending BGP route addition failure Traps."
    ::= { fsMIBgp4Objects  2 }

fsMIBgp4TrapRoutePrefix OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
         "This object refers to BGP Route.
         Used for sending BGP route addition failure Traps."
    ::= { fsMIBgp4Objects 3 }

fsMIBgp4NextHop  OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
         "This object refers to nexthop of bgp Route.
          Used for sending BGP route addition failure Traps."
    ::= { fsMIBgp4Objects  4}

fsMIBgp4TrapPeerAddrType OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
    "This object refers to the addresstype of bgp peer address.
     Used for sending BGP route addition failure Traps."

::= { fsMIBgp4Objects 5 }

fsMIBgp4TrapPeerAddr OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
    "This object refers to the address of bgp peer from which route is learned.
     Used for sending BGP route addition failure Traps."
    ::= { fsMIBgp4Objects 6 }



fsMIBgp4RestartStatusChange NOTIFICATION-TYPE
        OBJECTS  {
                   fsMIBgp4Identifier,	
                   fsMIBgp4RestartStatus,
                   fsMIBgp4GRRestartTimeInterval,
                   fsMIBgp4RestartExitReason
                 }
        STATUS             current
        DESCRIPTION
    "A fsMIBgp4RestartStatusChange trap signifies that there has 
    been a change in the graceful restart state for the router. 
    This trap should be generated when the router restart status changes."
    ::= {fsMIBgp4Trap 1}


fsMIBgp4RouteAddRTMFailure NOTIFICATION-TYPE
        OBJECTS   {
                    fsMIBgp4TrapContextId,
                    fsMIBgp4Identifier,
                    fsMIBgp4TrapRouteAddressType,
                    fsMIBgp4TrapRoutePrefix,
                    fsMIBgp4TrapPeerAddrType,
                    fsMIBgp4TrapPeerAddr,
                    fsMIBgp4mpebgp4PathAttrNextHop
                  }
          STATUS            current
          DESCRIPTION
      "A fsMIBGP4RouteAddRTMFailure trap signifies failure in adding a route to RTM from
      BGP."
      ::= {fsMIBgp4Trap 3}

-- ROUTE-MAP ON NEIGHBOUR 

fsMIBgp4NeighborRouteMap OBJECT IDENTIFIER ::= { fsMIBgp 38 }

    fsMIBgp4NeighborRouteMapTable OBJECT-TYPE
        SYNTAX SEQUENCE OF FsMIBgp4NeighborRouteMapEntry
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "A table describing the configuration of route map on a neighbour."
    ::= { fsMIBgp4NeighborRouteMap 1 }

    fsMIBgp4NeighborRouteMapEntry OBJECT-TYPE
        SYNTAX FsMIBgp4NeighborRouteMapEntry
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "Information describing the routemap configuration of single entry."
        INDEX {fsMIBgp4ContextId,
               fsMIBgp4NeighborRouteMapPeerAddrType, 
               fsMIBgp4NeighborRouteMapPeer, 
               fsMIBgp4NeighborRouteMapDirection}
    ::=  { fsMIBgp4NeighborRouteMapTable 1 }

    FsMIBgp4NeighborRouteMapEntry ::= SEQUENCE {
        fsMIBgp4NeighborRouteMapPeerAddrType InetAddressType,
        fsMIBgp4NeighborRouteMapPeer         InetAddress,
        fsMIBgp4NeighborRouteMapDirection    INTEGER,
        fsMIBgp4NeighborRouteMapName         DisplayString,
        fsMIBgp4NeighborRouteMapRowStatus    RowStatus
    }

    fsMIBgp4NeighborRouteMapPeerAddrType OBJECT-TYPE
        SYNTAX              InetAddressType
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "Adress type of the Neighbor."
    ::=  { fsMIBgp4NeighborRouteMapEntry 1 }

    fsMIBgp4NeighborRouteMapPeer OBJECT-TYPE
        SYNTAX              InetAddress
        MAX-ACCESS          not-accessible
        STATUS              current
        DESCRIPTION
            "IpAddress of the Neighbor."
    ::=  { fsMIBgp4NeighborRouteMapEntry 2 }

    fsMIBgp4NeighborRouteMapDirection OBJECT-TYPE
        SYNTAX              INTEGER{ in(1) ,
                                     out(2)
                                   }
        MAX-ACCESS          not-accessible  
        STATUS              current
        DESCRIPTION
            "Direction of route map to indicate the route map is for in or out.
             In direction routemap is to apply the routemap rules for incoming routes from
             the peer.Out direction routemap is to apply the routemap for on the 
             advertising routes to the peer.

            1 - in
            2 - out"
    ::=  { fsMIBgp4NeighborRouteMapEntry 3 }

    fsMIBgp4NeighborRouteMapName OBJECT-TYPE
        SYNTAX              DisplayString (SIZE(1..20))
        MAX-ACCESS          read-write
        STATUS              current
        DESCRIPTION
            "Route map name."
    ::=  { fsMIBgp4NeighborRouteMapEntry 4 }

    fsMIBgp4NeighborRouteMapRowStatus OBJECT-TYPE
        SYNTAX              RowStatus
        MAX-ACCESS          read-write
        STATUS              current
        DESCRIPTION
            "The status of this row, by which new entries may be
            created, or old entries deleted from this table."
    ::=  { fsMIBgp4NeighborRouteMapEntry 5 }


-- BGP Peer Group Table

    fsMIBgp4PeerGroupTable OBJECT-TYPE
    SYNTAX SEQUENCE OF  FsMIBgp4PeerGroupEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "A table for configuring the bgp peer groups. Configuring
         a property for the peer group copies it to all the peers 
         present in the peer group."
    ::= { fsMIBgp 39 }

    fsMIBgp4PeerGroupEntry OBJECT-TYPE
    SYNTAX      FsMIBgp4PeerGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry describing the bgp peer group."
        INDEX { fsMIBgp4ContextId,
                fsMIBgp4PeerGroupName }
    ::=  { fsMIBgp4PeerGroupTable 1 }

    FsMIBgp4PeerGroupEntry ::= SEQUENCE {
        fsMIBgp4PeerGroupName          DisplayString,
        fsMIBgp4PeerGroupAddrType      InetAddressType,
        fsMIBgp4PeerGroupRemoteAs      Unsigned32,
        fsMIBgp4PeerGroupHoldTimeConfigured   Integer32,
        fsMIBgp4PeerGroupKeepAliveConfigured  Integer32,
        fsMIBgp4PeerGroupConnectRetryInterval Integer32,
        fsMIBgp4PeerGroupMinASOriginInterval Integer32,
        fsMIBgp4PeerGroupMinRouteAdvInterval Integer32,
        fsMIBgp4PeerGroupAllowAutomaticStart INTEGER,
        fsMIBgp4PeerGroupAllowAutomaticStop  INTEGER,
        fsMIBgp4PeerGroupIdleHoldTimeConfigured Integer32,
        fsMIBgp4PeerGroupDampPeerOscillations   INTEGER,
        fsMIBgp4PeerGroupDelayOpen     INTEGER,
        fsMIBgp4PeerGroupDelayOpenTimeConfigured Integer32,
        fsMIBgp4PeerGroupPrefixUpperLimit Integer32,
        fsMIBgp4PeerGroupTcpConnectRetryCnt Integer32,
        fsMIBgp4PeerGroupEBGPMultiHop  INTEGER,
        fsMIBgp4PeerGroupEBGPHopLimit  Integer32,
        fsMIBgp4PeerGroupNextHopSelf   INTEGER,
        fsMIBgp4PeerGroupRflClient       INTEGER,
        fsMIBgp4PeerGroupTcpSendBufSize  Integer32,
        fsMIBgp4PeerGroupTcpRcvBufSize   Integer32,
        fsMIBgp4PeerGroupCommSendStatus  INTEGER,
        fsMIBgp4PeerGroupECommSendStatus INTEGER,
        fsMIBgp4PeerGroupPassive         INTEGER,
        fsMIBgp4PeerGroupDefaultOriginate INTEGER,
        fsMIBgp4PeerGroupActivateMPCapability INTEGER,
        fsMIBgp4PeerGroupDeactivateMPCapability INTEGER,
        fsMIBgp4PeerGroupRouteMapNameIn   DisplayString,
        fsMIBgp4PeerGroupRouteMapNameOut  DisplayString,
        fsMIBgp4PeerGroupStatus        RowStatus,
        fsMIBgp4PeerGroupIpPrefixNameIn   DisplayString,
        fsMIBgp4PeerGroupIpPrefixNameOut  DisplayString,
        fsMIBgp4PeerGroupOrfType          Unsigned32,
        fsMIBgp4PeerGroupOrfCapMode       INTEGER,
        fsMIBgp4PeerGroupOrfRequest       INTEGER,
        fsMIBgp4PeerGroupBfdStatus        INTEGER,
        fsMIBgp4PeerGroupOverrideCapability    INTEGER
    }

    fsMIBgp4PeerGroupName OBJECT-TYPE
    SYNTAX              DisplayString (SIZE(1..20))
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "The group name for this peer group entry."
    ::= { fsMIBgp4PeerGroupEntry 1 }

    fsMIBgp4PeerGroupAddrType OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          read-only
    STATUS              current
    DESCRIPTION
        "The address type of the peers added to this peer group."
    ::= { fsMIBgp4PeerGroupEntry 2 }

    fsMIBgp4PeerGroupRemoteAs OBJECT-TYPE
    SYNTAX              Unsigned32 (0..4294967295) 
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "The remote autonomous system number for this peer group."
    ::= { fsMIBgp4PeerGroupEntry 3 }

    fsMIBgp4PeerGroupHoldTimeConfigured OBJECT-TYPE
    SYNTAX              Integer32 ( 0 | 3..65535 )
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "Time interval (in seconds) for the Hold Time configured for this 
         BGP speaker with all the peers configured for this group. 
         This value is placed in an OPEN message sent to the peers 
         by this BGP speaker. This value must not be less than three seconds 
         if it is not zero (0). If it is zero (0), the Hold Time is NOT to be 
         established with the peer. 
         The suggested value for this timer is 90 seconds."
    ::= { fsMIBgp4PeerGroupEntry 4 }

    fsMIBgp4PeerGroupKeepAliveConfigured OBJECT-TYPE
    SYNTAX              Integer32 ( 0 | 1..21845 )
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "Time interval (in seconds) for the KeepAlive timer configured for this 
         BGP speaker with all the peers configured in this group. The value 
         of this object will only determine the KEEPALIVE messages frequency 
         relative to the value specified in fsMIBgp4PeerGroupCfgHoldTime. 
         A reasonable maximum value for this timer would be one third of that 
         of fsMIBgp4PeerGroupCfgHoldTime. If the value of this object is zero (0),
         no periodical KEEPALIVE messages are sent to the peers after the 
         BGP connection is established. 
         The suggested value for this timer is 30 seconds."
    ::= { fsMIBgp4PeerGroupEntry 5 }

    fsMIBgp4PeerGroupConnectRetryInterval OBJECT-TYPE
    SYNTAX              Integer32 (1..65535)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "Time interval in seconds for the ConnectRetry timer for the peers 
         in this group. The suggested value for this timer is 120 seconds."
    ::= { fsMIBgp4PeerGroupEntry 6 }

    fsMIBgp4PeerGroupMinASOriginInterval OBJECT-TYPE
    SYNTAX              Integer32 (1..65535) 
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "Time interval (in seconds) for the MinASOriginationInterval 
         timer for all peers configured in this group.
         The suggested value for this timer is 15 seconds."
    ::= { fsMIBgp4PeerGroupEntry 7 }

    fsMIBgp4PeerGroupMinRouteAdvInterval OBJECT-TYPE
    SYNTAX              Integer32 (1..65535)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "Time interval (in seconds) for the MinRouteAdvertisementInterval timer. 
         The suggested value for this timer is 30 seconds for EBGP connections 
         and 5 seconds for IBGP connections."
    ::= { fsMIBgp4PeerGroupEntry 8 }

    fsMIBgp4PeerGroupAllowAutomaticStart OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            enable(1),
                            disable(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This MIB object specifies whether BGP session with the peers in the 
         peer group can be started automatically. This object when set to
         'disabled', requires manual start for initiating BGP session with the peer via
          MIB object 'fsMIBgp4PeerGroupAdminStatus'. When set to 'enabled',
          the peer session can be automatically started in the IDLE state,
          after a BGP Peer session is brought down either by Autostop or via
          reception of invalid BGP message. The BGP session will be automatically
          started after an interval specified by
          'fsMIBgp4PeerGroupIdleHoldTimeConfigured'. If
          fsMIBgp4PeerGroupDampPeerOscillations is enabled, then automaticStart will not
          occur if peer is damped."
    DEFVAL { disable }
    ::= { fsMIBgp4PeerGroupEntry 9 }

    fsMIBgp4PeerGroupAllowAutomaticStop  OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            enable(1),
                            disable(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This MIB object specifies whether BGP session with the peers in the 
         peer group need to be automatically stopped after a TCP connect-retry
         count value specified by 'fsMIBgp4PeerGroupTcpConnectRetryCnt'.
         The resources allocated for the BGP peers are released and it 
         continues to remain in IDLE state. After an automatic stop,
         the Peer connection needs to be re-intiated manually by the
         administrator. When AutomaticStop is disabled, the connect retry 
         count value is set to 0."
    DEFVAL { disable }
    ::= { fsMIBgp4PeerGroupEntry 10 }

    fsMIBgp4PeerGroupIdleHoldTimeConfigured OBJECT-TYPE
    SYNTAX              Integer32 ( 1..65535 )
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "IdleHoldTime specifies the length of time the BGP peers in this
         peer group is held in Idle state prior to allowing the next 
         automatic restart. The IdleHoldTime is configured only when the
         fsMIBgp4PeerGroupAllowAutomaticStart is Enabled or when the
         fsMIBgp4PeerGroupDampPeerOscillations is Enabled. The configurable value
         differs based on the two options that are enabled.The Suggested default
         value is 60 secs for automatic start. After each dampening, the value
         of the IdleHoldTime is doubled consecutively."
    DEFVAL { 60 }
    ::= { fsMIBgp4PeerGroupEntry 11 }

    fsMIBgp4PeerGroupDampPeerOscillations  OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            enable(1),
                            disable(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "The DampPeerOscillations option specifies that the implementation
         engages additional logic to damp the oscillations of BGP peers in
         the face of series of automatic start and automatic stop operations
         in the IDLE state.The DampPeerOscillations option indicates that the
         BGP connection is using logic that damps BGP peer oscillations in
         states other than 'established' state."
    DEFVAL { disable }
    ::= { fsMIBgp4PeerGroupEntry 12 }

    fsMIBgp4PeerGroupDelayOpen          OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            enable(1),
                            disable(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This MIB object allows configuration option to enable/disable delay
         in sending of OPEN messages to the BGP peers for a specific time period
         (DelayOpenTime). The delay allows the remote BGP Peers to send the first
         OPEN message."
    DEFVAL { disable }
    ::= { fsMIBgp4PeerGroupEntry 13 }

    fsMIBgp4PeerGroupDelayOpenTimeConfigured  OBJECT-TYPE
    SYNTAX              Integer32 ( 0..65535 )
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "The DelayOpen time specifies the amount of time the BGP Peers should
         delay in sending the OPEN message to the remote peers. If the
         fsMIBgp4PeerGroupDelayOpen option is enabled, the DelayOpen time can be
         configured. The default value is kept as 0 secs, which implies that
         the BGP Peers can send an OPEN message without any delay to its
         neighbor."
    DEFVAL { 0 }
    ::= { fsMIBgp4PeerGroupEntry 14 }

    fsMIBgp4PeerGroupPrefixUpperLimit OBJECT-TYPE
    SYNTAX              Integer32 (1..2147483647)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "BGP speaker imposes a locally-configured, upper bound on the number of
        address prefixes the speaker is willing to accept from a neighbor. The
        default value is calculated as the following:
        fsMIBgp4MaxNoofRoutes / fsMIBgp4MaxPeerEntry
        Administrator can configure a value less than the default value at
        runtime. Prefixes exceeding the PrefixUpperLimit will not be processed
        by the system."
    DEFVAL { 100 }
    ::= { fsMIBgp4PeerGroupEntry 15 }

    fsMIBgp4PeerGroupTcpConnectRetryCnt  OBJECT-TYPE
    SYNTAX              Integer32 (1..50)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This counter denotes the Maximum number of times the BGP Peers have
         tried to issue a TCP-Connect with its neighboring peers.
         The default value for the counter is set as 5."
        DEFVAL { 5 }
    ::= { fsMIBgp4PeerGroupEntry 16 }

    fsMIBgp4PeerGroupEBGPMultiHop OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            enable(1),
                            disable(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This objects enables the BGP4 Speaker to accept or attempt
         connections to external peers residing on network that are not directly
         connected. By default, only directly connected EBGP peers are allowed.
         The configuration of this object has effect only when the peers added to 
         this peer group are of EBGP type."
    ::= { fsMIBgp4PeerGroupEntry 17 }

    fsMIBgp4PeerGroupEBGPHopLimit OBJECT-TYPE
    SYNTAX              Integer32 (1..255) 
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This objects enables the BGP4 Speaker to accept or attempt
         connections to external peers residing on network that are not directly
         connected and seperated by a maximum hop limit as configured by this
         object. The configuration of this object has effect only when the peers added to
         this peer group are of EBGP type."
    ::= { fsMIBgp4PeerGroupEntry 18 }

    fsMIBgp4PeerGroupNextHopSelf OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            automatic(1),
                            self(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object specifies how the next hop attribute sent in the update
         messages to the peers in this peer group.  When the object takes the
         value of self,the next Hop attribute will always be the sender Local
         Address else the next hop will be generated based on the IP address of
         the destination and the present next hop in the route information."
    DEFVAL { automatic }
    ::= { fsMIBgp4PeerGroupEntry 19 }

    fsMIBgp4PeerGroupRflClient OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            nonClient (1),
                            client (2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object specifies whether the peers in this peer group are
         Client peers or Non-Client peers. By default, the peers are
         created as Non-Client Peer. "
    DEFVAL { nonClient }
    ::= { fsMIBgp4PeerGroupEntry 20 }

    fsMIBgp4PeerGroupTcpSendBufSize OBJECT-TYPE
    SYNTAX              Integer32 (4096..65536)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object configures the tcp window size on the sender side
         for all the peers in this peer group."
    DEFVAL { 65536 }
    ::= { fsMIBgp4PeerGroupEntry 21 }

    fsMIBgp4PeerGroupTcpRcvBufSize   OBJECT-TYPE
    SYNTAX              Integer32 (4096..65536)
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object configures the tcp window size on the receiver side
         for all the peers in this peer group."
    DEFVAL { 65536 }
    ::= { fsMIBgp4PeerGroupEntry 22 }

    fsMIBgp4PeerGroupCommSendStatus OBJECT-TYPE
    SYNTAX              INTEGER 
                        {
                            none (1),
                            send (2),
                            donotsend (3)
                        }
    MAX-ACCESS          read-create
    STATUS              current
    DESCRIPTION
        "Community Send status for the peers in this peer group.
            o none       - is for read-only
            o send       - send communities to this peer
            o donotsend  - do not send communities to this peer."
    DEFVAL { send }
    ::= { fsMIBgp4PeerGroupEntry 23 }

    fsMIBgp4PeerGroupECommSendStatus OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            none       (1),
                            send       (2),
                            donotsend  (3)
                        }
    MAX-ACCESS          read-create
    STATUS              current
    DESCRIPTION
        "Extended Community Send status for the peers in this peer group.
           o none     - is for read-only
           o send       - send extended communities to this peer
           o donotsend  - do not send extended communities to this peer."
    DEFVAL { send }
    ::= { fsMIBgp4PeerGroupEntry 24 }

    fsMIBgp4PeerGroupPassive OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            enable (1),
                            disable (2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to set the peers in this group to be active,
         that means the speaker will not initiate the session with the peers
         instead it waits for the remote peers to initiate the session"
    ::= { fsMIBgp4PeerGroupEntry 25 }

    fsMIBgp4PeerGroupDefaultOriginate OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            enable(1),
                            disable(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to enable/disable the advertisement 
         of the default route to all the peers in this peer group.
         This object overrides the global default route configuration
         (fsMIBgp4DefaultOriginate) and always send a default
         route to the peer with self next-hop. This advertisement occurs
         irrespective of the presence of default route in FDB. This object can
         be set only if the fsMIBgp4LocalAs is set."
    DEFVAL  { disable }
    ::= { fsMIBgp4PeerGroupEntry 26 }

    fsMIBgp4PeerGroupActivateMPCapability OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            ipv4unicast(1),
                            ipv6unicast(2)

                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is set to activate the corresponding MP Capability.
         If any of MP Capability is activated, then this capability should
         be negotiated while establishing session with the peers in this group.
         Any get on this object will return only ZERO."
    ::= { fsMIBgp4PeerGroupEntry 27 }

    fsMIBgp4PeerGroupDeactivateMPCapability OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            ipv4unicast(1),
                            ipv6unicast(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is set to deactivate the corresponding MP Capability.
         If any of MP Capability is deactivated, then this capability should
         not be negotiated while establishing session with the peers in this group.
         Any get on this object will return only ZERO."
    ::= { fsMIBgp4PeerGroupEntry 28 }
 
    fsMIBgp4PeerGroupRouteMapNameIn OBJECT-TYPE
    SYNTAX              DisplayString
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to configure the in routemap for this peer group entry."
    ::= { fsMIBgp4PeerGroupEntry 29 }

    fsMIBgp4PeerGroupRouteMapNameOut OBJECT-TYPE
    SYNTAX              DisplayString
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to configure the out routemap for this peer group entry."
    ::= { fsMIBgp4PeerGroupEntry 30 }

    fsMIBgp4PeerGroupStatus OBJECT-TYPE
    SYNTAX              RowStatus
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to create the peer group or delete the group."
    ::= { fsMIBgp4PeerGroupEntry 31 }

    fsMIBgp4PeerGroupIpPrefixNameIn OBJECT-TYPE
    SYNTAX              DisplayString
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to configure the IP Prefix list name in IN direction for this peer group entry."
    ::= { fsMIBgp4PeerGroupEntry 32 }

    fsMIBgp4PeerGroupIpPrefixNameOut OBJECT-TYPE
    SYNTAX              DisplayString
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to configure the IP Prefix list name in OUT direction for this peer group entry."
    ::= { fsMIBgp4PeerGroupEntry 33 }

    fsMIBgp4PeerGroupOrfType OBJECT-TYPE
    SYNTAX              Unsigned32
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to configure the ORF type supported for this peer group entry.
         This object should be configure before enabling the ORF modes fsMIBgp4PeerGroupOrfCapMode
         Now the Address Prefix ORF type (value 64) is only supported"
    ::= { fsMIBgp4PeerGroupEntry 34 }

    fsMIBgp4PeerGroupOrfCapMode OBJECT-TYPE
    SYNTAX              INTEGER {
                                    disable (0),
                                    receive (1),
                                    send (2),
                                    both (3)
                                }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to configure the ORF Capability mode supported for this peer group entry.
         If it is set to ZERO, then the both ORF modes will be disabled"
    ::= { fsMIBgp4PeerGroupEntry 35 }

    fsMIBgp4PeerGroupOrfRequest OBJECT-TYPE
    SYNTAX              INTEGER {
                                  true (1)
                                 }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is to trigger the ORF messages to the peers associated with this peer group entry.
         Once the ORF messages are transmitted, this object will be cleared.
         Get operation of this object wil1 always return ZERO."
    ::= { fsMIBgp4PeerGroupEntry 36 }

    fsMIBgp4PeerGroupBfdStatus OBJECT-TYPE
    SYNTAX              INTEGER {
                                  enable (1),
                                  disable (2)
                                 }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to enable or disable BFD monitoring for the BGP peer group.
         When this is enabled BGP will register with BFD for all the BGP peers added in this group,
         once the session state becomes ESTABLISHED. When this is disabled BGP will de-register 
         with BFD for all the BGP peers added n this group, if it was already registered. 
         By default it is disabled."
    DEFVAL {disable}
    ::= { fsMIBgp4PeerGroupEntry 37 }

    fsMIBgp4PeerGroupOverrideCapability OBJECT-TYPE
    SYNTAX              INTEGER {
                                  enable (1),
                                  disable (2)
                                }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to enable or disable Override Capability for the BGP peer group."
    DEFVAL {disable}
    ::= { fsMIBgp4PeerGroupEntry 38 }

    fsMIBgp4PeerGroupListTable OBJECT-TYPE
    SYNTAX SEQUENCE OF  FsMIBgp4PeerGroupListEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "A table for adding/removing the bgp peers to a peer group."
    ::= { fsMIBgp 40 }

    fsMIBgp4PeerGroupListEntry OBJECT-TYPE
    SYNTAX      FsMIBgp4PeerGroupListEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry describing the bgp peer group list."
        INDEX { fsMIBgp4ContextId, fsMIBgp4PeerGroupName, fsMIBgp4PeerAddrType, fsMIBgp4PeerAddress }
    ::=  { fsMIBgp4PeerGroupListTable 1 }

    FsMIBgp4PeerGroupListEntry ::= SEQUENCE {
        fsMIBgp4PeerAddrType      InetAddressType,
        fsMIBgp4PeerAddress       InetAddress,
        fsMIBgp4PeerAddStatus     INTEGER
    }

    fsMIBgp4PeerAddrType  OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "This object specifies the address type of the BGP peer entry 
         added to this peer group entry"
    ::= { fsMIBgp4PeerGroupListEntry 1 }

    fsMIBgp4PeerAddress   OBJECT-TYPE
    SYNTAX              InetAddress
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "This object specifies the remote address of the BGP peer entry 
         added to this peer group entry"
    ::= { fsMIBgp4PeerGroupListEntry 2 }

    fsMIBgp4PeerAddStatus OBJECT-TYPE
    SYNTAX              INTEGER
                        {
                            add(1),
                            delete(2)
                        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
        "This object is used to add or remove the bgp peer specified through
         fsMIBgp4PeerAddress to this bgp peer group entry."
    ::= { fsMIBgp4PeerGroupListEntry 3 }

    fsMIBgp4RestartReason    OBJECT-TYPE 
    SYNTAX      INTEGER {
                            unknown (0),
                            softwareRestart (1),
                            swReloadUpgrade (2)
                          }

    MAX-ACCESS  read-write
    STATUS      current 
    DESCRIPTION 
    "The router's restarter reason of BGP graceful restart. 
    Options include: unknown,softwarerestart,swreloadupgrade. 
    This object is persistent and when written 
    the entity SHOULD save the change to non-volatile storage.
    For High availability support, when switching over to the redundant
    router, the restart reason will be internally set as swreloadupgrade 
    till the EOR is received from all the peer or until Stale timer expires.
    After that it is internally set to software restart."
    DEFVAL {softwareRestart}
    ::= {  fsMIBgp 41 } 
    
    
-- MIB for TCP AO Authentication starts

fsMIBgp4TCPMKTAuth OBJECT IDENTIFIER ::= {fsMIBgp 42}

-- TCP MKT(Master Key Tuple) Authentication Table

    fsMIBgp4TCPMKTAuthTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF Fsbgp4TCPMKTAuthEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "TCP MKT Authentication Table, used for configuring MKT for TCP-AO 
         authentication, supported algorithms HMAC-SHA-1 and AES-128-CMAC"
        ::= { fsMIBgp4TCPMKTAuth 1 }

    fsMIBgp4TCPMKTAuthEntry OBJECT-TYPE
        SYNTAX     Fsbgp4TCPMKTAuthEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Entry corresponds to the TCP MKT parameters"
        INDEX {
                fsMIBgp4ContextId,
                fsMIBgp4TCPMKTAuthKeyId
              }
        ::= { fsMIBgp4TCPMKTAuthTable 1 }

    Fsbgp4TCPMKTAuthEntry ::= SEQUENCE {
        fsMIBgp4TCPMKTAuthKeyId
            Integer32,
        fsMIBgp4TCPMKTAuthRecvKeyId
            Integer32,
        fsMIBgp4TCPMKTAuthMasterKey 
            OCTET STRING,
        fsMIBgp4TCPMKTAuthAlgo
            INTEGER,
        fsMIBgp4TCPMKTAuthTcpOptExc
            TruthValue,
        fsMIBgp4TCPMKTAuthRowStatus
            RowStatus
        }

    fsMIBgp4TCPMKTAuthKeyId OBJECT-TYPE
       SYNTAX      Integer32 (0..255)
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Send KeyID of the MKT. This object value is used to fill the key-id
            field in the TCP-AO option in the TCP header"
       ::=  { fsMIBgp4TCPMKTAuthEntry 1 }

    fsMIBgp4TCPMKTAuthRecvKeyId OBJECT-TYPE
       SYNTAX      Integer32 (0..255)
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
           "Receive Key-id of the MKT. The MKT that is ready at the sender to 
            be used to authenticate received segments is indicated to the 
            peer by filling the receive key id of the MKT in the RNExtKeyId 
            field of the TCP-AO option in TCP header."
       ::=  { fsMIBgp4TCPMKTAuthEntry 2 }

    fsMIBgp4TCPMKTAuthMasterKey OBJECT-TYPE
       SYNTAX      OCTET STRING (SIZE (1..80))
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
           "Master Key corresponding to the MKT"
       ::=  { fsMIBgp4TCPMKTAuthEntry 3 }

    fsMIBgp4TCPMKTAuthAlgo OBJECT-TYPE
       SYNTAX      INTEGER
                   {
                       hmacSha1(1),
                       aes128Cmac(2)
                   }
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
           "Algorithm used for TCP-AO MAC or KDF calculation, allowed 
            algorithms are HMAC-SHA-1 & AES-128-CMAC,
            default value is HMAC-SHA-1"
       DEFVAL { hmacSha1 }  
       ::=  { fsMIBgp4TCPMKTAuthEntry 4 }

    fsMIBgp4TCPMKTAuthTcpOptExc OBJECT-TYPE
       SYNTAX      TruthValue
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
           "Exclude TCP options other than TCP-AO during MAC calculation,
            if fsMIBgp4TCPMKTAuthTcpOptExc is not set TCP-AO MAC will
            be calculated on tcp segment including all other TCP options"
       ::=  { fsMIBgp4TCPMKTAuthEntry 5 }

    fsMIBgp4TCPMKTAuthRowStatus OBJECT-TYPE
       SYNTAX      RowStatus
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
           "This variable represents the status of  the  MKT entry, can
            have values allowed for RowStatus, eg. createAndGo, destroy etc "
       ::=  { fsMIBgp4TCPMKTAuthEntry 6 }

--MIB for TCP-AO config  for  BGP peers

    fsMIBgp4TCPAOAuthPeer   OBJECT IDENTIFIER ::= {fsMIBgp 43}

--BGP TCP-AO config Table

    fsMIBgp4TCPAOAuthPeerTable  OBJECT-TYPE
        SYNTAX     SEQUENCE OF Fsbgp4TCPAOAuthPeerEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "TCP-AO Peer config Table"
        ::= { fsMIBgp4TCPAOAuthPeer 1 }

    fsMIBgp4TCPAOAuthPeerEntry OBJECT-TYPE
        SYNTAX     Fsbgp4TCPAOAuthPeerEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Entry corresponds to the TCP-AO configs for peer, 
         Support for associating one keyId(MKT) per peer is available at
         present. If a new keyId/MKT is associated with a peer which 
         already has one associated keyId/MKT, existing values will 
         be overwritten with new one.
         Configuration support for start accept, start generate, stop accept 
         and stop generate are not available currently"
        INDEX {
                fsMIBgp4ContextId,
                fsMIBgp4TCPAOAuthPeerType,
                fsMIBgp4TCPAOAuthPeerAddr,
                fsMIBgp4TCPAOAuthKeyId
              }
        ::= { fsMIBgp4TCPAOAuthPeerTable 1 }

    Fsbgp4TCPAOAuthPeerEntry ::= SEQUENCE {
        fsMIBgp4TCPAOAuthPeerType
            InetAddressType,
        fsMIBgp4TCPAOAuthPeerAddr
            InetAddress,
        fsMIBgp4TCPAOAuthKeyId
            Integer32,
        fsMIBgp4TCPAOAuthKeyStatus
            INTEGER,
        fsMIBgp4TCPAOAuthKeyStartAccept    
            DateAndTime,
        fsMIBgp4TCPAOAuthKeyStartGenerate  
            DateAndTime,
        fsMIBgp4TCPAOAuthKeyStopGenerate   
            DateAndTime,
        fsMIBgp4TCPAOAuthKeyStopAccept     
            DateAndTime

    }

    fsMIBgp4TCPAOAuthPeerType OBJECT-TYPE
        SYNTAX      InetAddressType 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The IP address type of the peer IP address"
        ::=  { fsMIBgp4TCPAOAuthPeerEntry 1 }

    fsMIBgp4TCPAOAuthPeerAddr OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The IP address of this the peer for which TCP-AO config is done"
        ::=  { fsMIBgp4TCPAOAuthPeerEntry 2 }

    fsMIBgp4TCPAOAuthKeyId OBJECT-TYPE
        SYNTAX      Integer32 (0 .. 255)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Key id of the MKT which need to be associated with the peer"
        ::=  { fsMIBgp4TCPAOAuthPeerEntry 3 }

    fsMIBgp4TCPAOAuthKeyStatus OBJECT-TYPE
        SYNTAX	    INTEGER
        {
            set (1),
            clear(2)
        } 
	MAX-ACCESS  read-write
	STATUS	    current
	DESCRIPTION 
        " While doing a write on the object(snmpset) the value 
             'set(1)'   will associate the MKT with KeyId mentioned
                        in the index to the peer
             'clear(2)' will clear/dissociate the keyId mentioned
                        in the index to the peer
          During read/snmpget on the ogject the value
             'set(1)'   will indicate TCP-AO is enabled and the value
                        returned by fsbgp4TCPAOAuthKeyId is valid
             Read on object will not display clear"
        ::= { fsMIBgp4TCPAOAuthPeerEntry 4 }

     fsMIBgp4TCPAOAuthKeyStartAccept OBJECT-TYPE
        SYNTAX      DateAndTime 
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
           " The date & time the router will start accepting packets that have 
             been created with the MKT specified by the key-id."
       DEFVAL { "0000000000000000" }
       ::=  { fsMIBgp4TCPAOAuthPeerEntry 5 }
   
     fsMIBgp4TCPAOAuthKeyStartGenerate OBJECT-TYPE
        SYNTAX      DateAndTime 
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
           "The date & time the router will start using the MKT specified by the 
            key-id for  packets generation."
        DEFVAL { "0000000000000000" }
        ::=  { fsMIBgp4TCPAOAuthPeerEntry 6 }
   
     fsMIBgp4TCPAOAuthKeyStopGenerate OBJECT-TYPE
        SYNTAX      DateAndTime 
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
           " The date & time the router will stop using the MKT specified by 
             the key-id for  packets generation."
       DEFVAL { "0000000000000000" }
       ::=  { fsMIBgp4TCPAOAuthPeerEntry 7 }
   
     fsMIBgp4TCPAOAuthKeyStopAccept OBJECT-TYPE
        SYNTAX      DateAndTime 
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
           " The date & time the router will stop accepting packets that have 
             been created withthe MKT specified by the key-id."
        DEFVAL { "0000000000000000" }
        ::=  { fsMIBgp4TCPAOAuthPeerEntry 8 }

-- ORF table 
    fsMIBgp4ORFListTable OBJECT-TYPE
    SYNTAX SEQUENCE OF  FsMIBgp4ORFListEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "A table for adding/removing Outbound Route Filter entries received from the peer"
    ::= { fsMIBgp 44 }

    fsMIBgp4ORFListEntry OBJECT-TYPE
    SYNTAX      FsMIBgp4ORFListEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry describing the bgp ORF list."
        INDEX { fsMIBgp4ContextId,
                fsMIBgp4ORFPeerAddrType,
                fsMIBgp4ORFPeerAddr, 
                fsMIBgp4ORFAfi,
                fsMIBgp4ORFSafi,
                fsMIBgp4ORFType,
                fsMIBgp4ORFSequence,
                fsMIBgp4ORFAddrPrefix,
                fsMIBgp4ORFAddrPrefixLen,
                fsMIBgp4ORFMinLength,
                fsMIBgp4ORFMaxLength,
                fsMIBgp4ORFAction
              }
    ::=  { fsMIBgp4ORFListTable 1 }

    FsMIBgp4ORFListEntry ::= SEQUENCE {
        fsMIBgp4ORFPeerAddrType   InetAddressType,
        fsMIBgp4ORFPeerAddr       InetAddress,
        fsMIBgp4ORFAfi            InetAddressType,
        fsMIBgp4ORFSafi           BgpSafi,
        fsMIBgp4ORFType           Unsigned32,
        fsMIBgp4ORFSequence       Unsigned32,
        fsMIBgp4ORFAddrPrefix     InetAddress,
        fsMIBgp4ORFAddrPrefixLen  Unsigned32,
        fsMIBgp4ORFMinLength      Unsigned32,
        fsMIBgp4ORFMaxLength      Unsigned32,
        fsMIBgp4ORFAction         INTEGER
    }

    fsMIBgp4ORFPeerAddrType OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
        "This object specifies the address type of the BGP peer 
         associated with this ORF entry"
    ::= { fsMIBgp4ORFListEntry 1 }

    fsMIBgp4ORFPeerAddr OBJECT-TYPE
    SYNTAX              InetAddress
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "This object specifies the remote address of the BGP peer
         associated with this ORF entry"
    ::= { fsMIBgp4ORFListEntry 2 }

    fsMIBgp4ORFAfi      OBJECT-TYPE
    SYNTAX              InetAddressType
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "This object specifies the type of IP address prefix in the ORF entry."
    ::= { fsMIBgp4ORFListEntry 3 }

    fsMIBgp4ORFSafi     OBJECT-TYPE
    SYNTAX              BgpSafi
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "This object specifies the Sub-sequent address family of 
         IP address prefix in the ORF entry."
    ::= { fsMIBgp4ORFListEntry 4 }

    fsMIBgp4ORFType     OBJECT-TYPE
    SYNTAX              Unsigned32
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "This object specifies the type of the ORF entry.
         Currently it supports only Address-Prefix based ORF type (64)"
    ::= { fsMIBgp4ORFListEntry 5 }

    fsMIBgp4ORFSequence OBJECT-TYPE
    SYNTAX              Unsigned32
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "This object specifies the sequential order in which a route should be 
         matched against an ORF entry."
    ::= { fsMIBgp4ORFListEntry 6 }

    fsMIBgp4ORFAddrPrefix OBJECT-TYPE
    SYNTAX                InetAddress
    MAX-ACCESS            not-accessible
    STATUS                current
    DESCRIPTION
         "This object specifies the IP address prefix for which the ORF rule was specified."
    ::= { fsMIBgp4ORFListEntry 7 }

    fsMIBgp4ORFAddrPrefixLen OBJECT-TYPE
    SYNTAX                Unsigned32 (0..128)
    MAX-ACCESS            not-accessible
    STATUS                current
    DESCRIPTION
         "This object specifies the length of the IP address prefix length in bits which will be
          considered when matching a route with the ORF entry."
    ::= { fsMIBgp4ORFListEntry 8 }

    fsMIBgp4ORFMinLength OBJECT-TYPE
    SYNTAX               Unsigned32 (0..128)
    MAX-ACCESS           not-accessible
    STATUS               current
    DESCRIPTION
         "This object specifies the minimum prefix-length in bits for a IP address prefix.
          Any route with prefix-length equal to or greater than this length will be
          considered as a match, if fsMIBgp4ORFMaxLength is not specified.
          If it is ZERO, it will be considered as unspecified and it will not be considered
          while applying the rule. If both fsMIBgp4ORFMinLength and fsMIBgp4ORFMaxLength are specified, 
          then a route with prefix-length with in the range of fsMIBgp4ORFMinLength and 
          fsMIBgp4ORFMaxLength will be considered as a match"
    ::= { fsMIBgp4ORFListEntry 9 }

    fsMIBgp4ORFMaxLength OBJECT-TYPE
    SYNTAX               Unsigned32 (0..128)
    MAX-ACCESS           not-accessible
    STATUS               current
    DESCRIPTION
         "This object specifies the maximum prefix-length in bits for a IP address prefix.
          Any route with prefix-length equal to or less than this length will be
          considered as a match, if fsMIBgp4ORFMinLength is not specified.
          If it is ZERO, then it will be considered as unspecified and it will not be considered
          while applying the rule.If both fsMIBgp4ORFMaxLength and fsMIBgp4ORFMinLength are specified, 
          then a route with prefix-length with in the range of fsMIBgp4ORFMinLength and 
          fsMIBgp4ORFMaxLength will be considered as a match"
    ::= { fsMIBgp4ORFListEntry 10 }

    fsMIBgp4ORFAction OBJECT-TYPE  
    SYNTAX            INTEGER { 
                                permit (0), 
                                deny (1) 
                              }
    MAX-ACCESS        not-accessible
    STATUS            current
    DESCRIPTION
         "This object specifies the action to be taken for a particular route
          if it matches with the ORF rules defined in this particular ORF entry.
          If it is PERMIT, then the matched route will be advertised to the peer.
          Else if it is DENY, then the matched route will not be advertised to the peer"
    ::= { fsMIBgp4ORFListEntry 11 }

-- MIB for Network Table to advertise local network address

fsMIBgp4RRDNetworkTable OBJECT-TYPE
    SYNTAX SEQUENCE OF  FsMIBgp4RRDNetworkEntry
    MAX-ACCESS          not-accessible
    STATUS              current
    DESCRIPTION
        "A table for local network addresses that will be advertised to BGP . "
    ::= { fsMIBgp 45 }

fsMIBgp4RRDNetworkEntry OBJECT-TYPE
    SYNTAX      FsMIBgp4RRDNetworkEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Network Table Entry"
    INDEX { fsMIBgp4ContextId , fsMIBgp4RRDNetworkAddr }
    ::=  { fsMIBgp4RRDNetworkTable 1 }

FsMIBgp4RRDNetworkEntry ::= SEQUENCE {
        fsMIBgp4RRDNetworkAddr        InetAddress,
        fsMIBgp4RRDNetworkAddrType    InetAddressType,
        fsMIBgp4RRDNetworkPrefixLen   Integer32,
        fsMIBgp4RRDNetworkRowStatus   RowStatus
    }

fsMIBgp4RRDNetworkAddr     OBJECT-TYPE
    SYNTAX                  InetAddress
    MAX-ACCESS              not-accessible
    STATUS                  current
    DESCRIPTION
    "Prefix of the local route to be advertise."
    ::= { fsMIBgp4RRDNetworkEntry  1 }

fsMIBgp4RRDNetworkAddrType  OBJECT-TYPE
    SYNTAX                  InetAddressType
    MAX-ACCESS              read-write
    STATUS                  current
    DESCRIPTION
    "Type of Prefix of the local route to be advertised."
    ::= { fsMIBgp4RRDNetworkEntry 2 }

fsMIBgp4RRDNetworkPrefixLen  OBJECT-TYPE
    SYNTAX                   Integer32 (1..32)
    MAX-ACCESS               read-write
    STATUS                   current
    DESCRIPTION
    "Prefix length of the route."
    ::= { fsMIBgp4RRDNetworkEntry 3 }

fsMIBgp4RRDNetworkRowStatus  OBJECT-TYPE
    SYNTAX                   RowStatus
    MAX-ACCESS               read-write
    STATUS                   current
    DESCRIPTION
    "Row status for creating entries into this table."
    ::= { fsMIBgp4RRDNetworkEntry 4 }

fsMIBgp4MacMobDuplicationTimeInterval    OBJECT-TYPE
    SYNTAX  Integer32 (2..36000)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This interval is the upper bound on the amount of time a VM
     Moved among the PEs for about MaxMacMoves times."
    DEFVAL     { 180 }
    ::= { fsMIBgp  46 }

fsMIBgp4MaxMacMoves    OBJECT-TYPE
    SYNTAX  Integer32 (1..1000)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This is the Maximum number of times a VM(MAC) can be moved among PEs
     before the Mac Duplication timer Interval expiry"
    DEFVAL     { 5 }
    ::= { fsMIBgp  47 }

END
