Network Working Group                                           C. Chung
Request for Comments: 2417                        Independent Consultant
Obsoletes: 2366                                                M. Greene
Category: Standards Track                         Independent Contractor
                                                               (Editor)
                                                         September 1998



                  Definitions of Managed Objects for
            Multicast over UNI 3.0/3.1 based ATM Networks


Status of this Memo

  This document specifies an Internet standards track protocol for the
  Internet community, and requests discussion and suggestions for
  improvements.  Please refer to the current edition of the "Internet
  Official Protocol Standards" (STD 1) for the standardization state
  and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

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

IANA Note

  Due to a clerical error in the assignment of the snmpModules in this
  memo, this RFC provides the corrected number assignment for this
  protocol.  This memo obsoletes RFC 2366.

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 for IP hosts and routers
  that use a Multicast Address Resolution Server (MARS) to support IP
  multicast over ATM, as described in 'Support for Multicast over UNI
  3.0/3.1 based ATM Networks' [1].

  This memo specifies a MIB module in a manner that is both compliant
  to the SNMPv2 SMI, and semantically identical to the peer SNMPv1
  definitions.








Chung & Greene              Standards Track                     [Page 1]

RFC 2417                     Multicast MIB                September 1998


Table of Contents

  1 The SNMP Network Management Framework ........................ 2
  1.1 Object Definitions ......................................... 2
  2 Overview ..................................................... 3
  2.1 The MARS Client Group ...................................... 4
  2.2 The MARS Server Group ...................................... 4
  2.3 The MARS Multicast Server Group ............................ 5
  3  IP over ATM Multicast Address Resolution Server MIB
       Definitions ............................................... 6
  4 Acknowledgments ..............................................73
  5 References ...................................................74
  6 Security Considerations ......................................75
  7 Authors' Addresses ...........................................75
  8 Full Copyright Statement .....................................76

1.  The SNMP Network Management Framework

  The SNMP Network Management Framework presently consists of these
  components.  They are:

  o    the SMI, described in RFC 1902 [2] - the mechanisms used for
       describing and naming objects for the purpose of management.

  o    the Textual Conventions, described in RFC 1903 [3] for SNMPv2.

  o    the Conformance Statements, described in RFC 1904 [4] for
       SNMPv2.

  o    the Simple Network Management Protocol, described in
       STD 15, RFC 1157 [5].

  o    the Protocol Operations, described in RFC 1905 [6] for
       SNMPv2.

  o    the MIB-II, STD 17, RFC 1213 [7] - the core set of managed
       objects for the Internet suite of protocols for SNMPv2.

  The Framework permits new objects to be defined for the purpose of
  experimentation and evaluation.

1.1.  Object Definitions

  Managed objects are accessed via a virtual information store, termed
  the Management Information Base or MIB.  Objects in the MIB are
  defined using the subset of Abstract Syntax Notation One (ASN.1)
  defined in the SMI.  In particular, each object type is named by an
  OBJECT IDENTIFIER, an administratively assigned name.  The object



Chung & Greene              Standards Track                     [Page 2]

RFC 2417                     Multicast MIB                September 1998


  type together with an object instance serves to uniquely identify a
  specific instantiation of the object.  For human convenience, we
  often use a textual string, termed the descriptor, to also refer to
  the object type.

2.  Overview

  This MARS MIB is designed to define managed objects that can be used
  to manage the MARS clients, servers, and the multicast servers (MCS),
  as described in the RFC2022[1].  The MIB is supposed to be used on a
  system where one or more MARS clients are running, or where one or
  more MARS servers are running, or where one or more MARS multicast
  servers are running.

  An understanding of MARS, as defined in [1] is assumed in this MIB
  module definition. However, the following terms are used frequently
  and are included here for reference:

  Multicast Group

  A group of endpoints that communicate with each other such that
  packets sent from one endpoint are received by all other members of
  the multicast group.

  Multicast Address Resolution Server (MARS)

  A server that distributes multicast group membership information to
  endpoints.

  Client/Endpoint

  An ATM-attached host or router that registers with a MARS and that is
  a member of one or more multicast groups. An endpoint may establish
  ATM Virtual Channels (VCs) to the other group members or may make use
  of a Multicast Server.

  Cluster

  The set of clients managed by a MARS.

  Multicast Server (MCS)

  A server that sets up ATM Virtual Channels (VCs) between endpoints in
  a multicast group and to which the endpoints forward data traffic for
  transmission on their behalf.

  The MIB is broken down into three major groups: a MARS client group,
  MARS (server) group, and MARS Multicast Server (MCS) Group.



Chung & Greene              Standards Track                     [Page 3]

RFC 2417                     Multicast MIB                September 1998


2.1.  The MARS Client Group

  This client group defines a collection of objects required to be
  implemented in a MIB for the management of MARS clients. It contains
  the following tables:

  o    MARS Client Table

  Information about a client such as its ATM address, the ATM address
  of its default MARS, registration status, and timers.

  o    MARS Client Multicast Group Table

  A list of IP multicast address blocks associated with a MARS client.

  o    MARS Client Backup MARS Group Table

  A list of backup MARS's associated with a MARS client.

  o    MARS Client VC Table

  Information about VCs opened by a client.

  o    MARS Client Statistics Table

  Statistics collected by a MARS client.

2.2.  The MARS Server Group

  This MARS server group defines a collection of objects required to be
  implemented in a MIB for the management of MARS servers.  It contains
  the following tables:

  o    MARS Table

  Information about a MARS such as its ATM address, its status and
  timers.

  o    MARS Multicast Group Table

  A list of IP multicast address blocks associated with a MARS.

  o    MARS VC Table

  Information about VCs opened by a MARS.

  o    MARS Registered Client Table




Chung & Greene              Standards Track                     [Page 4]

RFC 2417                     Multicast MIB                September 1998


  A list of clients registered with a MARS.

  o    MARS Registered Multicast Server Table

  A list of MCSs registered with a MARS.

  o    MARS Statistics Table

  Statistics collected by a MARS.

  o    MARS Host Map Table

  Mappings between multicast groups and clients maintained by a MARS.

  o    MARS Server Map Table

  Mappings between multicast groups and MCSs maintained by a MARS.

2.3.  The MARS Multicast Server Group

  This MARS multicast server group defines a collection of objects
  required to be implemented in a MIB for the management of MARS
  multicast servers. It contains the following tables:

  This group contains the following tables:

  o    MARS Multicast Server Table

  Information about a MCS, such as its ATM address, default MARS ATM
  address, and registration state.

  o    MARS MCS Multicast Group Table

  A list of IP multicast address blocks associated with a MARS MCS.

  o    MARS MCS Backup Mars Group Table

  A list of backup MARS's associated with a MARS MCS.

  o    MARS Multicast Server VC Table

  Information about VCs opened by a MCS.

  o    MARS Multicast Server Statistics Table

  Statistics collected by a MCS.





Chung & Greene              Standards Track                     [Page 5]

RFC 2417                     Multicast MIB                September 1998


3. IP Over ATM Multicast Address Resolution Server MIB Definitions

  IPATM-IPMC-MIB DEFINITIONS ::= BEGIN

  IMPORTS
      MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP
          FROM SNMPv2-CONF
      snmpModules, MODULE-IDENTITY, NOTIFICATION-TYPE, Counter32,
          Integer32, Unsigned32, OBJECT-TYPE, IpAddress
          FROM SNMPv2-SMI
      AtmAddr
          FROM ATM-TC-MIB
      TruthValue, RowStatus
          FROM SNMPv2-TC
      ipAdEntAddr
          FROM RFC1213-MIB
      InterfaceIndex
          FROM IF-MIB;

     marsMIB MODULE-IDENTITY
         LAST-UPDATED "9809010000Z" -- 01 September 1998
         ORGANIZATION "Internetworking Over NBMA (ion) Working Group"
         CONTACT-INFO
             "        Chris Chung ([email protected])
                      Independent Consultant

              Editor: Maria Greene
              Postal: Independent Contractor
              E-mail: [email protected]
             "
         DESCRIPTION
             "This module defines a portion of the managed information
              base (MIB) for managing classical IP multicast address
              resolution server (MARS) and related entities as
              described in the RFC2022.  This MIB is meant to be
              used in conjunction with the ATM-MIB (RFC1695),
              MIB-II (RFC1213), and optionally the IF-MIB (RFC1573).
             "
         REVISION     "9809010000Z" -- 01 September 1998
         DESCRIPTION  "Published as RFC 2417. Changes/fixes:
                       - reroot this MIB from snmpModules to mib-2
                         to be consistent with location of other MIBs.
                       - obsoletes RFC2366."
         REVISION     "9804150145Z" -- 15 April 1998
         DESCRIPTION  "Initial version, published as RFC 2366"
         ::= { mib-2 57 }

  --***************************************************************



Chung & Greene              Standards Track                     [Page 6]

RFC 2417                     Multicast MIB                September 1998


  --  IP ATM MARS Client Object Definitions
  --***************************************************************

  marsClientObjects  OBJECT IDENTIFIER ::= { marsMIB 1 }

  marsClientTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsClientEntry
      MAX-ACCESS  not-accessible
      STATUS current
      DESCRIPTION
          "The objects defined in this table are used for
           the management of MARS clients, ATM attached
           endpoints."
      ::= { marsClientObjects 1 }

  marsClientEntry OBJECT-TYPE
      SYNTAX  MarsClientEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry contains a MARS client and its associated
           attributes.  An entry in the marsClientTable has
           a corresponding entry in the ipAddrTable defined in
           RFC1213. Association between the ipAddrTable and
           the marsClientTable is made through the index,
           ipAdEntAddr."
      INDEX { ipAdEntAddr, marsClientIndex }
      ::= { marsClientTable 1 }

  MarsClientEntry ::=
      SEQUENCE {
          marsClientIndex                    Integer32,
          marsClientAddr                     AtmAddr,
          marsClientDefaultMarsAddr          AtmAddr,
          marsClientHsn                      Unsigned32,
          marsClientRegistration             INTEGER,
          marsClientCmi                      INTEGER,
          marsClientDefaultMtu               INTEGER,
          marsClientFailureTimer             INTEGER,
          marsClientRetranDelayTimer         INTEGER,
          marsClientRdmMulReqAddRetrTimer    INTEGER,
          marsClientRdmVcRevalidateTimer     INTEGER,
          marsClientJoinLeaveRetrInterval    INTEGER,
          marsClientJoinLeaveRetrLimit       INTEGER,
          marsClientRegWithMarsRdmTimer      INTEGER,
          marsClientForceWaitTimer           INTEGER,
          marsClientLmtToMissRedirMapTimer   INTEGER,
          marsClientIdleTimer                INTEGER,



Chung & Greene              Standards Track                     [Page 7]

RFC 2417                     Multicast MIB                September 1998


          marsClientRowStatus                RowStatus
      }

  marsClientIndex OBJECT-TYPE
      SYNTAX  Integer32(1..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The auxiliary variable used to identify instances of
           the columnar objects in the MARS MarsClientTable."
      ::= { marsClientEntry 1 }

  marsClientAddr OBJECT-TYPE
      SYNTAX  AtmAddr
         MAX-ACCESS read-create
         STATUS  current
         DESCRIPTION
             "The ATM address associated with the ATM Client."
         ::= { marsClientEntry 2 }

  marsClientDefaultMarsAddr OBJECT-TYPE
      SYNTAX  AtmAddr
         MAX-ACCESS read-create
         STATUS  current
         DESCRIPTION
             "The default MARS ATM address which is needed to
              setup the initial signalling path between a MARS
              client and its associated MARS."
         ::= { marsClientEntry 3 }

  marsClientHsn OBJECT-TYPE
      SYNTAX  Unsigned32
      MAX-ACCESS read-create
         STATUS  current
         DESCRIPTION
             "The cluster membership own 32 bit Host Sequence
              Number.  When a new cluster member starts up, it is
              initialized to zero.  When the cluster member sends
              the MARS_JOIN to register, the HSN will be correctly
              set to the current cluster sequence number (CSN) when
              the Client receives the copy of its MARS_JOIN from
              the MARS.  It is is used to track the MARS sequence
              number."
         ::= { marsClientEntry 4 }

  marsClientRegistration OBJECT-TYPE
      SYNTAX  INTEGER {
            notRegistered (1),



Chung & Greene              Standards Track                     [Page 8]

RFC 2417                     Multicast MIB                September 1998


            registering (2),
            registered (3),
            reRegisteringFault (4),
            reRegisteringRedirMap (5)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "An indication with regards to the registration
           status of this client. The registration codes
           of 'notRegistered (1)', 'registered (2)', and
           registered (3) are self-explanatory. The
           'reRegisteringFault (4)' indicates the client is
           in the process of re-registering with a MARS due
           to some fault conditions.  The 'reRegisteringRedMap
           (5)' status code shows that client is re-registering
           because it has received a MARS_REDIRECT_MAP message
           and was told to register with a different MARS from
           the current MARS."
      ::= { marsClientEntry 5 }

  marsClientCmi OBJECT-TYPE
      SYNTAX  INTEGER (0..65535)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "16 bit Cluster member identifier (CMI) assigned by the
           MARS which uniquely identifies each endpoint attached
           to the cluster.  The value becomes valid after the
           'marsClientRegistration' is set to the value
           of 'registered (1)'."
      ::= { marsClientEntry 6 }

  marsClientDefaultMtu OBJECT-TYPE
      SYNTAX  INTEGER (1..65535)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The default maximum transmission unit (MTU) used for
           this cluster.  Note that the actual size used for a
           VC between two members of the cluster may be negotiated
           during connection setup and may be different than this
           value.  Default value = 9180 bytes."
      DEFVAL { 9180 }
      ::= { marsClientEntry 7 }

  marsClientFailureTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)



Chung & Greene              Standards Track                     [Page 9]

RFC 2417                     Multicast MIB                September 1998


      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "A timer used to flag the failure of last MARS_MULTI
           to arrive.  Default value = 10 seconds (recommended)."
      DEFVAL { 10 }
      ::= { marsClientEntry 8 }

  marsClientRetranDelayTimer OBJECT-TYPE
      SYNTAX  INTEGER (5..10)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The delay timer for sending out new MARS_REQUEST
           for the group after the client learned that there
           is no other group in the cluster.  The timer must
           be set between 5 and 10 seconds inclusive."
      ::= { marsClientEntry 9 }

  marsClientRdmMulReqAddRetrTimer OBJECT-TYPE
      SYNTAX  INTEGER (5..10)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The initial random L_MULTI_RQ/ADD retransmit timer
           which can be set between 5 and 10 seconds inclusive."
      ::= { marsClientEntry 10 }

  marsClientRdmVcRevalidateTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..10)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The random time to set VC_revalidate flag.  The
           timer value ranges between 1 and 10 seconds
           inclusive."
      ::= { marsClientEntry 11 }

  marsClientJoinLeaveRetrInterval OBJECT-TYPE
      SYNTAX  INTEGER(5..2147483647)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION



Chung & Greene              Standards Track                    [Page 10]

RFC 2417                     Multicast MIB                September 1998


          "MARS_JOIN/LEAVE retransmit interval. The minimum
           and recommended values are 5 and 10 seconds,
           respectively."
      DEFVAL { 10 }
      ::= { marsClientEntry 12 }

  marsClientJoinLeaveRetrLimit OBJECT-TYPE
      SYNTAX  INTEGER (0..5)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "MARS_JOIN/LEAVE retransmit limit. The maximum
           value is 5."
      ::= { marsClientEntry 13 }

  marsClientRegWithMarsRdmTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..10)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Random time to register with MARS."
      ::= { marsClientEntry 14 }

  marsClientForceWaitTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)
      UNITS   "minutes"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Force wait if MARS re-registration is looping.
           The minimum value is 1 minute."
      ::= { marsClientEntry 15 }

  marsClientLmtToMissRedirMapTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..4)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Timer limit for client to miss MARS_REDIRECT_MAPS."
      ::= { marsClientEntry 16 }

  marsClientIdleTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)
      UNITS   "minutes"
      MAX-ACCESS read-create
      STATUS  current



Chung & Greene              Standards Track                    [Page 11]

RFC 2417                     Multicast MIB                September 1998


      DESCRIPTION


          "The configurable inactivity timer associated with a
           client. When a VC is created at this client, it gets
           the idle timer value from this configurable timer.
           The minimum suggested value is 1 minute and the
           recommended default value is 20 minutes."
      DEFVAL { 20 }
      ::= { marsClientEntry 17 }

  marsClientRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.

           A row cannot be made 'active' until instances of
           all corresponding columns in the row of this table
           are appropriately configured and until the agent
           has also created a corresponding row in the
           marsClientStatTable.

           When this object has a value of 'active', the
           following columnar objects can not be modified:

             marsClientDefaultMarsAddr,
             marsClientHsn,
             marsClientRegstration,
             marsClientCmi,
             marsClientDefaultMtu

           while other objects in this conceptual row can be
           modified irrespective of the value of this object.

           Deletion of this row is allowed regardless of
           whether or not a row in any associated tables
           (i.e., marsClientVcTable) still exists or is in
           use. Once this row is deleted, it is recommended
           that the agent or the SNMP management station
           (if possible) through the set command deletes
           any stale rows that are associated with this
           row."
      ::= { marsClientEntry 18 }

  --****************************************************************



Chung & Greene              Standards Track                    [Page 12]

RFC 2417                     Multicast MIB                September 1998


  -- IP ATM MARS Client Multicast Group Address Object Definitions
  --****************************************************************

  marsClientMcGrpTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsClientMcGrpEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains a list of IP multicast group address
           blocks associated with a MARS client.  Entries in this
           table are used by the client that needs to receive or
           transmit packets from/to the specified range of
           multicast addresses.
           Each row can be created or deleted via configuration."
      ::= {  marsClientObjects 2 }

  marsClientMcGrpEntry OBJECT-TYPE
      SYNTAX  MarsClientMcGrpEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry represents a consecutive block of multicast
           group addresses."
      INDEX { ipAdEntAddr,
              marsClientIndex,
              marsClientMcMinGrpAddr,
              marsClientMcMaxGrpAddr }
      ::= { marsClientMcGrpTable 1 }

  MarsClientMcGrpEntry ::=
      SEQUENCE {
          marsClientMcMinGrpAddr           IpAddress,
          marsClientMcMaxGrpAddr           IpAddress,
          marsClientMcGrpRowStatus         RowStatus
      }

  marsClientMcMinGrpAddr OBJECT-TYPE
      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Minimum multicast group address - the min and max
           multicast forms multi-group block.  If the MinGrpAddr
           and MaxGrpAddr are the same, it indicates that this
           block contains a single group address."
      ::= { marsClientMcGrpEntry 1 }

  marsClientMcMaxGrpAddr OBJECT-TYPE



Chung & Greene              Standards Track                    [Page 13]

RFC 2417                     Multicast MIB                September 1998


      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Maximum multicast group address - the min and max
           multicast forms a multi-group block.  If the MinGrpAddr
           and MaxGrpAddr are the same, it indicates that this
           block contains a single group address."
      ::= { marsClientMcGrpEntry 2 }

  marsClientMcGrpRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create or delete a row in this
           table.

           Since other objects in this row are not-accessible
           'index-objects', the value of this object has no
           effect on whether those objects in this conceptual
           row can be modified."
      ::= { marsClientMcGrpEntry 3 }

  --****************************************************************
  -- IP ATM MARS Client Backup MARS Object Definitions
  --****************************************************************

  marsClientBackupMarsTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsClientBackupMarsEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains a list of backup MARS addresses that
           a client can connect to in case of failure for connecting
           to the primary server. The list of addresses is in
           descending order of preference. It should be noted that
           the backup list provided by the MARS to the client via
           the MARS_REDIRECT_MAP message has a higher preference than
           addresses that are manually configured into the client.
           When such a list is received from the MARS, this information
           should be inserted at the top of the list.
           Each row can be created or deleted via configuration."
      ::= {  marsClientObjects 3 }

  marsClientBackupMarsEntry OBJECT-TYPE
      SYNTAX  MarsClientBackupMarsEntry
      MAX-ACCESS not-accessible



Chung & Greene              Standards Track                    [Page 14]

