Internet Draft Thomas D. Nadeau (Ed.) Intended status: Standards Track A S Kiran Koushik (Ed.) Expires: Feb 2009 Cisco Systems, Inc. Rohit Mediratta (Ed.) Alcatel-Lucent Virtual Private Lan Services (VPLS) Management Information Base draft-ietf-l2vpn-vpls-mib-02.txt Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. 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." 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. 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 Pseudo Wire (PW) Management Information Base [PWE3-PW-MIB]. Table of Contents Abstract............................................................1 1 Introduction.....................................................2 1.1 Changes from version 00 to 01 (individual submission)..........2 1.2 Changes from version 01 to 02 (individual submission)..........3 1.3 Changes from version 02 to 03 (individual submission)..........3 1.4 Changes from version 03 to 04 (individual submission)..........3 1.5 Changes from version 00 to 01 (Standards track).................3 1.6 Changes from version 01 to 02 (Standards track).................3 L2 VPN Working Group Expires Feb 2009 [Page 1] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 2 Terminology......................................................4 3 The Internet-Standard Management Framework.......................4 4 VPLS MIB Module Architecture.....................................4 4.1 VPLS-GENERIC-DRAFT-01-MIB Module Usage..........................5 4.2 VPLS-LDP-DRAFT-01-MIB Module Usage..............................5 4.3 VPLS-BGP-DRAFT-01-MIB Module Usage..............................5 4.4 Relations to other MIB modules..................................5 5 Example of the VPLS MIB modules usage............................6 6 Object definitions...............................................7 6.1 VPLS-GENERIC-DRAFT-01-MIB.......................................7 6.2 VPLS-LDP-DRAFT-01-MIB Object definitions......................26 6.3 VPLS-BGP-DRAFT-01-MIB Object definitions.......................30 7. Security Considerations.........................................37 8. IANA Considerations.............................................38 9. References......................................................38 9.1 Normative References...........................................38 9.2 Informative References.........................................38 10 Acknowledgement.................................................39 11 Authors' Addresses..............................................39 12 Intellectual Property Notice....................................40 13 Full Copyright Statement........................................41 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 [RFC 4762] or BGP[RFC 4761] signalling. This MIB module provides generic management of VPLS services as defined by the IETF L2VPN Working Group. Comments should be made directly to the L2VPN mailing list at l2vpn@ietf.org. 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 [RFC2119]. 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 [BCP14]. 1.1 Changes from version 00 to 01 (individual submission) [NOTE to RFC Editor: this section is to be removed before publication.] L2 VPN Working Group Expires Feb 2009 [Page 2] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 1.1.1. Split the MIB modules into VPLS-GENERIC-DRAFT-01-MIB, VPLS-LDP-DRAFT-01-MIB, VPLS-BGP-DRAFT-01-MIB. The generic MIB Module will contain information common to both LDP and BGP signalled VPLS. 1.1.2. Moved certain objects from vplsConfigTable to vplsStatusTable. 1.1.3. Added new objects to the vplsLdpPwBindTable. 1.1.4. Retained MAC related objects since there is specific reference in [RFC 4762] and [RFC 4761]. 1.2 Changes from version 01 to 02 (individual submission) [NOTE to RFC Editor: this section is to be removed before publication.] 1.2.1. Added new objects to the vplsConfigTable. 1.2.2. Editorial changes. 1.3 Changes from version 02 to 03 (individual submission) [NOTE to RFC Editor: this section is to be removed before publication.] 1.3.1. Added the VPLS-BGP-DRAFT-01-MIB module. 1.4 Changes from version 03 to 04 (individual submission) [NOTE to RFC Editor: this section is to be removed before publication.] 1.4 Published as a Standards Track document. 1.5 Changes from version 00 to 01 (Standards track) [NOTE to RFC Editor: this section is to be removed before publication.] 1.5.1 Added the mechanism to associate VPLS MIB Mac address entries into BRIDGE-MIB. 1.5.2 Added Rohit Mediratta as a co-editor. 1.6 Changes from version 01 to 02 (Standards track) [NOTE to RFC Editor: this section is to be removed before publication.] 1.6.1 Added support for BGP based Autodiscovery for Ldp and Bgp flavours of Vpls. 1.6.2 Created separate table for RouteTarget to allow representation of hierarchical Vpls. 1.6.3 Moved configuration of Route Distinguisher and Route Target to the Vpls-MIB from the VPLS-BGP-MIB 1.6.4 Removed extra defintion of pwIndex from vplsPwBindTable L2 VPN Working Group Expires Feb 2009 [Page 3] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 1.6.5 Index for vplsBgpObjects were incorrect, fixed. 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. 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 MIB module that is 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 four types of MIB modules. The first type is the VPLS-GENERIC-DRAFT-01-MIB module, which configures general parameters of the VPLS service that are common to all types of emulated services. The second type is the VPLS-LDP-DRAFT-01-MIB module, which configures VPLS-LDP[RFC 4762] specific parameters of the VPLS service. The third type is the VPLS-BGP-DRAFT-01-MIB module, which configures VPLS-BGP[RFC 4761] specific parameters of the VPLS service. The fourth type of modules are service-specific modules, which are defined in other documents. -------- ----------------- PW Mapping | | | | -----> | PW-MIB |-->|PW-ENET/MPLS-MIB | __________ / | | | | | | / -------- ----------------- | VPLS MIB | / ------------ | |----------------------> | | ----------- MAC addr. mapping using | BRIDGE-MIB | [SNMP-CONTEXT-MAP-MIB] | | ------------ L2 VPN Working Group Expires Feb 2009 [Page 4] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 4.1 VPLS-GENERIC-DRAFT-01-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 signalled 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 pseudo wires (defined in [PWE3-PW-MIB]). The pseudo wire 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 than creates the rows in the (locally supported) performance tables and reverse mapping tables in VPLS-GENERIC-DRAFT-01-MIB module. 4.2 VPLS-LDP-DRAFT-01-MIB Module Usage An entry in the vplsLdpConfigTable MUST be created by the agent for a VPLS service signalled using LDP. 4.3 VPLS-BGP-DRAFT-01-MIB Module Usage An entry in the vplsBgpConfigTable MUST be created by the agent for a VPLS service signalled using BGP. 4.4 Relations to other MIB modules - The vplsPwBindTable links the VPLS entry to various entries in the [PWE3-PW-MIB] - The association of MAC addresses to VPLS entries is possible L2 VPN Working Group Expires Feb 2009 [Page 5] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 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 ??? should report 'notPresent'. - Statistics can be gathered from the [PWE3-PW-MIB] - TBD 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 the VPLS-GENERIC-DRAFT-01-MIB module: In vplsConfigTable: { vplsConfigIndex 10, vplsConfigName "VPLS-A" vplsConfigAdminStatus 1(up), vplsConfigMacLearning 1(true), vplsConfigDiscardUnknownDest 2(false), vplsConfigMacAging 1(true), vplsConfigVpnId "100:10" vplsConfigRowStatus 1(active) } In vplsStatusTable: { vplsStatusOperStatus 1(up), } In the VPLS-LDP-DRAFT-01-MIB module: In vplsLdpConfigTable: { vplsLdpConfigMacAddrWithdraw 1(true), } In vplsLdpPwBindTable: L2 VPN Working Group Expires Feb 2009 [Page 6] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 { vplsLdpPwBindType 1(mesh), vplsLdpPwBindMacAddressLimit 100 } 6 Object definitions 6.1 VPLS-GENERIC-DRAFT-01-MIB This MIB module makes references to the following documents. [RFC2578], [RFC2579], [RFC2580], [RFC3411], [RFC2863], [RFC4001], [RFC4265] and [RFC3813]. VPLS-GENERIC-DRAFT-01-MIB DEFINITIONS ::= BEGIN IMPORTS NOTIFICATION-TYPE, MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Counter32, IpAddress, 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 PwIndexType FROM PW-TC-STD-MIB VPNIdOrZero FROM VPN-TC-STD-MIB -- RFC4265 -- Vpls BGP Autodiscovery specific Textual Convention VplsBgpRouteDistinguisher ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Syntax for a route distinguisher. For a complete definition of a route distinguisher, see [RFC 4364]. For more details on use of a route distinguisher for a VPLS service, see [RFC 4761]" REFERENCE "[RFC 4364]" 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 [RFC 4364]." REFERENCE "[RFC 4364]" L2 VPN Working Group Expires Feb 2009 [Page 7] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 SYNTAX OCTET STRING(SIZE (0..256)) 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 [RFC 4364]." REFERENCE "[RFC 4364]" SYNTAX INTEGER { import(1), export(2), both(3) } ; vplsGenericDraft01MIB MODULE-IDENTITY LAST-UPDATED "200608301200Z" -- 30 Aug 2006 12:00:00 GMT ORGANIZATION "Layer 2 Virtual Private Networks (L2VPN) Working Group" CONTACT-INFO " Thomas D. Nadeau Email: tnadeau@cisco.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 (2008). 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 in [RFC 4762] and [RFC 4761] This MIB module enables the use of any underlying PseudoWire network." -- Revision history. REVISION "200608301200Z" -- 30 August 2006 12:00:00 GMT DESCRIPTION "Changes from previous version: 1) Moved LDP Specific information to VPLS-LDP-DRAFT-01-MIB 2) Created the vplsStatusTable to store status information. 3) " REVISION L2 VPN Working Group Expires Feb 2009 [Page 8] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 "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 assigne 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 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). " L2 VPN Working Group Expires Feb 2009 [Page 9] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 ::= { 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 non-SNMP application or due to autodiscovery 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 need to change one of the values for an active row the vplsConfigRowStatus should be first changed to notInService(2), the objects may be changed now, and later 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, vplsConfigServiceType INTEGER, 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." L2 VPN Working Group Expires Feb 2009 [Page 10] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 ::= { 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 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 enable then this service is able to utilize the pseudo wire 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 L2 VPN Working Group Expires Feb 2009 [Page 11] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 disabled." DEFVAL { true } ::= { vplsConfigEntry 6 } vplsConfigDiscardUnknownDest OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "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 } L2 VPN Working Group Expires Feb 2009 [Page 12] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 vplsConfigRowStatus 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." ::= { vplsConfigEntry 12 } vplsConfigMtu OBJECT-TYPE SYNTAX Unsigned32 (64..1518) MAX-ACCESS read-create STATUS current DESCRIPTION "The value of this object specifies the MTU of this vpls instance." 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." -- Ed note: Should we import the VPNIdOrZero TC or -- define a new TC? ::= { vplsConfigEntry 14 } vplsConfigServiceType OBJECT-TYPE SYNTAX INTEGER { vlan (1), ethernet (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The value of this object specifies the type of service emulated by this vpls instance." DEFVAL { vlan } ::= { vplsConfigEntry 15 } vplsConfigStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "This variable indicates the storage type for this row." DEFVAL { volatile } ::= { vplsConfigEntry 16 } L2 VPN Working Group Expires Feb 2009 [Page 13] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 -- VPLS Status table vplsStatusTable OBJECT-TYPE SYNTAX SEQUENCE OF VplsStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "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 present in this vpls instance." ::= { vplsStatusEntry 2 } L2 VPN Working Group Expires Feb 2009 [Page 14] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 -- 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 Pseudo Wires. A service can have more than one Pseudo Wire association. Pseudo Wires 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 Pseudo Wires 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, vplsPwBindIndex } ::= { 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 whether the Pseudo Wire binding was created manually or via autodiscovery. 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 } L2 VPN Working Group Expires Feb 2009 [Page 15] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 vplsPwBindType OBJECT-TYPE SYNTAX INTEGER { mesh (1), spoke (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The value of this object indicates whether the Pseudo Wire binding is of type mesh or spoke. 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 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 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 L2 VPN Working Group Expires Feb 2009 [Page 16] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 DESCRIPTION "The creation of a row in this table represents that BGP based autodiscovery is in use for this instance of Vpls. A row in this table is indexed by vplsConfigIndex, which uniquely identifies a single VPLS. A row is created by the operator or agent prior to autodiscovery. 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, vplsBGPADConfigRowStatus should be changed to notInService(2). The objects may then be modified. Change the rowStatus back 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 IpAddress, vplsBgpADConfigVplsId VplsBgpRouteDistinguisher, vplsBgpADConfigRowStatus RowStatus } vplsBgpADConfigRouteDistinguisher OBJECT-TYPE SYNTAX VplsBgpRouteDistinguisher MAX-ACCESS read-create STATUS current DESCRIPTION " " The route distinguisher for this VPLS. See [RFC 4364] for a complete definition of a route distinguisher. See [RFC 4761] for more details on use of a route distinguisher for a VPLS service. " DEFVAL { "" } ::= { 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 to a value other than 0.0.0.0. This value will then be used as the advertised IP address in the NLRI. L2 VPN Working Group Expires Feb 2009 [Page 17] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 " DEFVAL { 0.0.0.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 " DEFVAL { "" } ::= { 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 } -- 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, an RT 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. A row is created by the operator or agent prior to autodiscovery. L2 VPN Working Group Expires Feb 2009 [Page 18] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 " 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. Multiple Route Targets may be associated with a single VPLS service. " ::= { 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 [RFC 4364]." " DEFVAL { "" } ::= { 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 [RFC 4761] " ::= { 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 L2 VPN Working Group Expires Feb 2009 [Page 19] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 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 "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, L2 VPN Working Group Expires Feb 2009 [Page 20] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 vplsConfigFwdFullHighWatermark, vplsConfigFwdFullLowWatermark } STATUS current DESCRIPTION "The vplsFwdFullAlarmRaised notification is generated when the utilization of the Forwarding database is above the value specified by vplsConfigFwdFullHighWatermark." ::= { 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 } -- Compliance requirement for read-only implementations. vplsCompliances OBJECT IDENTIFIER ::= { vplsConformance 1 } vplsModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance requirement for implementations that provide full support for VPLS-GENERIC-DRAFT-01-MIB. Such devices can then be monitored and configured using this MIB module." MODULE -- this module MANDATORY-GROUPS { vplsGroup, vplsPwBindGroup, VplsBgpADConfigGroup, VplsBgpRteTargetGroup, vplsNotificationGroup } ::= { vplsCompliances 1 } vplsModuleReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance requirement for implementations that only provide read-only support for VPLS-GENERIC-DRAFT-01-MIB. L2 VPN Working Group Expires Feb 2009 [Page 21] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 Such devices can then be monitored but cannot be configured using this MIB modules." MODULE -- this module MANDATORY-GROUPS { vplsGroup, vplsPwBindGroup, VplsBgpADConfigGroup, VplsBgpRteTargetGroup, 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." OBJECT vplsConfigFwdFullLowWatermark MIN-ACCESS read-only DESCRIPTION "Write access is not required." L2 VPN Working Group Expires Feb 2009 [Page 22] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 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." OBJECT vplsBgpADConfigRouteDistinguisher MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT vplsBgpADConfigPrefix MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT vplsBgpADConfigVplsId MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT vplsBgpADConfigRowStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT vplsBgpRteTargetRTType MIN-ACCESS read-only L2 VPN Working Group Expires Feb 2009 [Page 23] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 DESCRIPTION "Write access is not required." OBJECT vplsBgpRteTargetRT MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT vplsBgpRteTargetRTRowStatus 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, vplsConfigDescr, vplsConfigAdminStatus, vplsConfigMacLearning, vplsConfigDiscardUnknownDest, vplsConfigMacAging, vplsConfigVpnId, vplsConfigFwdFullHighWatermark, vplsConfigFwdFullLowWatermark, vplsConfigRowStatus, vplsConfigIndexNext, vplsConfigMtu, vplsConfigServiceType, 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, L2 VPN Working Group Expires Feb 2009 [Page 24] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 vplsPwBindRowStatus, vplsPwBindStorageType } STATUS current DESCRIPTION "The group of objects supporting management of Pseudo Wire (PW) Binding to VPLS." ::= { vplsGroups 2 } VplsBgpADConfigGroup OBJECT-GROUP OBJECTS { vplsBgpADConfigRouteDistinguisher, vplsBgpADConfigPrefix, vplsBgpADConfigVplsId, vplsBgpADConfigRowStatus } STATUS current DESCRIPTION "The group of objects supporting management of BGP-Autodiscovery for VPLS." ::= { vplsGroups 3 } VplsBgpRteTargetGroup OBJECT-GROUP OBJECTS { vplsBgpRteTargetRTType, vplsBgpRteTargetRT, vplsBgpRteTargetRTRowStatus } STATUS current DESCRIPTION "The group of objects supporting management of Route Targets during BGP-Autodiscovery for VPLS." ::= { vplsGroups 4 } vplsNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { vplsStatusChanged, vplsFwdFullAlarmRaised, vplsFwdFullAlarmCleared } STATUS current DESCRIPTION "The group of notifications supporting the Notifications generated for VPLS Services" ::= { vplsGroups 5 } END L2 VPN Working Group Expires Feb 2009 [Page 25] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 6.2 VPLS-LDP-DRAFT-01-MIB Object definitions This MIB module makes references to the following documents. [RFC2578], [RFC2579], [RFC2580], [RFC3411], [RFC2863], [RFC4001], [RFC4265] and [RFC3813]. VPLS-LDP-DRAFT-01-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 vplsConfigIndex, vplsPwBindIndex FROM VPLS-GENERIC-DRAFT-01-MIB ; vplsLdpDraft01MIB MODULE-IDENTITY LAST-UPDATED "200608301200Z" -- 20 August 2006 12:00:00 GMT ORGANIZATION "Layer 2 Virtual Private Networks (L2VPN) Working Group" CONTACT-INFO " Thomas D. Nadeau Email: tnadeau@cisco.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 (2008). 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 LDP signalled Virtual Private LAN Services as in [RFC 4762] This MIB module enables the use of any underlying PseudoWire network. " L2 VPN Working Group Expires Feb 2009 [Page 26] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 -- 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 assigne value, and -- delete this note. -- Top-level components of this MIB. -- 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)." ::= { 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 Service(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 signalling. 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 need to change one of the values for an active row the vplsConfigRowStatus should be first changed to notInService(2), the objects may be changed now, and later to active(1) in order to re-initiate the signaling process with the new values in effect. L2 VPN Working Group Expires Feb 2009 [Page 27] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 " 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 withdrawl Learning is enabled. If false, then Mac Learning is disabled." DEFVAL { true } ::= { vplsLdpConfigEntry 1 } -- 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 Pseudo Wires. A service can have more than one Pseudo Wire association. Pseudo Wires 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 Pseudo Wires 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 signalling is used to configure VPLS service. Each entry in this table provides LDP specific information for the VPlS represented by vplsConfigIndex." INDEX { vplsConfigIndex, vplsPwBindIndex } L2 VPN Working Group Expires Feb 2009 [Page 28] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 ::= { 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 Forwarding database for this PW Binding. The value 0 means there is no limit for this PW Binding." DEFVAL { 0 } ::= { vplsLdpPwBindEntry 1 } -- Compliance requirement for read-only implementations. vplsLdpCompliances OBJECT IDENTIFIER ::= { vplsLdpConformance 1 } vplsLdpModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance requirement for implementations that provide full support for VPLS-LDP-DRAFT-01-MIB. Such devices can then be monitored and configured using this MIB module." MODULE -- this module MANDATORY-GROUPS { vplsLdpGroup } ::= { vplsLdpCompliances 1 } vplsLdpModuleReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance requirement for implementations that only provide read-only support for VPLS-LDP-DRAFT-01-MIB. Such devices can then be monitored but cannot be configured using this MIB modules." MODULE -- this module MANDATORY-GROUPS { vplsLdpGroup } L2 VPN Working Group Expires Feb 2009 [Page 29] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 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 } END 6.3 VPLS-BGP-DRAFT-01-MIB Object definitions VPLS-BGP-DRAFT-01-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, vplsPwBindIndex FROM VPLS-GENERIC-DRAFT-01-MIB ; vplsBgpDraft01MIB MODULE-IDENTITY L2 VPN Working Group Expires Feb 2009 [Page 30] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 LAST-UPDATED "200612061200Z" -- 06 Dec 2006 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) " DESCRIPTION "Copyright (C) The IETF Trust (2008). 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 signalled Virtual Private LAN Services as in [RFC 4761] This MIB module enables the use of any underlying PseudoWire network. " -- Revision history. REVISION "200612061200Z" -- 06 Dec 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 assigne 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 [RFC 4364]. For more details on use of a route distinguisher for a VPLS service, see [RFC 4761]" REFERENCE "[RFC 4364]" 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 [RFC 4364]." L2 VPN Working Group Expires Feb 2009 [Page 31] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 REFERENCE "[RFC 4364]" SYNTAX OCTET STRING(SIZE (0..256)) -- 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 Service(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 signalling. 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 need to change one of the values for an active row the vplsConfigRowStatus should be first changed to notInService(2), the objects may be changed now, and later to active(1) in order to re-initiate the signaling process with the new values in effect. " INDEX { vplsConfigIndex } ::= { vplsBgpConfigTable 1 } VplsBgpConfigEntry ::= SEQUENCE { L2 VPN Working Group Expires Feb 2009 [Page 32] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 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 } 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 } L2 VPN Working Group Expires Feb 2009 [Page 33] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 vplsBgpVEName OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-create STATUS current DESCRIPTION "Descriptive name for the site or u-PE assciated 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 "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 Pseudo Wires. A service can have more than one Pseudo Wire association. Pseudo Wires are defined in the pwTable." ::= { vplsBgpObjects 3 } L2 VPN Working Group Expires Feb 2009 [Page 34] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 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 Pseudo Wires 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 signalling is used to configure VPLS service. Each entry in this table provides BGP specific information for the VPlS represented by vplsConfigIndex." INDEX { vplsConfigIndex, vplsPwBindIndex } ::= { vplsBgpPwBindTable 1 } VplsBgpPwBindEntry ::= SEQUENCE { vplsBgpPwBindLocalVEId Unsigned32, vplsBgpPwBindRemoteVEId Unsigned32 } vplsBgpPwBindLocalVEId OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "Identifies the local VE that this Pseudo Wire 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 Pseudo Wire is associated with." ::= { vplsBgpPwBindEntry 2 } -- Compliance requirement for read-only implementations. vplsBgpCompliances OBJECT IDENTIFIER ::= { vplsBgpConformance 1 } vplsBgpModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION L2 VPN Working Group Expires Feb 2009 [Page 35] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 "Compliance requirement for implementations that provide full support for VPLS-BGP-DRAFT-01-MIB. Such devices can then be monitored and configured using this MIB module." MODULE -- this module MANDATORY-GROUPS { vplsBgpConfigGroup, vplsBgpVEGroup, vplsBgpPwBindGroup } ::= { vplsBgpCompliances 1 } vplsBgpModuleReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance requirement for implementations that only provide read-only support for VPLS-BGP-DRAFT-01-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. L2 VPN Working Group Expires Feb 2009 [Page 36] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 vplsBgpGroups OBJECT IDENTIFIER ::= { vplsBgpConformance 2 } vplsBgpConfigGroup OBJECT-GROUP OBJECTS { vplsBgpConfigVERangeSize } STATUS current 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 [PW-STD-MIB] are potentially useful for monitoring of GMPLS LSRs. 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 L2 VPN Working Group Expires Feb 2009 [Page 37] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 network operations. These are the tables and objects and their sensitivity/vulnerability: 8. IANA Considerations -- (Note to RFC-Editor:) -- We request that you assign contiguous RFC numbers to the -- IANA is requested to root MIB objects in the MIB module -- contained in this document under the transmission subtree. -- 9. References 9.1 Normative References [PWE3-PW-MIB] Pseudo Wire (PW) Management Information Base. David Zelig, Thomas D. Nadeau. [RFC 4762] Virtual Private LAN Services over MPLS, Marc Lasserre, Vach Kompella. [RFC 4761] Virtual Private LAN Service (VPLS) Using BGP for Auto-discovery and Signaling, K. Kompella, Y. Rekhter. [SNMP-CONTEXT-MAP-MIB] SNMP Context Mapping MIB, AS, Kiran Koushik, Nadeau, T, draft-kkoushik-snmp-context-map-mib. [RFC4188] Norseth, K., and Bell, E., "Definitions of Managed Objects for Bridges", RFC 4188, Sept 2006. [RFC 4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private Networks (VPNs)", RFC 4364, February 2006. 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 L2 VPN Working Group Expires Feb 2009 [Page 38] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 Protocol (SNMP) Management Frameworks", STD 62, RFC 3411, December 2002. 10 Acknowledgement 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. 11 Authors' Addresses Thomas D. Nadeau Cisco Systems, Inc. 1414 Massachusetts Ave. Boxborough, MA 01719 Email: tnadeau@cisco.com 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 Praveen Muley Alcatel-Lucent Email: praveen.muley@alcatel-lucent.com Reva Bailey Alcatel-Lucent Email: reva.bailey@alcatel-lucent.com VJ Shah Juniper Networks Email: vshah@juniper.net Li Wentao ZTE Inc. CHINA Email: li.wentao@zte.com.cn Kong Yong ZTE Inc. CHINA Email: kong.yong@zte.com.cn Luo Jian L2 VPN Working Group Expires Feb 2009 [Page 39] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 ZTE Inc. CHINA Email: luo.jian@zte.com.cn Feng Jun ZTE Inc. CHINA Email: Feng.jun99@zte.com.cn Takeshi Usui KDDI Corpration Japan Email:ta-usui@kddi.com 12 Intellectual Property Notice The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf- ipr@ietf.org. Disclaimer of Validity This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. L2 VPN Working Group Expires Feb 2009 [Page 40] draft-ietf-l2vpn-vpls-mib-02 L2-VPN-MIB July 14, 2008 13 Full Copyright Statement Copyright (C) The IETF Trust (2008). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. L2 VPN Working Group Expires Feb 2009 [Page 41]