IDMR Working Group Dave Thaler INTERNET-DRAFT University of Michigan Expires December 1995 6 June 1995 Distance-Vector Multicast Routing Protocol MIB Status of this Memo This document is an Internet-Draft. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." 1. Introduction This memo defines an experimental portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes managed objects used for managing the Distance-Vector Multicast Routing Protocol (DVMRP) protocol [5]. This MIB module is applicable to IP multicast routers which implement DVMRP. Expires 6 December 1995 [Page 1] Draft DVMRP MIB March 1995 2. The SNMPv2 Network Management Framework The SNMPv2 Network Management Framework consists of four major com- ponents. They are: o RFC 1442 [1] which defines the SMI, the mechanisms used for describing and naming objects for the purpose of management. o STD 17, RFC 1213 [2] defines MIB-II, the core set of managed objects for the Internet suite of protocols. o RFC 1445 [3] which defines the administrative and other architectural aspects of the framework. o RFC 1448 [4] which defines the protocol used for network access to managed objects. The Framework permits new objects to be defined for the purpose of experimentation and evaluation. 2.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 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 refer to the object type. 3. Overview This MIB module contains two scalars and five tables. The tables are: (1) the DVMRP Virtual Interface Table which contains one row for each of the router's DVMRP virtual interfaces; (2) the DVMRP Neighbor Table which contains one row for each of the router's DVMRP neighbors; and (3) the DVMRP Route Table which contains one row for each subnet in the routing table; (4) the DVMRP Routing Next Hop Table containing information on the next hops for the routing IP multicast datagrams. Each entry Expires 6 December 1995 [Page 2] Draft DVMRP MIB March 1995 is one of a list of next hops on outgoing virtual interfaces for a particular subnet origin; (5) the DVMRP Boundary Table which contains one row for each administrative boundary. This should soon be moved to the IP Multicast Routing MIB. 4. Revision History 6 June (1) updated dvmrpMIB with IANA-assigned OID (2) added dvmrpVInterfaceInOctets and dvmrpVInterfaceOutOctets (3) added subnet(4) to dvmrpVInterfaceType (4) modified dvmrpNeighborTable to be INDEX-ed by dvmrpNeighborVifIndex and dvmrpNeighborAddress (5) added dvmrpRouteTable and dvmrpRouteNextHopTable 23 March - initial version. Expires 6 December 1995 [Page 3] Draft DVMRP MIB March 1995 5. Definitions DVMRP-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, experimental, Integer32, Counter32, IpAddress, TimeTicks FROM SNMPv2-SMI DisplayString FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF; dvmrpMIB MODULE-IDENTITY LAST-UPDATED "9503231256Z" ORGANIZATION "IETF IDMR Working Group." CONTACT-INFO " Dave Thaler University of Michigan 1301 Beal Ave. Ann Arbor, MI 48109-2122 EMail: thalerd@eecs.umich.edu" DESCRIPTION "The MIB module for management of DVMRP routers." ::= { experimental 62 } dvmrpMIBObjects OBJECT IDENTIFIER ::= { dvmrpMIB 1 } dvmrp OBJECT IDENTIFIER ::= { dvmrpMIBObjects 1 } dvmrpVersion OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The router's version number." ::= { dvmrp 1 } dvmrpGenerationId OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The generation identifier for the routing process. This is used by neighboring routers to detect whether pruning information should be resent." ::= { dvmrp 2 } -- The DVMRP Virtual Interface Table Expires 6 December 1995 [Page 4] Draft DVMRP MIB March 1995 dvmrpVInterfaceTable OBJECT-TYPE SYNTAX SEQUENCE OF DvmrpVInterfaceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The (conceptual) table listing the router's DVMRP virtual interfaces." ::= { dvmrp 3 } dvmrpVInterfaceEntry OBJECT-TYPE SYNTAX DvmrpVInterfaceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in the dvmrpVInterfaceTable." INDEX { dvmrpVInterfaceVifIndex } ::= { dvmrpVInterfaceTable 1 } DvmrpVInterfaceEntry ::= SEQUENCE { dvmrpVInterfaceVifIndex Integer32, dvmrpVInterfaceType INTEGER, dvmrpVInterfaceState INTEGER, dvmrpVInterfaceLocalAddress IpAddress, dvmrpVInterfaceRemoteAddress IpAddress, dvmrpVInterfaceRemoteSubnetMask IpAddress, dvmrpVInterfaceMetric Integer32, dvmrpVInterfaceRateLimit Integer32, dvmrpVInterfaceInPkts Counter32, dvmrpVInterfaceOutPkts Counter32, dvmrpVInterfaceInOctets Counter32, dvmrpVInterfaceOutOctets Counter32 } dvmrpVInterfaceVifIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The ifIndex value of this DVMRP virtual interface." ::= { dvmrpVInterfaceEntry 1 } dvmrpVInterfaceType OBJECT-TYPE SYNTAX INTEGER { tunnel(1), srcrt(2), querier(3), subnet(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of this DVMRP virtual interface, whether it uses a tunnel, source routing, a physical interface for which Expires 6 December 1995 [Page 5] Draft DVMRP MIB March 1995 we are a querier, or a physical interface for which we are not a querier." ::= { dvmrpVInterfaceEntry 2 } dvmrpVInterfaceState OBJECT-TYPE SYNTAX INTEGER { up(1), down(2), disabled(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The state of this DVMRP virtual interface." ::= { dvmrpVInterfaceEntry 3 } dvmrpVInterfaceLocalAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of the local end of this DVMRP virtual interface." ::= { dvmrpVInterfaceEntry 4 } dvmrpVInterfaceRemoteAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of the remote end of this DVMRP virtual interface. For a tunnel (including source routed), this is the IP address of the neighboring router. For a subnet (querier), this is the subnet address." ::= { dvmrpVInterfaceEntry 5 } dvmrpVInterfaceRemoteSubnetMask OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The subnet mask for a directly connected subnet. For a tunnel, this should be 0.0.0.0." ::= { dvmrpVInterfaceEntry 6 } dvmrpVInterfaceMetric OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The distance metric this DVMRP virtual interface which is used to calculate distance vectors." Expires 6 December 1995 [Page 6] Draft DVMRP MIB March 1995 ::= { dvmrpVInterfaceEntry 7 } dvmrpVInterfaceRateLimit OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The rate-limit, in kilobits per second, of forwarded multicast traffic on the DVMRP virtual interface." ::= { dvmrpVInterfaceEntry 8 } dvmrpVInterfaceInPkts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of packets that have arrived on the DVMRP virtual interface." ::= { dvmrpVInterfaceEntry 9 } dvmrpVInterfaceOutPkts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of packets that have been sent on the DVMRP virtual interface." ::= { dvmrpVInterfaceEntry 10 } dvmrpVInterfaceInOctets OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of octets that have arrived on the DVMRP virtual interface." ::= { dvmrpVInterfaceEntry 11 } dvmrpVInterfaceOutOctets OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of octets that have been sent on the DVMRP virtual interface." ::= { dvmrpVInterfaceEntry 12 } Expires 6 December 1995 [Page 7] Draft DVMRP MIB March 1995 -- The DVMRP Neighbor Table dvmrpNeighborTable OBJECT-TYPE SYNTAX SEQUENCE OF DvmrpNeighborEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The (conceptual) table listing the router's DVMRP neighbors." ::= { dvmrp 4 } dvmrpNeighborEntry OBJECT-TYPE SYNTAX DvmrpNeighborEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in the dvmrpNeighborTable." INDEX { dvmrpNeighborVifIndex, dvmrpNeighborAddress } ::= { dvmrpNeighborTable 1 } DvmrpNeighborEntry ::= SEQUENCE { dvmrpNeighborVifIndex Integer32, dvmrpNeighborAddress IpAddress, dvmrpNeighborUpTime TimeTicks, dvmrpNeighborExpiryTime TimeTicks, dvmrpNeighborVersion DisplayString, dvmrpNeighborGenerationId Integer32 } dvmrpNeighborVifIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The value of VifIndex for the virtual interface used to reach this DVMRP neighbor." ::= { dvmrpNeighborEntry 1 } dvmrpNeighborAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The IP address of the DVMRP neighbor for which this entry contains information." ::= { dvmrpNeighborEntry 2 } dvmrpNeighborUpTime OBJECT-TYPE Expires 6 December 1995 [Page 8] Draft DVMRP MIB March 1995 SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The time since this DVMRP neighbor (last) became a neighbor of the local router." ::= { dvmrpNeighborEntry 3 } dvmrpNeighborExpiryTime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The minimum time remaining before this DVMRP neighbor will be aged out." ::= { dvmrpNeighborEntry 4 } dvmrpNeighborVersion OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The neighoring router's version number." ::= { dvmrpNeighborEntry 5 } dvmrpNeighborGenerationId OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The neighboring router's generation identifier." ::= { dvmrpNeighborEntry 6 } -- The DVMRP Route Table dvmrpRouteTable OBJECT-TYPE SYNTAX SEQUENCE OF DvmrpRouteEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The routing table used by DVMRP in place of the unicast routing table." ::= { dvmrp 5 } dvmrpRouteEntry OBJECT-TYPE SYNTAX DvmrpRouteEntry MAX-ACCESS not-accessible Expires 6 December 1995 [Page 9] Draft DVMRP MIB March 1995 STATUS current DESCRIPTION "An entry (conceptual row) containing the multicast routing information used by DVMRP in place of the unicast routing information." INDEX { dvmrpRouteSource, dvmrpRouteSourceMask } ::= { dvmrpRouteTable 1 } DvmrpRouteEntry ::= SEQUENCE { dvmrpRouteSource IpAddress, dvmrpRouteSourceMask IpAddress, dvmrpRouteUpstreamNeighbor IpAddress, dvmrpRouteVifIndex Integer32, dvmrpRouteMetric Integer32, dvmrpRouteExpiryTime TimeTicks } dvmrpRouteSource OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The network address which when combined with the corresponding value of dvmrpRouteSourceMask identifies the sources for which this entry contains multicast routing information." ::= { dvmrpRouteEntry 1 } dvmrpRouteSourceMask OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The network mask which when combined with the corresponding value of dvmrpRouteSource identifies the sources for which this entry contains multicast routing information." ::= { dvmrpRouteEntry 2 } dvmrpRouteUpstreamNeighbor OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The address of the upstream neighbor (e.g., RPF neighbor) from which IP datagrams from these sources are received." ::= { dvmrpRouteEntry 3 } dvmrpRouteVifIndex OBJECT-TYPE Expires 6 December 1995 [Page 10] Draft DVMRP MIB March 1995 SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The value of dvmrpVInterfaceVifIndex for the virtual interface on which IP datagrams sent by these sources are received." ::= { dvmrpRouteEntry 4 } dvmrpRouteMetric OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The distance in hops to the source subnet." ::= { dvmrpRouteEntry 5 } dvmrpRouteExpiryTime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The minimum amount of time remaining before this entry will be aged out." ::= { dvmrpRouteEntry 6 } -- The DVMRP Routing Next Hop Table dvmrpRouteNextHopTable OBJECT-TYPE SYNTAX SEQUENCE OF DvmrpRouteNextHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The (conceptual) table containing information on the next hops on outgoing interfaces for routing IP multicast datagrams." ::= { dvmrp 6 } dvmrpRouteNextHopEntry OBJECT-TYPE SYNTAX DvmrpRouteNextHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in the list of next hops on outgoing interfaces to which IP multicast datagrams from particular sources are routed." INDEX { dvmrpRouteNextHopSource, dvmrpRouteNextHopSourceMask, dvmrpRouteNextHopVifIndex } Expires 6 December 1995 [Page 11] Draft DVMRP MIB March 1995 ::= { dvmrpRouteNextHopTable 1 } DvmrpRouteNextHopEntry ::= SEQUENCE { dvmrpRouteNextHopSource IpAddress, dvmrpRouteNextHopSourceMask IpAddress, dvmrpRouteNextHopVifIndex Integer32, dvmrpRouteNextHopType INTEGER } dvmrpRouteNextHopSource OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The network address which when combined with the corresponding value of dvmrpRouteNextHopSourceMask identifies the sources for which this entry specifies a next hop on an outgoing interface." ::= { dvmrpRouteNextHopEntry 1 } dvmrpRouteNextHopSourceMask OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The network mask which when combined with the corresponding value of dvmrpRouteNextHopSource identifies the sources for which this entry specifies a next hop on an outgoing interface." ::= { dvmrpRouteNextHopEntry 2 } dvmrpRouteNextHopVifIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The dvmrpVInterfaceVifIndex value of the virtual interface for the outgoing interface for this next hop." ::= { dvmrpRouteNextHopEntry 3 } dvmrpRouteNextHopType OBJECT-TYPE SYNTAX INTEGER { leaf(1), branch(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "Type is leaf if no neighbors exist on the outgoing virtual interface. Otherwise, type is branch." ::= { dvmrpRouteNextHopEntry 4 } Expires 6 December 1995 [Page 12] Draft DVMRP MIB March 1995 -- The DVMRP Boundary Table dvmrpBoundaryTable OBJECT-TYPE SYNTAX SEQUENCE OF DvmrpBoundaryEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The (conceptual) table listing the router's DVMRP virtual interface boundaries." ::= { dvmrp 7 } dvmrpBoundaryEntry OBJECT-TYPE SYNTAX DvmrpBoundaryEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in the dvmrpVInterfaceTable." INDEX { dvmrpBoundaryVifIndex, dvmrpBoundaryAddress, dvmrpBoundaryAddressMask } ::= { dvmrpBoundaryTable 1 } DvmrpBoundaryEntry ::= SEQUENCE { dvmrpBoundaryVifIndex Integer32, dvmrpBoundaryAddress IpAddress, dvmrpBoundaryAddressMask IpAddress } dvmrpBoundaryVifIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The VifIndex value of the DVMRP virtual interface to which this boundary applies. Packets with a destination address in the associated address/mask range will not be forwarded out this virtual interface." ::= { dvmrpBoundaryEntry 1 } dvmrpBoundaryAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The group address of the scoped boundary." ::= { dvmrpBoundaryEntry 2 } dvmrpBoundaryAddressMask OBJECT-TYPE SYNTAX IpAddress Expires 6 December 1995 [Page 13] Draft DVMRP MIB March 1995 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The group address mask of the scoped boundary." ::= { dvmrpBoundaryEntry 3 } Expires 6 December 1995 [Page 14] Draft DVMRP MIB March 1995 -- conformance information dvmrpMIBConformance OBJECT IDENTIFIER ::= { dvmrpMIB 2 } dvmrpMIBCompliances OBJECT IDENTIFIER ::= { dvmrpMIBConformance 1 } dvmrpMIBGroups OBJECT IDENTIFIER ::= { dvmrpMIBConformance 2 } -- compliance statements dvmrpMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for the DVMRP MIB." MODULE -- this module MANDATORY-GROUPS { dvmrpMIBGroup } ::= { dvmrpMIBCompliances 1 } -- units of conformance dvmrpMIBGroup OBJECT-GROUP OBJECTS { dvmrpVersion, dvmrpGenerationId, dvmrpVInterfaceType, dvmrpVInterfaceState, dvmrpVInterfaceLocalAddress, dvmrpVInterfaceRemoteAddress, dvmrpVInterfaceRemoteSubnetMask, dvmrpVInterfaceMetric, dvmrpVInterfaceRateLimit, dvmrpVInterfaceInPkts, dvmrpVInterfaceOutPkts, dvmrpVInterfaceInOctets, dvmrpVInterfaceOutOctets, dvmrpNeighborUpTime, dvmrpNeighborExpiryTime, dvmrpNeighborVersion, dvmrpNeighborGenerationId, dvmrpRouteUpstreamNeighbor, dvmrpRouteVifIndex, dvmrpRouteMetric, dvmrpRouteExpiryTime, dvmrpRouteNextHopType, dvmrpBoundaryVifIndex } STATUS current DESCRIPTION "A collection of objects to support management of DVMRP routers." ::= { dvmrpMIBGroups 1 } END 6. Acknowledgements Expires 6 December 1995 [Page 15] Draft DVMRP MIB March 1995 This MIB module will be presented to the IETF's Inter-Domain Multicast Routing (IDMR) Working Group. 7. References [1] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Structure of Management Information for version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1442, SNMP Research,Inc., Hughes LAN Systems, Dover Beach Consulting, Inc., Carnegie Mellon University, April 1993. [2] McCloghrie, K., and M. Rose, Editors, "Management Information Base for Network Management of TCP/IP-based internets: MIB-II", STD 17, RFC 1213, Hughes LAN Systems, Performance Systems International, March 1991. [3] Galvin, J., and K. McCloghrie, "Administrative Model for version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1445, Trusted Information Systems, Hughes LAN Systems, April 1993. [4] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Protocol Operations for version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1448, SNMP Research,Inc., Hughes LAN Systems, Dover Beach Consulting, Inc., Carnegie Mellon University, April 1993. [5] Waitzman, D., Partridge, C., and S.E. Deering, "Distance Vector Multicast Routing Protocol", RFC 1075, Bolt Beranek and Newman, Stanford University, November 1988. 8. Security Considerations Security considerations ane not discussed in this memo. 9. Author's Address Dave Thaler Department of Electrical Engineering and Computer Science University of Michigan 1301 Beal Ave. Ann Arbor, MI 48109-2122 Phone: (313) 763-5243 EMail: thalerd@eecs.umich.edu Expires 6 December 1995 [Page 16] Draft DVMRP MIB March 1995 Table of Contents 1 Introduction .................................................... 1 2 The SNMPv2 Network Management Framework ......................... 2 2.1 Object Definitions ............................................ 2 3 Overview ........................................................ 2 4 Revision History ................................................ 3 5 Definitions ..................................................... 4 6 Acknowledgements ................................................ 15 7 References ...................................................... 16 8 Security Considerations ......................................... 16 9 Author's Address ................................................ 16 Expires 6 December 1995 [Page 17]