ANCP M. Rohit Internet-Draft A. Aniruddha Intended status: Informational A. Karmakar Expires: December 1, 2010 Cisco Systems May 30, 2010 ANCP MIB module for NAS draft-rohit-ancp-nas-mib-01 Abstract This memo defines a portion of the Management Information Base (MIB) for managing NAS (Network Access Server) that are using Access Node Control Protocol (ANCP). Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. 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." This Internet-Draft will expire on December 1, 2010. Copyright Notice Copyright (c) 2010 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. Rohit, et al. Expires December 1, 2010 [Page 1] Internet-Draft ANCP NAS MIB May 2010 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4. Structure of the MIB Module . . . . . . . . . . . . . . . . . 3 4.1. Textual Conventions . . . . . . . . . . . . . . . . . . . 3 4.2. The ANCP NAS MIB Module Subtree . . . . . . . . . . . . . 3 4.3. The Notifications Subtree . . . . . . . . . . . . . . . . 3 4.4. The Table Structures . . . . . . . . . . . . . . . . . . . 4 5. Relationship With Other MIB Modules . . . . . . . . . . . . . 5 5.1. MIB modules required for IMPORTS . . . . . . . . . . . . . 5 6. ANCP MIB Definitions for the Network Access Server . . . . . . 5 7. Security Considerations . . . . . . . . . . . . . . . . . . . 27 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 28 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 28 10.1. Normative References . . . . . . . . . . . . . . . . . . . 28 10.2. Informative References . . . . . . . . . . . . . . . . . . 29 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 29 Rohit, et al. Expires December 1, 2010 [Page 2] Internet-Draft ANCP NAS MIB May 2010 1. Introduction This memo defines a portion of the Management Information Base (MIB) for managing Network Access Servers (NAS) that are using Access Node Control Protocol defined in [ANCPPR] 2. Conventions 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]. 3. Overview In [ANCPFW], the framework for the Access Node Control Protocol (ANCP) is described. It defines 2 network entities, the Access Node (AN) and the Network Access Server (NAS), between which ANCP sessions are established. The detailed protocol specification of ANCP is described in [ANCPPR]. This document specifies a MIB module for a Network Access Server that supports ANCP. Note: the current MIB definition is specific for [ANCPPR] If [ANCPPR] gets updated later, then the MIB definition in this document will also follow these changes. 4. Structure of the MIB Module 4.1. Textual Conventions The following new textual conventions are introduced: AncpSessionState, AncpSessionCapabilities, AncpDslLineState, and AncpDslLineType. 4.2. The ANCP NAS MIB Module Subtree This document defines mib modules ANCP-NAS-MIB under mib-2. 4.3. The Notifications Subtree Notifications are defined to inform the management station about state changes of ANCP sessions and ANCP ports. The notification ancpNasPortUp is to inform the management station when a ANCP Port-Up message is received, and ancpNasPortDown is to inform when a ANCP Port-Down message is received. The notification ancpNasSessionUp is to inform when a session comes up and ancpNasSessionDown to inform Rohit, et al. Expires December 1, 2010 [Page 3] Internet-Draft ANCP NAS MIB May 2010 session going down. To enable and disable the generation of these notifications, attributes ancpNasPortStatusNotifEnable and ancpNasSessionNotifEnable are defined. The attribute ancpNasPortStatusNotifEnable controls the generation of ancpNasPortUp and ancpNasPortDown, and ancpNasPortStatusNotifEnable controls the generation of ancpNasSessionUp and ancpNasSessionDown. 4.4. The Table Structures The ANCP MIB module for the NAS has the following tables: o ancpNasIfConfigTable This table is used to configure interface specific ANCP parameters including neighbors (i.e DSLAMs). A neighbor is identified with a name, ID and a client-ID. The name is generally the hostname of the neighbor, neighbor's IP or MAC can be used as the ID which is unique. The client-ID is the port's identity, or the Access-Loop- Circuit-ID which will take a well defined form based on the access technology used. In the case of ATM based local loop, the string will be of the form: Access-Node-Identifier atm slot/port:vpi.vci In case of Ethernet based (and tagged) local loop, the string will be of the form: Access-Node-Identifier eth slot/port[:vlan-id] o ancpNasSessionTable This table shows the operational state of ANCP sessions on the NAS. o ancpNasPortTable This table shows the ports known to the NAS and their state and DSL line parameters. The ports can be configured or learnt (via ANCP Event messages). Configured ports have a corresponding entry in the ancpNasIfConfigTable. Following groups are defined: o ancpNasSessionGroup This group contains all objects specific to ANCP session. Rohit, et al. Expires December 1, 2010 [Page 4] Internet-Draft ANCP NAS MIB May 2010 o ancpNasPortGroup This group contains all port specific objects for ANCP. o ancpNasConfigGroup This group contains all configurable objects for ANCP. o ancpNasNotifControlGroup This group contains the attributes which control the generation of ANCP session and port status notifications. o ancpNasNotificationGroup This group contains the notifications that indicate state changes of ANCP sessions and ports (ancpNasNotifications). 5. Relationship With Other MIB Modules ANCP NAS MIB module uses ifIndex (defined in ifTable of IF-MIB [RFC2863]) to index ancpNasIfConfigTable. 5.1. MIB modules required for IMPORTS The ANCP MIB module for Network Access Server requires following MIB modules for IMPORTS: o SNMPv2-SMI defined in [RFC2578] o RMON2-MIB defined in [RFC4502] o IF-MIB defined in [RFC2863] o INET-ADDRESS-MIB defined in [RFC4001] o SNMPv2-CONF defined in [RFC2580] o GSMP-MIB defined in [RFC3295] o SNMPv2-TC defined in [RFC2579] 6. ANCP MIB Definitions for the Network Access Server ANCP-NAS-MIB DEFINITIONS ::= BEGIN Rohit, et al. Expires December 1, 2010 [Page 5] Internet-Draft ANCP NAS MIB May 2010 IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, NOTIFICATION-TYPE, mib-2 FROM SNMPv2-SMI -- [RFC2578] TEXTUAL-CONVENTION, TruthValue FROM SNMPv2-TC -- [RFC2579] SnmpAdminString FROM SNMP-FRAMEWORK-MIB -- [RFC3411] MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF -- [RFC2580] InterfaceIndex, ifIndex FROM IF-MIB -- [RFC2863] InetAddressType, InetAddress, InetPortNumber FROM INET-ADDRESS-MIB -- [RFC4001] GsmpNameType FROM GSMP-MIB; -- [RFC3295] ancpNasMIB MODULE-IDENTITY LAST-UPDATED "200911250000Z" ORGANIZATION "Cisco" CONTACT-INFO " Rohit. M Cisco Systems Postal: Cessna Business Park Bangalore, Karnataka 560 103 India Phone: +91 80 4426 0713 Email: rrohit@cisco.com Anirban Karmakar Cisco Systems Postal: Cessna Business Park Bangalore, Karnataka 560 103 India Phone: +91 80 4426 0715 Email: akarmaka@cisco.com Aniruddha. A Rohit, et al. Expires December 1, 2010 [Page 6] Internet-Draft ANCP NAS MIB May 2010 Cisco Systems Postal: Cessna Business Park Bangalore, Karnataka 560 103 India Phone: +91 80 4426 1649 Email: anira@cisco.com " DESCRIPTION "This MIB module defines the managed objects that support the monitoring and configuration of ANCP from the Network Access Server (NAS) perspective. Definition of terms and acronyms: NAS : Network Access Server AN : Access Node ANCP : Access Network Control Protocol. " REVISION "200911250000Z" -- 25th Nov 2009 DESCRIPTION "Initial version of this MIB Module." ::= { mib-2 xxx } -- To be assigned AncpSessionState ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "State of the ANCP TCP session. ESTAB state is where state synchronization is achieved across a link. SYNSENT state is reached when an endpoint sends a SYN message. SYNRCVD state is reached when an endpoint received a SYN from its peer. " SYNTAX INTEGER { estab(1), synrcvd(2), synsent(3) } AncpSessionCapabilities ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION Rohit, et al. Expires December 1, 2010 [Page 7] Internet-Draft ANCP NAS MIB May 2010 "ANCP Capabilities supported on this session after capability negotiation. Topology-Discovery: Support of Port-Up and Port-Down messages to receive the DSL line parameters from AN. Line-Configuration: Support of extensions to Port Management message to convey service attributes of DSL lines to AN. Multicast: Support for transactional multicast messages. OAM: Support of extensions to Port Management message to test end-to-end loopback. " SYNTAX BITS { topologyDiscovery(0), lineConfiguration(1), multicast(2), oam(3) } AncpDslLineState ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "DSL Line State of the AN port as reported in the ANCP Port-UP or Port-Down message. UNKNOWN: The DSL line state is not known to NAS. SHOWTIME: The DSL line is up and ready IDLE: The DSL line is Idle (not willing to accept connections) SILENT: The DSL line is in Training state (no traffic can flow until a steady state is reached) " SYNTAX INTEGER { unknown(0), showtime(1), idle(2), silent(3) } AncpDslLineType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "DSL line type of the port on the AN. ADSL1 - Asymmetric Digital Subscriber Line ADSL2 - Asymmetric DSL with downstream upto 12Mbps Rohit, et al. Expires December 1, 2010 [Page 8] Internet-Draft ANCP NAS MIB May 2010 ADSL2+ - Asymmetric DSL with double the downstream of ADSL2 VDSL1 - Very High Bitrate DSL VDSL2 - Very High Bitrate DSL with profiles SDSL - Symmetric DSL " SYNTAX INTEGER { adsl1(1), adsl2(2), adsl2Plus(3), vdsl1(4), vdsl2(5), sdsl(6), unknown(7) } ancpNasNotifications OBJECT IDENTIFIER ::= { ancpNasMIB 0 } ancpNasObjects OBJECT IDENTIFIER ::= { ancpNasMIB 1 } ancpNasConformance OBJECT IDENTIFIER ::= { ancpNasMIB 2 } ancpNasConfiguration OBJECT IDENTIFIER ::= { ancpNasObjects 1 } ancpNasInformation OBJECT IDENTIFIER ::= { ancpNasObjects 2 } ancpNasNotifControl OBJECT IDENTIFIER ::= { ancpNasObjects 3 } -- -- Objects -- ancpNasAdjacencyTimer OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "Timer for the ANCP keepalives (SYNs), the timer value will be in 100 milliseconds. ANCP connection will be lost if 3 successive keepalives are lost. The default timer is 100 milliseconds (10 seconds)." DEFVAL { 100 } ::= { ancpNasConfiguration 1 } ancpTrafficShaperFactor OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "Shaper factor associated with the downstream rate. I.e, the downstream rate is multiplied by this value." DEFVAL { 0 } Rohit, et al. Expires December 1, 2010 [Page 9] Internet-Draft ANCP NAS MIB May 2010 ::= { ancpNasConfiguration 2 } ancpNasIfConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF AncpNasIfConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table provides configuration and monitoring of the interface specific ANCP parameters. This table has a sparse depedent relationship on the ifTable, containing a row for each ifEntry which can be controlled by ANCP." ::= { ancpNasConfiguration 3 } ancpNasIfConfigEntry OBJECT-TYPE SYNTAX AncpNasIfConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This entry represents an interface, which can be controlled by ANCP. When such an interface is deleted from the ifTable, the corresponding row in this table has to be removed by the agent." INDEX { ifIndex } ::= { ancpNasIfConfigTable 1 } AncpNasIfConfigEntry ::= SEQUENCE { ancpNasIfEnable TruthValue, ancpNasIfNeighbourName SnmpAdminString, ancpNasIfID SnmpAdminString, ancpNasIfClientID SnmpAdminString } ancpNasIfEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "Enable ANCP on the interface specified in ifIndex, This may involve the following: - To start an ANCP message handler process if it weren't already started and listen on the TCP port 6068." ::= { ancpNasIfConfigEntry 1 } ancpNasIfNeighbourName OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-write Rohit, et al. Expires December 1, 2010 [Page 10] Internet-Draft ANCP NAS MIB May 2010 STATUS current DESCRIPTION "A string to identify the AN on NAS. This can be the hostname of the AN." ::= { ancpNasIfConfigEntry 2 } ancpNasIfID OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-write STATUS current DESCRIPTION "A string to uniquely identify the AN, this can be the IP address of the client end (AN) of the ANCP session or the MAC address associated with the client side IP." ::= { ancpNasIfConfigEntry 3 } ancpNasIfClientID OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-write STATUS current DESCRIPTION "The client-ID is the access-loop circuit ID of the port In the case of ATM based local loop, the string will be of the form: Access-Node-Identifier atm slot/port:vpi.vci In case of Ethernet based (and tagged) local loop, the string will be of the form: Access-Node-Identifier eth slot/port[:vlan-id] " ::= { ancpNasIfConfigEntry 4 } ancpNasCapabilities OBJECT-TYPE SYNTAX AncpSessionCapabilities MAX-ACCESS read-only STATUS current DESCRIPTION "Capabilities supported by the NAS. Per session capabilities may differ after the negotiation with peer." ::= { ancpNasInformation 1 } ancpNasSessionTable OBJECT-TYPE SYNTAX SEQUENCE OF AncpNasSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The ANCP TCP sessions on the NAS. NAS listens for ANCP connections on the TCP port 6068, the session is initiated from the AN." ::= { ancpNasInformation 2 } Rohit, et al. Expires December 1, 2010 [Page 11] Internet-Draft ANCP NAS MIB May 2010 ancpNasSessionEntry OBJECT-TYPE SYNTAX AncpNasSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry for a specific ANCP session. A row in this table is created whenever an ANCP session request from the AN results in a ANCP session creation on the NAS. A row in this table is deleted whenever the corresponding ANCP session is terminated." INDEX { ancpNasSessionID } ::= { ancpNasSessionTable 1 } AncpNasSessionEntry ::= SEQUENCE { ancpNasSessionID Unsigned32, ancpNasSessionState AncpSessionState, ancpNasSessionCapabilities AncpSessionCapabilities, ancpNasSessionLocalIPType InetAddressType, ancpNasSessionLocalIP InetAddress, ancpNasSessionRemoteIPType InetAddressType, ancpNasSessionRemoteIP InetAddress, ancpNasSessionLocalPort InetPortNumber, ancpNasSessionRemotePort InetPortNumber, ancpNasSessionLocalMAC OCTET STRING, ancpNasSessionRemoteMAC OCTET STRING, ancpNasSessionIfIndex InterfaceIndex, ancpNasSessionSenderName GsmpNameType, ancpNasSessionReceiverName GsmpNameType, ancpNasSessionSenderInstance Unsigned32, ancpNasSessionReceiverInstance Unsigned32 } ancpNasSessionID OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each of ANCP session occupies a row in the ancpNasSessionTable. This object is the row selector." ::= { ancpNasSessionEntry 1 } ancpNasSessionState OBJECT-TYPE SYNTAX AncpSessionState MAX-ACCESS read-only STATUS current DESCRIPTION "The current state of this ANCP session." ::= { ancpNasSessionEntry 2 } Rohit, et al. Expires December 1, 2010 [Page 12] Internet-Draft ANCP NAS MIB May 2010 ancpNasSessionCapabilities OBJECT-TYPE SYNTAX AncpSessionCapabilities MAX-ACCESS read-only STATUS current DESCRIPTION "The current capability negotiation value for this ANCP session." ::= { ancpNasSessionEntry 3 } ancpNasSessionLocalIPType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The physical / virtual IP address type on the NAS where this ANCP session terminates." ::= { ancpNasSessionEntry 4 } ancpNasSessionLocalIP OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The physical / virtual IP address on the NAS where this ANCP session terminates." ::= { ancpNasSessionEntry 5 } ancpNasSessionRemoteIPType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "Remote IP address Type of this ANCP session, i.e, on the AN." ::= { ancpNasSessionEntry 6 } ancpNasSessionRemoteIP OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "Remote IP address of this ANCP session, i.e, on the AN." ::= { ancpNasSessionEntry 7 } ancpNasSessionLocalPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION Rohit, et al. Expires December 1, 2010 [Page 13] Internet-Draft ANCP NAS MIB May 2010 "The NAS TCP port where this ANCP session is established." ::= { ancpNasSessionEntry 8 } ancpNasSessionRemotePort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION "The remote port (AN) where this ANCP session is established" ::= { ancpNasSessionEntry 9 } ancpNasSessionLocalMAC OBJECT-TYPE SYNTAX OCTET STRING (SIZE(6)) MAX-ACCESS read-only STATUS current DESCRIPTION "The Physical / virtual MAC associated with the local IP on the NAS for this ANCP session." ::= { ancpNasSessionEntry 10 } ancpNasSessionRemoteMAC OBJECT-TYPE SYNTAX OCTET STRING (SIZE(6)) MAX-ACCESS read-only STATUS current DESCRIPTION "The AN MAC assocaited with this ANCP session." ::= { ancpNasSessionEntry 11 } ancpNasSessionIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS read-only STATUS current DESCRIPTION "Interface associated with this ANCP session." ::= { ancpNasSessionEntry 12 } ancpNasSessionSenderName OBJECT-TYPE SYNTAX GsmpNameType MAX-ACCESS read-only STATUS current DESCRIPTION "This object represents the name of the entity sending the message for this ANCP session. The Sender Name is a 48-bit quantity that is unique within the operational context of the device. A 48-bit IEEE 802 MAC address, if available, may be used for the Sender Name." ::= { ancpNasSessionEntry 13 } Rohit, et al. Expires December 1, 2010 [Page 14] Internet-Draft ANCP NAS MIB May 2010 ancpNasSessionReceiverName OBJECT-TYPE SYNTAX GsmpNameType MAX-ACCESS read-only STATUS current DESCRIPTION "This object represents the name of the entity that the sender of the message believes is at the far end of the link for this ANCP session. If the sender of the message does not know the name of the entity at the far end of the link, this object's value will be empty." ::= { ancpNasSessionEntry 14 } ancpNasSessionSenderInstance OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "This object represents the sender's instance number for the link for this ANCP session. It is used to detect when the link comes back up after going down or when the identity of the entity at the other end of the link changes. The instance number is a 24-bit number that is guaranteed to be unique within the recent past and to change when the link or node comes back up after going down." ::= { ancpNasSessionEntry 15 } ancpNasSessionReceiverInstance OBJECT-TYPE SYNTAX Unsigned32 (0..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "This object represents the instance number for the link of the entity that the sender of the message believes is at the far end of the link for this ANCP session. If the sender of the message does not know the current instance number at the far end of the link, this object's value will be zero." ::= { ancpNasSessionEntry 16 } -- End of session information ancpNasPortTable OBJECT-TYPE SYNTAX SEQUENCE OF AncpNasPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table list the ANCP ports known to this NAS Rohit, et al. Expires December 1, 2010 [Page 15] Internet-Draft ANCP NAS MIB May 2010 (configured or learnt via event messages)." ::= { ancpNasInformation 3 } ancpNasPortEntry OBJECT-TYPE SYNTAX AncpNasPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry for each ANCP port. Each entry consists of Port name and DSL Line attributes of the port. DSL line attributes are sent as sub-TLVs in the event message, and some of them are optional, as indicated in the Objects's description." INDEX { ancpNasPortName } ::= { ancpNasPortTable 1 } AncpNasPortEntry ::= SEQUENCE { ancpNasPortName SnmpAdminString, ancpNasPortDSLType AncpDslLineType, ancpNasPortDSLState AncpDslLineState, ancpNasPortDSLParamActualNetDataRateUp Unsigned32, ancpNasPortDSLParamActualNetDataRateDown Unsigned32, ancpNasPortDSLParamMinNetDataRateUp Unsigned32, ancpNasPortDSLParamMinNetDataRateDown Unsigned32, ancpNasPortDSLParamAttainableNetDataRateUp Unsigned32, ancpNasPortDSLParamAttainableNetDataRateDown Unsigned32, ancpNasPortDSLParamMaxNetDataRateUp Unsigned32, ancpNasPortDSLParamMaxNetDataRateDown Unsigned32, ancpNasPortDSLParamMinNetLowPowerDataRateUp Unsigned32, ancpNasPortDSLParamMinNetLowPowerDataRateDown Unsigned32, ancpNasPortDSLParamMaxInterleavingDelayUp Unsigned32, ancpNasPortDSLParamActualInterleavingDelayUp Unsigned32, ancpNasPortDSLParamMaxInterleavingDelayDown Unsigned32, ancpNasPortDSLParamActualInterleavingDelayDown Unsigned32 } ancpNasPortName OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Access Loop Circuit ID (client-ID/port-ID) of the AN port. The format for this object is described in ancpNasIfClientID object." ::= { ancpNasPortEntry 1 } ancpNasPortDSLType OBJECT-TYPE Rohit, et al. Expires December 1, 2010 [Page 16] Internet-Draft ANCP NAS MIB May 2010 SYNTAX AncpDslLineType MAX-ACCESS read-only STATUS current DESCRIPTION "DSL line Type for this port." ::= { ancpNasPortEntry 2 } ancpNasPortDSLState OBJECT-TYPE SYNTAX AncpDslLineState MAX-ACCESS read-only STATUS current DESCRIPTION "DSL line state for this port" ::= { ancpNasPortEntry 3 } ancpNasPortDSLParamActualNetDataRateUp OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Actual upstream net data rate for this port." ::= { ancpNasPortEntry 4 } ancpNasPortDSLParamActualNetDataRateDown OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Actual downstream net data rate for this port." ::= { ancpNasPortEntry 5 } ancpNasPortDSLParamMinNetDataRateUp OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Minimum net data rate desired by the operator for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 6 } ancpNasPortDSLParamMinNetDataRateDown OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Minimum net data rate desired by the operator for this port. This object is an optional port attribute and should reflect Rohit, et al. Expires December 1, 2010 [Page 17] Internet-Draft ANCP NAS MIB May 2010 zero value if not present." ::= { ancpNasPortEntry 7 } ancpNasPortDSLParamAttainableNetDataRateUp OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Maximum net upstream rate that can be attained for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 8 } ancpNasPortDSLParamAttainableNetDataRateDown OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Maximum net downstream rate that can be attained for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 9 } ancpNasPortDSLParamMaxNetDataRateUp OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Maximum net data rate desired by the operator for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 10 } ancpNasPortDSLParamMaxNetDataRateDown OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Maximum net data rate desired by the operator for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 11 } ancpNasPortDSLParamMinNetLowPowerDataRateUp OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION Rohit, et al. Expires December 1, 2010 [Page 18] Internet-Draft ANCP NAS MIB May 2010 "Minimum net data rate desired by the operator in low power state for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 12 } ancpNasPortDSLParamMinNetLowPowerDataRateDown OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Minimum net data rate desired by the operator in low power state for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 13 } ancpNasPortDSLParamMaxInterleavingDelayUp OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Maximum one way interleaving delay for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 14 } ancpNasPortDSLParamActualInterleavingDelayUp OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Value corresponding to the interleaver setting for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 15 } ancpNasPortDSLParamMaxInterleavingDelayDown OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Maximum one way interleaving delay for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 16 } ancpNasPortDSLParamActualInterleavingDelayDown OBJECT-TYPE Rohit, et al. Expires December 1, 2010 [Page 19] Internet-Draft ANCP NAS MIB May 2010 SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Value corresponding to the interleaver setting for this port. This object is an optional port attribute and should reflect zero value if not present." ::= { ancpNasPortEntry 17 } -- Objects for enabling/disabling notifications ancpNasPortStatusNotifEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION " This object indicates whether the device should generate notifications related to port admin status. " DEFVAL { true } ::= { ancpNasNotifControl 1 } ancpNasSessionNotifEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION " This object indicates whether the device should generate notifications related to ancp session status." DEFVAL { true } ::= { ancpNasNotifControl 2 } -- Notifications ancpNasPortUp NOTIFICATION-TYPE OBJECTS { ancpNasPortDSLType, ancpNasPortDSLState, ancpNasPortDSLParamActualNetDataRateUp, ancpNasPortDSLParamActualNetDataRateDown } STATUS current DESCRIPTION " This notification is generated when NAS receives a port up and the value of ancpNasPortStatusNotifEnable is true." ::= { ancpNasNotifications 1 } Rohit, et al. Expires December 1, 2010 [Page 20] Internet-Draft ANCP NAS MIB May 2010 ancpNasPortDown NOTIFICATION-TYPE OBJECTS { ancpNasPortDSLType, ancpNasPortDSLState } STATUS current DESCRIPTION "This notification is generated when NAS receives a port down and the value of ancpNasPortStatusNotifEnable is true." ::= { ancpNasNotifications 2 } ancpNasSessionUp NOTIFICATION-TYPE STATUS current DESCRIPTION "This notification is generated when the ANCP session reaches ESTAB state (as given by ancpNasSessionState) and the value of ancpNasSessionNotifEnable is true. ancpNasSessionID uniquely identifies the session." ::= { ancpNasNotifications 3 } ancpNasSessionDown NOTIFICATION-TYPE OBJECTS { ancpNasSessionState, ancpNasSessionCapabilities, ancpNasSessionLocalIPType, ancpNasSessionLocalIP, ancpNasSessionRemoteIPType, ancpNasSessionRemoteIP, ancpNasSessionLocalPort, ancpNasSessionRemotePort } STATUS current DESCRIPTION "This notification is generated when a session is torn down and the value of ancpNasSessionNotifEnable is true. The session can be torn down either due to ANCP adjacency timer firing or underlying TCP closing the session (due to various reasons)." ::= { ancpNasNotifications 4 } -- conformance statements ancpNasCompliances OBJECT IDENTIFIER ::= { ancpNasConformance 1 } ancpNasGroups OBJECT IDENTIFIER ::= { ancpNasConformance 2 } ancpNasFullCompliance MODULE-COMPLIANCE STATUS current Rohit, et al. Expires December 1, 2010 [Page 21] Internet-Draft ANCP NAS MIB May 2010 DESCRIPTION "The compliance statement for implementations of the ANCP-NAS-MIB. When this MIB is implemented with support for read-write, then such an implementation can claim full compliance. Such devices can then be both monitored and configured with this MIB." MODULE -- this module MANDATORY-GROUPS { ancpNasSessionGroup, ancpNasConfigGroup } GROUP ancpNasPortGroup DESCRIPTION "This group is optional." GROUP ancpNasNotifControlGroup DESCRIPTION "This group is optional." GROUP ancpNasNotificationGroup DESCRIPTION "This group is optional." OBJECT ancpNasSessionLocalIPType SYNTAX InetAddressType DESCRIPTION "An implementation is required to support global IPv4 and/or IPv6 addresses, depending on its support for IPv4 and IPv6." OBJECT ancpNasSessionLocalIP SYNTAX InetAddress (SIZE(4|16)) DESCRIPTION "An implementation is required to support global IPv4 and/or IPv6 addresses, depending on its support for IPv4 and IPv6." OBJECT ancpNasSessionRemoteIPType SYNTAX InetAddressType DESCRIPTION "An implementation is required to support global IPv4 and/or IPv6 addresses, depending on its support for IPv4 and IPv6." Rohit, et al. Expires December 1, 2010 [Page 22] Internet-Draft ANCP NAS MIB May 2010 OBJECT ancpNasSessionRemoteIP SYNTAX InetAddress (SIZE(4|16)) DESCRIPTION "An implementation is required to support global IPv4 and/or IPv6 addresses, depending on its support for IPv4 and IPv6." ::= { ancpNasCompliances 1 } ancpNasReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "When this MIB is implemented without support for read-write (i.e., in read-only mode), then such an implementation can claim read-only compliance. Such a device can then be monitored but cannot be configured with this MIB." MODULE -- this module MANDATORY-GROUPS { ancpNasSessionGroup, ancpNasConfigGroup } GROUP ancpNasPortGroup DESCRIPTION "This group is optional." GROUP ancpNasNotifControlGroup DESCRIPTION "This group is optional." GROUP ancpNasNotificationGroup DESCRIPTION "This group is optional." OBJECT ancpNasAdjacencyTimer SYNTAX Unsigned32 MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT ancpTrafficShaperFactor SYNTAX Unsigned32 MIN-ACCESS read-only DESCRIPTION "Write access is not required." Rohit, et al. Expires December 1, 2010 [Page 23] Internet-Draft ANCP NAS MIB May 2010 OBJECT ancpNasIfEnable SYNTAX TruthValue MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT ancpNasIfNeighbourName SYNTAX SnmpAdminString MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT ancpNasIfID SYNTAX SnmpAdminString MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT ancpNasIfClientID SYNTAX SnmpAdminString MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT ancpNasSessionLocalIPType SYNTAX InetAddressType DESCRIPTION "An implementation is required to support global IPv4 and/or IPv6 addresses, depending on its support for IPv4 and IPv6." OBJECT ancpNasSessionLocalIP SYNTAX InetAddress (SIZE(4|16)) DESCRIPTION "An implementation is required to support global IPv4 and/or IPv6 addresses, depending on its support for IPv4 and IPv6." OBJECT ancpNasSessionRemoteIPType SYNTAX InetAddressType DESCRIPTION "An implementation is required to support global IPv4 and/or IPv6 addresses, depending on its support for IPv4 and IPv6." OBJECT ancpNasSessionRemoteIP SYNTAX InetAddress (SIZE(4|16)) DESCRIPTION Rohit, et al. Expires December 1, 2010 [Page 24] Internet-Draft ANCP NAS MIB May 2010 "An implementation is required to support global IPv4 and/or IPv6 addresses, depending on its support for IPv4 and IPv6." ::= { ancpNasCompliances 2 } ancpNasSessionGroup OBJECT-GROUP OBJECTS { ancpNasCapabilities, ancpNasSessionState, ancpNasSessionCapabilities, ancpNasSessionLocalIPType, ancpNasSessionLocalIP, ancpNasSessionRemoteIPType, ancpNasSessionRemoteIP, ancpNasSessionLocalPort, ancpNasSessionRemotePort, ancpNasSessionLocalMAC, ancpNasSessionRemoteMAC, ancpNasSessionIfIndex, ancpNasSessionSenderName, ancpNasSessionReceiverName, ancpNasSessionSenderInstance, ancpNasSessionReceiverInstance } STATUS current DESCRIPTION "A collection of ANCP session specific objects." ::= { ancpNasGroups 1 } ancpNasPortGroup OBJECT-GROUP OBJECTS { ancpNasPortDSLType, ancpNasPortDSLState, ancpNasPortDSLParamActualNetDataRateUp, ancpNasPortDSLParamActualNetDataRateDown, ancpNasPortDSLParamMinNetDataRateUp, ancpNasPortDSLParamMinNetDataRateDown, ancpNasPortDSLParamAttainableNetDataRateUp, ancpNasPortDSLParamAttainableNetDataRateDown, ancpNasPortDSLParamMaxNetDataRateUp, ancpNasPortDSLParamMaxNetDataRateDown, ancpNasPortDSLParamMinNetLowPowerDataRateUp, ancpNasPortDSLParamMinNetLowPowerDataRateDown, ancpNasPortDSLParamMaxInterleavingDelayUp, ancpNasPortDSLParamActualInterleavingDelayUp, ancpNasPortDSLParamMaxInterleavingDelayDown, ancpNasPortDSLParamActualInterleavingDelayDown } Rohit, et al. Expires December 1, 2010 [Page 25] Internet-Draft ANCP NAS MIB May 2010 STATUS current DESCRIPTION "A collection of ANCP port specific objects." ::= { ancpNasGroups 2 } ancpNasConfigGroup OBJECT-GROUP OBJECTS { ancpNasAdjacencyTimer, ancpTrafficShaperFactor, ancpNasIfEnable, ancpNasIfNeighbourName, ancpNasIfID, ancpNasIfClientID } STATUS current DESCRIPTION "A collection of configuration-related information required to support management of devices supporting ANCP." ::= { ancpNasGroups 3 } ancpNasNotifControlGroup OBJECT-GROUP OBJECTS { ancpNasPortStatusNotifEnable, ancpNasSessionNotifEnable } STATUS current DESCRIPTION "A collection of ANCP notification control objects." ::= { ancpNasGroups 4 } ancpNasNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { ancpNasPortUp, ancpNasPortDown, ancpNasSessionUp, ancpNasSessionDown } STATUS current DESCRIPTION "A collection of notifications generated by devices supporting this MIB." ::= { ancpNasGroups 5 } END Rohit, et al. Expires December 1, 2010 [Page 26] Internet-Draft ANCP NAS MIB May 2010 7. Security Considerations Unauthorized access to the write-able objects could cause a denial of service and/or widespread network disturbance. Hence, the support for SET operations in a non-secure environment without proper protection can have a negative effect on network operations. These are the tables and objects and their sensitivity/vulnerability: o ancpNasAdjacencyTimer Unauthorized changes to ANCP adjacency timer, like changing the adjacency timer to a very small value will increase the adjacency protocol messages generated and increase traffic on the NAS port, this could impact other traffic on the NAS. o ancpNasIfEnable Unauthorized changes to ancpNasIfEnable can result in adverse operational effect by enabling ANCP when that was supposed to be disabled, or service being made un-available to legitimate users. o ancpNasIfNeighbourName, ancpNasIfID Unauthorized changes to ancpNasIfNeighbourName and ancpNasIfID can result in a spurious ANCP neighbor (AN) being added or an actual neighbor being removed disrupting all ANCP traffic from than AN. o ancpNasIfClientID Unauthorized changes to ancpNasIfClientID could result in spurious subscribers being added or legitimate subscribers being removed. Also ancpNasIfClientID being a unique identity of a port, a change to any object may also cause service disruption. It is recommended that the implementers consider the security features as provided by the SNMPv3 framework (see [RFC3410] , section 8), including full support for the SNMPv3 cryptographic mechanisms (for authentication and privacy). Further, deployment of SNMP versions prior to SNMPv3 is NOT RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to enable cryptographic security. It is then a customer/operator responsibility to ensure that the SNMP entity giving access to an instance of this MIB module is properly configured to give access to the objects only to those principals (users) that have legitimate rights to indeed GET or SET (change/ create/delete) them. Rohit, et al. Expires December 1, 2010 [Page 27] Internet-Draft ANCP NAS MIB May 2010 8. IANA Considerations IANA is requested to assign OID (marked xxx) under mib-2 for ANCP- NAS-MIB. 9. Acknowledgements 10. References 10.1. Normative References [ANCPPR] Wadhwa, S., Moisand, J., Subramanian, S., Haag, T., Voigt, N., and R. Maglione, "Protocol for Access Node Control Mechanism in Broadband Networks", July 2009. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2578] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Structure of Management Information Version 2 (SMIv2)", April 1999. [RFC2579] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Textual Conventions for SMIv2", April 1999. [RFC2580] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Conformance Statements for SMIv2", April 1999. [RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB", June 2000. [RFC3295] Sjostrand, H., Buerkle, J., and B. Srinivasan, "Definitions of Managed Objects for the General Switch Management Protocol (GSMP)", June 2002. [RFC4001] Daniele, M., Haberman, B., Routhier, S., and J. Schoenwaelder, "Textual Conventions for Internet Network Addresses", February 2005. [RFC4363] Levi, D. and D. Harrington, "Definitions of Managed Objects for Bridges with Traffic Classes, Multicast Filtering, and Virtual LAN Extensions", January 2006. [RFC4502] Waldbusser, S., "Remote Network Monitoring Management Information Base Version 2", May 2006. Rohit, et al. Expires December 1, 2010 [Page 28] Internet-Draft ANCP NAS MIB May 2010 10.2. Informative References [ANCPFW] Ooghe, S., Voigt, N., Platnic, M., Haag, T., and S. Wadhwa, "Framework and Requirements for an Access Node Control Mechanism in Broadband Multi-Service Networks", October 2009. [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction and Applicability Statements for Internet Standard Management Framework", December 2002. Authors' Addresses Rohit. M Cisco Systems Cessna Business Park Kadubeesanahalli Village Varthur Hobli, Sarjapur Marathalli Outer Ring Road Bangalore, Karnataka 560 103 India Phone: +91 80 4426 0713 Email: rrohit@cisco.com Aniruddha. A Cisco Systems Cessna Business Park Kadubeesanahalli Village Varthur Hobli, Sarjapur Marathalli Outer Ring Road Bangalore, Karnataka 560 103 India Phone: +91 80 4426 1649 Email: anira@cisco.com Rohit, et al. Expires December 1, 2010 [Page 29] Internet-Draft ANCP NAS MIB May 2010 Anirban Karmakar Cisco Systems Cessna Business Park Kadubeesanahalli Village Varthur Hobli, Sarjapur Marathalli Outer Ring Road Bangalore, Karnataka 560 103 India Phone: +91 80 4426 0715 Email: akarmaka@cisco.com Rohit, et al. Expires December 1, 2010 [Page 30]