One document matched: draft-ietf-malloc-malloc-mib-08.txt-70933.txt

Differences from 08.txt-07.txt








MALLOC Working Group                                      Dave Thaler
INTERNET-DRAFT                                              Microsoft
Expires July 2003                                     27 January 2003



                    Multicast Address Allocation MIB
                 <draft-ietf-malloc-malloc-mib-08.txt>





Status of this Memo

This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC 2026.

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.



Copyright Notice

Copyright (C) The Internet Society (2003).  All Rights Reserved.

Abstract

This memo defines a portion of the Management Information Base (MIB) for
use with network management protocols in the Internet community.  In
particular, it describes managed objects used for managing multicast
address allocation.





Expires July 2003                                               [Page 1]





Draft               Multicast Address Allocation MIB        January 2003


1.  Introduction

This document defines a Management Information Base (MIB) module for
managing multicast address allocation in a protocol-independent manner,
as well as for managing specific protocols used in allocating multicast
addresses.  The protocol-independent objects in this MIB apply to all
multicast address allocation servers (MAASs) and clients, as described
in [ARCH], including those that allocate source-specific multicast
addresses for the local machine.

The protocol-specific objects in this MIB include objects related to the
Multicast Address Dynamic Client Allocation Protocol (MADCAP) [MADCAP].
Interactions with the Multicast-scope Zone Announcement Protocol (MZAP)
[MZAP] are also noted where appropriate.


2.  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,
   RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580
   [RFC2580].


3.  Overview

The purpose of this MIB module is to provide the ability to configure
and monitor the status of multicast address allocation within the local
domain.

Some important monitoring questions which can be answered by this MIB
module include:

o    How full is scope X?

o    Who's using up the space?






Expires July 2003                                               [Page 2]





Draft               Multicast Address Allocation MIB        January 2003


o    Who allocated a given address A?

o    Are requests being met?

This MIB module is divided into two primary sections:

o    Protocol-independent objects relevant to all multicast address
     allocation servers and clients.

o    Protocol-specific objects related to the MADCAP client-server
     protocol.


3.1.  Protocol-independent objects

The protocol-independent objects consist of one "capabilities" scalar
and five tables.  The tables are:

o    The Scope Table contains information on the multicast scopes known
     to a multicast address allocation server.  This table allows
     configuring scopes, and viewing what scopes are known to the local
     system after being configured elsewhere.

o    The Scope Name Table contains the names of the multicast scopes.
     This table logically extends the Scope Table with the list of scope
     names in various languages for each scope.

o    The Allocation Range Table contains the address ranges out of which
     the device may allocate addresses.  It also allows answering the
     questions "How full is scope X?" and "Are requests being met?"

o    The Request Table contains the requests for address allocations,
     and allows answering the question "Who's using up the space?"

o    The Address Table contains the blocks of addresses which have been
     allocated, and together with the Request Table, allows answering
     the question "Who allocated a given address A?"


3.2.  Protocol-specific objects

The MADCAP objects consist of a group of (scalar) configuration
parameters, and a group of (scalar) statistics.







Expires July 2003                                               [Page 3]





Draft               Multicast Address Allocation MIB        January 2003


4.  Definitions

MALLOC-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, OBJECT-IDENTITY, mib-2,
    Unsigned32, Gauge32, Counter32         FROM SNMPv2-SMI

    RowStatus, TruthValue, StorageType     FROM SNMPv2-TC

    MODULE-COMPLIANCE, OBJECT-GROUP        FROM SNMPv2-CONF

    InetAddress, InetAddressType           FROM INET-ADDRESS-MIB

    LanguageTag                            FROM IPMROUTE-STD-MIB

    SnmpAdminString                        FROM SNMP-FRAMEWORK-MIB

    IANAscopeSource, IANAmallocRangeSource FROM IANA-MALLOC-MIB;

mallocMIB MODULE-IDENTITY
    LAST-UPDATED "200301271200Z" -- January 27, 2003
    ORGANIZATION "IETF MALLOC Working Group"
    CONTACT-INFO
            " WG-EMail:   malloc@catarina.usc.edu
              Subscribe:  malloc-request@catarina.usc.edu
              Archive:    catarina.usc.edu/pub/multicast/malloc/

              Co-chair/editor:
              Dave Thaler
              Microsoft Corporation
              One Microsoft Way
              Redmond, WA 98052
              EMail: dthaler@microsoft.com

              Co-chair:
              Steve Hanna
              Sun Microsystems, Inc.
              One Network Drive
              Burlington, MA 01803
              EMail: steve.hanna@sun.com"
    DESCRIPTION
            "The MIB module for management of multicast address
            allocation.






Expires July 2003                                               [Page 4]





Draft               Multicast Address Allocation MIB        January 2003


            Copyright (C) The Internet Society (2003). This version of
            this MIB module is part of RFC xxxx; see the RFC itself for
            full legal notices."
    -- RFC-Editor assigns xxxx above

    -- revision log

    REVISION     "200301271200Z" -- January 27, 2003
    DESCRIPTION
            "Initial version, published as RFC xxxx."
        -- RFC-Editor assigns xxxx above
    ::= { mib-2 XXX } -- to be assigned by IANA


mallocMIBObjects OBJECT IDENTIFIER ::= { mallocMIB 1 }

malloc      OBJECT IDENTIFIER ::= { mallocMIBObjects 1 }

madcap      OBJECT IDENTIFIER ::= { mallocMIBObjects 2 }

--
-- scalars
--

mallocCapabilities OBJECT-TYPE
    SYNTAX     BITS {
                   startTime(0),
                   serverMobility(1),
                   retryAfter(2)
               }
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "This object describes the capabilities which a client or
            server supports.  The startTime bit indicates that
            allocations with a future start time are supported.  The
            serverMobility bit indicates that allocations can be renewed
            or released from a server other than the one granting the
            original allocation.  The retryAfter bit indicates support
            for a waiting state where the client may check back at a
            later time to get the status of its request."
    ::= { malloc 1 }

--
-- the Scope Table





Expires July 2003                                               [Page 5]





Draft               Multicast Address Allocation MIB        January 2003


--

mallocScopeTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF MallocScopeEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The (conceptual) table containing information on multicast
            scopes from which addresses may be allocated.  Entries in
            this table may be dynamically discovered via some other
            protocol, such as MZAP, or may be statically configured,
            such as in an isolated network environment.  Each scope is
            associated with a range of multicast addresses, and ranges
            for different rows must be disjoint."
    ::= { malloc 2 }

mallocScopeEntry OBJECT-TYPE
    SYNTAX     MallocScopeEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry (conceptual row) containing the information on a
            particular multicast scope."
    INDEX      { mallocScopeAddressType, mallocScopeFirstAddress }
    ::= { mallocScopeTable 1 }

MallocScopeEntry ::= SEQUENCE {
    mallocScopeAddressType          InetAddressType,
    mallocScopeFirstAddress         InetAddress,
    mallocScopeLastAddress          InetAddress,
    mallocScopeHopLimit             Unsigned32,
    mallocScopeStatus               RowStatus,
    mallocScopeSource               IANAscopeSource,
    mallocScopeDivisible            TruthValue,
    mallocScopeServerAddressType    InetAddressType,
    mallocScopeServerAddress        InetAddress,
    mallocScopeSSM                  TruthValue,
    mallocScopeStorage              StorageType
}

mallocScopeAddressType OBJECT-TYPE
    SYNTAX     InetAddressType
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION





Expires July 2003                                               [Page 6]





Draft               Multicast Address Allocation MIB        January 2003


            "The type of the addresses in the multicast scope range.
            Legal values correspond to the subset of address families
            for which multicast address allocation is supported."
    ::= { mallocScopeEntry 1 }

mallocScopeFirstAddress OBJECT-TYPE
    SYNTAX     InetAddress (SIZE(0..20))
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The first address in the multicast scope range.  The type
            of this address is determined by the value of the
            mallocScopeAddressType object."
    ::= { mallocScopeEntry 2 }

mallocScopeLastAddress OBJECT-TYPE
    SYNTAX     InetAddress (SIZE(0..20))
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The last address in the multicast scope range.  The type of
            this address is determined by the value of the
            mallocScopeAddressType object."
    ::= { mallocScopeEntry 3 }

mallocScopeHopLimit OBJECT-TYPE
    SYNTAX     Unsigned32 (0..255)
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The default IPv4 TTL or IPv6 hop limit which applications
            should use for groups within the scope."
    DEFVAL     { 255 }
    ::= { mallocScopeEntry 4 }

mallocScopeStatus OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The status of this row, by which new entries may be
            created, or old entries deleted from this table.  If write
            access is supported, the other writable objects in this
            table may be modified even while the status is `active'."
    ::= { mallocScopeEntry 5 }





Expires July 2003                                               [Page 7]





Draft               Multicast Address Allocation MIB        January 2003


mallocScopeSource OBJECT-TYPE
    SYNTAX     IANAscopeSource
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The method by which this entry was learned."
    ::= { mallocScopeEntry 6 }

mallocScopeDivisible OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "If false, the server may allocate addresses out of the
            entire range.  If true, the server must not allocate
            addresses out of the entire range, but may only allocate
            addresses out of a subrange learned via another method.
            Creating or deleting a scope which is not divisible has the
            side effect of creating or deleting the corresponding entry
            in the mallocAllocRangeTable.  Deleting a scope which is
            divisible has the side effect of deleting any corresponding
            entries in the mallocAllocRangeTable, and the
            mallocRequestTable."
    DEFVAL     { false }
    ::= { mallocScopeEntry 7 }

mallocScopeServerAddressType OBJECT-TYPE
    SYNTAX     InetAddressType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The type of the address of a multicast address allocation
            server to which a request may be sent."
    DEFVAL { unknown }
    ::= { mallocScopeEntry 8 }

mallocScopeServerAddress OBJECT-TYPE
    SYNTAX     InetAddress
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The address of a multicast address allocation server to
            which a request may be sent.  The default value is an zero-
            length address, indicating that no server is known.  The
            type of this address is determined by the value of the





Expires July 2003                                               [Page 8]





Draft               Multicast Address Allocation MIB        January 2003


            mallocScopeServerAddressType object."
    DEFVAL { ''h } -- the empty string
    ::= { mallocScopeEntry 9 }

mallocScopeSSM OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "Indicates whether the scope is a Source-Specific Multicast
            (SSM) range."
    DEFVAL     { false }
    ::= { mallocScopeEntry 10 }

mallocScopeStorage OBJECT-TYPE
    SYNTAX     StorageType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The storage type for this conceptual row.  Conceptual rows
            having the value 'permanent' need not allow write-access to
            any columnar objects in the row."
    DEFVAL     { nonVolatile }
    ::= { mallocScopeEntry 11 }

--
-- the Scope Name Table
--

mallocScopeNameTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF MallocScopeNameEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The (conceptual) table containing information on multicast
            scope names.  Entries in this table may be dynamically
            discovered via some other protocol, such as MZAP, or may be
            statically configured, such as in an isolated network
            environment."
    ::= { malloc 3 }










Expires July 2003                                               [Page 9]





Draft               Multicast Address Allocation MIB        January 2003


mallocScopeNameEntry OBJECT-TYPE
    SYNTAX     MallocScopeNameEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry (conceptual row) containing the information on a
            particular multicast scope name."
    INDEX      { mallocScopeAddressType, mallocScopeFirstAddress,
                 IMPLIED mallocScopeNameLangName }
    ::= { mallocScopeNameTable 1 }

MallocScopeNameEntry ::= SEQUENCE {
    mallocScopeNameLangName         LanguageTag,
    mallocScopeNameScopeName        SnmpAdminString,
    mallocScopeNameDefault          TruthValue,
    mallocScopeNameStatus           RowStatus,
    mallocScopeNameStorage          StorageType
}

mallocScopeNameLangName OBJECT-TYPE
    SYNTAX     LanguageTag (SIZE(1..94))
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The RFC 3066 language tag for the language of the scope
            name."
    ::= { mallocScopeNameEntry 1 }

mallocScopeNameScopeName OBJECT-TYPE
    SYNTAX     SnmpAdminString
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The textual name associated with the multicast scope.  The
            value of this object should be suitable for displaying to
            end-users, such as when allocating a multicast address in
            this scope.  If the scope is an IPv4 scope, and no name is
            specified, the default value of this object should be the
            string 239.x.x.x/y with x and y replaced appropriately to
            describe the address and mask length associated with the
            scope.  If the scope is an IPv6 scope, and no name is
            specified, the default value of this object should
            generically describe the scope level (e.g., site)."
    ::= { mallocScopeNameEntry 2 }






Expires July 2003                                              [Page 10]





Draft               Multicast Address Allocation MIB        January 2003


mallocScopeNameDefault OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "If true, indicates a preference that the name in the
            associated language should be used by applications if no
            name is available in a desired language."
    DEFVAL     { false }
    ::= { mallocScopeNameEntry 3 }

mallocScopeNameStatus OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The status of this row, by which new entries may be
            created, or old entries deleted from this table.  If write
            access is supported, the other writable objects in this
            table may be modified even while the status is `active'."
    ::= { mallocScopeNameEntry 4 }

