| rfc9503.original.xml | rfc9503.xml | |||
|---|---|---|---|---|
| <?xml version='1.0' encoding='utf-8'?> | <?xml version="1.0" encoding="UTF-8"?> | |||
| <!DOCTYPE rfc [ | <!DOCTYPE rfc [ | |||
| <!ENTITY nbsp " "> | <!ENTITY nbsp " "> | |||
| <!ENTITY zwsp "​"> | <!ENTITY zwsp "​"> | |||
| <!ENTITY nbhy "‑"> | <!ENTITY nbhy "‑"> | |||
| <!ENTITY wj "⁠"> | <!ENTITY wj "⁠"> | |||
| ]> | ]> | |||
| <rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" docName="d | ||||
| raft-ietf-ippm-stamp-srpm-18" category="std" ipr="trust200902" consensus="yes" o | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category=" | |||
| bsoletes="" updates="" xml:lang="en" sortRefs="false" symRefs="true" tocInclude= | std" consensus="yes" docName="draft-ietf-ippm-stamp-srpm-18" number="9503" ipr=" | |||
| "true" version="3"> | trust200902" obsoletes="" updates="" xml:lang="en" sortRefs="true" symRefs="true | |||
| " tocInclude="true" version="3"> | ||||
| <!-- xml2rfc v2v3 conversion 3.12.0 --> | <!-- xml2rfc v2v3 conversion 3.12.0 --> | |||
| <!-- Generated by id2xml 1.5.0 on 2020-02-06T01:41:26Z --> | <!-- Generated by id2xml 1.5.0 on 2020-02-06T01:41:26Z --> | |||
| <front> | <front> | |||
| <title abbrev="Simple TWAMP Extensions for SR Networks">Simple TWAMP (STAMP) | <title abbrev="STAMP Extensions for SR Networks">Simple Two-Way Active Measu | |||
| Extensions for Segment Routing Networks</title> | rement Protocol (STAMP) Extensions for Segment Routing Networks</title> | |||
| <seriesInfo name="Internet-Draft" value="draft-ietf-ippm-stamp-srpm-18"/> | <seriesInfo name="RFC" value="9503"/> | |||
| <author fullname="Rakesh Gandhi" initials="R." role="editor" surname="Gandhi "> | <author fullname="Rakesh Gandhi" initials="R." role="editor" surname="Gandhi "> | |||
| <organization>Cisco Systems, Inc.</organization> | <organization>Cisco Systems, Inc.</organization> | |||
| <address> | <address> | |||
| <postal> | <postal> | |||
| <street>Canada</street> | <country>Canada</country> | |||
| </postal> | </postal> | |||
| <email>rgandhi@cisco.com</email> | <email>rgandhi@cisco.com</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <author fullname="Clarence Filsfils" initials="C." surname="Filsfils"> | <author fullname="Clarence Filsfils" initials="C." surname="Filsfils"> | |||
| <organization>Cisco Systems, Inc.</organization> | <organization>Cisco Systems, Inc.</organization> | |||
| <address> | <address> | |||
| <email>cfilsfil@cisco.com</email> | <email>cfilsfil@cisco.com</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| skipping to change at line 47 ¶ | skipping to change at line 49 ¶ | |||
| <address> | <address> | |||
| <email>Bart.Janssens@colt.net</email> | <email>Bart.Janssens@colt.net</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <author fullname="Richard Foote" initials="R." surname="Foote"> | <author fullname="Richard Foote" initials="R." surname="Foote"> | |||
| <organization>Nokia</organization> | <organization>Nokia</organization> | |||
| <address> | <address> | |||
| <email>footer.foote@nokia.com</email> | <email>footer.foote@nokia.com</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <date day="04" month="August" year="2023"/> | <date month="October" year="2023"/> | |||
| <workgroup>IPPM Working Group</workgroup> | <area>tsv</area> | |||
| <workgroup>ippm</workgroup> | ||||
| <abstract> | <abstract> | |||
| <t> | <t> | |||
| Segment Routing (SR) leverages the source routing paradigm. SR is | Segment Routing (SR) leverages the source routing paradigm. SR is | |||
| applicable to both Multiprotocol Label Switching (SR-MPLS) and IPv6 | applicable to both Multiprotocol Label Switching (SR-MPLS) and IPv6 | |||
| (SRv6) forwarding planes. This document specifies RFC 8762 | (SRv6) forwarding planes. This document specifies Simple Two-Way Active Measu | |||
| (Simple Two-Way Active Measurement Protocol (STAMP)) | rement Protocol (STAMP) | |||
| extensions for SR networks, for both SR-MPLS and SRv6 forwarding | extensions (as described in RFC 8762) for SR networks, for both the SR-MPLS a | |||
| planes by augmenting the optional extensions defined in RFC 8972.</t> | nd SRv6 forwarding | |||
| planes, by augmenting the optional extensions defined in RFC 8972.</t> | ||||
| </abstract> | </abstract> | |||
| </front> | </front> | |||
| <middle> | <middle> | |||
| <section anchor="sect-1" numbered="true" toc="default"> | <section anchor="sect-1" numbered="true" toc="default"> | |||
| <name>Introduction</name> | <name>Introduction</name> | |||
| <t> | <t> | |||
| Segment Routing (SR) leverages the source routing paradigm | Segment Routing (SR) leverages the source routing paradigm | |||
| for Software Defined Networks | for Software-Defined Networks | |||
| (SDNs). SR is applicable to both Multiprotocol Label Switching | (SDNs). SR is applicable to both Multiprotocol Label Switching | |||
| (SR-MPLS) and IPv6 (SRv6) forwarding planes <xref target="RFC8402" format="de fault"/>. | (SR-MPLS) and IPv6 (SRv6) forwarding planes <xref target="RFC8402" format="de fault"/>. | |||
| SR Policies as defined in <xref target="RFC9256" format="default"/> are used | SR Policies as defined in <xref target="RFC9256" format="default"/> are used | |||
| to steer traffic through a specific, user-defined paths using a stack of Segm ents. | to steer traffic through specific, user-defined paths using a stack of Segmen ts. | |||
| A comprehensive SR Performance Measurement (PM) toolset is one of the | A comprehensive SR Performance Measurement (PM) toolset is one of the | |||
| essential requirements to measure network performance to provide Service Leve l Agreements (SLAs).</t> | essential requirements to measure network performance to provide Service Leve l Agreements (SLAs).</t> | |||
| <t>The Simple Two-Way Active Measurement Protocol (STAMP) provides | <t>The Simple Two-Way Active Measurement Protocol (STAMP) provides | |||
| capabilities for the measurement of various performance | capabilities for the measurement of various performance | |||
| metrics in IP networks <xref target="RFC8762" format="default"/> | metrics in IP networks <xref target="RFC8762" format="default"/> | |||
| without the use of a control channel to pre-signal session parameters. | without the use of a control channel to pre-signal session parameters. | |||
| <xref target="RFC8972" format="default"/> defines optional extensions, in the form of TLVs, for STAMP. | <xref target="RFC8972" format="default"/> defines optional extensions, in the form of TLVs, for STAMP. | |||
| Note that the YANG data model defined in <xref target="I-D.ietf-ippm-stamp-ya ng" format="default"/> | Note that the YANG data model defined in <xref target="I-D.ietf-ippm-stamp-ya ng" format="default"/> | |||
| can be used to provision the STAMP Session-Sender and STAMP Session-Reflector .</t> | can be used to provision the STAMP Session-Sender and STAMP Session-Reflector .</t> | |||
| <t>The STAMP test packets are transmitted along an IP path between a Sessi on-Sender | <t>STAMP test packets are transmitted along an IP path between a Session-S ender | |||
| and a Session-Reflector to measure performance delay and packet loss along th at IP path. | and a Session-Reflector to measure performance delay and packet loss along th at IP path. | |||
| It may be desired in SR networks that the same path (same set of links and no | In SR networks, it may be desired that the same path (same set of links and n | |||
| des) between the | odes) between the | |||
| Session-Sender and Session-Reflector is used for the STAMP test packets in bo | Session-Sender and Session-Reflector be used for the STAMP test packets in bo | |||
| th directions. | th directions. | |||
| This is achieved by using the STAMP <xref target="RFC8762" format="default"/> extensions for | This is achieved by using the STAMP <xref target="RFC8762" format="default"/> extensions for | |||
| SR-MPLS and SRv6 networks specified in this document by augmenting | SR-MPLS and SRv6 networks as specified in this document by augmenting | |||
| the optional extensions defined in <xref target="RFC8972" format="default"/>. </t> | the optional extensions defined in <xref target="RFC8972" format="default"/>. </t> | |||
| </section> | </section> | |||
| <section anchor="sect-2" numbered="true" toc="default"> | <section anchor="sect-2" numbered="true" toc="default"> | |||
| <name>Conventions Used in This Document</name> | <name>Conventions Used in This Document</name> | |||
| <section anchor="sect-2.1" numbered="true" toc="default"> | <section anchor="sect-2.1" numbered="true" toc="default"> | |||
| <name>Requirements Language</name> | <name>Requirements Language</name> | |||
| <t> | ||||
| 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 <xref target="RFC2119" format="default"/> <xref target=" | ||||
| RFC8174" format="default"/> | ||||
| when, and only when, they appear in all capitals, as shown here. | ||||
| </t> | ||||
| <t> | ||||
| The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQU | ||||
| IRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL | ||||
| NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14> | ||||
| RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | ||||
| "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to | ||||
| be interpreted as | ||||
| described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> | ||||
| when, and only when, they appear in all capitals, as shown here. | ||||
| </t> | ||||
| </section> | </section> | |||
| <section anchor="sect-2.2" numbered="true" toc="default"> | <section anchor="sect-2.2" numbered="true" toc="default"> | |||
| <name>Abbreviations</name> | <name>Abbreviations</name> | |||
| <t> | <dl spacing="normal"> | |||
| MPLS: Multiprotocol Label Switching.</t> | <dt>MPLS:</dt><dd> Multiprotocol Label Switching</dd> | |||
| <t> | <dt>SID:</dt><dd> Segment Identifier</dd> | |||
| SID: Segment Identifier.</t> | <dt>SR:</dt><dd> Segment Routing</dd> | |||
| <t> | <dt>SR-MPLS:</dt><dd> Segment Routing over MPLS</dd> | |||
| SR: Segment Routing.</t> | <dt>SRv6:</dt><dd> Segment Routing over IPv6</dd> | |||
| <t> | <dt>SSID:</dt><dd> STAMP Session Identifier</dd> | |||
| SR-MPLS: Segment Routing with MPLS forwarding plane.</t> | <dt>STAMP:</dt><dd> Simple Two-Way Active Measurement Protocol</dd> | |||
| <t> | </dl> | |||
| SRv6: Segment Routing with IPv6 forwarding plane.</t> | ||||
| <t> | ||||
| SSID: STAMP Session Identifier.</t> | ||||
| <t> | ||||
| STAMP: Simple Two-Way Active Measurement Protocol.</t> | ||||
| </section> | </section> | |||
| <section anchor="sect-2.3" numbered="true" toc="default"> | <section anchor="sect-2.3" numbered="true" toc="default"> | |||
| <name>Reference Topology</name> | <name>Reference Topology</name> | |||
| <t> | <t> | |||
| In the reference topology shown below, the STAMP Session-Sender S1 initiates a | In the reference topology shown below, the STAMP Session-Sender S1 initiates a | |||
| STAMP test packet and the STAMP Session-Reflector R1 | STAMP test packet and the STAMP Session-Reflector R1 | |||
| transmits a reply STAMP test packet. The reply test packet may be transmitte | transmits a reply STAMP test packet. | |||
| d | The reply test packet may be transmitted | |||
| to the Session-Sender S1 on the same path (same set of links and nodes) or a different path | to the Session-Sender S1 on the same path (same set of links and nodes) or a different path | |||
| in the reverse direction from the path taken towards the Session-Reflector R1 . | in the reverse direction from the path taken towards the Session-Reflector R1 . | |||
| The T1 is a transmit timestamp and T4 is a receive timestamp added by node S1 | </t><t> | |||
| in the STAMP test packet. | ||||
| The T2 is a receive timestamp and T3 is a transmit timestamp added by node R1 | T1 is a transmit timestamp, and T4 is a receive timestamp added by node S1. | |||
| in the STAMP test packet. | T2 is a receive timestamp, and T3 is a transmit timestamp added by node R1. | |||
| </t> | </t> | |||
| <t>The nodes S1 and R1 may be | <t>The nodes S1 and R1 may be | |||
| connected via a link or an SR path <xref target="RFC8402" format="default"/>. | connected via a link or an SR path <xref target="RFC8402" format="default"/>. | |||
| The link may be a physical interface, virtual link, | The link may be a physical interface, virtual link, | |||
| or Link Aggregation Group (LAG) <xref target="IEEE802.1AX" format="default"/> , or LAG member. | Link Aggregation Group (LAG) <xref target="IEEE802.1AX" format="default"/>, o r LAG member. | |||
| The SR path may be an SR Policy <xref target="RFC9256" format="default"/> | The SR path may be an SR Policy <xref target="RFC9256" format="default"/> | |||
| on node S1 (called head-end) with destination to node R1 (called tail-end).</ t> | on node S1 (called "head-end") with a destination to node R1 (called "tai l-end").</t> | |||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | <figure anchor="Figure_Reference_Topology"> | |||
| <name>Reference Topology</name> | ||||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
| T1 T2 | T1 T2 | |||
| / \ | / \ | |||
| +-------+ Test Packet +-------+ | +-------+ Test Packet +-------+ | |||
| | | - - - - - - - - - ->| | | | | - - - - - - - - - ->| | | |||
| | S1 |=====================| R1 | | | S1 |=====================| R1 | | |||
| | |<- - - - - - - - - - | | | | |<- - - - - - - - - - | | | |||
| +-------+ Reply Test Packet +-------+ | +-------+ Reply Test Packet +-------+ | |||
| \ / | \ / | |||
| T4 T3 | T4 T3 | |||
| STAMP Session-Sender STAMP Session-Reflector | STAMP Session-Sender STAMP Session-Reflector | |||
| ]]></artwork> | ||||
| Reference Topology | </figure> | |||
| ]]></artwork> | ||||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="sect-4" numbered="true" toc="default"> | <section anchor="sect-4" numbered="true" toc="default"> | |||
| <name>Destination Node Address TLV</name> | <name>Destination Node Address TLV</name> | |||
| <t> | <t> | |||
| The Session-Sender may need to transmit test packets to the Session-Reflector with a destination address that is not a routable (i.e., | The Session-Sender may need to transmit test packets to the Session-Reflector with a Destination Address that is not a routable address (i.e., not | |||
| suitable for use as the Source Address of the reply test packet) | suitable for use as the Source Address of the reply test packet) | |||
| address of the Session-Reflector. This can be facilitated, for example, | of the Session-Reflector. This can be facilitated, for example, | |||
| by encapsulating the STAMP packet by a tunneling protocol, see Appendix A, | by encapsulating the STAMP packet by a tunneling protocol; see <xref target=" | |||
| for a worked example. </t> | app-A"/> | |||
| for an example. </t> | ||||
| <t><xref target="RFC8972" format="default"/> defines STAMP Session-Sender | <t><xref target="RFC8972" format="default"/> defines STAMP Session-Sender | |||
| and Session-Reflector test packets that | and Session-Reflector test packets that can include one or more optional TLVs. I | |||
| can include one or more optional TLVs. | n this document, the TLV Type (value 9 for IPv4 and IPv6) is defined for the Des | |||
| In this document, the TLV type (value 9 for IPv4 and IPv6) is defined for th | tination Node Address TLV | |||
| e Destination Node Address TLV | ||||
| for the STAMP test packet <xref target="RFC8972" format="default"/>. The for mats of | for the STAMP test packet <xref target="RFC8972" format="default"/>. The for mats of | |||
| the Destination Node Address TLVs are shown in Figure 1:</t> | the Destination Node Address TLVs are shown in <xref target="ure-node-addr | |||
| ess-tlv-format"/>:</t> | ||||
| <figure anchor="ure-node-address-tlv-format"> | <figure anchor="ure-node-address-tlv-format"> | |||
| <name>Destination Node Address TLV Format</name> | <name>Destination Node Address TLV Formats</name> | |||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |STAMP TLV Flags| Type=9 | Length=4 | | |STAMP TLV Flags| Type=9 | Length=4 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | IPv4 Address | | | IPv4 Address | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |STAMP TLV Flags| Type=9 | Length=16 | | |STAMP TLV Flags| Type=9 | Length=16 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | | |||
| | IPv6 Address | | | IPv6 Address | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| <t> TLV fields are defined as follows:</t> | <t> The TLV fields are defined as follows:</t> | |||
| <t> STAMP TLV Flags : The STAMP TLV Flags follow the procedures described | <dl spacing="normal"> | |||
| in <xref target="RFC8972" format="default"/> and this document.</t> | <dt> STAMP TLV Flags:</dt><dd> The STAMP TLV Flags follow the procedures d | |||
| <t> Type : Type (value 9) for IPv4 Destination Node Address TLV or IPv6 De | escribed in <xref target="RFC8972" format="default"/> and this document.</dd> | |||
| stination Node Address TLV.</t> | <dt> Type:</dt><dd> Type (value 9) for the IPv4 Destination Node Address T | |||
| <t> Length : A two-octet field equal to the length of the Address field in | LV or IPv6 Destination Node Address TLV.</dd> | |||
| octets. The length is 4 octets for IPv4 address and 16 octets for IPv6 address. | <dt> Length:</dt><dd> A 2-octet field equal to the length of the Address f | |||
| </t> | ield in octets. The length is 4 octets for an IPv4 address and 16 octets for an | |||
| <t></t> | IPv6 address.</dd> | |||
| </dl> | ||||
| <t> | <t> | |||
| The Destination Node Address TLV indicates an address of the intended | The Destination Node Address TLV indicates an address of the intended | |||
| Session-Reflector node of the test packet. If the received | Session-Reflector node of the test packet. If the received | |||
| Destination Node Address is one of the addresses of the | Destination Node Address is one of the addresses of the | |||
| Session-Reflector, it SHOULD be used as the Source Address in the IP | Session-Reflector, it <bcp14>SHOULD</bcp14> be used as the Source Address in the IP | |||
| header of the reply test packet. | header of the reply test packet. | |||
| If the Destination Node Address TLV is sent, the SSID MUST also be sent. </t> | If the Destination Node Address TLV is sent, the SSID <bcp14>MUST</bcp14> als o be sent. </t> | |||
| <t>A Session-Reflector that recognizes this TLV, MUST set the U flag <xref | <t>A Session-Reflector that recognizes this TLV <bcp14>MUST</bcp14> set th | |||
| target="RFC8972" format="default"/> in the reply test packet to 1 if the Sessio | e U flag <xref target="RFC8972" format="default"/> in the reply test packet to 1 | |||
| n-Reflector | if the Session-Reflector | |||
| determined that it is not the intended Destination as identified in the De | determined that it is not the intended destination as identified in the De | |||
| stination | stination | |||
| Node Address TLV. In this case, the Session-Reflector does not use the rec eived Destination Node Address | Node Address TLV. In this case, the Session-Reflector does not use the rec eived Destination Node Address | |||
| as the Source Address in the IP header of the reply test packet. | as the Source Address in the IP header of the reply test packet. | |||
| Otherwise, the Session-Reflector MUST set the U flag in the Destination No de Address TLV in the | Otherwise, the Session-Reflector <bcp14>MUST</bcp14> set the U flag in the Destination Node Address TLV in the | |||
| reply test packet to 0.</t> | reply test packet to 0.</t> | |||
| </section> | </section> | |||
| <section anchor="sect-5" numbered="true" toc="default"> | <section anchor="sect-5" numbered="true" toc="default"> | |||
| <name>Return Path TLV</name> | <name>Return Path TLV</name> | |||
| <t> | <t> | |||
| For end-to-end SR paths, the Session-Reflector may need to transmit the reply test | For end-to-end SR paths, the Session-Reflector may need to transmit the reply test | |||
| packet on a specific return path. The Session-Sender | packet on a specific Return Path. The Session-Sender | |||
| can request this in the test packet to the Session-Reflector using a Return P ath TLV. | can request this in the test packet to the Session-Reflector using a Return P ath TLV. | |||
| With this TLV carried in the Session-Sender test packet, | With this TLV carried in the Session-Sender test packet, | |||
| signaling and maintaining dynamic SR network state for the | signaling and maintaining dynamic SR network state for the | |||
| STAMP sessions on the Session-Reflector are avoided.</t> | STAMP sessions on the Session-Reflector are avoided.</t> | |||
| <t>There are two modes defined for the behaviors on the Session-Reflector in | ||||
| <t>There are two modes defined for the behaviors on the Session-Reflector in | <xref target="RFC8762" sectionFormat="of" section="4"/>: Stateless and Stateful. | |||
| Section 4 of <xref target="RFC8762" format="default"/>. | A Stateful Session-Reflector requires configuration that must match all Sessi | |||
| A Stateful Session-Reflector that requires configuration that must match all | on-Sender parameters, including the Source Address, Destination Address, Source | |||
| Session-Sender parameters, including Source Address, Destination Address, Source | UDP Port, Destination UDP Port, and possibly SSID (assuming the SSID is configur | |||
| UDP Port, Destination UDP Port, and possibly SSID (assuming the SSID is configu | able and not auto-generated). In this case, a local policy can be used to direct | |||
| rable and not auto-generated). In this case, a local policy can be used to direc | the test packet by creating additional states for the STAMP sessions on the Ses | |||
| t the test packet by creating additional states for the STAMP sessions on the Se | sion-Reflector. In the case of promiscuous operation, the Stateless Session-Refl | |||
| ssion-Reflector. In the case of promiscuous operation, the Stateless Session-Ref | ector will require an indication of how to return the test packet on a specific | |||
| lector will require an indication of how to return the test packet on a specific | path, for example, for measurement in an ECMP environment. </t> | |||
| path, for example, for measurement in an ECMP environment. </t> | ||||
| <t>For links, the Session-Reflector may need to transmit the reply test | <t>For links, the Session-Reflector may need to transmit the reply test | |||
| packet on the same incoming link in the reverse direction. | packet on the same incoming link in the reverse direction. | |||
| The Session-Sender can request this in the test packet | The Session-Sender can request this in the test packet | |||
| to the Session-Reflector using a Return Path TLV.</t> | to the Session-Reflector using a Return Path TLV.</t> | |||
| <t><xref target="RFC8972" format="default"/> defines STAMP test packets th at | <t><xref target="RFC8972" format="default"/> defines STAMP test packets th at | |||
| can include one or more optional TLVs. In this document, the TLV Type (value 10) is | can include one or more optional TLVs. In this document, the TLV Type (value 10) is | |||
| defined for the Return Path TLV that carries the return path for the Session- | defined for the Return Path TLV that carries the Return Path for the Session- | |||
| Sender | Sender | |||
| test packet. The format of the Return Path TLV is shown in Figure 2:</t> | test packet. The format of the Return Path TLV is shown in <xref target="ure- | |||
| <figure anchor="ure-return-path-tlv"> | return-path-tlv"/>:</t> | |||
| <name>Return Path TLV</name> | <figure anchor="ure-return-path-tlv"> | |||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | <name>Return Path TLV Format</name> | |||
| 0 1 2 3 | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |STAMP TLV Flags| Type=10 | Length | | |STAMP TLV Flags| Type=10 | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Return Path Sub-TLVs | | | Return Path Sub-TLVs | | |||
| . . | . . | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| <t> TLV fields are defined as follows:</t> | <t> The TLV fields are defined as follows:</t> | |||
| <t> STAMP TLV Flags : The STAMP TLV Flags follow the procedures described | <dl spacing="normal"> | |||
| in <xref target="RFC8972" format="default"/> and this document.</t> | <dt> STAMP TLV Flags:</dt><dd> The STAMP TLV Flags follow the procedures d | |||
| <t> Type : Type (value 10) for Return Path TLV.</t> | escribed in <xref target="RFC8972" format="default"/> and this document.</dd> | |||
| <t> Length : A two-octet field equal to the length of the Return Path Sub | <dt> Type:</dt><dd> Type (value 10) for the Return Path TLV.</dd> | |||
| -TLVs field in octets.</t> | <dt> Length:</dt><dd> A 2-octet field equal to the length of the Return Pa | |||
| <t> Return Path Sub-TLVs : As defined in Section 4.1.</t> | th Sub-TLVs field in octets.</dd> | |||
| <t></t> | <dt> Return Path Sub-TLVs:</dt><dd>As defined in <xref target="sect-5.1"/> | |||
| .</dd> | ||||
| </dl> | ||||
| <t> | <t> | |||
| A Session-Sender MUST NOT insert more than one Return Path TLV in the | A Session-Sender <bcp14>MUST NOT</bcp14> insert more than one Return Path TLV | |||
| STAMP test packet. A Session-Reflector that supports this TLV MUST | in the | |||
| STAMP test packet. A Session-Reflector that supports this TLV <bcp14>MUST</b | ||||
| cp14> | ||||
| only process the first Return Path TLV in the test packet and ignore | only process the first Return Path TLV in the test packet and ignore | |||
| other Return Path TLVs if present. A Session-Reflector that supports | other Return Path TLVs if present. A Session-Reflector that supports | |||
| this TLV MUST reply using the Return Path received in the | this TLV <bcp14>MUST</bcp14> reply using the Return Path received in the | |||
| Session-Sender test packet, if no error was encountered while processing the TLV. | Session-Sender test packet, if no error was encountered while processing the TLV. | |||
| </t> | </t> | |||
| <t>A Session-Reflector that recognizes this TLV, MUST set the U flag <xref ta | <t>A Session-Reflector that recognizes this TLV <bcp14>MUST</bcp14> set the U | |||
| rget="RFC8972" format="default"/> in the reply test packet to 1 if the Session-R | flag <xref target="RFC8972" format="default"/> in the reply test packet to 1 if | |||
| eflector | the Session-Reflector | |||
| determined that it cannot use the return path in the test packet to transmit | determined that it cannot use the Return Path in the test packet to transmit | |||
| the reply test packet. | the reply test packet. | |||
| Otherwise, the Session-Reflector MUST set the U flag in the | Otherwise, the Session-Reflector <bcp14>MUST</bcp14> set the U flag in the | |||
| reply test packet to 0.</t> | reply test packet to 0.</t> | |||
| <section anchor="sect-5.1" numbered="true" toc="default"> | <section anchor="sect-5.1" numbered="true" toc="default"> | |||
| <name>Return Path Sub-TLVs</name> | <name>Return Path Sub-TLVs</name> | |||
| <t>The Return Path TLV contains one or more Sub-TLVs to carry | <t>The Return Path TLV contains one or more Sub-TLVs to carry | |||
| the information for the requested return path. | the information for the requested Return Path. | |||
| A Return Path Sub-TLV can carry Return Path Control Code, | A Return Path Sub-TLV can carry a Return Path Control Code, | |||
| Return Path IP Address or Return Path Segment List.</t> | Return Path IP Address, or Return Path Segment List.</t> | |||
| <t>The STAMP Sub-TLV Flags are set using the procedures described in <xr ef target="RFC8972" format="default"/>.</t> | <t>The STAMP Sub-TLV Flags are set using the procedures described in <xr ef target="RFC8972" format="default"/>.</t> | |||
| <t>A Return Path TLV MUST NOT contain more than one Control Code Sub-TLV | <t>A Return Path TLV <bcp14>MUST NOT</bcp14> contain more than one Contr | |||
| or more than one Return Address Sub-TLV or more than one Segment List Sub-TLV i | ol Code Sub-TLV, Return Address Sub-TLV, or Return Path Segment List Sub-TLV in | |||
| n Session-Sender test packet.</t> | a Session-Sender test packet.</t> | |||
| <t>A Return Path TLV MUST NOT contain both Control Code Sub-TLV as well | <t>A Return Path TLV <bcp14>MUST NOT</bcp14> contain both a Control Code | |||
| as Return Address or Return Segment List Sub-TLV in Session-Sender test packet.< | Sub-TLV and a Return Address or Return Path Segment List Sub-TLV in a Session-S | |||
| /t> | ender test packet.</t> | |||
| <t>A Return Path TLV MAY contain both Return Address as well as Return S | <t>A Return Path TLV <bcp14>MAY</bcp14> contain both a Return Address an | |||
| egment List Sub-TLV in Session-Sender test packet.</t> | d a Return Path Segment List Sub-TLV in a Session-Sender test packet.</t> | |||
| <section anchor="sect-4.1.1" numbered="true" toc="default"> | <section anchor="sect-4.1.1" numbered="true" toc="default"> | |||
| <name>Return Path Control Code Sub-TLV</name> | <name>Return Path Control Code Sub-TLV</name> | |||
| <t>The format of the Control Code Sub-TLV in the Return Path TLV is sh | ||||
| <t>The format of the Return Path Control Code Sub-TLV is shown in Figu | own in <xref target="ure-control-code-return-path-tlv"/>.</t> | |||
| re 3.</t> | ||||
| <figure anchor="ure-control-code-return-path-tlv"> | <figure anchor="ure-control-code-return-path-tlv"> | |||
| <name>Control Code Sub-TLV in Return Path TLV</name> | <name>Format of the Control Code Sub-TLV in the Return Path TLV</nam | |||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | e> | |||
| 0 1 2 3 | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |STAMP TLV Flags| Type=1 | Length=4 | | |STAMP TLV Flags| Type=1 | Length=4 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Control Code Flags | | | Control Code Flags | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| <t>TLV fields are defined as follows:</t> | <t>The TLV fields are defined as follows:</t> | |||
| <ul spacing="normal"> | <dl newline="false" spacing="normal"> | |||
| <li>Type (value 1): Return Path Control Code. | <dt>Type:</dt><dd>Type (value 1) for the Return Path Control Code. | |||
| The Session-Sender can request the Session-Reflector | The Session-Sender can request the Session-Reflector | |||
| to transmit the reply test packet based on the flags defined in the Control | to transmit the reply test packet based on the flags defined in the Control | |||
| Code Flags field.</li> | Code Flags field.</dd> | |||
| </ul> | <dt>STAMP TLV Flags:</dt><dd> The STAMP TLV Flags follow the procedures de | |||
| scribed in <xref target="RFC8972" format="default"/> and this document.</dd> | ||||
| <t>STAMP TLV Flags : The STAMP TLV Flags follow the procedures described i | <dt>Length:</dt><dd> A 2-octet field equal to the length of the Control Co | |||
| n <xref target="RFC8972" format="default"/> and this document.</t> | de flags, which is 4 octets.</dd> | |||
| <t>Length : A two-octet field equal to the length of the Control Code flag | <dt>Control Code Flags (32 bits):</dt><dd><t>Reply Request Flag at bit 31 | |||
| s which is 4 octets.</t> | (least significant bit) is defined as follows.</t> | |||
| <t>Control Code Flags (32-bit): Reply Request Flag at bit 31 (least signif | <dl newline="false" spacing="normal" indent="3"> | |||
| icant bit) is defined as follows.</t> | <dt> 0x0:</dt><dd> No Reply Requested</dd> | |||
| <dl newline="false" spacing="normal" indent="4"> | <dt> 0x1:</dt><dd> Reply Requested on the Same Link</dd> | |||
| <dt/> | </dl> | |||
| <dd> | </dd> | |||
| 0x0 : No Reply Requested.</dd> | </dl> | |||
| </dl> | ||||
| <dl newline="false" spacing="normal" indent="4"> | ||||
| <dt/> | ||||
| <dd> | ||||
| 0x1 : Reply Requested on the Same Link.</dd> | ||||
| </dl> | ||||
| <t> All other bits are reserved and must be transmitted as 0 and ignored b y the receiver.</t> | <t> All other bits are reserved and must be transmitted as 0 and ignored b y the receiver.</t> | |||
| <t>When Control Code flag for Reply Request is set to 0x0 in the Sessi on-Sender test packet, | <t>When Control Code flag for Reply Request is set to 0x0 in the Sessi on-Sender test packet, | |||
| the Session-Reflector does not | the Session-Reflector does not | |||
| transmit reply test packet to the Session-Sender and terminates the | transmit a reply test packet to the Session-Sender and terminates the | |||
| STAMP test packet. Only the one-way measurement is applicable in this case. | STAMP test packet. Only the one-way measurement is applicable in this case. | |||
| Optionally, the Session-Reflector may locally stream performance metrics | Optionally, the Session-Reflector may locally stream performance metrics | |||
| via telemetry using the information from the received test packet. | via telemetry using the information from the received test packet. | |||
| All other Return Path Sub-TLVs MUST be ignored in this case.</t> | All other Return Path Sub-TLVs <bcp14>MUST</bcp14> be ignored in this case.< /t> | |||
| <t>When Control Code flag for Reply Request is set to 0x1 in the Sessi on-Sender test packet, | <t>When Control Code flag for Reply Request is set to 0x1 in the Sessi on-Sender test packet, | |||
| the Session-Reflector transmits the reply test packet over the same incoming link | the Session-Reflector transmits the reply test packet over the same incoming link | |||
| where the test packet is received in the reverse direction towards the Sessi on-Sender. | where the test packet is received in the reverse direction towards the Sessi on-Sender. | |||
| The link may be a physical interface, virtual link, | The link may be a physical interface, virtual link, LAG <xref target="IEEE80 | |||
| or Link Aggregation Group (LAG) <xref target="IEEE802.1AX" format="default"/ | 2.1AX" format="default"/>, or LAG member. | |||
| >, or LAG member. | All other Return Path Sub-TLVs <bcp14>MUST</bcp14> be ignored in this case. | |||
| All other Return Path Sub-TLVs MUST be ignored in this case. | When using LAG member links, the STAMP extension for the Micro-Session ID TL | |||
| When using LAG member links, STAMP extension for Micro-Session ID TLV define | V defined | |||
| d | ||||
| in <xref target=" I-D.ietf-ippm-stamp-on-lag" format="default"/> can be used to identify the link. | in <xref target=" I-D.ietf-ippm-stamp-on-lag" format="default"/> can be used to identify the link. | |||
| </t> | </t> | |||
| </section> | </section> | |||
| <section anchor="sect-5.1.2" numbered="true" toc="default"> | <section anchor="sect-5.1.2" numbered="true" toc="default"> | |||
| <name>Return Address Sub-TLV</name> | <name>Return Address Sub-TLVs</name> | |||
| <t>The STAMP reply test packet may be transmitted to the Session-Sende r | <t>The STAMP reply test packet may be transmitted to the Session-Sende r | |||
| to the specified Return Address in the Return Address Sub-TLV instead of tran smitting to the Source Address in the Session-Sender test packet.</t> | to the specified Return Address in the Return Address Sub-TLV instead of tran smitting to the Source Address in the Session-Sender test packet.</t> | |||
| <t>The formats of the IPv4 and IPv6 Return Address Sub-TLVs are shown i n Figure 4.</t> | <t>The formats of the IPv4 and IPv6 Return Address Sub-TLVs in the Return Pat h TLV are shown in <xref target="ure-return-node-address-tlv-format"/>.</t> | |||
| <figure anchor="ure-return-node-address-tlv-format"> | <figure anchor="ure-return-node-address-tlv-format"> | |||
| <name>Return Address Sub-TLV in Return Path TLV</name> | <name>Formats of the Return Address Sub-TLVs in the Return Path TLV< | |||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | /name> | |||
| 0 1 2 3 | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |STAMP TLV Flags| Type=2 | Length=4 | | |STAMP TLV Flags| Type=2 | Length=4 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Return IPv4 Address | | | Return IPv4 Address | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |STAMP TLV Flags| Type=2 | Length=16 | | |STAMP TLV Flags| Type=2 | Length=16 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | | |||
| | Return IPv6 Address | | | Return IPv6 Address | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| <t> The TLV fields are defined as follows:</t> | ||||
| <ul spacing="normal"> | <t> The TLV fields are defined as follows:</t> | |||
| <li>Type : Type (value 2) for IPv4 Return Address or IPv6 Return Add | <dl newline="false" spacing="normal"> | |||
| ress.</li> | <dt>Type:</dt><dd>Type (value 2) for the Return IPv4 Address or Return | |||
| </ul> | IPv6 Address.</dd> | |||
| </dl> | ||||
| <t> The Return Address requests that the Session-Reflector reply test pack et | <t> The Return Address requests that the Session-Reflector reply test pack et | |||
| be sent to the specified address, rather than to the Source Address in | be sent to the specified address rather than to the Source Address in | |||
| the Session-Sender test packet.</t> | the Session-Sender test packet.</t> | |||
| <t> STAMP TLV Flags : The STAMP TLV Flags follow the procedures described | <dl spacing="normal"> | |||
| in <xref target="RFC8972" format="default"/> and this document.</t> | <dt> STAMP TLV Flags:</dt><dd> The STAMP TLV Flags follow the procedures d | |||
| <t> Length : A two-octet field equal to the length of the Return Address f | escribed in <xref target="RFC8972" format="default"/> and this document.</dd> | |||
| ield in octets. | <dt> Length:</dt><dd> A 2-octet field equal to the length of the Return Ad | |||
| The length is 4 octets for IPv4 address and 16 octets for IPv6 address.</t | dress field in octets. | |||
| > | The length is 4 octets for an IPv4 address and 16 octets for an IPv6 addre | |||
| ss.</dd> | ||||
| </dl> | ||||
| </section> | </section> | |||
| <section anchor="sect-5.1.3" numbered="true" toc="default"> | <section anchor="sect-5.1.3" numbered="true" toc="default"> | |||
| <name>Return Segment List Sub-TLVs</name> | <name>Return Path Segment List Sub-TLVs</name> | |||
| <t>The format of the Segment List Sub-TLVs in the Return Path TLV is s | <t>The format of the Segment List Sub-TLVs in the Return Path TLV is s | |||
| hown in Figures 5 and 6. | hown in Figures <xref target="ure-sr-mpl-segment-list-sub-tlv-in-return-path-tlv | |||
| " format="counter"/> and <xref target="ure-srv6segment-list-sub-tlv-in-return-pa | ||||
| th-tlv" format="counter"/>. | ||||
| The Segments carried in Segment List Sub-TLVs are described in <xref targe t="RFC8402" format="default"/>. | The Segments carried in Segment List Sub-TLVs are described in <xref targe t="RFC8402" format="default"/>. | |||
| The segment entries MUST be in network order.</t> | The segment entries <bcp14>MUST</bcp14> be in network order.</t> | |||
| <t>The Session-Sender MUST only insert one Segment List Return Path Su | <t>The Session-Sender <bcp14>MUST</bcp14> only insert one Return Path | |||
| b-TLV | Segment List Sub-TLV | |||
| in the test packet and Segment List MUST contain at least one Segment. Th | in the test packet, and the Segment List <bcp14>MUST</bcp14> contain at le | |||
| e Session-Reflector MUST only process | ast one Segment. The Session-Reflector <bcp14>MUST</bcp14> only process | |||
| the first Segment List Return Path Sub-TLV in the test packet and ignore o | the first Return Path Segment List Sub-TLV in the test packet and ignore o | |||
| ther | ther | |||
| Segment List Return Path Sub-TLVs if present.</t> | Return Path Segment List Sub-TLVs if present.</t> | |||
| <t> TLV fields are defined as follows:</t> | <t> The TLV fields are defined as follows:</t> | |||
| <t> The Segment List Sub-TLV can be one of the following Types:</t> | <dl newline="false" spacing="normal"> | |||
| <ul spacing="normal"> | <dt> The Return Path Segment List Sub-TLV can be one of the following Ty | |||
| <li>Type (value 3): SR-MPLS Label Stack of the Return Path</li> | pes:</dt> | |||
| <li>Type (value 4): SRv6 Segment List of the Return Path</li> | <dd><t><br/></t> | |||
| </ul> | <dl indent="3" newline="false" spacing="normal"> | |||
| <t> STAMP TLV Flags : The STAMP TLV Flags follow the procedures described | <dt>Type (value 3):</dt><dd> SR-MPLS Label Stack of the Return Path< | |||
| in <xref target="RFC8972" format="default"/> and this document.</t> | /dd> | |||
| <t> Length : A two-octet field equal to the length of the Segment List fie | <dt>Type (value 4):</dt><dd> SRv6 Segment List of the Return Path</d | |||
| ld in octets. Length MUST NOT be 0.</t> | d> | |||
| </dl> | ||||
| </dd> | ||||
| <dt> STAMP TLV Flags:</dt><dd> The STAMP TLV Flags follow the procedures d | ||||
| escribed in <xref target="RFC8972" format="default"/> and this document.</dd> | ||||
| <dt> Length:</dt><dd> A 2-octet field equal to the length of the Segment L | ||||
| ist field in octets. The length <bcp14>MUST NOT</bcp14> be 0.</dd> | ||||
| </dl> | ||||
| <section anchor="sect-5.1.3.1" numbered="true" toc="default"> | <section anchor="sect-5.1.3.1" numbered="true" toc="default"> | |||
| <name>Return Path SR-MPLS Segment-List Sub-TLV</name> | <name>Return Path SR-MPLS Label Stack Sub-TLV</name> | |||
| <figure anchor="ure-sr-mpl-segment-list-sub-tlv-in-return-path-tlv"> | <figure anchor="ure-sr-mpl-segment-list-sub-tlv-in-return-path-tlv"> | |||
| <name>SR-MPLS Segment List Sub-TLV in Return Path TLV</name> | <name>Format of the SR-MPLS Label Stack Sub-TLV in the Return Path T | |||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | LV</name> | |||
| 0 1 2 3 | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |STAMP TLV Flags| Type=3 | Length | | |STAMP TLV Flags| Type=3 | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Segment(1) | TC |S| TTL | | | Segment(1) | TC |S| TTL | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| . . | . . | |||
| . . | . . | |||
| . . | . . | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Segment(n) (bottom of stack) | TC |S| TTL | | | Segment(n) (bottom of stack) | TC |S| TTL | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| <t>The SR-MPLS Label Stack contains a list of 32-bit Label Stack Entry (LSE | <t>The SR-MPLS Label Stack contains a list of 32-bit Label Stack Entries (L | |||
| ) that includes a 20-bit label value, | SEs) that includes a 20-bit label value, | |||
| 8-bit Time-To-Live (TTL) value, 3-bit Traffic Class (TC) value and 1-bit E | an 8-bit Time-To-Live (TTL) value, a 3-bit Traffic Class (TC) value, and a | |||
| nd-Of-Stack (S) field. Length of the Sub-TLV modulo 4 MUST be 0.</t> | 1-bit End-of-Stack (S) field. The length of the Sub-TLV modulo 4 <bcp14>MUST</b | |||
| cp14> be 0.</t> | ||||
| <t>As an example, an SR-MPLS Label Stack Sub-TLV could carry only the Bind ing SID Label | <t>As an example, an SR-MPLS Label Stack Sub-TLV could carry only the Bind ing SID Label | |||
| <xref target="I-D.ietf-pce-binding-label-sid" format="default"/> of the Re turn SR-MPLS Policy. | <xref target="I-D.ietf-pce-binding-label-sid" format="default"/> of the Re turn SR-MPLS Policy. | |||
| The Binding SID Label of the Return SR-MPLS Policy is local to the Session -Reflector. | The Binding SID Label of the Return SR-MPLS Policy is local to the Session -Reflector. | |||
| The mechanism to signal the Binding SID Label to the Session-Sender is out side the scope of this document.</t> | The mechanism to signal the Binding SID Label to the Session-Sender is out side the scope of this document.</t> | |||
| <t>As another example, an SR-MPLS Label Stack Sub-TLV could include the Pa th Segment Identifier Label of the Return SR-MPLS Policy in the Segment List of the SR-MPLS Policy.</t> | <t>As another example, an SR-MPLS Label Stack Sub-TLV could include the Pa th Segment Identifier Label of the Return SR-MPLS Policy in the Segment List of the SR-MPLS Policy.</t> | |||
| </section> | </section> | |||
| <section anchor="sect-5.1.3.2" numbered="true" toc="default"> | <section anchor="sect-5.1.3.2" numbered="true" toc="default"> | |||
| <name>Return Path SRv6 Segment-List Sub-TLV</name> | <name>Return Path SRv6 Segment List Sub-TLV</name> | |||
| <figure anchor="ure-srv6segment-list-sub-tlv-in-return-path-tlv"> | <figure anchor="ure-srv6segment-list-sub-tlv-in-return-path-tlv"> | |||
| <name>SRv6 Segment List Sub-TLV in Return Path TLV</name> | <name>Format of the SRv6 Segment List Sub-TLV in the Return Path TLV | |||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | </name> | |||
| 0 1 2 3 | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |STAMP TLV Flags| Type=4 | Length | | |STAMP TLV Flags| Type=4 | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | | |||
| | Segment(1) (128-bit IPv6 address) | | | Segment(1) (128-bit IPv6 Address) | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| . . | . . | |||
| . . | . . | |||
| . . | . . | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | | |||
| | Segment(n) (128-bit IPv6 address) (bottom of stack) | | | Segment(n) (128-bit IPv6 Address) (bottom of stack) | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| <t>The SRv6 Segment List contains a list of 128-bit IPv6 addresses represe nting the SRv6 SIDs. Length of the Sub-TLV modulo 16 MUST be 0.</t> | <t>The SRv6 Segment List contains a list of 128-bit IPv6 addresses represe nting the SRv6 SIDs. The length of the Sub-TLV modulo 16 <bcp14>MUST</bcp14> be 0.</t> | |||
| <t>As an example, an SRv6 Segment List Sub-TLV could carry only the SRv6 B inding SID | <t>As an example, a Return Path SRv6 Segment List Sub-TLV could carry only the SRv6 Binding SID | |||
| <xref target="I-D.ietf-pce-binding-label-sid" format="default"/> of the Re turn SRv6 Policy. | <xref target="I-D.ietf-pce-binding-label-sid" format="default"/> of the Re turn SRv6 Policy. | |||
| The SRv6 Binding SID of the Return SRv6 Policy is local to the Session-Ref lector. | The SRv6 Binding SID of the Return SRv6 Policy is local to the Session-Ref lector. | |||
| The mechanism to signal the SRv6 Binding SID to the Session-Sender is outs ide the scope of this document.</t> | The mechanism to signal the SRv6 Binding SID to the Session-Sender is outs ide the scope of this document.</t> | |||
| <t>As another example, an SRv6 Segment List Sub-TLV could include the SRv6 Path Segment Identifier of the Return SRv6 Policy in the Segment List of the SR v6 Policy.</t> | <t>As another example, a Return Path SRv6 Segment List Sub-TLV could inclu de the SRv6 Path Segment Identifier of the Return SRv6 Policy in the Segment Lis t of the SRv6 Policy.</t> | |||
| </section> | </section> | |||
| </section> | </section> | |||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="sect-6" numbered="true" toc="default"> | <section anchor="sect-6" numbered="true" toc="default"> | |||
| <name>Interoperability with TWAMP Light</name> | <name>Interoperability with TWAMP Light</name> | |||
| <t>This document does not introduce any additional considerations for inte roperability | <t>This document does not introduce any additional considerations for inte roperability | |||
| with TWAMP Light than those described in Section 4.6 of <xref target="R FC8762" format="default"/>. </t> | with the Two-Way Active Measurement Protocol (TWAMP) Light than those d escribed in <xref target="RFC8762" sectionFormat="of" section="4.6"/>. </t> | |||
| <t>As described in <xref target="RFC8762" format="default"/>, there are tw o possible | <t>As described in <xref target="RFC8762" format="default"/>, there are tw o possible | |||
| combinations for such an interoperability use case:</t> | combinations for such an interoperability use case:</t> | |||
| <ul spacing="normal"> | ||||
| <li> STAMP Session-Sender with TWAMP Light Session-Reflector </li> | ||||
| <li> TWAMP Light Session-Sender with STAMP Session-Reflector </li> | ||||
| </ul> | ||||
| <t> - STAMP Session-Sender with TWAMP Light Session-Reflector </t> | <t>If any of the STAMP extensions defined in this document are used by STA | |||
| MP Session-Sender, | ||||
| <t> - TWAMP Light Session-Sender with STAMP Session-Reflector </t> | ||||
| <t>If any of STAMP extensions defined in this document are used by STAMP S | ||||
| ession-Sender, | ||||
| the TWAMP Light Session-Reflector will view them as the Packet Padding field.</t> | the TWAMP Light Session-Reflector will view them as the Packet Padding field.</t> | |||
| </section> | </section> | |||
| <section anchor="sect-7" numbered="true" toc="default"> | <section anchor="sect-7" numbered="true" toc="default"> | |||
| <name>Security Considerations</name> | <name>Security Considerations</name> | |||
| <t>The security considerations specified in <xref target="RFC8762" format ="default"/> | <t>The security considerations specified in <xref target="RFC8762" format ="default"/> | |||
| and <xref target="RFC8972" format="default"/> also apply to the extensions | and <xref target="RFC8972" format="default"/> also apply to the extensions | |||
| defined in this document. Specifically, the authenticated mode and the | defined in this document. Specifically, the authenticated mode and the | |||
| message integrity protection using HMAC, as defined in <xref target="RFC8762" | message integrity protection using Hashed Message Authentication Code (HMAC), | |||
| format="default"/> | as defined in <xref target="RFC8762" sectionFormat="of" section="4.4"/>, also a | |||
| Section 4.4, also apply to the procedure described in this document.</t> | pply to the procedures described in this document.</t> | |||
| <t>STAMP uses the well-known UDP port number that could become | <t>STAMP uses the well-known UDP port number that could become | |||
| a target of denial of service (DoS) or could | a target of denial of service (DoS) or could | |||
| be used to aid on-path attacks. | be used to aid on-path attacks. | |||
| Thus, the security considerations and measures to mitigate the | Thus, the security considerations and measures to mitigate the | |||
| risk of the attack documented in Section 6 of <xref target="RFC8545" format=" default"/> | risk of the attack documented in <xref target="RFC8545" sectionFormat="of" se ction="6"/> | |||
| equally apply to the STAMP extensions in this document.</t> | equally apply to the STAMP extensions in this document.</t> | |||
| <t>If desired, attacks can be mitigated by performing basic validation | <t>If desired, attacks can be mitigated by performing basic validation | |||
| checks of the timestamp fields (such as T2 is later than T1 in the Reference Topology in Section 2.3) | checks of the timestamp fields (such as T2 is later than T1 in the reference topology in <xref target="sect-2.3"/>) | |||
| in received reply test packets at the Session-Sender. The minimal state | in received reply test packets at the Session-Sender. The minimal state | |||
| associated with these protocols also limit the extent of measurement | associated with these protocols also limit the extent of measurement | |||
| disruption that can be caused by a corrupt or invalid test packet to a | disruption that can be caused by a corrupt or invalid test packet to a | |||
| single test cycle.</t> | single test cycle.</t> | |||
| <t> | <t> | |||
| The usage of STAMP extensions defined in this document is intended for deploy ment in a single network administrative domain. | The usage of STAMP extensions defined in this document is intended for deploy ment in a single network administrative domain. | |||
| As such, the Session-Sender address, Session-Reflector address, and Return Pa th are provisioned by the operator for the STAMP session. | As such, the Session-Sender address, Session-Reflector address, and Return Pa th are provisioned by the operator for the STAMP session. | |||
| It is assumed that the operator has | It is assumed that the operator has | |||
| verified the integrity of the Return Path and identity of the far-end Session -Reflector.</t> | verified the integrity of the Return Path and identity of the far-end Session -Reflector.</t> | |||
| <t> | <t> | |||
| The STAMP extensions defined in this document may be used for | The STAMP extensions defined in this document may be used for | |||
| potential address spoofing. For example, a Session-Sender | potential address spoofing. For example, a Session-Sender | |||
| may specify a Return Path IP Address that is different from the Session-Sende r address. | may specify a Return Path IP Address that is different from the Session-Sende r address. | |||
| The Session-Reflector MAY drop the Session-Sender test packet when it cannot | The Session-Reflector <bcp14>MAY</bcp14> drop the Session-Sender test packet when it cannot | |||
| determine whether the Return Path IP Address is local on the | determine whether the Return Path IP Address is local on the | |||
| Session-Sender. To help Session-Reflector to make that determination, the Ret urn Path | Session-Sender. To help the Session-Reflector to make that determination, the Return Path | |||
| IP Address may also be provisioned by the operator, for example, in an access control list. | IP Address may also be provisioned by the operator, for example, in an access control list. | |||
| </t> | </t> | |||
| </section> | </section> | |||
| <section anchor="sect-8" numbered="true" toc="default"> | <section anchor="sect-8" numbered="true" toc="default"> | |||
| <name>IANA Considerations</name> | <name>IANA Considerations</name> | |||
| <t> | <t> | |||
| IANA has created the "STAMP TLV Types" registry for <xref target="RFC8972" fo | IANA has allocated a value for the Destination Address TLV Type and a value f | |||
| rmat="default"/>. | or the | |||
| IANA has early allocated a value for the | Return Path TLV Type from the IETF Review TLV range in the "STAMP TLV Types" | |||
| Destination Address TLV Type and a value for the | registry <xref target="RFC8972" format="default"/> as follows. | |||
| Return Path TLV Type from the IETF Review TLV range of the same registry. </t | </t> | |||
| > | ||||
| <table anchor="iana-tlv-type-tbl" align="center"> | <table anchor="iana-tlv-type-tbl" align="center"> | |||
| <name>STAMP TLV Types</name> | <name>STAMP TLV Types</name> | |||
| <thead> | <thead> | |||
| <tr> | <tr> | |||
| <th align="left">Value</th> | <th align="left">Value</th> | |||
| <th align="center">Description</th> | <th align="left">Description</th> | |||
| <th align="left">Reference</th> | <th align="left">Reference</th> | |||
| </tr> | </tr> | |||
| </thead> | </thead> | |||
| <tbody> | <tbody> | |||
| <tr> | <tr> | |||
| <td align="left">9 (Early Allocation)</td> | <td align="left">9</td> | |||
| <td align="center">Destination Node IPv4 or IPv6 Address</td> | <td align="left">Destination Node IPv4 or IPv6 Address</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">10 (Early Allocation)</td> | <td align="left">10</td> | |||
| <td align="center">Return Path</td> | <td align="left">Return Path</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| </tbody> | </tbody> | |||
| </table> | </table> | |||
| <t> | <t> | |||
| IANA is requested to create a sub-registry for "Return Path Sub-TLV Type". | IANA has created the "Return Path Sub-TLV Types" registry. | |||
| All code points in the range 1 through 175 in this registry shall be | All code points in the range 1 through 175 in this registry shall be | |||
| allocated according to the "IETF Review" procedure as specified in | allocated according to the "IETF Review" procedure as specified in | |||
| <xref target="RFC8126" format="default"/>. Code points in the range 176 thro | <xref target="RFC8126" format="default"/>. Code points in the range 176 thro | |||
| ugh 239 in this | ugh 239 shall be allocated according to the "First Come First | |||
| registry shall be allocated according to the "First Come, First | ||||
| Served" procedure as specified in <xref target="RFC8126" format="default"/>. | Served" procedure as specified in <xref target="RFC8126" format="default"/>. | |||
| Remaining code points are allocated according to <xref target="iana-return-pa th-tbl" format="default"/>: | Remaining code points shall be allocated according to <xref target="iana-retu rn-path-tbl" format="default"/>: | |||
| </t> | </t> | |||
| <table anchor="iana-return-path-tbl" align="center"> | <table anchor="iana-return-path-tbl" align="center"> | |||
| <name>Return Path Sub-TLV Type Registry</name> | <name>Return Path Sub-TLV Types Registry</name> | |||
| <thead> | <thead> | |||
| <tr> | <tr> | |||
| <th align="left">Value</th> | <th align="left">Range</th> | |||
| <th align="center">Description</th> | <th align="left">Registration Procedures</th> | |||
| <th align="left">Reference</th> | ||||
| </tr> | </tr> | |||
| </thead> | </thead> | |||
| <tbody> | <tbody> | |||
| <tr> | <tr> | |||
| <td align="left">0 - 175</td> | <td align="left">1-175</td> | |||
| <td align="center">IETF Review</td> | <td align="left">IETF Review</td> | |||
| <td align="left">This document</td> | ||||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">176 - 239</td> | <td align="left">176-239</td> | |||
| <td align="center">First Come, First Served</td> | <td align="left">First Come First Served</td> | |||
| <td align="left">This document</td> | ||||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">240 - 251</td> | <td align="left">240-251</td> | |||
| <td align="center">Experimental Use</td> | <td align="left">Experimental Use</td> | |||
| <td align="left">This document</td> | ||||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">252 - 255</td> | <td align="left">252-254</td> | |||
| <td align="center">Private Use</td> | <td align="left">Private Use</td> | |||
| <td align="left">This document</td> | ||||
| </tr> | </tr> | |||
| </tbody> | </tbody> | |||
| </table> | </table> | |||
| <t> | <t> | |||
| IANA is requested to allocate the values for the following Sub-TLV Types from this registry.</t> | IANA has allocated values for the following Sub-TLV Types in the "Return Path Sub-TLV Types" registry.</t> | |||
| <table anchor="iana-return-path-reg-types" align="center"> | <table anchor="iana-return-path-reg-types" align="center"> | |||
| <name>Return Path Sub-TLV Types</name> | <name>Return Path Sub-TLV Types</name> | |||
| <thead> | <thead> | |||
| <tr> | <tr> | |||
| <th align="left">Type</th> | <th align="left">Value</th> | |||
| <th align="center">Description</th> | <th align="left">Description</th> | |||
| <th align="left">Reference</th> | <th align="left">Reference</th> | |||
| </tr> | </tr> | |||
| </thead> | </thead> | |||
| <tbody> | <tbody> | |||
| <tr> | <tr> | |||
| <td align="left">0</td> | <td align="left">0</td> | |||
| <td align="center">Reserved</td> | <td align="left">Reserved</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">1</td> | <td align="left">1</td> | |||
| <td align="center">Return Path Control Code</td> | <td align="left">Return Path Control Code</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">2</td> | <td align="left">2</td> | |||
| <td align="center">Return IPv4 or IPv6 Address</td> | <td align="left">Return IPv4 or IPv6 Address</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">3</td> | <td align="left">3</td> | |||
| <td align="center">SR-MPLS Label Stack of the Return Path</td> | <td align="left">SR-MPLS Label Stack of the Return Path</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">4</td> | <td align="left">4</td> | |||
| <td align="center">SRv6 Segment List of the Return Path</td> | <td align="left">SRv6 Segment List of the Return Path</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">255</td> | <td align="left">255</td> | |||
| <td align="center">Reserved</td> | <td align="left">Reserved</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| </tbody> | </tbody> | |||
| </table> | </table> | |||
| <t> | <t> | |||
| IANA is requested to create a sub-registry for "Return Path Control Code Flag s" for the Return Path Control Code Sub-TLV. | IANA has created the "Return Path Control Code Flags" registry for Return Pat h Control Code Sub-TLVs. | |||
| All code points in the bit position 31 (counting from bit 31 as the least sig nificant bit) through 12 in this registry shall be | All code points in the bit position 31 (counting from bit 31 as the least sig nificant bit) through 12 in this registry shall be | |||
| allocated according to the "IETF Review" procedure as specified in | allocated according to the "IETF Review" procedure as specified in | |||
| <xref target="RFC8126" format="default"/>. Code points in the bit position 1 | <xref target="RFC8126" format="default"/>. Code points in the bit position 1 | |||
| 1 through 8 in this | 1 through 8 shall be allocated according to the "First Come First | |||
| registry shall be allocated according to the "First Come, First | ||||
| Served" procedure as specified in <xref target="RFC8126" format="default"/>. | Served" procedure as specified in <xref target="RFC8126" format="default"/>. | |||
| Remaining code points are allocated according to <xref target="iana-return-pa th-cc-tbl" format="default"/>: | Remaining code points shall be allocated according to <xref target="iana-retu rn-path-cc-tbl" format="default"/>: | |||
| </t> | </t> | |||
| <table anchor="iana-return-path-cc-tbl" align="center"> | <table anchor="iana-return-path-cc-tbl" align="center"> | |||
| <name>Return Path Control Code Flags Registry</name> | <name>Return Path Control Code Flags Registry</name> | |||
| <thead> | <thead> | |||
| <tr> | <tr> | |||
| <th align="left">Bit</th> | <th align="left">Range</th> | |||
| <th align="center">Description</th> | <th align="left">Registration Procedures</th> | |||
| <th align="left">Reference</th> | ||||
| </tr> | </tr> | |||
| </thead> | </thead> | |||
| <tbody> | <tbody> | |||
| <tr> | <tr> | |||
| <td align="left">31 - 12</td> | <td align="left">31-12</td> | |||
| <td align="center">IETF Review</td> | <td align="left">IETF Review</td> | |||
| <td align="left">This document</td> | ||||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">11 - 8</td> | <td align="left">11-8</td> | |||
| <td align="center">First Come, First Served</td> | <td align="left">First Come First Served</td> | |||
| <td align="left">This document</td> | ||||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">7 - 4</td> | <td align="left">7-4</td> | |||
| <td align="center">Experimental Use</td> | <td align="left">Experimental Use</td> | |||
| <td align="left">This document</td> | ||||
| </tr> | </tr> | |||
| <tr> | <tr> | |||
| <td align="left">3 - 0</td> | <td align="left">3-0</td> | |||
| <td align="center">Private Use</td> | <td align="left">Private Use</td> | |||
| <td align="left">This document</td> | ||||
| </tr> | </tr> | |||
| </tbody> | </tbody> | |||
| </table> | </table> | |||
| <t> | <t> | |||
| IANA is requested to allocate the value for the following Return Path Control Code Flag from this registry.</t> | IANA has allocated a value in the "Return Path Control Code Flags" registry a s follows.</t> | |||
| <table anchor="iana-return-path-cc-reg-types" align="center"> | <table anchor="iana-return-path-cc-reg-types" align="center"> | |||
| <name>Return Path Control Code Flags</name> | <name>Return Path Control Code Flags</name> | |||
| <thead> | <thead> | |||
| <tr> | <tr> | |||
| <th align="left">Bit</th> | <th align="left">Value</th> | |||
| <th align="center">Description</th> | <th align="left">Description</th> | |||
| <th align="left">Reference</th> | <th align="left">Reference</th> | |||
| </tr> | </tr> | |||
| </thead> | </thead> | |||
| <tbody> | <tbody> | |||
| <tr> | <tr> | |||
| <td align="left">31</td> | <td align="left">31</td> | |||
| <td align="center">Reply Request</td> | <td align="left">Reply Request</td> | |||
| <td align="left">This document</td> | <td align="left">RFC 9503</td> | |||
| </tr> | </tr> | |||
| </tbody> | </tbody> | |||
| </table> | </table> | |||
| </section> | </section> | |||
| </middle> | </middle> | |||
| <back> | <back> | |||
| <displayreference target="I-D.ietf-pce-binding-label-sid" to="PCE-BINDING-LABEL- | ||||
| SID"/> | ||||
| <displayreference target="I-D.ietf-ippm-stamp-yang" to="IPPM-STAMP-YANG"/> | ||||
| <displayreference target="I-D.ietf-ippm-stamp-on-lag" to="STAMP-ON-LAG"/> | ||||
| <references> | <references> | |||
| <name>References</name> | <name>References</name> | |||
| <references> | <references> | |||
| <name>Normative References</name> | <name>Normative References</name> | |||
| <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2 | ||||
| 119" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.21 | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.21 | |||
| 19.xml"> | 19.xml"/> | |||
| <front> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.81 | |||
| <title>Key words for use in RFCs to Indicate Requirement Levels</tit | 74.xml"/> | |||
| le> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.87 | |||
| <author initials="S." surname="Bradner" fullname="S. Bradner"> | 62.xml"/> | |||
| <organization/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.89 | |||
| </author> | 72.xml"/> | |||
| <date year="1997" month="March"/> | ||||
| </front> | ||||
| <seriesInfo name="BCP" value="14"/> | ||||
| <seriesInfo name="RFC" value="2119"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC2119"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 174" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.81 | ||||
| 74.xml"> | ||||
| <front> | ||||
| <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</ti | ||||
| tle> | ||||
| <author initials="B." surname="Leiba" fullname="B. Leiba"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2017" month="May"/> | ||||
| </front> | ||||
| <seriesInfo name="BCP" value="14"/> | ||||
| <seriesInfo name="RFC" value="8174"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8174"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8762" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 762" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.87 | ||||
| 62.xml"> | ||||
| <front> | ||||
| <title>Simple Two-Way Active Measurement Protocol</title> | ||||
| <author initials="G." surname="Mirsky" fullname="G. Mirsky"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="G." surname="Jun" fullname="G. Jun"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="H." surname="Nydell" fullname="H. Nydell"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="R." surname="Foote" fullname="R. Foote"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2020" month="March"/> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="8762"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8762"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8972" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 972" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.89 | ||||
| 72.xml"> | ||||
| <front> | ||||
| <title>Simple Two-Way Active Measurement Protocol Optional Extension | ||||
| s</title> | ||||
| <author initials="G." surname="Mirsky" fullname="G. Mirsky"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="X." surname="Min" fullname="X. Min"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="H." surname="Nydell" fullname="H. Nydell"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="R." surname="Foote" fullname="R. Foote"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="A." surname="Masputra" fullname="A. Masputra"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="E." surname="Ruffini" fullname="E. Ruffini"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2021" month="January"/> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="8972"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8972"/> | ||||
| </reference> | ||||
| </references> | </references> | |||
| <references> | <references> | |||
| <name>Informative References</name> | <name>Informative References</name> | |||
| <reference anchor="RFC8402" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 402" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.84 | ||||
| 02.xml"> | ||||
| <front> | ||||
| <title>Segment Routing Architecture</title> | ||||
| <author initials="C." surname="Filsfils" fullname="C. Filsfils" role | ||||
| ="editor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="S." surname="Previdi" fullname="S. Previdi" role=" | ||||
| editor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="L." surname="Ginsberg" fullname="L. Ginsberg"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="B." surname="Decraene" fullname="B. Decraene"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="S." surname="Litkowski" fullname="S. Litkowski"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="R." surname="Shakir" fullname="R. Shakir"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2018" month="July"/> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="8402"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8402"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8126" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 126" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.81 | ||||
| 26.xml"> | ||||
| <front> | ||||
| <title>Guidelines for Writing an IANA Considerations Section in RFCs | ||||
| </title> | ||||
| <author initials="M." surname="Cotton" fullname="M. Cotton"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="B." surname="Leiba" fullname="B. Leiba"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="T." surname="Narten" fullname="T. Narten"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2017" month="June"/> | ||||
| </front> | ||||
| <seriesInfo name="BCP" value="26"/> | ||||
| <seriesInfo name="RFC" value="8126"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8126"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8545" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 545" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.85 | ||||
| 45.xml"> | ||||
| <front> | ||||
| <title>Well-Known Port Assignments for the One-Way Active Measuremen | ||||
| t Protocol (OWAMP) and the Two-Way Active Measurement Protocol (TWAMP)</title> | ||||
| <author initials="A." surname="Morton" fullname="A. Morton" role="ed | ||||
| itor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="G." surname="Mirsky" fullname="G. Mirsky" role="ed | ||||
| itor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2019" month="March"/> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="8545"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8545"/> | ||||
| </reference> | ||||
| <reference anchor="RFC9256" target="https://www.rfc-editor.org/info/rfc9 | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.84 | |||
| 256" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.92 | 02.xml"/> | |||
| 56.xml"> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.81 | |||
| <front> | 26.xml"/> | |||
| <title>Segment Routing Policy Architecture</title> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.85 | |||
| <author fullname="Clarence Filsfils"> | 45.xml"/> | |||
| <organization>Cisco Systems</organization> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.92 | |||
| </author> | 56.xml"/> | |||
| <author fullname="Ketan Talaulikar"> | ||||
| <organization>Cisco Systems</organization> | ||||
| </author> | ||||
| <author fullname="Daniel Voyer"> | ||||
| <organization>Bell Canada</organization> | ||||
| </author> | ||||
| <author fullname="Alex Bogdanov"> | ||||
| <organization>British Telecom</organization> | ||||
| </author> | ||||
| <author fullname="Paul Mattes"> | ||||
| <organization>Microsoft</organization> | ||||
| </author> | ||||
| <date month="July" year="2022"/> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="9256"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC9256"/> | ||||
| </reference> | ||||
| <reference anchor="I-D.ietf-pce-binding-label-sid" xml:base="https://xml | ||||
| 2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-pce-binding-label-sid. | ||||
| xml" target="https://www.ietf.org/archive/id/draft-ietf-pce-binding-label-sid-16 | ||||
| .txt"> | ||||
| <front> | ||||
| <title>Carrying Binding Label/Segment Identifier in PCE-based Networ | ||||
| ks.</title> | ||||
| <author fullname="Siva Sivabalan"> | ||||
| <organization>Ciena Corporation</organization> | ||||
| </author> | ||||
| <author fullname="Clarence Filsfils"> | ||||
| <organization>Cisco Systems, Inc.</organization> | ||||
| </author> | ||||
| <author fullname="Jeff Tantsura"> | ||||
| <organization>Microsoft Corporation</organization> | ||||
| </author> | ||||
| <author fullname="Stefano Previdi"> | ||||
| <organization>Huawei Technologies</organization> | ||||
| </author> | ||||
| <author fullname="Cheng Li (editor)"> | ||||
| <organization>Huawei Technologies</organization> | ||||
| </author> | ||||
| <date month="March" day="27" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-pce-binding-label- | ||||
| sid-16"/> | ||||
| </reference> | ||||
| <reference anchor="I-D.ietf-ippm-stamp-yang" xml:base="https://xml2rfc.t | <!-- [I-D.ietf-pce-binding-label-sid] in MISSREF state as of 10/30/23; entered t | |||
| ools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-ippm-stamp-yang.xml" target= | he long way to capture the editor role --> | |||
| "https://www.ietf.org/archive/id/draft-ietf-ippm-stamp-yang-11.txt"> | <reference anchor="I-D.ietf-pce-binding-label-sid" target="https://datatracker.i | |||
| <front> | etf.org/doc/html/draft-ietf-pce-binding-label-sid-16"> | |||
| <title>Simple Two-way Active Measurement Protocol (STAMP) Data Model | <front> | |||
| </title> | <title>Carrying Binding Label/Segment Identifier (SID) in PCE-based Networks | |||
| <author fullname="Greg Mirsky"> | .</title> | |||
| <organization>ZTE Corp.</organization> | <author fullname="Siva Sivabalan" initials="S." surname="Sivabalan"> | |||
| </author> | <organization>Ciena Corporation</organization> | |||
| <author fullname="Xiao Min"> | </author> | |||
| <organization>ZTE Corp.</organization> | <author fullname="Clarence Filsfils" initials="C." surname="Filsfils"> | |||
| </author> | <organization>Cisco Systems, Inc.</organization> | |||
| <author fullname="Wei S Luo"> | </author> | |||
| <organization>Ericsson</organization> | <author fullname="Jeff Tantsura" initials="J." surname="Tantsura"> | |||
| </author> | <organization>Nvidia</organization> | |||
| <date month="March" day="13" year="2023"/> | </author> | |||
| </front> | <author fullname="Stefano Previdi" initials="S." surname="Previdi"> | |||
| <seriesInfo name="Internet-Draft" value="draft-ietf-ippm-stamp-yang-11 | <organization>Huawei Technologies</organization> | |||
| "/> | </author> | |||
| </reference> | <author fullname="Cheng Li" initials="C." surname="Li" role="editor"> | |||
| <organization>Huawei Technologies</organization> | ||||
| </author> | ||||
| <date day="27" month="March" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-pce-binding-label-sid-16"/ | ||||
| > | ||||
| </reference> | ||||
| <reference anchor="I-D.ietf-ippm-stamp-on-lag" xml:base="https://xml2rfc. | <!-- [I-D.ietf-ippm-stamp-yang] Expired as of 10/30/23 --> | |||
| tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-ippm-stamp-on-lag.xml" targ | <xi:include href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.ietf-ip | |||
| et="https://www.ietf.org/archive/id/draft-ietf-ippm-stamp-on-lag-03.txt"> | pm-stamp-yang.xml"/> | |||
| <front> | ||||
| <title>Simple Two-Way Active Measurement Protocol Extensions for Perform | ||||
| ance Measurement on LAG</title> | ||||
| <author fullname="Zhenqiang Li"> | ||||
| <organization> China Mobile</organization> | ||||
| </author> | ||||
| <author fullname="Tianran Zhou"> | ||||
| <organization> Huawei</organization> | ||||
| </author> | ||||
| <author fullname="Jun Guo"> | ||||
| <organization> ZTE Corp.</organization> | ||||
| </author> | ||||
| <author fullname="Greg Mirsky"> | ||||
| <organization> Ericsson</organization> | ||||
| </author> | ||||
| <author fullname="Rakesh Gandhi"> | ||||
| <organization> Cisco</organization> | ||||
| </author> | ||||
| <date month="July" day="02" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-ippm-stamp-on-lag- | ||||
| 03"/> | ||||
| </reference> | ||||
| <!-- [I-D.ietf-ippm-stamp-on-lag] In last call as of 10/30/23. Added the long | ||||
| way to get correct author name--> | ||||
| <reference anchor="I-D.ietf-ippm-stamp-on-lag" target="https://datatracker.ietf. | ||||
| org/doc/html/draft-ietf-ippm-stamp-on-lag-05"> | ||||
| <front> | ||||
| <title>Simple Two-Way Active Measurement Protocol Extensions for Performance | ||||
| Measurement on LAG</title> | ||||
| <author fullname="Zhenqiang Li" initials="Z." surname="Li"> | ||||
| <organization>China Mobile</organization> | ||||
| </author> | ||||
| <author fullname="Tianran Zhou" initials="T." surname="Zhou"> | ||||
| <organization>Huawei</organization> | ||||
| </author> | ||||
| <author fullname="Guo Jun" initials="J." surname="Guo"> | ||||
| <organization>ZTE Corp.</organization> | ||||
| </author> | ||||
| <author fullname="Greg Mirsky" initials="G." surname="Mirsky"> | ||||
| <organization>Ericsson</organization> | ||||
| </author> | ||||
| <author fullname="Rakesh Gandhi" initials="R." surname="Gandhi"> | ||||
| <organization>Cisco</organization> | ||||
| </author> | ||||
| <date day="17" month="October" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-ippm-stamp-on-lag-05"/> | ||||
| </reference> | ||||
| <reference anchor="IEEE802.1AX"> | <reference anchor="IEEE802.1AX"> | |||
| <front> | <front> | |||
| <title>IEEE Standard for Local and metropolitan area networks - Link Aggregation</title> | <title>IEEE Standard for Local and metropolitan area networks -- Lin k Aggregation</title> | |||
| <author> | <author> | |||
| <organization> | <organization>IEEE | |||
| IEEE Std. 802.1AX | ||||
| </organization> | </organization> | |||
| </author> | </author> | |||
| <date month="November" year="2008"/> | <date month="December" year="2014"/> | |||
| </front> | </front> | |||
| <seriesInfo name="IEEE" value="Std 802.1AX-2014"/> | ||||
| <seriesInfo name="DOI" value="10.1109/IEEESTD.2014.7055197"/> | ||||
| </reference> | </reference> | |||
| </references> | </references> | |||
| </references> | </references> | |||
| <section anchor="app-A" toc="default"> | <section anchor="app-A" toc="default"> | |||
| <name>Destination Node Address TLV Use-case Example</name> | <name>Destination Node Address TLV Use-Case Example</name> | |||
| <t>STAMP test packets can be | ||||
| <t>The STAMP test packets can be | encapsulated with 1) an SR-MPLS Label Stack and IPv4 header containing | |||
| encapsulated with an SR-MPLS Segment List and IPv4 header containing | an IPv4 Destination Address from the 127/8 range or 2) an outer IPv6 header | |||
| destination IPv4 address from 127/8 range or STAMP test packets encapsulated | and a Segment Routing | |||
| with outer IPv6 header and Segment Routing | Header (SRH) with an inner IPv6 header containing an IPv6 Destination Addres | |||
| Header (SRH) with inner IPv6 header containing IPv6 destination IPv6 address | s from the ::1/128 range.</t> | |||
| ::1/128.</t> | ||||
| <t>In an ECMP environment, the hashing function in forwarding may decide the outgoing | <t>In an ECMP environment, the hashing function in forwarding may decide the outgoing | |||
| path using the source address, destination address, UDP ports, IPv6 flow-lab | path using the Source Address, Destination Address, UDP ports, IPv6 flow-lab | |||
| el, etc. from the packet. | el, etc. from the packet. | |||
| Hence, for IPv4, for example, different values of IPv4 destination | Hence, for IPv4, for example, different values of an IPv4 Destination | |||
| address from 127/8 range may be used in the IPv4 header of the STAMP test pa | Address from the 127/8 range may be used in the IPv4 header of the STAMP tes | |||
| ckets to measure different ECMP paths. | t packets to measure different ECMP paths. | |||
| For IPv6, for example, different values of flow-label may be used in the IPv 6 header of the STAMP test packets to measure different ECMP paths.</t> | For IPv6, for example, different values of flow-label may be used in the IPv 6 header of the STAMP test packets to measure different ECMP paths.</t> | |||
| <t> | <t> | |||
| In those cases, the STAMP test packets may reach a node that is not the Sess ion-Reflector | In those cases, the STAMP test packets may reach a node that is not the Sess ion-Reflector | |||
| for this STAMP session in an error condition, and this un-intended node may | for this STAMP session in an error condition, and this unintended node may t | |||
| transmit reply | ransmit a reply | |||
| test packet that can result in reporting of invalid measurement metrics. The | test packet that can result in the reporting of invalid measurement metrics. | |||
| intended Session-Reflector address | The intended Session-Reflector address | |||
| can be carried in the Destination Node Address TLV to help detect this error . | can be carried in the Destination Node Address TLV to help detect this error . | |||
| </t> | </t> | |||
| </section> | </section> | |||
| <section numbered="false" anchor="acknowledgments" toc="default"> | <section numbered="false" anchor="acknowledgments" toc="default"> | |||
| <name>Acknowledgments</name> | <name>Acknowledgments</name> | |||
| <t> | <t> | |||
| The authors would like to thank Thierry Couture for the discussions | The authors would like to thank Thierry Couture for the discussions | |||
| on the use-cases for Performance Measurement in Segment Routing. The authors | on the use cases for Performance Measurement in Segment Routing. The authors | |||
| would also like to thank Greg Mirsky, Mike Koldychev, Gyan Mishra, Tianran Zh | would also like to thank <contact fullname="Greg Mirsky"/>, <contact fullname | |||
| ou, | ="Mike Koldychev"/>, <contact fullname="Gyan Mishra"/>, <contact fullname="Tianr | |||
| Al Mortons, Reshad Rahman, Zhenqiang Li, Frank Brockners, Henrik Nydell, | an Zhou"/>, | |||
| and Cheng Li for providing comments and suggestions. Thank you Joel Halpern f | <contact fullname="Al Morton"/>, <contact fullname="Reshad Rahman"/>, <contac | |||
| or | t fullname="Zhenqiang Li"/>, <contact fullname="Frank Brockners"/>, <contact ful | |||
| Gen-ART review, Martin Duke for AD review, and Kathleen Moriarty for Security | lname="Henrik Nydell"/>, | |||
| review. | and <contact fullname="Cheng Li"/> for providing comments and suggestions. Th | |||
| The authors would like to thank Robert Wilton, Eric Vyncke, Paul Wouters, Joh | ank you to <contact fullname="Joel Halpern"/> for the | |||
| n Scudder, Roman Danyliw, and Jim Guichard for IESG review.</t> | Gen-ART review, <contact fullname="Martin Duke"/> for the AD review, and <con | |||
| tact fullname="Kathleen Moriarty"/> for the Security review. | ||||
| The authors would also like to thank <contact fullname="Robert Wilton"/>, <co | ||||
| ntact fullname="Éric Vyncke"/>, <contact fullname="Paul Wouters"/>, <contact ful | ||||
| lname="John Scudder"/>, <contact fullname="Roman Danyliw"/>, <contact fullname=" | ||||
| Lars Eggert"/>, <contact fullname="Erik Kline"/>, <contact fullname="Warren Kuma | ||||
| ri"/>, and <contact fullname="Jim Guichard"/> for the IESG review.</t> | ||||
| </section> | </section> | |||
| <section numbered="false" title="Contributors"> | <section numbered="false" anchor="contributors" toc="default"> | |||
| <t>The following people have substantially contributed to this document:</t> | <name>Contributors</name> | |||
| <t>The following person has contributed substantially to this document:</t> | ||||
| <artwork><![CDATA[Daniel Voyer | ||||
| Bell Canada | ||||
| Email: daniel.voyer@bell.ca | ||||
| ]]></artwork> | <contact fullname="Daniel Voyer"> | |||
| </section> | <organization showOnFrontPage="true">Bell Canada</organization> | |||
| <address> | ||||
| <email> daniel.voyer@bell.ca</email> | ||||
| </address> | ||||
| </contact> | ||||
| </section> | ||||
| </back> | </back> | |||
| </rfc> | </rfc> | |||
| End of changes. 133 change blocks. | ||||
| 622 lines changed or deleted | 457 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||