draft-ietf-netmod-rfc7223bis-03.txt   rfc8343.txt 
Network Working Group M. Bjorklund Internet Engineering Task Force (IETF) M. Bjorklund
Internet-Draft Tail-f Systems Request for Comments: 8343 Tail-f Systems
Obsoletes: rfc7223 (if approved) January 11, 2018 Obsoletes: 7223 March 2018
Intended status: Standards Track Category: Standards Track
Expires: July 15, 2018 ISSN: 2070-1721
A YANG Data Model for Interface Management A YANG Data Model for Interface Management
draft-ietf-netmod-rfc7223bis-03
Abstract Abstract
This document defines a YANG data model for the management of network This document defines a YANG data model for the management of network
interfaces. It is expected that interface-type-specific data models interfaces. It is expected that interface-type-specific data models
augment the generic interfaces data model defined in this document. augment the generic interfaces data model defined in this document.
The data model includes definitions for configuration and system The data model includes definitions for configuration and system
state (status information and counters for the collection of state (status information and counters for the collection of
statistics). statistics).
The YANG model in this document conforms to the Network Management The YANG data model in this document conforms to the Network
Datastore Architecture defined in I-D.ietf-netmod-revised-datastores. Management Datastore Architecture (NMDA) defined in RFC 8342.
This document obsoletes RFC 7223. This document obsoletes RFC 7223.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This is an Internet Standards Track document.
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 This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841.
This Internet-Draft will expire on July 15, 2018. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/rfc8343.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2018 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction ....................................................3
1.1. Summary of Changes from RFC 7223 . . . . . . . . . . . . 3 1.1. Summary of Changes from RFC 7223 ...........................3
1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 1.2. Terminology ................................................3
1.3. Tree Diagrams . . . . . . . . . . . . . . . . . . . . . . 4 1.3. Tree Diagrams ..............................................4
2. Objectives . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Objectives ......................................................5
3. Interfaces Data Model . . . . . . . . . . . . . . . . . . . . 5 3. Interfaces Data Model ...........................................5
3.1. The Interface List . . . . . . . . . . . . . . . . . . . 6 3.1. The Interface List .........................................6
3.2. Interface References . . . . . . . . . . . . . . . . . . 8 3.2. Interface References .......................................8
3.3. Interface Layering . . . . . . . . . . . . . . . . . . . 8 3.3. Interface Layering .........................................8
4. Relationship to the IF-MIB . . . . . . . . . . . . . . . . . 9 4. Relationship to the IF-MIB ......................................9
5. Interfaces YANG Module . . . . . . . . . . . . . . . . . . . 10 5. Interfaces YANG Module .........................................10
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 34 6. IANA Considerations ............................................34
7. Security Considerations . . . . . . . . . . . . . . . . . . . 34 7. Security Considerations ........................................35
8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 35 8. References .....................................................36
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 35 8.1. Normative References ......................................36
9.1. Normative References . . . . . . . . . . . . . . . . . . 35 8.2. Informative References ....................................37
9.2. Informative References . . . . . . . . . . . . . . . . . 36 Appendix A. Example: Ethernet Interface Module ...................38
Appendix A. Example: Ethernet Interface Module . . . . . . . . . 37 Appendix B. Example: Ethernet Bonding Interface Module ...........39
Appendix B. Example: Ethernet Bonding Interface Module . . . . . 38 Appendix C. Example: VLAN Interface Module .......................40
Appendix C. Example: VLAN Interface Module . . . . . . . . . . . 39 Appendix D. Example: NETCONF <get-config> Reply ..................41
Appendix D. Example: NETCONF <get-config> Reply . . . . . . . . 41 Appendix E. Example: NETCONF <get-data> Reply ....................42
Appendix E. Example: NETCONF <get-data> Reply . . . . . . . . . 42 Appendix F. Examples: Interface Naming Schemes ...................44
Appendix F. Examples: Interface Naming Schemes . . . . . . . . . 44 F.1. Router with Restricted Interface Names ....................44
F.1. Router with Restricted Interface Names . . . . . . . . . 44 F.2. Router with Arbitrary Interface Names .....................45
F.2. Router with Arbitrary Interface Names . . . . . . . . . . 45 F.3. Ethernet Switch with Restricted Interface Names ...........46
F.3. Ethernet Switch with Restricted Interface Names . . . . . 46 F.4. Generic Host with Restricted Interface Names ..............47
F.4. Generic Host with Restricted Interface Names . . . . . . 46 F.5. Generic Host with Arbitrary Interface Names ...............48
F.5. Generic Host with Arbitrary Interface Names . . . . . . . 47 Acknowledgments ...................................................49
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 48 Author's Address ..................................................49
1. Introduction 1. Introduction
This document defines a YANG [RFC7950] data model for the management This document defines a YANG data model [RFC7950] for the management
of network interfaces. It is expected that interface-type-specific of network interfaces. It is expected that interface-type-specific
data models augment the generic interfaces data model defined in this data models will augment the generic interfaces data model defined in
document. this document.
Network interfaces are central to the management of many Internet Network interfaces are central to the management of many Internet
protocols. Thus, it is important to establish a common data model protocols. Thus, it is important to establish a common data model
for how interfaces are identified, configured, and monitored. for how interfaces are identified, configured, and monitored.
The data model includes configuration data and state data (status The data model includes configuration data and state data (status
information and counters for the collection of statistics). information and counters for the collection of statistics).
This version of the interfaces data model supports the Network This version of the interfaces data model supports the Network
Management Datastore Architecture (NMDA) Management Datastore Architecture (NMDA) [RFC8342].
[I-D.ietf-netmod-revised-datastores].
1.1. Summary of Changes from RFC 7223 1.1. Summary of Changes from RFC 7223
The "/interfaces-state" subtree with "config false" data nodes is The "/interfaces-state" subtree with "config false" data nodes is
deprecated. All "config false" data nodes are now present in the deprecated. All "config false" data nodes are now present in the
"/interfaces" subtree. "/interfaces" subtree.
Servers that do not implement NMDA, or that wish to support clients Servers that do not implement NMDA, or that wish to support clients
that do not implement NMDA, MAY implement the deprecated that do not implement NMDA, MAY implement the deprecated
"/interfaces-state" tree. "/interfaces-state" tree.
1.2. Terminology 1.2. Terminology
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP "OPTIONAL" in this document are to be interpreted as described in
14, [RFC2119] [RFC8174] when, and only when, they appear in all BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here. capitals, as shown here.
The following terms are used within this document: The following terms are used within this document:
o system-controlled interface: An interface is said to be system- o system-controlled interface: An interface is said to be system-
controlled if the system creates and deletes the interface controlled if the system creates and deletes the interface
independently of what has been explicitly configured. Examples independently of what has been explicitly configured. Examples
are interfaces representing physical hardware that appear and are interfaces representing physical hardware that appear and
disappear when hardware (e.g., a line card or hot-pluggable disappear when hardware (e.g., a line card or hot-pluggable
wireless interface) is added or removed. System-controlled wireless interface) is added or removed. System-controlled
skipping to change at page 4, line 5 skipping to change at page 4, line 13
is enabled). is enabled).
o user-controlled interface: An interface is said to be user- o user-controlled interface: An interface is said to be user-
controlled if the creation of the interface is controlled by controlled if the creation of the interface is controlled by
adding explicit interface configuration to the intended adding explicit interface configuration to the intended
configuration and the removal of the interface is controlled by configuration and the removal of the interface is controlled by
removing explicit interface configuration from the intended removing explicit interface configuration from the intended
configuration. Examples are VLAN interfaces configured on a configuration. Examples are VLAN interfaces configured on a
system-controlled Ethernet interface. system-controlled Ethernet interface.
The following terms are defined in The following terms are defined in [RFC8342] and are not redefined
[I-D.ietf-netmod-revised-datastores] and are not redefined here: here:
o client o client
o server o server
o configuration o configuration
o system state o system state
o operational state o operational state
o intended configuration o intended configuration
o running configuration datastore
o operational state datastore
The following terms are defined in [RFC7950] and are not redefined The following terms are defined in [RFC7950] and are not redefined
here: here:
o augment o augment
o data model o data model
o data node o data node
o presence container
1.3. Tree Diagrams 1.3. Tree Diagrams
Tree diagrams used in this document follow the notation defined in Tree diagrams used in this document follow the notation defined in
[I-D.ietf-netmod-yang-tree-diagrams]. [RFC8340].
2. Objectives 2. Objectives
This section describes some of the design objectives for the model This section describes some of the design objectives for the model
presented in Section 5. presented in Section 5.
o It is recognized that existing implementations will have to map o It is recognized that existing implementations will have to map
the interface data model defined in this memo to their proprietary the interface data model defined in this memo to their proprietary
native data model. To facilitate such mappings, the data model native data model. To facilitate such mappings, the data model
should be simple. should be simple.
skipping to change at page 5, line 15 skipping to change at page 5, line 31
o The mapping to ifIndex [RFC2863] used by the Simple Network o The mapping to ifIndex [RFC2863] used by the Simple Network
Management Protocol (SNMP) to identify interfaces must be clear. Management Protocol (SNMP) to identify interfaces must be clear.
o The model must support interface layering: both (1) simple o The model must support interface layering: both (1) simple
layering, where one interface is layered on top of exactly one layering, where one interface is layered on top of exactly one
other interface, and (2) more complex scenarios, where one other interface, and (2) more complex scenarios, where one
interface results from the aggregation of N other interfaces or interface results from the aggregation of N other interfaces or
when N interfaces are multiplexed over one other interface. when N interfaces are multiplexed over one other interface.
o The data model should support the pre-provisioning of interface o The data model should support the pre-provisioning of interface
configuration, i.e., it should be possible to configure an configuration; that is, it should be possible to configure an
interface whose physical interface hardware is not present on the interface whose physical interface hardware is not present on the
device. It is recommended that devices that support dynamic device. It is recommended that devices that support dynamic
addition and removal of physical interfaces also support pre- addition and removal of physical interfaces also support
provisioning. pre-provisioning.
o The data model should support physical interfaces as well as o The data model should support physical interfaces as well as
logical interfaces. logical interfaces.
o The data model should include read-only counters in order to o The data model should include read-only counters in order to
gather statistics for sent and received octets and packets, gather statistics for sent and received octets and packets,
received packets with errors, and packets that could not be sent received packets with errors, and packets that could not be sent
due to errors. due to errors.
3. Interfaces Data Model 3. Interfaces Data Model
This document defines the YANG module "ietf-interfaces", which has This document defines the YANG module "ietf-interfaces", which has
the following structure, excluding the deprecated "/interfaces-state" the following structure, excluding the deprecated "/interfaces-state"
subtree: subtree:
module: ietf-interfaces module: ietf-interfaces
+--rw interfaces +--rw interfaces
+--rw interface* [name] +--rw interface* [name]
+--rw name string +--rw name string
+--rw description? string +--rw description? string
+--rw type identityref +--rw type identityref
+--rw enabled? boolean +--rw enabled? boolean
+--rw link-up-down-trap-enable? enumeration {if-mib}? +--rw link-up-down-trap-enable? enumeration {if-mib}?
+--ro admin-status enumeration {if-mib}? +--ro admin-status enumeration {if-mib}?
+--ro oper-status enumeration +--ro oper-status enumeration
+--ro last-change? yang:date-and-time +--ro last-change? yang:date-and-time
+--ro if-index int32 {if-mib}? +--ro if-index int32 {if-mib}?
+--ro phys-address? yang:phys-address +--ro phys-address? yang:phys-address
+--ro higher-layer-if* interface-ref +--ro higher-layer-if* interface-ref
+--ro lower-layer-if* interface-ref +--ro lower-layer-if* interface-ref
+--ro speed? yang:gauge64 +--ro speed? yang:gauge64
+--ro statistics +--ro statistics
+--ro discontinuity-time yang:date-and-time +--ro discontinuity-time yang:date-and-time
+--ro in-octets? yang:counter64 +--ro in-octets? yang:counter64
+--ro in-unicast-pkts? yang:counter64 +--ro in-unicast-pkts? yang:counter64
+--ro in-broadcast-pkts? yang:counter64 +--ro in-broadcast-pkts? yang:counter64
+--ro in-multicast-pkts? yang:counter64 +--ro in-multicast-pkts? yang:counter64
+--ro in-discards? yang:counter32 +--ro in-discards? yang:counter32
+--ro in-errors? yang:counter32 +--ro in-errors? yang:counter32
+--ro in-unknown-protos? yang:counter32 +--ro in-unknown-protos? yang:counter32
+--ro out-octets? yang:counter64 +--ro out-octets? yang:counter64
+--ro out-unicast-pkts? yang:counter64 +--ro out-unicast-pkts? yang:counter64
+--ro out-broadcast-pkts? yang:counter64 +--ro out-broadcast-pkts? yang:counter64
+--ro out-multicast-pkts? yang:counter64 +--ro out-multicast-pkts? yang:counter64
+--ro out-discards? yang:counter32 +--ro out-discards? yang:counter32
+--ro out-errors? yang:counter32 +--ro out-errors? yang:counter32
3.1. The Interface List 3.1. The Interface List
The data model for interfaces presented in this document uses a flat The data model for interfaces presented in this document uses a flat
list of interfaces ("/interfaces/interface"). Each interface in the list of interfaces ("/interfaces/interface"). Each interface in the
list is identified by its name. Furthermore, each interface has a list is identified by its name. Furthermore, each interface has a
mandatory "type" leaf. mandatory "type" leaf.
The "iana-if-type" module [RFC7224] defines YANG identities for the The "iana-if-type" module [RFC7224] defines YANG identities for the
interface types in the IANA-maintained "ifType definitions" registry. interface types in the IANA-maintained "ifType definitions" registry.
skipping to change at page 7, line 34 skipping to change at page 7, line 34
} }
For system-controlled interfaces, the "name" is the device-specific For system-controlled interfaces, the "name" is the device-specific
name of the interface. name of the interface.
If the device supports arbitrarily named user-controlled interfaces, If the device supports arbitrarily named user-controlled interfaces,
then the server will advertise the "arbitrary-names" feature. If the then the server will advertise the "arbitrary-names" feature. If the
server does not advertise this feature, the names of user-controlled server does not advertise this feature, the names of user-controlled
interfaces MUST match the device's naming scheme. How a client can interfaces MUST match the device's naming scheme. How a client can
learn the naming scheme of such devices is outside the scope of this learn the naming scheme of such devices is outside the scope of this
document. See Appendix F.1 and Appendix F.2 for examples. document. See Appendices F.1 and F.2 for examples.
When a system-controlled interface is created in the operational When a system-controlled interface is created in the operational
state by the system, the system tries to apply the interface state by the system, the system tries to apply the interface
configuration in the intended configuration with the same name as the configuration in the intended configuration with the same name as the
new interface. If no such interface configuration is found, or if new interface. If no such interface configuration is found, or if
the configured type does not match the real interface type, the the configured type does not match the real interface type, the
system creates the interface without applying explicit configuration. system creates the interface without applying explicit configuration.
When a user-controlled interface is created, the configuration When a user-controlled interface is created, the configuration
determines the name of the interface. determines the name of the interface.
skipping to change at page 9, line 37 skipping to change at page 9, line 37
The ifMtu object from the IF-MIB is not mapped to the The ifMtu object from the IF-MIB is not mapped to the
"ietf-interfaces" module. It is expected that interface-type- "ietf-interfaces" module. It is expected that interface-type-
specific YANG modules provide interface-type-specific MTU leafs by specific YANG modules provide interface-type-specific MTU leafs by
augmenting the "ietf-interfaces" model. augmenting the "ietf-interfaces" model.
There are a number of counters in the IF-MIB that exist in two There are a number of counters in the IF-MIB that exist in two
versions: one with 32 bits and one with 64 bits. The 64-bit versions versions: one with 32 bits and one with 64 bits. The 64-bit versions
were added to support high-speed interfaces with a data rate greater were added to support high-speed interfaces with a data rate greater
than 20,000,000 bits/second. Today's implementations generally than 20,000,000 bits/second. Today's implementations generally
support such high-speed interfaces, and hence only 64-bit counters support such high-speed interfaces; hence, only 64-bit counters are
are provided in this data model. Note that the server that provided in this data model. Note that the server that implements
implements this module and an SNMP agent may differ in the time this module and an SNMP agent may differ in the time granularity in
granularity in which they provide access to the counters. For which they provide access to the counters. For example, it is common
example, it is common that SNMP implementations cache counter values that SNMP implementations cache counter values for some time.
for some time.
The objects ifDescr and ifConnectorPresent from the IF-MIB are not The objects ifDescr and ifConnectorPresent from the IF-MIB are not
mapped to the "ietf-interfaces" module. mapped to the "ietf-interfaces" module.
The following tables list the YANG data nodes with corresponding The following table lists the YANG data nodes with corresponding
objects in the IF-MIB. objects in the IF-MIB.
+--------------------------------------+----------------------------+ +--------------------------------------+----------------------------+
| YANG data node in | IF-MIB object | | YANG data node in | IF-MIB object |
| /interfaces/interface | | | /interfaces/interface | |
+--------------------------------------+----------------------------+ +--------------------------------------+----------------------------+
| name | ifName | | name | ifName |
| type | ifType | | type | ifType |
| description | ifAlias | | description | ifAlias |
| admin-status | ifAdminStatus | | admin-status | ifAdminStatus |
skipping to change at page 10, line 42 skipping to change at page 10, line 42
| out-discards | ifOutDiscards | | out-discards | ifOutDiscards |
| out-errors | ifOutErrors | | out-errors | ifOutErrors |
+--------------------------------------+----------------------------+ +--------------------------------------+----------------------------+
YANG Data Nodes and Related IF-MIB Objects YANG Data Nodes and Related IF-MIB Objects
5. Interfaces YANG Module 5. Interfaces YANG Module
This YANG module imports typedefs from [RFC6991]. This YANG module imports typedefs from [RFC6991].
<CODE BEGINS> file "ietf-interfaces@2018-01-09.yang" <CODE BEGINS> file "ietf-interfaces@2018-02-20.yang"
module ietf-interfaces { module ietf-interfaces {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces"; namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces";
prefix if; prefix if;
import ietf-yang-types { import ietf-yang-types {
prefix yang; prefix yang;
} }
organization organization
"IETF NETMOD (Network Modeling) Working Group"; "IETF NETMOD (Network Modeling) Working Group";
contact contact
"WG Web: <http://tools.ietf.org/wg/netmod/> "WG Web: <https://datatracker.ietf.org/wg/netmod/>
WG List: <mailto:netmod@ietf.org> WG List: <mailto:netmod@ietf.org>
Editor: Martin Bjorklund Editor: Martin Bjorklund
<mailto:mbj@tail-f.com>"; <mailto:mbj@tail-f.com>";
description description
"This module contains a collection of YANG definitions for "This module contains a collection of YANG definitions for
managing network interfaces. managing network interfaces.
Copyright (c) 2018 IETF Trust and the persons identified as Copyright (c) 2018 IETF Trust and the persons identified as
authors of the code. All rights reserved. authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject without modification, is permitted pursuant to, and subject
to the license terms contained in, the Simplified BSD License to the license terms contained in, the Simplified BSD License
set forth in Section 4.c of the IETF Trust's Legal Provisions set forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents Relating to IETF Documents
(http://trustee.ietf.org/license-info). (https://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX; see This version of this YANG module is part of RFC 8343; see
the RFC itself for full legal notices."; the RFC itself for full legal notices.";
revision 2018-01-09 { revision 2018-02-20 {
description description
"Updated to support NMDA."; "Updated to support NMDA.";
reference reference
"RFC XXXX: A YANG Data Model for Interface Management"; "RFC 8343: A YANG Data Model for Interface Management";
} }
revision 2014-05-08 { revision 2014-05-08 {
description description
"Initial revision."; "Initial revision.";
reference reference
"RFC 7223: A YANG Data Model for Interface Management"; "RFC 7223: A YANG Data Model for Interface Management";
} }
/* /*
skipping to change at page 13, line 23 skipping to change at page 13, line 23
system-controlled interface cannot be used by the system system-controlled interface cannot be used by the system
(e.g., the interface hardware present does not match the (e.g., the interface hardware present does not match the
interface type), then the configuration is not applied to interface type), then the configuration is not applied to
the system-controlled interface shown in the operational the system-controlled interface shown in the operational
state. If the configuration of a user-controlled interface state. If the configuration of a user-controlled interface
cannot be used by the system, the configured interface is cannot be used by the system, the configured interface is
not instantiated in the operational state. not instantiated in the operational state.
System-controlled interfaces created by the system are System-controlled interfaces created by the system are
always present in this list in the operational state, always present in this list in the operational state,
whether they are configured or not."; whether or not they are configured.";
leaf name { leaf name {
type string; type string;
description description
"The name of the interface. "The name of the interface.
A device MAY restrict the allowed values for this leaf, A device MAY restrict the allowed values for this leaf,
possibly depending on the type of the interface. possibly depending on the type of the interface.
For system-controlled interfaces, this leaf is the For system-controlled interfaces, this leaf is the
device-specific name of the interface. device-specific name of the interface.
If a client tries to create configuration for a If a client tries to create configuration for a
system-controlled interface that is not present in the system-controlled interface that is not present in the
operational state, the server MAY reject the request if operational state, the server MAY reject the request if
the implementation does not support pre-provisioning of the implementation does not support pre-provisioning of
interfaces or if the name refers to an interface that can interfaces or if the name refers to an interface that can
never exist in the system. A NETCONF server MUST reply never exist in the system. A Network Configuration
with an rpc-error with the error-tag 'invalid-value' in Protocol (NETCONF) server MUST reply with an rpc-error
this case. with the error-tag 'invalid-value' in this case.
If the device supports pre-provisioning of interface If the device supports pre-provisioning of interface
configuration, the 'pre-provisioning' feature is configuration, the 'pre-provisioning' feature is
advertised. advertised.
If the device allows arbitrarily named user-controlled If the device allows arbitrarily named user-controlled
interfaces, the 'arbitrary-names' feature is advertised. interfaces, the 'arbitrary-names' feature is advertised.
When a configured user-controlled interface is created by When a configured user-controlled interface is created by
the system, it is instantiated with the same name in the the system, it is instantiated with the same name in the
skipping to change at page 19, line 43 skipping to change at page 20, line 6
management subsystem re-initialized itself."; management subsystem re-initialized itself.";
} }
leaf in-octets { leaf in-octets {
type yang:counter64; type yang:counter64;
description description
"The total number of octets received on the interface, "The total number of octets received on the interface,
including framing characters. including framing characters.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifHCInOctets"; "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
} }
leaf in-unicast-pkts { leaf in-unicast-pkts {
type yang:counter64; type yang:counter64;
description description
"The number of packets, delivered by this sub-layer to a "The number of packets, delivered by this sub-layer to a
higher (sub-)layer, that were not addressed to a higher (sub-)layer, that were not addressed to a
multicast or broadcast address at this sub-layer. multicast or broadcast address at this sub-layer.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts"; "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
} }
leaf in-broadcast-pkts { leaf in-broadcast-pkts {
type yang:counter64; type yang:counter64;
description description
"The number of packets, delivered by this sub-layer to a "The number of packets, delivered by this sub-layer to a
higher (sub-)layer, that were addressed to a broadcast higher (sub-)layer, that were addressed to a broadcast
address at this sub-layer. address at this sub-layer.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - "RFC 2863: The Interfaces Group MIB -
ifHCInBroadcastPkts"; ifHCInBroadcastPkts";
} }
leaf in-multicast-pkts { leaf in-multicast-pkts {
type yang:counter64; type yang:counter64;
description description
"The number of packets, delivered by this sub-layer to a "The number of packets, delivered by this sub-layer to a
higher (sub-)layer, that were addressed to a multicast higher (sub-)layer, that were addressed to a multicast
address at this sub-layer. For a MAC-layer protocol, address at this sub-layer. For a MAC-layer protocol,
this includes both Group and Functional addresses. this includes both Group and Functional addresses.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - "RFC 2863: The Interfaces Group MIB -
ifHCInMulticastPkts"; ifHCInMulticastPkts";
} }
leaf in-discards { leaf in-discards {
type yang:counter32; type yang:counter32;
description description
"The number of inbound packets that were chosen to be "The number of inbound packets that were chosen to be
discarded even though no errors had been detected to discarded even though no errors had been detected to
prevent their being deliverable to a higher-layer prevent their being deliverable to a higher-layer
protocol. One possible reason for discarding such a protocol. One possible reason for discarding such a
packet could be to free up buffer space. packet could be to free up buffer space.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifInDiscards"; "RFC 2863: The Interfaces Group MIB - ifInDiscards";
} }
leaf in-errors { leaf in-errors {
type yang:counter32; type yang:counter32;
description description
"For packet-oriented interfaces, the number of inbound "For packet-oriented interfaces, the number of inbound
packets that contained errors preventing them from being packets that contained errors preventing them from being
deliverable to a higher-layer protocol. For character- deliverable to a higher-layer protocol. For character-
oriented or fixed-length interfaces, the number of oriented or fixed-length interfaces, the number of
inbound transmission units that contained errors inbound transmission units that contained errors
preventing them from being deliverable to a higher-layer preventing them from being deliverable to a higher-layer
protocol. protocol.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifInErrors"; "RFC 2863: The Interfaces Group MIB - ifInErrors";
} }
leaf in-unknown-protos { leaf in-unknown-protos {
type yang:counter32; type yang:counter32;
description description
"For packet-oriented interfaces, the number of packets "For packet-oriented interfaces, the number of packets
received via the interface that were discarded because received via the interface that were discarded because
of an unknown or unsupported protocol. For of an unknown or unsupported protocol. For
character-oriented or fixed-length interfaces that character-oriented or fixed-length interfaces that
support protocol multiplexing, the number of support protocol multiplexing, the number of
transmission units received via the interface that were transmission units received via the interface that were
discarded because of an unknown or unsupported protocol. discarded because of an unknown or unsupported protocol.
For any interface that does not support protocol For any interface that does not support protocol
multiplexing, this counter is not present. multiplexing, this counter is not present.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifInUnknownProtos"; "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
} }
leaf out-octets { leaf out-octets {
type yang:counter64; type yang:counter64;
description description
"The total number of octets transmitted out of the "The total number of octets transmitted out of the
interface, including framing characters. interface, including framing characters.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifHCOutOctets"; "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
} }
leaf out-unicast-pkts { leaf out-unicast-pkts {
type yang:counter64; type yang:counter64;
description description
"The total number of packets that higher-level protocols "The total number of packets that higher-level protocols
requested be transmitted, and that were not addressed requested be transmitted and that were not addressed
to a multicast or broadcast address at this sub-layer, to a multicast or broadcast address at this sub-layer,
including those that were discarded or not sent. including those that were discarded or not sent.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts"; "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
} }
leaf out-broadcast-pkts { leaf out-broadcast-pkts {
type yang:counter64; type yang:counter64;
description description
"The total number of packets that higher-level protocols "The total number of packets that higher-level protocols
requested be transmitted, and that were addressed to a requested be transmitted and that were addressed to a
broadcast address at this sub-layer, including those broadcast address at this sub-layer, including those
that were discarded or not sent. that were discarded or not sent.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - "RFC 2863: The Interfaces Group MIB -
ifHCOutBroadcastPkts"; ifHCOutBroadcastPkts";
} }
leaf out-multicast-pkts { leaf out-multicast-pkts {
type yang:counter64; type yang:counter64;
description description
"The total number of packets that higher-level protocols "The total number of packets that higher-level protocols
requested be transmitted, and that were addressed to a requested be transmitted and that were addressed to a
multicast address at this sub-layer, including those multicast address at this sub-layer, including those
that were discarded or not sent. For a MAC-layer that were discarded or not sent. For a MAC-layer
protocol, this includes both Group and Functional protocol, this includes both Group and Functional
addresses. addresses.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - "RFC 2863: The Interfaces Group MIB -
ifHCOutMulticastPkts"; ifHCOutMulticastPkts";
} }
leaf out-discards { leaf out-discards {
type yang:counter32; type yang:counter32;
description description
"The number of outbound packets that were chosen to be "The number of outbound packets that were chosen to be
discarded even though no errors had been detected to discarded even though no errors had been detected to
prevent their being transmitted. One possible reason prevent their being transmitted. One possible reason
for discarding such a packet could be to free up buffer for discarding such a packet could be to free up buffer
space. space.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifOutDiscards"; "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
} }
leaf out-errors { leaf out-errors {
type yang:counter32; type yang:counter32;
description description
"For packet-oriented interfaces, the number of outbound "For packet-oriented interfaces, the number of outbound
skipping to change at page 24, line 4 skipping to change at page 24, line 18
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifOutDiscards"; "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
} }
leaf out-errors { leaf out-errors {
type yang:counter32; type yang:counter32;
description description
"For packet-oriented interfaces, the number of outbound "For packet-oriented interfaces, the number of outbound
packets that could not be transmitted because of errors. packets that could not be transmitted because of errors.
For character-oriented or fixed-length interfaces, the For character-oriented or fixed-length interfaces, the
number of outbound transmission units that could not be number of outbound transmission units that could not be
transmitted because of errors. transmitted because of errors.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifOutErrors"; "RFC 2863: The Interfaces Group MIB - ifOutErrors";
} }
} }
} }
} }
skipping to change at page 25, line 4 skipping to change at page 25, line 17
"Data nodes for the operational state of interfaces."; "Data nodes for the operational state of interfaces.";
list interface { list interface {
key "name"; key "name";
status deprecated; status deprecated;
description description
"The list of interfaces on the device. "The list of interfaces on the device.
System-controlled interfaces created by the system are System-controlled interfaces created by the system are
always present in this list, whether they are configured or always present in this list, whether or not they are
not."; configured.";
leaf name { leaf name {
type string; type string;
status deprecated; status deprecated;
description description
"The name of the interface. "The name of the interface.
A server implementation MAY map this leaf to the ifName A server implementation MAY map this leaf to the ifName
MIB object. Such an implementation needs to use some MIB object. Such an implementation needs to use some
mechanism to handle the differences in size and characters mechanism to handle the differences in size and characters
skipping to change at page 29, line 23 skipping to change at page 29, line 38
} }
leaf in-octets { leaf in-octets {
type yang:counter64; type yang:counter64;
status deprecated; status deprecated;
description description
"The total number of octets received on the interface, "The total number of octets received on the interface,
including framing characters. including framing characters.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifHCInOctets"; "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
} }
leaf in-unicast-pkts { leaf in-unicast-pkts {
type yang:counter64; type yang:counter64;
status deprecated; status deprecated;
description description
"The number of packets, delivered by this sub-layer to a "The number of packets, delivered by this sub-layer to a
higher (sub-)layer, that were not addressed to a higher (sub-)layer, that were not addressed to a
multicast or broadcast address at this sub-layer. multicast or broadcast address at this sub-layer.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts"; "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
} }
leaf in-broadcast-pkts { leaf in-broadcast-pkts {
type yang:counter64; type yang:counter64;
status deprecated; status deprecated;
description description
"The number of packets, delivered by this sub-layer to a "The number of packets, delivered by this sub-layer to a
higher (sub-)layer, that were addressed to a broadcast higher (sub-)layer, that were addressed to a broadcast
address at this sub-layer. address at this sub-layer.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - "RFC 2863: The Interfaces Group MIB -
ifHCInBroadcastPkts"; ifHCInBroadcastPkts";
} }
leaf in-multicast-pkts { leaf in-multicast-pkts {
type yang:counter64; type yang:counter64;
status deprecated; status deprecated;
description description
"The number of packets, delivered by this sub-layer to a "The number of packets, delivered by this sub-layer to a
higher (sub-)layer, that were addressed to a multicast higher (sub-)layer, that were addressed to a multicast
address at this sub-layer. For a MAC-layer protocol, address at this sub-layer. For a MAC-layer protocol,
this includes both Group and Functional addresses. this includes both Group and Functional addresses.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - "RFC 2863: The Interfaces Group MIB -
ifHCInMulticastPkts"; ifHCInMulticastPkts";
} }
leaf in-discards { leaf in-discards {
type yang:counter32; type yang:counter32;
status deprecated; status deprecated;
description description
"The number of inbound packets that were chosen to be "The number of inbound packets that were chosen to be
discarded even though no errors had been detected to discarded even though no errors had been detected to
prevent their being deliverable to a higher-layer prevent their being deliverable to a higher-layer
protocol. One possible reason for discarding such a protocol. One possible reason for discarding such a
packet could be to free up buffer space. packet could be to free up buffer space.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifInDiscards"; "RFC 2863: The Interfaces Group MIB - ifInDiscards";
} }
leaf in-errors { leaf in-errors {
type yang:counter32; type yang:counter32;
status deprecated; status deprecated;
description description
"For packet-oriented interfaces, the number of inbound "For packet-oriented interfaces, the number of inbound
packets that contained errors preventing them from being packets that contained errors preventing them from being
deliverable to a higher-layer protocol. For character- deliverable to a higher-layer protocol. For character-
oriented or fixed-length interfaces, the number of oriented or fixed-length interfaces, the number of
inbound transmission units that contained errors inbound transmission units that contained errors
preventing them from being deliverable to a higher-layer preventing them from being deliverable to a higher-layer
protocol. protocol.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifInErrors"; "RFC 2863: The Interfaces Group MIB - ifInErrors";
} }
leaf in-unknown-protos { leaf in-unknown-protos {
type yang:counter32; type yang:counter32;
status deprecated; status deprecated;
description description
skipping to change at page 31, line 38 skipping to change at page 32, line 6
received via the interface that were discarded because received via the interface that were discarded because
of an unknown or unsupported protocol. For of an unknown or unsupported protocol. For
character-oriented or fixed-length interfaces that character-oriented or fixed-length interfaces that
support protocol multiplexing, the number of support protocol multiplexing, the number of
transmission units received via the interface that were transmission units received via the interface that were
discarded because of an unknown or unsupported protocol. discarded because of an unknown or unsupported protocol.
For any interface that does not support protocol For any interface that does not support protocol
multiplexing, this counter is not present. multiplexing, this counter is not present.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifInUnknownProtos"; "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
} }
leaf out-octets { leaf out-octets {
type yang:counter64; type yang:counter64;
status deprecated; status deprecated;
description description
"The total number of octets transmitted out of the "The total number of octets transmitted out of the
interface, including framing characters. interface, including framing characters.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifHCOutOctets"; "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
} }
leaf out-unicast-pkts { leaf out-unicast-pkts {
type yang:counter64; type yang:counter64;
status deprecated; status deprecated;
description description
"The total number of packets that higher-level protocols "The total number of packets that higher-level protocols
requested be transmitted, and that were not addressed requested be transmitted and that were not addressed
to a multicast or broadcast address at this sub-layer, to a multicast or broadcast address at this sub-layer,
including those that were discarded or not sent. including those that were discarded or not sent.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts"; "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
} }
leaf out-broadcast-pkts { leaf out-broadcast-pkts {
type yang:counter64; type yang:counter64;
status deprecated; status deprecated;
description description
"The total number of packets that higher-level protocols "The total number of packets that higher-level protocols
requested be transmitted, and that were addressed to a requested be transmitted and that were addressed to a
broadcast address at this sub-layer, including those broadcast address at this sub-layer, including those
that were discarded or not sent. that were discarded or not sent.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - "RFC 2863: The Interfaces Group MIB -
ifHCOutBroadcastPkts"; ifHCOutBroadcastPkts";
} }
leaf out-multicast-pkts { leaf out-multicast-pkts {
type yang:counter64; type yang:counter64;
status deprecated; status deprecated;
description description
"The total number of packets that higher-level protocols "The total number of packets that higher-level protocols
requested be transmitted, and that were addressed to a requested be transmitted and that were addressed to a
multicast address at this sub-layer, including those multicast address at this sub-layer, including those
that were discarded or not sent. For a MAC-layer that were discarded or not sent. For a MAC-layer
protocol, this includes both Group and Functional protocol, this includes both Group and Functional
addresses. addresses.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - "RFC 2863: The Interfaces Group MIB -
ifHCOutMulticastPkts"; ifHCOutMulticastPkts";
} }
leaf out-discards { leaf out-discards {
type yang:counter32; type yang:counter32;
status deprecated; status deprecated;
description description
"The number of outbound packets that were chosen to be "The number of outbound packets that were chosen to be
discarded even though no errors had been detected to discarded even though no errors had been detected to
prevent their being transmitted. One possible reason prevent their being transmitted. One possible reason
for discarding such a packet could be to free up buffer for discarding such a packet could be to free up buffer
space. space.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifOutDiscards"; "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
} }
leaf out-errors { leaf out-errors {
type yang:counter32; type yang:counter32;
status deprecated; status deprecated;
description description
"For packet-oriented interfaces, the number of outbound "For packet-oriented interfaces, the number of outbound
packets that could not be transmitted because of errors. packets that could not be transmitted because of errors.
For character-oriented or fixed-length interfaces, the For character-oriented or fixed-length interfaces, the
number of outbound transmission units that could not be number of outbound transmission units that could not be
transmitted because of errors. transmitted because of errors.
Discontinuities in the value of this counter can occur Discontinuities in the value of this counter can occur
at re-initialization of the management system, and at at re-initialization of the management system and at
other times as indicated by the value of other times as indicated by the value of
'discontinuity-time'."; 'discontinuity-time'.";
reference reference
"RFC 2863: The Interfaces Group MIB - ifOutErrors"; "RFC 2863: The Interfaces Group MIB - ifOutErrors";
} }
} }
} }
} }
} }
skipping to change at page 34, line 31 skipping to change at page 35, line 11
Registrant Contact: The IESG. Registrant Contact: The IESG.
XML: N/A, the requested URI is an XML namespace. XML: N/A, the requested URI is an XML namespace.
This document registers a YANG module in the "YANG Module Names" This document registers a YANG module in the "YANG Module Names"
registry [RFC6020]. registry [RFC6020].
name: ietf-interfaces name: ietf-interfaces
namespace: urn:ietf:params:xml:ns:yang:ietf-interfaces namespace: urn:ietf:params:xml:ns:yang:ietf-interfaces
prefix: if prefix: if
reference: RFC XXXX reference: RFC 8343
7. Security Considerations 7. Security Considerations
The YANG module specified in this document defines a schema for data The YANG module specified in this document defines a schema for data
that is designed to be accessed via network management protocols such that is designed to be accessed via network management protocols such
as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer
is the secure transport layer, and the mandatory-to-implement secure is the secure transport layer, and the mandatory-to-implement secure
transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer
is HTTPS, and the mandatory-to-implement secure transport is TLS is HTTPS, and the mandatory-to-implement secure transport is TLS
[RFC5246]. [RFC5246].
The NETCONF access control model [RFC6536] provides the means to The NETCONF access control model [RFC8341] provides the means to
restrict access for particular NETCONF or RESTCONF users to a restrict access for particular NETCONF or RESTCONF users to a
preconfigured subset of all available NETCONF or RESTCONF protocol preconfigured subset of all available NETCONF or RESTCONF protocol
operations and content. operations and content.
There are a number of data nodes defined in the YANG module which are There are a number of data nodes defined in this YANG module that are
writable/creatable/deletable (i.e., config true, which is the writable/creatable/deletable (i.e., config true, which is the
default). These data nodes may be considered sensitive or vulnerable default). These data nodes may be considered sensitive or vulnerable
in some network environments. Write operations (e.g., <edit-config>) in some network environments. Write operations (e.g., edit-config)
to these data nodes without proper protection can have a negative to these data nodes without proper protection can have a negative
effect on network operations. These are the subtrees and data nodes effect on network operations. These are the subtrees and data nodes
and their sensitivity/vulnerability: and their sensitivity/vulnerability:
/interfaces/interface: This list specifies the configured interfaces /interfaces/interface: This list specifies the configured interfaces
on a device. Unauthorized access to this list could cause the on a device. Unauthorized access to this list could cause the
device to ignore packets it should receive and process. device to ignore packets it should receive and process.
/interfaces/interface/enabled: This leaf controls whether an /interfaces/interface/enabled: This leaf controls whether or not an
interface is enabled or not. Unauthorized access to this leaf interface is enabled. Unauthorized access to this leaf could
could cause the device to ignore packets it should receive and cause the device to ignore packets it should receive and process.
process.
8. Acknowledgments
The author wishes to thank Alexander Clemm, Per Hedeland, Ladislav
Lhotka, and Juergen Schoenwaelder for their helpful comments.
9. References
9.1. Normative References 8. References
[I-D.ietf-netmod-revised-datastores] 8.1. Normative References
Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K.,
and R. Wilton, "Network Management Datastore
Architecture", draft-ietf-netmod-revised-datastores-07
(work in progress), November 2017.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, <https://www.rfc- DOI 10.17487/RFC2119, March 1997,
editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group [RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group
MIB", RFC 2863, DOI 10.17487/RFC2863, June 2000, MIB", RFC 2863, DOI 10.17487/RFC2863, June 2000,
<https://www.rfc-editor.org/info/rfc2863>. <https://www.rfc-editor.org/info/rfc2863>.
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
DOI 10.17487/RFC3688, January 2004, <https://www.rfc- DOI 10.17487/RFC3688, January 2004,
editor.org/info/rfc3688>. <https://www.rfc-editor.org/info/rfc3688>.
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security [RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.2", RFC 5246, (TLS) Protocol Version 1.2", RFC 5246,
DOI 10.17487/RFC5246, August 2008, <https://www.rfc- DOI 10.17487/RFC5246, August 2008,
editor.org/info/rfc5246>. <https://www.rfc-editor.org/info/rfc5246>.
[RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for
the Network Configuration Protocol (NETCONF)", RFC 6020, the Network Configuration Protocol (NETCONF)", RFC 6020,
DOI 10.17487/RFC6020, October 2010, <https://www.rfc- DOI 10.17487/RFC6020, October 2010,
editor.org/info/rfc6020>. <https://www.rfc-editor.org/info/rfc6020>.
[RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
and A. Bierman, Ed., "Network Configuration Protocol and A. Bierman, Ed., "Network Configuration Protocol
(NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011,
<https://www.rfc-editor.org/info/rfc6241>. <https://www.rfc-editor.org/info/rfc6241>.
[RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure
Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011,
<https://www.rfc-editor.org/info/rfc6242>. <https://www.rfc-editor.org/info/rfc6242>.
[RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration
Protocol (NETCONF) Access Control Model", RFC 6536,
DOI 10.17487/RFC6536, March 2012, <https://www.rfc-
editor.org/info/rfc6536>.
[RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types",
RFC 6991, DOI 10.17487/RFC6991, July 2013, RFC 6991, DOI 10.17487/RFC6991, July 2013,
<https://www.rfc-editor.org/info/rfc6991>. <https://www.rfc-editor.org/info/rfc6991>.
[RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
RFC 7950, DOI 10.17487/RFC7950, August 2016, RFC 7950, DOI 10.17487/RFC7950, August 2016,
<https://www.rfc-editor.org/info/rfc7950>. <https://www.rfc-editor.org/info/rfc7950>.
[RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
<https://www.rfc-editor.org/info/rfc8040>. <https://www.rfc-editor.org/info/rfc8040>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>. May 2017, <https://www.rfc-editor.org/info/rfc8174>.
9.2. Informative References [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration
Access Control Model", STD 91, RFC 8341,
DOI 10.17487/RFC8341, March 2018,
<https://www.rfc-editor.org/info/rfc8341>.
[I-D.ietf-netmod-yang-tree-diagrams] [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K.,
Bjorklund, M. and L. Berger, "YANG Tree Diagrams", draft- and R. Wilton, "Network Management Datastore Architecture
ietf-netmod-yang-tree-diagrams-02 (work in progress), (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018,
October 2017. <https://www.rfc-editor.org/info/rfc8342>.
8.2. Informative References
[RFC7224] Bjorklund, M., "IANA Interface Type YANG Module", [RFC7224] Bjorklund, M., "IANA Interface Type YANG Module",
RFC 7224, DOI 10.17487/RFC7224, May 2014, RFC 7224, DOI 10.17487/RFC7224, May 2014,
<https://www.rfc-editor.org/info/rfc7224>. <https://www.rfc-editor.org/info/rfc7224>.
[RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams",
BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018,
<https://www.rfc-editor.org/info/rfc8340>.
Appendix A. Example: Ethernet Interface Module Appendix A. Example: Ethernet Interface Module
This section gives a simple example of how an Ethernet interface This section gives a simple example of how an Ethernet interface
module could be defined. It demonstrates how media-specific module could be defined. It demonstrates how media-specific
configuration parameters can be conditionally augmented to the configuration parameters can be conditionally augmented to the
generic interface list. It also shows how operational state generic interface list. It also shows how operational state
parameters can be conditionally augmented to the operational parameters can be conditionally augmented to the operational
interface list. The example is not intended as a complete module for interface list. The example is not intended as a complete module for
Ethernet configuration. Ethernet configuration.
skipping to change at page 41, line 8 skipping to change at page 41, line 16
"If a vlan-id is defined, a base-interface must "If a vlan-id is defined, a base-interface must
be specified."; be specified.";
} }
} }
} }
} }
Appendix D. Example: NETCONF <get-config> Reply Appendix D. Example: NETCONF <get-config> Reply
This section gives an example of a reply to the NETCONF <get-config> This section gives an example of a reply to the NETCONF <get-config>
request for <running> for a device that implements the example data request for the running configuration datastore for a device that
models above. implements the example data models above.
<rpc-reply <rpc-reply
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"
message-id="101"> message-id="101">
<data> <data>
<interfaces <interfaces
xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces" xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"
xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type" xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"
xmlns:vlan="http://example.com/vlan"> xmlns:vlan="http://example.com/vlan">
skipping to change at page 42, line 8 skipping to change at page 42, line 14
<enabled>true</enabled> <enabled>true</enabled>
</interface> </interface>
</interfaces> </interfaces>
</data> </data>
</rpc-reply> </rpc-reply>
Appendix E. Example: NETCONF <get-data> Reply Appendix E. Example: NETCONF <get-data> Reply
This section gives an example of a reply to the NETCONF <get-data> This section gives an example of a reply to the NETCONF <get-data>
request for <operational> for a device that implements the example request for the operational state datastore for a device that
data models above. implements the example data models above.
This example uses the "origin" annotation, which is defined in the This example uses the "origin" annotation, which is defined in the
module "ietf-origin" [I-D.ietf-netmod-revised-datastores]. module "ietf-origin" [RFC8342].
<rpc-reply <rpc-reply
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"
message-id="101"> message-id="101">
<data xmlns="urn:ietf:params:xml:ns:yang:ietf-netconf-datastores"> <data xmlns="urn:ietf:params:xml:ns:yang:ietf-netconf-datastores">
<interfaces <interfaces
xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces" xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"
xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type" xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"
xmlns:vlan="http://example.com/vlan" xmlns:vlan="http://example.com/vlan"
xmlns:or="urn:ietf:params:xml:ns:yang:ietf-origin"> xmlns:or="urn:ietf:params:xml:ns:yang:ietf-origin">
skipping to change at page 48, line 24 skipping to change at page 49, line 5
If necessary, the operator can move the configuration named If necessary, the operator can move the configuration named
"acme-interface" over to a different physical interface with an "acme-interface" over to a different physical interface with an
<edit-config> containing: <edit-config> containing:
<interface nc:operation="merge"> <interface nc:operation="merge">
<name>acme-interface</name> <name>acme-interface</name>
<vlan:base-interface>eth3</vlan:base-interface> <vlan:base-interface>eth3</vlan:base-interface>
</interface> </interface>
Acknowledgments
The author wishes to thank Alexander Clemm, Per Hedeland, Ladislav
Lhotka, and Juergen Schoenwaelder for their helpful comments.
Author's Address Author's Address
Martin Bjorklund Martin Bjorklund
Tail-f Systems Tail-f Systems
Email: mbj@tail-f.com Email: mbj@tail-f.com
 End of changes. 85 change blocks. 
193 lines changed or deleted 186 lines changed or added

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