RFC 1473
The Definitions of Managed Objects for the IP Network Control Protocol of the Point-to-Point Protocol
RFC 1473: The Definitions of Managed Objects for the IP Network Control Protocol of the Point-to-Point Protocol β¨
okay bestie, so this RFC is by F. Kastenholz from FTP Software, Inc., dated June 1993 π. It's an IAB standards track protocol doc, which means it's on the official standards path, and it's meant for the Internet community to talk about and improve. It doesn't say it obsoletes or updates any other RFC, so it's just a fresh drop π¦.
The whole thing is about managed objects (MIB stuff) for the IP Network Control Protocol in PPP. Basically it's the network management side of how IP runs over point-to-point links π .
Status of this Memo
This RFC specifies an IAB standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "IAB Official Protocol Standards" for the standardization state and status of this protocol. Distribution of this memo is unlimited.
Abstract
This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in TCP/IP-based internets. In particular, it describes managed objects used for managing the IP Network Control Protocol on subnetwork interfaces using the family of Point-to-Point Protocols [8, 9, 10, 11, & 12]. πΈ
Table of Contents
1. The Network Management Framework ...................... 1
2. Objects ............................................... 2
2.1 Format of Definitions ................................ 2
3. Overview .............................................. 2
3.1 Object Selection Criteria ............................ 2
3.2 Structure of the PPP ................................. 2
3.3 MIB Groups ........................................... 3
4. Definitions ........................................... 4
5. Acknowledgements ...................................... 8
6. Security Considerations ............................... 8
7. References ............................................ 8
8. Author's Address ...................................... 9
1. The Network Management Framework π§
okay so the Internet-standard Network Management Framework has three components. Let's get into them π
- STD 16/RFC 1155 defines the SMI, which is the set of mechanisms used for describing and naming objects for management purposes. STD 16/RFC 1212 adds a more concise description mechanism, and it's wholly consistent with the SMI π.
- STD 17/RFC 1213 defines MIB-II, the core set of managed objects for the Internet suite of protocols π.
- STD 15/RFC 1157 defines SNMP, the protocol used for network access to managed objects π₯.
The Framework also permits new objects to be defined for experimentation and evaluation, so there's room to play π.
2. Objects π¦
Managed objects are accessed through a virtual information store called the Management Information Base, or MIB. Objects in the MIB are defined using the subset of Abstract Syntax Notation One (ASN.1) [3] that's defined in the SMI. The main thing: each object type gets named by an OBJECT IDENTIFIER, which is an administratively assigned name. The object type together with an object instance is what uniquely identifies one specific instance of the object π. For human convenience we often use a text string, called the descriptor, to refer to the object type. Very relatable π.
2.1. Format of Definitions β¨
Section 4 contains the specification of every object type in this MIB module. The object types use the conventions defined in the SMI, as amended by the extensions specified in [5,6] π .
3. Overview π
3.1. Object Selection Criteria
To stay consistent with IAB directives and good engineering practice, the goal was to keep this MIB as simple as possible π«Ά. To do that, every object proposed for inclusion got run through these criteria:
- Require objects be essential for either fault or configuration management. In particular, objects whose only purpose was to debug implementations were explicitly excluded from the MIB π ββοΈ.
- Consider evidence of current use and/or utility.
- Limit the total number of objects.
- Exclude objects which are simply derivable from others in this or other MIBs.
3.2. Structure of the PPP π§
This section describes the basic model of PPP that was used when developing the PPP MIB. It's useful background for an implementor, since it explains some of the basic design decisions behind the MIB πΈ.
PPP isn't one single protocol. It's a big family of protocols, and each one is a fairly complex protocol in its own right π. The PPP protocols split into three rough categories:
Control Protocols The Control Protocols are used to control the operation of PPP. They include the Link Control Protocol (LCP), the Password Authentication Protocol (PAP), the Link Quality Report (LQR), and the Challenge Handshake Authentication Protocol (CHAP) β.
Network Protocols The Network Protocols are used to move network traffic over the PPP interface. A Network Protocol encapsulates the datagrams of a specific higher-layer protocol that is using PPP as a data link. Note that within the context of PPP, the term "Network Protocol" does not imply an OSI Layer-3 protocol. For instance, there is a Bridging network protocol π§ .
Network Control Protocols (NCPs) The NCPs are used to control the operation of the Network Protocols. Generally, each Network Protocol has its own Network Control Protocol. So the IP Network Protocol has its IP Control Protocol, the Bridging Network Protocol has its Bridging Network Control Protocol, and so on π.
This document specifies the objects used to manage one of these, namely the IP Network Control Protocol π¦.
3.3. MIB Groups π
Objects in this MIB are arranged into several MIB groups. Each group is organized as a set of related objects π.
These groups are the basic unit of conformance. If the semantics of a group apply to an implementation, then all objects in the group must be implemented π₯.
The PPP MIB is organized into several MIB Groups, including, but not limited to, the following groups:
- The PPP Link Group
- The PPP LQR Group
- The PPP LQR Extensions Group
- The PPP IP Group
- The PPP Bridge Group
- The PPP Security Group
This document specifies the following group:
The PPP IP Group The PPP IP Group contains configuration, status, and control variables that apply to the operation of IP over PPP.
Implementation of this group is mandatory for all implementations of PPP that support IP over PPP π.
4. Definitions π
okay so here's the actual MIB module, bestie π§ the whole thing is written in ASN.1 so copy it exactly, no edits π
PPP-IP-NCP-MIB DEFINITIONS ::= BEGIN
IMPORTS
Counter
FROM RFC1155-SMI
ifIndex
FROM RFC1213-MIB
OBJECT-TYPE
FROM RFC-1212
ppp
FROM PPP-LCP-MIB;
-- The PPP IP Group.
-- Implementation of this group is mandatory for all
-- PPP implementations that support operating IP over PPP.
pppIp OBJECT IDENTIFIER ::= { ppp 3 }
pppIpTable OBJECT-TYPE
SYNTAX SEQUENCE OF PppIpEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"Table containing the IP parameters and
statistics for the local PPP entity."
::= { pppIp 1 }
pppIpEntry OBJECT-TYPE
SYNTAX PppIpEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"IPCP status information for a particular PPP
link."
INDEX { ifIndex }
::= { pppIpTable 1 }
PppIpEntry ::= SEQUENCE {
pppIpOperStatus
INTEGER,
pppIpLocalToRemoteCompressionProtocol
INTEGER,
pppIpRemoteToLocalCompressionProtocol
INTEGER,
pppIpRemoteMaxSlotId
INTEGER,
pppIpLocalMaxSlotId
INTEGER
}
-- The following object reflect the values of the option
-- parameters used in the PPP IP Control Protocol
-- pppIpLocalToRemoteCompressionProtocol
-- pppIpRemoteToLocalCompressionProtocol
-- pppIpRemoteMaxSlotId
-- pppIpLocalMaxSlotId
-- These values are not available until after the PPP Option
-- negotiation has completed, which is indicated by the link
-- reaching the open state (i.e., pppIpOperStatus is set to
-- opened).
--
-- Therefore, when pppIpOperStatus is not opened
-- the contents of these objects is undefined. The value
-- returned when accessing the objects is an implementation
-- dependent issue.
pppIpOperStatus OBJECT-TYPE
SYNTAX INTEGER {opened(1), not-opened(2)}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The operational status of the IP network
protocol. If the value of this object is up
then the finite state machine for the IP
network protocol has reached the Opened state."
::= { pppIpEntry 1 }
pppIpLocalToRemoteCompressionProtocol OBJECT-TYPE
SYNTAX INTEGER {
none(1),
vj-tcp(2)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The IP compression protocol that the local
PPP-IP entity uses when sending packets to the
remote PPP-IP entity. The value of this object
is meaningful only when the link has reached
the open state (pppIpOperStatus is opened)."
::= { pppIpEntry 2 }
pppIpRemoteToLocalCompressionProtocol OBJECT-TYPE
SYNTAX INTEGER {
none(1),
vj-tcp(2)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The IP compression protocol that the remote
PPP-IP entity uses when sending packets to the
local PPP-IP entity. The value of this object
is meaningful only when the link has reached
the open state (pppIpOperStatus is opened)."
::= { pppIpEntry 3 }
pppIpRemoteMaxSlotId OBJECT-TYPE
SYNTAX INTEGER(0..255)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The Max-Slot-Id parameter that the remote node
has advertised and that is in use on the link.
If vj-tcp header compression is not in use on
the link then the value of this object shall be
0. The value of this object is meaningful only
when the link has reached the open state
(pppIpOperStatus is opened)."
::= { pppIpEntry 4 }
pppIpLocalMaxSlotId OBJECT-TYPE
SYNTAX INTEGER(0..255)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The Max-Slot-Id parameter that the local node
has advertised and that is in use on the link.
If vj-tcp header compression is not in use on
the link then the value of this object shall be
0. The value of this object is meaningful only
when the link has reached the open state
(pppIpOperStatus is opened)."
::= { pppIpEntry 5 }
--
-- The PPP IP Configuration table.
-- This is a separate table in order to facilitate
-- placing these variables in a separate MIB view.
--
pppIpConfigTable OBJECT-TYPE
SYNTAX SEQUENCE OF PppIpConfigEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"Table containing configuration variables for
the IPCP for the local PPP entity."
::= { pppIp 2 }
pppIpConfigEntry OBJECT-TYPE
SYNTAX PppIpConfigEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"IPCP information for a particular PPP link."
INDEX { ifIndex }
::= { pppIpConfigTable 1 }
PppIpConfigEntry ::= SEQUENCE {
pppIpConfigAdminStatus
INTEGER,
pppIpConfigCompression
INTEGER
}
pppIpConfigAdminStatus OBJECT-TYPE
SYNTAX INTEGER {open(1), close(2)}
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The immediate desired status of the IP network
protocol. Setting this object to open will
inject an administrative open event into the IP
network protocol's finite state machine.
Setting this object to close will inject an
administrative close event into the IP network
protocol's finite state machine."
::= { pppIpConfigEntry 1 }
pppIpConfigCompression OBJECT-TYPE
SYNTAX INTEGER {
none(1),
vj-tcp(2)
}
ACCESS read-write
STATUS mandatory
DESCRIPTION
"If none(1) then the local node will not
attempt to negotiate any IP Compression option.
Otherwise, the local node will attempt to
negotiate compression mode indicated by the
enumerated value. Changing this object will
have effect when the link is next restarted."
REFERENCE
"Section 4.0, Van Jacobson TCP/IP Header
Compression of RFC1332."
DEFVAL { none }
::= { pppIpConfigEntry 2 }
END
5. Acknowledgements π«Ά
this doc was made by the PPP working group, and the author wanted to shout out these lovely people for their comments and contributions πΈ
Bill Simpson -- Daydreamer
Glenn McGregor -- Merit
Jesse Walker -- DEC
Chris Gunner -- DEC
6. Security Considerations π₯
okay bestie, this part is SERIOUS π the PPP MIB lets the network operator configure and control the PPP links on a system, including the PPP authentication protocols. that is a real security risk, so pay attention π
here's how the doc says these risks get handled:
- all the variables that are a significant security risk get put into separate, optional MIB Groups. a MIB Group is the unit you implement inside a MIB, so the implementor can choose not to implement those groups at all π
- the implementor can make the risky variables so they can't be written, meaning they're
READ-ONLY. this still carries a security risk and is not recommended π¬ because the PPP Authentication Protocols' variables can be read pretty easily. - with SNMPv2, the operator can put the variables into MIB views that are protected, so the parties with access to those views use authentication and privacy protocols. or the operator can make those views not accessible to anyone at all π to make this placement easier, all the security-related variables live in separate MIB Tables, which makes it simpler to find the right MIB View Subtree π§
7. References β¨
Okay bestie, here's the reading list ππ Every single reference is kept exactly as written, so you can go hunt them down.
- [1] Rose M., and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based internets", STD 16, RFC 1155, Performance Systems International, Hughes LAN Systems, May 1990.
- [2] McCloghrie K., and M. Rose, Editors, "Management Information Base for Network Management of TCP/IP-based internets", STD 17, RFC 1213, Performance Systems International, March 1991.
- [3] Information processing systems - Open Systems Interconnection - Specification of Abstract Syntax Notation One (ASN.1), International Organization for Standardization, International Standard 8824, December 1987.
- [4] Information processing systems - Open Systems Interconnection - Specification of Basic Encoding Rules for Abstract Notation One (ASN.1), International Organization for Standardization, International Standard 8825, December 1987.
- [5] Rose, M., and K. McCloghrie, Editors, "Concise MIB Definitions", STD 16, RFC 1212, Performance Systems International, Hughes LAN Systems, March 1991.
- [6] Rose, M., Editor, "A Convention for Defining Traps for use with the SNMP", RFC 1215, Performance Systems International, March 1991.
- [7] McCloghrie, K., "Extensions to the Generic-Interface MIB", RFC 1229, Hughes LAN Systems, Inc., May 1991.
- [8] Simpson, W., "The Point-to-Point Protocol for the Transmission of Multi-protocol Datagrams over Point-to-Point Links, RFC 1331, Daydreamer, May 1992.
- [9] McGregor, G., "The PPP Internet Protocol Control Protocol", RFC 1332, Merit, May 1992.
- [10] Baker, F., "Point-to-Point Protocol Extensions for Bridging", RFC 1220, ACC, April 1991.
- [11] Lloyd, B., and W. Simpson, "PPP Authentication Protocols", RFC 1334, L&A, Daydreamer, October 1992.
- [12] Simpson, W., "PPP Link Quality Monitoring", RFC 1333, Daydreamer, May 1992.
8. Author's Address π¦
Frank Kastenholz, the author, is at FTP Software, Inc., so you can reach him here π
Frank Kastenholz
FTP Software, Inc.
2 High Street
North Andover, Mass 01845 USA
Phone: (508) 685-4000
EMail: kasten@ftp.com
π¦ where this page comes from
- ietf: rfc1473 1993-06
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms