< draft-clemm-nmrg-dist-intent-01.txt   draft-clemm-nmrg-dist-intent-02.txt >
Network Working Group A. Clemm Network Working Group A. Clemm
Internet-Draft Huawei Internet-Draft Futurewei
Intended status: Informational L. Ciavaglia Intended status: Informational L. Ciavaglia
Expires: January 19, 2019 Nokia Expires: January 9, 2020 Nokia
L. Granville L. Granville
Federal University of Rio Grande do Sul (UFRGS) Federal University of Rio Grande do Sul (UFRGS)
July 18, 2018 J. Tantsura
Apstra, Inc.
July 8, 2019
Clarifying the Concepts of Intent and Policy Intent-Based Networking - Concepts and Overview
draft-clemm-nmrg-dist-intent-01 draft-clemm-nmrg-dist-intent-02
Abstract Abstract
Intent and Intent-Based Networking are taking the industry by storm. Intent and Intent-Based Networking are taking the industry by storm.
At the same time, those terms are used loosely and often At the same time, those terms are used loosely and often
inconsistently, in many cases overlapping with other concepts such as inconsistently, in many cases overlapping and confused with other
"policy". This document is therefore intended to clarify the concept concepts such as "policy". This document is intended to clarify the
of "Intent" and how it relates to other concepts. The goal is to concept of "Intent" and provide an overview of functionality that
contribute towards a common and shared understanding of terms and associated with it. The goal is to contribute towards a common and
concepts which can then be used as foundation to guide further shared understanding of terms, concepts, and functionality which can
definition of valid research and engineering problems and their be used as foundation to guide further definition of associated
solutions. research and engineering problems and their solutions.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 19, 2019. This Internet-Draft will expire on January 9, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2019 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
(https://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 . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Key Words . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Key Words . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Definitions and Acronyms . . . . . . . . . . . . . . . . . . 4 3. Definitions and Acronyms . . . . . . . . . . . . . . . . . . 4
4. Introduction of Concepts . . . . . . . . . . . . . . . . . . 4 4. Introduction of Concepts . . . . . . . . . . . . . . . . . . 5
4.1. Service Models . . . . . . . . . . . . . . . . . . . . . 4 4.1. Intent and Intent-Based Management . . . . . . . . . . . 5
4.2. Policy and Policy-Based Management . . . . . . . . . . . 6 4.2. Related Concepts . . . . . . . . . . . . . . . . . . . . 6
4.3. Intent and Intent-Based Management . . . . . . . . . . . 7 4.2.1. Service Models . . . . . . . . . . . . . . . . . . . 7
5. Distinguishing between Intent, Policy, and Service Models . . 8 4.2.2. Policy and Policy-Based Management . . . . . . . . . 8
6. Items for Discussion . . . . . . . . . . . . . . . . . . . . 9 4.2.3. Distinguishing between Intent, Policy, and Service
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 Models . . . . . . . . . . . . . . . . . . . . . . . 10
8. Security Considerations . . . . . . . . . . . . . . . . . . . 10 5. Principles . . . . . . . . . . . . . . . . . . . . . . . . . 11
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 6. Lifecycle . . . . . . . . . . . . . . . . . . . . . . . . . . 14
9.1. Normative References . . . . . . . . . . . . . . . . . . 10 7. Intent-Based Networking - Functionality . . . . . . . . . . . 16
9.2. Informative References . . . . . . . . . . . . . . . . . 10 7.1. Intent Fulfillment . . . . . . . . . . . . . . . . . . . 17
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 7.2. Intent Assurance . . . . . . . . . . . . . . . . . . . . 17
8. Research Challenges . . . . . . . . . . . . . . . . . . . . . 17
8.1. Intent Interfaces . . . . . . . . . . . . . . . . . . . . 17
8.2. Explanation Component . . . . . . . . . . . . . . . . . . 18
8.3. IBN Metrics to Guide Desired Outcomes . . . . . . . . . . 18
9. Items for Discussion . . . . . . . . . . . . . . . . . . . . 18
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19
11. Security Considerations . . . . . . . . . . . . . . . . . . . 19
12. References . . . . . . . . . . . . . . . . . . . . . . . . . 19
12.1. Normative References . . . . . . . . . . . . . . . . . . 19
12.2. Informative References . . . . . . . . . . . . . . . . . 19
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 20
1. Introduction 1. Introduction
Traditionally in the IETF, interest with regard to management and Traditionally in the IETF, interest with regard to management and
operations has focused on individual network and device features. operations has focused on individual network and device features.
Standardization emphasis has generally been put on management Standardization emphasis has generally been put on management
instrumentation that needed to be provided by a networking device. A instrumentation that needed to be provided to a networking device. A
prime example for this is SNMP-based management and the 200+ MIBs prime example for this is SNMP-based management and the 200+ MIBs
that have been defined by the IETF over the years. More recent that have been defined by the IETF over the years. More recent
examples include YANG data model definitions for aspects such as examples include YANG data model definitions for aspects such as
interface configuration, ACL configuration, or Syslog configuration. interface configuration, ACL configuration, or Syslog configuration.
There is a sense that managing networks by configuring myriads of There is a sense and reality that in modern network environments
"nerd knobs" on a device-by-device basis is no longer sustainable in managing networks by configuring myriads of "nerd knobs" on a device-
modern network environments. Big challenges arise with keeping by-device basis is no longer sustainable. Big challenges arise with
device configurations not only consistent across a network, but keeping device configurations not only consistent across a network,
consistent with the needs of services they are supposed to enable. but consistent with the needs of services and service features they
At the same time, operations need to be streamlined and automated are supposed to enable. Adoptability to changes at scale is a
wherever possible to not only lower operational expenses, but allow fundamental property of a well designed IBN system, that requires
for rapid reconfiguration of networks at sub-second time scales. abilty to consume and process analytics that are context/intent aware
at near real time speeds. At the same time, operations need to be
streamlined and automated wherever possible to not only lower
operational expenses, but allow for rapid reconfiguration of networks
at sub-second time scales and to ensure networks are delivering their
functionality as expected.
Accordingly, IETF has begun to address end-to-end management aspects Accordingly, IETF has begun to address end-to-end management aspects
that go beyond the realm of individual devices in isolation. that go beyond the realm of individual devices in isolation.
Examples include the definition of YANG models for network topology Examples include the definition of YANG models for network topology
[RFC8345] or the introduction of service models used by service [RFC8345] or the introduction of service models used by service
orchestration systems and controllers [RFC8309]. In addition, a lot orchestration systems and controllers [RFC8309]. In addition, a lot
of interest has been fueled by the discussion about how to manage of interest has been fueled by the discussion about how to manage
autonomic networks as discussed in the ANIMA working group. autonomic networks as discussed in the ANIMA working group.
Autonomic networks are driven by the desire to lower operational Autonomic networks are driven by the desire to lower operational
expenses and make management of the network as a whole exceptionally expenses and make management of the network as a whole exceptionally
easy, putting it at odds with the need to manage the network one easy, putting it at odds with the need to manage the network one
device and one feature at a time. However, while autonomic networks device and one feature at a time. However, while autonomic networks
are intended to exhibit "self-management" properties, they still are intended to exhibit "self-management" properties, they still
skipping to change at page 3, line 17 skipping to change at page 3, line 35
orchestration systems and controllers [RFC8309]. In addition, a lot orchestration systems and controllers [RFC8309]. In addition, a lot
of interest has been fueled by the discussion about how to manage of interest has been fueled by the discussion about how to manage
autonomic networks as discussed in the ANIMA working group. autonomic networks as discussed in the ANIMA working group.
Autonomic networks are driven by the desire to lower operational Autonomic networks are driven by the desire to lower operational
expenses and make management of the network as a whole exceptionally expenses and make management of the network as a whole exceptionally
easy, putting it at odds with the need to manage the network one easy, putting it at odds with the need to manage the network one
device and one feature at a time. However, while autonomic networks device and one feature at a time. However, while autonomic networks
are intended to exhibit "self-management" properties, they still are intended to exhibit "self-management" properties, they still
require input from an operator or outside system to provide require input from an operator or outside system to provide
operational guidance and information about the goals, purposes, and operational guidance and information about the goals, purposes, and
service instances that the network is to serve. It is in this service instances that the network is to serve.
context that the term "intent" was coined for the first time.
This vision has since caught on with the industry in a big way, This vision has since caught on with the industry in a big way,
leading to countless offerings that tout "intent-based management" leading to a significant number solutions that offer "intent-based
that promise network providers to manage networks holistically at a management" that promise network providers to manage networks
higher level of abstraction and as a system that happens to consist holistically at a higher level of abstraction and as a system that
of interconnected components, as opposed to a set of independent happens to consist of interconnected components, as opposed to a set
devices (that happen to be interconnected). Those offerings include of independent devices (that happen to be interconnected). Those
offerings include IBN systems (offering full lifecycle of intent),
SDN controllers (offering a single point of control and SDN controllers (offering a single point of control and
administration for a network) as well as network management and administration for a network) as well as network management and
Operations Support Systems (OSS). Operations Support Systems (OSS).
However, it has been recognized for a long time that comprehensive However, it has been recognized for a long time that comprehensive
management solutions cannot operate only at the level of individual management solutions cannot operate only at the level of individual
devices and low-level configurations. In this sense, the vision of devices and low-level configurations. In this sense, the vision of
"intent" is not entirely new. In the past, ITU-T's model of a "intent" is not entirely new. In the past, ITU-T's model of a
Telecommunications Management Network, TMN, introduced a set of Telecommunications Management Network, TMN, introduced a set of
management layers that defined a management hierarchy, consisting of management layers that defined a management hierarchy, consisting of
skipping to change at page 3, line 50 skipping to change at page 4, line 20
This abstraction hierarchy was accompanied by an information This abstraction hierarchy was accompanied by an information
hierarchy that concerned itself at the lowest level with device- hierarchy that concerned itself at the lowest level with device-
specific information, but that would, at higher layers, include, for specific information, but that would, at higher layers, include, for
example, end-to-end service instances. Similarly, the concept of example, end-to-end service instances. Similarly, the concept of
"policy-based management" has for a long time touted the ability to "policy-based management" has for a long time touted the ability to
allow users to manage networks by specifying high-level management allow users to manage networks by specifying high-level management
policies, with policy systems automatically "rendering" those policies, with policy systems automatically "rendering" those
policies, i.e. breaking them down into low-level configurations and policies, i.e. breaking them down into low-level configurations and
control logic. control logic.
What is missing, however, is putting these concepts into a more What has been missing, however, is putting these concepts into a more
current context and defining a reference model that goes beyond a current context and updating it to account for current technology
TMN. This document attempts to clarify terminology and explain how trends. This document attempts to clarify the concepts behind
intent relates to other, similar concepts, in hope that a common and intent. It differentiates it from related concepts. It also
shared understanding of terms and concepts can be used as a provides an overview of first-order principles of Intent-Based
foundation to articulate research and engineering problems and their Networking as well as associated functionality. In addition, a
solutions. number of research challenges are highlighted. The goal is to
contribute to a common and shared understanding that can be used as a
foundation to articulate research and engineering problems in the
area of Intent-Based Networking.
2. Key Words 2. Key Words
The key words "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 BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here. capitals, as shown here.
3. Definitions and Acronyms 3. Definitions and Acronyms
ACL: Access Control List ACL: Access Control List
Intent: An abstract, high-level policy used to operate a network Intent: An abstracted, declarative and vendor agnostic set of
[RFC7575]. rules used to provide full lifecycle (Design/Build/Deploy/
Validate) to a network and services it provides.
Policy: A rule, or set of rules, that governs the choices in Policy: A rule, or set of rules, that governs the choices in
behavior of a system. behavior of a system.
SSoT: Single Source of Truth - A functional block in an IBN system
that normalizes user' intent and serves as the single source of
data for the lower layers.
IBA: Intent Based Analytics - Analytics that are defined and
derived from user' intent and used to validate the intended state.
PDP: Policy Decision Point PDP: Policy Decision Point
PEP: Policy Enforcement Point PEP: Policy Enforcement Point
Service Model: A model that represents a service that is provided Service Model: A model that represents a service that is provided
by a network to a user. by a network to a user.
4. Introduction of Concepts 4. Introduction of Concepts
The following subsections provide an overview of the concepts of The following section provides an overview of the concept of intent
service models, of policies respectively policy-based management, and respectively intent-based management. It also provides an overview
of intent respectively intent-based management. While the of the related concepts of service models, and of policies
descriptions are intentionally kept brief and do not provide detailed respectively policy-based management, and explains how they relate to
tutorials, they should convey the bigger picture of the purpose of intent and intent-based management.
each concept and provide a sense where those concepts are similar and
where they differ. With this background, the differences between
them are subsequently summarized in in another section.
4.1. Service Models 4.1. Intent and Intent-Based Management
In the context of Autonomic Networks, Intent is defined as "an
abstract, high-level policy used to operate a network" [RFC7575].
According to this definition, an intent is a specific type of policy.
However, to avoid using "intent" simply as a synonym for "policy, a
clearer distinction needs to be introduced that distinguishes intent
clearly from other types of policies.
For one, while Intent-Based Management clearly aims to lead towards
networks that are dramatically simpler to manage and operate
requiring only minimal outside intervention, the concept of "intent"
is not limited to autonomic networks, but applies to any network.
Networks, even when considered "autonomic", are not clairvoyant and
have no way of automatically knowing particular operational goals nor
what instances of networking services to support. In other words,
they do not know what the "intent" of the network provider is that
gives the network the purpose of its being. This still needs to be
communicated by what informally constitutes "intent".
More specifically, intent is a declaration of operational goals that
a network should meet and outcomes that the network is supposed to
deliver, without specifying how to achieve them. Those goals and
outcomes are defined in a manner that is purely declarative - they
specify what to accomplish, not how to achieve it. "Intent" thus
applies several important concepts simultaneously:
o It provides data abstraction: Users and operators do not need to
be concerned with low-level device configuration and nerd knobs.
o It provides functional abstraction from particular management and
control logic: Users and operators do not need to be concerned
even with how to achieve a given intent. What is specified is a
desired outcome, with the intent-based system automatically
figuring out a course of action (e.g. a set of rules, an
algorithm) for how to achieve the outcome.
In an autonomic network, intent should be rendered by the network
itself, i.e. translated into device-specific rules and courses of
action. Ideally, it should not even be orchestrated or broken down
by a higher-level, centralized system, but by the network devices
themselves using a combination of distributed algorithms and local
device abstraction. Because intent holds for the network as a whole,
not individual devices, it needs to be automatically disseminated
across all devices in the network, which can themselves decide
whether they need to act on it. This facilitates management even
further, since it obviates the need for a higher-layer system to
break down and decompose higher-level intent, and because there is no
need to even discover and maintain an inventory of the network to be
able to manage it.
Tentative definition for intent-based networks Networks configuring
and adapting autonomously to the user or operator intentions (i.e., a
desired state or behavior) without the need to specify every
technical detail of the process and operations to achieve it (i.e.,
the "machines" will figure out on their own how to realize the user
goal).
Other definitions of intent exist such as [TR523] and will be
investigated in future revisions of this document. Likewise, some
definitions of intent allow for the presence of a centralized
function that renders the intent into lower-level policies or
instructions and orchestrates them across the network. While to the
end user the concept of "intent" appears the same regardless of its
method of rendering, this interpretation opens a slippery slope of
how to clearly distinguish "intent" from other higher-layer
abstractions. Again, these notions will be further investigated in
future revisions of this document and in collaboration with NMRG.
4.2. Related Concepts
4.2.1. Service Models
A service model is a model that represents a service that is provided A service model is a model that represents a service that is provided
by a network to a user. Per [RFC8309], a service model describes a by a network to a user. Per [RFC8309], a service model describes a
service and its parameters in a portable way that can be used service and its parameters in a portable/vendor agnostic way that can
independent of the equipment and operating environment on which the be used independent of the equipment and operating environment on
service is realized. Two subcategories are distinguished: a which the service is realized. Two subcategories are distinguished:
"Customer Service Model" describes an instance of a service as a "Customer Service Model" describes an instance of a service as
provided to a customer, possibly associated with a service order. A provided to a customer, possibly associated with a service order. A
"Service Delivery Model" describes how a service is instantiated over "Service Delivery Model" describes how a service is instantiated over
existing networking infrastructure. existing networking infrastructure.
An example of a service could be a Layer 3 VPN service [RFC8299], a An example of a service could be a Layer 3 VPN service [RFC8299], a
Network Slice, or residential Internet access. Service models Network Slice, or residential Internet access. Service models
represent service instances as entities in their own right. Services represent service instances as entities in their own right. Services
have their own parameters, actions, and lifecycles. Typically, have their own parameters, actions, and lifecycles. Typically,
service instances can be bound to end users, who might be billed for service instances can be bound to end users, who might be billed for
the service. the service.
Instantiating a service typically involves multiple aspects: Instantiating a service typically involves multiple aspects:
o Resources need to be allocated, such as IP addresses, interfaces, o A user (or northbound system) needs to define and/or request a
bandwidth, or memory. service to be instantiated.
o Resources need to be allocated, such as IP addresses, AS numbers,
VLAN or VxLAN pools, interfaces, bandwidth, or memory.
o How to map services to the resources needs to be defined. o How to map services to the resources needs to be defined.
Multiple mappings are often possible, which to select may depend Multiple mappings are often possible, which to select may depend
on context (such as which type of access is available to connect on context (such as which type of access is available to connect
the end user with the service). the end user with the service).
o Bindings need to be maintained between upper- and lower-level o [I-D.ietf-teas-te-service-mapping-yang] is an example of such
mapping - a data model to map customer service models (e.g., the
L3VPM Service Model) to Traffic Engineering (TE) models (e.g., the
TE Tunnel or the Abstraction and Control of Traffic Engineered
Networks Virtual Network model)
o Bindings need to be maintained between upper and lower-level
objects. objects.
o Once instantiated, the service needs to be validated and assured
to ensure that the network indeed delivers the service as
requested.
They involve a system, such as a controller, that provides They involve a system, such as a controller, that provides
provisioning logic. Orchestration itself is generally conducted provisioning logic. Orchestration itself is generally conducted
using a "push" model, in which the controller/manager initiates the using a "push" model, in which the controller/manager initiates the
operations as required, pushing down the specific configurations to operations as required, pushing down the specific configurations to
the device. The device itself typically remains agnostic to the the device. (In addition to instantiating and creating new instances
service or the fact that its resources or configurations are part of of a service, updating, modifying, and decommissioning services need
a service/concept at a higher layer. to be also supported.) The device itself typically remains agnostic
to the service or the fact that its resources or configurations are
part of a service/concept at a higher layer.
Instantiated service models map to instantiated lower-layer network Instantiated service models map to instantiated lower-layer network
and device models. Examples include instances of paths, or instances and device models. Examples include instances of paths, or instances
of specific port configurations. The service model typically also of specific port configurations. The service model typically also
models dependencies and layering of services over lower-layer models dependencies and layering of services over lower-layer
networking resources that are used to provide services. This networking resources that are used to provide services. This
facilitates management by allowing to follow dependencies for facilitates management by allowing to follow dependencies for
troubleshooting activities, to perform impact analysis in which troubleshooting activities, to perform impact analysis in which
events in the network are assessed regarding their impact on services events in the network are assessed regarding their impact on services
and customers Services are typically orchestrated and provisioned and customers. Services are typically orchestrated and provisioned
top-to-bottom, which also facilitates keeping track of the assignment top-to-bottom, which also facilitates keeping track of the assignment
of network resources. of network resources. Service models might also be associated with
other data that does not concern the network but provides business
context. This includes things such as customer data (such as billing
information), service orders and service catalogues, tariffs, service
contracts, and Service Level Agreements (SLAs) including contractual
agreements regarding remediation actions.
Service models also associate with other data that does not concern Like intent, service models provide higher layers of abstraction.
the network but provides business context. This includes things such Service models are often also complemented with mappings that capture
as customer data (such as billing information), service orders and dependencies between service and device or network configurations.
service catalogues, tariffs, service contracts, and Service Level Unlike intent, service models do not allow to define a desired
Agreements (SLAs) including contractual agreements regarding "outcome" that would be automatically maintained by the intent
remediation actions. system. Instead, management of service models requires development
of sophisticated algorithms and control logic by network providers or
system integrators.
4.2. Policy and Policy-Based Management 4.2.2. Policy and Policy-Based Management
Policy-based management (PBM) is a management paradigm that separates Policy-based management (PBM) is a management paradigm that separates
the rules that govern the behavior of a system from the functionality the rules that govern the behavior of a system from the functionality
of the system. It promises to reduce maintenance costs of of the system. It promises to reduce maintenance costs of
information and communication systems while improving flexibility and information and communication systems while improving flexibility and
runtime adaptability. It is today present at the heart of a runtime adaptability. It is present today at the heart of a
multitude of management architectures and paradigms including SLA- multitude of management architectures and paradigms including SLA-
driven, Business-driven, autonomous, adaptive, and self-* management driven, Business-driven, autonomous, adaptive, and self-* management
[Boutaba07]. The interested reader is asked to refer to the rich set [Boutaba07]. The interested reader is asked to refer to the rich set
of existing literature which includes this and many other references. of existing literature which includes this and many other references.
In the following, we an only provide a much-abridged and distilled In the following, we will only provide a much-abridged and distilled
overview. overview.
At the heart of policy-based management is the concept of a policy. At the heart of policy-based management is the concept of a policy.
Multiple definitions of policy exist: "Policies are rules governing Multiple definitions of policy exist: "Policies are rules governing
the choices in behavior of a system" [Sloman94]. "Policy is a set of the choices in behavior of a system" [Sloman94]. "Policy is a set of
rules that are used to manage and control the changing and/or rules that are used to manage and control the changing and/or
maintaining of the state of one or more managed objects" maintaining of the state of one or more managed objects"
[Strassner03]. Common to most definitions is the definition of a [Strassner03]. Common to most definitions is the definition of a
policy as a "rule". Typically, the definition of a rule consists of policy as a "rule". Typically, the definition of a rule consists of
an event (whose occurrence triggers a rule), a set of conditions an event (whose occurrence triggers a rule), a set of conditions
(that get assessed and that must be true before any actions are (that get assessed and that must be true before any actions are
actually "fired"), and finally a set of one or more actions that are actually "fired"), and finally a set of one or more actions that are
carried out when the condition holds. carried out when the condition holds.
Policy-based management can be considered an imperative management Policy-based management can be considered an imperative management
paradigm: Policies specify precisely what needs to be done when. paradigm: Policies specify precisely what needs to be done when and
Using policies, management can in effect be defined as a set of in which circumstance. Using policies, management can in effect be
simple control loops. This makes policy-based management a suitable defined as a set of simple control loops. This makes policy-based
technology to implement autonomic behavior that can exhibit self-* management a suitable technology to implement autonomic behavior that
management properties including self-configuration, self-healing, can exhibit self-* management properties including self-
self-optimization, and self-protection. In effect, policies define configuration, self-healing, self-optimization, and self-protection.
simple control loops typically used to define management as a set of In effect, policies define management as a set of simple control
simple control loops. loops.
Policies typically involve a certain degree of abstraction in order Policies typically involve a certain degree of abstraction in order
to cope with heterogeneity of networking devices. Rather than having to cope with heterogeneity of networking devices. Rather than having
a device-specific policy that defines events, conditions, and actions a device-specific policy that defines events, conditions, and actions
in terms of device-specific commands, parameters, and data models, in terms of device-specific commands, parameters, and data models,
policy is defined at a higher-level of abstraction involving a policy is defined at a higher-level of abstraction involving a
canonical model of systems and devices to which the policy is to be canonical model of systems and devices to which the policy is to be
applied. A policy agent on the device subsequently "renders" the applied. A policy agent on a controller or the device subsequently
policy, i.e., translates the canonical model into a device-specific "renders" the policy, i.e., translates the canonical model into a
representation. This concept allows to apply the same policy across device-specific representation. This concept allows to apply the
a wide range of devices without needing to define multiple variants. same policy across a wide range of devices without needing to define
This enables operational scale and allows network operators and multiple variants. In other words - policy definition is de-coupled
authors of policies to think in higher terms of abstraction than from policy instantiation and policy enforcement. This enables
device specifics. operational scale and allows network operators and authors of
policies to think in higher terms of abstraction than device
specifics and be able to reuse the same, high level definition
defintion across different networking domains, WAN, DC or public
cloud.
Policy-based management is typically "push-based": Policies are Policy-based management is typically "push-based": Policies are
pushed onto devices where they are rendered and enforced. The push pushed onto devices where they are rendered and enforced. The push
operations are conducted by a manager or controller, which is operations are conducted by a manager or controller, which is
responsible for deploying policies across the network and monitor responsible for deploying policies across the network and monitor
their proper operation. That said, other policy architectures are their proper operation. That said, other policy architectures are
possible. For example, policy-based management can also include a possible. For example, policy-based management can also include a
pull-component in which the decision regarding which action to take pull-component in which the decision regarding which action to take
is delegated to a so-called Policy Decision Point (PDP). This PDP is delegated to a so-called Policy Decision Point (PDP). This PDP
can reside outside the managed device itself and has typically global can reside outside the managed device itself and has typically global
skipping to change at page 7, line 31 skipping to change at page 10, line 17
but lacks the full definition of the policy or the ability to reach a but lacks the full definition of the policy or the ability to reach a
conclusion regarding the expected action, it reaches out to the PDP conclusion regarding the expected action, it reaches out to the PDP
for a decision (reached, for example, by deciding on an action based for a decision (reached, for example, by deciding on an action based
on various conditions). Subsequently, the device carries out the on various conditions). Subsequently, the device carries out the
decision as returned by the PDP - the device "enforces" the policy decision as returned by the PDP - the device "enforces" the policy
and hence acts as a PEP (Policy Enforcement Point). Either way, PBM and hence acts as a PEP (Policy Enforcement Point). Either way, PBM
architectures typically involve a central component from which architectures typically involve a central component from which
policies are deployed across the network, and/or policy decisions policies are deployed across the network, and/or policy decisions
served. served.
4.3. Intent and Intent-Based Management Like Intent, policies provide a higher layer of abstraction. Policy
systems are also able to capture dynamic aspects of the system under
In the context of Autonomic Networks, Intent is defined as "an management through specification of rules that allow to define
abstract, high-level policy used to operate a network" [RFC7575]. various triggers for certain courses of actions. Unlike intent, the
According to this definition, an intent is a specific type of policy. definition of those rules (and courses of actions) still needs to be
However, to avoid using "intent" simply as a synonym for "policy, a articulated by users. Since the intent is unknown, conflict
clearer distinction needs to be introduced that distinguishes intent resolution within or between policies requires interactions with a
clearly from other types of policies. user or some kind of logic that resides outside of PBM.
Autonomic networks are expected to "self-manage" and operate with
minimal outside intervention. However, autonomic networks are not
clairvoyant and have no way of automatically knowing particular
operational goals nor what instances of networking services to
support. In other words, they do not know what the "intent" of the
network provider is that gives the network the purpose of its being.
This still needs to be communicated by what informally constitutes
"intent".
More specifically, intent is a declaration of high-level operational
goals that a network should meet, without specifying how to achieve
them. Those goals are defined in a manner that is purely declarative
- they specify what to accomplish or what the desired outcome for the
network operator is, not how to achieve it. This encompasses
abstraction from low-level device configurations, as well as
abstraction from particular management and control logic such as when
to spring into action.
In an autonomic network, intent should be rendered by the network
itself, i.e. translated into device specific rules and courses of
action. Ideally, it should not even be orchestrated or broken down
by a higher-level, centralized system, but by the network devices
themselves using a combination of distributed algorithms and local
device abstraction. Because intent holds for the network as a whole,
not individual devices, it needs to be automatically disseminated
across all devices in the network, which can themselves decide
whether they need to act on it. This facilitates management even
further, since it obviates the need for a higher-layer system to
break down and decompose higher-level intent, and because there is no
need to even discover and maintain an inventory of the network to be
able to manage it. Intent thus constitutes declarative policy with a
network-wide scope. A human operator defines 'what' is expected, and
the network computes a solution meeting the requirements. This
computation can occur in distributed or even decentralized fashion by
auonomic functions that reside on network nodes.
Other definitions of intent exist such as [TR523] and will be
investigated in future revisions of this document. Likewise, some
definitions of intent allow for the presence of a centralized
function that renders the intent into lower-level policies or
instructions and orchestrates them across the network. While to the
end user the concept of "intent" appears the same regardless of its
method of rendering, this interpretation opens a slippery slope of
how to clearly distinguish "intent" from other higher-layer
abstractions. Again, these notions will be further investigated in
future revisions of this document and in collaboration with NMRG.
5. Distinguishing between Intent, Policy, and Service Models 4.2.3. Distinguishing between Intent, Policy, and Service Models
What Intent, Policy, and Service Models all have in common is the What Intent, Policy, and Service Models all have in common is the
fact that they involve a higher-layer of abstraction of a network fact that they involve a higher-layer of abstraction of a network
that does not involve device-specifics, that generally transcends that does not involve device-specifics, that generally transcends
individual devices, and that makes the network easier to manage for individual devices, and that makes the network easier to manage for
applications and human users compared to having to manage the network applications and human users compared to having to manage the network
one device at a time. Beyond that, differences emerge. Service one device at a time. Beyond that, differences emerge. Service
models have less in common with policy and intent than policy and models have less in common with policy and intent than policy and
intent do with each other. intent do with each other.
Summarized differences: Summarized differences:
o A service model is a data model that is used to describe instances o A service model is a data model that is used to describe instances
of services that are provided to customers. A service model has of services that are provided to customers. A service model has
dependencies on lower models (device and network models) when dependencies on lower level models (device and network models)
describing how the service is mapped onto underlying network and when describing how the service is mapped onto underlying network
IT infrastructure. Instantiating a service model requires and IT infrastructure. Instantiating a service model requires
orchestration by a system; the logic for how to orchestration by a system; the logic for how to
orchestrate/manage/provide the service model and how to map it orchestrate/manage/provide the service model, and how to map it
onto underlying resources is not included as part of the model onto underlying resources, is not included as part of the model
itself. itself.
o Policy is a set of rules, typically modeled around a variation of o Policy is a set of rules, typically modeled around a variation of
events/conditions/actions, used to express simple control loops events/conditions/actions, used to express simple control loops
that can be rendered by devices themselves, without requiring that can be rendered by devices themselves, without requiring
intervention by outside system. Policy is used to define what to intervention by outside system. Policy lets users define what to
do under what circumstances, but it does not specify a desired do under what circumstances, but it does not specify a desired
outcome. outcome.
o Intent is a higher-level declarative policy that operates at the o Intent is a higher-level declarative policy that operates at the
level of a network, not individual devices. It is used to define level of a network and services it provides, not individual
outcomes and high-level operational goals, without the need to devices. It is used to define outcomes and high-level operational
enumerate specific events, conditions, and actions. Ideally, goals, without the need to enumerate specific events, conditions,
intent is rendered by the network itself; also the dissemination and actions. Which algorithm or rules to apply can be
of intent across the network and any required coordination between automatically "learned/derived from intent" by the intent system.
nodes is resolved by the network itself without the need for In the context of autonomic networking, ideally, intent is
outside systems. rendered by the network itself; also the dissemination of intent
across the network and any required coordination between nodes is
resolved by the network itself without the need for outside
systems.
The TM Forum's Business Process Framework for network service One analogy to capture the difference between policy and intent
providers [eTOM] categorizes network operations broadly into three systems is that of Expert Systems and Learning Systems in the field
categories: Fulfillment, Assurance, and Billing. Intent is generally of Artificial Intelligence. Expert Systems operate on knowledge
tied to fulfillment, broadly defined as all activities and processes bases with rules that are supplied by users. They are able to make
having to do with configuration of the network to fulfill a given automatic inferences based on those rules, but are not able to
purpose. It is not tied to assurance, broadly defined as all "learn" on their own. Learning Systems (popularized by deep learning
activities and processes having to do with keeping the network and and neural networks), on the other hand, are able to learn without
services running (including monitoring, measuring, reporting, depending on user programming. However, they do require a learning
assessing compliance of service levels with service level objectives, or training phase and explanations of actions that the system
diagnostics, etc). Policy, on the other hand, aligns more closely actually takes provide a different set of challenges.
with assurance.
6. Items for Discussion 5. Principles
The following operating principles allow characterizing the intent-
based/-driven/-defined nature of a system.
1. Single Source of Truth (SSoT) and Single Version/View of Truth
(SVoT). The SSoT is an essential component of an intent-based
system as it enables several important operations. The set of
validated intent expressions is the system's SSoT. SSoT and the
records of the operational states enable comparing the intented
state and actual state of the system and determining drift
between them. SsoT and the drift information provide the basis
for corrective actions. If the intent-based is equipped with
prediction capabilities or means, it can further develop
strategies to anticipate, plan and pro-actively act on the
diverging trends with the aim to minimize their impact. Beyond
providing a means for consistent system operation, SSoT also
allows for better traceability to validate if/how the initial
intent and associated business goals have been properly met, to
evaluate the impacts of changes in the intent parameters and
impacts and effects of the events occurring in the system.
Single Version (or View) of Truth derives from the SSoT and can
be used to perform other operations such as query, poll or filter
the measured and correlated information to create so-called
"views". These views can serve the operators and/or the users of
the intent-based system. To create intents as single sources of
truth, the intent-based system must follow well-specified and
well-documented processes and models. In other contexts
[Lenrow15], SSoT is also referred to as the invariance of the
intent.
2. One touch but not one shot. In an ideal intent-based system, the
user expresses its intents in one form or another and then the
system takes over all subsequent operations (one touch). A zero-
touch approach could also be imagined in case where the intent-
based system has the capabilities or means to recognize
intentions in any form of data. However, the zero- or one-touch
approach should not be mistaken the fact that reaching the state
of a well-formed and valid intent expression is not a one-shot
process. On the contrary, the interfacing between the user and
the intent-based system could be designed as an interactive and
interactive process. Depending on the level of abstraction, the
intent expressions will initially contain more or less implicit
parts, and unprecise or unknown parameters and constraints. The
role of the intent-based system is to parse, understand and
refine the intent expression to reach a well-formed and valid
intent expression that can be further used by the system for the
fulfillment and assurance operations. An intent refinement
process could use a combination of iterative steps involving the
user to validate the proposed refined intent and to ask the user
for clarifications in case some parameters or variables could not
be deduced or learned by the means of the system itself. In
addition, the Intent-Based System will need to moderate between
conflicting intent, helping users to properly choose between
intent alternatives that may have different ramifications.
3. Autonomy and Oversight. A desirable goal for an intent-based
system is to offer a high degree of flexibility and freedom on
both the user side and system side, e.g. by giving the user the
ability to express intents using its own terms, by supporting
different forms of expression of intents and being capable of
refining the intent expressions to well-formed and exploitable
expressions. The dual principle of autonomy and oversight allows
to operate a system that will have the necessary levels of
autonomy to conduct its tasks and operations without requiring
intervention of the user and taking its own decisions (within its
areas of concern and span of control) as how to perform and meet
the user expiations in terms of performance and quality, while at
the same time providing the proper level of oversight to satisfy
the user requirements for reporting and escalation of relevant
information. to be added: description for feedback, reporting,
guarantee scope (check points, guard rails, dynamically
provisioned, context rich, regular operation vs. exception/
abnormal, information zoom in-out, and link to SVoT. Accountable
for decisions and efficiency, late binding (leave it to the
system where to place functionality, how to accomplish certain
goals).
4. Learning. An intent-based system is a learning system. By
contrast to imperative type of system, such as Event-Condition-
Action policy rules, where the user define beforehand the
expected behavior of the system to various event and conditions,
in an intent-based system, the user only declare what the system
should achieve and not how to achieve these goals. There is thus
a transfer of reasoning/rationality from the human (domain
knowledge) to the system. This transfer of cognitive capability
implies also the availability in the intent-based system of
capabilities or means for learning, reasoning and knowledge
representation and management. The learning abilities of an
intent-based systems can apply to different tasks such as
optimization of the intent rendering or intent refinement
processes. The fact that an intent-based system is a
continuously evolving system creates the condition for continuous
learning and optimization. Other cognitive capabilities such as
planning can also be leveraged in an intent-based system to
anticipate or forecast future system state and response to
changes in intents or network conditions and thus elaboration of
plans to accommodate the changes while preserving system
stability and efficiency in a trade-off with cost and robustness
of operations. Cope with unawareness of users (smart
recommendations).
5. Explainability. Need expressive network capabilities,
requirements and constraints to be able to compose/decompose
intents, map user's expectation to system capabilities.
capability exposure. not just automation of steps that need to
be taken, but of bridging the semantic gap between "intent" and
actionable levels of instructions Context: multi providers, need
discovery and semantic descriptions Explainability: why is a
network doing what it is doing
6. Abstraction - users do not need to be concerned with how intent
is achieved
Additional principles will be described in future revision of this
document addressing aspects such as: Target groups not individual
devices, agnostic to implementation details, user-friendly, user
vocabulary vs. language of the device/network, explainability,
validation and troubleshooting, how to resolve and point out
conflicts (between intents), reconcile the reality of what is
possible with the fiction of what the user would want, "moderate",
awareness of operating within system boundaries, outcome-driven
((what not how, for the user);(what and how/where, for the
operator).not imperative/instruction based.).
The above principles will be further used to understand implications
on the design of intent-based systems and their supporting
architecture, and derive functional and operational requirements.
6. Lifecycle
user related user data <-----<-+--------+
data + + | |
| | | |
+----v------+ +-----v-----+ | |
| recognize +---+ +-----+ generate | | |
user +-----------+ | | +-----------+ | |
space | | | |
+--------------------------------------------------------------------+
system | | | |
space +---v---v---+ +----------+ +-----+-----+ |
| translate <-->+ validate <---> recommend | |
+-----+-----+ +----------+ +-----------+ |
| |
+-----v-----+ |
| normalize | |
+-----+-----+ |
| |
+-----v-----+ |
| decompose | |
+-----+-----+ |
| |
+------v------+ |
| communicate | |
+------+------+ |
preparation | |
phase | |
+-------------------------------------------------------------------+
operation | |
phase +-----v----+ |
| fullfill | |
+-----+----+ |
| |
+----v----+ +--------+ |
| observe +-----> report +-------------------+
+----+----+ +--------+
|
+----v---+
| assure |
+--------+
Figure 1: Intent Lifecycle
The intent lifecycle is work in progress. Todo: Intent attributes,
intent states. Distinguish flow from users to network, and from
network to user.
Another version is depicted below. Some of the aspects worth
highlighting:
o There is a distinction between the traditional network operations
realm on one hand (providing fulfillment and assurance functions),
and the user realm on the other hand (who needs to give direction
to the network and be given information and reports regarding how
the network is doing. Intent-Based Systems provide the link
between those two realms.
o There is a genuine distinction between fulfillment operations,
used to drive intent into the network, orchestrate configuration
operations etc, aand assurance operations intended to gain a sense
of whether the network is performing as intended.
User Space : Translation / IBS : Network Ops
: Space : Space
: :
+---------+ : +----------+ +-----------+ : +---------+
Fulfill |recognize| ---> |translate/|-->|learn/plan/| ---> | config/ |
|intent | <--- | refine | | render | : |provision|
+---------+ : +----------+ +-----^-----+ : +---------+
: | : |
..............................................|..................|.....
: +----+---+ : v
: |validate| : +----------+
: +----^---+ <------| monitor/ |
Assure +-------+ : +---------+ +-----+---+ : | observe/ |
|report | <---- |abstract |<---| analyze | <------| assure |
+-------+ : +---------+ |aggregate| : +----------+
: +---------+ :
Figure 2: Intent Lifecycle 2
7. Intent-Based Networking - Functionality
Intent-Based Networking involves a wide variety of functions which
can be roughly divided into two categories:
o Intent Fulfillment provides functions and interfaces that allow
users to communicate intent to the network, and that orchestrates
the intent, i.e. that breaks down intent abstractions into lower-
level network and device abstractions and performs or coordinates
the configuration operations across the network.
o Intent Assurance provides functions and interfaces that allow
users to validate and monitor that the network is indeed adhering
to and complying with intent. Control plane or lower-level
management operations can cause behavior that inadvertently
conflicts with intent which was orchestrated earlier.
Accordingly, "intent drift" may occur. Network operators need to
be able to detect when such drift occurs, or is about to occur,
and be provided with the necessary functions to resolve such
conflicts. This can occur by either bringing the network back
into compliance, or by articulating modifications to the original
intent to moderate between conflicting interests.
The following sections provide a more comprehensive overview of those
functions.
7.1. Intent Fulfillment
RBD
7.2. Intent Assurance
Ability to reason about system' state by employing closed-loop
validation in the presence of an inevitable change is a fundamental
property of an Intent Assurance part of an IBN system. Since service
expectations are created during intent consumption and modeling
phase, closed-loop intent vaidation should start immidiatelly, with
the service instantiation. Telemetry consumed could then be enriched
with an additional context and must always be processed in context of
the Intent it has been instantiated. Direct relationship between the
Intent and telemetry gathered enables correlation between changes in
states and the Intent and provides contextual base for reasoning
about the changes.
8. Research Challenges
8.1. Intent Interfaces
One goal for intent-based systems is to have the system "infer" the
intent of the user, rather than requiring the users to provide a
precise and complete set of instructions. Instead of forcing users
to speak the language of the system, the system should be able to
adapt to the needs of the user.
This requires new ways of interacting with users. An intent
interface may no longer necessarily involve an interface or API with
a clearly defined syntax and set of parameters. Instead, it may
apply alternative styles, for example of iterative interrogation- or
interview-style interfaces in which the system requests additional
information from the user as needed to provide clarification, to
select between alternatives, to refine intent.
8.2. Explanation Component
In an Intent-Based System, some of the actions taken by the network
or behavior observed may be difficult to understand, analogous to
deep learning systems which may have difficulty explaining their
actions. In a networking environment, this can create some problems
of its own, such as ensuring that the system is indeed functioning
correctly and not compromised, necessary to give network providers
the confidence that the Intent-Based Systems can indeed be relied on
in business-critical applications.
8.3. IBN Metrics to Guide Desired Outcomes
As Intent-Based Networks are driven by desired outcomes, how to
assess the quality of expected outcomes becomes critical.
Corresponding metrics and evaluation functions become the basis by
which IBNs can choose between different alternatives, and assess
their ability to "learn" and make progress.
9. Items for Discussion
Arguably, given the popularity of the term intent, its use could be Arguably, given the popularity of the term intent, its use could be
broadened to encompass also known concepts ("intent-washing"). For broadened to encompass also known concepts ("intent-washing"). For
example, it is conceivable to introduce intent-based terms for example, it is conceivable to introduce intent-based terms for
various concepts that, although already known, are related to the various concepts that, although already known, are related to the
context of intent. Each of those terms could then designate an context of intent. Each of those terms could then designate an
intent subcategory, for example: intent subcategory, for example:
o Operational Intent: defines intent related to operational goals of o Operational Intent: defines intent related to operational goals of
an operator; corresponds to the original "intent" term. an operator; corresponds to the original "intent" term.
skipping to change at page 10, line 18 skipping to change at page 19, line 5
o Rule Intent: a synonym for policy rules regarding what to do when o Rule Intent: a synonym for policy rules regarding what to do when
certain events occur. certain events occur.
o Service intent: a synonym for customer service model [RFC8309]. o Service intent: a synonym for customer service model [RFC8309].
o Flow Intent: A synonym for a Service Level Objective for a given o Flow Intent: A synonym for a Service Level Objective for a given
flow. flow.
Whether to do so is an item for discussion by the Research Group. Whether to do so is an item for discussion by the Research Group.
7. IANA Considerations 10. IANA Considerations
Not applicable Not applicable
8. Security Considerations 11. Security Considerations
Not applicable Not applicable
9. References 12. References
9.1. Normative References 12.1. Normative References
[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, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[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 12.2. Informative References
[Boutaba07] [Boutaba07]
Boutaba, R. and I. Aib, "Policy-Based Management: A Boutaba, R. and I. Aib, "Policy-Based Management: A
Historical perspective. Journal of Network and Systems Historical perspective. Journal of Network and Systems
Management (JNSM), Springer, Vol. 15 (4).", December 2007. Management (JNSM), Springer, Vol. 15 (4).", December 2007.
[eTOM] "GB 921 Business Process Framework, Release 17.0.1.", [eTOM] TMForum, "GB 921 Business Process Framework, Release
February 2018. 17.0.1.", February 2018.
[I-D.ietf-teas-te-service-mapping-yang]
Lee, Y., Dhody, D., Ceccarelli, D., Tantsura, J.,
Fioccola, G., and Q. Wu, "Traffic Engineering and Service
Mapping Yang Model", draft-ietf-teas-te-service-mapping-
yang-01 (work in progress), March 2019.
[Lenrow15]
Lenrow, D., "Intent As The Common Interface to Network
Resources, Intent Based Network Summit 2015 ONF Boulder:
IntentNBI", February 2015.
[RFC7575] Behringer, M., Pritikin, M., Bjarnason, S., Clemm, A., [RFC7575] Behringer, M., Pritikin, M., Bjarnason, S., Clemm, A.,
Carpenter, B., Jiang, S., and L. Ciavaglia, "Autonomic Carpenter, B., Jiang, S., and L. Ciavaglia, "Autonomic
Networking: Definitions and Design Goals", RFC 7575, Networking: Definitions and Design Goals", RFC 7575,
DOI 10.17487/RFC7575, June 2015, DOI 10.17487/RFC7575, June 2015,
<https://www.rfc-editor.org/info/rfc7575>. <https://www.rfc-editor.org/info/rfc7575>.
[RFC8299] Wu, Q., Ed., Litkowski, S., Tomotaki, L., and K. Ogaki, [RFC8299] Wu, Q., Ed., Litkowski, S., Tomotaki, L., and K. Ogaki,
"YANG Data Model for L3VPN Service Delivery", RFC 8299, "YANG Data Model for L3VPN Service Delivery", RFC 8299,
DOI 10.17487/RFC8299, January 2018, DOI 10.17487/RFC8299, January 2018,
skipping to change at page 11, line 34 skipping to change at page 20, line 28
[Sloman94] [Sloman94]
Sloman, M., "Policy Driven Management for Distributed Sloman, M., "Policy Driven Management for Distributed
Systems. Journal of Network and Systems Management (JNSM), Systems. Journal of Network and Systems Management (JNSM),
Springer, Vol. 2 (4).", December 1994. Springer, Vol. 2 (4).", December 1994.
[Strassner03] [Strassner03]
Strassner, J., "Policy-Based Network Management. Strassner, J., "Policy-Based Network Management.
Elsevier.", 2003. Elsevier.", 2003.
[TR523] "Intent NBI - Definition and Principles. ONF TR-523.", [TR523] Foundation, O. N., "Intent NBI - Definition and
October 2016. Principles. ONF TR-523.", October 2016.
Authors' Addresses Authors' Addresses
Alexander Clemm Alexander Clemm
Huawei Futurewei
2330 Central Expressway 2330 Central Expressway
Santa Clara, CA 95050 Santa Clara, CA 95050
USA USA
Email: ludwig@clemm.org Email: ludwig@clemm.org
Laurent Ciavaglia Laurent Ciavaglia
Nokia Nokia
Route de Villejust Route de Villejust
Nozay 91460 Nozay 91460
FR FR
Email: laurent.ciavaglia@nokia.com Email: laurent.ciavaglia@nokia.com
Lisandro Zambenedetti Granville Lisandro Zambenedetti Granville
Federal University of Rio Grande do Sul (UFRGS) Federal University of Rio Grande do Sul (UFRGS)
Av. Bento Goncalves Av. Bento Goncalves
Porto Alegre 9500 Porto Alegre 9500
BR BR
Email: granville@inf.ufrgs.br Email: granville@inf.ufrgs.br
Jeff Tantsura
Apstra, Inc.
Email: jefftant.ietf@gmail.com
 End of changes. 50 change blocks. 
189 lines changed or deleted 568 lines changed or added

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