| Network Working Group | J.P.D. Dionne, Ed. |
| Internet-Draft | M. Blanchet |
| Intended status: Standards Track | Viagenie |
| Expires: January 04, 2012 | July 03, 2011 |
CGN Management Information Base (MIB)
draft-jpdionne-behave-cgn-mib-00
This memo describes the "Carrier Grade NAT" (CGN) Management Information Base (MIB). It is a complement to the NAT-MIB to cope with additional requirements for NAT deployed in large scale networks.
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 January 04, 2012.
Copyright (c) 2011 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.
This memo defines a MIB module to cover additionnal requirements of the Carrier Grade NAT (CGN) [I-D.ietf-behave-lsn-requirements]. It is a complement to the NAT-MIB [RFC4008]. Monitoring of CGN devices is essential to ensure that resources are fairly distributed amongs users. The memo is divided in three parts: configuration, state monitoring and notifications.
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, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580].
According to REQ-2 and REQ-3 of [I-D.ietf-behave-lsn-requirements], a CGN should limit port allocation.
natAddrMapTable is extended to provide live statistics on the number of external port and IP addresses in usage (cgnAddrPoolUsage)
[RFC4008] allows one to access session information for all the CGN. However, in practice, sessions and bindings tables for a CGN are too large to walk. Entries should be indexed differently on a per subscriber basis (See CgnSubscrTable below).
[To be determined] - Link with natSessionID of RFC4008 natSessionTable - Table of port usage per IP addresses.
The CGN-MIB defines three types of notifications, similar to events defined in [I-D.sivakumar-behave-nat-logging]. It includes: address exhaustion (cgnAddrPoolExhaustion), port exhaustion (cgnPortExhaustion) and user quota exceeded (cgnQuotaExceeded).
TBD
TBD
The following MIB module IMPORTS objects from NAT-MIB [RFC4008], SNMP-FRAMEWORK-MIB [RFC3411], INET-ADDRESS-MIB [RFC4001].
CGN-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
Gauge32,
Counter64,
mib-2,
NOTIFICATION-TYPE
FROM SNMPv2-SMI
TEXTUAL-CONVENTION,
StorageType,
RowStatus
FROM SNMPv2-TC
MODULE-COMPLIANCE,
NOTIFICATION-GROUP,
OBJECT-GROUP
FROM SNMPv2-CONF
natMIB,
NatAddrMapId
FROM NAT-MIB
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB
InetAddressType,
InetAddress,
InetPortNumber
FROM INET-ADDRESS-MIB;
cgnMIB MODULE-IDENTITY
LAST-UPDATED "201107030000Z"
ORGANIZATION "Viagenie Inc."
CONTACT-INFO
"Jean-Philippe Dionne
Viagenie Inc.
2875 Boul Laurier, Suite D2-630
Quebec, Quebec, Canada, G1V 2M2
Phone: +1-418-656-9254
Email: jean-philippe.dionne@viagenie.ca"
DESCRIPTION
"This MIB module defines an extension of the NAT-MIB
(RFC4008) for Carrier Grade NAT (CGN)"
REVISION "201107030000Z" -- July 3rd 2011
DESCRIPTION
"This MIB module defines an extension of the NAT-MIB
(RFC4008) for Carrier Grade NAT (CGN)"
::= { mib-2 123 }
cgnMIBObjects OBJECT IDENTIFIER ::= { cgnMIB 1 }
CgnProtocolType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Protocol numbers
(http://www.iana.org/assignments/protocol-numbers/)"
SYNTAX INTEGER
--
-- This table extends the natAddrMapTable table.
--
cgnSubscrQuotaTable OBJECT-TYPE
SYNTAX SEQUENCE OF CgnSubscrQuotaEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This tables represents per subscriber quota."
::= { cgnMIBObjects 1 }
cgnSubscrQuotaEntry OBJECT-TYPE
SYNTAX CgnSubscrQuotaEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This entry represents per subscriber quota indexed by
natAddrMapIndex from natAddrMapTable and protocol number."
INDEX { cgnUserQuotaMapIndex, cgnUserQuotaProtocol }
::= { cgnSubscrQuotaTable 1 }
CgnSubcrQuotaEntry ::=
SEQUENCE {
cgnUserQuotaMapIndex NatAddrMapId,
cgnUserQuotaProtocol CgnProtocolType,
cgnUserQuotaPortLimit INTEGER,
cgnUserQuotaAddrLimit INTEGER,
cgnUserQuotaPortAllocRate INTEGER
}
-- [TBD] define entries elements
cgnAddrPoolTable OBJECT-TYPE
SYNTAX SEQUENCE OF CgnAddrPoolEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table represents the external address pool usage."
::= { cgnMIBObjects 2 }
cgnAddrPoolEntry OBJECT-TYPE
SYNTAX CgnAddrPoolEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This entry represents the external address pool usage
indexed by natAddrMapIndex from natAddrMapTable and
protocol number."
INDEX { cgnAddrPoolMapIndex }
::= { cgnAddrPoolTable 1 }
CgnAddrPoolEntry ::=
SEQUENCE {
cgnAddrPoolMapIndex NatAddrMapId,
cgnAddrPoolUsage Gauge32,
cgnAddrPoolExceeded Counter64,
cgnPortPoolExceeded Counter64
}
-- [TBD] define entries elements
-- CgnSubscrTable
cgnSubscrTable OBJECT-TYPE
SYNTAX SEQUENCE OF CgnSubscrEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table represents per subscriber information."
::= { cgnMIBObjects 3 }
cgnSubscrEntry OBJECT-TYPE
SYNTAX CgnSubscrEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This entry represents per subscriber information."
INDEX { cgnSubscrMapIndex,
cgnSubscrInetAddrType,
cgnSubscrInetAddr
}
::= { cgnSubscrTable 1 }
CgnSubscrEntry ::=
SEQUENCE {
cgnSubscrMapIndex NatAddrMapId,
cgnSubscrInetAddrType InetAddrType,
cgnSubscrInetAddr InetAddr,
cgnSubscrEntryAddrUsage INTEGER,
cgnSubscrEntryPortUsage INTEGER,
cgnSubscrPortQuotaExceeded Counter64,
cgnSubscrAddrQuotaExceeded Counter64
}
--
-- Notifications
--
cgnMIBNotifications OBJECT IDENTIFIER ::= { cgnMIB 0 }
cgnAddrPoolExhaustion NOTIFICATION-TYPE
OBJECTS { natAddrMapIndex }
STATUS current
DESCRIPTION
""
::= { cgnMIBNotifications 1 }
cgnPortExhaustion NOTIFICATION-TYPE
OBJECTS { natAddrMapIndex, cgnProtocolType,
inetAddressType, inetAddress }
STATUS current
DESCRIPTION
""
::= { cgnMIBNotifications 2 }
cgnUserQuotaExceeded NOTIFICATION-TYPE
OBJECTS { natAddrMapIndex, inetAddressType, inetAddress }
STATUS current
DESCRIPTION
""
::= { cgnMIBNotifications 3 }
No additional security consideration than RFC 4008.
TBD
| [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)", STD 58, RFC 2578, April 1999. |
| [RFC2579] | McCloghrie, K., Perkins, D. and J. Schoenwaelder, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. |
| [RFC2580] | McCloghrie, K., Perkins, D. and J. Schoenwaelder, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. |
| [RFC4008] | Rohit, R., Srisuresh, P., Raghunarayan, R., Pai, N. and C. Wang, "Definitions of Managed Objects for Network Address Translators (NAT)", RFC 4008, March 2005. |
| [RFC2223] | Postel, J. and J.K. Reynolds, "Instructions to RFC Authors", RFC 2223, October 1997. |
| [RFC3410] | Case, J., Mundy, R., Partain, D. and B. Stewart, "Introduction and Applicability Statements for Internet-Standard Management Framework", RFC 3410, December 2002. |
| [RFC2629] | Rose, M.T., "Writing I-Ds and RFCs using XML", RFC 2629, June 1999. |
| [RFC4181] | Heard, C., "Guidelines for Authors and Reviewers of MIB Documents", BCP 111, RFC 4181, September 2005. |
| [I-D.ietf-behave-lsn-requirements] | Perreault, S, Yamagata, I, Miyakawa, S, Nakagawa, A and H Ashida, "Common requirements for IP address sharing schemes", Internet-Draft draft-ietf-behave-lsn-requirements-01, March 2011. |
| [I-D.sivakumar-behave-nat-logging] | Sivakumar, S, "Logging of NAT Events", Internet-Draft draft-sivakumar-behave-nat-logging-01, May 2011. |