Support for Path MTU (PMTU) in the Path
Computation Element (PCE) communication Protocol (PCEP)Huawei TechnologiesHuawei Campus, No. 156 Beiqing Rd.Beijing100095Chinapengshuping@huawei.comHuawei TechnologiesHuawei Campus, No. 156 Beiqing Rd.Beijing100095Chinac.l@huawei.comChina MobileBeijing100053Chinahanliuyan@chinamobile.comMTN CameroonCameroonLuc-Fabrice.Ndifor@mtn.com
Routing
PCE Working GroupThe Path Computation Element (PCE) provides path computation
functions in support of traffic engineering in Multiprotocol Label
Switching (MPLS) and Generalized MPLS (GMPLS) networks.The Source Packet Routing in Networking (SPRING) architecture
describes how Segment Routing (SR) can be used to steer packets through
an IPv6 or MPLS network using the source routing paradigm. A Segment
Routed Path can be derived from a variety of mechanisms, including an
IGP Shortest Path Tree (SPT), explicit configuration, or a Path
Computation Element (PCE).Since the SR does not require signaling, the path maximum
transmission unit (MTU) information for SR path is not available at the headend. This
document specify the extension to PCE communication protocol (PCEP) to
carry path (MTU) in the PCEP messages for SR and other scenarios. describes the Path Computation Element (PCE)
Communication Protocol (PCEP). PCEP enables the communication between a
Path Computation Client (PCC) and a PCE, or between PCE and PCE, for the
purpose of computation of Multiprotocol Label Switching (MPLS) as well
as Generalzied MPLS (GMPLS) Traffic Engineering Label Switched Path (TE
LSP) characteristics. specifies a set of extensions to PCEP to
enable stateful control of TE LSPs within and across PCEP sessions in
compliance with . It includes mechanisms to
effect LSP State Synchronization between PCCs and PCEs, delegation of
control over LSPs to PCEs, and PCE control of timing and sequence of
path computations within and across PCEP sessions. The model of
operation where LSPs are initiated from the PCE is described in .As per , with Segment Routing (SR), a node
steers a packet through an ordered list of instructions, called
segments. A segment can represent any instruction, topological or
service-based. A segment can have a semantic local to an SR node or
global within an SR domain. SR allows to enforce a flow through any path
and service chain while maintaining per-flow state only at the ingress
node of the SR domain. Segments can be derived from different
components: IGP, BGP, Services, Contexts, Locators, etc. The SR
architecture can be applied to the MPLS forwarding plane without any
change, in which case an SR path corresponds to an MPLS Label Switching
Path (LSP). The SR is applied to IPV6 forwarding plane using SRH. A SR
path can be derived from an IGP Shortest Path Tree (SPT), but SR-TE
paths may not follow IGP SPT. Such paths may be chosen by a suitable
network planning tool, or a PCE and provisioned on the ingress node.As per , it is possible to use a stateful PCE
for computing one or more SR-TE paths taking into account various
constraints and objective functions. Once a path is chosen, the stateful
PCE can initiate an SR-TE path on a PCC using PCEP extensions specified
in using the SR specific PCEP extensions
specified in .
specifies PCEP extensions for supporting a SR-TE LSP for MPLS data
plane. extend PCEP to
support SR for IPv6 data plane. specify the link maximum transmission unit (MTU)
and SR Path MTU (SR-PMTU) in the context of SR paths and policies. It also states the motivation, link MTU collection, SR-PMTU Computation, SR-PMTU Enforcement, and handling behaviors on the
headend.Since the SR does not require signaling, the path MTU information for
SR path is not available. This document specify the extension to PCEP to
carry path MTU in the PCEP messages. It is assumed that the PCE is aware
of the link MTU as part of the Traffic Engineering Database (TED)
population. This could be done via IGP, BGP-LS or some other means. Thus
the PCE can find the path MTU at the time of path computation and
include this information as part of the PCEP messages.Though the key use case for path MTU is primarily SR, the PCEP extension (as
specified in this document) creates a new metric type for path MTU,
making this a generic extension that can be used independent of SR.Note that in SR, the term Maximum SID Depth (MSD) refers to the maximum number of SIDs that an ingress is capable of imposing on a packet. The PMTU on the other hand determines if the IP fragmentation could be avoided.The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 when, and only when, they appear in all capitals, as shown here. Link MTU: As per [RFC4821], the Maximum Transmission Unit, i.e.,
maximum IP packet size in bytes, that can be conveyed in one piece
over a link. This includes the IP header, but excludes link layer
headers and other framing that is not part of IP or the IP
payload. In case of MPLS, it also includes the label stack and in
case of IPv6, it includes IPv6 extension headers (including SRH).Path MTU, or PMTU: The minimum link MTU of all the links in a path
between a source node and a destination node. In the scope of
SR, this is also called SR-PMTU for the SR paths and
policies. Note that the link MTU takes the SR overhead (label
stack or SRH) into consideration.The METRIC object is defined in Section 7.8 of , comprising metric-value and metric-type (T field),
and a flags field, comprising a number of bit flags (B "Bound" bit and C "Computed Metric" bit).
This document defines a new type for the METRIC object for Path
MTU.T = TBD: Path MTU.A network comprises of a set of N links {Li, (i=1...N)}.A path P of a LSP is a list of K links {Lpi,(i=1...K)}.A Link MTU of link L is denoted M(L).A Path MTU metric for the path P = Min {M(Lpi), (i=1...K)}.The Path MTU metric type of the METRIC object in PCEP represents
the minimum of the Link MTU of all links along the path.When PCE computes the path, it can also find the Path MTU (based on
the above criteria) and include this information in the METRIC object
with the above metric type in the PCEP message when replying to the
PCC. In a Path Computation Reply (PCRep) message, the PCE MAY insert
the METRIC object with an Explicit Route Object (ERO) so as to provide
the METRIC (path MTU) for the computed path. The PCE MAY also insert
the METRIC object with a NO-PATH object to indicate that the metric
constraint could not be satisfied.Further, a PCC MAY use the Path MTU metric in a Path Computation
Request (PCReq) message to request a path meeting the MTU requirement
of the path. In this case, the B bit MUST be set to suggest a bound (a
maximum) for the Path MTU metric that must not be exceeded for the PCC
to consider the computed path as acceptable. The Path MTU metric must
be less than or equal to the value specified in the metric-value
field.A PCC can also use this metric to ask PCE to optimize the path MTU
during path computation. In this case, the B bit MUST be cleared.The error handling and processing of the METRIC object is as
specified in .For the handling of B bit in METRIC Object, states: "When set in a PCReq message, the metric-value indicates a bound (a maximum) for the path metric that must not be exceeded for the PCC to consider the computed path as acceptable. The path metric must be
less than or equal to the value specified in the metric-value field."The new metric type path MTU defined in this document is different.
The bound for the path MTU indicates a minimum value instead of
maximum. That is when the metric type is set to TBD for path MTU,
the metric-value indicates a bound (a minimum path MTU) for the path
metric that must not be subceeded for the PCC to consider the
computed path as acceptable. The path metric for path MTU must be
greater than or equal to the value specified in the metric-value
field.Further, a PCC MAY request that PCE optimizes an individual path
computation request to maximize the path MTU of the computed path by
clearing the B bit in the METRIC object with metric-type=TBD for path
MTU. specify the handling of SR-PMTU at the SR Policy, Candidate paths, and at each segment list level. In PCEP, support for multiple segment list is added in . The METRIC object is currently encoded at candidate path level. A future update of the document could investigate and include mechanism to support SR-PMTU at each segment list level. specifies a set of extensions to PCEP to
enable stateful control of MPLS-TE LSPs via PCEP and the
maintaining of these LSPs at the stateful PCE. It further
distinguishes between an active and a passive stateful PCE. A passive
stateful PCE uses LSP state information learned from PCCs to optimize
path computations but does not actively update LSP state. In contrast,
an active stateful PCE utilizes the LSP delegation mechanism to update
LSP parameters in those PCCs that delegated control over their LSPs to
the PCE. describes the setup, maintenance,
and teardown of PCE-initiated LSPs under the stateful PCE model. The
document defines the PCInitiate message that is used by a PCE to
request a PCC to set up a new LSP.The new metric type defined in this document can also be used with
the stateful PCE extensions. The format of PCEP messages described in
and uses
<intended-attribute-list> and <attribute-list>,
respectively, (where the <intended-attribute-list> is the
attribute-list defined in Section 6.5 of ).A PCE MAY include the path MTU metric in PCInitiate or PCUpd
message to inform the PCC of the path MTU calculated for the path. A
PCC MAY include the path MTU metric as a bound constraint or to
indicate optimization criteria (similar to PCReq).A Segment Routed path (SR path) can be derived from an IGP Shortest
Path Tree (SPT). Segment Routed Traffic Engineering paths (SR-TE
paths) may not follow IGP SPT. Such paths may be chosen by a suitable
network planning tool and provisioned on the source node of the SR-TE
path.It is possible to use a PCE for computing one or more SR-TE paths
taking into account various constraints and objective functions. Once
a path is chosen, the PCE can inform an SR-TE path on a PCC using PCEP
extensions specified in . Further, adds the support for IPv6
data plane in SR.The new metric type for path MTU is applicable for the SR-TE path
and require no additional extensions.Refer for SR-PMTU considerations.The path MTU metric can be used for both primary and protection path.As per , it is possible for the headend implementation to take an
FRR overhead into consideration when determining if fragmentation
would be needed for the SR Path with TI-LFA enabled where the overhead is allowed to be configured by an operator.This document defines a new METRIC type that do not add any new
security concerns beyond those discussed in in
itself. Some deployments may find the path MTU information to be extra
sensitive and could be used to influence path computation and setup with
adverse effect. Additionally, snooping of PCEP messages with such data
or using PCEP messages for network reconnaissance may give an attacker
sensitive information about the operations of the network. Thus, such
deployment should employ suitable PCEP security mechanisms like TCP
Authentication Option (TCP-AO) or Transport
Layer Security (TLS) . The procedure based on
TLS is considered a security enhancement and thus is much better suited
for the sensitive information.This document makes following requests to IANA for action.IANA maintains the "Path Computation Element Protocol (PCEP)
Numbers" registry. Within this registry, IANA maintains a subregistry
for "METRIC Object T Field". IANA is requested to make the following
allocation:We would like to thank Dhruv Dhody for his contributions for this
document.