Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 Management Information Base for IP Version 6: UDP and TCP Groups Mon Mar 24 09:49:16 EST 1997 Dimitry Haskin Steve Onishi Bay Networks, Inc. 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. Internet-Drafts may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet-Drafts as reference material or to cite them other than as a ``working draft'' or ``work in progress.'' To learn the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US West Coast). Abstract This document is one in the series of documents that define various MIB object groups for IPv6. Specifically, the UDP and TCP groups are defined in this document. This memo defines an experimental portion of the Management Expires September 1997 [Page 1] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 Information Base (MIB) for use with network management protocols in the IPv6-based internets. This document specifies a MIB module in a manner that is both compliant to the SNMPv2 SMI, and semantically identical to the peer SNMPv1 definitions. Table of Contents 1. The SNMPv2 Network Management Framework ............. 3 1.1 Object Definitions ................................ 3 2. Overview ............................................ 4 3. The UDP Group ....................................... 5 4. The TCP Group ....................................... 9 5. Acknowledgments .................................... 18 6. References .......................................... 18 7. Security Considerations ............................. 19 8. Authors' Addresses................................... 19 Expires September 1997 [Page 2] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 1. The SNMPv2 Network Management Framework The SNMPv2 Network Management Framework presently consists of three major components. They are: o the SMI, described in RFC 1902 [1] - the mechanisms used for describing and naming objects for the purpose of management. o the MIB-II, described in RFC 1213/STD 17 [3] - the core set of managed objects for the Internet suite of protocols. o RFC 1157 [4] and RFC 1905 [5] which define two versions of the protocol used for network access to managed objects. 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 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. Expires September 1997 [Page 3] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 2. Overview This document is the one in the series of documents that define various MIB object groups for IPv6. These groups are the basic unit of conformance: if the semantics of a group is applicable to an implementation, then it must implement all objects in that group. For example, an implementation must implement the TCP group if and only if it implements the TCP over IPv6 protocol. This document defines the UDP and TCP groups of the IPv6 MIB. Expires September 1997 [Page 4] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 3. The UDP Group IPV6-UDP-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Counter32, Unsigned32 FROM SNMPv2-SMI ipv6, Ipv6Address FROM IPV6-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF ipv6IfIndex FROM IPV6-MIB; -- [8] ipv6UdpMIB MODULE-IDENTITY LAST-UPDATED "9703222155Z" ORGANIZATION "IETF IPv6 MIB Working Group" CONTACT-INFO " Dimitry Haskin Postal: Bay Networks, Inc. 2 Federal St. Billerica, MA 01821 US Tel: +1-508-916-8124 E-mail: dhaskin@baynetworks.com Steve Onishi Postal: Bay Networks, Inc. 3 Federal Street Billerica, MA 01821 US Tel: +1-508-916-3816 E-mail: sonishi@baynetworks.com" DESCRIPTION "The MIB module for entities implementing UDP over IPv6." ::= { ipv6 3} -- the UDP group ipv6UdpMIBObjects OBJECT IDENTIFIER ::= { ipv6UdpMIB 1 } Expires September 1997 [Page 5] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 ipv6UdpInDatagrams OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of UDP datagrams delivered to UDP users." ::= { ipv6UdpMIBObjects 1 } ipv6UdpNoPorts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of received UDP datagrams for which there was no application at the destination port." ::= { ipv6UdpMIBObjects 2 } ipv6UdpInErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of received UDP datagrams that could not be delivered for reasons other than the lack of an application at the destination port." ::= { ipv6UdpMIBObjects 3 } ipv6UdpOutDatagrams OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of UDP datagrams sent from this entity." ::= { ipv6UdpMIBObjects 4 } ipv6UdpTable OBJECT-TYPE SYNTAX SEQUENCE OF Ipv6UdpEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The UDP listener table contains information Expires September 1997 [Page 6] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 about this entity's UDP end-points on which a local application is currently accepting datagrams." ::= { ipv6UdpMIBObjects 5 } ipv6UdpEntry OBJECT-TYPE SYNTAX Ipv6UdpEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a particular current UDP listener." INDEX { ipv6IfIndex, ipv6UdpLocalAddress, ipv6UdpLocalPort } ::= { ipv6UdpTable 1 } Ipv6UdpEntry ::= SEQUENCE { ipv6UdpLocalAddress Ipv6Address, ipv6UdpLocalPort Unsigned32 } ipv6UdpLocalAddress OBJECT-TYPE SYNTAX Ipv6Address MAX-ACCESS not-accessible STATUS current DESCRIPTION "The local IPv6 address for this UDP listener. In the case of a UDP listener which is willing to accept datagrams for any IPv6 address associated with the interface, the value ::0 is used." ::= { ipv6UdpEntry 1 } ipv6UdpLocalPort OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The local port number for this UDP listener." ::= { ipv6UdpEntry 2 } -- conformance information Expires September 1997 [Page 7] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 ipv6UdpConformance OBJECT IDENTIFIER ::= { ipv6UdpMIB 2 } ipv6UdpCompliances OBJECT IDENTIFIER ::= { ipv6UdpConformance 1 } ipv6UdpGroups OBJECT IDENTIFIER ::= { ipv6UdpConformance 2 } -- compliance statements ipv6UdpCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for SNMPv2 entities which implement UDP over IPv6." MODULE -- this module GROUP ipv6UdpGroup DESCRIPTION "This group is mandatory for all entities which implement UDP over IPv6." ::= { ipv6UdpCompliances 1 } ipv6UdpGroup OBJECT-GROUP OBJECTS { ipv6UdpInDatagrams, ipv6UdpNoPorts, ipv6UdpInErrors, ipv6UdpOutDatagrams, ipv6UdpLocalPort } STATUS current DESCRIPTION "The UDP group of objects providing information specific to UDP over IPv6." ::= { ipv6UdpGroups 1 } END Expires September 1997 [Page 8] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 4. The TCP Group IPV6-TCP-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Gauge32, Counter32, Integer32 FROM SNMPv2-SMI ipv6, Ipv6Address FROM IPV6-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF ipv6IfIndex FROM IPV6-MIB; ipv6TcpMIB MODULE-IDENTITY LAST-UPDATED "9610042155Z" ORGANIZATION "IETF IPv6 MIB Working Group" CONTACT-INFO " Dimitry Haskin Postal: Bay Networks, Inc. 2 Federal St. Billerica, MA 01821 US Tel: +1-508-916-8124 E-mail: dhaskin@baynetworks.com Steve Onishi Postal: Bay Networks, Inc. 3 Federal Street Billerica, MA 01821 US Tel: +1-508-916-3816 E-mail: sonishi@baynetworks.com" DESCRIPTION "The MIB module for entities implementing TCP over IPv6." ::= { ipv6 4} -- the TCPv6 group ipv6TcpMIBObjects OBJECT IDENTIFIER ::= { ipv6TcpMIB 1 } Expires September 1997 [Page 9] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 -- Note that instances of object types that represent -- information about a particular TCP connection are -- transient; they persist only as long as the connection -- in question. ipv6TcpRtoAlgorithm OBJECT-TYPE SYNTAX INTEGER { other(1), -- none of the following constant(2), -- a constant rto rsre(3), -- MIL-STD-1778, Appendix B vanj(4) -- Van Jacobson's algorithm [9] } MAX-ACCESS read-only STATUS current DESCRIPTION "The algorithm used to determine the timeout value used for retransmitting unacknowledged octets." ::= { ipv6TcpMIBObjects 1 } ipv6TcpRtoMin OBJECT-TYPE SYNTAX Unsigned32 UNITS "milliseconds" MAX-ACCESS read-only STATUS current DESCRIPTION "The minimum value permitted by a TCP implementation for the retransmission timeout, measured in milliseconds. More refined semantics for objects of this type depend upon the algorithm used to determine the retransmission timeout. In particular, when the timeout algorithm is rsre(3), an object of this type has the semantics of the LBOUND quantity described in RFC 793." ::= { ipv6TcpMIBObjects 2 } ipv6TcpRtoMax OBJECT-TYPE SYNTAX Unsigned32 UNITS "milliseconds" MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum value permitted by a TCP implementation for the retransmission timeout, measured in milliseconds. More refined semantics Expires September 1997 [Page 10] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 for objects of this type depend upon the algorithm used to determine the retransmission timeout. In particular, when the timeout algorithm is rsre(3), an object of this type has the semantics of the UBOUND quantity described in RFC 793." ::= { ipv6TcpMIBObjects 3 } ipv6TcpMaxConn OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The limit on the total number of TCP connections the entity can support. In entities where the maximum number of connections is dynamic, this object should contain the value -1." ::= { ipv6TcpMIBObjects 4 } ipv6TcpActiveOpens OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times TCP connections have made a direct transition to the SYN-SENT state from the CLOSED state." ::= { ipv6TcpMIBObjects 5 } ipv6TcpPassiveOpens OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times TCP connections have made a direct transition to the SYN-RCVD state from the LISTEN state." ::= { ipv6TcpMIBObjects 6 } ipv6TcpAttemptFails OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times TCP connections have made a direct transition to the CLOSED state from either Expires September 1997 [Page 11] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 the SYN-SENT state or the SYN-RCVD state, plus the number of times TCP connections have made a direct transition to the LISTEN state from the SYN-RCVD state." ::= { ipv6TcpMIBObjects 7 } ipv6TcpEstabResets OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times TCP connections have made a direct transition to the CLOSED state from either the ESTABLISHED state or the CLOSE-WAIT state." ::= { ipv6TcpMIBObjects 8 } ipv6TcpCurrEstab OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of TCP connections for which the current state is either ESTABLISHED or CLOSE- WAIT." ::= { ipv6TcpMIBObjects 9 } ipv6TcpInSegs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of segments received, including those received in error. This count includes segments received on currently established connections." ::= { ipv6TcpMIBObjects 10 } ipv6TcpOutSegs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of segments sent, including those on current connections but excluding those containing only retransmitted octets." Expires September 1997 [Page 12] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 ::= { ipv6TcpMIBObjects 11 } ipv6TcpRetransSegs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of segments retransmitted - that is, the number of TCP segments transmitted containing one or more previously transmitted octets." ::= { ipv6TcpMIBObjects 12 } ipv6TcpInErrs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of segments received in error (e.g., bad TCP checksums)." ::= { ipv6TcpMIBObjects 13 } ipv6TcpOutRsts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of TCP segments sent containing the RST flag." ::= { ipv6TcpMIBObjects 14 } -- the TCPv6 Connection table -- The TCPv6 connection table contains information -- about this entity's existing TCPv6 connections. ipv6TcpConnTable OBJECT-TYPE SYNTAX SEQUENCE OF Ipv6TcpConnEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table containing TCP connection-specific information." ::= { ipv6TcpMIBObjects 15 } Expires September 1997 [Page 13] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 ipv6TcpConnEntry OBJECT-TYPE SYNTAX Ipv6TcpConnEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a particular current TCP connection. An object of this type is transient, in that it ceases to exist when (or soon after) the connection makes the transition to the CLOSED state." INDEX { ipv6IfIndex, ipv6TcpConnLocalAddress, ipv6TcpConnLocalPort, ipv6TcpConnRemAddress, ipv6TcpConnRemPort } ::= { ipv6TcpConnTable 1 } Ipv6TcpConnEntry ::= SEQUENCE { ipv6TcpConnLocalAddress Ipv6Address, ipv6TcpConnLocalPort INTEGER (0..65535), ipv6TcpConnRemAddress Ipv6Address, ipv6TcpConnRemPort INTEGER (0..65535), ipv6TcpConnState INTEGER } ipv6TcpConnLocalAddress OBJECT-TYPE SYNTAX Ipv6Address MAX-ACCESS not-accessible STATUS current DESCRIPTION "The local IPv6 address for this TCP connection. In the case of a connection in the listen state which is willing to accept connections for any IPv6 address associated with the interface, the value ::0 is used." ::= { ipv6TcpConnEntry 1 } ipv6TcpConnLocalPort OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The local port number for this TCP connection." ::= { ipv6TcpConnEntry 2 } Expires September 1997 [Page 14] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 ipv6TcpConnRemAddress OBJECT-TYPE SYNTAX Ipv6Address MAX-ACCESS not-accessible STATUS current DESCRIPTION "The remote IPv6 address for this TCP connection." ::= { ipv6TcpConnEntry 3 } ipv6TcpConnRemPort OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The remote port number for this TCP connection." ::= { ipv6TcpConnEntry 4 } ipv6TcpConnState OBJECT-TYPE SYNTAX INTEGER { closed(1), listen(2), synSent(3), synReceived(4), established(5), finWait1(6), finWait2(7), closeWait(8), lastAck(9), closing(10), timeWait(11), deleteTCB(12) } MAX-ACCESS read-write STATUS current DESCRIPTION "The state of this TCP connection. The only value which may be set by a management station is deleteTCB(12). Accordingly, it is appropriate for an agent to return a `badValue' response if a management station attempts to set this object to any other value. If a management station sets this object to the value deleteTCB(12), then this has the effect of deleting the TCB (as defined in RFC 793) of the Expires September 1997 [Page 15] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 corresponding connection on the managed node, resulting in immediate termination of the connection. As an implementation-specific option, a RST segment may be sent from the managed node to the other TCP endpoint (note however that RST segments are not sent reliably)." ::= { ipv6TcpConnEntry 5 } -- conformance information ipv6TcpConformance OBJECT IDENTIFIER ::= { ipv6TcpMIB 2 } ipv6TcpCompliances OBJECT IDENTIFIER ::= { ipv6TcpConformance 1 } ipv6TcpGroups OBJECT IDENTIFIER ::= { ipv6TcpConformance 2 } -- compliance statements ipv6TcpCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for SNMPv2 entities which implement TCP over IPv6." MODULE -- this module GROUP ipv6TcpGroup DESCRIPTION "This group is mandatory for all entities which implement TCP over IPv6." ::= { ipv6TcpCompliances 1 } ipv6TcpGroup OBJECT-GROUP OBJECTS { ipv6TcpRtoAlgorithm, ipv6TcpRtoMin, ipv6TcpRtoMax, ipv6TcpMaxConn, ipv6TcpActiveOpens, ipv6TcpPassiveOpens, ipv6TcpAttemptFails, ipv6TcpEstabResets, ipv6TcpCurrEstab, ipv6TcpInSegs, ipv6TcpOutSegs, ipv6TcpRetransSegs, Expires September 1997 [Page 16] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 ipv6TcpInErrs, ipv6TcpOutRsts, ipv6TcpConnState } STATUS current DESCRIPTION "The TCP group of objects providing information specific to TCP over IPv6." ::= { ipv6TcpGroups 1 } END Expires September 1997 [Page 17] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 5. Acknowledgments This document borrows from MIB works produced by IETF for IPv4-based internets. 6. References [1] 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. [2] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Textual Conventions for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1903, January 1996. [3] 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. [4] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "A Simple Network Management Protocol (SNMP)", STD 15, RFC 1157, SNMP Research, Performance Systems International, MIT Lab for Computer Science, May 1990. [5] 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. [6] McCloghrie, K. and F. Kastenholz, "Evolution of the Interfaces Group of MIB-II" , RFC 1573, January 1994. [7] Deering, S., and R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", RFC 1883, December 1995. [8] Haskin, D., and S. Onishi, "Management Information Base for IP Version 6: Textual Conventions and General Group", Work in progress. Expires September 1997 [Page 18] Internet-Draft IPv6 MIB: UDP and TCP Groups March 1997 [9] Jacobson, V., "Congestion Avoidance and Control", SIGCOMM 1988, Stanford, California. 7. Security Considerations Certain management information defined in this MIB may be considered sensitive in some network environments. Therefore, authentication of received SNMP requests and controlled access to management information should be employed in such environments. 8. Authors' Address Dimitry Haskin Bay Networks, Inc. 2 Federal Street Billerica, MA 01821 email: dhaskin@baynetworks.com Steve Onishi Bay Networks, Inc. 3 Federal Street Billerica, MA 01821 email: sonishi@baynetworks.com Expires September 1997 [Page 19]