rfc9779v2.txt   rfc9779.txt 
Internet Engineering Task Force (IETF) R. Gandhi, Ed. Internet Engineering Task Force (IETF) R. Gandhi, Ed.
Request for Comments: 9779 C. Filsfils Request for Comments: 9779 C. Filsfils
Category: Standards Track D. Voyer Category: Standards Track D. Voyer
ISSN: 2070-1721 Cisco Systems, Inc. ISSN: 2070-1721 Cisco Systems, Inc.
S. Salsano S. Salsano
Universita di Roma "Tor Vergata" Universita di Roma "Tor Vergata"
M. Chen M. Chen
Huawei Huawei
April 2025 May 2025
Performance Measurement for Segment Routing Networks with the MPLS Data Performance Measurement for Segment Routing Networks with the MPLS Data
Plane Plane
Abstract Abstract
This document specifies the application of the MPLS loss and delay This document specifies the application of the MPLS loss and delay
measurement techniques (originally defined in RFCs 6374, 7876, and measurement techniques (originally defined in RFCs 6374, 7876, and
9341) within Segment Routing (SR) networks that utilize the MPLS data 9341) within Segment Routing (SR) networks that utilize the MPLS data
plane, also referred to as Segment Routing over MPLS (SR-MPLS). SR plane, also referred to as Segment Routing over MPLS (SR-MPLS). SR
skipping to change at line 310 skipping to change at line 310
[RFC6374] containing an address of the responder can be sent in the [RFC6374] containing an address of the responder can be sent in the
query messages. The responder that supports this TLV MUST return query messages. The responder that supports this TLV MUST return
Control Code 0x1 (Success) [RFC6374] if it is the intended Control Code 0x1 (Success) [RFC6374] if it is the intended
destination for the query. Otherwise, it MUST return Error 0x15: destination for the query. Otherwise, it MUST return Error 0x15:
Invalid Destination Node Identifier [RFC6374]. Invalid Destination Node Identifier [RFC6374].
4.2. Response Message for Links and SR-MPLS Policies 4.2. Response Message for Links and SR-MPLS Policies
4.2.1. One-Way Measurement Mode 4.2.1. One-Way Measurement Mode
In the one-way measurement mode defined in Section 2.4 of [RFC6374], In one-way measurement mode, as defined in Section 2.4 of [RFC6374],
the querier can receive response messages with an IP/UDP header "out- the querier can set the UDP Return Object (URO) TLV in the query
of-band" by properly setting the UDP Return Object (URO) TLV in the message. This enables the querier to receive the out-of-band
query message. The URO TLV (Type 131) is defined in [RFC7876] and response message encapsulated in an IP/UDP header sent to the IP
includes the UDP-Destination-Port and IP address. When the querier address and UDP port specified in the URO TLV. The URO TLV (Type
sets an IP address and a UDP port in the URO TLV, the response 131) is defined in [RFC7876] and includes the UDP-Destination-Port
message MUST be sent to that IP address, with that IP address as the and IP address. When the querier sets an IP address and a UDP port
destination address and the UDP port as the destination port. In in the URO TLV, the response message MUST be sent to that IP address,
addition, the Control Code in the query message MUST be set to Out- with that IP address as the destination address and the UDP port as
of-band Response Requested [RFC6374]. the destination port. In addition, the Control Code in the query
message MUST be set to Out-of-band Response Requested [RFC6374].
4.2.2. Two-Way Measurement Mode 4.2.2. Two-Way Measurement Mode
In the two-way measurement mode defined in Section 2.4 of [RFC6374], In the two-way measurement mode defined in Section 2.4 of [RFC6374],
the response messages SHOULD be sent back one of two ways: either the response messages SHOULD be sent back one of two ways: either
they are sent back in-band on the same link, or they are sent back on they are sent back in-band on the same link, or they are sent back on
the same end-to-end SR-MPLS path (i.e., the same set of links and the same end-to-end SR-MPLS path (i.e., the same set of links and
nodes) in the reverse direction to the querier. This is done in nodes) in the reverse direction to the querier. This is done in
order to perform accurate two- way delay measurement. order to perform accurate two-way delay measurement.
For links, the response message as defined in [RFC6374] is sent back For links, the response message as defined in [RFC6374] is sent back
on the same incoming link where the query message is received. In on the same incoming link where the query message is received. In
this case, the Control Code in the query message MUST be set to In- this case, the Control Code in the query message MUST be set to In-
band Response Requested [RFC6374]. band Response Requested [RFC6374].
For end-to-end SR-MPLS paths, the responder transmits the response For end-to-end SR-MPLS paths, the responder transmits the response
message (see the example as shown in Figure 2) on a specific return message (see the example as shown in Figure 2) on a specific return
SR-MPLS path. In the query message, the querier can request that the SR-MPLS path. In the query message, the querier can request that the
responder send the response message back on a given return path using responder send the response message back on a given return path using
skipping to change at line 392 skipping to change at line 393
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: Example Query Message Header for an End-to-End SR-MPLS Figure 3: Example Query Message Header for an End-to-End SR-MPLS
Policy in the Loopback Measurement Mode Policy in the Loopback Measurement Mode
5. Delay and Loss Measurement 5. Delay and Loss Measurement
5.1. Delay Measurement Message 5.1. Delay Measurement Message
As defined in [RFC6374], MPLS Delay Measurement (DM) query and As defined in [RFC6374], MPLS Delay Measurement (DM) query and
response messages use the Associated Channel Header (ACH) (with the response messages use the Associated Channel Header (ACH) (with value
value 0x000C for delay measurement). This value identifies the 0x000C for delay measurement). The value identifies the message type
message type and message payload that follow the ACH, as defined in and message payload that follow the ACH, as defined in Section 3.2 of
Section 3.2 of [RFC6374]. For delay measurement, the same ACH value [RFC6374]. For delay measurement, the same ACH value is used for
is used for both links and end-to-end SR-MPLS Policies. both links and end-to-end SR-MPLS Policies.
5.2. Loss Measurement Message 5.2. Loss Measurement Message
The Loss Measurement (LM) protocol can perform two distinct kinds of The Loss Measurement (LM) protocol can perform two distinct kinds of
loss measurement as described in Section 2.9.8 of [RFC6374]. loss measurement as described in Section 2.9.8 of [RFC6374].
* In the inferred mode, LM will measure the loss of specially * In the inferred mode, LM will measure the loss of specially
generated test messages to infer the approximate data plane loss generated test messages to infer the approximate data plane loss
level. Inferred mode LM provides only approximate loss level. Inferred mode LM provides only approximate loss
accounting. accounting.
* In the direct mode, LM will directly measure data plane packet * In the direct mode, LM will directly measure data plane packet
loss. Direct mode LM provides perfect loss accounting but may loss. Direct mode LM provides perfect loss accounting but may
require hardware support. require hardware support.
As defined in [RFC6374], MPLS LM query and response messages use the As defined in [RFC6374], MPLS LM query and response messages use the
ACH (with the value 0x000A for direct loss measurement or value ACH (with value 0x000A for direct loss measurement or value 0x000B
0x000B for inferred loss measurement). This value identifies the for inferred loss measurement). This value identifies the message
message type and message payload that follow the ACH, as defined in type and message payload that follow the ACH, as defined in
Section 3.1 of [RFC6374]. For loss measurement, the same ACH value Section 3.1 of [RFC6374]. For loss measurement, the same ACH value
is used for both links and end-to-end SR-MPLS Policies. is used for both links and end-to-end SR-MPLS Policies.
5.3. Combined Loss/Delay Measurement Message 5.3. Combined Loss/Delay Measurement Message
As defined in [RFC6374], combined LM/DM query and response messages As defined in [RFC6374], combined LM/DM query and response messages
use the ACH (with the value 0x000D for direct loss and delay use the ACH (with value 0x000D for direct loss and delay measurement
measurement or the value 0x000E for inferred loss and delay or value 0x000E for inferred loss and delay measurement). The value
measurement). The value identies the message type and the message identifies the message type and the message payload that follows the
payload that follows the ACH, as defined in Section 3.3 of [RFC6374]. ACH, as defined in Section 3.3 of [RFC6374]. For combined loss and
For combined loss and delay measurement, the same ACH value is used delay measurement, the same ACH value is used for both links and end-
for both links and end-to-end SR-MPLS Policies. to-end SR-MPLS Policies.
5.4. Counters 5.4. Counters
The Path Segment Identifier (PSID) [RFC9545] MUST be carried in the The Path Segment Identifier (PSID) [RFC9545] MUST be carried in the
received data packet for the traffic flow under measurement, in order received data packet for the traffic flow under measurement, in order
to account for received traffic on the egress node of the SR-MPLS to account for received traffic on the egress node of the SR-MPLS
Policy. In the direct mode, the PSID in the received query message Policy. In the direct mode, the PSID in the received query message
(as shown in Figure 4) can be used to associate the received traffic (as shown in Figure 4) can be used to associate the received traffic
counter on the responder to detect the transmit packet loss for the counter on the responder to detect the transmit packet loss for the
end-to-end SR-MPLS Policy. end-to-end SR-MPLS Policy.
 End of changes. 6 change blocks. 
26 lines changed or deleted 27 lines changed or added

This html diff was produced by rfcdiff 1.48.