Rfc | 7054 |
Title | Addressing Requirements and Design Considerations for Per-Interface
Maintenance Entity Group Intermediate Points (MIPs) |
Author | A. Farrel, H.
Endo, R. Winter, Y. Koike, M. Paul |
Date | November 2013 |
Format: | TXT,
HTML |
Status: | INFORMATIONAL |
|
Internet Engineering Task Force (IETF) A. Farrel
Request for Comments: 7054 Juniper Networks
Category: Informational H. Endo
ISSN: 2070-1721 Hitachi, Ltd.
R. Winter
NEC
Y. Koike
NTT
M. Paul
Deutsche Telekom
November 2013
Addressing Requirements and Design Considerations for
Per-Interface Maintenance Entity Group Intermediate Points (MIPs)
Abstract
The framework for Operations, Administration and Maintenance (OAM)
within the MPLS Transport Profile (MPLS-TP) describes how the
Maintenance Entity Group Intermediate Points (MIPs) may be situated
within network nodes at incoming and outgoing interfaces.
This document elaborates on important considerations for internal MIP
addressing. More precisely, it describes important restrictions for
any mechanism that specifies a way of forming OAM messages so that
they can be targeted at MIPs on either incoming or outgoing
interfaces and forwarded correctly through the forwarding engine.
Furthermore, the document includes considerations for node
implementations where there is no distinction between the incoming
and outgoing MIP.
Status of This Memo
This document is not an Internet Standards Track specification; it is
published for informational purposes.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Not all documents
approved by the IESG are a candidate for any level of Internet
Standard; see Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc7054.
Copyright Notice
Copyright (c) 2013 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction ....................................................2
2. Terminology .....................................................3
3. Summary of the Problem Statement ................................3
4. Requirements and Design Considerations for Internal-MIP
Addressing ......................................................6
5. Security Considerations ........................................10
6. Acknowledgments ................................................10
7. References .....................................................10
7.1. Normative References ......................................10
7.2. Informative References ....................................11
1. Introduction
The framework for Operations, Administration and Maintenance (OAM)
within the MPLS Transport Profile (MPLS-TP)(the MPLS-TP OAM
Framework, [RFC6371]) distinguishes two configurations for the
Maintenance Entity Group Intermediate Points (MIPs) on a node. It
defines per-node MIPs and per-interface MIPs, where a per-node MIP is
a single MIP per node in an unspecified location within the node and
per-interface MIPs are two (or more) MIPs per node on each side of
the forwarding engine.
In-band OAM messages are sent using the Generic Associated Channel
(G-ACh) [RFC5586]. OAM messages for the transit points of
pseudowires (PWs) or Label Switched Paths (LSPs) are delivered using
the expiration of the MPLS shim header Time-to-Live (TTL) field. OAM
messages for the end points of PWs and LSPs are simply delivered as
normal.
OAM messages delivered to end points or transit points are
distinguished from other (data) packets so that they can be processed
as OAM. In LSPs, the mechanism used is the presence of the Generic
Associated Channel Label (GAL) in the Label Stack Entry (LSE) under
the top LSE [RFC5586]. In PWs, the mechanism used is the presence of
the PW Associated Channel Header (PWACH) [RFC4385] or the presence of
a GAL [RFC6423].
If multiple MIPs are present on a single node, these mechanisms alone
provide no way to address one particular MIP out of the set of MIPs.
A mechanism that addresses this shortcoming has to obey a few
important design considerations, which are discussed in this
document.
2. Terminology
In this document, we use the term in-MIP (incoming MIP) to refer to
the MIP that processes OAM messages before they pass through the
forwarding engine of a node. An out-MIP (outgoing MIP) processes OAM
messages after they have passed the forwarding engine of the node.
The two together are referred to as internal MIPs. The term
"forwarding engine" is used as defined in [RFC6371].
Note that the acronym "OAM" is used in conformance with [RFC6291].
3. Summary of the Problem Statement
Figure 1 shows an abstract functional representation of an MPLS-TP
node. It is decomposed as an incoming interface (labeled "In"), a
forwarding engine (FW), and an outgoing interface (labeled "Out").
As per the discussion in [RFC6371], MIPs may be placed in each of the
functional interface components.
------------------------
|----- -----|
| MIP | | MIP |
| | ---- | |
----->-| In |->-| FW |->-| Out |->----
| i/f | ---- | i/f |
|----- -----|
------------------------
Figure 1: Abstract Functional Representation of an MPLS-TP Node
Several distinct OAM functions are required within this architectural
model for both PWs and LSPs, such as:
o Connectivity Verification (CV) between a Maintenance Entity Group
End Point (MEP) and a MIP
o traceroute over an MPLS-TP LSP and/or an MPLS-TP PW containing
MIPs
o data-plane loopback configuration at a MIP
o diagnostic tests
The MIPs in these OAM functions may also be the MIPs at the incoming
or outgoing interfaces.
Per-interface MIPs have the advantage that they enable a more
accurate localization and identification of faults and diagnostic
tests. In particular, the identification of whether a problem is
located between nodes or on a particular node and where on that node
is greatly enhanced. For obvious reasons, it is important to narrow
down the cause of a fault quickly to initiate a timely and well-
directed maintenance action to resume normal network operation.
The following two figures illustrate the fundamental difference
between using per-node and per-interface MEPs and MIPs for OAM.
Figure 2 depicts OAM using per-node MIPs and MEPs. For reasons of
exposition, we pick a location for the MIPs on the nodes but the
standard does not mandate the exact location for the per-node model.
In the figure, a bidirectional LSP is depicted where in the forward
(FWD) direction MEP1, MIP1, and MEP2 are located on the ingress
interface. In the backward (BWD) direction MEP1', MIP1' and MEP2'
are located on the egress interface, i.e., the same interfaces. S1
in the figure denotes the segment from PE1 In to P1 In and S2 denotes
the segment from PE1 In to P2 In. Figure 3, on the other hand, shows
the same basic network, but per-interface maintenance points are
configured for OAM operations. Note that these figures are merely
examples. It is important to note that per-interface MEPs or per-
interface MIPs must logically be placed at a point before (for
in-MIP) or after (for out-MIP) passing the forwarding engine as
defined in [RFC6371]. All traffic associated with the MEP/MIP must
pass through or be terminated at that point.
Customer| Operator's Administrative | Customer
Domain | Domain | Domain
------> |<--------------------------------------->| <------
CE1 | T-PE/PE1 S-PE/P1 T-PE/PE2 | CE2
| <--------> <--------> <--------> |
+---+ | +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ | +---+
| | | | | | | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | | | | | | |
+---+ | +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ | +---+
| In FW Out In FW Out In FW Out |
| |
FWD PW/LSP | o-------------------------- > |
| V-------------*-------------V |
| MEP1 MIP1 MEP2 |
BWD PW/LSP | <---------------------------o |
| V-------------*-------------V |
| MEP1' MIP1' MEP2'|
(S1)<============>
(S2)<==========================>
Figure 2: Example of OAM Relying on Per-Node MIPs and MEPs
To illustrate the difference between these two modes of operation, we
use fault detection as an example. Consider the case where the
client traffic between CE1 and CE2 experiences a fault. Also assume
that an on-demand CV test between PE1 and PE2 was successful. The
scenario in Figure 2 therefore leaves the forwarding engine (FW) of
PE2, the out-going interface of PE2, the transmission line between
PE2 and CE2, or CE2 itself as a potential location of the fault as
on-demand CV can only be performed on segment S2. Note that in this
scenario, the PWs or LSPs are to be understood as two examples (not
one), i.e., the figures do not show the layer structure of PWs and
LSPs.
The per-interface model in Figure 3 allows more fine-grained OAM
operations to be performed. At first, CV on segment S'4 and in
addition CV on segment S'5 can help to rule out, for example, the
forwarding engine of PE2. This is of course only a single example,
and other OAM functions and scenarios are trivially conceivable. The
basic message is that with the per-interface OAM model, an operator
can configure smaller segments on a transport path to which OAM
operations apply. This enables a more fine-grained scoping of OAM
operations, such as fault localization and performance monitoring,
which gives operators better information to deal with adverse
networking conditions.
Customer| Operator's Administrative |Customer
Domain | Domain |Domain
------->|<--------------------------------------->|<------
CE1 | T-PE/PE1 S-PE/P1 T-PE/PE2 | CE2
| <--------> <--------> <--------> |
+---+ | +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ | +---+
| | | | | | | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | | | | | | |
+---+ | +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ | +---+
| In FW Out In FW Out In FW Out |
| |
FWD PW/LSP | o-----------------------------------> |
| V-------*------*------*-----*-------V |
| MEP1 MIP1 MIP2 MIP3 MIP4 MEP2|
| |
BWD PW/LSP | <-----------------------------------o |
| MEP1' MIP1' MIP2' MIP3' MIP4' MEP2'|
(S'1)<======>
(S'2)<=============>
(S'3)<====================>
(S'4)<==========================>
(S'5)<==================================>
Figure 3: Example of OAM Relying on Per-Interface MIPs and MEPs
4. Requirements and Design Considerations for Internal-MIP Addressing
OAM messages for transit points of PWs or LSPs are delivered using
the expiration of the TTL field in the top LSE of the MPLS packet
header. OAM messages for the end points of PWs and LSPs are simply
delivered as normal. These messages are distinguished from other
(data) packets so that they can be processed as OAM. In LSPs, the
mechanism used is the presence of the GAL in the LSE under the top
LSE [RFC5586]. In PWs, the mechanism used is the presence of the PW
Associated Channel Header [RFC4385] or the presence of a GAL
[RFC6423]. In addition, two sets of identifiers exist that can be
used to address MIPs, which are defined in [RFC6370] and [RFC6923]
Any solution for sending OAM messages to the in- and out-MIPs must
fit within these existing models of handling OAM.
Additionally, many MPLS-TP nodes are implemented in a way that all
queuing and the forwarding function are performed at the incoming
interface. The abstract functional representation of such a node is
shown in Figure 4. As shown in the figure, the outgoing interfaces
are minimal and for this reason it may not be possible to include
MIP functions on those interfaces. This is the case for existing
deployed implementations in particular.
Any solution that attempts to send OAM messages to the outgoing
interface of an MPLS-TP node must not cause any problems when such
implementations are present (such as leaking OAM packets with a TTL
of 0).
---------------------
|------------ |
| MIP | |
| ---- | |
----->-| In | FW | |-->-Out-|->---
| i/f ---- | i/f |
|------------ |
---------------------
Figure 4: Abstract Functional Representation of
Some Existing MPLS-TP Nodes
OAM must operate on MPLS-TP nodes that are branch points on point-to-
multipoint (P2MP) trees. This means that it must be possible to
target individual outgoing MIPs as well as all outgoing MIPs in the
abstract functional representation shown in Figure 5, and to handle
the P2MP node implementations as shown in Figure 6 without causing
problems.
--------------------------
| -----|
| | MIP |
| ->-| |->----
| | | Out |
| | | i/f |
| | -----|
|----- | -----|
| MIP | ---- | | MIP |
| | | |- | |
----->-| In |->-| FW |--->-| Out |->----
| i/f | | |- | i/f |
|----- ---- | -----|
| | -----|
| | | MIP |
| | | |
| ->-| Out |->----
| | i/f |
| -----|
--------------------------
Figure 5: Abstract Functional Representation of an
MPLS-TP Node Supporting P2MP
----------------------
| ->-Out-|->----
| | i/f |
|------------ | |
| | | |
| MIP ---- | | |
| | | |- |
----->-| In | FW | |--->-Out-|->----
| i/f | | |- i/f |
| ---- | | |
| | | |
|------------ | |
| | Out |
| ->-i/f-|->----
----------------------
Figure 6: Abstract Functional Representation of
Some Existing MPLS-TP Nodes Supporting P2MP
In summary, the solution for OAM message delivery must behave as
follows:
o Delivery of OAM messages to the correct MPLS-TP node.
o Delivery of OAM instructions to the correct MIP within an MPLS-TP
node.
o Forwarding of OAM packets exactly as data packets.
o Packet inspection at the incoming and outgoing interfaces must be
minimized.
The first and second bullet points are obvious. However, the third
bullet point is also vital. To illustrate the importance, a rejected
solution is depicted in Figure 7. In the figure, all data and non-
local OAM is handled as normal. Local OAM is intercepted at the
incoming interface and delivered to the MIP at the incoming
interface. If the OAM is intended for the incoming MIP, it is
handled there with no issue. If the OAM is intended for the outgoing
MIP, it is forwarded to that MIP using some internal messaging system
that is implementation specific.
------------------------
|----- -----|
local OAM ----->-| MIP |----->------| MIP |
| | ---- | |
data =====>=| In |=>=| FW |=>=| Out |=>==== data
non-local OAM ~~~~~>~| i/f |~>~| |~>~| i/f |~>~~~~ non-local OAM
|----- ---- -----|
------------------------
Figure 7: OAM Control Message Delivery Bypassing
the Forwarding Engine
This solution is fully functional for the incoming MIP. It also
supports control of data loopback for the outgoing MIP and can
adequately perform some OAM features such as interface identity
reporting at the outgoing MIP.
However, because the OAM message is not forwarded through the
forwarding engine, this solution cannot correctly perform OAM
loopback, connectivity verification, LSP tracing, or performance
measurement.
The last bullet point is also an important requirement for any
solution to the internal-MIP addressing problem. Since OAM packets
that target an out-MIP need to be sent through the forwarding engine
and treated exactly as regular data packets, the determination of
whether to forward the packet or process it at the incoming MIP needs
to be fast; therefore, the processing overhead must be kept to a
minimum. In addition, there are a few OAM procedures that operate at
line rate such as OAM loopback. This adds to the requirement of
minimal processing overhead for both the in-MIP and out-MIP.
Most of the above superficially appears to be an implementation
matter local to an individual node; however, the format of the
message needs to be standardized so that:
o A MEP can correctly target the outgoing MIP of a specific MPLS-TP
node.
o A node can correctly filter out any OAM messages that were
intended for its upstream neighbor's outgoing MIP, but which were
not handled there because the upstream neighbor is an
implementation as shown in Figures 4 and 6.
Note that the last bullet point describes a safety net in case OAM
messages leak beyond their intended scope, but implementations should
take care that messages do not leak so that the safety net does not
need to be used.
5. Security Considerations
OAM security is discussed in [RFC6371] and security aspects specific
to MPLS-TP in general are outlined in [RFC6941].
OAM can provide useful information for detecting and tracing security
attacks.
OAM can also be used to illicitly gather information or for denial-
of-service attacks and other types of attack. Implementations
therefore are required to offer security mechanisms for OAM.
Deployments are therefore strongly advised to follow the security
advice provided in RFCs 6371 and 6941.
Mixing of per-node and per-interface OAM on a single node is not
advised as OAM message leakage could be the result.
6. Acknowledgments
The authors gratefully acknowledge the substantial contributions of
Zhenlong Cui. We would also like to thank Eric Gray, Sami Boutros,
and Shahram Davari for interesting input to this document through
discussions.
7. References
7.1. Normative References
[RFC4385] Bryant, S., Swallow, G., Martini, L., and D. McPherson,
"Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for
Use over an MPLS PSN", RFC 4385, February 2006.
[RFC5586] Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed.,
"MPLS Generic Associated Channel", RFC 5586, June 2009.
[RFC6370] Bocci, M., Swallow, G., and E. Gray, "MPLS Transport
Profile (MPLS-TP) Identifiers", RFC 6370, September 2011.
[RFC6371] Busi, I., Ed., and D. Allan, Ed., "Operations,
Administration, and Maintenance Framework for MPLS-Based
Transport Networks", RFC 6371, September 2011.
[RFC6423] Li, H., Martini, L., He, J., and F. Huang, "Using the
Generic Associated Channel Label for Pseudowire in the
MPLS Transport Profile (MPLS-TP)", RFC 6423, November
2011.
[RFC6923] Winter, R., Gray, E., van Helvoort, H., and M. Betts,
"MPLS Transport Profile (MPLS-TP) Identifiers Following
ITU-T Conventions", RFC 6923, May 2013.
7.2. Informative References
[RFC6291] Andersson, L., van Helvoort, H., Bonica, R., Romascanu,
D., and S. Mansfield, "Guidelines for the Use of the "OAM"
Acronym in the IETF", BCP 161, RFC 6291, June 2011.
[RFC6941] Fang, L., Ed., Niven-Jenkins, B., Ed., Mansfield, S., Ed.,
and R. Graveman, Ed., "MPLS Transport Profile (MPLS-TP)
Security Framework", RFC 6941, April 2013.
Authors' Addresses
Adrian Farrel
Juniper Networks
EMail: adrian@olddog.co.uk
Hideki Endo
Hitachi, Ltd.
EMail: hideki.endo.es@hitachi.com
Rolf Winter
NEC
EMail: rolf.winter@neclab.eu
Yoshinori Koike
NTT
EMail: koike.yoshinori@lab.ntt.co.jp
Manuel Paul
Deutsche Telekom
EMail: Manuel.Paul@telekom.de