mallocScopeNameStorage OBJECT-TYPE
    SYNTAX     StorageType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The storage type for this conceptual row.  Conceptual rows
            having the value 'permanent' need not allow write-access to
            any columnar objects in the row."
    DEFVAL     { nonVolatile }
    ::= { mallocScopeNameEntry 5 }

--
-- the Allocation Range Table
--
mallocAllocRangeTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF MallocAllocRangeEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The (conceptual) table containing information on subranges
            of addresses from which the device may allocate addresses,
            if it is a MAAS.  If the device is a Prefix Coordinator, any
            ranges which the device is advertising to MAAS's will be in





Expires July 2003                                              [Page 11]





Draft               Multicast Address Allocation MIB        January 2003


            this table.  Note that the device may be both a MAAS and a
            Prefix Coordinator.

            Address ranges for different rows must be disjoint, and must
            be contained with the address range of the corresponding row
            of the mallocScopeTable.

            Deleting an allocation range has the side effect of deleting
            any entries within that range from the mallocAddressTable."
    ::= { malloc 4 }

mallocAllocRangeEntry OBJECT-TYPE
    SYNTAX     MallocAllocRangeEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry (conceptual row) containing the information on a
            particular allocation range."
    INDEX      { mallocScopeAddressType, mallocScopeFirstAddress,
                 mallocAllocRangeFirstAddress }
    ::= { mallocAllocRangeTable 1 }

MallocAllocRangeEntry ::= SEQUENCE {
    mallocAllocRangeFirstAddress        InetAddress,
    mallocAllocRangeLastAddress         InetAddress,
    mallocAllocRangeStatus              RowStatus,
    mallocAllocRangeSource              IANAmallocRangeSource,
    mallocAllocRangeLifetime            Unsigned32,
    mallocAllocRangeMaxLeaseAddrs       Unsigned32,
    mallocAllocRangeMaxLeaseTime        Unsigned32,
    mallocAllocRangeNumAllocatedAddrs   Gauge32,
    mallocAllocRangeNumOfferedAddrs     Gauge32,
    mallocAllocRangeNumWaitingAddrs     Gauge32,
    mallocAllocRangeNumTryingAddrs      Gauge32,
    mallocAllocRangeAdvertisable        TruthValue,
    mallocAllocRangeTotalAllocatedAddrs Gauge32,
    mallocAllocRangeTotalRequestedAddrs Gauge32,
    mallocAllocRangeStorage             StorageType
}

mallocAllocRangeFirstAddress OBJECT-TYPE
    SYNTAX     InetAddress (SIZE(0..20))
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION





Expires July 2003                                              [Page 12]





Draft               Multicast Address Allocation MIB        January 2003


            "The first address in the allocation range.  The type of
            this address is determined by the value of the
            mallocScopeAddressType object."
    ::= { mallocAllocRangeEntry 1 }

mallocAllocRangeLastAddress OBJECT-TYPE
    SYNTAX     InetAddress (SIZE(0..20))
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The last address in the allocation range.  The type of this
            address is determined by the value of the
            mallocScopeAddressType object."
    ::= { mallocAllocRangeEntry 2 }

mallocAllocRangeStatus OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The status of this row, by which new entries may be
            created, or old entries deleted from this table.  If write
            access is supported, the other writable objects in this
            table may be modified even while the status is `active'."
    ::= { mallocAllocRangeEntry 3 }

mallocAllocRangeSource OBJECT-TYPE
    SYNTAX     IANAmallocRangeSource
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The means by which this entry was learned."
    ::= { mallocAllocRangeEntry 4 }

mallocAllocRangeLifetime OBJECT-TYPE
    SYNTAX     Unsigned32
    UNITS      "seconds"
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The number of seconds remaining in the lifetime of the
            (sub)range out of which addresses are being allocated.  A
            value of 0 indicates that the range is not subject to
            aging."
    DEFVAL     { 0 }





Expires July 2003                                              [Page 13]





Draft               Multicast Address Allocation MIB        January 2003


    ::= { mallocAllocRangeEntry 5 }

mallocAllocRangeMaxLeaseAddrs OBJECT-TYPE
    SYNTAX     Unsigned32
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The maximum number of addresses which the server is willing
            to grant for each future request in this range.  A value of
            0 means that no specific limit is enforced, as long as the
            server has valid addresses to allocate."
    DEFVAL { 0 }
    ::= { mallocAllocRangeEntry 6 }

mallocAllocRangeMaxLeaseTime OBJECT-TYPE
    SYNTAX     Unsigned32
    UNITS      "seconds"
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The maximum lifetime which the server will grant for future
            requests in this range.  A value of 0 means that no
            additional limit is enforced beyond that of
            mallocAllocRangeLifetime."
    DEFVAL { 0 }
    ::= { mallocAllocRangeEntry 7 }

mallocAllocRangeNumAllocatedAddrs OBJECT-TYPE
    SYNTAX     Gauge32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of addresses in the range which have been
            allocated.  This value can be used to determine the current
            address space utilization within the scoped range.  This
            should match the total number of addresses for this scope
            covered by entries in the mallocAddressTable."
    ::= { mallocAllocRangeEntry 8 }

mallocAllocRangeNumOfferedAddrs OBJECT-TYPE
    SYNTAX     Gauge32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of addresses in the range which have been





Expires July 2003                                              [Page 14]





Draft               Multicast Address Allocation MIB        January 2003


            offered.  This number should match the sum of
            mallocRequestNumAddrs for all entries in the
            mallocRequestTable in the offered state.  Together with
            mallocAllocRangeNumAllocatedAddrs and
            mallocAllocRangeNumTryingAddrs, this can be used to
            determine the address space utilization within the scoped
            range in the immediate future."
    ::= { mallocAllocRangeEntry 9 }

mallocAllocRangeNumWaitingAddrs OBJECT-TYPE
    SYNTAX     Gauge32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of addresses in the range which have been
            requested, but whose state is waiting, while the server
            attempts to acquire more address space."
    ::= { mallocAllocRangeEntry 10 }

mallocAllocRangeNumTryingAddrs OBJECT-TYPE
    SYNTAX     Gauge32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of addresses in the scope covered by entries in
            the mallocRequestTable in the trying state."
    ::= { mallocAllocRangeEntry 11 }

mallocAllocRangeAdvertisable OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The value of this object is true if the range is eligible
            to be advertised to other MAASs.  When the row is first
            created, the default value of this object is true if the
            scope is divisible, and is false otherwise."
    ::= { mallocAllocRangeEntry 12 }

mallocAllocRangeTotalAllocatedAddrs OBJECT-TYPE
    SYNTAX     Gauge32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The approximate number of addresses in the range which have





Expires July 2003                                              [Page 15]





Draft               Multicast Address Allocation MIB        January 2003


            been allocated by any MAAS, as determined by a Prefix
            Coordinator.  This object need only be present if
            mallocAllocRangeAdvertisable is true.  If the number is
            unknown, a value of 0 may be reported."
    ::= { mallocAllocRangeEntry 13 }

mallocAllocRangeTotalRequestedAddrs OBJECT-TYPE
    SYNTAX     Gauge32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The approximate number of addresses in the range for which
            there is potential demand among MAASs, as determined by a
            Prefix Coordinator.  This object need only be present if
            mallocAllocRangeAdvertisable is true.  If the number is
            unknown, a value of 0 may be reported."
    ::= { mallocAllocRangeEntry 14 }

mallocAllocRangeStorage OBJECT-TYPE
    SYNTAX     StorageType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The storage type for this conceptual row.  Conceptual rows
            having the value 'permanent' need not allow write-access to
            any columnar objects in the row."
    DEFVAL     { nonVolatile }
    ::= { mallocAllocRangeEntry 15 }

--
-- the Request Table
--

mallocRequestTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF MallocRequestEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The (conceptual) table containing information on allocation
            requests, whether allocated or in progress.  This table may
            also be used to determine which clients are responsible for
            high address space utilization within a given scope.
            Entries in this table reflect requests dynamically received
            by an address allocation protocol."
    ::= { malloc 5 }





Expires July 2003                                              [Page 16]





Draft               Multicast Address Allocation MIB        January 2003


mallocRequestEntry OBJECT-TYPE
    SYNTAX     MallocRequestEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry (conceptual row) containing the information on a
            particular allocation request."
    INDEX      { mallocRequestId }
    ::= { mallocRequestTable 1 }

MallocRequestEntry ::= SEQUENCE {
    mallocRequestId                      Unsigned32,
    mallocRequestScopeAddressType        InetAddressType,
    mallocRequestScopeFirstAddress       InetAddress,
    mallocRequestStartTime               Unsigned32,
    mallocRequestEndTime                 Unsigned32,
    mallocRequestNumAddrs                Unsigned32,
    mallocRequestState                   INTEGER,
    mallocRequestClientAddressType       InetAddressType,
    mallocRequestClientAddress           InetAddress,
    mallocRequestServerAddressType       InetAddressType,
    mallocRequestServerAddress           InetAddress,
    mallocRequestLeaseIdentifier         OCTET STRING
}

mallocRequestId OBJECT-TYPE
    SYNTAX     Unsigned32 (1..4294967295)
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An arbitrary value identifying this row."
    ::= { mallocRequestEntry 1 }

mallocRequestScopeAddressType OBJECT-TYPE
    SYNTAX     InetAddressType
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The type of the first address of the scope to which the
            request applies.  Legal values correspond to the subset of
            address families for which multicast address allocation is
            supported."
    ::= { mallocRequestEntry 2 }

mallocRequestScopeFirstAddress OBJECT-TYPE





Expires July 2003                                              [Page 17]





Draft               Multicast Address Allocation MIB        January 2003


    SYNTAX     InetAddress
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The first address of the scope to which the request
            applies.  This must match mallocScopeFirstAddress for some
            row in the mallocScopeTable.  The type of this address is
            determined by the value of the mallocRequestScopeAddressType
            object."
    ::= { mallocRequestEntry 3 }

mallocRequestStartTime OBJECT-TYPE
    SYNTAX     Unsigned32
    UNITS      "seconds"
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of seconds remaining before the start time of
            the request.  A value of 0 means that the allocation is
            currently in effect."
    ::= { mallocRequestEntry 4 }

mallocRequestEndTime OBJECT-TYPE
    SYNTAX     Unsigned32
    UNITS      "seconds"
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of seconds remaining before the end time of the
            request."
    ::= { mallocRequestEntry 5 }

mallocRequestNumAddrs OBJECT-TYPE
    SYNTAX     Unsigned32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of addresses requested.  If the addresses have
            been allocated, this number should match the total number of
            addresses for this request covered by entries in the
            mallocAddressTable."
    ::= { mallocRequestEntry 6 }

mallocRequestState OBJECT-TYPE
    SYNTAX     INTEGER {





Expires July 2003                                              [Page 18]





Draft               Multicast Address Allocation MIB        January 2003


                   allocated(1),
                   offered(2),   -- tentatively allocated
                   waiting(3),   -- waiting for more space
                   trying(4)     -- working on allocating
               }
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The state of the request.  A value of allocated(1)
            indicates that one or more entries for this request are
            present in the mallocAddressTable.  A value of offered(2)
            indicates that addresses have been offered to the client
            (e.g. via a MADCAP OFFER message), but the allocation has
            not been committed.  A value of waiting(3) indicates that
            the allocation is blocked while the server attempts to
            acquire more space from which it can allocate addresses.  A
            value of trying(4) means that no addresses have been offered
            to the client, but that an attempt to allocate is in
            progress."
    ::= { mallocRequestEntry 7 }

mallocRequestClientAddressType OBJECT-TYPE
    SYNTAX     InetAddressType
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The type of the address of the client that (last) requested
            this allocation."
    ::= { mallocRequestEntry 8 }

mallocRequestClientAddress OBJECT-TYPE
    SYNTAX     InetAddress
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The address of the client that (last) requested this
            allocation.  The type of this address is determined by the
            value of the mallocRequestClientAddressType object."
    ::= { mallocRequestEntry 9 }

mallocRequestServerAddressType OBJECT-TYPE
    SYNTAX     InetAddressType
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION





Expires July 2003                                              [Page 19]





Draft               Multicast Address Allocation MIB        January 2003


            "The type of the address of the server to which the request
            was (last) sent."
    ::= { mallocRequestEntry 10 }

mallocRequestServerAddress OBJECT-TYPE
    SYNTAX     InetAddress
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The address of the server to which the request was (last)
            sent.  The type of this address is determined by the value
            of the mallocRequestServerAddressType object."
    ::= { mallocRequestEntry 11 }

mallocRequestLeaseIdentifier OBJECT-TYPE
    SYNTAX     OCTET STRING (SIZE (0..255))
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The Lease Identifier of this request.  If the allocation
            mechanism in use does not use Lease Identifiers, then the
            value is a 0-length string."
    ::= { mallocRequestEntry 12 }

--
-- the Address Table
--

mallocAddressTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF MallocAddressEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The (conceptual) table containing information on blocks of
            allocated addresses.  This table may be used to map a given
            multicast group address to the associated request."
    ::= { malloc 6 }

mallocAddressEntry OBJECT-TYPE
    SYNTAX     MallocAddressEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry (conceptual row) containing the information on a
            particular block of allocated addresses.  The block of





Expires July 2003                                              [Page 20]





Draft               Multicast Address Allocation MIB        January 2003


            addresses covered by each entry in this table must fall
            within a range corresponding to an entry in the
            mallocAllocRangeTable."
    INDEX      { mallocAddressAddressType, mallocAddressFirstAddress }
    ::= { mallocAddressTable 1 }

MallocAddressEntry ::= SEQUENCE {
    mallocAddressAddressType             InetAddressType,
    mallocAddressFirstAddress            InetAddress,
    mallocAddressNumAddrs                Unsigned32,
    mallocAddressRequestId               Unsigned32
}

mallocAddressAddressType OBJECT-TYPE
    SYNTAX     InetAddressType
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The type of the first address in the allocated block.
            Legal values correspond to the subset of address families
            for which multicast address allocation is supported."
    ::= { mallocAddressEntry 1 }

mallocAddressFirstAddress OBJECT-TYPE
    SYNTAX     InetAddress (SIZE(0..20))
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The first address in the allocated block.  The type of this
            address is determined by the value of the
            mallocAddressAddressType object."
    ::= { mallocAddressEntry 2 }

mallocAddressNumAddrs OBJECT-TYPE
    SYNTAX     Unsigned32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of addresses in the allocated block."
    ::= { mallocAddressEntry 3 }

mallocAddressRequestId OBJECT-TYPE
    SYNTAX     Unsigned32
    MAX-ACCESS read-only
    STATUS     current





Expires July 2003                                              [Page 21]





Draft               Multicast Address Allocation MIB        January 2003


    DESCRIPTION
            "The index of the request which caused this block of
            addresses to be allocated.  This value must match the value
            of mallocRequestId for some entry in the
            mallocRequestTable."
    ::= { mallocAddressEntry 4 }

--
-- MADCAP-specific objects
--

madcapConfig OBJECT-IDENTITY
    STATUS     current
    DESCRIPTION
            "Group of objects that count various MADCAP events."
    ::= { madcap 1 }

madcapConfigExtraAllocationTime OBJECT-TYPE
    SYNTAX     Unsigned32
    UNITS      "seconds"
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
            "The amount of extra time on either side of a lease which
            the MADCAP server allocates to allow for clock skew among
            clients."
    ::= { madcapConfig 1 }

madcapConfigNoResponseDelay OBJECT-TYPE
    SYNTAX     Unsigned32
    UNITS      "seconds"
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
            "The amount of time the MADCAP client allows for receiving a
            response from a MADCAP server."
    ::= { madcapConfig 2 }

madcapConfigOfferHold OBJECT-TYPE
    SYNTAX     Unsigned32
    UNITS      "seconds"
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
            "The amount of time the MADCAP server will reserve an





Expires July 2003                                              [Page 22]





Draft               Multicast Address Allocation MIB        January 2003


            address for after sending an OFFER message in anticipation
            of receiving a REQUEST message."
    ::= { madcapConfig 3 }

madcapConfigResponseCacheInterval OBJECT-TYPE
    SYNTAX     Unsigned32 (0..300)
    UNITS      "seconds"
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
            "The amount of time the MADCAP server uses to detect
            duplicate messages."
    ::= { madcapConfig 4 }

madcapConfigClockSkewAllowance OBJECT-TYPE
    SYNTAX     Unsigned32
    UNITS      "seconds"
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
            "The clock skew threshold used by the MADCAP server to
            generate Excessive Clock Skew errors."
    ::= { madcapConfig 5 }

madcapCounters OBJECT-IDENTITY
    STATUS     current
    DESCRIPTION
            "A group of objects that count various MADCAP events."
    ::= { madcap 2 }

madcapTotalErrors OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of transactions for which the MADCAP
            server has detected an error of any type, regardless of
            whether the server ignored the request or generated a NAK."
    ::= { madcapCounters 1 }

madcapRequestsDenied OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION





Expires July 2003                                              [Page 23]





Draft               Multicast Address Allocation MIB        January 2003


            "The number of valid requests for which the MADCAP server
            could not complete an allocation, regardless of whether NAKs
            were sent.  This corresponds to the Valid Request Could Not
            Be Completed error code in MADCAP."
    ::= { madcapCounters 2 }

madcapInvalidRequests OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of invalid requests received by the MADCAP
            server, regardless of whether NAKs were sent.  This
            corresponds to the Invalid Request error code in MADCAP."
    ::= { madcapCounters 3 }

madcapExcessiveClockSkews OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of requests received by the MADCAP server with
            an excessive clock skew, regardless of whether NAKs were
            sent.  This corresponds to the Excessive Clock Skew error
            code in MADCAP."
    ::= { madcapCounters 4 }

madcapBadLeaseIds OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of requests received by the MADCAP server with
            an unrecognized Lease Identifier, regardless of whether NAKs
            were sent.  This corresponds to the Lease Identifier Not
            Recognized error code in MADCAP."
    ::= { madcapCounters 5 }

madcapDiscovers OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of DISCOVER messages received by the MADCAP
            server."





Expires July 2003                                              [Page 24]





Draft               Multicast Address Allocation MIB        January 2003


    ::= { madcapCounters 6 }

madcapInforms OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of INFORM messages received by the MADCAP
            server."
    ::= { madcapCounters 7 }

madcapRequests OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of REQUEST messages received by the MADCAP
            server."
    ::= { madcapCounters 8 }

madcapRenews OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of RENEW messages received by the MADCAP
            server."
    ::= { madcapCounters 9 }

madcapReleases OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of RELEASE messages received by the MADCAP
            server."
    ::= { madcapCounters 10 }


-- conformance information

mallocConformance  OBJECT IDENTIFIER ::= { mallocMIB 2 }
mallocCompliances  OBJECT IDENTIFIER ::= { mallocConformance 1 }
mallocGroups       OBJECT IDENTIFIER ::= { mallocConformance 2 }






Expires July 2003                                              [Page 25]





Draft               Multicast Address Allocation MIB        January 2003


-- compliance statements

mallocServerReadOnlyCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for multicast address allocation
            servers implementing the MALLOC MIB without support for
            read-create (i.e., in read-only mode).  Such a server can
            then be monitored but can not be configured with this MIB."
    MODULE  -- this module
    MANDATORY-GROUPS { mallocBasicGroup,
                       mallocServerGroup }

        OBJECT      mallocScopeLastAddress
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeHopLimit
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeStatus
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeDivisible
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeSSM
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeStorage
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeNameScopeName
        MIN-ACCESS  read-only





Expires July 2003                                              [Page 26]





Draft               Multicast Address Allocation MIB        January 2003


        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeNameDefault
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeNameStatus
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeNameStorage
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeLastAddress
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeStatus
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeLifetime
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeMaxLeaseAddrs
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeMaxLeaseTime
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeStorage
        MIN-ACCESS  read-only





Expires July 2003                                              [Page 27]





Draft               Multicast Address Allocation MIB        January 2003


        DESCRIPTION
            "Write access is not required."

    GROUP  madcapServerGroup
    DESCRIPTION
            "This group is mandatory for servers which implement the
            MADCAP client-server protocol."

        OBJECT      madcapConfigExtraAllocationTime
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      madcapConfigOfferHold
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      madcapConfigResponseCacheInterval
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      madcapConfigClockSkewAllowance
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

   ::= { mallocCompliances 1 }

mallocClientReadOnlyCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for clients implementing the
            MALLOC MIB without support for read-create (i.e., in read-
            only mode).  Such clients can then be monitored but can not
            be configured with this MIB."
    MODULE  -- this module
    MANDATORY-GROUPS { mallocBasicGroup,
                       mallocClientGroup }

    GROUP  mallocClientScopeGroup
    DESCRIPTION
            "This group is mandatory for clients which maintain a list
            of multicast scopes."





Expires July 2003                                              [Page 28]





Draft               Multicast Address Allocation MIB        January 2003


        OBJECT      mallocScopeLastAddress
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeHopLimit
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeStatus
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeServerAddressType
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeServerAddress
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeSSM
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeStorage
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

    GROUP  madcapClientGroup
    DESCRIPTION
            "This group is mandatory for clients which implement the
            MADCAP client-server protocol."

        OBJECT      madcapConfigNoResponseDelay
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."
   ::= { mallocCompliances 2 }





Expires July 2003                                              [Page 29]





Draft               Multicast Address Allocation MIB        January 2003


mallocPrefixCoordinatorReadOnlyCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for prefix coordinators
            implementing the MALLOC MIB without support for read-create
            (i.e., in read-only mode).  Such devices can then be
            monitored but can not be configured with this MIB."
    MODULE  -- this module
    MANDATORY-GROUPS { mallocBasicGroup,
                       mallocPrefixCoordinatorGroup }

        OBJECT      mallocScopeLastAddress
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocScopeDivisible
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeLastAddress
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeStatus
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeLifetime
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeAdvertisable
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."

        OBJECT      mallocAllocRangeStorage
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required."





Expires July 2003                                              [Page 30]





Draft               Multicast Address Allocation MIB        January 2003


   ::= { mallocCompliances 3 }

mallocServerFullCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for multicast address allocation
            servers implementing the MALLOC MIB with support for read-
            create.  Such servers can then be both monitored and
            configured with this MIB."
    MODULE  -- this module
    MANDATORY-GROUPS { mallocBasicGroup,
                       mallocServerGroup }


    GROUP  madcapServerGroup
    DESCRIPTION
            "This group is mandatory for servers which implement the
            MADCAP client-server protocol."

   ::= { mallocCompliances 4 }

mallocClientFullCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for hosts implementing the MALLOC
            MIB with support for read-create.  Such clients can then be
            both monitored and configured with this MIB."
    MODULE  -- this module
    MANDATORY-GROUPS { mallocBasicGroup,
                       mallocClientGroup }

    GROUP  mallocClientScopeGroup
    DESCRIPTION
            "This group is mandatory for clients which maintain a list
            of multicast scopes."

    GROUP  madcapClientGroup
    DESCRIPTION
            "This group is mandatory for clients which implement the
            MADCAP client-server protocol."
   ::= { mallocCompliances 5 }

mallocPrefixCoordinatorFullCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION





Expires July 2003                                              [Page 31]





Draft               Multicast Address Allocation MIB        January 2003


            "The compliance statement for prefix coordinators
            implementing the MALLOC MIB with support for read-create.
            Such devices can then be both monitored and configured with
            this MIB."
    MODULE  -- this module
    MANDATORY-GROUPS { mallocBasicGroup,
                       mallocPrefixCoordinatorGroup }
   ::= { mallocCompliances 6 }

-- units of conformance

mallocBasicGroup OBJECT-GROUP
        OBJECTS { mallocCapabilities, mallocRequestScopeAddressType,
                  mallocRequestScopeFirstAddress, mallocRequestStartTime,
                  mallocRequestEndTime, mallocRequestNumAddrs,
                  mallocRequestState,
                  mallocAddressNumAddrs, mallocAddressRequestId
                }
        STATUS  current
        DESCRIPTION
            "The basic collection of objects providing management of IP
            multicast address allocation."
   ::= { mallocGroups 1 }

mallocServerGroup OBJECT-GROUP
        OBJECTS { mallocScopeLastAddress, mallocScopeHopLimit,
                  mallocScopeSSM, mallocScopeStatus, mallocScopeStorage,
                  mallocAllocRangeLastAddress, mallocAllocRangeLifetime,
                  mallocAllocRangeNumAllocatedAddrs,
                  mallocAllocRangeNumOfferedAddrs,
                  mallocAllocRangeNumWaitingAddrs,
                  mallocAllocRangeNumTryingAddrs,
                  mallocAllocRangeMaxLeaseAddrs,
                  mallocAllocRangeMaxLeaseTime, mallocAllocRangeSource,
                  mallocAllocRangeStatus, mallocAllocRangeStorage,
                  mallocScopeDivisible, mallocScopeSource,
                  mallocScopeNameScopeName, mallocScopeNameDefault,
                  mallocScopeNameStatus, mallocScopeNameStorage,
                  mallocRequestClientAddressType,
                  mallocRequestClientAddress
                }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing management of multicast
            address allocation in servers."





Expires July 2003                                              [Page 32]





Draft               Multicast Address Allocation MIB        January 2003


   ::= { mallocGroups 2 }

mallocClientGroup OBJECT-GROUP
        OBJECTS { mallocRequestServerAddressType,
                  mallocRequestServerAddress }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing management of multicast
            address allocation in clients."
   ::= { mallocGroups 3 }

madcapServerGroup OBJECT-GROUP
        OBJECTS { madcapConfigClockSkewAllowance,
           madcapConfigExtraAllocationTime, madcapConfigOfferHold,
           madcapConfigResponseCacheInterval,
           madcapTotalErrors, madcapRequestsDenied,
           madcapInvalidRequests, madcapBadLeaseIds,
           madcapExcessiveClockSkews, madcapDiscovers,
           madcapInforms, madcapRequests,
           madcapRenews, madcapReleases }
        STATUS  current
        DESCRIPTION
            "A collection of objects providing management of MADCAP
            servers."
   ::= { mallocGroups 4 }

madcapClientGroup OBJECT-GROUP
    OBJECTS { mallocRequestLeaseIdentifier, madcapConfigNoResponseDelay }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing management of MADCAP
            clients."
   ::= { mallocGroups 5 }

mallocClientScopeGroup OBJECT-GROUP
    OBJECTS { mallocScopeLastAddress, mallocScopeHopLimit,
              mallocScopeStatus, mallocScopeStorage, mallocScopeSource,
              mallocScopeServerAddressType, mallocScopeServerAddress,
              mallocScopeSSM, mallocScopeNameScopeName,
              mallocScopeNameDefault, mallocScopeNameStatus,
              mallocScopeNameStorage }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing management of multicast
            scope information in clients."





Expires July 2003                                              [Page 33]





Draft               Multicast Address Allocation MIB        January 2003


   ::= { mallocGroups 6 }

mallocPrefixCoordinatorGroup OBJECT-GROUP
    OBJECTS { mallocAllocRangeLastAddress, mallocAllocRangeLifetime,
              mallocAllocRangeStatus, mallocAllocRangeStorage,
              mallocAllocRangeSource,
              mallocAllocRangeTotalAllocatedAddrs,
              mallocAllocRangeTotalRequestedAddrs,
              mallocAllocRangeAdvertisable, mallocScopeLastAddress,
              mallocScopeDivisible, mallocScopeSource }
    STATUS  current
    DESCRIPTION
            "A collection of objects for managing Prefix Coordinators."
    ::= { mallocGroups 7 }
END


5.  IANA Considerations

The IANAscopeSource and IANAmallocRangeSource textual conventions are
imported from the IANA-MALLOC-MIB.  The purpose of defining these
textual conventions in a separate MIB module is to allow additional
values to be defined without having to issue a new version of this
document.  The Internet Assigned Numbers Authority (IANA) is responsible
for the assignment of all Internet numbers, including various SNMP-
related numbers; it will administer the values associated with these
textual conventions.

The rules for additions or changes to the IANA-MALLOC-MIB are outlined
in the DESCRIPTION clause associated with its MODULE-IDENTITY statement.

The current versions of the IANA-MALLOC-MIB can be accessed from the
IANA home page at: "http://www.iana.org/".


6.  Security Considerations

There are a number of management objects defined in this MIB module with
a MAX-ACCESS clause of read-write and/or read-create.  Such objects may
be considered sensitive or vulnerable in some network environments.  The
support for SET operations in a non-secure environment without proper
protection can have a negative effect on network operations.  These are
the tables and objects and their sensitivity/vulnerability:







Expires July 2003                                              [Page 34]





Draft               Multicast Address Allocation MIB        January 2003


mallocScopeTable,mallocAllocRangeTable:
     Unauthorized modifications to these tables can result in denial of
     service either by not being able to allocate and use multicast
     addresses, allocating too many addresses, allocating addresses
     which other organizations are already using, or causing
     applications to use a hop limit which results in extra bandwidth
     usage.

mallocScopeNameTable:
     Unauthorized modifications to this table can result in incorrect or
     misleading scope names being presented to users, resulting in
     potentially using the wrong scope for application data.

madcapConfigExtraAllocationTime,madcapConfigOfferHold:
     Unauthorized modifications to these objects can result in
     reservations lasting too long, potentially resulting in denial of
     service if allocation ranges are small.

madcapConfigNoResponseDelay:
     Unauthorized modifications can result in a client not being able to
     allocate multicast addresses.

Some of the readable objects in this MIB module (i.e., objects with a
MAX-ACCESS other than not-accessible) may be considered sensitive or
vulnerable in some network environments.  It is thus important to
control even GET and/or NOTIFY access to these objects and possibly to
even encrypt the values of these objects when sending them over the
network via SNMP.  These are the tables and objects and their
sensitivity/vulnerability:

mallocRequestLeaseIdentifier:
     If address allocation servers are configured to allow renewal or
     release purely on the basis of knowledge of the Lease Identifier,
     then unauthorized read access to mallocRequestLeaseIdentifier can
     be used in a denial-of-service attack.

SNMP versions prior to SNMPv3 did not include adequate security.  Even
if the network itself is secure (for example by using IPSec), even then,
there is no control as to who on the secure network is allowed to access
and GET/SET (read/change/create/delete) the objects in this MIB module.

It is RECOMMENDED that 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).





Expires July 2003                                              [Page 35]





Draft               Multicast Address Allocation MIB        January 2003


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.


7.  IANA Multicast Address Allocation MIB

This appendix defines the initial content of the IANA-MALLOC-MIB.

NOTE TO RFC-EDITOR: This section should be removed from this document
prior to its publication, at which time this MIB will be administered by
IANA.

IANA-MALLOC-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, mib-2           FROM SNMPv2-SMI
    TEXTUAL-CONVENTION               FROM SNMPv2-TC;

ianaMallocMIB MODULE-IDENTITY
    LAST-UPDATED "200301271200Z" -- January 27, 2003
    ORGANIZATION "IANA"
    CONTACT-INFO
            " Internet Assigned Numbers Authority
              Internet Corporation for Assigned Names and Numbers
              4676 Admiralty Way, Suite 330
              Marina del Rey, CA 90292-6601

              Phone: +1 310 823 9358
              EMail: iana@iana.org"
    DESCRIPTION
            "This MIB module defines the IANAscopeSource and
            IANAmallocRangeSource textual conventions for use in MIBs
            which need to identify ways of learning multicast scope and
            range information.

            Any additions or changes to the contents of this MIB module
            require either publication of an RFC, or Designated Expert
            Review as defined in the Guidelines for Writing IANA
            Considerations Section document.  The Designated Expert will
            be selected by the IESG Area Director(s) of the Transport





Expires July 2003                                              [Page 36]





Draft               Multicast Address Allocation MIB        January 2003


            Area."

    -- revision log

    REVISION     "200301271200Z" -- January 27, 2003
    DESCRIPTION
            "Initial version."
    ::= { mib-2 xxx } -- TO BE ASSIGNED BY IANA

IANAscopeSource ::= TEXTUAL-CONVENTION
   STATUS  current
   DESCRIPTION
            "The source of multicast scope information."
   SYNTAX  INTEGER {
              other(1),  -- none of the following
              manual(2), -- statically configured
              local(3),  -- automatically added by the system,
                         -- such as a Source-Specific Multicast
                         -- scope
              mzap(4),    -- MZAP
              madcap(5)  -- MADCAP
           }

IANAmallocRangeSource ::= TEXTUAL-CONVENTION
   STATUS  current
   DESCRIPTION
            "The source of multicast address allocation range
            information."
   SYNTAX  INTEGER {
              other(1),  -- none of the following
              manual(2), -- statically configured
              local(3)   -- automatically added by the system,
                         -- such as a Source-Specific Multicast
                         -- range
           }

END


8.  Acknowledgements

This MIB module was updated based on feedback from the IETF's Multicast
Address Allocation (MALLOC) Working Group.  Lars Viklund, Frank Strauss,
and Mike Heard provided helpful feedback on this document.






Expires July 2003                                              [Page 37]





Draft               Multicast Address Allocation MIB        January 2003


9.  Author's Address

     Dave Thaler
     Microsoft Corporation
     One Microsoft Way
     Redmond, WA  98052-6399
     Phone: +1 425 703 8835
     EMail: dthaler@microsoft.com


10.  Normative References

[ARCH]      Thaler, D., Handley, M., and D. Estrin.  "The Internet
            Multicast Address Allocation Architecture", RFC 2908,
            September 2000.

[MADCAP]    Hanna, S., Patel, B., and M. Shah.  "Multicast Address
            Dynamic Client Allocation Protocol (MADCAP)", RFC 2730,
            December 1999.

[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.


11.  Informative References

[IPSEC]     Kent, S., and R. Atkinson.  "Security architecture for the
            internet protocol", RFC 2401, November 1998.

[MZAP]      Handley, M., Thaler, D., and R. Kermode.  "Multicast-Scope
            Zone Announcement Protocol (MZAP)", RFC 2776, February 2000.

[RFC3410]   Case, J., Mundy, R., Partain, D. and B. Stewart,
            "Introduction and Applicability Statements for Internet-
            Standard Management Framework", RFC 3410, December 2002.





Expires July 2003                                              [Page 38]





Draft               Multicast Address Allocation MIB        January 2003


12.  Intellectual Property Statement

The IETF takes no position regarding the validity or scope of any
intellectual property 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; neither does it represent that it has made any
effort to identify any such rights.  Information on the IETF's
procedures with respect to rights in standards-track and standards-
related documentation can be found in BCP-11.  Copies of claims of
rights made available for publication 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
implementors or users of this specification can be obtained from the
IETF Secretariat.

The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary rights
which may cover technology that may be required to practice this
standard.  Please address the information to the IETF Executive
Director.


13.  Full Copyright Statement

Copyright (C) The Internet Society (2003).  All Rights Reserved.

This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it or
assist in its implementation may be prepared, copied, published and
distributed, in whole or in part, without restriction of any kind,
provided that the above copyright notice and this paragraph are included
on all such copies and derivative works.  However, this document itself
may not be modified in any way, such as by removing the copyright notice
or references to the Internet Society or other Internet organizations,
except as needed for the purpose of developing Internet standards in
which case the procedures for copyrights defined in the Internet
Standards process must be followed, or as required to translate it into
languages other than English.

The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an "AS
IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK





Expires July 2003                                              [Page 39]





Draft               Multicast Address Allocation MIB        January 2003


FORCE DISCLAIMS 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.


Table of Contents


1 Introduction ....................................................    2
2 The Internet-Standard Management Framework ......................    2
3 Overview ........................................................    2
3.1 Protocol-independent objects ..................................    3
3.2 Protocol-specific objects .....................................    3
4 Definitions .....................................................    4
5 IANA Considerations .............................................   34
6 Security Considerations .........................................   34
7 IANA Multicast Address Allocation MIB ...........................   36
8 Acknowledgements ................................................   37
9 Author's Address ................................................   38
10 Normative References ...........................................   38
11 Informative References .........................................   38
12 Intellectual Property Statement ................................   39
13 Full Copyright Statement .......................................   39


























Expires July 2003                                              [Page 40]

PAFTECH AB 2003-20262026-04-24 05:15:06