< draft-ietf-ipngwg-ipv6-tcp-mib-00.txt   draft-ietf-ipngwg-ipv6-tcp-mib-01.txt >
Expires December 1997
Internet-Draft TCP MIB for IPv6 January 1998
Expires July, 1998
IP Version 6 Management Information Base IP Version 6 Management Information Base
for the Transmission Control Protocol for the Transmission Control Protocol
<draft-ietf-ipngwg-ipv6-tcp-mib-00.txt> <draft-ietf-ipngwg-ipv6-tcp-mib-01.txt>
Mike Daniele Mike Daniele
Digital Equipment Corporation Digital Equipment Corporation
Status of this Memo Status of this Memo
This document is an Internet-Draft. Internet-Drafts are working This document is an Internet-Draft. Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its documents of the Internet Engineering Task Force (IETF), its
areas, and its working groups. Note that other groups may also areas, and its working groups. Note that other groups may also
distribute working documents as Internet-Drafts. distribute working documents as Internet-Drafts.
skipping to change at line 40 skipping to change at line 42
Abstract Abstract
This document is one in the series of documents that define This document is one in the series of documents that define
various MIB objects for IPv6. Specifically, this document various MIB objects for IPv6. Specifically, this document
is the MIB module which defines managed objects for is the MIB module which defines managed objects for
implementations of the Transmission Control Protocol (TCP) implementations of the Transmission Control Protocol (TCP)
over IP Version 6 (IPv6). over IP Version 6 (IPv6).
This document also recommends a specific policy with respect to This document also recommends a specific policy with respect to
the applicability of RFC 2012 for implementations of IPv6. the applicability of RFC 2012 for implementations of IPv6.
Namely, the most of managed objects defined in RFC 2012 are Namely, that most of managed objects defined in RFC 2012 are
independent of which IP versions underly TCP, and only the independent of which IP versions underlie TCP, and only the
TCP connection information is IP version-specific. TCP connection information is IP version-specific.
This memo defines an experimental portion of the Management This memo defines an experimental portion of the Management
Information Base (MIB) for use with network management Information Base (MIB) for use with network management
protocols in the IPv6-based internets. protocols in IPv6-based internets.
1. Introduction 1. Introduction
A management system contains: several (potentially many) nodes, each A management system contains: several (potentially many) nodes, each
with a processing entity, termed an agent, which has access to with a processing entity, termed an agent, which has access to
management instrumentation; at least one management station; and, a management instrumentation; at least one management station; and, a
management protocol, used to convey management information between management protocol, used to convey management information between
the agents and management stations. Operations of the protocol are the agents and management stations. Operations of the protocol are
carried out under an administrative framework which defines carried out under an administrative framework which defines
authentication, authorization, access control, and privacy policies. authentication, authorization, access control, and privacy policies.
skipping to change at line 107 skipping to change at line 109
4. Representing TCP Connections 4. Representing TCP Connections
The exception to the statements in section 3 is the tcpConnTable. The exception to the statements in section 3 is the tcpConnTable.
Since IPv6 addresses cannot be represented with the IpAddress syntax, Since IPv6 addresses cannot be represented with the IpAddress syntax,
not all TCP connections can be represented in the tcpConnTable not all TCP connections can be represented in the tcpConnTable
defined in [TCP MIB]. defined in [TCP MIB].
This memo defines a new, separate table to represent only those This memo defines a new, separate table to represent only those
TCP connections between IPv6 endpoints. TCP connections between TCP connections between IPv6 endpoints. TCP connections between
IPv4 endpoints continue to be represented in tcpConnTable [TCP MIB]. IPv4 endpoints continue to be represented in tcpConnTable [TCP MIB].
(It is not possible to establish a TCP connection between an IPv4
endpoint and an IPv6 endpoint.)
A different approach would have been to define a new table to A different approach would have been to define a new table to
represent all TCP connections regardless of IP version. This would represent all TCP connections regardless of IP version. This would
require changes to [TCP MIB] and hence to existing (IPv4-only) require changes to [TCP MIB] and hence to existing (IPv4-only)
TCP implementations. The approach suggested in this memo has the TCP implementations. The approach suggested in this memo has the
advantage of leaving [TCP MIB] intact. advantage of leaving IPv4-only implementations intact.
It is assumed that the objects defined in this memo will eventually
be defined in an update to [TCP MIB]. For this reason, the module
identity is assigned under the experimental portion of the MIB.
5. Conformance 5. Conformance
This memo contains conformance statements to define conformance This memo contains conformance statements to define conformance
to this MIB for TCP over IPv6 implementations. Conformance is to this MIB for TCP over IPv6 implementations.
defined in terms of both the new TCP connection table defined here,
and the objects defined in [TCP MIB].
6. Definitions 6. Definitions
IPV6-TCP-MIB DEFINITIONS ::= BEGIN IPV6-TCP-MIB DEFINITIONS ::= BEGIN
IMPORTS IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF MODULE-IDENTITY, OBJECT-TYPE,
Unsigned32, Gauge32, Counter32, mib-2, experimental FROM SNMPv2-SMI
Integer32 FROM SNMPv2-SMI Ipv6Address, Ipv6IfIndexOrZero FROM IPV6-TC;
Ipv6, Ipv6Address,
Ipv6IfIndex, Ipv6IfIndexOrZero FROM IPV6-TC
tcpRtoAlgorithm, tcpRtoMin,
tcpRtoMax, tcpMaxConn, tcpActiveOpens,
tcpPassiveOpens, tcpAttemptFails,
tcpEstabResets, tcpCurrEstab, tcpInSegs,
tcpOutSegs, tcpRetransSegs,
tcpInErrs, tcpOutRsts FROM TCP-MIB;
ipv6TcpMIB MODULE-IDENTITY ipv6TcpMIB MODULE-IDENTITY
LAST-UPDATED "9706090000Z" LAST-UPDATED "9801290000Z"
ORGANIZATION "IETF IPv6 MIB Working Group" ORGANIZATION "IETF IPv6 MIB Working Group"
CONTACT-INFO CONTACT-INFO
" Mike Daniele " Mike Daniele
Postal: Digital Equipment Corporation Postal: Digital Equipment Corporation
110 Spitbrook Rd 110 Spitbrook Rd
Nashua, NH 03062. Nashua, NH 03062.
US US
Phone: +1 603 881 1423 Phone: +1 603 884 1423
Email: daniele@zk3.dec.com" Email: daniele@zk3.dec.com"
DESCRIPTION DESCRIPTION
"The MIB module for entities implementing TCP "The MIB module for entities implementing TCP over IPv6."
over IPv6." ::= { experimental XXX }
::= { ipv6 4}
-- objects specific to TCP for IPv6
ipv6TcpMIBObjects OBJECT IDENTIFIER ::= { ipv6TcpMIB 1 } -- objects specific to TCP for IPv6
-- the TCP over IPv6 Connection table tcp OBJECT IDENTIFIER ::= { mib-2 6 }
-- This connection table contains information about this -- the TCP over IPv6 Connection table
-- entity's existing TCP connections between IPv6 endpoints.
-- Only connections between IPv6 addresses are contained in
-- this table. This entity's connections between IPv4
-- endpoints are contained in tcpConnTable.
- <span class="insert">the</span> TCP <span class="insert">over</span> IPv6 <span class="insert">Connection table</span> -- This connection table contains information about this
ipv6TcpConnTable OBJECT-TYPE -- entity's existing TCP connections between IPv6 endpoints.
SYNTAX SEQUENCE OF Ipv6TcpConnEntry -- Only connections between IPv6 addresses are contained in
MAX-ACCESS not-accessible -- this table. This entity's connections between IPv4
STATUS current -- endpoints are contained in tcpConnTable.
DESCRIPTION
"A table containing TCP connection-specific
information, for only those connections whose endpoints
are IPv6 addresses."
::= { ipv6TcpMIBObjects 1 } -- eventually to be { tcp 16 }?
ipv6TcpConnEntry OBJECT-TYPE ipv6TcpConnTable OBJECT-TYPE
SYNTAX Ipv6TcpConnEntry SYNTAX SEQUENCE OF Ipv6TcpConnEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"A conceptual row of the ipv6TcpConnTable containing "A table containing TCP connection-specific information,
information about a particular current TCP connection. for only those connections whose endpoints are IPv6 addresses."
Each row of this table is transient, in that it ceases to ::= { tcp 16 }
exist when (or soon after) the connection makes the transition
to the CLOSED state.
Note that conceptual rows in this table require an additional ipv6TcpConnEntry OBJECT-TYPE
index object compared to tcpConnTable, since IPv6 addresses SYNTAX Ipv6TcpConnEntry
are not guaranteed to be unique on the managed node." MAX-ACCESS not-accessible
INDEX { ipv6TcpConnLocalAddress, STATUS current
ipv6TcpConnLocalPort, DESCRIPTION
ipv6TcpConnRemAddress, "A conceptual row of the ipv6TcpConnTable containing
ipv6TcpConnRemPort, information about a particular current TCP connection.
ipv6TcpConnIfIndex } Each row of this table is transient, in that it ceases to
::= { ipv6TcpConnTable 1 } exist when (or soon after) the connection makes the transition
to the CLOSED state.
Ipv6TcpConnEntry ::= Note that conceptual rows in this table require an additional
SEQUENCE { index object compared to tcpConnTable, since IPv6 addresses
ipv6TcpConnLocalAddress Ipv6Address, are not guaranteed to be unique on the managed node."
ipv6TcpConnLocalPort INTEGER (0..65535), INDEX { ipv6TcpConnLocalAddress,
ipv6TcpConnRemAddress Ipv6Address, ipv6TcpConnLocalPort,
ipv6TcpConnRemPort INTEGER (0..65535), ipv6TcpConnRemAddress,
ipv6TcpConnIfIndex Ipv6IfIndexOrZero, ipv6TcpConnRemPort,
ipv6TcpConnState INTEGER ipv6TcpConnIfIndex }
} ::= { ipv6TcpConnTable 1 }
ipv6TcpConnLocalAddress OBJECT-TYPE Ipv6TcpConnEntry ::=
SYNTAX Ipv6Address SEQUENCE { ipv6TcpConnLocalAddress Ipv6Address,
MAX-ACCESS not-accessible ipv6TcpConnLocalPort INTEGER (0..65535),
STATUS current ipv6TcpConnRemAddress Ipv6Address,
DESCRIPTION ipv6TcpConnRemPort INTEGER (0..65535),
"The local IPv6 address for this TCP connection. In ipv6TcpConnIfIndex Ipv6IfIndexOrZero,
the case of a connection in the listen state which ipv6TcpConnState INTEGER }
is willing to accept connections for any IPv6
address associated with the managed node, the value
::0 is used."
::= { ipv6TcpConnEntry 1 }
ipv6TcpConnLocalPort OBJECT-TYPE ipv6TcpConnLocalAddress OBJECT-TYPE
SYNTAX INTEGER (0..65535) SYNTAX Ipv6Address
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The local port number for this TCP connection." "The local IPv6 address for this TCP connection. In
::= { ipv6TcpConnEntry 2 } the case of a connection in the listen state which
is willing to accept connections for any IPv6
address associated with the managed node, the value
::0 is used."
::= { ipv6TcpConnEntry 1 }
ipv6TcpConnRemAddress OBJECT-TYPE ipv6TcpConnLocalPort OBJECT-TYPE
SYNTAX Ipv6Address SYNTAX INTEGER (0..65535)
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The remote IPv6 address for this TCP connection." "The local port number for this TCP connection."
::= { ipv6TcpConnEntry 3 } ::= { ipv6TcpConnEntry 2 }
ipv6TcpConnRemPort OBJECT-TYPE ipv6TcpConnRemAddress OBJECT-TYPE
SYNTAX INTEGER (0..65535) SYNTAX Ipv6Address
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The remote port number for this TCP connection." "The remote IPv6 address for this TCP connection."
::= { ipv6TcpConnEntry 4 } ::= { ipv6TcpConnEntry 3 }
ipv6TcpConnIfIndex OBJECT-TYPE ipv6TcpConnRemPort OBJECT-TYPE
SYNTAX Ipv6IfIndexOrZero SYNTAX INTEGER (0..65535)
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"An index object used to disambiguate conceptual rows in "The remote port number for this TCP connection."
the table, since the connection 4-tuple may not be unique. ::= { ipv6TcpConnEntry 4 }
If the connection's remote address (ipv6TcpConnRemAddress) ipv6TcpConnIfIndex OBJECT-TYPE
is a link-local address and the connection's local address SYNTAX Ipv6IfIndexOrZero
(ipv6TcpConnLocalAddress) is not a link-local address, this MAX-ACCESS not-accessible
object identifies a local interface on the same link as STATUS current
the connection's remote link-local address. DESCRIPTION
"An index object used to disambiguate conceptual rows in
the table, since the connection 4-tuple may not be unique.
Otherwise, this object identifies the local interface that If the connection's remote address (ipv6TcpConnRemAddress)
is associated with the ipv6TcpConnLocalAddress for this is a link-local address and the connection's local address
TCP connection. If such a local interface cannot be determined, (ipv6TcpConnLocalAddress) is not a link-local address, this
this object should take on the value 0. (A possible example object identifies a local interface on the same link as
of this would be if the value of ipv6TcpConnLocalAddress is ::0.) the connection's remote link-local address.
The interface identified by a particular non-0 value of this Otherwise, this object identifies the local interface that
index is the same interface as identified by the same value is associated with the ipv6TcpConnLocalAddress for this
of ipv6IfIndex. TCP connection. If such a local interface cannot be determined,
this object should take on the value 0. (A possible example
of this would be if the value of ipv6TcpConnLocalAddress is ::0.)
The value of this object must remain constant during the life The interface identified by a particular non-0 value of this
of the TCP connection." index is the same interface as identified by the same value
::= { ipv6TcpConnEntry 5 } of ipv6IfIndex.
ipv6TcpConnState OBJECT-TYPE The value of this object must remain constant during the life
SYNTAX INTEGER { of the TCP connection."
closed(1), ::= { ipv6TcpConnEntry 5 }
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 ipv6TcpConnState OBJECT-TYPE
deleteTCB(12). Accordingly, it is appropriate for an agent SYNTAX INTEGER {
to return a `badValue' response if a management station closed(1),
attempts to set this object to any other value. 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.
If a management station sets this object to the value The only value which may be set by a management station is
deleteTCB(12), then this has the effect of deleting the TCB deleteTCB(12). Accordingly, it is appropriate for an agent
(as defined in RFC 793) of the corresponding connection on to return an error response (`badValue' for SNMPv1, 'wrongValue'
the managed node, resulting in immediate termination of the for SNMPv2) if a management station attempts to set this
connection. object to any other value.
As an implementation-specific option, a RST segment may be If a management station sets this object to the value
sent from the managed node to the other TCP endpoint (note deleteTCB(12), then this has the effect of deleting the TCB
however that RST segments are not sent reliably)." (as defined in RFC 793) of the corresponding connection on
::= { ipv6TcpConnEntry 6 } the managed node, resulting in immediate termination of the
connection.
-- As an implementation-specific option, a RST segment may be
-- conformance information sent from the managed node to the other TCP endpoint (note
-- however that RST segments are not sent reliably)."
::= { ipv6TcpConnEntry 6 }
ipv6TcpConformance OBJECT IDENTIFIER ::= { ipv6TcpMIB 2 } --
-- conformance information
--
ipv6TcpCompliances OBJECT IDENTIFIER ::= { ipv6TcpConformance 1 } ipv6TcpConformance OBJECT IDENTIFIER ::= { ipv6TcpMIB 2 }
ipv6TcpGroups OBJECT IDENTIFIER ::= { ipv6TcpConformance 2 }
-- compliance statements ipv6TcpCompliances OBJECT IDENTIFIER ::= { ipv6TcpConformance 1 }
ipv6TcpGroups OBJECT IDENTIFIER ::= { ipv6TcpConformance 2 }
ipv6TcpCompliance MODULE-COMPLIANCE -- compliance statements
STATUS current
DESCRIPTION
"The compliance statement for SNMPv2 entities which
implement TCP over IPv6."
MODULE -- this module
MANDATORY-GROUPS { ipv6TcpGroup }
::= { ipv6TcpCompliances 1 }
- <span class="insert">compliance statements</span> ipv6TcpCompliance MODULE-COMPLIANCE
ipv6TcpGroup OBJECT-GROUP STATUS current
OBJECTS { -- these are defined in TCP-MIB DESCRIPTION
tcpRtoAlgorithm, "The compliance statement for SNMPv2 entities which
tcpRtoMin, implement TCP over IPv6."
tcpRtoMax, MODULE -- this module
tcpMaxConn, MANDATORY-GROUPS { ipv6TcpGroup }
tcpActiveOpens, ::= { ipv6TcpCompliances 1 }
tcpPassiveOpens,
tcpAttemptFails,
tcpEstabResets,
tcpCurrEstab,
tcpInSegs,
tcpOutSegs,
tcpRetransSegs,
tcpInErrs,
tcpOutRsts,
-- these are defined in this module ipv6TcpGroup OBJECT-GROUP
ipv6TcpConnState OBJECTS { -- these are defined in this module
} -- ipv6TcpConnLocalAddress (not-accessible)
STATUS current -- ipv6TcpConnLocalPort (not-accessible)
DESCRIPTION -- ipv6TcpConnRemAddress (not-accessible)
"The group of objects providing management of -- ipv6TcpConnRemPort (not-accessible)
TCP over IPv6." -- ipv6TcpConnIfIndex (not-accessible)
::= { ipv6TcpGroups 1 } ipv6TcpConnState }
STATUS current
DESCRIPTION
"The group of objects providing management of
TCP over IPv6."
::= { ipv6TcpGroups 1 }
END END
7. Acknowledgments 7. Acknowledgments
This memo is a product of the IPng work group, and benefited especially This memo is a product of the IPng work group, and benefited especially
from the contributions of the following working group members: from the contributions of the following working group members:
Dimitry Haskin Bay Networks Dimitry Haskin Bay Networks
Margaret Forsythe Epilogue Margaret Forsythe Epilogue
Tim Hartrick Mentat Tim Hartrick Mentat
Frank Solensky FTP Frank Solensky FTP
Jack Mccann DEC Jack McCann DEC
8. References 8. References
[1] Information processing systems - Open Systems Interconnection - [1] Information processing systems - Open Systems Interconnection -
Specification of Abstract Syntax Notation One (ASN.1), Specification of Abstract Syntax Notation One (ASN.1),
International Organization for Standardization. International International Organization for Standardization. International
Standard 8824, (December, 1987). Standard 8824, (December, 1987).
[2] McCloghrie, K., Editor, "Structure of Management Information [2] McCloghrie, K., Editor, "Structure of Management Information
for version 2 of the Simple Network Management Protocol for version 2 of the Simple Network Management Protocol
skipping to change at line 413 skipping to change at line 395
controlled access to management information should be employed controlled access to management information should be employed
in such environments. in such environments.
10. Author's Address 10. Author's Address
Mike Daniele Mike Daniele
Digital Equipment Corporation Digital Equipment Corporation
110 Spit Brook Rd 110 Spit Brook Rd
Nashua, NH 03062 Nashua, NH 03062
Phone: +1-603-881-1423 Phone: +1-603-884-1423
EMail: daniele@zk3.dec.com EMail: daniele@zk3.dec.com
Expires December 1997 11. 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.
Expires July, 1998
 End of changes. 44 change blocks. 
212 lines changed or deleted 192 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/