Network Working Group D. Thaler
Internet-Draft Microsoft
Updates: 2863 (if approved) D. Romascanu
Intended status: Standards Track Independent
Expires: September 30, 2019 March 29, 2019
Guidelines and Registration Procedures for Interface Types
draft-thaler-iftype-reg-02
Abstract
The registration and use of interface types ("ifType" values)
predated the use of IANA Considerations sections and YANG modules,
and so confusion has arisen about the interface type allocation
process. This document provides updated guidelines for the
definition of new interface types, for consideration by those who are
defining, registering, or evaluating those definitions.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
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."
This Internet-Draft will expire on September 30, 2019.
Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
Thaler & Romascanu Expires September 30, 2019 [Page 1]
Internet-Draft ifType Guidelines March 2019
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Problems . . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Interface Sub-Layers and Sub-Types . . . . . . . . . . . . . 3
5. Registration . . . . . . . . . . . . . . . . . . . . . . . . 4
5.1. Procedures . . . . . . . . . . . . . . . . . . . . . . . 5
5.2. Media-specific OID-subtree assignments . . . . . . . . . 6
5.3. Registration Template . . . . . . . . . . . . . . . . . . 7
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
7. Security Considerations . . . . . . . . . . . . . . . . . . . 8
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 8
8.1. Normative References . . . . . . . . . . . . . . . . . . 8
8.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction
The IANA IfType-MIB was originally defined in [RFC1573] as a separate
MIB module together with the Interfaces Group MIB (IF-MIB) module.
The IF-MIB module has since been updated and is currently specified
in [RFC2863], but this latest IF-MIB RFC no longer contains the IANA
IfType-MIB. Instead, the IANA IfType-MIB is now maintained as a
separate module. Similarly, [RFC7224] created an initial IANA
Interface Type YANG Module, and the current version is maintained by
IANA.
The current IANA IfType registries are in [iana-if-type],
[IANAifType-MIB], and [ifType].
Although the ifType registry was originally defined in a MIB module,
the assignment and use of interface type values are not tied to MIB
modules or any other management mechanism. Interface type values can
be used as values of data model objects (MIB objects, YANG objects,
etc.), as parts of a unique identifier of a data model for a given
interface type (e.g., in an OID), or simply as values exposed by
local APIs or UI on a device.
2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
Thaler & Romascanu Expires September 30, 2019 [Page 2]
Internet-Draft ifType Guidelines March 2019
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. Problems
This document addresses the following issues:
1. As noted in Section 1, the former guidance was written with
wording specific to MIB modules, and accordingly some confusion
has resulted when using YANG modules. This document clarifies
that ifTypes are independent from the type of, or even existence
of, a data model.
2. The use of, and requirements around, sub-layers and sub-types are
not well understood even though good examples of both exist.
This is discussed in Section 4.
3. The registry is kept in the format of MIB and YANG modules, but
there was no process guidance written to check that updates were
syntactically correct, which led to the registry having syntax
errors that broke tools. Section 5.1 adds a validation step to
the documented assignment procedure.
4. Transmission values [ifType] have often been allocated as part of
ifType allocation, but no guidance exists about whether a
requester must ask for it or not, and the request form has no
such required field. As a result, IANA has asked the Designated
Expert to decide for each allocation, but no relevant guidance
for the Designated Expert has been documented. This is discussed
in Section 5.2.
5. Various documents and registries say to submit requests via
email, but a web form exists for submitting requests, which has
caused some confusion around which is to be used. This is
discussed in Section 6.
4. Interface Sub-Layers and Sub-Types
When multiple sub-layers exist below the network layer, each sub-
layer can be represented by its own row in the ifTable with its own
ifType, with the ifStackTable being used to identify the upward and
downward multiplexing relationships between rows. Section 3.1.1 of
[RFC2863] provides more discussion, and Section 3.1.2 of that RFC
provides guidance for defining interface sub-layers. More recent
experience shows that these guidelines are phrased in a way that is
now too restrictive, since at the time [RFC2863] was written, MIB
modules were the dominant data model.
Thaler & Romascanu Expires September 30, 2019 [Page 3]
Internet-Draft ifType Guidelines March 2019
This document clarifies that such guidance also applies to YANG
modules.
Some ifTypes may define sub-types. For example, the tunnel(131)
ifType defines sub-types, where each IANAtunnelType can have its own
MIB and/or YANG module with protocol-specific information, but there
is enough in common that some information is exposed in a generic IP
Tunnel MIB corresponding to the tunnel(131) ifType.
For requests that involve multiple sub-layers below the network
layer, requests MUST include (or reference) a discussion of the
multiplexing relationships between sub-layers, ideally with a
diagram. Various well-written examples exist of such definitions,
including [RFC3637] section 3.4.1, [RFC4087] section 3.1.1, and
[RFC5066] section 3.1.1.
Definers of sub-layers and sub-types should consider which model is
more appropriate for their needs. A sub-layer is generally used
whenever either a dynamic relationship exists (i.e., which instances
layer over which other instances can change over time) or a
multiplexing relationship exists with another sub-layer. A sub-type
can be used when neither of these are true, but where one interface
type is conceptually a subclass of another interface type, as far as
a management data model is concerned.
PROPOSED CLARIFICATION/ELABORATION: In general, the intent of an
interface type or sub-type is that its definition should be
sufficient to identify an interoperable protocol. In some cases,
however, a protocol might be defined in a way that is not sufficient
to provide interoperability with other compliant implementations of
that protocol. In such a case, an ifType definition should discuss
whether specific instantiations (or profiles) of behavior should use
a sub-layer model (e.g., each vendor might layer the protocol over
its own sub-layer that provides the missing details), or a sub-type
model (i.e., each vendor might subclass the protocol without any
layering relationship). If a sub-type model is more appropriate,
then the data model for the protocol might include a sub-type
identifier so that management software can discover objects specific
to the subtype. In either case, such discussion is important to
guide definers of a data model for the more specific information
(i.e., a lower sub-layer or a subtype), as well as the Designated
Expert that must review requests for any such ifTypes or sub-types.
5. Registration
The IANA policy (using terms defined in [RFC8126]) for registration
is Expert Review. The role of the Designated Expert in the procedure
is to raise possible concerns about wider implications of proposals
Thaler & Romascanu Expires September 30, 2019 [Page 4]
Internet-Draft ifType Guidelines March 2019
for use and deployment of interface types. While it is recommended
that the responsible Area Director and the IESG take into
consideration the Designated Expert opinions, nothing in the
procedure empowers the Designated Expert to override properly
arrived-at IETF or working group consensus.
5.1. Procedures
Someone wishing to register a new ifType value MUST:
1. Check the IANA registry to see whether there is already an entry
that could easily satisfy the modeling and functional
requirements for the requested entry. If there is already such
an entry, use it or update the existing specification. Text in
an Internet-Draft, or part of some other permanently available,
stable specification may be written to clarify the usage of an
existing entry or entries for the desired purpose.
2. Check the IANA registry to see whether there is already some
other entry with the desired name. If there is already an
unrelated entry under the name, choose a different name.
3. Prepare a registration request using the template specified in
Section 5.3. The registration request can be contained in an
Internet-Draft, submitted alone, or as part of some other
permanently available, stable, specification. The registration
request can also be submitted in some other form (as part of
another document or as a stand-alone document), but the
registration request will be treated as an "IETF Contribution"
under the guidelines of [RFC5378].
4. Submit the registration request (or pointer to document
containing it) to IANA at iana@iana.org or via the web form at
https://www.iana.org/form/iftype .
Upon receipt of a registration request, the following steps MUST be
followed:
1. IANA checks the submission for completeness; if required
information is missing or any citations are not correct, IANA
will reject the registration request. A registrant can resubmit
a corrected request if desired.
2. IANA requests Expert Review of the registration request against
the corresponding guidelines from this document.
3. The Designated Expert will evaluate the request against the
criteria.
Thaler & Romascanu Expires September 30, 2019 [Page 5]
Internet-Draft ifType Guidelines March 2019
4. Once the Designated Expert approves registration, IANA updates
[ifType], [IANAifType-MIB], and [iana-if-type] to show the
registration. When adding values to the IANAifType-MIB, IANA
should verify that the updated MIB module is syntactically
correct before publishing the update. There are various existing
tools or web sites that can be used to do this verification.
5. If instead the Designated Expert does not approve registration
(e.g., for any of the reasons in [RFC8126] section 3), a
registrant can resubmit a corrected request if desired, or the
IESG can override the Designated Expert and approve it per the
process in Section 5.3 of [RFC8126].
5.2. Media-specific OID-subtree assignments
The current IANAifType-MIB notes:
The relationship between the assignment of ifType values and of
OIDs to particular media-specific MIBs is solely the purview of
IANA and is subject to change without notice. Quite often, a
media-specific MIB's OID-subtree assignment within MIB-II's
'transmission' subtree will be the same as its ifType value.
However, in some circumstances this will not be the case, and
implementors must not pre-assume any specific relationship between
ifType values and transmission subtree OIDs.
The following change is proposed:
CURRENT: For every ifType registration, the corresponding
transmission number value should be registered or marked "Reserved."
PROPOSED: For future ifType assignments, an OID-subtree assignment
MIB-II's 'transmission' subtree will be made with the same value.
RATIONALE: (1) This saves effort in the future since if a
transmission number is later needed, no IANA request is needed that
would then require another Expert Review. (2) The transmision
numbering space is not scarce, so there seems little need to reserve
the number for a different purpose than what the ifType is for. (3)
The Designated Expert need not review whether a transmission number
value should be registered when processing each ifType request, thus
reducing the possibility of delaying assignment of ifType values. (4)
There is no case on record where allocating the same value could have
caused any problem.
Thaler & Romascanu Expires September 30, 2019 [Page 6]
Internet-Draft ifType Guidelines March 2019
5.3. Registration Template
This template describes the fields that MUST be supplied in a
registration request suitable for adding to the registry:
Label for IANA ifType requested: As explained in Section 7.1.1 of
[RFC2578], a label for a named-number enumeration must consist of
one or more letters or digits, up to a maximum of 64 characters,
and the initial character must be a lower-case letter. (However,
labels longer than 32 characters are not recommended.) Note that
hyphens are not allowed.
Name of IANA ifType requested: A short description (e.g., a protocol
name), suitable to appear in a comment in the registry.
Description of the proposed use of the IANA ifType: Requesters MUST
include answers, either directly or via a link to some document
with the answers, to the following questions in the explanation of
the proposed use of the IANA IfType:
o How would IP run over your ifType?
o Would there be another interface sublayer between your ifType
and IP?
o Would your ifType be vendor-specific or proprietary? (If so,
the label MUST start with a string that shows that. For
example, if your company's name or acronym is xxx, then the
ifType label would be something like xxxSomeIfTypeLabel.)
o (ADDED) Would your ifType require or allow vendor-specific
extensions? If so, would the vendor use their own ifType in
sub-layer below the requested ifType, or a sub-type of the
ifType, or some other mechanism?
Reference, Internet-Draft, or Specification: A link to some document
is required.
Additional information or comments: Optionally any additional
comments for IANA or the Designated Expert.
6. IANA Considerations
This entire document is about IANA considerations.
CURRENT: The registries say to use email, but a web form exists
(https://www.iana.org/form/iftype), which is an apparent
contradiction. Should IANA require using the form?
Thaler & Romascanu Expires September 30, 2019 [Page 7]
Internet-Draft ifType Guidelines March 2019
Or require using email? Or accept submisions either way?
PROPOSED: In addition, IANA is requested to make the following
changes:
1. [IANAifType-MIB] currently says: "Requests for new values should
be made to IANA via email (iana&iana.org)." This should be
updated to instead say: "Requests for new values should be made
at https://www.iana.org/form/iftype or by email (iana&iana.org)."
2. [iana-if-type] currently says: "Requests for new values should be
made to IANA via email (iana&iana.org)." This should be updated
to instead say: "Requests for new values should be made at
https://www.iana.org/form/iftype or by email (iana&iana.org)."
7. Security Considerations
Since this document does not introduce any technology or protocol,
there are no security issues to be considered for this document
itself.
8. References
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, <https://www.rfc-
editor.org/info/rfc2119>.
[RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J.
Schoenwaelder, Ed., "Structure of Management Information
Version 2 (SMIv2)", STD 58, RFC 2578,
DOI 10.17487/RFC2578, April 1999, <https://www.rfc-
editor.org/info/rfc2578>.
[RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group
MIB", RFC 2863, DOI 10.17487/RFC2863, June 2000,
<https://www.rfc-editor.org/info/rfc2863>.
[RFC5378] Bradner, S., Ed. and J. Contreras, Ed., "Rights
Contributors Provide to the IETF Trust", BCP 78, RFC 5378,
DOI 10.17487/RFC5378, November 2008, <https://www.rfc-
editor.org/info/rfc5378>.
Thaler & Romascanu Expires September 30, 2019 [Page 8]
Internet-Draft ifType Guidelines March 2019
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, DOI 10.17487/RFC8126, June 2017,
<https://www.rfc-editor.org/info/rfc8126>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
8.2. Informative References
[iana-if-type]
IANA, "iana-if-type YANG Module", February 2019,
<http://www.iana.org/assignments/iana-if-type>.
[IANAifType-MIB]
IANA, "IANAifType-MIB", February 2019,
<http://www.iana.org/assignments/ianaiftype-mib>.
[ifType] IANA, "ifType definitions", February 2019,
<https://www.iana.org/assignments/smi-numbers/smi-
numbers.xhtml#smi-numbers-5>.
[RFC1573] McCloghrie, K. and F. Kastenholz, "Evolution of the
Interfaces Group of MIB-II", RFC 1573,
DOI 10.17487/RFC1573, January 1994, <https://www.rfc-
editor.org/info/rfc1573>.
[RFC3637] Heard, C., Ed., "Definitions of Managed Objects for the
Ethernet WAN Interface Sublayer", RFC 3637,
DOI 10.17487/RFC3637, September 2003, <https://www.rfc-
editor.org/info/rfc3637>.
[RFC4087] Thaler, D., "IP Tunnel MIB", RFC 4087,
DOI 10.17487/RFC4087, June 2005, <https://www.rfc-
editor.org/info/rfc4087>.
[RFC5066] Beili, E., "Ethernet in the First Mile Copper (EFMCu)
Interfaces MIB", RFC 5066, DOI 10.17487/RFC5066, November
2007, <https://www.rfc-editor.org/info/rfc5066>.
[RFC7224] Bjorklund, M., "IANA Interface Type YANG Module",
RFC 7224, DOI 10.17487/RFC7224, May 2014,
<https://www.rfc-editor.org/info/rfc7224>.
Thaler & Romascanu Expires September 30, 2019 [Page 9]
Internet-Draft ifType Guidelines March 2019
Authors' Addresses
David Thaler
Microsoft
EMail: dthaler@microsoft.com
Dan Romascanu
Independent
EMail: dromasca@gmail.com
Thaler & Romascanu Expires September 30, 2019 [Page 10]