rfc8924.original | rfc8924.txt | |||
---|---|---|---|---|
Internet Engineering Task Force S. Aldrin | Internet Engineering Task Force (IETF) S. Aldrin | |||
Internet-Draft Google | Request for Comments: 8924 Google | |||
Intended status: Informational C. Pignataro, Ed. | Category: Informational C. Pignataro, Ed. | |||
Expires: November 26, 2020 N. Kumar, Ed. | ISSN: 2070-1721 N. Kumar, Ed. | |||
Cisco | Cisco | |||
R. Krishnan | R. Krishnan | |||
VMware | VMware | |||
A. Ghanwani | A. Ghanwani | |||
Dell | Dell | |||
May 25, 2020 | September 2020 | |||
Service Function Chaining (SFC) | Service Function Chaining (SFC) Operations, Administration, and | |||
Operations, Administration and Maintenance (OAM) Framework | Maintenance (OAM) Framework | |||
draft-ietf-sfc-oam-framework-15 | ||||
Abstract | Abstract | |||
This document provides a reference framework for Operations, | This document provides a reference framework for Operations, | |||
Administration and Maintenance (OAM) for Service Function Chaining | Administration, and Maintenance (OAM) for Service Function Chaining | |||
(SFC). | (SFC). | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This document is not an Internet Standards Track specification; it is | |||
provisions of BCP 78 and BCP 79. | published for informational purposes. | |||
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 https://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). Not all documents | |||
approved by the IESG are candidates for any level of Internet | ||||
Standard; see Section 2 of RFC 7841. | ||||
This Internet-Draft will expire on November 26, 2020. | 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/rfc8924. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2020 IETF Trust and the persons identified as the | Copyright (c) 2020 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 . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction | |||
1.1. Document Scope . . . . . . . . . . . . . . . . . . . . . 4 | 1.1. Document Scope | |||
1.2. Acronyms and Terminology . . . . . . . . . . . . . . . . 4 | 1.2. Acronyms and Terminology | |||
1.2.1. Acronyms . . . . . . . . . . . . . . . . . . . . . . 4 | 1.2.1. Acronyms | |||
1.2.2. Terminology . . . . . . . . . . . . . . . . . . . . . 5 | 1.2.2. Terminology | |||
2. SFC Layering Model . . . . . . . . . . . . . . . . . . . . . 5 | 2. SFC Layering Model | |||
3. SFC OAM Components . . . . . . . . . . . . . . . . . . . . . 6 | 3. SFC OAM Components | |||
3.1. The SF Component . . . . . . . . . . . . . . . . . . . . 8 | 3.1. The SF Component | |||
3.1.1. SF Availability . . . . . . . . . . . . . . . . . . . 8 | 3.1.1. SF Availability | |||
3.1.2. SF Performance Measurement . . . . . . . . . . . . . 9 | 3.1.2. SF Performance Measurement | |||
3.2. The SFC Component . . . . . . . . . . . . . . . . . . . . 9 | 3.2. The SFC Component | |||
3.2.1. SFC Availability . . . . . . . . . . . . . . . . . . 9 | 3.2.1. SFC Availability | |||
3.2.2. SFC Performance Measurement . . . . . . . . . . . . . 10 | 3.2.2. SFC Performance Measurement | |||
3.3. Classifier Component . . . . . . . . . . . . . . . . . . 10 | 3.3. Classifier Component | |||
3.4. Underlay Network . . . . . . . . . . . . . . . . . . . . 10 | 3.4. Underlay Network | |||
3.5. Overlay Network . . . . . . . . . . . . . . . . . . . . . 10 | 3.5. Overlay Network | |||
4. SFC OAM Functions . . . . . . . . . . . . . . . . . . . . . . 11 | 4. SFC OAM Functions | |||
4.1. Connectivity Functions . . . . . . . . . . . . . . . . . 11 | 4.1. Connectivity Functions | |||
4.2. Continuity Functions . . . . . . . . . . . . . . . . . . 11 | 4.2. Continuity Functions | |||
4.3. Trace Functions . . . . . . . . . . . . . . . . . . . . . 12 | 4.3. Trace Functions | |||
4.4. Performance Measurement Functions . . . . . . . . . . . . 12 | 4.4. Performance Measurement Functions | |||
5. Gap Analysis . . . . . . . . . . . . . . . . . . . . . . . . 13 | 5. Gap Analysis | |||
5.1. Existing OAM Functions . . . . . . . . . . . . . . . . . 13 | 5.1. Existing OAM Functions | |||
5.2. Missing OAM Functions . . . . . . . . . . . . . . . . . . 14 | 5.2. Missing OAM Functions | |||
5.3. Required OAM Functions . . . . . . . . . . . . . . . . . 14 | 5.3. Required OAM Functions | |||
6. Operational Aspects of SFC OAM at the Service Layer . . . . . 14 | 6. Operational Aspects of SFC OAM at the Service Layer | |||
6.1. SFC OAM Packet Marker . . . . . . . . . . . . . . . . . . 14 | 6.1. SFC OAM Packet Marker | |||
6.2. OAM Packet Processing and Forwarding Semantic . . . . . . 15 | 6.2. OAM Packet Processing and Forwarding Semantic | |||
6.3. OAM Function Types . . . . . . . . . . . . . . . . . . . 16 | 6.3. OAM Function Types | |||
7. Candidate SFC OAM Tools . . . . . . . . . . . . . . . . . . . 16 | 7. Candidate SFC OAM Tools | |||
7.1. ICMP . . . . . . . . . . . . . . . . . . . . . . . . . . 16 | 7.1. ICMP | |||
7.2. BFD/Seamless-BFD . . . . . . . . . . . . . . . . . . . . 16 | 7.2. BFD / Seamless BFD | |||
7.3. In-Situ OAM . . . . . . . . . . . . . . . . . . . . . . . 17 | 7.3. In Situ OAM | |||
7.4. SFC Traceroute . . . . . . . . . . . . . . . . . . . . . 17 | 7.4. SFC Traceroute | |||
8. Manageability Considerations . . . . . . . . . . . . . . . . 18 | 8. Manageability Considerations | |||
9. Security Considerations . . . . . . . . . . . . . . . . . . . 18 | 9. Security Considerations | |||
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 | 10. IANA Considerations | |||
11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 19 | 11. Informative References | |||
12. Contributing Authors . . . . . . . . . . . . . . . . . . . . 20 | Acknowledgements | |||
13. Informative References . . . . . . . . . . . . . . . . . . . 20 | Contributors | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 23 | Authors' Addresses | |||
1. Introduction | 1. Introduction | |||
Service Function Chaining (SFC) enables the creation of composite | Service Function Chaining (SFC) enables the creation of composite | |||
services that consist of an ordered set of Service Functions (SF) | services that consist of an ordered set of Service Functions (SFs) | |||
that are to be applied to any traffic selected as a result of | that are to be applied to any traffic selected as a result of | |||
classification [RFC7665]. SFC is a concept that provides for more | classification [RFC7665]. SFC is a concept that provides for more | |||
than just the application of an ordered set of SFs to selected | than just the application of an ordered set of SFs to selected | |||
traffic; rather, it describes a method for deploying SFs in a way | traffic; rather, it describes a method for deploying SFs in a way | |||
that enables dynamic ordering and topological independence of those | that enables dynamic ordering and topological independence of those | |||
SFs as well as the exchange of metadata between participating | SFs as well as the exchange of metadata between participating | |||
entities. The foundations of SFC are described in the following | entities. The foundations of SFC are described in the following | |||
documents: | documents: | |||
o SFC Problem Statement [RFC7498] | * SFC Problem Statement [RFC7498] | |||
o SFC Architecture [RFC7665] | * SFC Architecture [RFC7665] | |||
The reader is assumed to be familiar with the material in [RFC7665]. | The reader is assumed to be familiar with the material in [RFC7665]. | |||
This document provides a reference framework for Operations, | This document provides a reference framework for Operations, | |||
Administration and Maintenance (OAM, [RFC6291]) of SFC. | Administration, and Maintenance (OAM) [RFC6291] of SFC. | |||
Specifically, this document provides: | Specifically, this document provides: | |||
o In Section 2, an SFC layering model; | * an SFC layering model (Section 2), | |||
o In Section 3, aspects monitored by SFC OAM; | * aspects monitored by SFC OAM (Section 3), | |||
o In Section 4, functional requirements for SFC OAM; | * functional requirements for SFC OAM (Section 4), | |||
o In Section 5, a gap analysis for SFC OAM. | * a gap analysis for SFC OAM (Section 5), | |||
o In Section 6, operational aspects of SFC OAM at the service layer. | * operational aspects of SFC OAM at the service layer (Section 6), | |||
o In Section 7, applicability of various OAM tools. | * applicability of various OAM tools (Section 7), and | |||
o In Section 8, manageability considerations for SF and SFC. | * manageability considerations for SF and SFC (Section 8). | |||
SFC OAM solution documents should refer to this document to indicate | SFC OAM solution documents should refer to this document to indicate | |||
the SFC OAM component and the functionality they target. | the SFC OAM component and the functionality they target. | |||
OAM controllers are SFC-aware network devices that are capable of | OAM controllers are SFC-aware network devices that are capable of | |||
generating OAM packets. They should be within the same | generating OAM packets. They should be within the same | |||
administrative domain as the target SFC enabled domain. | administrative domain as the target SFC-enabled domain. | |||
1.1. Document Scope | 1.1. Document Scope | |||
The focus of this document is to provide an architectural framework | The focus of this document is to provide an architectural framework | |||
for SFC OAM, particularly focused on the aspect of the Operations | for SFC OAM, particularly focused on the aspect of the Operations | |||
component within OAM. Actual solutions and mechanisms are outside | component within OAM. Actual solutions and mechanisms are outside | |||
the scope of this document. | the scope of this document. | |||
1.2. Acronyms and Terminology | 1.2. Acronyms and Terminology | |||
1.2.1. Acronyms | 1.2.1. Acronyms | |||
SFC: Service Function Chain | SFC: Service Function Chain | |||
SFF: Service Function Forwarder | SFF: Service Function Forwarder | |||
SF: Service Function | SF: Service Function | |||
SFP: Service Function Path | SFP: Service Function Path | |||
RSP: Rendered Service Path | RSP: Rendered Service Path | |||
NSH: Network Service Header | NSH: Network Service Header | |||
VM: Virtual Machines | VM: Virtual Machine | |||
OAM: Operations, Administration and Maintenance | OAM: Operations, Administration and Maintenance | |||
IPPM: IP Performance Measurement | IPPM: IP Performance Metrics | |||
BFD: Bidirectional Forwarding Detection | BFD: Bidirectional Forwarding Detection | |||
NVO3: Network Virtualization over Layer3 | NVO3: Network Virtualization over Layer 3 | |||
SNMP: Simple Network Management Protocol | SNMP: Simple Network Management Protocol | |||
NETCONF: Network Configuration Protocol | NETCONF: Network Configuration Protocol | |||
E-OAM: Ethernet OAM | E-OAM: Ethernet OAM | |||
MPLS_PM: MPLS Performance Measurement | MPLS_PM: MPLS Performance Measurement | |||
POS: Packet over SONET | POS: Packet over SONET | |||
DWDM: Dense Wavelength Division Multiplexing | DWDM: Dense Wavelength Division Multiplexing | |||
hSFC: Hierarchical Service Function Chaining | hSFC: Hierarchical Service Function Chaining | |||
IBN: Internal Boundary Node | IBN: Internal Boundary Node | |||
MPLS: Multiprotocol Label Switching | ||||
TRILL: Transparent Interconnection of Lots of Links | MPLS: Multiprotocol Label Switching | |||
CLI: Command Line Interface | TRILL: Transparent Interconnection of Lots of Links | |||
CLI: Command-Line Interface | ||||
1.2.2. Terminology | 1.2.2. Terminology | |||
This document uses the terminologies defined in [RFC7665], [RFC8300], | This document uses the terminology defined in [RFC7665] and | |||
and so the readers are expected to be familiar with the | [RFC8300], and readers are expected to be familiar with it. | |||
terminologies. | ||||
2. SFC Layering Model | 2. SFC Layering Model | |||
Multiple layers come into play for implementing the SFC. These | Multiple layers come into play for implementing the SFC. These | |||
include the service layer and the underlying layers (Network Layer, | include the service layer and the underlying layers (network layer, | |||
Link Layer, etc.). | link layer, etc.). | |||
o The service layer, which consists of SFC data plane elements that | * The service layer consists of SFC data-plane elements that include | |||
includes classifiers, Service Functions (SF), Service Function | classifiers, Service Functions (SFs), Service Function Forwarders | |||
Forwarders (SFF), and SFC Proxies. This layer uses the overlay | (SFF), and SFC Proxies. This layer uses the overlay network layer | |||
network layer for ensuring connectivity between SFC data plane | for ensuring connectivity between SFC data-plane elements. | |||
elements. | ||||
o The overlay network layer, which leverages various overlay network | * The overlay network layer leverages various overlay network | |||
technologies (e.g., VxLAN)interconnecting SFC data plane elements | technologies (e.g., Virtual eXtensible Local Area Network (VXLAN)) | |||
and allows establishing Service Function Paths (SFPs). This layer | for interconnecting SFC data-plane elements and allows | |||
is mostly transparent to the SFC data plane elements as not all | establishing Service Function Paths (SFPs). This layer is mostly | |||
the data plane elements process the overlay header. | transparent to the SFC data-plane elements, as not all the data- | |||
plane elements process the overlay header. | ||||
o The underlay network layer, which is dictated by the networking | * The underlay network layer is dictated by the networking | |||
technology deployed within a network (e.g., IP, MPLS) | technology deployed within a network (e.g., IP, MPLS). | |||
o The link layer, which is tightly coupled with the physical | * The link layer is tightly coupled with the physical technology | |||
technology used. Ethernet is one such choice for this layer, but | used. Ethernet is one such choice for this layer, but other | |||
other alternatives are deployed (e.g. POS, DWDM). In a virtual | alternatives may be deployed (e.g., POS and DWDM). In a virtual | |||
environment, virtualized I/O technologies such as SR-IOV or | environment, virtualized I/O technologies, such as Single Root I/O | |||
similar are also applicable for this layer. The same or distinct | Virtualization (SR-IOV) or similar, are also applicable for this | |||
link layer technologies may be used in each leg shown in Figure 1. | layer. The same or distinct link layer technologies may be used | |||
in each leg shown in Figure 1. | ||||
o----------------------Service Layer----------------------o | o----------------------Service Layer----------------------o | |||
+------+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ | +------+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ | |||
|Classi|---|SF1|---|SF2|---|SF3|---|SF4|---|SF5|---|SF6|---|SF7| | |Classi|---|SF1|---|SF2|---|SF3|---|SF4|---|SF5|---|SF6|---|SF7| | |||
|fier | +---+ +---+ +---+ +---+ +---+ +---+ +---+ | |fier | +---+ +---+ +---+ +---+ +---+ +---+ +---+ | |||
+------+ | +------+ | |||
<------VM1------> <--VM2--> <--VM3--> | <------VM1------> <--VM2--> <--VM3--> | |||
^-----------------^-------------------^---------------^ Overlay | ^-----------------^-------------------^---------------^ Overlay | |||
Network | Network | |||
o-----------------o-------------------o---------------o Underlay | o-----------------o-------------------o---------------o Underlay | |||
Network | Network | |||
o--------o--------o--------o----------o-------o-------o Link | o--------o--------o--------o----------o-------o-------o Link | |||
Figure 1: SFC Layering Example | Figure 1: SFC Layering Example | |||
In Figure 1, the service layer elements such as classifier and SF are | In Figure 1, the service-layer elements, such as classifier and SF, | |||
depicted as virtual entities that are interconnected using an overlay | are depicted as virtual entities that are interconnected using an | |||
network. The underlay network may comprise multiple intermediate | overlay network. The underlay network may comprise multiple | |||
nodes not shown in the figure that provide underlay connectivity | intermediate nodes not shown in the figure that provide underlay | |||
between the service layer elements. | connectivity between the service-layer elements. | |||
While Figure 1 depicts an example where SFs are enabled as virtual | While Figure 1 depicts an example where SFs are enabled as virtual | |||
entities, the SFC architecture does not make any assumptions on how | entities, the SFC architecture does not make any assumptions on how | |||
the SFC data plane elements are deployed. The SFC architecture is | the SFC data-plane elements are deployed. The SFC architecture is | |||
flexible and accommodates physical or virtual entity deployment. SFC | flexible and accommodates physical or virtual entity deployment. SFC | |||
OAM accounts for this flexibility and accordingly it is applicable | OAM accounts for this flexibility, and accordingly it is applicable | |||
whether SFC data plane elements are deployed directly on physical | whether SFC data-plane elements are deployed directly on physical | |||
hardware, as one or more Virtual entities, or any combination | hardware, as one or more virtual entities, or any combination | |||
thereof. | thereof. | |||
3. SFC OAM Components | 3. SFC OAM Components | |||
The SFC operates at the service layer. For the purpose of defining | The SFC operates at the service layer. For the purpose of defining | |||
the OAM framework, the service layer is broken up into three distinct | the OAM framework, the service layer is broken up into three distinct | |||
components: | components: | |||
1. SF component: OAM functions applicable at this component include | SF component: | |||
testing the SFs from any SFC-aware network device (e.g., | OAM functions applicable at this component include testing the SFs | |||
classifiers, controllers, other service nodes). Testing an SF | from any SFC-aware network device (e.g., classifiers, controllers, | |||
may be more expansive than just checking connectivity to the SF | and other service nodes). Testing an SF may be more expansive | |||
such as checking if the SF is providing its intended service. | than just checking connectivity to the SF, such as checking if the | |||
Refer to Section 3.1.1 for a more detailed discussion. | SF is providing its intended service. Refer to Section 3.1.1 for | |||
a more detailed discussion. | ||||
2. SFC component: OAM functions applicable at this component include | SFC component: | |||
(but are not limited to) testing the service function chains and | OAM functions applicable at this component include (but are not | |||
the SFPs, validation of the correlation between an SFC and the | limited to) testing the SFCs and the SFPs, validation of the | |||
actual forwarding path followed by a packet matching that SFC, | correlation between an SFC and the actual forwarding path followed | |||
i.e. the Rendered Service Path (RSP). Some of the hops of an SFC | by a packet matching that SFC, i.e., the Rendered Service Path | |||
may not be visible when Hierarchical Service Function Chaining | (RSP). Some of the hops of an SFC may not be visible when | |||
(hSFC) [RFC8459] is in use. In such schemes, it is the | Hierarchical Service Function Chaining (hSFC) [RFC8459] is in use. | |||
responsibility of the Internal Boundary Node (IBN) to glue the | In such schemes, it is the responsibility of the Internal Boundary | |||
connectivity between different levels for end-to-end OAM | Node (IBN) to glue the connectivity between different levels for | |||
functionality. | end-to-end OAM functionality. | |||
3. Classifier component: OAM functions applicable at this component | classifier component: | |||
include testing the validity of the classification rules and | OAM functions applicable at this component include testing the | |||
detecting any incoherence among the rules installed when more | validity of the classification rules and detecting any incoherence | |||
than one classifier is used as explained in Section 2.2 of | among the rules installed when more than one classifier is used, | |||
[RFC7665] . | as explained in Section 2.2 of [RFC7665]. | |||
Figure 2 illustrates an example where OAM for the three defined | Figure 2 illustrates an example where OAM for the three defined | |||
components are used within the SFC environment. | components are used within the SFC environment. | |||
+-Classifier +-Service Function Chain OAM | +-Classifier +-Service Function Chain OAM | |||
| OAM | | | OAM | | |||
| | ___________________________________________ | | | ___________________________________________ | |||
| \ /\ Service Function Chain \ | | \ /\ Service Function Chain \ | |||
| \ / \ +---+ +---+ +-----+ +---+ \ | | \ / \ +---+ +---+ +-----+ +---+ \ | |||
| \ / \ |SF1| |SF2| |Proxy|--|SF3| \ | | \ / \ |SF1| |SF2| |Proxy|--|SF3| \ | |||
| +------+ \/ \ +---+ +---+ +-----+ +---+ \ | | +------+ \/ \ +---+ +---+ +-----+ +---+ \ | |||
+----> | |....(+-> ) | | | ) | +----> | |...(+-> ) | | | ) | |||
|Classi| \ / +-----+ +-----+ +-----+ / | |Classi| \ / +-----+ +-----+ +-----+ / | |||
|fier | \ / | SFF1|----| SFF2|----| SFF3| / | |fier | \ / | SFF1|----| SFF2|----| SFF3| / | |||
| | \ / +--^--+ +-----+ +-----+ / | | | \ / +--^--+ +-----+ +-----+ / | |||
+----|-+ \/_________|________________________________/ | +----|-+ \/_________|________________________________/ | |||
| | | | | | |||
+-------SF_OAM-------+ | +-------SF_OAM-------+ | |||
+---+ +---+ | +---+ +---+ | |||
+SF_OAM>|SF3| |SF5| | +SF_OAM>|SF3| |SF5| | |||
| +-^-+ +-^-+ | | +-^-+ +-^-+ | |||
+------|---+ | | | +------|---+ | | | |||
|Controller| +-SF_OAM+ | |Controller| +-SF_OAM+ | |||
+----------+ | +----------+ | |||
Service Function OAM (SF_OAM) | Service Function OAM (SF_OAM) | |||
Figure 2: SFC OAM Components | Figure 2: SFC OAM Components | |||
It is expected that multiple SFC OAM solutions will be defined, each | It is expected that multiple SFC OAM solutions will be defined, each | |||
targeting one specific component of the service layer. However, it | targeting one specific component of the service layer. However, it | |||
is critical that SFC OAM solutions together provide the coverage of | is critical that SFC OAM solutions together provide the coverage of | |||
all three SFC OAM components: the SF component, the SFC component, | all three SFC OAM components: the SF component, the SFC component, | |||
and the classifier component. | and the classifier component. | |||
3.1. The SF Component | 3.1. The SF Component | |||
3.1.1. SF Availability | 3.1.1. SF Availability | |||
One SFC OAM requirement for the SF component is to allow an SFC-aware | One SFC OAM requirement for the SF component is to allow an SFC-aware | |||
network device to check the availability of a specific SF (instance), | network device to check the availability of a specific SF (instance), | |||
located on the same or different network device(s). For cases where | located on the same or different network device(s). For cases where | |||
multiple instances of an SF are used to realize a given SF for the | multiple instances of an SF are used to realize a given SF for the | |||
purpose of load sharing, SF availability can be performed by checking | purpose of load sharing, SF availability can be performed by checking | |||
the availability of any one of those instances, or the availability | the availability of any one of those instances, or the availability | |||
check may be targeted at a specific instance. SF availability is an | check may be targeted at a specific instance. SF availability is an | |||
aspect that raises an interesting question: How does one determine | aspect that raises an interesting question: How does one determine | |||
that a service function is available? On one end of the spectrum, | that an SF is available? At one end of the spectrum, one might argue | |||
one might argue that an SF is sufficiently available if the service | that an SF is sufficiently available if the service node (physical or | |||
node (physical or virtual) hosting the SF is available and is | virtual) hosting the SF is available and is functional. At the other | |||
functional. On the other end of the spectrum, one might argue that | end of the spectrum, one might argue that the SF's availability can | |||
the SF's availability can only be concluded if the packet, after | only be deduced if the packet, after passing through the SF, was | |||
passing through the SF, was examined and it was verified that the | examined and it was verified that the packet did indeed get the | |||
packet did indeed get the expected service. | expected service. | |||
The former approach will likely not provide sufficient confidence to | The former approach will likely not provide sufficient confidence | |||
the actual SF availability, i.e. a service node and an SF are two | about the actual SF availability, i.e., a service node and an SF are | |||
different entities. The latter approach is capable of providing an | two different entities. The latter approach is capable of providing | |||
extensive verification, but comes at a cost. Some SFs make direct | an extensive verification but comes at a cost. Some SFs make direct | |||
modifications to packets, while others do not. Additionally, the | modifications to packets, while others do not. Additionally, the | |||
purpose of some SFs may be to, conditionally, drop packets | purpose of some SFs may be to drop certain packets intentionally. In | |||
intentionally. In such cases, it is normal behavior that certain | such cases, it is normal behavior that certain packets will not be | |||
packets will not be egressing out from the service function. The OAM | egressing out from the SF. The OAM mechanism needs to take into | |||
mechanism needs to take into account such SF specifics when assessing | account such SF specifics when assessing SF availability. Note that | |||
SF availability. Note that there are many flavors of SFs available, | there are many flavors of SFs available and many more that are likely | |||
and many more that are likely be introduced in future. Even a given | be introduced in the future. Even a given SF may introduce a new | |||
SF may introduce a new functionality (e.g., a new signature in a | functionality (e.g., a new signature in a firewall). The cost of | |||
firewall). The cost of this approach is that the OAM mechanism for | this approach is that the OAM mechanism for some SF will need to be | |||
some SF will need to be continuously modified in order to "keep up" | continuously modified in order to "keep up" with new functionality | |||
with new functionality being introduced: lack of extensibility. | being introduced. | |||
The SF availability check can be performed using a generalized | The SF availability check can be performed using a generalized | |||
approach (i.e., an adequate granularity to provide a basic SF | approach, i.e., at an adequate granularity to provide a basic SF | |||
service). The task of evaluating the true availability of a Service | service. The task of evaluating the true availability of an SF is a | |||
Function is a complex activity, currently having no simple, unified | complex activity, currently having no simple, unified solution. | |||
solution. There is currently no standard means of doing so. Any | There is currently no standard means of doing so. Any such mechanism | |||
such mechanism would be far from a typical OAM function, so it is not | would be far from a typical OAM function, so it is not explored as | |||
explored as part of the analysis in Sections 4 and 5. | part of the analysis in Sections 4 and 5. | |||
3.1.2. SF Performance Measurement | 3.1.2. SF Performance Measurement | |||
The second SFC OAM requirement for the SF component is to allow an | The second SFC OAM requirement for the SF component is to allow an | |||
SFC-aware network device to check the performance metrics such as | SFC-aware network device to check the performance metrics, such as | |||
loss and delay induced by a specific SF for processing legitimate | loss and delay induced by a specific SF for processing legitimate | |||
traffic. The performance can be a passive measurement by using live | traffic. Performance measurement can be passive by using live | |||
traffic, an active measurement by using synthetic probe packets or | traffic, an active measurement by using synthetic probe packets, or a | |||
can be a hybrid method that use a combination of active and passive | hybrid method that uses a combination of active and passive | |||
measurement. More details about this OAM function is explained in | measurement. More details about this OAM function is explained in | |||
Section 4.4. | Section 4.4. | |||
On the one hand, the performance of any specific SF can be quantified | On the one hand, the performance of any specific SF can be quantified | |||
by measuring the loss and delay metrics of the traffic from SFF to | by measuring the loss and delay metrics of the traffic from the SFF | |||
the respective SF, while on the other hand, the performance can be | to the respective SF, while on the other hand, the performance can be | |||
measured by leveraging the loss and delay metrics from the respective | measured by leveraging the loss and delay metrics from the respective | |||
SFs. The latter requires SF involvement to perform the measurement | SFs. The latter requires SF involvement to perform the measurement, | |||
while the former does not. For cases where multiple instances of an | while the former does not. For cases where multiple instances of an | |||
SF are used to realize a given SF for the purpose of load sharing, SF | SF are used to realize a given SF for the purpose of load sharing, SF | |||
performance can be quantified by measuring the metrics for any one | performance can be quantified by measuring the metrics for any one | |||
instance of SF or by measuring the metrics for a specific instance. | instance of SF or by measuring the metrics for a specific instance. | |||
The metrics measured to quantify the performance of the SF component | The metrics measured to quantify the performance of the SF component | |||
are not just limited to loss and delay. Other metrics such as | are not just limited to loss and delay. Other metrics, such as | |||
throughput also exist and the choice of metrics for performance | throughput, also exist and the choice of metrics for performance | |||
measurement is outside the scope of this document. | measurement is outside the scope of this document. | |||
3.2. The SFC Component | 3.2. The SFC Component | |||
3.2.1. SFC Availability | 3.2.1. SFC Availability | |||
An SFC could comprise varying SFs and so the OAM layer is required to | An SFC could comprise varying SFs, and so the OAM layer is required | |||
perform validation and verification of SFs within an SFP, in addition | to perform validation and verification of SFs within an SFP, in | |||
to connectivity verification and fault isolation. | addition to connectivity verification and fault isolation. | |||
In order to perform service connectivity verification of an SFC/SFP, | In order to perform service connectivity verification of an SFC/SFP, | |||
the OAM functions could be initiated from any SFC-aware network | the OAM functions could be initiated from any SFC-aware network | |||
device of an SFC-enabled domain for end-to-end paths, or partial | device of an SFC-enabled domain for end-to-end paths, or partial | |||
paths terminating on a specific SF, within the SFC/SFP. The goal of | paths terminating on a specific SF, within the SFC/SFP. The goal of | |||
this OAM function is to ensure the SFs chained together have | this OAM function is to ensure the SFs chained together have | |||
connectivity as was intended at the time when the SFC was | connectivity, as was intended at the time when the SFC was | |||
established. The necessary return codes should be defined for | established. The necessary return codes should be defined for | |||
sending back in the response to the OAM packet, in order to complete | sending back in the response to the OAM packet, in order to complete | |||
the verification. | the verification. | |||
When ECMP is in use at the service layer for any given SFC, there | When ECMP is in use at the service layer for any given SFC, there | |||
must be the ability to discover and traverse all available paths. | must be the ability to discover and traverse all available paths. | |||
A detailed explanation of the mechanism is outside the scope of this | A detailed explanation of the mechanism is outside the scope of this | |||
document and is expected to be included in the actual solution | document and is expected to be included in the actual solution | |||
document. | document. | |||
3.2.2. SFC Performance Measurement | 3.2.2. SFC Performance Measurement | |||
Any SFC-aware network device should have the ability to make | Any SFC-aware network device should have the ability to make | |||
performance measurements over the entire SFC (i.e., end-to-end) or to | performance measurements over the entire SFC (i.e., end-to-end) or on | |||
a specific segment of SFs within the SFC. | a specific segment of SFs within the SFC. | |||
3.3. Classifier Component | 3.3. Classifier Component | |||
A classifier maintains the classification rules that map a flow to a | A classifier maintains the classification rules that map a flow to a | |||
specific SFC. It is vital that the classifier is correctly | specific SFC. It is vital that the classifier is correctly | |||
configured with updated classification rules and is functioning as | configured with updated classification rules and is functioning as | |||
expected. The SFC OAM must be able to validate the classification | expected. The SFC OAM must be able to validate the classification | |||
rules by assessing whether a flow is appropriately mapped to the | rules by assessing whether a flow is appropriately mapped to the | |||
relevant SFC and detect any misclassification. Sample OAM packets | relevant SFC and detect any misclassification. Sample OAM packets | |||
skipping to change at page 10, line 39 ¶ | skipping to change at line 452 ¶ | |||
to perform availability checking of the classifier component for each | to perform availability checking of the classifier component for each | |||
SFC. | SFC. | |||
Any SFC-aware network device should have the ability to perform | Any SFC-aware network device should have the ability to perform | |||
performance measurement of the classifier component for each SFC. | performance measurement of the classifier component for each SFC. | |||
The performance can be quantified by measuring the performance | The performance can be quantified by measuring the performance | |||
metrics of the traffic from the classifier for each SFC/SFP. | metrics of the traffic from the classifier for each SFC/SFP. | |||
3.4. Underlay Network | 3.4. Underlay Network | |||
The underlay network provides connectivity between the SFC components | The underlay network provides connectivity between the SFC | |||
so the availability or the performance of the underlay network | components, so the availability or the performance of the underlay | |||
directly impacts the SFC OAM. | network directly impacts the SFC OAM. | |||
Any SFC-aware network device may have the ability to perform | Any SFC-aware network device may have the ability to perform an | |||
availability check or performance measurement of the underlay network | availability check or performance measurement of the underlay network | |||
using any existing OAM functions listed in Section 5.1. | using any existing OAM functions listed in Section 5.1. | |||
3.5. Overlay Network | 3.5. Overlay Network | |||
The overlay network provides connectivity for service plane between | The overlay network provides connectivity for the service plane | |||
the SFC components and is mostly transparent to the SFC data plane | between the SFC components and is mostly transparent to the SFC data- | |||
elements. | plane elements. | |||
Any SFC-aware network device may have the ability to perform | Any SFC-aware network device may have the ability to perform an | |||
availability check or performance measurement of the overlay network | availability check or performance measurement of the overlay network | |||
using any existing OAM functions listed in Section 5.1. | using any existing OAM functions listed in Section 5.1. | |||
4. SFC OAM Functions | 4. SFC OAM Functions | |||
Section 3 described SFC OAM components and the associated OAM | Section 3 described SFC OAM components and the associated OAM | |||
operations on each of them. This section explores SFC OAM functions | operations on each of them. This section explores SFC OAM functions | |||
that are applicable for more than one SFC component. | that are applicable for more than one SFC component. | |||
The various SFC OAM requirements listed in Section 3 highlighted the | The various SFC OAM requirements listed in Section 3 highlight the | |||
need for various OAM functions at the service layer. As listed in | need for various OAM functions at the service layer. As listed in | |||
Section 5.1, various OAM functions are in existence that are defined | Section 5.1, various OAM functions are in existence that are defined | |||
to perform OAM functionality at different layers. In order to apply | to perform OAM functionality at different layers. In order to apply | |||
such OAM functions at the service layer, they need to be enhanced to | such OAM functions at the service layer, they need to be enhanced to | |||
operate a single SF/SFF to multiple SFs/SFFs spanning across one or | operate on a single SF/SFF or multiple SFs/SFFs spanning across one | |||
more SFCs. | or more SFCs. | |||
4.1. Connectivity Functions | 4.1. Connectivity Functions | |||
Connectivity is mainly an on-demand function to verify that the | Connectivity is mainly an on-demand function to verify that | |||
connectivity exists between certain network elements and that the SFs | connectivity exists between certain network elements and that the SFs | |||
are available. For example, LSP Ping [RFC8029] is a common tool used | are available. For example, Label Switched Path (LSP) Ping [RFC8029] | |||
to perform this function for an MPLS network. Some of the OAM | is a common tool used to perform this function for an MPLS network. | |||
functions performed by connectivity functions are as follows: | Some of the OAM functions performed by connectivity functions are as | |||
follows: | ||||
o Verify the Path MTU from a source to the destination SF or through | * Verify the Path MTU from a source to the destination SF or through | |||
the SFC. This requires the ability for the OAM packet to be of | the SFC. This requires the ability for the OAM packet to be of | |||
variable length. | variable length. | |||
o Detect any packet re-ordering and corruption. | * Detect any packet reordering and corruption. | |||
o Verify that an SFC or SF is applying the expected policy. | * Verify that an SFC or SF is applying the expected policy. | |||
o Verification and validation of forwarding paths. | * Verify and validate forwarding paths. | |||
o Proactively test alternate or protected paths to ensure | * Proactively test alternate or protected paths to ensure | |||
reliability of network configurations. | reliability of network configurations. | |||
4.2. Continuity Functions | 4.2. Continuity Functions | |||
Continuity is a model where OAM messages are sent periodically to | Continuity is a model where OAM messages are sent periodically to | |||
validate or verify the reachability of a given SF within an SFC or | validate or verify the reachability of a given SF within an SFC or | |||
for the entire SFC. This allows a monitoring network device (such as | for the entire SFC. This allows a monitoring network device (such as | |||
the classifier or controller) to quickly detect failures such as link | the classifier or controller) to quickly detect failures, such as | |||
failures, network element failures, SF outages, or SFC outages. BFD | link failures, network element failures, SF outages, or SFC outages. | |||
[RFC5880] is one such function which helps in detecting failures | BFD [RFC5880] is one such protocol that helps in detecting failures | |||
quickly. OAM functions supported by continuity functions are as | quickly. OAM functions supported by continuity functions are as | |||
follows: | follows: | |||
o Ability to provision a continuity check to a given SF within an | * Provision a continuity check to a given SF within an SFC or for | |||
SFC or for the entire SFC. | the entire SFC. | |||
o Proactively test alternate or protected paths to ensure | * Proactively test alternate or protected paths to ensure | |||
reliability of network configurations. | reliability of network configurations. | |||
o Notifying other OAM functions or applications of the detected | * Notifying other OAM functions or applications of the detected | |||
failures so they can take appropriate action. | failures so they can take appropriate action. | |||
4.3. Trace Functions | 4.3. Trace Functions | |||
Tracing is an OAM function that allows the operation to trigger an | Tracing is an OAM function that allows the operation to trigger an | |||
action (e.g. response generation) from every transit device (e.g. | action (e.g., response generation) from every transit device (e.g., | |||
SFF, SF, SFC Proxy) on the tested layer. This function is typically | SFF, SF, and SFC Proxy) on the tested layer. This function is | |||
useful for gathering information from every transit device or for | typically useful for gathering information from every transit device | |||
isolating the failure point to a specific SF within an SFC or for an | or for isolating the failure point to a specific SF within an SFC or | |||
entire SFC. Some of the OAM functions supported by trace functions | for an entire SFC. Some of the OAM functions supported by trace | |||
are: | functions are: | |||
o Ability to trigger an action from every transit device at the SFC | * the ability to trigger an action from every transit device at the | |||
layer, using TTL or other means. | SFC layer, using TTL or other means, | |||
o Ability to trigger every transit device at the SFC layer to | * the ability to trigger every transit device at the SFC layer to | |||
generate a response with OAM code(s), using TTL or other means. | generate a response with OAM code(s), using TTL or other means, | |||
o Ability to discover and traverse ECMP paths within an SFC. | * the ability to discover and traverse ECMP paths within an SFC, and | |||
o Ability to skip SFs that do not support OAM while tracing SFs in | * the ability to skip SFs that do not support OAM while tracing SFs | |||
an SFC. | in an SFC. | |||
4.4. Performance Measurement Functions | 4.4. Performance Measurement Functions | |||
Performance measurement functions involve measuring of packet loss, | Performance measurement functions involve measuring of packet loss, | |||
delay, delay variance, etc. These performance metrics may be | delay, delay variance, etc. These performance metrics may be | |||
measured pro-actively or on-demand. | measured proactively or on demand. | |||
SFC OAM should provide the ability to measure packet loss for an SFC. | SFC OAM should provide the ability to measure packet loss for an SFC. | |||
On-demand measurement can be used to estimate packet loss using | On-demand measurement can be used to estimate packet loss using | |||
statistical methods. To ensure accurate estimations, one needs to | statistical methods. To ensure accurate estimations, one needs to | |||
ensure that OAM packets are treated the same and also share the same | ensure that OAM packets are treated the same and also share the same | |||
fate as regular data traffic. | fate as regular data traffic. | |||
Delay within an SFC could be measured based on the time it takes for | Delay within an SFC could be measured based on the time it takes for | |||
a packet to traverse the SFC from the ingress SFC node to the egress | a packet to traverse the SFC from the ingress SFC node to the egress | |||
SFF. Measurement protocols such as One-way Active Measurement | SFF. Measurement protocols, such as the One-Way Active Measurement | |||
Protocol (OWAMP) [RFC4656] and Two-way Active Measurement Protocol | Protocol (OWAMP) [RFC4656] and the Two-Way Active Measurement | |||
(TWAMP) [RFC5357] can be used to measure the characteristics. As | Protocol (TWAMP) [RFC5357], can be used to measure delay | |||
SFCs are unidirectional in nature, measurement of one-way delay | characteristics. As SFCs are unidirectional in nature, measurement | |||
[RFC7679] is important. In order to measure one-way delay, time | of one-way delay [RFC7679] is important. In order to measure one-way | |||
synchronization must be supported by means such as NTP, GPS, | delay, time synchronization must be supported by means such as NTP, | |||
Precision Time Protocol (PTP), etc. | GPS, Precision Time Protocol (PTP), etc. | |||
One-way delay variation [RFC3393] could also be calculated by sending | One-way delay variation [RFC3393] could also be calculated by sending | |||
OAM packets and measuring the jitter for traffic passing through an | OAM packets and measuring the jitter for traffic passing through an | |||
SFC. | SFC. | |||
Some of the OAM functions supported by the performance measurement | Some of the OAM functions supported by the performance measurement | |||
functions are: | functions are: | |||
o Ability to measure the packet processing delay induced by a single | * the ability to measure the packet processing delay induced by a | |||
SF or the one-way delay to traverse an SFP bound to a given SFC. | single SF or the one-way delay to traverse an SFP bound to a given | |||
SFC, and | ||||
o Ability to measure the packet loss [RFC7680] within an SF or an | * the ability to measure the packet loss [RFC7680] within an SF or | |||
SFP bound to a given SFC. | an SFP bound to a given SFC. | |||
5. Gap Analysis | 5. Gap Analysis | |||
This section identifies various OAM functions available at different | This section identifies various OAM functions available at different | |||
layers introduced in Section 2. It also identifies various gaps that | layers introduced in Section 2. It also identifies various gaps that | |||
exist within the current toolset for performing OAM functions | exist within the current toolset for performing OAM functions | |||
required for SFC. | required for SFC. | |||
5.1. Existing OAM Functions | 5.1. Existing OAM Functions | |||
There are various OAM tool sets available to perform OAM functions | There are various OAM toolsets available to perform OAM functions | |||
within various layers. These OAM functions may be used to validate | within various layers. These OAM functions may be used to validate | |||
some of the underlay and overlay networks. Tools like ping and trace | some of the underlay and overlay networks. Tools like ping and trace | |||
are in existence to perform connectivity check and tracing of | are in existence to perform connectivity checks and trace | |||
intermediate hops in a network. These tools support different | intermediate hops in a network. These tools support different | |||
network types like IP, MPLS, TRILL, etc. Ethernet OAM (E-OAM) | network types, like IP, MPLS, TRILL, etc. Ethernet OAM (E-OAM) | |||
[Y.1731] [EFM] and Connectivity Fault Management (CFM) [DOT1Q] offer | [Y.1731] [EFM] and Connectivity Fault Management (CFM) [DOT1Q] offer | |||
OAM mechanisms such as an Ethernet continuity check for Ethernet | OAM mechanisms, such as a continuity check for Ethernet links. There | |||
links. There is an effort around NVO3 OAM to provide connectivity | is an effort around NVO3 OAM to provide connectivity and continuity | |||
and continuity checks for networks that use NVO3. BFD is used for | checks for networks that use NVO3. BFD is used for the detection of | |||
the detection of data plane forwarding failures. The IPPM framework | data-plane forwarding failures. The IPPM framework [RFC2330] offers | |||
[RFC2330] offers tools such as OWAMP [RFC4656] and TWAMP [RFC5357] | tools such as OWAMP [RFC4656] and TWAMP [RFC5357] (collectively | |||
(collectively referred as IPPM in this section) to measure various | referred as IPPM in this section) to measure various performance | |||
performance metrics. MPLS Packet Loss Measurement (LM) and Packet | metrics. MPLS Packet Loss Measurement (LM) and Packet Delay | |||
Delay Measurement (DM) (collectively referred as MPLS_PM in this | Measurement (DM) (collectively referred as MPLS_PM in this section) | |||
section) [RFC6374] offers the ability to measure performance metrics | [RFC6374] offer the ability to measure performance metrics in MPLS | |||
in MPLS network. There is also an effort to extend the tool set to | networks. There is also an effort to extend the toolset to provide | |||
provide connectivity and continuity checks within overlay networks. | connectivity and continuity checks within overlay networks. BFD is | |||
another tool that helps in detecting data forwarding failures. | ||||
Table 1 below is not exhaustive. | ||||
BFD is another tool which helps in detecting data forwarding | +============+==============+============+=======+=============+ | |||
failures. Table 3 below is not exhaustive. | | Layer | Connectivity | Continuity | Trace | Performance | | |||
+============+==============+============+=======+=============+ | ||||
| Underlay | Ping | E-OAM, BFD | Trace | IPPM, | | ||||
| network | | | | MPLS_PM | | ||||
+------------+--------------+------------+-------+-------------+ | ||||
| Overlay | Ping | BFD, NVO3 | Trace | IPPM | | ||||
| network | | OAM | | | | ||||
+------------+--------------+------------+-------+-------------+ | ||||
| Classifier | Ping | BFD | Trace | None | | ||||
+------------+--------------+------------+-------+-------------+ | ||||
| SF | None | None | None | None | | ||||
+------------+--------------+------------+-------+-------------+ | ||||
| SFC | None | None | None | None | | ||||
+------------+--------------+------------+-------+-------------+ | ||||
Table 3: OAM Tool GAP Analysis | Table 1: OAM Tool Gap Analysis | |||
+----------------+--------------+-------------+--------+------------+ | ||||
| Layer | Connectivity | Continuity | Trace | Performance| | ||||
+----------------+--------------+-------------+--------+------------+ | ||||
| Underlay N/w | Ping |E-OAM, BFD | Trace | IPPM, | | ||||
| | | | | MPLS_PM | | ||||
+----------------+--------------+-------------+--------+------------+ | ||||
| Overlay N/w | Ping | BFD, | | | | ||||
| | | NVO3 OAM | Trace | IPPM | | ||||
+----------------+--------------+-------------+--------+------------+ | ||||
| Classifier | Ping | BFD | Trace | None | | ||||
+----------------+--------------+-------------+--------+------------+ | ||||
| SF | None | None | None | None | | ||||
+----------------+--------------+-------------+--------+------------+ | ||||
| SFC | None | None | None | None | | ||||
+----------------+--------------+-------------+--------+------------+ | ||||
5.2. Missing OAM Functions | 5.2. Missing OAM Functions | |||
As shown in Table 3, there are no standards-based tools available at | As shown in Table 1, there are no standards-based tools available at | |||
the time of this writing that can be used natively (i.e. without | the time of this writing that can be used natively (i.e., without | |||
enhancement) for the verification of SFs and SFCs. | enhancement) for the verification of SFs and SFCs. | |||
5.3. Required OAM Functions | 5.3. Required OAM Functions | |||
Primary OAM functions exist for underlying layers. Tools like ping, | Primary OAM functions exist for underlying layers. Tools like ping, | |||
trace, BFD, etc. exist in order to perform these OAM functions. | trace, BFD, etc. exist in order to perform these OAM functions. | |||
As depicted in Table 3, toolsets and solutions are required to | As depicted in Table 1, toolsets and solutions are required to | |||
perform the OAM functions at the service layer. | perform the OAM functions at the service layer. | |||
6. Operational Aspects of SFC OAM at the Service Layer | 6. Operational Aspects of SFC OAM at the Service Layer | |||
This section describes the operational aspects of SFC OAM at the | This section describes the operational aspects of SFC OAM at the | |||
service layer to perform the SFC OAM function defined in Section 4 | service layer to perform the SFC OAM function defined in Section 4 | |||
and analyzes the applicability of various existing OAM toolsets in | and analyzes the applicability of various existing OAM toolsets in | |||
the service layer. | the service layer. | |||
6.1. SFC OAM Packet Marker | 6.1. SFC OAM Packet Marker | |||
SFC OAM messages should be encapsulated with necessary SFC header and | SFC OAM messages should be encapsulated with the necessary SFC header | |||
with OAM markings when testing the SFC component. SFC OAM messages | and with OAM markings when testing the SFC component. SFC OAM | |||
may be encapsulated with the necessary SFC header and with OAM | messages may be encapsulated with the necessary SFC header and with | |||
markings when testing the SF component. | OAM markings when testing the SF component. | |||
The SFC OAM function described in Section 4 performed at the service | The SFC OAM function described in Section 4 performed at the service | |||
layer or overlay network layer must mark the packet as an OAM packet | layer or overlay network layer must mark the packet as an OAM packet | |||
so that relevant nodes can differentiate an OAM packet from data | so that relevant nodes can differentiate OAM packets from data | |||
packets. The base header defined in Section 2.2 of [RFC8300] assigns | packets. The base header defined in Section 2.2 of [RFC8300] assigns | |||
a bit to indicate OAM packets. When NSH encapsulation is used at the | a bit to indicate OAM packets. When NSH encapsulation is used at the | |||
service layer, the O bit must be set to differentiate the OAM packet. | service layer, the O bit must be set to differentiate the OAM packet. | |||
Any other overlay encapsulations used at the service layer must have | Any other overlay encapsulations used at the service layer must have | |||
a way to mark the packet as OAM packet. | a way to mark the packet as an OAM packet. | |||
6.2. OAM Packet Processing and Forwarding Semantic | 6.2. OAM Packet Processing and Forwarding Semantic | |||
Upon receiving an OAM packet, SFC-aware SFs may choose to discard the | Upon receiving an OAM packet, an SFC-aware SF may choose to discard | |||
packet if it does not support OAM functionality or if the local | the packet if it does not support OAM functionality or if the local | |||
policy prevents them from processing the OAM packet. When an SF | policy prevents it from processing the OAM packet. When an SF | |||
supports OAM functionality, it is desirable to process the packet and | supports OAM functionality, it is desirable to process the packet and | |||
provide an appropriate response to allow end-to-end verification. To | provide an appropriate response to allow end-to-end verification. To | |||
limit performance impact due to OAM, SFC-aware SFs should rate limit | limit performance impact due to OAM, SFC-aware SFs should rate-limit | |||
the number of OAM packets processed. | the number of OAM packets processed. | |||
An SFF may choose not to forward the OAM packet to an SF if the SF | An SFF may choose to not forward the OAM packet to an SF if the SF | |||
does not support OAM or if the policy does not allow to forward OAM | does not support OAM or if the policy does not allow the forwarding | |||
packets to an SF. The SFF may choose to skip the SF, modify the | of OAM packets to that SF. The SFF may choose to skip the SF, modify | |||
header and forward to the next SFC node in the chain. It should be | the packet's header, and forward the packet to the next SFC node in | |||
noted that skipping an SF might have implications on some OAM | the chain. It should be noted that skipping an SF might have | |||
functions (e.g. the delay measurement may not be accurate). The | implications on some OAM functions (e.g., the delay measurement may | |||
method by which an SFF detects if the connected SF supports or is | not be accurate). The method by which an SFF detects if the | |||
allowed to process OAM packets is outside the scope of this document. | connected SF supports or is allowed to process OAM packets is outside | |||
It could be a configuration parameter instructed by the controller or | the scope of this document. It could be a configuration parameter | |||
it can be done by dynamic negotiation between the SF and SFF. | instructed by the controller, or it can be done by dynamic | |||
negotiation between the SF and SFF. | ||||
If the SFF receiving the OAM packet bound to a given SFC is the last | If the SFF receiving the OAM packet bound to a given SFC is the last | |||
SFF in the chain, it must send a relevant response to the initiator | SFF in the chain, it must send a relevant response to the initiator | |||
of the OAM packet. Depending on the type of OAM solution and tool | of the OAM packet. Depending on the type of OAM solution and toolset | |||
set used, the response could be a simple response (such as ICMP | used, the response could be a simple response (such as ICMP reply) or | |||
reply) or could include additional data from the received OAM packet | could include additional data from the received OAM packet (like | |||
(like statistical data consolidated along the path). The details are | statistical data consolidated along the path). The details are | |||
expected to be covered in the solution documents. | expected to be covered in the solution documents. | |||
Any SFC-aware node that initiates an OAM packet must set the OAM | Any SFC-aware node that initiates an OAM packet must set the OAM | |||
marker in the overlay encapsulation. | marker in the overlay encapsulation. | |||
6.3. OAM Function Types | 6.3. OAM Function Types | |||
As described in Section 4, there are different OAM functions that may | As described in Section 4, there are different OAM functions that may | |||
require different OAM solutions. While the presence of the OAM | require different OAM solutions. While the presence of the OAM | |||
marker in the overlay header (e.g., O bit in the NSH header) | marker in the overlay header (e.g., O bit in the NSH header) | |||
indicates it as an OAM packet, it is not sufficient to indicate what | indicates it as an OAM packet, it is not sufficient to indicate what | |||
OAM function the packet is intended for. The Next Protocol field in | OAM function the packet is intended for. The Next Protocol field in | |||
the NSH header may be used to indicate what OAM function is intended | the NSH header may be used to indicate what OAM function is intended | |||
or what toolset is used. Any other overlay encapsulations used at | or what toolset is used. Any other overlay encapsulations used at | |||
the service layer must have a similar way to indicate the intended | the service layer must have a similar way to indicate the intended | |||
OAM function. | OAM function. | |||
7. Candidate SFC OAM Tools | 7. Candidate SFC OAM Tools | |||
As described in Section 5.1, there are different tool sets available | As described in Section 5.1, there are different toolsets available | |||
to perform OAM functions at different layers. This section describe | to perform OAM functions at different layers. This section describe | |||
the applicability of some of the available toolsets in the service | the applicability of some of the available toolsets in the service | |||
layer. | layer. | |||
7.1. ICMP | 7.1. ICMP | |||
[RFC0792] and [RFC4443] describe the use of ICMP in IPv4 and IPv6 | [RFC0792] and [RFC4443] describe the use of ICMP in IPv4 and IPv6 | |||
networks respectively. It explains how ICMP messages can be used to | networks respectively. It explains how ICMP messages can be used to | |||
test the network reachability between different end points and | test the network reachability between different end points and | |||
perform basic network diagnostics. | perform basic network diagnostics. | |||
ICMP could be leveraged for connectivity functions (defined in | ICMP could be leveraged for connectivity functions (defined in | |||
Section 4.1) to verify the availability of an SF or SFC. The | Section 4.1) to verify the availability of an SF or SFC. The | |||
Initiator can generate an ICMP echo request message and control the | initiator can generate an ICMP echo request message and control the | |||
service layer encapsulation header to get the response from the | service-layer encapsulation header to get the response from the | |||
relevant node. For example, a classifier initiating OAM can generate | relevant node. For example, a classifier initiating OAM can generate | |||
an ICMP echo request message, can set the TTL field in the NSH header | an ICMP echo request message, set the TTL field in the NSH header | |||
[RFC8300] to 63 to get the response from the last SFF, and thereby | [RFC8300] to 63 to get the response from the last SFF, and thereby | |||
test the SFC availability. Alternatively, the initiator can set the | test the SFC availability. Alternatively, the initiator can set the | |||
TTL to some other value to get the response from a specific SFs and | TTL to some other value to get the response from a specific SF and | |||
thereby partially test SFC availability or the initiator could send | thereby partially test SFC availability, or the initiator could send | |||
OAM packets with sequentially incrementing TTL in the NSH to trace | OAM packets with sequentially incrementing TTL in the NSH to trace | |||
the SFP. | the SFP. | |||
It could be observed that ICMP at its current stage may not be able | It could be observed that ICMP as currently defined may not be able | |||
to perform all required SFC OAM functions, but as explained above, it | to perform all required SFC OAM functions, but as explained above, it | |||
can be used for some of the connectivity functions. | can be used for some of the connectivity functions. | |||
7.2. BFD/Seamless-BFD | 7.2. BFD / Seamless BFD | |||
[RFC5880] defines the Bidirectional Forwarding Detection (BFD) | [RFC5880] defines the Bidirectional Forwarding Detection (BFD) | |||
mechanism for failure detection. [RFC5881] and [RFC5884] define the | mechanism for failure detection. [RFC5881] and [RFC5884] define the | |||
applicability of BFD in IPv4, IPv6 and MPLS networks. [RFC7880] | applicability of BFD in IPv4, IPv6, and MPLS networks. [RFC7880] | |||
defines Seamless BFD (S-BFD), a simplified mechanism of using BFD. | defines Seamless BFD (S-BFD), a simplified mechanism of using BFD. | |||
[RFC7881] explains its applicability in IPv4, IPv6 and MPLS network. | [RFC7881] explains its applicability in IPv4, IPv6, and MPLS | |||
networks. | ||||
BFD or S-BFD could be leveraged to perform the continuity function | BFD or S-BFD could be leveraged to perform the continuity function | |||
for SF or SFC. An initiator could generate a BFD control packet and | for SF or SFC. An initiator could generate a BFD control packet and | |||
set the "Your Discriminator" value to identify the last SFF in the | set the "Your Discriminator" value in the control packet to identify | |||
control packet. Upon receiving the control packet, the last SFF in | the last SFF. Upon receiving the control packet, the last SFF in the | |||
the SFC will reply back with the relevant DIAG code. The TTL field | SFC will reply back with the relevant DIAG code. The TTL field in | |||
in the NSH header could be used to perform a partial SFC availability | the NSH header could be used to perform a partial SFC availability | |||
check. For example, the initiator can set the "Your Discriminator" | check. For example, the initiator can set the "Your Discriminator" | |||
value to identify the SF that is intended to be tested and set the | value to identify the SF that is intended to be tested and set the | |||
TTL field in the NSH header in a way that it expires at the relevant | TTL field in the NSH header in a way that it expires at the relevant | |||
SF. How the initiator gets the Discriminator value to identify the | SF. How the initiator gets the Discriminator value to identify the | |||
SF is outside the scope of this document. | SF is outside the scope of this document. | |||
7.3. In-Situ OAM | 7.3. In Situ OAM | |||
[I-D.ietf-sfc-ioam-nsh] defines how In-Situ OAM data fields | [IOAM-NSH] defines how In situ OAM data fields [IPPM-IOAM-DATA] are | |||
[I-D.ietf-ippm-ioam-data] are transported using the NSH header. | transported using the NSH header. [PROOF-OF-TRANSIT] defines a | |||
[I-D.ietf-sfc-proof-of-transit] defines a mechanism to perform proof | mechanism to perform proof of transit to securely verify if a packet | |||
of transit to securely verify if a packet traversed the relevant SFP | traversed the relevant SFP or SFC. While the mechanism is defined | |||
or SFC. While the mechanism is defined inband (i.e., it will be | inband (i.e., it will be included in data packets), IOAM Option- | |||
included in data packets), IOA Option-Types such as IOAM Trace | Types, such as IOAM Trace Option-Types, can also be used to perform | |||
Option-Types can also be used to perform other SFC OAM function such | other SFC OAM functions, such as SFC tracing. | |||
as SFC tracing. | ||||
In-Situ OAM could be leveraged to perform SF availability and SFC | In situ OAM could be leveraged to perform SF availability and SFC | |||
availability or performance measurement. For example, if SFC is | availability or performance measurement. For example, if SFC is | |||
realized using NSH, the O-bit in the NSH header could be set to | realized using NSH, the O bit in the NSH header could be set to | |||
indicate the OAM traffic as defined in Section 4.2 | indicate the OAM traffic, as defined in Section 4.2 of [IOAM-NSH]. | |||
[I-D.ietf-sfc-ioam-nsh]. | ||||
7.4. SFC Traceroute | 7.4. SFC Traceroute | |||
[I-D.penno-sfc-trace] defines a protocol that checks for path | [SFC-TRACE] defines a protocol that checks for path liveliness and | |||
liveliness and traces the service hops in any SFP. Section 3 of | traces the service hops in any SFP. Section 3 of [SFC-TRACE] defines | |||
[I-D.penno-sfc-trace] defines the SFC trace packet format while | the SFC trace packet format, while Sections 4 and 5 of [SFC-TRACE] | |||
Sections 4 and 5 of [I-D.penno-sfc-trace] defines the behavior of SF | define the behavior of SF and SFF respectively. While [SFC-TRACE] | |||
and SFF respectively. While [I-D.penno-sfc-trace] has expired, the | has expired, the proposal is implemented in Open Daylight and is | |||
proposal is implemented in Open Daylight and is available. | available. | |||
An initiator can control the Service Index Limit (SIL) in SFC trace | An initiator can control the Service Index Limit (SIL) in an SFC | |||
packet to perform SF and SFC availability test. | trace packet to perform SF and SFC availability tests. | |||
8. Manageability Considerations | 8. Manageability Considerations | |||
This document does not define any new manageability tools but | This document does not define any new manageability tools but | |||
consolidates the manageability tool gap analysis for SF and SFC. | consolidates the manageability tool gap analysis for SF and SFC. | |||
Table 4 below is not exhaustive. | Table 2 below is not exhaustive. | |||
Table 4: OAM Tool GAP Analysis | +===========+===============+===============+========+==============+ | |||
+----------------+--------------+-------------+--------+-------------+ | |Layer | Configuration | Orchestration |Topology|Notification | | |||
| Layer |Configuration |Orchestration|Topology|Notification | | +===========+===============+===============+========+==============+ | |||
+----------------+--------------+-------------+--------+-------------+ | |Underlay | CLI, NETCONF | CLI, NETCONF |SNMP |SNMP, Syslog, | | |||
| Underlay N/w |CLI, NETCONF | CLI, NETCONF| SNMP |SNMP, Syslog,| | |network | | | |NETCONF | | |||
| | | | |NETCONF | | +-----------+---------------+---------------+--------+--------------+ | |||
+----------------+--------------+-------------+--------+-------------+ | |Overlay | CLI, NETCONF | CLI, NETCONF |SNMP |SNMP, Syslog, | | |||
| Overlay N/w |CLI, NETCONF | CLI, NETCONF| SNMP |SNMP, Syslog | | |network | | | |NETCONF | | |||
| | | | |NETCONF | | +-----------+---------------+---------------+--------+--------------+ | |||
+----------------+--------------+-------------+--------+-------------+ | |Classifier | CLI, NETCONF | CLI, NETCONF |None |None | | |||
| Classifier |CLI, NETCONF | CLI, NETCONF| None | None | | +-----------+---------------+---------------+--------+--------------+ | |||
+----------------+--------------+-------------+--------+-------------+ | |SF | CLI, NETCONF | CLI, NETCONF |None |None | | |||
| SF |CLI, NETCONF | CLI, NETCONF| None | None | | +-----------+---------------+---------------+--------+--------------+ | |||
+----------------+--------------+-------------+--------+-------------+ | |SFC | CLI, NETCONF | CLI, NETCONF |None |None | | |||
| SFC |CLI, NETCONF | CLI, NETCONF| None | None | | +-----------+---------------+---------------+--------+--------------+ | |||
+----------------+--------------+-------------+--------+-------------+ | ||||
Configuration, orchestration and other manageability tasks of SF and | Table 2: OAM Tool Gap Analysis | |||
SFC could be performed using CLI, NETCONF [RFC6241] , etc. | ||||
While the NETCONF capabilities are readily available as depicted in | Configuration, orchestration, and other manageability tasks of SF and | |||
Table 4, the information and data models are needed for | SFC could be performed using CLI, NETCONF [RFC6241], etc. | |||
configuration, manageability and orchestration for SFC. With | ||||
While the NETCONF capabilities are readily available, as depicted in | ||||
Table 2, the information and data models are needed for | ||||
configuration, manageability, and orchestration for SFC. With | ||||
virtualized SF and SFC, manageability needs to be done | virtualized SF and SFC, manageability needs to be done | |||
programmatically. | programmatically. | |||
9. Security Considerations | 9. Security Considerations | |||
Any security considerations defined in [RFC7665] and [RFC8300] is | Any security considerations defined in [RFC7665] and [RFC8300] are | |||
applicable for this document. | applicable for this document. | |||
The OAM information from the service layer at different components | The OAM information from the service layer at different components | |||
may collectively or independently reveal sensitive information. The | may collectively or independently reveal sensitive information. The | |||
information may reveal the type of service functions hosted in the | information may reveal the type of service functions hosted in the | |||
network, the classification rules and the associated service chains, | network, the classification rules and the associated service chains, | |||
specific service function paths, etc. The sensitivity of the | specific service function paths, etc. The sensitivity of the | |||
information from the SFC layer raises a need for careful security | information from the SFC layer raises a need for careful security | |||
considerations. | considerations. | |||
The mapping and the rules information at the classifier component may | The mapping and the rules information at the classifier component may | |||
reveal the traffic rules and the traffic mapped to the SFC. The SFC | reveal the traffic rules and the traffic mapped to the SFC. The SFC | |||
information collected at an SFC component may reveal the SFs | information collected at an SFC component may reveal the SFs | |||
associated within each chain and this information together with | associated within each chain, and this information together with | |||
classifier rules may be used to manipulate the header of synthetic | classifier rules may be used to manipulate the header of synthetic | |||
attack packets that may be used to bypass the SFC and trigger any | attack packets that may be used to bypass the SFC and trigger any | |||
internal attacks. | internal attacks. | |||
The SF information at the SF component may be used by a malicious | The SF information at the SF component may be used by a malicious | |||
user to trigger Denial of Service (DoS) attack by overloading any | user to trigger a Denial of Service (DoS) attack by overloading any | |||
specific SF using rogue OAM traffic. | specific SF using rogue OAM traffic. | |||
To address the above concerns, SFC and SF OAM should provide | To address the above concerns, SFC and SF OAM should provide | |||
mechanisms for mitigating: | mechanisms for mitigating: | |||
o Misuse of the OAM channel for denial-of-services, | * misuse of the OAM channel for denial of services, | |||
o Leakage of OAM packets across SFC instances, and | * leakage of OAM packets across SFC instances, and | |||
o Leakage of SFC information beyond the SFC domain. | * leakage of SFC information beyond the SFC domain. | |||
The documents proposing the OAM solution for SF components should | The documents proposing the OAM solution for SF components should | |||
provide rate-limiting the OAM probes at a frequency guided by the | provide rate-limiting the OAM probes at a frequency guided by the | |||
implementation choice. Rate-limiting may be applied at the | implementation choice. Rate-limiting may be applied at the | |||
Classifier, SFF or the SF . The OAM initiator may not receive a | classifier, SFF, or the SF. The OAM initiator may not receive a | |||
response for the probes that are rate-limited resulting in false | response for the probes that are rate-limited resulting in false | |||
negatives and the implementation should be aware of this. To | negatives, and the implementation should be aware of this. To | |||
mitigate any attacks that leverage OAM packets, future documents | mitigate any attacks that leverage OAM packets, future documents | |||
proposing OAM solutions should describe the use of any technique to | proposing OAM solutions should describe the use of any technique to | |||
detect and mitigate anomalies and various security attacks. | detect and mitigate anomalies and various security attacks. | |||
The documents proposing the OAM solution for any service layer | The documents proposing the OAM solution for any service-layer | |||
components should consider some form of message filtering to control | components should consider some form of message filtering to control | |||
the OAM packets entering the administrative domain or prevent leaking | the OAM packets entering the administrative domain or prevent leaking | |||
any internal service layer information outside the administrative | any internal service-layer information outside the administrative | |||
domain. | domain. | |||
10. IANA Considerations | 10. IANA Considerations | |||
No action is required by IANA for this document. | This document has no IANA actions. | |||
11. Acknowledgements | ||||
We would like to thank Mohamed Boucadair, Adrian Farrel, Greg Mirsky, | ||||
Tal Mizrahi, Martin Vigoureux, Tirumaleswar Reddy, Carlos Bernados, | ||||
Martin Duke, Barry Leiba, Eric Vyncke, Roman Danyliw, Erik Kline, | ||||
Benjamin Kaduk, Robert Wilton, Frank Brockner, Alvaro Retana, Murray | ||||
Kucherawy, and Alissa Cooper for their review and comments. | ||||
12. Contributing Authors | ||||
Nobo Akiya | ||||
Ericsson | ||||
Email: nobo.akiya.dev@gmail.com | ||||
13. Informative References | 11. Informative References | |||
[DOT1Q] IEEE, "Standard for Local and Metropolitan Area Networks-- | [DOT1Q] IEEE, "IEEE Standard for Local and metropolitan area | |||
Bridges and Bridged Networks, IEEE Std 802.1Q-2014, | networks--Bridges and Bridged Networks", IEEE 802.1Q-2014, | |||
November 2014". | DOI 10.1109/IEEESTD.2014.6991462, November 2014, | |||
<https://doi.org/10.1109/IEEESTD.2014.6991462>. | ||||
[EFM] IEEE, "IEEE Standard for Ethernet (Clause 57 for | [EFM] IEEE, "IEEE Standard for Ethernet", IEEE 802.3-2018, | |||
Operations, Administration, and Maintenance), IEEE Std | DOI 10.1109/IEEESTD.2018.8457469, June 2018, | |||
802.3-2018, June 2018". | <https://doi.org/10.1109/IEEESTD.2018.8457469>. | |||
[I-D.ietf-ippm-ioam-data] | [IOAM-NSH] Brockners, F. and S. Bhandari, "Network Service Header | |||
Brockners, F., Bhandari, S., Pignataro, C., Gredler, H., | (NSH) Encapsulation for In-situ OAM (IOAM) Data", Work in | |||
Leddy, J., Youell, S., Mizrahi, T., Mozes, D., Lapukhov, | Progress, Internet-Draft, draft-ietf-sfc-ioam-nsh-04, 16 | |||
P., remy@barefootnetworks.com, r., daniel.bernier@bell.ca, | June 2020, | |||
d., and J. Lemon, "Data Fields for In-situ OAM", draft- | <https://tools.ietf.org/html/draft-ietf-sfc-ioam-nsh-04>. | |||
ietf-ippm-ioam-data-09 (work in progress), March 2020. | ||||
[I-D.ietf-sfc-ioam-nsh] | [IPPM-IOAM-DATA] | |||
Brockners, F. and S. Bhandari, "Network Service Header | Brockners, F., Bhandari, S., and T. Mizrahi, "Data Fields | |||
(NSH) Encapsulation for In-situ OAM (IOAM) Data", draft- | for In-situ OAM", Work in Progress, Internet-Draft, draft- | |||
ietf-sfc-ioam-nsh-03 (work in progress), March 2020. | ietf-ippm-ioam-data-10, 13 July 2020, | |||
<https://tools.ietf.org/html/draft-ietf-ippm-ioam-data- | ||||
10>. | ||||
[I-D.ietf-sfc-proof-of-transit] | [PROOF-OF-TRANSIT] | |||
Brockners, F., Bhandari, S., Mizrahi, T., Dara, S., and S. | Brockners, F., Bhandari, S., Mizrahi, T., Dara, S., and S. | |||
Youell, "Proof of Transit", draft-ietf-sfc-proof-of- | Youell, "Proof of Transit", Work in Progress, Internet- | |||
transit-04 (work in progress), November 2019. | Draft, draft-ietf-sfc-proof-of-transit-06, 16 June 2020, | |||
<https://tools.ietf.org/html/draft-ietf-sfc-proof-of- | ||||
[I-D.penno-sfc-trace] | transit-06>. | |||
Penno, R., Quinn, P., Pignataro, C., and D. Zhou, | ||||
"Services Function Chaining Traceroute", draft-penno-sfc- | ||||
trace-03 (work in progress), September 2015. | ||||
[RFC0792] Postel, J., "Internet Control Message Protocol", STD 5, | [RFC0792] Postel, J., "Internet Control Message Protocol", STD 5, | |||
RFC 792, DOI 10.17487/RFC0792, September 1981, | RFC 792, DOI 10.17487/RFC0792, September 1981, | |||
<https://www.rfc-editor.org/info/rfc792>. | <https://www.rfc-editor.org/info/rfc792>. | |||
[RFC2330] Paxson, V., Almes, G., Mahdavi, J., and M. Mathis, | [RFC2330] Paxson, V., Almes, G., Mahdavi, J., and M. Mathis, | |||
"Framework for IP Performance Metrics", RFC 2330, | "Framework for IP Performance Metrics", RFC 2330, | |||
DOI 10.17487/RFC2330, May 1998, | DOI 10.17487/RFC2330, May 1998, | |||
<https://www.rfc-editor.org/info/rfc2330>. | <https://www.rfc-editor.org/info/rfc2330>. | |||
skipping to change at page 23, line 10 ¶ | skipping to change at line 1016 ¶ | |||
[RFC8300] Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., | [RFC8300] Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., | |||
"Network Service Header (NSH)", RFC 8300, | "Network Service Header (NSH)", RFC 8300, | |||
DOI 10.17487/RFC8300, January 2018, | DOI 10.17487/RFC8300, January 2018, | |||
<https://www.rfc-editor.org/info/rfc8300>. | <https://www.rfc-editor.org/info/rfc8300>. | |||
[RFC8459] Dolson, D., Homma, S., Lopez, D., and M. Boucadair, | [RFC8459] Dolson, D., Homma, S., Lopez, D., and M. Boucadair, | |||
"Hierarchical Service Function Chaining (hSFC)", RFC 8459, | "Hierarchical Service Function Chaining (hSFC)", RFC 8459, | |||
DOI 10.17487/RFC8459, September 2018, | DOI 10.17487/RFC8459, September 2018, | |||
<https://www.rfc-editor.org/info/rfc8459>. | <https://www.rfc-editor.org/info/rfc8459>. | |||
[Y.1731] ITU-T, "OAM Functions and mechanisms for Ethernet based | [SFC-TRACE] | |||
networks", | Penno, R., Quinn, P., Pignataro, C., and D. Zhou, | |||
"Services Function Chaining Traceroute", Work in Progress, | ||||
Internet-Draft, draft-penno-sfc-trace-03, 30 September | ||||
2015, | ||||
<https://tools.ietf.org/html/draft-penno-sfc-trace-03>. | ||||
[Y.1731] ITU-T, "G.8013: Operations, administration and maintenance | ||||
(OAM) functions and mechanisms for Ethernet-based | ||||
networks", August 2015, | ||||
<https://www.itu.int/rec/T-REC-G.8013-201508-I/en>. | <https://www.itu.int/rec/T-REC-G.8013-201508-I/en>. | |||
Acknowledgements | ||||
We would like to thank Mohamed Boucadair, Adrian Farrel, Greg Mirsky, | ||||
Tal Mizrahi, Martin Vigoureux, Tirumaleswar Reddy, Carlos Bernados, | ||||
Martin Duke, Barry Leiba, Éric Vyncke, Roman Danyliw, Erik Kline, | ||||
Benjamin Kaduk, Robert Wilton, Frank Brockner, Alvaro Retana, Murray | ||||
Kucherawy, and Alissa Cooper for their review and comments. | ||||
Contributors | ||||
Nobo Akiya | ||||
Ericsson | ||||
Email: nobo.akiya.dev@gmail.com | ||||
Authors' Addresses | Authors' Addresses | |||
Sam K. Aldrin | Sam K. Aldrin | |||
Email: aldrin.ietf@gmail.com | Email: aldrin.ietf@gmail.com | |||
Carlos Pignataro (editor) | Carlos Pignataro (editor) | |||
Cisco Systems, Inc. | Cisco Systems, Inc. | |||
End of changes. 148 change blocks. | ||||
413 lines changed or deleted | 424 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |