L2VPN Working Group Thomas D. Nadeau (Ed.)
Internet Draft Juniper Networks
Intended status: Standards Track
Expires: April 2013 A S Kiran Koushik (Ed.)
Cisco Systems, Inc.
Rohit Mediratta (Ed.)
Alcatel-Lucent
September 29, 2012
Virtual Private Lan Services (VPLS) Management Information Base
draft-ietf-l2vpn-vpls-mib-07.txt
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress."
Nadeau, et. al. Expires April 2, 2013 [Page 1]
Internet-Draft Vpls Management Information Base September 2012
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on April 2, 2013.
Copyright Notice
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this
document must include Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License.
Abstract
This memo defines an experimental portion of the Management
Information Base for use with network management protocols in the
Internet community. In particular, it describes managed objects for
modeling of Virtual Private LAN services. It needs to be used in
conjunction with Pseudowire (PW) Management Information Base
[RFC5601].
Table of Contents
1. Introduction...................................................3
2. Terminology....................................................3
2.1. Conventions used in this document.........................3
3. The Internet-Standard Management Framework.....................4
Nadeau, et. al. Expires April 2, 2013 [Page 2]
Internet-Draft Vpls Management Information Base September 2012
4. VPLS MIB Module Architecture...................................4
4.1. VPLS-GENERIC-MIB Module Usage.............................5
4.2. VPLS-LDP-MIB Module Usage.................................5
4.3. VPLS-BGP-MIB Module Usage.................................5
4.4. Relations to other MIB modules............................6
5. Example of the VPLS MIB modules usage..........................6
6. Object definitions.............................................7
6.1. VPLS-GENERIC-MIB..........................................7
6.2. VPLS-LDP-MIB Object definitions..........................28
6.3. VPLS-BGP-MIB Object definitions..........................34
7. Security Considerations.......................................42
8. IANA Considerations...........................................43
9. References....................................................43
9.1. Normative References.....................................43
9.2. Informative References...................................44
10. Acknowledgments..............................................45
11. Authors' Addresses...........................................45
12. Full Copyright Statement.....................................45
1. Introduction
This memo defines a portion of the Management Information
Base(MIB) for use with network management protocols in the Internet
community. In particular, it defines a MIB module that can be used
to manage VPLS (Virtual Private LAN Services) for transmission over
a packet Switched Network (PSN) using LDP [RFC4762] or BGP [RFC4761]
signalling. This MIB module provides generic management of VPLS
services as defined by the IETF L2VPN Working Group. Additional MIB
modules are also defined for management of LDP VPLS and BGP VPLS
services as defined by they IETF L2VPN Working Group.
2. Terminology
This document adopts the definitions, acronyms and mechanisms
described in [RFC3985]. Unless otherwise stated, the mechanisms of
[RFC3985] apply and will not be re-described here.
2.1. Conventions used in this document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC-2119 [RFC2119].
Nadeau, et. al. Expires April 2, 2013 [Page 3]
Internet-Draft Vpls Management Information Base September 2012
3. The Internet-Standard Management Framework
For a detailed overview of the documents that describe the current
Internet-Standard Management Framework, please refer to section 7
of RFC 3410 [RFC3410].
Managed objects are accessed via a virtual information store,
termed the Management Information Base or MIB. MIB objects are
generally accessed through the Simple Network Management Protocol
(SNMP). Objects in the MIB are defined using the mechanisms
defined in the Structure of Management Information (SMI). This
memo specifies a set of MIB modules that are compliant to the SMIv2,
which is described in STD 58 [RFC2578], STD 58 [RFC2579] and STD 58
[RFC2580].
4. VPLS MIB Module Architecture
The MIB structure for defining a VPLS service is composed from
three MIB modules.
The first is the VPLS-GENERIC-MIB module, which configures general
parameters of the VPLS service that are common to all types of VPLS
services.
The second is the VPLS-LDP-MIB module, which configures VPLS-LDP
[RFC4762] specific parameters of the VPLS service.
The third is the VPLS-BGP-MIB module, which configures VPLS-BGP
[RFC4761] specific parameters of the VPLS service.
-------- -----------------
PW Mapping | | | |
-----> | PW-MIB |-->|PW-ENET/MPLS-MIB |
__________ / | | | |
| | / -------- -----------------
| VPLS MIB | / ------------
| |----------------------> | |
---------- MAC addr. mapping using | BRIDGE-MIB |
[SNMP-CONTEXT-MAP-MIB] | |
------------
Additionally service-specific modules may be defined in other
documents.
Nadeau, et. al. Expires April 2, 2013 [Page 4]
Internet-Draft Vpls Management Information Base September 2012
4.1. VPLS-GENERIC-MIB Module Usage
An entry in the vplsConfigTable MUST exist for a VPLS service.
This table holds generic parameters which apply to a VPLS service
which can be signaled via LDP or BGP.
A conceptual row can be created in the vplsConfigTable in one of
the following ways:
1) The operator creates a row in the vplsConfigTable when
configuring the node for a new service. This mode MUST be
supported by the agent, and MUST be used when creating a
manually assigned VPLS service.
2) The agent MAY create a row in the vplsConfigTable automatically
due to some auto discovery application, or based on
configuration that is done through non-SNMP applications.
This mode is OPTIONAL.
An entry in the vplsPwBindTable MUST exist for a VPLS service.
This binding table links one VPLS service with one or many
pseudowires (defined in [RFC5601]). Each pseudowire may
be used as a spoke or a mesh based on the parameters defined
in this table.
An entry in the vplsBgpAdConfigTable MUST exist if
Auto-discovery has been enabled on this service. This table
stores the information required for auto-discovery.
An entry in the vplsBgpRteTargetTable MUST exist if auto-discovery
has been configured on this service. One service can import
and export multiple Route targets.
The agent then creates the rows in the (locally supported)
performance tables and reverse mapping tables in
VPLS-GENERIC-MIB module.
4.2. VPLS-LDP-MIB Module Usage
An entry in the vplsLdpConfigTable MUST be created by the agent
for a VPLS service signaled using LDP.
4.3. VPLS-BGP-MIB Module Usage
An entry in the vplsBgpConfigTable MUST be created by the agent
Nadeau, et. al. Expires April 2, 2013 [Page 5]
Internet-Draft Vpls Management Information Base September 2012
for a VPLS service signaled using BGP.
4.4. Relations to other MIB modules
- The vplsPwBindTable links the VPLS entry to the pwTable in
the [RFC5601]
- The association of MAC addresses to VPLS entries is possible
by adding a turnstile function to interpret the entries in
[SNMP-CONTEXT-MAP-MIB]. In [SNMP-CONTEXT-MAP-MIB] there is
a mapping between the vacmContextName [RFC3415] to
dot1dBasePort [RFC4188] and vplsConfigIndex. This mapping can
be used to map the vplsConfigIndex to a dot1dBasePort
in the BRIDGE-MIB. This resulting value of dot1dBasePort
can be used to access corresponding MAC addresses that belong
to a particular vplsConfigIndex.
- Unless all the necessary entries in the applicable tables have
been created and all the parameters have been consistently
configured in those tables, signaling cannot be performed
from the local node, and the vplsConfigRowStatus should report
'notReady'.
- Statistics can be gathered from the Pseudowire performance
tables in [RFC5601]
5. Example of the VPLS MIB modules usage
In this section we provide an example of using the MIB objects
described in section 7 to set up a VPLS service over MPLS. While
this example is not meant to illustrate every permutation of the
MIB, it is intended as an aid to understanding some of the key
concepts. It is meant to be read after going through the MIB
itself.
In this example a vpls service (VPLS-A) is setup using Ldp for
signaling the pseudowire. The binding between the Vpls service and
the pseudowire is reflected in the VplsPwBindTable.
The pseudowire configuration is defined in RFC 5601.
In the VPLS-GENERIC-MIB module:
In vplsConfigTable:
{
vplsConfigIndex 10,
vplsConfigName "VPLS-A"
Nadeau, et. al. Expires April 2, 2013 [Page 6]
Internet-Draft Vpls Management Information Base September 2012
vplsConfigAdminStatus 1(up),
vplsConfigMacLearning 1(true),
vplsConfigDiscardUnknownDest 2(false),
vplsConfigMacAging 1(true),
vplsConfigVpnId "100:10"
vplsConfigRowStatus 1(active)
}
In vplsStatusTable:
{
vplsStatusOperStatus 1(up),
}
In VplsPwBindTable :
{
vplsPwBindConfigType manual,
vplsPwBindType spoke,
vplsPwBindRowStatus 1(active),
vplsPwBindStorageType volatile
}
In the VPLS-LDP-MIB module:
In vplsLdpConfigTable:
{
vplsLdpConfigMacAddrWithdraw 1(true),
}
In vplsLdpPwBindTable:
{
vplsLdpPwBindType 1(mesh),
vplsLdpPwBindMacAddressLimit 100
}
6. Object definitions
6.1. VPLS-GENERIC-MIB
This MIB module makes references to the following documents.
Nadeau, et. al. Expires April 2, 2013 [Page 7]
Internet-Draft Vpls Management Information Base September 2012
[RFC2578], [RFC2579], [RFC2580], [RFC3411],
[RFC2863], [RFC4001], [RFC4265] and [RFC3813].
VPLS-GENERIC-MIB DEFINITIONS ::= BEGIN
IMPORTS
NOTIFICATION-TYPE, MODULE-IDENTITY, OBJECT-TYPE,
Unsigned32, Counter32, transmission
FROM SNMPv2-SMI -- RFC2578
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
FROM SNMPv2-CONF -- RFC2580
TruthValue, RowStatus, StorageType
FROM SNMPv2-TC -- RFC2579
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB -- RFC3411
pwIndex
FROM PW-TC-STD-MIB
VPNIdOrZero
FROM VPN-TC-STD-MIB -- RFC4265
-- Vpls BGP Auto-Discovery specific Textual Convention
VplsBgpRouteDistinguisher ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Syntax for a route distinguisher. For a complete
definition of a route distinguisher, see [RFC4364].
For more details on use of a route distinguisher
for a VPLS service, see [RFC4761]"
REFERENCE
"[RFC4364]"
SYNTAX OCTET STRING(SIZE (0..256))
VplsBgpRouteTarget ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Syntax for a route target. For a complete
definition of a route target, see [RFC4364]."
REFERENCE
"[RFC4364]"
SYNTAX OCTET STRING(SIZE (0..256))
Nadeau, et. al. Expires April 2, 2013 [Page 8]
Internet-Draft Vpls Management Information Base September 2012
VplsBgpRouteTargetType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Used to define the type of a route target usage.
Route targets can be specified to be imported,
exported, or both. For a complete definition of a
route target, see [RFC4364]."
REFERENCE
"[RFC4364]"
SYNTAX INTEGER { import(1), export(2), both(3) }
;
vplsGenericDraft01MIB MODULE-IDENTITY
LAST-UPDATED "201208261200Z" -- 26 Aug 2012 12:00:00 GMT
ORGANIZATION "Layer 2 Virtual Private Networks (L2VPN)
Working Group"
CONTACT-INFO
"
Thomas D. Nadeau
Email: tnadeau@juniper.net
The L2VPN Working Group (email distribution l2vpn@ietf.org,
http://www.ietf.org/html.charters/l2vpn-charter.html)
"
DESCRIPTION
"Copyright (C) The IETF Trust (2012). The initial
version of this MIB module was published in RFC XXXX.
-- RFC Editor: Please replace XXXX with RFC number & remove
-- this note.
For full legal notices see the RFC itself or see:
http://www.ietf.org/copyrights/ianamib.html
This MIB module contains generic managed object definitions
for Virtual Private LAN Services as define in [RFC4762] and
[RFC4761]
This MIB module enables the use of any underlying Pseudowire
network."
-- Revision history.
REVISION
"201209291200Z" -- 29 September 2012 12:00:00 GMT
DESCRIPTION
Nadeau, et. al. Expires April 2, 2013 [Page 9]
Internet-Draft Vpls Management Information Base September 2012
1) Changed the OID for vplsBgpRteTargetTable from vplsObjects.6 to
vplsObjects.5
2) Index to VplsPwBindTable is now pwIndex, not vplsPwBindIndex.
3) vplsConfigMtu increased to upto 9192
4) Default value for vplsConfigStorageType changed to nonvolatile.
5) vplsConfigServiceType should be a property of each PW. Deleting
this object and adjusting the corresponding object indexes.
"200608301200Z" -- 30 August 2006 12:00:00 GMT
DESCRIPTION
"Changes from previous version:
1) Moved LDP Specific information to VPLS-LDP-MIB
2) Created the vplsStatusTable to store status information.
3)
"
REVISION
"200606041200Z" -- 4 June 2006 12:00:00 GMT
DESCRIPTION "Initial version published as part of RFC YYYY."
-- RFC Editor: please replace YYYY with IANA assigned value, and
-- delete this note.
::= { transmission XXXX }
-- RFC Editor: please replace XXXX with IANA assigned value, and
-- delete this note.
-- Top-level components of this MIB.
-- Notifications
vplsNotifications OBJECT IDENTIFIER
::= { vplsGenericDraft01MIB 0 }
-- Tables, Scalars
vplsObjects OBJECT IDENTIFIER
::= { vplsGenericDraft01MIB 1 }
-- Conformance
vplsConformance OBJECT IDENTIFIER
::= { vplsGenericDraft01MIB 2 }
-- PW Virtual Connection Table
vplsConfigIndexNext OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
Nadeau, et. al. Expires April 2, 2013 [Page 10]
Internet-Draft Vpls Management Information Base September 2012
DESCRIPTION
"This object contains an appropriate value to be used
for vplsConfigIndex when creating entries in the
vplsConfigTable. The value 0 indicates that no
unassigned entries are available. To obtain the
value of vplsConfigIndex for a new entry in the
vplsConfigTable, the manager issues a management
protocol retrieval operation to obtain the current
value of vplsConfigIndex. After each retrieval
operation, the agent should modify the value to
reflect the next unassigned index. After a manager
retrieves a value the agent will determine through
its local policy when this index value will be made
available for reuse."
::= { vplsObjects 1 }
vplsConfigTable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies information for configuring
and monitoring Virtual Private Lan Services(VPLS).
"
::= { vplsObjects 2 }
vplsConfigEntry OBJECT-TYPE
SYNTAX VplsConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row in this table represents a Virtual Private Lan
Service(VPLS) in a packet network. It is indexed by
vplsConfigIndex, which uniquely identifies a single VPLS.
A row is created by the operator or by the agent if a
VPLS service is created by a non-SNMP application or
due to the Auto-Discovery process.
None of the read-create objects values can be
changed when vplsConfigRowStatus is in the active(1)
state. Changes are allowed when the vplsConfigRowStatus
is in notInService(2) or notReady(3) states only.
If the operator needs to change one of the values
for an active row the vplsConfigRowStatus should be
first changed to notInService(2), the objects may
Nadeau, et. al. Expires April 2, 2013 [Page 11]
Internet-Draft Vpls Management Information Base September 2012
then be changed, and finally the vplsConfigRowStatus
should be changed to active(1) in order to re-initiate
the signaling process with the new values in effect.
"
INDEX { vplsConfigIndex }
::= { vplsConfigTable 1 }
VplsConfigEntry ::=
SEQUENCE {
vplsConfigIndex Unsigned32,
vplsConfigName SnmpAdminString,
vplsConfigDescr SnmpAdminString,
vplsConfigAdminStatus INTEGER,
vplsConfigMacLearning TruthValue,
vplsConfigDiscardUnknownDest TruthValue,
vplsConfigMacAging TruthValue,
vplsConfigFwdFullHighWatermark Unsigned32,
vplsConfigFwdFullLowWatermark Unsigned32,
vplsConfigRowStatus RowStatus,
vplsConfigMtu Unsigned32,
vplsConfigVpnId VPNIdOrZero,
vplsConfigStorageType StorageType
}
vplsConfigIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Unique index for the conceptual row identifying
a VPLS service."
::= { vplsConfigEntry 1 }
vplsConfigName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A textual name of the VPLS.
If there is no local name, or this object is
otherwise not applicable, then this object MUST
contain a zero-length octet string."
DEFVAL { "" }
::= { vplsConfigEntry 2 }
vplsConfigDescr OBJECT-TYPE
SYNTAX SnmpAdminString
Nadeau, et. al. Expires April 2, 2013 [Page 12]
Internet-Draft Vpls Management Information Base September 2012
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A textual string containing information about the
VPLS service. If there is no information for this VPLS
service, then this object MUST contain a zero-length
octet string."
DEFVAL { "" }
::= { vplsConfigEntry 3 }
vplsConfigAdminStatus OBJECT-TYPE
SYNTAX INTEGER {
up(1),
down(2),
testing(3) -- in some test mode
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The desired administrative state of the VPLS
service. If the administrative status of the
VPLS service is changed to enabled then this
service is able to utilize pseudowires to
perform the tasks of a VPLS service.
The testing(3) state indicates that no operational
packets can be passed. "
DEFVAL { down }
::= { vplsConfigEntry 4 }
vplsConfigMacLearning OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies if MAC Learning is enabled
in this service. If this object is true then MAC
Learning is enabled. If false, then MAC Learning is
disabled."
DEFVAL { true }
::= { vplsConfigEntry 6 }
vplsConfigDiscardUnknownDest OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
Nadeau, et. al. Expires April 2, 2013 [Page 13]
Internet-Draft Vpls Management Information Base September 2012
"If the value of this object is 'true', then frames
received with an unknown destination MAC are discarded
in this VPLS. If 'false', then the packets are
processed."
DEFVAL { false }
::= { vplsConfigEntry 7 }
vplsConfigMacAging OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"If the value of this object is 'true'
then the MAC ageing process is enabled in
this VPLS. If 'false', then the MAC ageing process
is disabled"
DEFVAL { true }
::= { vplsConfigEntry 8 }
vplsConfigFwdFullHighWatermark OBJECT-TYPE
SYNTAX Unsigned32 (0..100)
UNITS "percentage"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the utilization of the
forwarding database for this VPLS instance at
which the vplsFwdFullAlarmRaised notification
will be sent."
DEFVAL { 95 }
::= { vplsConfigEntry 10 }
vplsConfigFwdFullLowWatermark OBJECT-TYPE
SYNTAX Unsigned32 (0..100)
UNITS "percentage"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the utilization of the
forwarding database for this VPLS instance
at which the vplsFwdFullAlarmCleared
notification will be sent."
DEFVAL { 90 }
::= { vplsConfigEntry 11 }
vplsConfigRowStatus OBJECT-TYPE
SYNTAX RowStatus
Nadeau, et. al. Expires April 2, 2013 [Page 14]
Internet-Draft Vpls Management Information Base September 2012
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"For creating, modifying, and deleting this row.
None of the read-create objects in the
conceptual rows may be changed when this
object is in the active(1) state."
::= { vplsConfigEntry 12 }
vplsConfigMtu OBJECT-TYPE
SYNTAX Unsigned32 (64..9192)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object specifies the MTU of this
vpls instance. This can be used to limit the MTU to a
value lower than the MTU supported by the associated
Pseudowires"
DEFVAL { 1518 }
::= { vplsConfigEntry 13 }
vplsConfigVpnId OBJECT-TYPE
SYNTAX VPNIdOrZero
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This objects indicates the IEEE 802-1990
VPN ID of the associated VPLS service."
::= { vplsConfigEntry 14 }
vplsConfigStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This variable indicates the storage type for this row."
DEFVAL { nonVolatile }
::= { vplsConfigEntry 15 }
-- VPLS Status table
vplsStatusTable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
Nadeau, et. al. Expires April 2, 2013 [Page 15]
Internet-Draft Vpls Management Information Base September 2012
"This table provides information for monitoring
Virtual Private Lan Services (VPLS).
"
::= { vplsObjects 3 }
vplsStatusEntry OBJECT-TYPE
SYNTAX VplsStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row in this table represents a Virtual Private Lan
Service(VPLS) in a packet network. It is indexed by
vplsConfigIndex, which uniquely identifies a single VPLS.
A row in this table is automatically created by the agent
when a VPLS service is configured.
"
INDEX { vplsConfigIndex }
::= { vplsStatusTable 1 }
VplsStatusEntry ::=
SEQUENCE {
vplsStatusOperStatus INTEGER,
vplsStatusPeerCount Counter32
}
vplsStatusOperStatus OBJECT-TYPE
SYNTAX INTEGER {
other(0),
up(1),
down(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current operational state of this VPLS Service."
::= { vplsStatusEntry 1 }
vplsStatusPeerCount OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This objects specifies the number of peers
(pseudowires) present in this VPLS instance."
::= { vplsStatusEntry 2 }
Nadeau, et. al. Expires April 2, 2013 [Page 16]
Internet-Draft Vpls Management Information Base September 2012
-- VPLS PW Binding Table
vplsPwBindTable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsPwBindEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table provides an association between a
VPLS service and the corresponding pseudowires.
A service can have more than one pseudowire
association. Pseudowires are defined in
the pwTable"
::= { vplsObjects 4 }
vplsPwBindEntry OBJECT-TYPE
SYNTAX VplsPwBindEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Each row represents an association between a
VPLS instance and one or more pseudowires
defined in the pwTable. Each index is unique
in describing an entry in this table. However
both indexes are required to define the one
to many association of service to
pseudowire."
INDEX { vplsConfigIndex, pwIndex }
::= { vplsPwBindTable 1 }
VplsPwBindEntry ::=
SEQUENCE {
vplsPwBindConfigType INTEGER,
vplsPwBindType INTEGER,
vplsPwBindRowStatus RowStatus,
vplsPwBindStorageType StorageType
}
vplsPwBindConfigType OBJECT-TYPE
SYNTAX INTEGER {
manual (1),
autodiscovery (2)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object indicates
Nadeau, et. al. Expires April 2, 2013 [Page 17]
Internet-Draft Vpls Management Information Base September 2012
whether the Pseudo Wire binding was created
manually or via Auto-Discovery.
The value of this object must be
specifed when the row is created and cannot
be changed while the row status is active(1)"
::= { vplsPwBindEntry 1 }
vplsPwBindType OBJECT-TYPE
SYNTAX INTEGER {
mesh (1),
spoke (2)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object indicates
whether the pseudowire binding is of
type mesh or spoke.
The value of this object must be
specified when the row is created and cannot
be changed while the row status is active(1)"
::= { vplsPwBindEntry 2 }
vplsPwBindRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"For creating, modifying, and deleting this row.
None of the read-create objects in the
conceptual rows may be changed when this
object is in the active(1) state"
::= { vplsPwBindEntry 3 }
vplsPwBindStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This variable indicates the storage type for this row."
DEFVAL { volatile }
::= { vplsPwBindEntry 4 }
-- vplsBgpADConfigTable
Nadeau, et. al. Expires April 2, 2013 [Page 18]
Internet-Draft Vpls Management Information Base September 2012
vplsBgpADConfigTable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsBgpADEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies information for configuring
BGP Auto-Discovery parameters for a given VPLS service.
"
::= { vplsObjects 5 }
vplsBgpADConfigEntry OBJECT-TYPE
SYNTAX VplsBgpADConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row in this table indicates that BGP based Auto-
Discovery is in use for this instance of VPLS.
A row in this table is indexed by vplsConfigIndex, which
uniquely identifies a single VPLS.
None of the read-create objects can be changed when
vplsBGPADConfigRowStatus is in active(1) state. Changes
are allowed when the vplsBGPADConfigRowStatus is in
notInService(2) or notReady(3) states only.
If the operator needs to change one of the values
for an active row the vplsConfigRowStatus should be
first changed to notInService(2), the objects may
then be changed, and finally the vplsConfigRowStatus
should be changed to active(1) in order to
re-initiate the signaling process with the new
values in effect.
"
INDEX { vplsConfigIndex }
::= { vplsBgpADConfigTable 1 }
VplsBgpADConfigEntry ::=
SEQUENCE {
vplsBgpADConfigRouteDistinguisher VplsBgpRouteDistinguisher,
vplsBgpADConfigPrefix Unsigned32,
vplsBgpADConfigVplsId VplsBgpRouteDistinguisher,
vplsBgpADConfigRowStatus RowStatus
}
vplsBgpADConfigRouteDistinguisher OBJECT-TYPE
SYNTAX VplsBgpRouteDistinguisher
MAX-ACCESS read-create
STATUS current
DESCRIPTION
Nadeau, et. al. Expires April 2, 2013 [Page 19]
Internet-Draft Vpls Management Information Base September 2012
" The route distinguisher for this VPLS. See [RFC4364]
for a complete definition of a route distinguisher.
for more details on use of a route distinguisher
for a VPLS service, see [RFC4761]. When not configured, the
value is derived from the lower 6 bytes of
vplsBgpADConfigVplsId.
"
::= { vplsBgpADConfigEntry 1 }
vplsBgpADConfigPrefix OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-create
STATUS current
DESCRIPTION
" In case of auto-discovery the default prefix advertised
is the IP address of the loopback. In case the user wants
to override the loopback address, vplsBgpADConfigPrefix
should be set. When this value is non-zero this value is
used along with vplsBgpADConfigRouteDistinguisher in the
NLRI, see [RFC 6074]
"
DEFVAL { 0 }
::= { vplsBgpADConfigEntry 2 }
vplsBgpADConfigVplsId OBJECT-TYPE
SYNTAX VplsBgpRouteDistinguisher
MAX-ACCESS read-create
STATUS current
DESCRIPTION
" VplsId is a unique identifier for all VSIs belonging to
the same VPLS. It is advertised as an extended community.
"
::= { vplsBgpADConfigEntry 3 }
vplsBgpADConfigRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
" For creating, modifying, and deleting this row.
None of the read-create objects in the
conceptual rows may be changed when this
object is in the active(1) state.
"
::= { vplsBgpADConfigEntry 4 }
Nadeau, et. al. Expires April 2, 2013 [Page 20]
Internet-Draft Vpls Management Information Base September 2012
-- vplsBgpRteTargetTable
vplsBgpRteTargetTable OBJECT-TYPE
SYNTAX SEQUENCE Of VplsBgpRteTargetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
" This table specifies the list of Route Targets
imported or exported by BGP during auto-discovery of VPLS.
"
::= { vplsObjects 6 }
vplsBgpRteTargetEntry OBJECT-TYPE
SYNTAX VplsBgpRteTargetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in this table specifies the value of the
Route Target being used by BGP. Depending on the value
of vplsBgpRteTargetType a Route Target might be exported or
imported or both. Every VPLS which
uses auto-discovery for finding peer nodes can import and
export multiple Route Targets. This representation allows
support for hierarchical VPLS.
"
INDEX { vplsConfigIndex, vplsBgpRteTargetIndex }
::= { vpsBgpRteTargetTable 1 }
VplsBgpRteTargetEntry ::=
SEQUENCE {
vplsBgpRteTargetIndex Unsigned32,
vplsBgpRteTargetRTType VplsBgpRouteTargetType,
vplsBgpRteTargetRT VplsBgpRouteTarget,
vplsBgpRteTargetRTRowStatus RowStatus
}
vplsBgpRteTargetIndex OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This index along with vplsConfigIndex, identifies one
entry in the vplsBgpRteTargetTable. By keeping
vplsConfigIndex constant and using new value of
vplsBgpRteTargetIndex users can configure multiple Route
Targets for the same VPLS.
"
Nadeau, et. al. Expires April 2, 2013 [Page 21]
Internet-Draft Vpls Management Information Base September 2012
::= { vplsBgpADConfigEntry 1 }
vplsBgpRteTargetRTType OBJECT-TYPE
SYNTAX VplsBgpRouteTargetType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
" Used to define the type of a route target usage.
Route targets can be specified to be imported,
exported, or both. For a complete definition of a
route target, see [RFC4364]."
"
::= { vplsBgpADConfigEntry 2 }
vplsBgpRteTargetRT OBJECT-TYPE
SYNTAX VplsBgpRouteTarget
MAX-ACCESS read-create
STATUS current
DESCRIPTION
" The route target associated with the VPLS service.
For more details on use of route targets
for a VPLS service, see [RFC4761]
"
::= { vplsBgpADConfigEntry 3 }
vplsBgpRteTargetRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This variable is used to create, modify, and/or
delete a row in this table. When a row in this
table is in active(1) state, no objects in that row
can be modified
"
::= { vplsBgpADConfigEntry 4 }
vplsStatusNotifEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"If this object is set to true(1), then it enables
the emission of vplsStatusChanged
notification; otherwise this notification is not
emitted."
REFERENCE
Nadeau, et. al. Expires April 2, 2013 [Page 22]
Internet-Draft Vpls Management Information Base September 2012
"See also [RFC3413] for explanation that
notifications are under the ultimate control of the
MIB module in this document."
DEFVAL { false }
::= { vplsObjects 7 }
vplsNotificationMaxRate OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object indicates the maximum number of
notifications issued per second. If events occur
more rapidly, the implementation may simply fail to
emit these notifications during that period, or may
queue them until an appropriate time. A value of 0
means no throttling is applied and events may be
notified at the rate at which they occur."
DEFVAL { 0 }
::= { vplsObjects 8 }
-- VPLS Service Notifications
vplsStatusChanged NOTIFICATION-TYPE
OBJECTS {
vplsConfigVpnId,
vplsConfigAdminStatus,
vplsStatusOperStatus
}
STATUS current
DESCRIPTION
"The vplsStatusChanged notification is generated
when there is a change in the administrative or
operating status of a VPLS service."
::= { vplsNotifications 1 }
vplsFwdFullAlarmRaised NOTIFICATION-TYPE
OBJECTS {
vplsConfigVpnId,
vplsConfigFwdFullHighWatermark,
vplsConfigFwdFullLowWatermark
}
STATUS current
DESCRIPTION
"The vplsFwdFullAlarmRaised notification is
generated when the utilization of the Forwarding
database is above the value specified by
vplsConfigFwdFullHighWatermark."
Nadeau, et. al. Expires April 2, 2013 [Page 23]
Internet-Draft Vpls Management Information Base September 2012
::= { vplsNotifications 2 }
vplsFwdFullAlarmCleared NOTIFICATION-TYPE
OBJECTS {
vplsConfigVpnId,
vplsConfigFwdFullHighWatermark,
vplsConfigFwdFullLowWatermark
}
STATUS current
DESCRIPTION
"The vplsFwdFullAlarmCleared notification is
generated when the utilization of the Forwarding
database is below the value specified by
vplsConfigFwdFullLowWatermark."
::= { vplsNotifications 3 }
-- Conformance Section
vplsCompliances
OBJECT IDENTIFIER ::= { vplsConformance 1 }
-- Compliance requirement for fully compliant implementations
vplsModuleFullCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance requirement for implementations that
provide full support for VPLS-GENERIC-MIB.
Such devices can then be monitored and configured using
this MIB module."
MODULE -- this module
MANDATORY-GROUPS {
vplsGroup,
vplsPwBindGroup,
vplsNotificationGroup
}
::= { vplsCompliances 1 }
-- Compliance requirement for read-only implementations.
vplsModuleReadOnlyCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance requirement for implementations that only
provide read-only support for VPLS-GENERIC-MIB.
Such devices can then be monitored but cannot be
Nadeau, et. al. Expires April 2, 2013 [Page 24]
Internet-Draft Vpls Management Information Base September 2012
configured using this MIB modules."
MODULE -- this module
MANDATORY-GROUPS {
vplsGroup,
vplsPwBindGroup,
vplsNotificationGroup
}
OBJECT vplsConfigName
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigDescr
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigAdminStatus
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigMacLearning
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigDiscardUnknownDest
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigMacAging
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigFwdFullHighWatermark
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
Nadeau, et. al. Expires April 2, 2013 [Page 25]
Internet-Draft Vpls Management Information Base September 2012
OBJECT vplsConfigFwdFullLowWatermark
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigRowStatus
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigMtu
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsConfigServiceType
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsPwBindConfigType
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsPwBindType
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsPwBindRowStatus
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { vplsCompliances 2 }
-- Units of conformance.
vplsGroups
OBJECT IDENTIFIER ::= { vplsConformance 2 }
vplsGroup OBJECT-GROUP
OBJECTS {
vplsConfigName,
Nadeau, et. al. Expires April 2, 2013 [Page 26]
Internet-Draft Vpls Management Information Base September 2012
vplsConfigDescr,
vplsConfigAdminStatus,
vplsConfigMacLearning,
vplsConfigDiscardUnknownDest,
vplsConfigMacAging,
vplsConfigVpnId,
vplsConfigFwdFullHighWatermark,
vplsConfigFwdFullLowWatermark,
vplsConfigRowStatus,
vplsConfigIndexNext,
vplsConfigMtu,
vplsConfigStorageType,
vplsStatusOperStatus,
vplsStatusPeerCount,
vplsStatusNotifEnable,
vplsNotificationMaxRate
}
STATUS current
DESCRIPTION
"The group of objects supporting
management of L2VPN VPLS services"
::= { vplsGroups 1 }
vplsPwBindGroup OBJECT-GROUP
OBJECTS {
vplsPwBindConfigType,
vplsPwBindType,
vplsPwBindRowStatus,
vplsPwBindStorageType
}
STATUS current
DESCRIPTION
"The group of objects supporting
management of
Pseudo Wire (PW) Binding to VPLS."
::= { vplsGroups 2 }
vplsNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS {
vplsStatusChanged,
vplsFwdFullAlarmRaised,
vplsFwdFullAlarmCleared
}
STATUS current
DESCRIPTION
"The group of notifications supporting
the Notifications generated for
Nadeau, et. al. Expires April 2, 2013 [Page 27]
Internet-Draft Vpls Management Information Base September 2012
VPLS Services"
::= { vplsGroups 3 }
END
6.2. VPLS-LDP-MIB Object definitions
This MIB module makes references to the following documents.
[RFC2578], [RFC2579], [RFC2580], [RFC3411],
[RFC2863], [RFC4001], [RFC4265] and [RFC3813].
VPLS-LDP-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
Unsigned32, transmission
FROM SNMPv2-SMI -- RFC2578
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF -- RFC2580
TruthValue
FROM SNMPv2-TC -- RFC2579
pwIndex
FROM PW-TC-STD-MIB
vplsConfigIndex
FROM VPLS-GENERIC-MIB;
vplsLdpDraft01MIB MODULE-IDENTITY
LAST-UPDATED "201208201200Z" -- 20 August 2012 12:00:00 GMT
ORGANIZATION "Layer 2 Virtual Private Networks (L2VPN)
Working Group"
CONTACT-INFO
"
Rohit Mediratta
Email: Rohit.mediratta@alcatel-lucent.com
The L2VPN Working Group (email distribution l2vpn@ietf.org,
http://www.ietf.org/html.charters/l2vpn-charter.html)
"
DESCRIPTION
"Copyright (C) The IETF Trust (2012). The initial
Nadeau, et. al. Expires April 2, 2013 [Page 28]
Internet-Draft Vpls Management Information Base September 2012
version of this MIB module was published in RFC XXXX.
-- RFC Editor: Please replace XXXX with RFC number & remove
-- this note.
For full legal notices see the RFC itself or see:
http://www.ietf.org/copyrights/ianamib.html
This MIB module contains managed object definitions for
LDP signaled Virtual Private LAN Services as in
[RFC4762]
This MIB module enables the use of any underlying pseudowire
network. "
-- Revision history.
REVISION
"200608301200Z" -- 30 Aug 2006 12:00:00 GMT
DESCRIPTION "Initial version published as part of RFC YYYY."
-- RFC Editor: please replace YYYY with IANA assigned value, and
-- delete this note.
::= { transmission XXXX }
-- RFC Editor: please replace XXXX with IANA assigned value, and
-- delete this note.
-- Top-level components of this MIB.
-- Notifications
vplsLdpNotifications OBJECT IDENTIFIER
::= { vplsLdpDraft01MIB 0 }
-- Tables, Scalars
vplsLdpObjects OBJECT IDENTIFIER
::= { vplsLdpDraft01MIB 1 }
-- Conformance
vplsLdpConformance OBJECT IDENTIFIER
::= { vplsLdpDraft01MIB 2 }
vplsLdpConfigTable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsLdpConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies information for configuring
and monitoring LDP specific parameters for
Virtual Private Lan Services (VPLS)."
Nadeau, et. al. Expires April 2, 2013 [Page 29]
Internet-Draft Vpls Management Information Base September 2012
::= { vplsLdpObjects 1 }
vplsLdpConfigEntry OBJECT-TYPE
SYNTAX VplsLdpConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row in this table represents LDP specific information
for Virtual Private Lan Services (VPLS) in a packet network.
It is indexed by vplsConfigIndex, which uniquely
identifies a single VPLS.
A row is automatically created when a VPLS service is
configured using LDP signaling.
None of the read-create objects values can be
changed when vplsRowStatus is in the active(1)
state. Changes are allowed when the vplsRowStatus
is in notInService(2) or notReady(3) states only.
If the operator needs to change one of the values
for an active row the vplsConfigRowStatus should be
first changed to notInService(2), the objects may
then be changed, and finally the vplsConfigRowStatus
should be changed to active(1) in order to
re-initiate the signaling process with the new
values in effect.
"
INDEX { vplsConfigIndex }
::= { vplsLdpConfigTable 1 }
VplsLdpConfigEntry ::=
SEQUENCE {
vplsLdpConfigMacAddrWithdraw TruthValue
}
vplsLdpConfigMacAddrWithdraw OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies if MAC address withdrawal
is enabled in this service. If this object is true then
MAC address withdrawal is enabled. If false,
then MAC address withdrawal is disabled."
DEFVAL { true }
::= { vplsLdpConfigEntry 1 }
Nadeau, et. al. Expires April 2, 2013 [Page 30]
Internet-Draft Vpls Management Information Base September 2012
-- VPLS LDP PW Binding Table
vplsLdpPwBindTable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsLdpPwBindEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table provides LDP specific information for
an association between a VPLS service and the
corresponding pseudowires. A service can have more
than one pseudowire association. Pseudowires are
defined in the pwTable."
::= { vplsLdpObjects 2 }
vplsLdpPwBindEntry OBJECT-TYPE
SYNTAX VplsLdpPwBindEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Each row represents an association between a
VPLS instance and one or more pseudowires
defined in the pwTable. Each index is unique
in describing an entry in this table. However
both indexes are required to define the one
to many association of service to pseudowire.
An entry in this table in instantiated only when
LDP signaling is used to configure VPLS service.
Each entry in this table provides LDP specific
information for the VPLS represented by
vplsConfigIndex."
INDEX { vplsConfigIndex, pwIndex }
::= { vplsLdpPwBindTable 1 }
VplsLdpPwBindEntry ::=
SEQUENCE {
vplsLdpPwBindMacAddressLimit Unsigned32
}
vplsLdpPwBindMacAddressLimit OBJECT-TYPE
SYNTAX Unsigned32 (0..4294967295)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object specifies the maximum number
of learned and static entries allowed in the
Nadeau, et. al. Expires April 2, 2013 [Page 31]
Internet-Draft Vpls Management Information Base September 2012
Forwarding database for this PW Binding. The value 0
means there is no limit for this PW Binding."
DEFVAL { 0 }
::= { vplsLdpPwBindEntry 1 }
-- VPLS LDP Service Notifications
vplsLdpPwBindMacTableFull NOTIFICATION-TYPE
OBJECTS {
vplsConfigIndex,
pwIndex
}
STATUS current
DESCRIPTION
"The vplsLdpPwBindMacTableFull notification is generated
when the number of learned MAC-Addresses increases to
the value specified in vplsLdpPwBindMacAddressLimit."
::= { vplsLdpNotifications 1 }
-- Conformance Section
vplsLdpCompliances
OBJECT IDENTIFIER ::= { vplsLdpConformance 1 }
-- Compliance requirement for fully compliant implementations
vplsLdpModuleFullCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance requirement for implementations that
provide full support for VPLS-LDP-MIB.
Such devices can then be monitored and configured using
this MIB module."
MODULE -- this module
MANDATORY-GROUPS {
vplsLdpGroup,
vplsLdpNotificationGroup
}
::= { vplsLdpCompliances 1 }
-- Compliance requirement for read-only implementations.
Nadeau, et. al. Expires April 2, 2013 [Page 32]
Internet-Draft Vpls Management Information Base September 2012
vplsLdpModuleReadOnlyCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance requirement for implementations that only
provide read-only support for VPLS-LDP-MIB.
Such devices can then be monitored but cannot be
configured using this MIB modules."
MODULE -- this module
MANDATORY-GROUPS {
vplsLdpGroup,
vplsLdpNotificationGroup
}
OBJECT vplsLdpConfigMacAddrWithdraw
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsLdpPwBindMacAddressLimit
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { vplsLdpCompliances 2 }
-- Units of conformance.
vplsLdpGroups
OBJECT IDENTIFIER ::= { vplsLdpConformance 2 }
vplsLdpGroup OBJECT-GROUP
OBJECTS {
vplsLdpConfigMacAddrWithdraw,
vplsLdpPwBindMacAddressLimit
}
STATUS current
DESCRIPTION
"The group of objects supporting
management of L2VPN VPLS services using LDP."
::= { vplsLdpGroups 1 }
vplsLdpNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS {
vplsLdpPwBindMacTableFull
Nadeau, et. al. Expires April 2, 2013 [Page 33]
Internet-Draft Vpls Management Information Base September 2012
}
STATUS current
DESCRIPTION
"The group of notifications supporting
the Notifications generated for
VPLS Ldp Service"
::= { vplsLdpGroups 2 }
END
6.3. VPLS-BGP-MIB Object definitions
VPLS-BGP-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
Unsigned32, transmission
FROM SNMPv2-SMI -- RFC2578
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF -- RFC2580
RowStatus, StorageType, TEXTUAL-CONVENTION
FROM SNMPv2-TC -- RFC2579
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB -- RFC3411
vplsConfigIndex
FROM VPLS-GENERIC-MIB
;
vplsBgpDraft01MIB MODULE-IDENTITY
LAST-UPDATED "201208201200Z" -- 20 Aug 2012 12:00:00 GMT
ORGANIZATION "Layer 2 Virtual Private Networks (L2VPN)
Working Group"
CONTACT-INFO
"
V. J. Shah
Email: vshah@juniper.net
The L2VPN Working Group (email distribution l2vpn@ietf.org,
http://www.ietf.org/html.charters/l2vpn-charter.html)
"
Nadeau, et. al. Expires April 2, 2013 [Page 34]
Internet-Draft Vpls Management Information Base September 2012
DESCRIPTION
"Copyright (C) The IETF Trust (2012). The initial
version of this MIB module was published in RFC XXXX.
-- RFC Editor: Please replace XXXX with RFC number & remove
-- this note.
For full legal notices see the RFC itself or see:
http://www.ietf.org/copyrights/ianamib.html
This MIB module contains managed object definitions for
BGP signaled Virtual Private LAN Services as in
[RFC4761]
This MIB module enables the use of any underlying pseudowire
network. "
-- Revision history.
REVISION
"201208201200Z" -- 20 Aug 2012 12:00:00 GMT
DESCRIPTION "Initial version published as part of RFC YYYY."
-- RFC Editor: please replace YYYY with IANA assigned value, and
-- delete this note.
::= { transmission XXXX }
-- RFC Editor: please replace XXXX with IANA assigned value, and
-- delete this note.
-- VPLS BGP specific Textual Conventions.
VplsBgpRouteDistinguisher ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Syntax for a route distinguisher. For a complete
definition of a route distinguisher, see [RFC4364].
For more details on use of a route distinguisher
for a VPLS service, see [RFC4761]"
REFERENCE
"[RFC4364]"
SYNTAX OCTET STRING(SIZE (0..256))
VplsBgpRouteTarget ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Syntax for a route target. For a complete
definition of a route target, see [RFC4364]."
REFERENCE
"[RFC4364]"
SYNTAX OCTET STRING(SIZE (0..256))
Nadeau, et. al. Expires April 2, 2013 [Page 35]
Internet-Draft Vpls Management Information Base September 2012
-- Top-level components of this MIB.
-- Tables, Scalars
vplsBgpObjects OBJECT IDENTIFIER
::= { vplsBgpDraft01MIB 1 }
-- Conformance
vplsBgpConformance OBJECT IDENTIFIER
::= { vplsBgpDraft01MIB 2 }
-- Vpls Bgp Config Table
vplsBgpConfigTable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsBgpConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies information for configuring
and monitoring BGP specific parameters for
Virtual Private LAN Services (VPLS)."
::= { vplsBgpObjects 1 }
vplsBgpConfigEntry OBJECT-TYPE
SYNTAX VplsBgpConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row in this table represents BGP specific information
for Virtual Private LAN Services (VPLS) in a packet network.
It is indexed by vplsConfigIndex, which uniquely
identifies a single instance of a VPLS service.
A row is automatically created when a VPLS service is
configured using BGP signaling.
None of the read-create objects values can be
changed when vplsRowStatus is in the active(1)
state. Changes are allowed when the vplsRowStatus
is in notInService(2) or notReady(3) states only.
If the operator needs to change one of the values
for an active row the vplsConfigRowStatus should be
first changed to notInService(2), the objects may
then be changed, and finally the vplsConfigRowSTatus
should be changed to active(1) in order to
re-initiate the signaling process with the new
values in effect.
"
INDEX { vplsConfigIndex }
::= { vplsBgpConfigTable 1 }
Nadeau, et. al. Expires April 2, 2013 [Page 36]
Internet-Draft Vpls Management Information Base September 2012
VplsBgpConfigEntry ::=
SEQUENCE {
vplsBgpConfigVERangeSize Unsigned32
}
vplsBgpConfigVERangeSize OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Specifies the size of the range of VE ids in this
VPLS service. This number controls the size of the
label block advertised for this VE by the PE.
A value of 0 indicates that the range is not
configured and the PE derives the range value
from received advertisements from other PEs."
DEFVAL { 0 }
::= { vplsBgpConfigEntry 1 }
-- Vpls Edge Device (VE) Identifier Table
vplsBgpVETable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsBgpVEEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table associates VPLS Edge devices to a VPLS service"
::= { vplsBgpObjects 2 }
vplsBgpVEEntry OBJECT-TYPE
SYNTAX VplsBgpVEEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in this table is created for each VE Id
configured on a PE for a particular VPLS service
instance."
INDEX { vplsConfigIndex, vplsBgpVEId }
::= { vplsBgpVETable 1 }
VplsBgpVEEntry ::= SEQUENCE {
vplsBgpVEId Unsigned32,
vplsBgpVEName SnmpAdminString,
vplsBgpVEPreference Unsigned32,
vplsBgpVERowStatus RowStatus,
vplsBgpVEStorageType StorageType
Nadeau, et. al. Expires April 2, 2013 [Page 37]
Internet-Draft Vpls Management Information Base September 2012
}
vplsBgpVEId OBJECT-TYPE
SYNTAX Unsigned32 (1..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A secondary index identifying a VE within an
instance of a VPLS service."
::= { vplsBgpVEEntry 1 }
vplsBgpVEName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Descriptive name for the site or u-PE associated with
this VE Id."
DEFVAL { "" }
::= { vplsBgpVEEntry 2 }
vplsBgpVEPreference OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Specifies the preference of the VE Id on this PE
if the site is multi-homed and VE Id is re-used."
DEFVAL { 0 }
::= { vplsBgpVEEntry 3 }
vplsBgpVERowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This variable is used to create, modify, and/or
delete a row in this table. When a row in this
table is in active(1) state, no objects in that row
can be modified except vplsBgpSiteRowStatus."
::= { vplsBgpVEEntry 5 }
vplsBgpVEStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
Nadeau, et. al. Expires April 2, 2013 [Page 38]
Internet-Draft Vpls Management Information Base September 2012
"This variable indicates the storage type for this row."
DEFVAL { volatile }
::= { vplsBgpVEEntry 6 }
-- VPLS BGP PW Binding Table
vplsBgpPwBindTable OBJECT-TYPE
SYNTAX SEQUENCE OF VplsBgpPwBindEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table provides BGP specific information for
an association between a VPLS service and the
corresponding pseudowires. A service can have more
than one pseudowire association. Pseudowires are
defined in the pwTable."
::= { vplsBgpObjects 3 }
vplsBgpPwBindEntry OBJECT-TYPE
SYNTAX VplsBgpPwBindEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Each row represents an association between a
VPLS instance and one or more Pseudowires
defined in the pwTable. Each index is unique
in describing an entry in this table. However
both indexes are required to define the one
to many association of service to pseudowire.
An entry in this table in instantiated only when
BGP signaling is used to configure VPLS service.
Each entry in this table provides BGP specific
information for the VPlS represented by
vplsConfigIndex."
INDEX { vplsConfigIndex, pwIndex }
::= { vplsBgpPwBindTable 1 }
VplsBgpPwBindEntry ::=
SEQUENCE {
vplsBgpPwBindLocalVEId Unsigned32,
vplsBgpPwBindRemoteVEId Unsigned32
}
vplsBgpPwBindLocalVEId OBJECT-TYPE
SYNTAX Unsigned32 (1..65535)
MAX-ACCESS read-only
Nadeau, et. al. Expires April 2, 2013 [Page 39]
Internet-Draft Vpls Management Information Base September 2012
STATUS current
DESCRIPTION
"Identifies the local VE that this pseudowire
is associated with."
::= { vplsBgpPwBindEntry 1 }
vplsBgpPwBindRemoteVEId OBJECT-TYPE
SYNTAX Unsigned32 (1..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Identifies the remote VE that this pseudowire
is associated with."
::= { vplsBgpPwBindEntry 2 }
-- Conformance Section
-- Compliance requirement for fully compliant implementations
vplsBgpCompliances
OBJECT IDENTIFIER ::= { vplsBgpConformance 1 }
vplsBgpModuleFullCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance requirement for implementations that
provide full support for VPLS-BGP-MIB.
Such devices can then be monitored and configured using
this MIB module."
MODULE -- this module
MANDATORY-GROUPS {
vplsBgpConfigGroup,
vplsBgpVEGroup,
vplsBgpPwBindGroup
}
::= { vplsBgpCompliances 1 }
-- Compliance requirement for read-only implementations.
vplsBgpModuleReadOnlyCompliance MODULE-COMPLIANCE
STATUS current
Nadeau, et. al. Expires April 2, 2013 [Page 40]
Internet-Draft Vpls Management Information Base September 2012
DESCRIPTION
"Compliance requirement for implementations that only
provide read-only support for VPLS-BGP-MIB.
Such devices can then be monitored but cannot be
configured using this MIB modules."
MODULE -- this module
MANDATORY-GROUPS {
vplsBgpConfigGroup,
vplsBgpVEGroup,
vplsBgpPwBindGroup
}
OBJECT vplsBgpConfigVERangeSize
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsBgpVEName
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsBgpVEPreference
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT vplsBgpVERowStatus
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { vplsBgpCompliances 2 }
-- Units of conformance.
vplsBgpGroups
OBJECT IDENTIFIER ::= { vplsBgpConformance 2 }
vplsBgpConfigGroup OBJECT-GROUP
OBJECTS {
vplsBgpConfigVERangeSize
}
STATUS current
Nadeau, et. al. Expires April 2, 2013 [Page 41]
Internet-Draft Vpls Management Information Base September 2012
DESCRIPTION
"The group of objects supporting configuration
of L2VPN VPLS services using BGP"
::= { vplsBgpGroups 1 }
vplsBgpVEGroup OBJECT-GROUP
OBJECTS {
vplsBgpVEName,
vplsBgpVEPreference,
vplsBgpVERowStatus,
vplsBgpVEStorageType
}
STATUS current
DESCRIPTION
"The group of objects supporting management of VPLS
Edge devices for L2VPN VPLS services using BGP"
::= { vplsBgpGroups 2 }
vplsBgpPwBindGroup OBJECT-GROUP
OBJECTS {
vplsBgpPwBindLocalVEId,
vplsBgpPwBindRemoteVEId
}
STATUS current
DESCRIPTION
"The group of objects supporting management of
Pseudo Wires for L2VPN VPLS services using BGP"
::= { vplsBgpGroups 3 }
END
7. Security Considerations
It is clear that the MIB modules described in this document in
association with the PW-STD-MIB [RFC5601] are potentially
useful for monitoring of VPLS capable LERs. These MIB modules can
also be used for configuration of certain objects, and anything that
can be configured can be incorrectly configured, with potentially
disastrous results.
There are a number of management objects defined in these MIB
modules with a MAX-ACCESS clause of read-write and/or read-create.
Such objects may be considered sensitive or vulnerable in some
network environments. The support for SET operations in a non-secure
environment without proper protection can have a negative effect on
network operation.
Nadeau, et. al. Expires April 2, 2013 [Page 42]
Internet-Draft Vpls Management Information Base September 2012
8. IANA Considerations
-- (Note to RFC-Editor:)
-- IANA is requested to root the MIB modules
-- contained in this document under the transmission subtree.
--
9. References
9.1. Normative References
[RFC2119] S. Bradner, "Key Words for use in RFCs to Indicate
Requirement Levels", RFC 2119, BCP 14, March 1997.
[RFC2863] McCloghrie, K. and F. Kastenholtz, "The Interfaces Group
MIB", RFC 2863, June 2000.
[RFC3413] Levi, D., Meyer, P., and B. Stewart, "Simple Network
Management Protocol (SNMP) Applications", STD 62, RFC
3413, December 2002.
[RFC3415] Wijnen, B., Presuhn, R. and K. McCloghrie, "View-
based Access Control Model (VACM) for the Simple
Network Management Protocol (SNMP)", STD 62, RFC
3415, December 2002.
[RFC3813] Srinivasan, C., Viswanathan, A. and Nadeau, T.,
"Multiprotocol Label Switching (MPLS) Label Switching
Router (LSR) Management Information Base",
RFC 3813, June 2004
[RFC4001] Daniele, M., Haberman, B., Routhier, S., and J.
Schoenwaelder, "Textual Conventions for Internet Network
Addresses", RFC 4001, Feb 2005.
[RFC4188] Norseth, K., and Bell, E., "Definitions of Managed
Objects for Bridges", RFC 4188, Sept 2006.
[RFC4265] Schliesser, B. and T. Nadeau, "Definition of Textual
Conventions for Virtual Private Network (VPN)
Management", RFC 4265, November 2005.
[RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private
Networks (VPNs)", RFC 4364, February 2006.
Nadeau, et. al. Expires April 2, 2013 [Page 43]
Internet-Draft Vpls Management Information Base September 2012
[RFC4761] Kompella, K. and Y. Rekhter, "Virtual Private LAN Service
(VPLS) Using BGP for Auto-Discovery and Signaling",RFC
4761, January 2007.
[RFC4762] Lasserre, M. and Kompella, V. (Editors), "Virtual Private
LAN Service (VPLS) Using Label Distribution Protocol (LDP)
Signaling", RFC 4762, January 2007.
[RFC5601] T. Nadeau, Ed., D. Zelig, Ed., "Pseudowire (PW)
Management Information Base (MIB)", RFC 5601, July 2009.
9.2. Informative References
[RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
J., Rose, M., and S. Waldbusser, "Structure of
Management Information Version 2 (SMIv2)", STD 58, RFC
2578, April 1999.
[RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
J., Rose, M., and S. Waldbusser, "Textual Conventions
for SMIv2", STD 58, RFC 2579, April 1999.
[RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
J., Rose, M., and S. Waldbusser, "Conformance
Statements for SMIv2", STD 58, RFC 2580, April 1999.
[RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart,
"Introduction and Applicability Statements for
Internet-Standard Management Framework", RFC 3410,
December 2002.
[RFC3411] Harrington, D., Presuhn, R., and B. Wijnen, "An
Architecture for Describing Simple Network Management
Protocol (SNMP) Management Frameworks", STD 62, RFC 3411,
December 2002.
[RFC3985] Bryant, S. and P. Pate, "Pseudo Wire Emulation Edge-to-
Edge (PWE3) Architecture", RFC 3985, March 2005.
[SNMP-CONTEXT-MAP-MIB] SNMP Context Mapping MIB, AS, Kiran Koushik,
Nadeau, T, draft-kkoushik-snmp-context-map-mib.
Nadeau, et. al. Expires April 2, 2013 [Page 44]
Internet-Draft Vpls Management Information Base September 2012
10. Acknowledgments
We wish to thank Marcelo Mourier and Reva Bailey for their
valuable feedback. Some portion of the work has been referenced
from their original Timetra Enterprise MIB work.
We wish to thank Praveen Muley, VJ Shah, Li Wentao, Kong Yong, Luo
Jian, Feng Jun, Takeshi Usui for their feedback.
11. Authors' Addresses
Thomas D. Nadeau
Juniper Networks
Email: tnadeau@juniper.net
A S Kiran Koushik
Cisco Systems Inc.
12515 Research Blvd, Bldg 4,
Austin, TX 78759
Email: kkoushik@cisco.com
Rohit Mediratta
Alcatel-Lucent,
701 E Middlefield Rd.
Mountain View, CA 94040
Email: rohit.mediratta@alcatel-lucent.com
12. Full Copyright Statement
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this
document must include Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License.
Nadeau, et. al. Expires April 2, 2013 [Page 45]
Internet-Draft Vpls Management Information Base September 2012
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s)
controlling the copyright in such materials, this document may not
be modified outside the IETF Standards Process, and derivative
works of it may not be created outside the IETF Standards Process,
except to format it for publication as an RFC or to translate it
into languages other than English.
Nadeau, et. al. Expires April 2, 2013 [Page 46]