RFC 2417                     Multicast MIB                September 1998


      STATUS  current
      DESCRIPTION
          "Each entry represents an ATM address of a backup MARS."
      INDEX { ipAdEntAddr,
              marsClientIndex,
              marsClientBackupMarsPriority,
              marsClientBackupMarsAddr }
      ::= { marsClientBackupMarsTable 1 }

  MarsClientBackupMarsEntry ::=
      SEQUENCE {
          marsClientBackupMarsPriority     Unsigned32,
          marsClientBackupMarsAddr         AtmAddr,
          marsClientBackupMarsRowStatus    RowStatus
      }

  marsClientBackupMarsPriority OBJECT-TYPE
      SYNTAX  Unsigned32(0..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The priority associated with a backup MARS. A lower
           priority value inidcates a higher preference."
      ::= { marsClientBackupMarsEntry 1 }

  marsClientBackupMarsAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The ATM address associated with a backup MARS."
      ::= { marsClientBackupMarsEntry 2 }

  marsClientBackupMarsRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create or delete a row in this
           table.

           Since other objects in this row are not-accessible
           'index-objects', the value of this object has no effect
           on whether those objects in this conceptual row can be
           modified."
      ::= { marsClientBackupMarsEntry 3 }

  --***************************************************************



Chung & Greene              Standards Track                    [Page 15]

RFC 2417                     Multicast MIB                September 1998


  --  IP ATM MARS Client VC Object Definition Table
  --***************************************************************

  marsClientVcTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsClientVcEntry
      MAX-ACCESS  not-accessible
      STATUS current
      DESCRIPTION
          "This table contains information about open virtual
           circuits (VCs) that a client has.  For point to point
           circuit, each entry represents a single VC connection
           between this client ATM address to another party ATM
           address.  In the case of point to multipoint connection
           where a single source address is associated with
           multiple destinations, several entries are used to
           represent the relationship.  An example of point to
           multi-point VC represented in a table is shown below.

                  Client    VPI/VCI    Grp Addr1/Addr2    Part Addr
                    1         0,1          g1,g2             p1
                    1         0,1          g1,g2             p2
                    1         0,1          g1,g2             p3

           Note:  This table assumes the IP multicast address
                  groups (min, max) defined in each entry are
                  always consecutive.  In the case of that a
                  client receives a JOIN/LEAVE with
                  mars$flag.punched set, each pair of the IP
                  groups will first be broken into several
                  pairs of consecutive IP groups before each
                  entry row corresponding to a pair of IP group
                  is created."
      ::= { marsClientObjects 4 }

  marsClientVcEntry OBJECT-TYPE
      SYNTAX  MarsClientVcEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The objects contained in the entry are VC related
           attributes such as VC signalling type, control VC
           type, idle timer, negotiated MTU size, etc."
      INDEX { ipAdEntAddr,
              marsClientIndex,
              marsClientVcVpi,
              marsClientVcVci,
              marsClientVcMinGrpAddr,
              marsClientVcMaxGrpAddr,



Chung & Greene              Standards Track                    [Page 16]

RFC 2417                     Multicast MIB                September 1998


              marsClientVcPartyAddr }
      ::= { marsClientVcTable 1 }

  MarsClientVcEntry ::=
      SEQUENCE {
          marsClientVcVpi            INTEGER,
          marsClientVcVci            INTEGER,
          marsClientVcMinGrpAddr     IpAddress,
          marsClientVcMaxGrpAddr     IpAddress,
          marsClientVcPartyAddr      AtmAddr,
          marsClientVcPartyAddrType  INTEGER,
          marsClientVcType           INTEGER,
          marsClientVcCtrlType       INTEGER,
          marsClientVcIdleTimer      INTEGER,
          marsClientVcRevalidate     TruthValue,
          marsClientVcEncapsType     INTEGER,
          marsClientVcNegotiatedMtu  INTEGER,
          marsClientVcRowStatus      RowStatus
      }

  marsClientVcVpi OBJECT-TYPE
      SYNTAX  INTEGER (0..4095)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The value of virtual path identifier (VPI). Since
           a VPI can be numbered 0, this sub-index can take
           a value of 0."
      ::= { marsClientVcEntry 1 }

  marsClientVcVci OBJECT-TYPE
      SYNTAX  INTEGER (0..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The value of virtual circuit identifier (VCI). Since
           a VCI can be numbered 0, this sub-index can take
           a value of 0."
      ::= { marsClientVcEntry 2 }

  marsClientVcMinGrpAddr OBJECT-TYPE
      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Minimum IP multicast group address - the min and
           max multicast forms a multi-group consecutive
           block which is associated with a table entry.



Chung & Greene              Standards Track                    [Page 17]

RFC 2417                     Multicast MIB                September 1998


           if the MinGrpAddr and MaxGrpAddr are the same, it
           indicates that the size of multi-group block is 1,
           a single IP group."
      ::= { marsClientVcEntry 3 }

  marsClientVcMaxGrpAddr OBJECT-TYPE
      SYNTAX  IpAddress


      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Maximum IP multicast group address - the min and
           max multicast forms a multi-group consecutive
           block which is associated with a table entry.
           if the MinGrpAddr and MaxGrpAddr are the same, it
           indicates that the size of multi-group block is 1,
           a single IP group."
      ::= { marsClientVcEntry 4 }

  marsClientVcPartyAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "An ATM party address in which this VC is linked.
           The party type is identified by the
           marsClientVcPartyAddrType."
      ::= { marsClientVcEntry 5 }

  marsClientVcPartyAddrType OBJECT-TYPE
      SYNTAX  INTEGER {
            called (1),
            calling (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The party type is associated with the party address.
           The 'called (1)' indicates that the party address is
           a destination address which implies that VC is
           originated from this client.  The 'calling (2)'
           indicates the VC was initiated externally to this
           client. In this case, the party address is the
           source address."
      ::= { marsClientVcEntry 6 }

  marsClientVcType OBJECT-TYPE



Chung & Greene              Standards Track                    [Page 18]

RFC 2417                     Multicast MIB                September 1998


      SYNTAX  INTEGER {
            pvc (1),
            svc (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Circuit Connection type: permanent virtual circuit or
           switched virtual circuit."
      ::= { marsClientVcEntry 7 }

  marsClientVcCtrlType OBJECT-TYPE
      SYNTAX  INTEGER {
             pointToPointVC (1),
             clusterControlVC (2),
             pointToMultiPointVC (3)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Control VC type used to specify a particular connection.
             pointToPointVC (1):
               used by the ATM Clients for the registration and
               queries.  This VC or the initial signalling path
               is set up from the source Client to a MARS. It is
               bi-directional.
             clusterControlVC (2):
               used by a MARS to issue asynchronous updates to an
               ATM Client.  This VC is established from the MARS
               to the ATM Client.
             pointToMultiPointVC (3):
               used by the client to transfer multicast data
               packets from layer 3.  This VC is established
               from the source ATM Client to a destination ATM
               endpoint which can be a multicast group member
               or an MCS.  The destination endpoint was obtained
               from the MARS."
      ::= { marsClientVcEntry 8 }

  marsClientVcIdleTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)
      UNITS   "minutes"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The idle timer associated with this VC.  The minimum
           suggested value is 1 minute and the recommended
           default value is 20 minutes."



Chung & Greene              Standards Track                    [Page 19]

RFC 2417                     Multicast MIB                September 1998


      DEFVAL { 20 }
      ::= { marsClientVcEntry 9 }

  marsClientVcRevalidate OBJECT-TYPE
      SYNTAX  TruthValue
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "A flag associated with an open and active multipoint
           VC.  It is checked every time a packet is queued for
           transmission on that VC. The object has the value of
           true (1) if revalidate is required and the value
           false (2) otherwise."
      ::= { marsClientVcEntry 10 }

   marsClientVcEncapsType OBJECT-TYPE
      SYNTAX  INTEGER {
            other (1),
            llcSnap (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The encapsulation type used when communicating over
           this VC."
      ::= { marsClientVcEntry 11 }

  marsClientVcNegotiatedMtu OBJECT-TYPE
      SYNTAX  INTEGER (1..65535)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The negotiated MTU when communicating over this VC."
      ::= { marsClientVcEntry 12 }

  marsClientVcRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.

           A row cannot be made 'active' until instances of
           all corresponding columns in the row of this table
           are appropriately configured.

           While objects: marsClientVcIdleTimer and



Chung & Greene              Standards Track                    [Page 20]

RFC 2417                     Multicast MIB                September 1998


           marsClientVcRevalidate in this conceptual
           row can be modified irrespective of the value
           of this object, all other objects in the row can
           not be modified when this object has a value
           of 'active'.

           It is possible for an SNMP management station
           to set the row to 'notInService' and modify
           the entry and then set it back to 'active'

           with the following exception. That is, rows
           for which the corresponding instance of
           marsClientVcType has a value of 'svc' can not
           be modified or deleted."
      ::= { marsClientVcEntry 13 }

  --***************************************************************
  --  IP ATM MARS Client Statistic Object Definition Table
  --***************************************************************

  marsClientStatTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsClientStatEntry
      MAX-ACCESS  not-accessible
      STATUS current
      DESCRIPTION
          "The table contains statistics collected at MARS
           clients."
      ::= { marsClientObjects 5 }

  marsClientStatEntry OBJECT-TYPE
      SYNTAX  MarsClientStatEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry contains statistics collected at one MARS
           client."
      INDEX { ipAdEntAddr, marsClientIndex }
      ::= { marsClientStatTable 1 }

  MarsClientStatEntry ::=
      SEQUENCE {
          marsClientStatTxReqMsgs        Counter32,
          marsClientStatTxJoinMsgs       Counter32,
          marsClientStatTxLeaveMsgs      Counter32,
          marsClientStatTxGrpLstReqMsgs  Counter32,
          marsClientStatRxJoinMsgs       Counter32,
          marsClientStatRxLeaveMsgs      Counter32,
          marsClientStatRxMultiMsgs      Counter32,



Chung & Greene              Standards Track                    [Page 21]

RFC 2417                     Multicast MIB                September 1998


          marsClientStatRxNakMsgs        Counter32,
          marsClientStatRxMigrateMsgs    Counter32,
          marsClientStatRxGrpLstRplyMsgs Counter32,
          marsClientStatFailMultiMsgs    Counter32
      }

  marsClientStatTxReqMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_REQUEST messages transmitted
           from a client."
      ::= { marsClientStatEntry 1 }

  marsClientStatTxJoinMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_JOIN messages transmitted from
           a client."
      ::= { marsClientStatEntry 2 }

  marsClientStatTxLeaveMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_LEAVE messages transmitted from
           a client."
      ::= { marsClientStatEntry 3 }

  marsClientStatTxGrpLstReqMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_GROUPLIST_REQUEST messages
           transmitted from a client."
      ::= { marsClientStatEntry 4 }

  marsClientStatRxJoinMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_JOIN messages received by



Chung & Greene              Standards Track                    [Page 22]

RFC 2417                     Multicast MIB                September 1998


           a client."
      ::= { marsClientStatEntry 5 }

  marsClientStatRxLeaveMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_LEAVE messages received by
           a client."
      ::= { marsClientStatEntry 6 }

  marsClientStatRxMultiMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MULTI messages received by
           a client."
      ::= { marsClientStatEntry 7 }

  marsClientStatRxNakMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_NAK messages received by
           a client."
      ::= { marsClientStatEntry 8 }

  marsClientStatRxMigrateMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MIGRATE messages received by
           a client."
      ::= { marsClientStatEntry 9 }

      marsClientStatRxGrpLstRplyMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_GROUPLIST_REPLY messages
           received by a client."
      ::= { marsClientStatEntry 10 }




Chung & Greene              Standards Track                    [Page 23]

RFC 2417                     Multicast MIB                September 1998


  marsClientStatFailMultiMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of timeouts occurred indicating
           failure of the last MARS_MULTI to arrive."
      ::= { marsClientStatEntry 11 }

  --***************************************************************
  --  IP ATM MARS Object Definitions
  --***************************************************************

  marsObjects    OBJECT IDENTIFIER ::= { marsMIB 2 }

  marsTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsEntry
      MAX-ACCESS  not-accessible
      STATUS current
      DESCRIPTION
          "The objects defined in this table are used for the
           management of MARS servers."
      ::= {  marsObjects 1 }

  marsEntry OBJECT-TYPE
      SYNTAX  MarsEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry contains a MARS and its associated
           attributes."
      INDEX { marsIndex, marsIfIndex }
      ::= { marsTable 1 }

  MarsEntry ::=
      SEQUENCE {
          marsIndex              Integer32,
          marsIfIndex            InterfaceIndex,
          marsAddr               AtmAddr,
          marsLocal              TruthValue,
          marsServStatus         INTEGER,
          marsServType           INTEGER,
          marsServPriority       Unsigned32,
          marsRedirMapMsgTimer   INTEGER,
          marsCsn                Unsigned32,
          marsSsn                Unsigned32,
          marsRowStatus          RowStatus
      }



Chung & Greene              Standards Track                    [Page 24]

RFC 2417                     Multicast MIB                September 1998


  marsIndex OBJECT-TYPE
      SYNTAX  Integer32(1..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The auxiliary variable used to identify instances of
           the columnar objects in the MARS table."
      ::= { marsEntry 1 }

  marsIfIndex OBJECT-TYPE
      SYNTAX  InterfaceIndex
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The ifIndex of the interface that the MARS is
           associated with."
      ::= { marsEntry 2 }

  marsAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The ATM address associated with the MARS."
      ::= { marsEntry 3 }

  marsLocal OBJECT-TYPE
      SYNTAX  TruthValue
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "A flag associated with a MARS entry.  The object has
           the value of true (1) if the MARS whose interface
           is local to the machine that implements this MIB;
           otherwise the object has the value of false (2)."
      ::= { marsEntry 4 }

  marsServStatus OBJECT-TYPE
      SYNTAX  INTEGER {
            active (1),
            inactive (2),
            faulted (3)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The current status of MARS."
      ::= { marsEntry 5 }



Chung & Greene              Standards Track                    [Page 25]

RFC 2417                     Multicast MIB                September 1998


  marsServType OBJECT-TYPE
      SYNTAX  INTEGER {
            primary (1),
            backup (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Types of MARS servers: primary or backup."
      ::= { marsEntry 6 }

  marsServPriority OBJECT-TYPE
      SYNTAX  Unsigned32(0..65535)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Priority associated with a backup MARS server.
           A backup MARS server with lower priority value
           indicates a higher preference than other backup
           MARS servers to be used as the MARS server when
           the primary server fails."
      ::= { marsEntry 7 }

  marsRedirMapMsgTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2)
      UNITS   "minutes"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Periodic interval on which a multi-part
           MARS_REDIRECT_MAP is sent from this MARS."
         DEFVAL { 1 }
      ::= { marsEntry 8 }

  marsCsn OBJECT-TYPE
      SYNTAX  Unsigned32
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Current cluster sequence number (CSN) which is global
           within the context of a given protocol.  The CSN is
           incremented by the MARS on every transmission of a
           message on ClusterControlVC.  A cluster member uses
           the CSN to track the message loss on ClusterControlVC
           or to monitor a membership change."
      ::= { marsEntry 9 }

  marsSsn OBJECT-TYPE



Chung & Greene              Standards Track                    [Page 26]

RFC 2417                     Multicast MIB                September 1998


      SYNTAX  Unsigned32
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Current server sequence number (SSN) which is global
           within the context of a given protocol.  The SSN is
           incremented by the MARS on every transmission of a
           message on ServerControlVC.  A MCS uses the SSN to
           track the message loss on ServerControlVC or to
           monitor a membership change."
      ::= { marsEntry 10 }

  marsRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.

           A row cannot be made 'active' until instances of
           all corresponding columns in the row of this table
           are appropriately configured and until the agent
           has also created a corresponding row in the
           marsStatTable.

           When this object has a value of 'active', the
           following columnar objects can not be modified:

             marsAddr,
             marsAddrLocal,
             marsServStatus,
             marsServType,
             marsCsn,
             marsSsn

           while other objects in this conceptual row can be
           modified irrespective of the value of this object.

           Deletion of this row is allowed regardless of
           whether or not a row in any associated tables
           (i.e., marsVcTable) still exists or is in use.
           Once this row is deleted, it is recommended that
           the agent or the SNMP management station (if
           possible) through the set command deletes any
           stale rows that are associated with this row."
      ::= { marsEntry 11 }




Chung & Greene              Standards Track                    [Page 27]

RFC 2417                     Multicast MIB                September 1998


  --****************************************************************
  -- IP ATM MARS Multicast Group Address Object Definitions
  --****************************************************************

  marsMcGrpTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsMcGrpEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains a list of IP multicast address
           blocks associated with a MARS.  Entries in this table
           are used by the MARS host map table and the server map
           table.  They should be created prior to being referenced
           as indices by those tables.
           Each row can be created or deleted via configuration."
      ::= { marsObjects 2 }

  marsMcGrpEntry OBJECT-TYPE
      SYNTAX  MarsMcGrpEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry represents a consecutive block of multicast
           group addresses."
      INDEX { marsIndex,
              marsIfIndex,
              marsMcMinGrpAddr,
              marsMcMaxGrpAddr }
      ::= { marsMcGrpTable 1 }

  MarsMcGrpEntry ::=
      SEQUENCE {
          marsMcMinGrpAddr           IpAddress,
          marsMcMaxGrpAddr           IpAddress,
          marsMcGrpAddrUsage         INTEGER,
          marsMcGrpRxLayer3GrpSets   Counter32,
          marsMcGrpRxLayer3GrpResets Counter32,
          marsMcGrpRowStatus         RowStatus
      }

  marsMcMinGrpAddr OBJECT-TYPE
      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Minimum multicast group address - the min and max
           multicast forms multi-group block.  If the MinGrpAddr
           and MaxGrpAddr are the same, it indicates that this



Chung & Greene              Standards Track                    [Page 28]

RFC 2417                     Multicast MIB                September 1998


           block contains a single group address."
      ::= { marsMcGrpEntry 1 }

  marsMcMaxGrpAddr OBJECT-TYPE
      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Maximum multicast group address - the min and max
           multicast forms a multi-group block.  If The
           MinGrpAddr and MaxGrpAddr are the same, it indicates
           that this block contains a single group address."
      ::= { marsMcGrpEntry 2 }

  marsMcGrpAddrUsage OBJECT-TYPE
      SYNTAX  INTEGER {
            hostMap (1),
            serverMap (2),
            hostServerMap (3)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Usage of the multicast address block.  The hostMap (1)
           indicates that the address block is only used in the
           MARS host map table. The serverMap (2) indicates
           that the address block is only used in the MARS
           server map table.  The hostServerMap (3) indicates
           that the address block is used in both the host map
           and the server map tables."
      ::= { marsMcGrpEntry 3 }

  marsMcGrpRxLayer3GrpSets OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Number of MARS_JOIN messages received with
           mars$flags.layer3grp flag set."
      ::= { marsMcGrpEntry 4 }

  marsMcGrpRxLayer3GrpResets OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Number of MARS_JOIN messages received with
           mars$flags.layer3grp flag reset."



Chung & Greene              Standards Track                    [Page 29]

RFC 2417                     Multicast MIB                September 1998


      ::= { marsMcGrpEntry 5 }

  marsMcGrpRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.

           The value of this object has no effect on whether
           other objects in this conceptual row can be modified."
      ::= { marsMcGrpEntry 6 }

  --***************************************************************
  --  IP ATM MARS Host Map Object Definitions
  --***************************************************************

  marsHostMapTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsHostMapEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table caches mappings between IP multicast
           address to a list of ATM addresses that are
           configured or dynamically learned from the MARS.
           This address resolution is used for the host map.
           It supports the mapping of a block of multicast
           group addresses to a cluster member address.  In
           the case where a group block is associated with
           multiple cluster members, several entries are
           used to representing the relationship."
      ::= { marsObjects 3 }

  marsHostMapEntry OBJECT-TYPE
      SYNTAX  MarsHostMapEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry row contains attributes associated with
           the mapping between a multicast group block and an
           ATM address."
      INDEX { marsIndex,
              marsIfIndex,
              marsMcMinGrpAddr,
              marsMcMaxGrpAddr,
              marsHostMapAtmAddr }
      ::= { marsHostMapTable 1 }



Chung & Greene              Standards Track                    [Page 30]

RFC 2417                     Multicast MIB                September 1998


  MarsHostMapEntry ::=
      SEQUENCE {
          marsHostMapAtmAddr     AtmAddr,
          marsHostMapRowType     INTEGER,
          marsHostMapRowStatus   RowStatus
      }

  marsHostMapAtmAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The mapped cluster member ATM address."
      ::= { marsHostMapEntry 1 }

  marsHostMapRowType OBJECT-TYPE
      SYNTAX  INTEGER {
            static (1),
            dynamic (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Method in which this entry row is created. The
           static (1) indicates that this row is created
           through configuration.  The dynamic (2) indicates
           that the row is created as the result of group
           address updates received at this MARS."
      ::= { marsHostMapEntry 2 }

  marsHostMapRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.

           This object must not be set to 'active' until
           instances of all corresponding columns in the
           row of this table are appropriately configured.

           It is possible for an SNMP management station
           to set the row to 'notInService' and modify
           the entry and then set it back to 'active'
           with the following exception. That is, rows
           for which the corresponding instance of
           marsHostMapRowType has a value of 'dynamic'



Chung & Greene              Standards Track                    [Page 31]

RFC 2417                     Multicast MIB                September 1998


           can not be modified or deleted."
      ::= { marsHostMapEntry 3 }

  --***************************************************************
  --  IP ATM MARS Server Map Object Definitions
  --***************************************************************

  marsServerMapTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsServerMapEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table caches mappings between IP multicast
           address to a list of MCS ATM addresses that are
           configured or dynamically learned from the MARS.
           This address resolution is used for the server map.
           It supports the mapping of a block of multicast
           group addresses to a MCS address.  In the case
           where a group block is associated with multiple
           MCSs, several entries are used to representing the
           relationship."
      ::= { marsObjects 4 }

  marsServerMapEntry OBJECT-TYPE
      SYNTAX  MarsServerMapEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry row contains attributes associated with
           the mapping between a multicast group block and an
           MCS address."
      INDEX { marsIndex,
              marsIfIndex,
              marsMcMinGrpAddr,
              marsMcMaxGrpAddr,
              marsServerMapAtmAddr }
      ::= { marsServerMapTable 1 }

  MarsServerMapEntry ::=
      SEQUENCE {
          marsServerMapAtmAddr   AtmAddr,
          marsServerMapRowType   INTEGER,
          marsServerMapRowStatus RowStatus
      }

  marsServerMapAtmAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS not-accessible



Chung & Greene              Standards Track                    [Page 32]

RFC 2417                     Multicast MIB                September 1998


      STATUS  current
      DESCRIPTION
          "The mapped MCS ATM address."
      ::= { marsServerMapEntry 1 }

  marsServerMapRowType OBJECT-TYPE
      SYNTAX  INTEGER {
              static (1),
              dynamic (2)
            }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Method in which this entry row is created. The
           'static (1)' indicates that this row is created
           through configuration.  The 'dynamic (2)' indicates
           that the row is created as the result of group
           address updates received at this MARS."
      ::= { marsServerMapEntry 2 }

  marsServerMapRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.

           This object must not be set to 'active' until
           instances of all corresponding columns in the
           row of this table are appropriately configured.

           It is possible for an SNMP management station
           to set the row to 'notInService' and modify
           the entry and then set it back to 'active'
           with the following exception. That is, rows
           for which the corresponding instance of
           marsServerMapRowType has a value of 'dynamic'
           can not be modified or deleted."
      ::= { marsServerMapEntry 3 }

  --***************************************************************
  --  IP ATM MARS VC Object Definition Table
  --***************************************************************

  marsVcTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsVcEntry
      MAX-ACCESS  not-accessible



Chung & Greene              Standards Track                    [Page 33]

RFC 2417                     Multicast MIB                September 1998


      STATUS current
      DESCRIPTION
          "This table contains information about open virtual circuits
           (VCs) that a MARS has.  For point to point circuit, each
           entry represents a single VC connection between this MARS
           ATM address to another party's ATM address.  In the case of
           point to multipoint connection where a ControlVc is attached
           with multiple leaf nodes, several entries are used  to
           represent the relationship.  An example of point to
           multi-point VC represented in a table is shown below.

                MARS     VPI/VCI    MARS Addr     Party Addr
                  1         0,1         m1            p1
                  1         0,1         m1            p2
                  1         0,1         m1            p3"
      ::= { marsObjects 5 }

  marsVcEntry OBJECT-TYPE
      SYNTAX  MarsVcEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The objects contained in the entry are VC related attributes
           such as VC signalling type, control VC type, idle timer,
           negotiated MTU size, etc."
      INDEX { marsIndex,
              marsIfIndex,
              marsVcVpi,
              marsVcVci,
              marsVcPartyAddr }
      ::= { marsVcTable 1 }

  MarsVcEntry ::=
      SEQUENCE {
          marsVcVpi              INTEGER,
          marsVcVci              INTEGER,
          marsVcPartyAddr        AtmAddr,
          marsVcPartyAddrType    INTEGER,
          marsVcType             INTEGER,
          marsVcCtrlType         INTEGER,
          marsVcIdleTimer        INTEGER,
          marsVcCmi              INTEGER,
          marsVcEncapsType       INTEGER,
          marsVcNegotiatedMtu    INTEGER,
          marsVcRowStatus        RowStatus
        }

  marsVcVpi OBJECT-TYPE



Chung & Greene              Standards Track                    [Page 34]

RFC 2417                     Multicast MIB                September 1998


      SYNTAX  INTEGER (0..4095)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The value of virtual path identifier (VPI). Since
           a VPI can be numbered 0, this sub-index can take
           a value of 0."
      ::= { marsVcEntry 1 }

  marsVcVci OBJECT-TYPE
      SYNTAX  INTEGER (0..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
           "The value of virtual circuit identifier (VCI).
            Since a VCI can be numbered 0, this sub-index
            can take a value of 0."
      ::= { marsVcEntry 2 }

  marsVcPartyAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "An ATM party address in which this VC is linked. The
           party type is identified by the marsVcPartyAddrType."
      ::= { marsVcEntry 5 }

  marsVcPartyAddrType OBJECT-TYPE
      SYNTAX  INTEGER {
            called (1),
            calling (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The party type is associated with the party address.  The
           'called (1)' indicates that the party address is a
           destination address which implies that VC is originated
           from this MARS. The 'calling (2)' indicates the VC was
           initiated externally to this MARS.  The party address is
           the source address."
      ::= { marsVcEntry 6 }

  marsVcType OBJECT-TYPE
      SYNTAX  INTEGER {
               pvc (1),
               svc (2)



Chung & Greene              Standards Track                    [Page 35]

RFC 2417                     Multicast MIB                September 1998


             }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Circuit Connection type: permanent virtual circuit or
           switched virtual circuit."
      ::= { marsVcEntry 7 }

  marsVcCtrlType OBJECT-TYPE
      SYNTAX  INTEGER {
             pointToPointVC (1),
             clusterControlVC (2),
             serverControlVC (3)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Control VC type used to specify a particular connection.
             pointToPointVC (1):
               used by the ATM endpoints (clients) or the MCS for
               registration and queries.  This VC is set up from
               a MARS client and MCS to this MARS.  It is a
               bi-directional VC.
             clusterControlVC (2):
               used by MARS to issue asynchronous updates to ATM
               an ATM client.  This VC is established from the
               MARs to the ATM client.
             serverControlVC (3):
               used by MARS to issue asynchronous update to ATM
               multicast servers.  This type of VC exists when at
               least a MCS is being used."
      ::= { marsVcEntry 8 }

  marsVcIdleTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)
      UNITS   "minutes"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The idle timer associated with this VC.  The minimum
           suggested value is 1 minute and the recommended default
           value is 20 minutes."
      DEFVAL { 20 }
      ::= { marsVcEntry 9 }

  marsVcCmi OBJECT-TYPE
      SYNTAX  INTEGER (0..65535)
      MAX-ACCESS read-create



Chung & Greene              Standards Track                    [Page 36]

RFC 2417                     Multicast MIB                September 1998


      STATUS  current
      DESCRIPTION
          "Cluster member identifier (CMI) which uniquely identifies
           each endpoint attached to the cluster.  This variable
           applies to each 'leaf node' of an outgoing control VC."
      ::= { marsVcEntry 10 }

  marsVcEncapsType OBJECT-TYPE
      SYNTAX  INTEGER {
            other (1),
            llcSnap (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The encapsulation type used when communicating over
           this VC."
      ::= { marsVcEntry 11 }

  marsVcNegotiatedMtu OBJECT-TYPE
      SYNTAX  INTEGER (1..65535)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The negotiated MTU when communicating over this VC."
      ::= { marsVcEntry 12 }

  marsVcRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.

           A row cannot be made 'active' until instances of
           all corresponding columns in the row of this table
           are appropriately configured.

           While the marsVcIdleTimer in this conceptual
           row can be modified irrespective of the value
           of this object, all other objects in the row can
           not be modified when this object has a value
           of 'active'.

           It is possible for an SNMP management station
           to set the row to 'notInService' and modify
           the entry and then set it back to 'active'



Chung & Greene              Standards Track                    [Page 37]

RFC 2417                     Multicast MIB                September 1998


           with the following exception. That is, rows
           for which the corresponding instance of
           marsVcType has a value of 'svc' can not be
           modified or deleted."
      ::= { marsVcEntry 13 }

  --***************************************************************
  --  IP ATM MARS Registered Cluster Member List Table
  --***************************************************************

  marsRegClientTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsRegClientEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains ATM identities of all the currently
           registered cluster members at a MARS.  Each entry represents
           one set of ATM identities associated with one cluster member
           or the MARS client."
      ::= { marsObjects 6 }

  marsRegClientEntry OBJECT-TYPE
      SYNTAX  MarsRegClientEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry row contains attributes associated with one
           register cluster member."
      INDEX { marsIndex,
              marsIfIndex,
              marsRegClientCmi}
      ::= { marsRegClientTable 1 }

  MarsRegClientEntry ::=
      SEQUENCE {
          marsRegClientCmi       INTEGER,
          marsRegClientAtmAddr   AtmAddr
      }

  marsRegClientCmi OBJECT-TYPE
      SYNTAX  INTEGER (0..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "This cluster member identifier is used as an auxiliary index
           for the entry in this table."
      ::= { marsRegClientEntry 1 }




Chung & Greene              Standards Track                    [Page 38]

RFC 2417                     Multicast MIB                September 1998


  marsRegClientAtmAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "The registered client's ATM address."
      ::= { marsRegClientEntry 2 }


  --***************************************************************
  --  IP ATM MARS Registered Server Member List Table
  --***************************************************************

  marsRegMcsTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsRegMcsEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains ATM identities of all the currently
           registered MCSs at a MARS. Each entry represents one set
           of ATM identities associated with one MCS."
      ::= { marsObjects 7 }

  marsRegMcsEntry OBJECT-TYPE
      SYNTAX  MarsRegMcsEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry row contains attributes associated with one
           registered MCS."
      INDEX { marsIndex,
              marsIfIndex,
              marsRegMcsAtmAddr
            }
      ::= { marsRegMcsTable 1 }

  MarsRegMcsEntry ::=
      SEQUENCE {
          marsRegMcsAtmAddr  AtmAddr
      }

  marsRegMcsAtmAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "The registered MCS's ATM address."
      ::= { marsRegMcsEntry 1 }



Chung & Greene              Standards Track                    [Page 39]

RFC 2417                     Multicast MIB                September 1998


  --***************************************************************
  --  IP ATM MARS Statistics Object Definition Table
  --***************************************************************

  marsStatTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsStatEntry
      MAX-ACCESS not-accessible
      STATUS current


      DESCRIPTION
          "The table contains statistics collected at MARS."
      ::= {  marsObjects 8 }

  marsStatEntry OBJECT-TYPE
      SYNTAX  MarsStatEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry contains statistics collected at one MARS."
      INDEX { marsIndex, marsIfIndex }
      ::= { marsStatTable 1 }

  MarsStatEntry ::=
      SEQUENCE {
          marsStatTxMultiMsgs        Counter32,
          marsStatTxGrpLstRplyMsgs   Counter32,
          marsStatTxRedirectMapMsgs  Counter32,
          marsStatTxMigrateMsgs      Counter32,
          marsStatTxNakMsgs          Counter32,
          marsStatTxJoinMsgs         Counter32,
          marsStatTxLeaveMsgs        Counter32,
          marsStatTxSjoinMsgs        Counter32,
          marsStatTxSleaveMsgs       Counter32,
          marsStatTxMservMsgs        Counter32,
          marsStatTxUnservMsgs       Counter32,
          marsStatRxReqMsgs          Counter32,
          marsStatRxGrpLstReqMsgs    Counter32,
          marsStatRxJoinMsgs         Counter32,
          marsStatRxLeaveMsgs        Counter32,
          marsStatRxMservMsgs        Counter32,
          marsStatRxUnservMsgs       Counter32,
          marsStatRxBlkJoinMsgs      Counter32,
          marsStatRegMemGroups       Counter32,
          marsStatRegMcsGroups       Counter32
      }

  marsStatTxMultiMsgs OBJECT-TYPE



Chung & Greene              Standards Track                    [Page 40]

RFC 2417                     Multicast MIB                September 1998


      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MULTI transmitted by this MARS."
      ::= { marsStatEntry 1 }

  marsStatTxGrpLstRplyMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_GROUPLIST_REPLY messages transmitted
           by this MARS."
      ::= { marsStatEntry 2 }

  marsStatTxRedirectMapMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_REDIRECT_MAP messages transmitted by
           this MARS."
      ::= { marsStatEntry 3 }

  marsStatTxMigrateMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MIGRATE messages transmitted by
           this MARS."
      ::= { marsStatEntry 4 }

  marsStatTxNakMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_NAK messages transmitted by this MARS."
      ::= { marsStatEntry 5 }

  marsStatTxJoinMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_JOIN messages transmitted by this



Chung & Greene              Standards Track                    [Page 41]

RFC 2417                     Multicast MIB                September 1998


           MARS."
      ::= { marsStatEntry 6 }

  marsStatTxLeaveMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_LEAVE messages transmitted by this
           MARS."
      ::= { marsStatEntry 7 }

  marsStatTxSjoinMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_SJOIN messages transmitted by this
           MARS."
      ::= { marsStatEntry 8 }

  marsStatTxSleaveMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_SLEAVE messages transmitted by this
           MARS."
      ::= { marsStatEntry 9 }

  marsStatTxMservMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MSERV messages transmitted by this
           MARS."
      ::= { marsStatEntry 10 }

  marsStatTxUnservMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_UNSERV messages transmitted by this
           MARS."
      ::= { marsStatEntry 11 }




Chung & Greene              Standards Track                    [Page 42]

RFC 2417                     Multicast MIB                September 1998


  marsStatRxReqMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_REQUEST messages received by this
           MARS."
      ::= { marsStatEntry 12 }

  marsStatRxGrpLstReqMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_GROUPLIST_REQUEST messages received
           by this MARS."
      ::= { marsStatEntry 13 }

  marsStatRxJoinMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_JOINS messages received by this MARS."
      ::= { marsStatEntry 14 }

  marsStatRxLeaveMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_LEAVES messages received by this MARS."
      ::= { marsStatEntry 15 }

  marsStatRxMservMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MSERV messages received by this MARS."
      ::= { marsStatEntry 16 }

  marsStatRxUnservMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_UNSERV messages received by this MARS."



Chung & Greene              Standards Track                    [Page 43]

RFC 2417                     Multicast MIB                September 1998


      ::= { marsStatEntry 17 }

  marsStatRxBlkJoinMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of block joins messages received by this MARS."
      ::= { marsStatEntry 18 }

  marsStatRegMemGroups OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of IP multicast groups with 1 or more joined
           cluster members."
      ::= { marsStatEntry 19 }

  marsStatRegMcsGroups OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of IP multicast groups with 1 or more joined
           MCSs."
      ::= { marsStatEntry 20 }

  --***************************************************************
  --  IP ATM MARS MCS Object Definitions
  --***************************************************************

  marsMcsObjects OBJECT IDENTIFIER ::= { marsMIB 3 }

  marsMcsTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsMcsEntry
      MAX-ACCESS  not-accessible
      STATUS current
      DESCRIPTION
          "The objects defined in this table are used for
           the management of a multicast server (MCS)."
      ::= {  marsMcsObjects 1 }

  marsMcsEntry OBJECT-TYPE
      SYNTAX  MarsMcsEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION



Chung & Greene              Standards Track                    [Page 44]

RFC 2417                     Multicast MIB                September 1998


          "Each entry contains a MCS and its associated
           attributes."
      INDEX { marsMcsIndex, marsMcsIfIndex }
      ::= { marsMcsTable 1 }

  MarsMcsEntry ::=
      SEQUENCE {
          marsMcsIndex                    Integer32,
          marsMcsIfIndex                  InterfaceIndex,
          marsMcsAddr                     AtmAddr,
          marsMcsDefaultMarsAddr          AtmAddr,
          marsMcsRegistration             INTEGER,
          marsMcsSsn                      Unsigned32,
          marsMcsDefaultMtu               INTEGER,
          marsMcsFailureTimer             INTEGER,
          marsMcsRetranDelayTimer         INTEGER,
          marsMcsRdmMulReqAddRetrTimer    INTEGER,
          marsMcsRdmVcRevalidateTimer     INTEGER,
          marsMcsRegisterRetrInterval     INTEGER,
          marsMcsRegisterRetrLimit        INTEGER,
          marsMcsRegWithMarsRdmTimer      INTEGER,
          marsMcsForceWaitTimer           INTEGER,
          marsMcsIdleTimer                INTEGER,
          marsMcsLmtToMissRedirMapTimer   INTEGER,
          marsMcsRowStatus                RowStatus
      }

  marsMcsIndex OBJECT-TYPE
      SYNTAX  Integer32(1..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The auxiliary variable used to identify instances
           of the columnar objects in the MCS table."
      ::= { marsMcsEntry 1 }

  marsMcsIfIndex OBJECT-TYPE
      SYNTAX  InterfaceIndex
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The ifIndex of the interface that the MCS is
           associated with."
      ::= { marsMcsEntry 2 }

  marsMcsAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS read-create



Chung & Greene              Standards Track                    [Page 45]

RFC 2417                     Multicast MIB                September 1998


      STATUS  current
      DESCRIPTION
          "The ATM address associated with the MCS."
      ::= { marsMcsEntry 3 }

  marsMcsDefaultMarsAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The default MARS ATM address which is needed to
           setup the initial signalling path between a MCS
           and its associated MARS."
      ::= { marsMcsEntry 4 }

  marsMcsRegistration OBJECT-TYPE
      SYNTAX  INTEGER {
            notRegistered (1),
            registering (2),
            registered (3),
            reRegisteringFault (4),
            reRegisteringRedirMap (5)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "An indication with regards to the registration
           STATUS of this MCS. The registration codes of
           'notRegistered (1)', 'registered (2)', and
           registered (3) are self-explanatory. The
           'reRegisteringFault (4)' indicates the MCS is
           in the process of re-registering with a MARS due
           to some fault conditions.  The 'reRegisteringRedMap
           (5)' status code shows that MCS is re-registering
           because it has received a MARS_REDIRECT_MAP message
           and was told to register with a shift MARS."
      ::= { marsMcsEntry 5 }

  marsMcsSsn OBJECT-TYPE
      SYNTAX  Unsigned32
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The MCS own 32 bit Server Sequence Number.  It
           is used to track the Mars sequence number."
      ::= { marsMcsEntry 6 }

  marsMcsDefaultMtu OBJECT-TYPE



Chung & Greene              Standards Track                    [Page 46]

RFC 2417                     Multicast MIB                September 1998


      SYNTAX  INTEGER (1..65535)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The default maximum transmission unit (MTU) used
           for this cluster.  Note that the actual size used
           for a VC between two members of the cluster may be
           negotiated during connection setup and may be
           different than this value.
           Default value = 9180 bytes."
      DEFVAL { 9180 }
      ::= { marsMcsEntry 7 }

  marsMcsFailureTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "A timer used to flag the failure of last MARS_MULTI
           to arrive.  Default value = 10 seconds (recommended)."
      DEFVAL { 10 }
      ::= { marsMcsEntry 8 }

  marsMcsRetranDelayTimer OBJECT-TYPE
      SYNTAX  INTEGER (5..10)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The delay timer for sending out new MARS_REQUEST
           for the group after the MCS learned that there
           is no other group in the cluster.  The timer must
           be set between 5 and 10 seconds inclusive."
      ::= { marsMcsEntry 9 }

  marsMcsRdmMulReqAddRetrTimer OBJECT-TYPE
      SYNTAX  INTEGER (5..10)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The initial random L_MULTI_RQ/ADD retransmit timer
           which can be set between 5 and 10 seconds inclusive."
      ::= { marsMcsEntry 10 }

  marsMcsRdmVcRevalidateTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..10)



Chung & Greene              Standards Track                    [Page 47]

RFC 2417                     Multicast MIB                September 1998


      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The random time to set VC_revalidate flag.  The
           timer value ranges between 1 and 10 seconds
              inclusive."
      ::= { marsMcsEntry 11 }

  marsMcsRegisterRetrInterval OBJECT-TYPE
      SYNTAX  INTEGER(5..2147483647)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "MARS_MSERV/UNSERV retransmit interval. The minimum
           and recommended values are 5 and 10 seconds,
           respectively."
      DEFVAL { 10 }
      ::= { marsMcsEntry 12 }

  marsMcsRegisterRetrLimit OBJECT-TYPE
      SYNTAX  INTEGER (0..5)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "MARS_MSERV/UNSERV retransmit limit. The maximum value
           is 5."
      ::= { marsMcsEntry 13 }

  marsMcsRegWithMarsRdmTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..10)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Random time for a MCS to register with a MARS."
      ::= { marsMcsEntry 14 }

  marsMcsForceWaitTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)
      UNITS   "minutes"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Force wait if MARS re-registration is looping.
           The minimum value is 1 minute."
      ::= { marsMcsEntry 15 }



Chung & Greene              Standards Track                    [Page 48]

RFC 2417                     Multicast MIB                September 1998


  marsMcsLmtToMissRedirMapTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..4)
      UNITS   "seconds"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Timer limit for MCS to miss MARS_REDIRECT_MAPS."
      ::= { marsMcsEntry 16 }

  marsMcsIdleTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)
      UNITS   "minutes"
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The configurable inactivity timer associated with a
           MCS. When a VC is created at this MCS, it gets
           the idle timer value from this configurable timer.
           The minimum suggested value is 1 minute and the
           recommended default value is 20 minutes."
      DEFVAL { 20 }
      ::= { marsMcsEntry 17 }

  marsMcsRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.

           A row cannot be made 'active' until instances of
           all corresponding columns in the row of this table
           are appropriately configured and until the agent
           has also created a corresponding row in the
           marsMcsStatTable.

           When this object has a value of 'active', the
           following columnar objects can not be modified:

             marsMcsDefaultMarsAddr,
             marsMcsSsn,
             marsMcsRegstration,
             marsMcsDefaultMtu

           while other objects in this conceptual row can be
           modified irrespective of the value of this object.




Chung & Greene              Standards Track                    [Page 49]

RFC 2417                     Multicast MIB                September 1998


           Deletion of this row is allowed regardless of
           whether or not a row in any associated tables
           (i.e., marsMcsVcTable) still exists or is in
           use. Once this row is deleted, it is recommended
           that the agent or the SNMP management station
           (if possible) through the set command deletes
           any stale rows that are associated with this
           row."
      ::= { marsMcsEntry 18 }


  --****************************************************************
  -- IP ATM MARS MCS Multicast Group Address Object Definitions
  --****************************************************************

  marsMcsMcGrpTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsMcsMcGrpEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains a list of IP multicast group address
           blocks associated by a MARS MCS.  The MCS uses the
           information contained in list to advertise its multicast
           group service to the MARS.
           Each row can be created or deleted via configuration."
      ::= { marsMcsObjects 2 }

  marsMcsMcGrpEntry OBJECT-TYPE
      SYNTAX  MarsMcsMcGrpEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry represents a consecutive block of multicast
           group addresses."
      INDEX { marsMcsIndex,
              marsMcsIfIndex,
              marsMcsMcMinGrpAddr,
              marsMcsMcMaxGrpAddr }
      ::= { marsMcsMcGrpTable 1 }

  MarsMcsMcGrpEntry ::=
      SEQUENCE {
          marsMcsMcMinGrpAddr           IpAddress,
          marsMcsMcMaxGrpAddr           IpAddress,
          marsMcsMcGrpRowStatus         RowStatus
      }

  marsMcsMcMinGrpAddr OBJECT-TYPE



Chung & Greene              Standards Track                    [Page 50]

RFC 2417                     Multicast MIB                September 1998


      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Minimum multicast group address - the min and max
           multicast forms multi-group block.  If the MinGrpAddr
           and MaxGrpAddr are the same, it indicates that this
           block contains a single group address.   Since the
           block joins are no allowed by a MCS as implied in
           the RFC2022, the MinGrpAddr and MaxGrpAddress should
           be set to the same value at this time when an entry
           row is created."
      ::= { marsMcsMcGrpEntry 1 }

  marsMcsMcMaxGrpAddr OBJECT-TYPE
      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Maximum multicast group address - the min and max
           multicast forms a multi-group block.  If the
           MinGrpAddr and MaxGrpAddr are the same, it indicates
           that this block contains a single group address.
           Since the block joins are no allowed by a MCS as
           implied in the RFC2022, the MinGrpAddr and
           MaxGrpAddress should be set to the same value at
           this time when an entry row is created."
      ::= { marsMcsMcGrpEntry 2 }

  marsMcsMcGrpRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create or delete a row in this
           table.

           Since other objects in this row are not-accessible
           'index-objects', the value of this object has no
           effect on whether those objects in this conceptual
           row can be modified."
      ::= { marsMcsMcGrpEntry 3 }

  --****************************************************************
  -- IP ATM MARS MCS Backup MARS Object Definitions
  --****************************************************************

  marsMcsBackupMarsTable OBJECT-TYPE



Chung & Greene              Standards Track                    [Page 51]

RFC 2417                     Multicast MIB                September 1998


      SYNTAX  SEQUENCE OF MarsMcsBackupMarsEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "This table contains a list of backup MARS addresses that
           a MCS can make contact to in case of failure for
           connecting to the primary server. The list of addresses
           is in descending order of preference. It should be noted
           that the backup list provided by the MARS to the MCS
           via the MARS_REDIRECT_MAP message has a higher preference
           than addresses that are manually configured into the MCS.
           When such a list is received from the MARS, this information
           should be inserted at the top of the list.
           Each row can be created or deleted via configuration."
      ::= {  marsMcsObjects 3 }

  marsMcsBackupMarsEntry OBJECT-TYPE
      SYNTAX  MarsMcsBackupMarsEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry represents an ATM address of a backup MARS."
      INDEX { marsMcsIndex,
              marsMcsIfIndex,
              marsMcsBackupMarsPriority,
              marsMcsBackupMarsAddr }
      ::= { marsMcsBackupMarsTable 1 }

  MarsMcsBackupMarsEntry ::=
      SEQUENCE {
          marsMcsBackupMarsPriority     Unsigned32,
          marsMcsBackupMarsAddr         AtmAddr,
          marsMcsBackupMarsRowStatus    RowStatus
      }

  marsMcsBackupMarsPriority OBJECT-TYPE
      SYNTAX  Unsigned32(0..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The priority associated with a backup MARS. A lower
           priority value inidcates a higher preference."
      ::= { marsMcsBackupMarsEntry 1 }

  marsMcsBackupMarsAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS not-accessible
      STATUS  current



Chung & Greene              Standards Track                    [Page 52]

RFC 2417                     Multicast MIB                September 1998


      DESCRIPTION
          "The ATM address associated with a backup MARS."
      ::= { marsMcsBackupMarsEntry 2 }

  marsMcsBackupMarsRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create or delete a row in this
           table.

           Since other objects in this row are not-accessible
           'index-objects', the value of this object has no
           effect on whether those objects in this conceptual
           row can be modified."
      ::= { marsMcsBackupMarsEntry 3 }

  --***************************************************************
  --  IP ATM MARS MCS VC Object Definition Table
  --***************************************************************

  marsMcsVcTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsMcsVcEntry
      MAX-ACCESS  not-accessible
      STATUS current
      DESCRIPTION
          "This table contains information about open virtual
           circuits (VCs) that a MCS has.  For point to
           point circuit, each entry represents a single VC
           connection between this MCS ATM address to another
           party ATM address.  In the case of point to
           multipoint connection where a single source address
           is associated with multiple destinations, several
           entries are used to represent the relationship.  An
           example of point to multi-point VC represented in a
           table is shown below.

              MCS      VPI/VCI    Grp Addr1/Addr2    Part Addr
               1         0,1          g1,g2             p1
               1         0,1          g1,g2             p2
               1         0,1          g1,g2             p3"
      ::= {  marsMcsObjects 4 }

  marsMcsVcEntry OBJECT-TYPE
      SYNTAX  MarsMcsVcEntry
      MAX-ACCESS not-accessible
      STATUS  current



Chung & Greene              Standards Track                    [Page 53]

RFC 2417                     Multicast MIB                September 1998


      DESCRIPTION
          "The objects contained in the entry are VC related
           attributes such as VC signalling type, control VC
           type, idle timer, negotiated MTU size, etc."
      INDEX { marsMcsIndex,
              marsMcsIfIndex,
              marsMcsVcVpi,
              marsMcsVcVci,
              marsMcsVcMinGrpAddr,
              marsMcsVcMaxGrpAddr,
              marsMcsVcPartyAddr }
      ::= { marsMcsVcTable 1 }

  MarsMcsVcEntry ::=
      SEQUENCE {
          marsMcsVcVpi           INTEGER,
          marsMcsVcVci           INTEGER,
          marsMcsVcMinGrpAddr    IpAddress,
          marsMcsVcMaxGrpAddr    IpAddress,
          marsMcsVcPartyAddr     AtmAddr,
          marsMcsVcPartyAddrType INTEGER,
          marsMcsVcType          INTEGER,
          marsMcsVcCtrlType      INTEGER,
          marsMcsVcIdleTimer     INTEGER,
          marsMcsVcRevalidate    TruthValue,
          marsMcsVcEncapsType    INTEGER,
          marsMcsVcNegotiatedMtu INTEGER,
          marsMcsVcRowStatus     RowStatus
      }

  marsMcsVcVpi OBJECT-TYPE
      SYNTAX  INTEGER (0..4095)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "The value of virtual path identifier (VPI). Since
           a VPI can be numbered 0, this sub-index can take
           a value of 0."
      ::= { marsMcsVcEntry 1 }

  marsMcsVcVci OBJECT-TYPE
      SYNTAX  INTEGER (0..65535)
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
           "The value of virtual circuit identifier (VCI). Since
           a VCI can be numbered 0, this sub-index can take
           a value of 0."



Chung & Greene              Standards Track                    [Page 54]

RFC 2417                     Multicast MIB                September 1998


       ::= { marsMcsVcEntry 2 }

  marsMcsVcMinGrpAddr OBJECT-TYPE
      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Minimum IP multicast group address - the min and
           max multicast forms a multi-group block which is
           associated with a VC.  If the MinGrpAddr and
           MaxGrpAddr are the same, it indicates that the
           size of multi-group block is 1, a single IP group."
      ::= { marsMcsVcEntry 3 }

  marsMcsVcMaxGrpAddr OBJECT-TYPE


      SYNTAX  IpAddress
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Maximum IP multicast group address - the min
           and max multicast forms a multi-group block
           which is associated with a VC. If the MinGrpAddr
           and MaxGrpAddr are the same, it indicates that the
           size of multi-group block is 1, a single IP group."
      ::= { marsMcsVcEntry 4 }

  marsMcsVcPartyAddr OBJECT-TYPE
      SYNTAX  AtmAddr
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "An ATM party address in which this VC is linked.
           The party type is identified by the
           marsMcsVcPartyAddrType."
      ::= { marsMcsVcEntry 5 }

  marsMcsVcPartyAddrType OBJECT-TYPE
      SYNTAX  INTEGER {
            called (1),
            calling (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The party type is associated with the party address.
           The called (1) indicates that the party address is



Chung & Greene              Standards Track                    [Page 55]

RFC 2417                     Multicast MIB                September 1998


           a destination address which implies that VC is
           originated from this MCS.  The calling (2) indicates
           the VC was initiated externally to this MCS.  In this
           case, the party address is the source address."
      ::= { marsMcsVcEntry 6 }

  marsMcsVcType OBJECT-TYPE
      SYNTAX  INTEGER {
            pvc (1),
            svc (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Circuit Connection type: permanent virtual circuit or
           switched virtual circuit."
      ::= { marsMcsVcEntry 7 }


  marsMcsVcCtrlType OBJECT-TYPE
      SYNTAX  INTEGER {
             pointToPointVC (1),
             serverControlVC (2),
             pointToMultiPointVC (3)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "Control VC type used to specify a particular connection.
             pointToPointVC (1):
               used by the ATM Clients for the registration and
               queries.  This VC or the initial signalling path is
               set up from the source MCS to a MARS. It is
               bi-directional.
             serverControlVC (2):
               used by a MARS to issue asynchronous updates to an
               ATM Client.  This VC is established from the MARS
               to the MCS.
             pointToMultiPointVC (3):
               used by the client to transfer multicast data
               packets from layer 3.  This VC is established from
               this VC to a cluster member."
      ::= { marsMcsVcEntry 8 }

  marsMcsVcIdleTimer OBJECT-TYPE
      SYNTAX  INTEGER (1..2147483647)
      UNITS   "minutes"
      MAX-ACCESS read-create



Chung & Greene              Standards Track                    [Page 56]

RFC 2417                     Multicast MIB                September 1998


      STATUS  current
      DESCRIPTION
          "The idle timer associated with this VC. The minimum
           suggested value is 1 minute and the recommended
           default value is 20 minutes."
      DEFVAL { 20 }
      ::= { marsMcsVcEntry 9 }

  marsMcsVcRevalidate OBJECT-TYPE
      SYNTAX  TruthValue
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "A flag associated with an open and active multipoint
           VC. It is checked every time a packet is queued for
           transmission on that VC. The object has the value of
           true (1) if revalidate is required and the value
           false (2) otherwise."
      ::= { marsMcsVcEntry 10 }

  marsMcsVcEncapsType OBJECT-TYPE
      SYNTAX  INTEGER {
            other (1),
            llcSnap (2)
          }
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The encapsulation type used when communicating over
           this VC."
      ::= { marsMcsVcEntry 11 }

  marsMcsVcNegotiatedMtu OBJECT-TYPE
      SYNTAX  INTEGER (1..65535)
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The negotiated MTU when communicating over this VC."
      ::= { marsMcsVcEntry 12 }

  marsMcsVcRowStatus OBJECT-TYPE
      SYNTAX  RowStatus
      MAX-ACCESS read-create
      STATUS  current
      DESCRIPTION
          "The object is used to create, delete or modify a
           row in this table.




Chung & Greene              Standards Track                    [Page 57]

RFC 2417                     Multicast MIB                September 1998


           A row cannot be made 'active' until instances of
           all corresponding columns in the row of this table
           are appropriately configured.

           While objects: marsMcsVcIdleTimer and
           marsMcsVcRevalidate in this conceptual row can
           be modified irrespective of the value of this
           object, all other objects in the row can not be
           modified when this object has a value of 'active'.

           It is possible for an SNMP management station
           to set the row to 'notInService' and modify
           the entry and then set it back to 'active'
           with the following exception. That is, rows
           for which the corresponding instance of
           marsMcsVcType has a value of 'svc' can not
           be modified or deleted."
      ::= { marsMcsVcEntry 13 }

  --***************************************************************
  --  IP ATM MARS MCS Statistics Definition Table
  --***************************************************************

  marsMcsStatTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF MarsMcsStatEntry
      MAX-ACCESS  not-accessible
      STATUS current
      DESCRIPTION
          "The table contains statistics collected at MARS MCSs."
      ::= {  marsMcsObjects 5 }

  marsMcsStatEntry OBJECT-TYPE
      SYNTAX  MarsMcsStatEntry
      MAX-ACCESS not-accessible
      STATUS  current
      DESCRIPTION
          "Each entry contains statistics collected at one
           MARS MCS."
      INDEX { marsMcsIndex, marsMcsIfIndex }
      ::= { marsMcsStatTable 1 }

  MarsMcsStatEntry ::=
      SEQUENCE {
          marsMcsStatTxReqMsgs       Counter32,
          marsMcsStatTxMservMsgs     Counter32,
          marsMcsStatTxUnservMsgs    Counter32,
          marsMcsStatRxMultiMsgs     Counter32,
          marsMcsStatRxSjoinMsgs     Counter32,



Chung & Greene              Standards Track                    [Page 58]

RFC 2417                     Multicast MIB                September 1998


          marsMcsStatRxSleaveMsgs    Counter32,
          marsMcsStatRxNakMsgs       Counter32,
          marsMcsStatRxMigrateMsgs   Counter32,
          marsMcsStatFailMultiMsgs   Counter32
      }

  marsMcsStatTxReqMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_REQUEST messages transmitted
           from this MCS."
      ::= { marsMcsStatEntry 1 }

  marsMcsStatTxMservMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MSERV messages transmitted from
           this MCS."
      ::= { marsMcsStatEntry 2 }

  marsMcsStatTxUnservMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_UNSERV messages transmitted from
           this MCS."
      ::= { marsMcsStatEntry 3 }

  marsMcsStatRxMultiMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MULTI messages received by
           this MCS."
      ::= { marsMcsStatEntry 4 }

  marsMcsStatRxSjoinMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_SJOIN messages received by



Chung & Greene              Standards Track                    [Page 59]

RFC 2417                     Multicast MIB                September 1998


           this MCS."
      ::= { marsMcsStatEntry 5 }

  marsMcsStatRxSleaveMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_SLEAVE messages received
           by this MCS."
      ::= { marsMcsStatEntry 6 }

  marsMcsStatRxNakMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_NAK messages received
           by this MCS."
      ::= { marsMcsStatEntry 7 }

  marsMcsStatRxMigrateMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of MARS_MIGRATE messages received
           by this MCS."
      ::= { marsMcsStatEntry 8 }

  marsMcsStatFailMultiMsgs OBJECT-TYPE
      SYNTAX  Counter32
      MAX-ACCESS read-only
      STATUS  current
      DESCRIPTION
          "Total number of timeouts occurred indicating
           failure of the last MARS_MULTI to arrive."
      ::= { marsMcsStatEntry 9 }

  --***************************************************************
  --  IP ATM MARS Notification Definitions
  --***************************************************************

  marsTrapInfo OBJECT IDENTIFIER ::= { marsMIB 0 }

  marsFaultTrap NOTIFICATION-TYPE
      OBJECTS {
          marsAddr,



Chung & Greene              Standards Track                    [Page 60]

RFC 2417                     Multicast MIB                September 1998


          marsServStatus
         }
      STATUS  current
      DESCRIPTION
          "This trap/inform is sent to the manager whenever
           there is a fault condition occurred on a MARS."
      ::= { marsTrapInfo 1 }

  --***************************************************************
  --  IP ATM MARS Conformance Definitions
  --***************************************************************

  marsConformance       OBJECT IDENTIFIER ::= { marsMIB 4 }
  marsClientConformance OBJECT IDENTIFIER ::= { marsConformance 1 }
  marsServerConformance OBJECT IDENTIFIER ::= { marsConformance 2 }
  marsMcsConformance    OBJECT IDENTIFIER ::= { marsConformance 3 }

  marsClientCompliances OBJECT IDENTIFIER ::= { marsClientConformance 1 }
  marsClientGroups      OBJECT IDENTIFIER ::= { marsClientConformance 2 }

  marsServerCompliances OBJECT IDENTIFIER ::= { marsServerConformance 1 }


  marsServerGroups      OBJECT IDENTIFIER ::= { marsServerConformance 2 }

  marsMcsCompliances    OBJECT IDENTIFIER ::= { marsMcsConformance 1 }
  marsMcsGroups         OBJECT IDENTIFIER ::= { marsMcsConformance 2 }

  --***************************************************************
  -- MARS Client Compliance Statements
  --***************************************************************

  marsClientCompliance MODULE-COMPLIANCE
      STATUS  current
      DESCRIPTION
          "The compliance statement for entities that are required
           for the management of MARS clients."
      MODULE
          MANDATORY-GROUPS {
           marsClientGroup
          }

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

      OBJECT marsClientDefaultMarsAddr



Chung & Greene              Standards Track                    [Page 61]

RFC 2417                     Multicast MIB                September 1998


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

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

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

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

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


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

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

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

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

      OBJECT marsClientJoinLeaveRetrInterval
      MIN-ACCESS read-only
      DESCRIPTION



Chung & Greene              Standards Track                    [Page 62]

RFC 2417                     Multicast MIB                September 1998


        "Write access is not required."

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

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

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

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

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

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

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

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

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

      OBJECT marsClientVcCtrlType



Chung & Greene              Standards Track                    [Page 63]

RFC 2417                     Multicast MIB                September 1998


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

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

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

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

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

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

      ::= { marsClientCompliances 1 }

  marsClientGroup OBJECT-GROUP
      OBJECTS {
          marsClientAddr,
          marsClientDefaultMarsAddr,
          marsClientHsn,
          marsClientRegistration,
          marsClientCmi,
          marsClientDefaultMtu,
          marsClientFailureTimer,
          marsClientRetranDelayTimer,
          marsClientRdmMulReqAddRetrTimer,
          marsClientRdmVcRevalidateTimer,
          marsClientJoinLeaveRetrInterval,
          marsClientJoinLeaveRetrLimit,
          marsClientRegWithMarsRdmTimer,
          marsClientForceWaitTimer,
          marsClientIdleTimer,



Chung & Greene              Standards Track                    [Page 64]

RFC 2417                     Multicast MIB                September 1998


          marsClientLmtToMissRedirMapTimer,
          marsClientRowStatus,
          marsClientMcGrpRowStatus,
          marsClientBackupMarsRowStatus,
          marsClientVcPartyAddrType,
          marsClientVcType,
          marsClientVcCtrlType,
          marsClientVcIdleTimer,
          marsClientVcRevalidate,
          marsClientVcEncapsType,
          marsClientVcNegotiatedMtu,
          marsClientVcRowStatus,
          marsClientStatTxReqMsgs,
          marsClientStatTxJoinMsgs,
          marsClientStatTxLeaveMsgs,
          marsClientStatTxGrpLstReqMsgs,
          marsClientStatRxJoinMsgs,
          marsClientStatRxLeaveMsgs,
          marsClientStatRxMultiMsgs,
          marsClientStatRxNakMsgs,
          marsClientStatRxGrpLstRplyMsgs,
          marsClientStatRxMigrateMsgs,
          marsClientStatFailMultiMsgs
         }
      STATUS  current
      DESCRIPTION
          "A collection of objects to be implemented in a MIB
           for the management of MARS clients."
      ::= { marsClientGroups 1 }

  --***************************************************************
  -- MARS Server Compliance Statements
  --***************************************************************

  marsServerCompliance MODULE-COMPLIANCE
      STATUS  current
      DESCRIPTION
          "The compliance statement for entities that are required
           for the management of MARS servers."
      MODULE -- this module
          MANDATORY-GROUPS {
           marsServerGroup,
           marsServerEventGroup
          }

      OBJECT marsAddr
      MIN-ACCESS read-only
      DESCRIPTION



Chung & Greene              Standards Track                    [Page 65]

RFC 2417                     Multicast MIB                September 1998


        "Write access is not required."

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

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

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

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

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

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

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

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

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

      OBJECT marsMcGrpRowStatus



Chung & Greene              Standards Track                    [Page 66]

RFC 2417                     Multicast MIB                September 1998


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

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

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

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

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

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

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

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

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

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



Chung & Greene              Standards Track                    [Page 67]

RFC 2417                     Multicast MIB                September 1998


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

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

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

      ::= { marsServerCompliances 1 }

  marsServerGroup OBJECT-GROUP
        OBJECTS {
          marsAddr,
          marsLocal,
          marsServStatus,
          marsServType,
          marsServPriority,
          marsRedirMapMsgTimer,
          marsCsn,
          marsSsn,
          marsRowStatus,
          marsMcGrpAddrUsage,
          marsMcGrpRxLayer3GrpSets,
          marsMcGrpRxLayer3GrpResets,
          marsMcGrpRowStatus,
          marsHostMapRowType,
          marsHostMapRowStatus,
          marsServerMapRowType,
          marsServerMapRowStatus,
          marsVcPartyAddrType,
          marsVcType,
          marsVcCtrlType,
          marsVcIdleTimer,
          marsVcCmi,
          marsVcEncapsType,
          marsVcNegotiatedMtu,
          marsVcRowStatus,
          marsRegClientAtmAddr,
          marsRegMcsAtmAddr,
          marsStatTxMultiMsgs,
          marsStatTxGrpLstRplyMsgs,



Chung & Greene              Standards Track                    [Page 68]

RFC 2417                     Multicast MIB                September 1998


          marsStatTxRedirectMapMsgs,
          marsStatTxMigrateMsgs,
          marsStatTxNakMsgs,
          marsStatTxJoinMsgs,
          marsStatTxLeaveMsgs,
          marsStatTxSjoinMsgs,
          marsStatTxSleaveMsgs,
          marsStatTxMservMsgs,
          marsStatTxUnservMsgs,
          marsStatRxReqMsgs,
          marsStatRxGrpLstReqMsgs,
          marsStatRxJoinMsgs,
          marsStatRxLeaveMsgs,
          marsStatRxMservMsgs,
          marsStatRxUnservMsgs,
          marsStatRxBlkJoinMsgs,
          marsStatRegMemGroups,
          marsStatRegMcsGroups
         }
      STATUS  current
      DESCRIPTION
          "A collection of objects to be implemented in a MIB
           for the management of MARS servers."
      ::= { marsServerGroups 1 }

  marsServerEventGroup NOTIFICATION-GROUP
      NOTIFICATIONS { marsFaultTrap }
      STATUS  current
      DESCRIPTION
          "A collection of events that can be generated from
           a MARS server."
      ::= { marsServerGroups 2 }

  --***************************************************************
  -- MARS Multicast Server (MCS) Compliance Statements
  --***************************************************************

  marsMcsCompliance MODULE-COMPLIANCE
      STATUS  current
      DESCRIPTION
          "The compliance statement for entities that are required
           for the management of MARS multicast servers (MCS)."
      MODULE
          MANDATORY-GROUPS {
           marsMcsGroup
          }

      OBJECT marsMcsAddr



Chung & Greene              Standards Track                    [Page 69]

RFC 2417                     Multicast MIB                September 1998


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

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

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

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

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

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

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

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

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

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



Chung & Greene              Standards Track                    [Page 70]

RFC 2417                     Multicast MIB                September 1998


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

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

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

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

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

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

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

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

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

      OBJECT marsMcsVcCtrlType
      MIN-ACCESS read-only
      DESCRIPTION



Chung & Greene              Standards Track                    [Page 71]

RFC 2417                     Multicast MIB                September 1998


        "Write access is not required."

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

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

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

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

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

      ::= { marsMcsCompliances 1 }

  marsMcsGroup OBJECT-GROUP
      OBJECTS {
          marsMcsAddr,
          marsMcsDefaultMarsAddr,
          marsMcsRegistration,
          marsMcsSsn ,
          marsMcsDefaultMtu,
          marsMcsFailureTimer,
          marsMcsRetranDelayTimer,
          marsMcsRdmMulReqAddRetrTimer,
          marsMcsRdmVcRevalidateTimer,
          marsMcsRegisterRetrInterval,
          marsMcsRegisterRetrLimit,
          marsMcsRegWithMarsRdmTimer,
          marsMcsForceWaitTimer,
          marsMcsIdleTimer,
          marsMcsLmtToMissRedirMapTimer,
          marsMcsRowStatus,
          marsMcsMcGrpRowStatus,



Chung & Greene              Standards Track                    [Page 72]

RFC 2417                     Multicast MIB                September 1998


          marsMcsVcPartyAddrType,
          marsMcsBackupMarsRowStatus,
          marsMcsVcType,
          marsMcsVcCtrlType,
          marsMcsVcIdleTimer,
          marsMcsVcRevalidate,
          marsMcsVcEncapsType,
          marsMcsVcNegotiatedMtu,
          marsMcsVcRowStatus,
          marsMcsStatTxReqMsgs,
          marsMcsStatTxMservMsgs,
          marsMcsStatTxUnservMsgs,
          marsMcsStatRxMultiMsgs,
          marsMcsStatRxSjoinMsgs,
          marsMcsStatRxSleaveMsgs,
          marsMcsStatRxNakMsgs,
          marsMcsStatRxMigrateMsgs,
          marsMcsStatFailMultiMsgs
         }
      STATUS  current
      DESCRIPTION
          "A collection of objects to be implemented in a MIB
           for the management of MARS multicast servers (MCS)."
      ::= { marsMcsGroups 1 }

     END

4.  Acknowledgments

  This document is a product of the IETF's Internetworking Over NBMA
  Networks (ion) Working Group. The original work of the MARS MIB
  developement was sponsored by Science Applications International
  Corporation (SAIC).

  The author would like to recognize Grenville Armitage (Bellcore), Ken
  Carlberg (SAIC), Ramesh Uppuluri (Fore Systems), and Radha Gowda
  SYNNET), and Bill Willcox (Fujitsu Nexion) for their support and
  comments in completing the MARS MIB. Also thanks to Bert Wijnen (IBM)
  for his thorough review of the MARS MIB.

5.  References

  [1]  Armitage, G., "Support for Multicast over UNI 3.0/3.1
       based ATM Networks", RFC 2022, November 1996.







Chung & Greene              Standards Track                    [Page 73]

RFC 2417                     Multicast MIB                September 1998


  [2]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
       Waldbusser, "Structure of Management Information for Version 2
       of the Simple Network Management Protocol (SNMPv2)", RFC 1902,
       January 1996.

  [3]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
       Waldbusser, "Textual Conventions for Version 2 of the of the
       Simple Network Management Protocol (SNMPv2)", RFC 1903, January
       1996.

  [4]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
       Waldbusser, "Conformance Statements for Version 2 of the of the
       Simple Network Management Protocol (SNMPv2)", RFC 1904, January
       1996.

  [5]  Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple
       Network Management Protocol", STD 15, RFC 1157, May 1990.

  [6]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
       Waldbusser, "Protocol Operations for Version 2 of the Simple
       Network Management Protocol (SNMPv2)", RFC 1905, January 1996.

  [7]  McCloghrie, K., and M. Rose, Editors, "Management Information
       Base for Network Management of TCP/IP-based internets: MIB-II",
       STD 17, RFC 1213, March 1991.

  [8]  SNMPv3 Working Group, Blumenthal, U., and B. Wijnen, "User-based
       Security Model (USM) for version 3 of Simple Network Management
       Protocol (SNMPv3)", RFC 2274, January 1998.

  [9]  SNMPv3 Working Group, Wijnen, B., Presuhn, R., and K.
       McCloghire, "View-based Access Control Model (VACM) for the
       Simple Network Management Protocol (SNMP)", RFC 2275, January
       1998.

















Chung & Greene              Standards Track                    [Page 74]

RFC 2417                     Multicast MIB                September 1998


6.  Security Considerations

  There are a number of management objects defined in this MIB that
  have a MAX-ACCESS clause of read-write and/or read-create. Such
  object 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.

  SNMPv1 by itself is such an insecure environment. 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 SET
  (change/create/delete) the objects in this MIB.

  It is recommended that the implementers consider the security
  features as provided by the SNMPv3 framework. Specifically, the use
  of the User-based Security Model RFC 2274 [8] and the View-based
  Access Control Model RFC 2275 [9] is recommended.

  It is then a customer/user responsibility to ensure that the SNMP
  entity giving access to this MIB, is properly configured to give
  access to those objects only to those principals (users) that have a
  legitimate rights to indeed SET (change/create/delete) them.

  Note: read-access in fact may also need access-control.

7.  Authors' Addresses

  Chris Chung
  Independent Consultant

  EMail: [email protected]


  Maria Greene (editor)
  Independent Contractor

  EMail: [email protected]













Chung & Greene              Standards Track                    [Page 75]

RFC 2417                     Multicast MIB                September 1998


8.  Full Copyright Statement

  Copyright (C) The Internet Society (1998).  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 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.
























Chung & Greene              Standards Track                    [Page 76]