| rfc8762xml2.original.xml | rfc8762.xml | |||
|---|---|---|---|---|
| <?xml version="1.0" encoding="US-ASCII"?> | <?xml version="1.0" encoding="utf-8"?> | |||
| <!DOCTYPE rfc SYSTEM "rfc2629.dtd"> | <!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | |||
| <?rfc toc="yes"?> | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" number="8762" consensus="true" c | |||
| <?rfc tocompact="yes"?> | ategory="std" docName="draft-ietf-ippm-stamp-10" ipr="trust200902" obsoletes="" | |||
| <?rfc tocdepth="3"?> | updates="" submissionType="IETF" xml:lang="en" tocInclude="true" tocDepth="3" sy | |||
| <?rfc tocindent="yes"?> | mRefs="true" sortRefs="true" version="3"> | |||
| <?rfc symrefs="yes"?> | <!-- xml2rfc v2v3 conversion 2.39.0 --> | |||
| <?rfc sortrefs="yes"?> | ||||
| <?rfc comments="yes"?> | ||||
| <?rfc inline="yes"?> | ||||
| <?rfc compact="yes"?> | ||||
| <?rfc subcompact="no"?> | ||||
| <rfc category="std" docName="draft-ietf-ippm-stamp-10" ipr="trust200902"> | ||||
| <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> | ||||
| <front> | <front> | |||
| <title abbrev="STAMP">Simple Two-Way Active Measurement Protocol</title> | ||||
| <title abbrev="STAMP">Simple Two-way Active Measurement Protocol</title> | <seriesInfo name="RFC" value="8762"/> | |||
| <author fullname="Greg Mirsky" initials="G." surname="Mirsky"> | <author fullname="Greg Mirsky" initials="G." surname="Mirsky"> | |||
| <organization>ZTE Corp.</organization> | <organization>ZTE Corp.</organization> | |||
| <address> | <address> | |||
| <postal> | <postal> | |||
| <street/> | <street/> | |||
| <city/> | <city/> | |||
| <code/> | <code/> | |||
| <country/> | <country/> | |||
| </postal> | </postal> | |||
| <email>gregimirsky@gmail.com</email> | <email>gregimirsky@gmail.com</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <author fullname="Guo Jun" initials="G." surname="Jun"> | ||||
| <author fullname="Guo Jun" initials="G." surname="Jun"> | <organization>ZTE Corp.</organization> | |||
| <organization>ZTE Corporation</organization> | ||||
| <address> | <address> | |||
| <postal> | <postal> | |||
| <street>68# Zijinghua Road</street> | <street>68# Zijinghua Road</street> | |||
| <city>Nanjing</city> | <city>Nanjing</city> | |||
| <region>Jiangsu</region> | <region>Jiangsu</region> | |||
| <code>210012</code> | <code>210012</code> | |||
| <country>P.R.China</country> | <country>China</country> | |||
| </postal> | </postal> | |||
| <phone>+86 18105183663</phone> | <phone>+86 18105183663</phone> | |||
| <email>guo.jun2@zte.com.cn</email> | <email>guo.jun2@zte.com.cn</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <author fullname="Henrik Nydell" initials="H." surname="Nydell"> | ||||
| <author fullname="Henrik Nydell" initials="H." surname="Nydell"> | ||||
| <organization>Accedian Networks</organization> | <organization>Accedian Networks</organization> | |||
| <address> | <address> | |||
| <postal> | <postal> | |||
| <street/> | <street/> | |||
| <city/> | <city/> | |||
| <code/> | <code/> | |||
| <country/> | <country/> | |||
| </postal> | </postal> | |||
| <email>hnydell@accedian.com</email> | <email>hnydell@accedian.com</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <author initials="R." surname="Foote" fullname="Richard Foote"> | ||||
| <author initials="R." surname="Foote" fullname="Richard 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 month="March" year="2020"/> | |||
| <date year="2019"/> | ||||
| <area>Transport</area> | <area>Transport</area> | |||
| <workgroup>Network Working Group</workgroup> | <workgroup>Network Working Group</workgroup> | |||
| <keyword>IPPM</keyword> | ||||
| <keyword>Internet-Draft</keyword> | <keyword>Performance Measurement </keyword> | |||
| <abstract> | ||||
| <keyword>IPPM</keyword> | <t> | |||
| This document describes the Simple Two-way Active Measurement | ||||
| <keyword>Performance Measurement </keyword> | Protocol (STAMP), which enables the measurement of both one-way and round | |||
| -trip | ||||
| <abstract> | performance metrics, like delay, delay variation, and packet loss. | |||
| <t> | </t> | |||
| This document describes a Simple Two-way Active Measurement Protocol whic | </abstract> | |||
| h enables | </front> | |||
| the measurement of both one-way and round-trip performance metrics like d | <middle> | |||
| elay, delay variation, and packet loss. | <section anchor="intro" numbered="true" toc="default"> | |||
| </t> | <name>Introduction</name> | |||
| </abstract> | <t> | |||
| </front> | Development and deployment of the Two-Way Active Measurement Protocol (TWAMP) | |||
| <xref target="RFC5357" format="default"/> and its extensions (e.g., | ||||
| <middle> | <xref target="RFC6038" format="default"/>, which defines Symmetrical Size for TW | |||
| <section anchor="intro" title="Introduction"> | AMP) | |||
| <t> | provided invaluable experience. Several independent implementations of both | |||
| Development and deployment of the Two-Way Active Measurement Protocol (TWAMP) <x | TWAMP and TWAMP Light exist, have been deployed, and provide | |||
| ref target="RFC5357"/> and its extensions, e.g., | ||||
| <xref target="RFC6038"/> that defined Symmetrical Size for TWAMP, | ||||
| provided invaluable experience. Several independent implementations of both TWAM | ||||
| P and TWAMP Light exist, have been deployed, and provide | ||||
| important operational performance measurements. | important operational performance measurements. | |||
| </t> | </t> | |||
| <t> | <t> | |||
| At the same time, there has been noticeable interest in using a more straightfor ward | At the same time, there has been noticeable interest in using a more straightfor ward | |||
| mechanism for active performance monitoring that can provide deterministic behav | mechanism for active performance monitoring that can provide deterministic | |||
| ior and inherent separation of control | behavior and inherent separation of control | |||
| (vendor-specific configuration or orchestration) and test functions. Recent | (vendor-specific configuration or orchestration) and test functions. | |||
| work on IP Edge to Customer Equipment using TWAMP Light from Broadband Forum <xr | Recent work on "Performance Measurement from IP Edge to Customer Equipment using | |||
| ef target="BBF.TR-390"/> | TWAMP Light" | |||
| demonstrated that interoperability among implementations of TWAMP Light is diffi | <xref target="BBF.TR-390" format="default"/> by the | |||
| cult because the composition | Broadband Forum demonstrates that interoperability among | |||
| and operation of TWAMP Light were not sufficiently specified in <xref target="RF | implementations of TWAMP Light is difficult because the composition | |||
| C5357"/>. | and operation of TWAMP Light were not sufficiently specified in <xref target="RF | |||
| According to <xref target="RFC8545"/>, TWAMP Light includes a sub-set of TWAMP-T | C5357" format="default"/>. | |||
| est | According to <xref target="RFC8545" format="default"/>, TWAMP Light includes a s | |||
| ubset of TWAMP-Test | ||||
| functions. Thus, to have a comprehensive tool to measure packet loss and delay r equires | functions. Thus, to have a comprehensive tool to measure packet loss and delay r equires | |||
| support by other applications that provide, for example, control and security. | support by other applications that provide, for example, control and security. | |||
| </t> | </t> | |||
| <t> | <t> | |||
| This document defines an active performance measurement test protocol, Simple Tw | This document defines an active performance measurement test protocol, Simple | |||
| o-way Active Measurement Protocol (STAMP), | Two-way Active Measurement Protocol (STAMP), | |||
| that enables measurement of both one-way and round-trip performance metrics like | that enables measurement of both one-way and round-trip performance metrics, | |||
| delay, delay variation, and packet loss. Some | like delay, delay variation, and packet loss. Support of some | |||
| TWAMP extensions, e.g., <xref target="RFC7750"/> are supported by the extensions | optional TWAMP extensions, e.g., <xref target="RFC7750" format="default"/>, is d | |||
| to STAMP base specification in <xref target="I-D.ietf-ippm-stamp-option-tlv"/>. | iscussed in <xref target="I-D.ietf-ippm-stamp-option-tlv" format="default"/>. | |||
| </t> | </t> | |||
| </section> | </section> | |||
| <section numbered="true" toc="default"> | ||||
| <section title="Conventions used in this document"> | <name>Conventions Used in This Document</name> | |||
| <section title="Terminology"> | <section numbered="true" toc="default"> | |||
| <name>Terminology</name> | ||||
| <t>STAMP - Simple Two-way Active Measurement Protocol</t> | <dl newline="false" spacing="normal" indent="12"> | |||
| <t>NTP - Network Time Protocol</t> | <dt>STAMP:</dt> | |||
| <t>PTP - Precision Time Protocol</t> | <dd>Simple Two-way Active Measurement Protocol</dd> | |||
| <t>HMAC Hashed Message Authentication Code</t> | <dt>NTP:</dt> | |||
| <t>OWAMP One-Way Active Measurement Protocol</t> | <dd>Network Time Protocol</dd> | |||
| <t>TWAMP Two-Way Active Measurement Protocol</t> | <dt>PTP:</dt> | |||
| <t>MBZ Must be Zero</t> | <dd>Precision Time Protocol</dd> | |||
| </section> | <dt>HMAC:</dt> | |||
| <dd>Hashed Message Authentication Code</dd> | ||||
| <section title="Requirements Language"> | <dt>OWAMP:</dt> | |||
| <t> | <dd>One-Way Active Measurement Protocol</dd> | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL | <dt>TWAMP:</dt> | |||
| NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", | <dd>Two-Way Active Measurement Protocol</dd> | |||
| "MAY", and "OPTIONAL" in this document are to be interpreted as | <dt>MBZ:</dt> | |||
| described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> | <dd>Must be Zero</dd> | |||
| when, and only when, they appear in all capitals, as shown here. | <dt>PDU:</dt> | |||
| </t> | <dd>Protocol Data Unit</dd> | |||
| </section> | </dl> | |||
| </section> | </section> | |||
| <section numbered="true" toc="default"> | ||||
| <section anchor="simple-pm-section" title="Operation and Management of Performan | <name>Requirements Language</name> | |||
| ce Measurement Based on STAMP"> | <t> | |||
| <t> | The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", | |||
| <xref target="STAMP-ref-model"/> presents the Simple Two-way Active Measurement | "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL | |||
| Protocol (STAMP) | NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", | |||
| Session-Sender, and Session-Reflector with a measurement session. In this docume | "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | |||
| nt, a measurement session | "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to | |||
| also referred to as STAMP session, is the bi-directional | 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="simple-pm-section" numbered="true" toc="default"> | ||||
| <name>Operation and Management of Performance Measurement Based on STAMP</ | ||||
| name> | ||||
| <t> | ||||
| <xref target="STAMP-ref-model" format="default"/> presents the Simple Two-way | ||||
| Active Measurement Protocol (STAMP) | ||||
| Session-Sender and Session-Reflector with a measurement session. In this | ||||
| document, a measurement session, | ||||
| also referred to as a "STAMP session", is the bidirectional | ||||
| packet flow between one specific Session-Sender and one particular | packet flow between one specific Session-Sender and one particular | |||
| Session-Reflector for a time duration. | Session-Reflector for a time duration. | |||
| The configuration and management of the STAMP Session-Sender, Session-Reflector, | The configuration and management of the STAMP Session-Sender, | |||
| and | Session-Reflector, and sessions are outside the scope of this | |||
| management of the STAMP sessions are outside the scope of this document and can | document and can be achieved through various means. | |||
| be achieved through various means. | A few examples are Command Line Interface, telecommunication | |||
| A few examples are:  Command Line Interface, telecommunication | services' Operational Support System (OSS) / Business Support System (BSS), | |||
| services' OSS/BSS systems, SNMP, and Netconf/YANG-based SDN controllers. | SNMP, and NETCONF/YANG-based Software-Defined Networking (SDN) controllers. | |||
| </t> | </t> | |||
| <figure anchor="STAMP-ref-model"> | ||||
| <figure align="left" anchor="STAMP-ref-model" title="STAMP Reference Mod | <name>STAMP Reference Model</name> | |||
| el"> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| <artwork> | ||||
| <![CDATA[ | ||||
| o----------------------------------------------------------o | o----------------------------------------------------------o | |||
| | Configuration and | | | Configuration and | | |||
| | Management | | | Management | | |||
| o----------------------------------------------------------o | o----------------------------------------------------------o | |||
| || || | || || | |||
| || || | || || | |||
| || || | || || | |||
| +----------------------+ +-------------------------+ | +----------------------+ +-------------------------+ | |||
| | STAMP Session-Sender | <--- STAMP---> | STAMP Session-Reflector | | | STAMP Session-Sender | <--- STAMP---> | STAMP Session-Reflector | | |||
| +----------------------+ +-------------------------+ | +----------------------+ +-------------------------+ | |||
| ]]> | ]]></artwork> | |||
| </artwork> | </figure> | |||
| </figure> | </section> | |||
| <section anchor="stamp-section" numbered="true" toc="default"> | ||||
| </section> | <name>Theory of Operation</name> | |||
| <t> | ||||
| <section anchor="stamp-section" title="Theory of Operation"> | The STAMP Session-Sender transmits test packets over UDP transport | |||
| <t> | toward the STAMP Session-Reflector. The STAMP Session-Reflector | |||
| STAMP Session-Sender transmits test packets over UDP transport | receives the Session-Sender's packet and acts according to the configuration. | |||
| toward STAMP Session-Reflector. STAMP Session-Reflector | ||||
| receives Session-Sender's packet and acts according to the configuration. | ||||
| Two modes of STAMP Session-Reflector characterize the expected beha | Two modes of the STAMP Session-Reflector characterize the expected | |||
| vior and, consequently, performance metrics that can be measured: | behavior and, consequently, performance metrics that can be | |||
| <list style="symbols"> | measured: | |||
| <t> | </t> | |||
| Stateless - STAMP Session-Reflector does not maintain test | <dl newline="true" spacing="normal"> | |||
| <dt>Stateless:</dt> | ||||
| <dd>The STAMP Session-Reflector does not maintain test | ||||
| state and will use the value in the Sequence Number field in | state and will use the value in the Sequence Number field in | |||
| the received packet as the value for the Sequence Number field | the received packet as the value for the Sequence Number field | |||
| in the reflected packet. | in the reflected packet. | |||
| As a result, values in Sequence Number and Session-Sender Sequence | As a result, values in the Sequence Number and Session-Sender | |||
| Number fields | Sequence Number fields | |||
| are the same, and only round-trip packet loss can be calculated whi | are the same, and only round-trip packet loss can be calculated | |||
| le the reflector | while the reflector is operating in stateless mode. | |||
| is operating in stateless mode. | </dd> | |||
| </t> | <dt>Stateful:</dt> | |||
| <t> | <dd> STAMP Session-Reflector maintains the test state, thus | |||
| Stateful - STAMP Session-Reflector maintains test state thus enabl | allowing the Session-Sender to determine directionality of loss using | |||
| ing the ability | the combination of gaps recognized in the Session Sender Sequence | |||
| to determine forward loss, gaps recognized in the received sequence | Number and Sequence Number fields, respectively. | |||
| number. | As a result, both near-end (forward) and far-end (backward) packet loss can be | |||
| As a result, both near-end (forward) and far-end (backward) packet loss can be c | computed. | |||
| omputed. That implies that the STAMP Session-Reflector MUST | That implies that the STAMP Session-Reflector <bcp14>MUST</bcp14> maintain | |||
| keep a state for each configured STAMP-test session, uniquely ident | a state | |||
| ifying STAMP-test packets to one such session instance, and enabling | for each configured STAMP-Test session, thereby uniquely associating | |||
| adding a sequence number in the test reply that is individually inc | STAMP-Test packets with one such session instance and, thus, enabling | |||
| remented on a per-session basis. | the addition of a sequence number in the test reply that is individually | |||
| </t> | incremented by one on a per-session basis. | |||
| </list> | ||||
| </t> | ||||
| <t> | </dd> | |||
| </dl> | ||||
| <t> | ||||
| STAMP supports two authentication modes: | STAMP supports two authentication modes: | |||
| unauthenticated and authenticated. Unauthenticated STAMP test packets, | unauthenticated and authenticated. Unauthenticated STAMP-Test packets, | |||
| defined in <xref target="session-sender-packet-unauthenticated-section"/> and | defined in Sections <xref target="session-sender-packet-unauthenticated-secti | |||
| <xref target="session-reflector-packet-unauthenticated-section"/>, ensure int | on" format="counter"/> and | |||
| erworking | <xref target="session-reflector-packet-unauthenticated-section" format="count | |||
| between STAMP and TWAMP Light as described in <xref target="interoperation-tw | er"/>, ensure interworking | |||
| amp"/> | between STAMP and TWAMP Light, as described in <xref target="interoperation-t | |||
| wamp" format="default"/> regarding | ||||
| packet formats. | packet formats. | |||
| </t> | </t> | |||
| <t> | <t> | |||
| By default, STAMP uses symmetrical packets, i.e., size of the packet transmitted | By default, STAMP uses symmetrical packets, i.e., the size of the packet | |||
| by Session-Reflector equals the size of | transmitted by the Session-Reflector equals the size of | |||
| the packet received by the Session-Reflector. | the packet received by the Session-Reflector. | |||
| </t> | </t> | |||
| <section anchor="stamp-port-sec" numbered="true" toc="default"> | ||||
| <section anchor="stamp-port-sec" title="UDP Port Numbers in STAMP Testing"> | <name>UDP Port Numbers in STAMP Testing</name> | |||
| <t> | <t> | |||
| A STAMP Session-Sender MUST use | A STAMP Session-Sender <bcp14>MUST</bcp14> use | |||
| UDP port 862 (TWAMP-Test Receiver Port) as the default destination UDP port numb | UDP port 862 (TWAMP-Test Receiver Port) as the default destination UDP port | |||
| er. | number. A STAMP implementation of the Session-Sender <bcp14>MUST</bcp14> | |||
| A STAMP implementation of Session-Sender MUST | be able to be used as the destination UDP port numbers from the User Ports | |||
| be able to use as the destination UDP port numbers from User, a.k.a. Registered, | (aka Registered Ports) and Dynamic Ports (aka Private or Ephemeral Ports) | |||
| Ports and | ranges defined in <xref target="RFC6335" format="default"/>. Before using | |||
| Dynamic, a.k.a. Private or Ephemeral, Ports ranges defined | numbers from the User Ports range, the possible impact on the network | |||
| in <xref target="RFC6335"/>. Before using numbers from the User Ports range, the | <bcp14>MUST</bcp14> be carefully studied and agreed on by all users of the | |||
| possible | network domain where the test has been planned. | |||
| impact on the network MUST be carefully studied and agreed by all users of the n | ||||
| etwork domain | ||||
| where the test has been planned. | ||||
| </t> | </t> | |||
| <t> | <t> | |||
| An implementation of STAMP Session-Reflector by default | By default, an implementation of the STAMP Session-Reflector | |||
| MUST receive STAMP test packets on UDP port 862. An implementation of Session-Re | <bcp14>MUST</bcp14> receive STAMP-Test packets on UDP port 862. | |||
| flector | ||||
| that supports this specification MUST be able to define the port number to recei | ||||
| ve STAMP test packets | ||||
| from User Ports and Dynamic Ports ranges that are defined in <xref target="RFC63 | ||||
| 35"/>. | ||||
| STAMP defines two different test packet formats, one for | ||||
| packets transmitted by the STAMP-Session-Sender and one for packets | ||||
| transmitted by the STAMP-Session-Reflector. | ||||
| </t> | ||||
| </section> | ||||
| <section anchor="stamp-session-sender" title="Session-Sender Behavior | An | |||
| and Packet Format"> | implementation of the Session-Reflector | |||
| <t> | that supports this specification <bcp14>MUST</bcp14> be able to define the | |||
| port number to receive STAMP-Test packets | ||||
| from User Ports and Dynamic Ports ranges, which are defined in <xref target="RFC | ||||
| 6335" format="default"/>. | ||||
| STAMP defines two different test packet formats: one for | ||||
| packets transmitted by the STAMP Session-Sender and one for packets | ||||
| transmitted by the STAMP Session-Reflector. | ||||
| </t> | ||||
| </section> | ||||
| <section anchor="stamp-session-sender" numbered="true" toc="default"> | ||||
| <name>Session-Sender Behavior and Packet Format</name> | ||||
| <t> | ||||
| A STAMP Session-Reflector supports the symmetrical size of test pac kets, | A STAMP Session-Reflector supports the symmetrical size of test pac kets, | |||
| as defined in Section 3 <xref target="RFC6038"/>, as the default be | as defined in <xref target="RFC6038" sectionFormat="of" section="3" | |||
| havior. | />, as the default behavior. | |||
| A reflected test packet includes more information and thus is large | A reflected base test packet includes information from | |||
| r. | the Session-Reflector and, thus, is larger. | |||
| Because of that, the base STAMP Session-Sender packet | To maintain the symmetry between base STAMP packets, | |||
| is padded to match the size of a reflected STAMP test packet. | the base STAMP Session-Sender packet includes the Must-Be-Zero (MBZ) field to | |||
| match to the size of a base reflected STAMP test packet. | ||||
| Hence, the base STAMP Session-Sender packet has a minimum | Hence, the base STAMP Session-Sender packet has a minimum | |||
| size of 44 octets in unauthenticated mode, see <xref target="sessio | size of 44 octets in unauthenticated mode (see <xref target="sessio | |||
| n-sender-unauthenticated-format"/>, | n-sender-unauthenticated-format" format="default"/>) | |||
| and 112 octets in the authenticated mode, see <xref target="session | and 112 octets in the authenticated mode (see <xref target="session | |||
| -sender-authenticated-format"/>. | -sender-authenticated-format" format="default"/>). | |||
| The variable length of a test packet in STAMP is supported by using | Generating variable length of a test packet in STAMP is defined in | |||
| Extra Padding TLV defined in <xref target="I-D.ietf-ippm-stamp-opti | <xref target="I-D.ietf-ippm-stamp-option-tlv" format="default"/>. | |||
| on-tlv"/>. | </t> | |||
| </t> | <section anchor="session-sender-packet-unauthenticated-section" numbered | |||
| ="true" toc="default"> | ||||
| <section anchor="session-sender-packet-unauthenticated-section" tit | <name>Session-Sender Packet Format in Unauthenticated Mode</name> | |||
| le="Session-Sender Packet Format in Unauthenticated Mode"> | <figure anchor="session-sender-unauthenticated-format"> | |||
| <name>STAMP Session-Sender Test Packet Format in Unauthenticated Mod | ||||
| <t> | e</name> | |||
| STAMP Session-Sender packet format in unauthenticated mode: | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| <figure align="left" anchor="session-sender-unauthenticated-format" tit | ||||
| le=" STAMP Session-Sender test packet format in unauthenticated mode"> | ||||
| <artwork><![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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Sequence Number | | | Sequence Number | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Timestamp | | | Timestamp | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Error Estimate | | | | Error Estimate | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | |||
| | | | | | | |||
| | | | | | | |||
| | Reserved (30 octets) | | | MBZ (30 octets) | | |||
| | | | | | | |||
| | | | | | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| where fields are defined as the following: | <t> | |||
| <list style="symbols"> | The fields are defined as following: | |||
| <t> | </t> | |||
| Sequence Number is four octets long field. For each new session | <ul spacing="normal"> | |||
| its value starts at zero and is incremented with each transmitted packet | <li> | |||
| . | The Sequence Number field is four octets long. For each new session, | |||
| </t> | its value starts at zero and is incremented by one with each transmitted | |||
| <t> | packet. | |||
| Timestamp is eight octets long field. STAMP node MUST support Network | </li> | |||
| Time Protocol (NTP) version 4 64-bit timestamp format <xref target="RFC5 | <li> | |||
| 905"/>, | The Timestamp field is eight octets long. The STAMP node | |||
| the format used in <xref target="RFC5357"/>. STAMP node MAY support | <bcp14>MUST</bcp14> support the Network | |||
| Time Protocol (NTP) version 4 64-bit timestamp format <xref target="RFC5 | ||||
| 905" format="default"/>, | ||||
| the format used in <xref target="RFC5357" format="default"/>. The STAMP | ||||
| node <bcp14>MAY</bcp14> support the | ||||
| IEEE 1588v2 Precision Time Protocol (PTP) truncated 64-bit timestamp | IEEE 1588v2 Precision Time Protocol (PTP) truncated 64-bit timestamp | |||
| format <xref target="IEEE.1588.2008"/>, the format used in <xref target= | format <xref target="IEEE.1588.2008" format="default"/>, the format | |||
| "RFC8186"/>. | used in <xref target="RFC8186" format="default"/>. | |||
| The use of the specific format, NTP or PTP, is part of configuration of | The use of the specific format, NTP or PTP, is part of configuration | |||
| the Session-Sender | of the Session-Sender or the particular test session. | |||
| or the particular test session. | </li> | |||
| </t> | <li> | |||
| <t> | <t> | |||
| Error Estimate is two octets long field with format displayed in <xref t | The Error Estimate field is two octets long with the format displayed in | |||
| arget="error-estimate-format"/> | <xref target="error-estimate-format" format="default"/>: | |||
| <figure align="left" anchor="error-estimate-format" title=" Error Estim | </t> | |||
| ate Format"> | <figure anchor="error-estimate-format"> | |||
| <artwork><![CDATA[ | <name>Error Estimate Format</name> | |||
| <artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
| 0 1 | 0 1 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |S|Z| Scale | Multiplier | | |S|Z| Scale | Multiplier | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| where S, Scale, and Multiplier fields are interpreted as they have been | <t> | |||
| defined in section 4.1.2 <xref target="RFC4656"/>; | The S, Scale, and Multiplier fields are interpreted as they are | |||
| and Z field - as has been defined in section 2.3 <xref target="RFC8186"/ | defined in <xref target="RFC4656" sectionFormat="of" section="4.1.2"/>. T | |||
| >: | he Z field is interpreted as it is defined in | |||
| <list style="symbols"> | <xref target="RFC8186" sectionFormat="of" section="2.3"/>: | |||
| <t>0 - NTP 64 bit format of a timestamp;</t> | </t> | |||
| <t>1 - PTPv2 truncated format of a timestamp.</t> | <dl spacing="normal"> | |||
| </list> | <dt>0:</dt><dd>NTP 64-bit format of a timestamp</dd> | |||
| <!-- | <dt>1:</dt><dd>PTPv2 truncated format of a timestamp</dd> | |||
| The STAMP Session-Sender and Session-Reflector MAY use, not use, or | </dl> | |||
| set value of the Z field | <t> | |||
| in accordance with the timestamp format in use. This optional field | ||||
| is to enhance operations, | ||||
| but local configuration or defaults could be used in its place. | ||||
| The default behavior of the STAMP Session-Sender and | The default behavior of the STAMP Session-Sender and | |||
| Session-Reflector is to use the NTP 64-bit timestamp format | Session-Reflector is to use the NTP 64-bit timestamp format | |||
| (Z field value of 0) An operator, using configuration/management function, | (Z field value of 0). An operator using configuration/management function | |||
| MAY configure STAMP Session-Sender and Session-Reflector | <bcp14>MAY</bcp14> configure the STAMP Session-Sender and Session-Reflector | |||
| to using the PTPv2 truncated format of a timestamp (Z field value of 1). | to use the PTPv2 truncated format of a timestamp (Z field value of 1). | |||
| Note, that an implementation of a Session-Sender that supports this specificatio | Note that an implementation of a Session-Sender that supports this specification | |||
| n | <bcp14>MAY</bcp14> be configured to use the PTPv2 format of a timestamp even | |||
| MAY be configured to use PTPv2 format of a timestamp even though the Session-Ref | though the Session-Reflector is | |||
| lector is | ||||
| configured to use NTP format. | configured to use NTP format. | |||
| </t> | ||||
| </t> | </li> | |||
| <t> | <li> | |||
| Reserved field in the Session-Sender unauthenticated packet is 30 octets | The MBZ field in the Session-Sender unauthenticated packet is 30 | |||
| long. | octets long. It <bcp14>MUST</bcp14> be all zeroed on the transmission | |||
| It MUST be all zeroed on the transmission and MUST be ignored on receipt | and <bcp14>MUST</bcp14> be ignored on receipt. | |||
| . | </li> | |||
| </t> | </ul> | |||
| <!-- | ||||
| <t> | ||||
| Comp.MBZ is variable length field used to achieve alignment on a word bo | ||||
| undary. Thus the length of Comp.MBZ field may be only 0, 1, 2 or 3 octets. | ||||
| The value of the field MUST be zeroed on transmission and ignored on rec | ||||
| eipt. | ||||
| </t> | ||||
| --> | ||||
| </list> | ||||
| </t> | ||||
| <!-- | ||||
| <t> | ||||
| The unauthenticated STAMP Session-Sender packet MAY include Type-Length- | ||||
| Value encodings that immediately follow the Comp. MBZ field. | ||||
| <list style="symbols"> | ||||
| <t> | ||||
| Type field is two octets long. The value of the Type field is the codepo | ||||
| int allocated by IANA | ||||
| <xref target="iana-consider"/> that identifies data in the Value field. | ||||
| </t> | ||||
| <t> | ||||
| Length is two octets long field, and its value is the length of the Valu | ||||
| e field in octets. | ||||
| </t> | ||||
| <t> | ||||
| Value field contains the application specific information. The length of | ||||
| the Value field MUST be four octets aligned. | ||||
| </t> | ||||
| </list> | ||||
| </t> | ||||
| </section> | </section> | |||
| <section anchor="session-sender-packet-authenticated-section" title="Session-Sen | <section anchor="session-sender-packet-authenticated-section" numbered=" | |||
| der Packet Format in Authenticated Mode"> | true" toc="default"> | |||
| <t> | <name>Session-Sender Packet Format in Authenticated Mode</name> | |||
| STAMP Session-Sender packet format in authenticated mode: | ||||
| <figure align="left" anchor="session-sender-authenticated-format" title | <figure anchor="session-sender-authenticated-format"> | |||
| =" STAMP Session-Sender test packet format in authenticated mode"> | <name>STAMP Session-Sender Test Packet Format in Authenticated Mode< | |||
| <artwork><![CDATA[ | /name> | |||
| <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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Sequence Number | | | Sequence Number | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | | |||
| | MBZ (12 octets) | | | MBZ (12 octets) | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Timestamp | | | Timestamp | | |||
| skipping to change at line 392 ¶ | skipping to change at line 379 ¶ | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | |||
| ~ ~ | ~ ~ | |||
| | MBZ (70 octets) | | | MBZ (70 octets) | | |||
| ~ ~ | ~ ~ | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | | |||
| | HMAC (16 octets) | | | HMAC (16 octets) | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| <t> | ||||
| </t> | The field definitions are the same as the unauthenticated mode, listed in | |||
| <xref target="session-sender-packet-unauthenticated-section" format="default"/ | ||||
| <t> | >. Also, MBZ fields are used to make | |||
| The field definitions are the same as the unauthenticated mode, listed in <xre | the packet length a multiple of 16 octets. The value of the field | |||
| f target="session-sender-packet-unauthenticated-section"/>. | <bcp14>MUST</bcp14> be zeroed on transmission and <bcp14>MUST</bcp14> be | |||
| Also, Must-Be-Zero (MBZ) fields are used to to make the packet length a multip | ignored on receipt. | |||
| le of 16 octets. | Note, that both MBZ fields are used to calculate a key hashed message | |||
| The value of the field MUST be zeroed on transmission and MUST be ignored on r | authentication code (HMAC) <xref target="RFC2104" format="default"/> hash. | |||
| eceipt. Note, that the MBZ field is used to calculate | Also, the packet includes an HMAC hash at the end of the PDU. The detailed | |||
| a key-hashed message authentication code (HMAC) (<xref target="RFC2104"/>) has | use of the HMAC field is described in <xref target="integrity-section" format=" | |||
| h. | default"/>. | |||
| Also, the packet includes HMAC hash at the end of the PDU. | </t> | |||
| The detailed use of the HMAC field is described in <xref target="integrity-sect | ||||
| ion"/>. | ||||
| </t> | ||||
| <!-- | ||||
| <t> | ||||
| The STAMP Session-Sender-packet format (<xref target="session-sender-authenti | ||||
| cated-format"/>) is the same in authenticated and | ||||
| encrypted modes. The encryption and authentication operations are, | ||||
| however, different and protect the data as follows: | ||||
| <list> | ||||
| <t>in the authenticated mode the Sequence Number is protected while the | ||||
| Timestamp and the Error Estimate are sent in clear text; | ||||
| </t> | ||||
| <t> | ||||
| in encrypted mode all fields, including the timestamp and Error Estimate, | ||||
| are protected to provide maximum data confidentiality and integrity protectio | ||||
| n. | ||||
| </t></list> | ||||
| Sending the Timestamp in clear text | ||||
| in authenticated mode allows more consistent reading of time by a Session-Sen | ||||
| der | ||||
| on the transmission of the test packet. | ||||
| Reading of the time in encrypted mode must be followed by its encryption whic | ||||
| h introduces | ||||
| variable delay thus affecting calculated timing metrics. | ||||
| </t> | ||||
| </section> | </section> | |||
| </section> | ||||
| </section> | <section anchor="stamp-session-reflector" numbered="true" toc="default"> | |||
| <name>Session-Reflector Behavior and Packet Format</name> | ||||
| <section anchor="stamp-session-reflector" title="Session-Reflector Beh | <t> | |||
| avior and Packet Format"> | The Session-Reflector receives the STAMP-Test packet and verifies | |||
| <t> | it. If the base STAMP-Test packet is validated, | |||
| The Session-Reflector receives the STAMP test packet and verifies i | the Session-Reflector that supports this specification | |||
| t. If the base STAMP test packet validated, | prepares and transmits the reflected test packet symmetric | |||
| the Session-Reflector, that supports this specification, prepares | to the packet received from the Session-Sender copying the | |||
| and transmits the reflected test packet symmetric | content beyond the size of the base STAMP packet | |||
| to the packet received from the Session-Sender copying the content | (see <xref target="stamp-session-sender" format="default"/>). | |||
| beyond the size of the base STAMP packet | </t> | |||
| (see <xref target="stamp-session-sender"/>). | <section anchor="session-reflector-packet-unauthenticated-section" numbe | |||
| </t> | red="true" toc="default"> | |||
| <name>Session-Reflector Packet Format in Unauthenticated Mode</name> | ||||
| <section anchor="session-reflector-packet-unauthenticated-section" t | <t> | |||
| itle="Session-Reflector Packet Format in Unauthenticated Mode"> | </t> | |||
| <t> | ||||
| </t> | ||||
| <t> | <figure anchor="session-reflector-unauthenticated-format"> | |||
| For unauthenticated mode: | <name>STAMP Session-Reflector Test Packet Format in | |||
| <figure align="left" anchor="session-reflector-unauthenticated-format" | Unauthenticated Mode</name> | |||
| title="STAMP Session-Reflector test packet format in unauthenticated mode"> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
| <artwork><![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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Sequence Number | | | Sequence Number | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Timestamp | | | Timestamp | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Error Estimate | MBZ | | | Error Estimate | MBZ | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Receive Timestamp | | | Receive Timestamp | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Session-Sender Sequence Number | | | Session-Sender Sequence Number | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Session-Sender Timestamp | | | Session-Sender Timestamp | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Session-Sender Error Estimate | MBZ | | | Session-Sender Error Estimate | MBZ | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |Ses-Sender TTL | Reserved | | |Ses-Sender TTL | MBZ | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ]]></artwork> | |||
| </figure> | </figure> | |||
| where fields are defined as the following: | ||||
| <list style="symbols"> | ||||
| <t> | <t> | |||
| Sequence Number is four octets long field. The value of the Sequence Num | Fields are defined as the following: | |||
| ber field is set according to the mode of the STAMP Session-Reflector: | </t> | |||
| <list> | <ul spacing="normal"> | |||
| <t> | <li> | |||
| in the stateless mode, the Session-Reflector copies the value from the r | <t> | |||
| eceived STAMP test packet's Sequence Number field; | The Sequence Number field is four octets long. The value of the Sequence | |||
| </t> | Number field is set according to the mode of the STAMP | |||
| <t> | Session-Reflector: | |||
| in the stateful mode, the Session-Reflector counts the transmitted STAMP | </t> | |||
| test packets. | <ul spacing="normal"> | |||
| <li> | ||||
| In the stateless mode, the Session-Reflector copies the value from the | ||||
| received STAMP-Test packet's Sequence Number field. | ||||
| </li> | ||||
| <li> | ||||
| In the stateful mode, the Session-Reflector counts the transmitted | ||||
| STAMP-Test packets. | ||||
| It starts with zero and is incremented by one | It starts with zero and is incremented by one | |||
| for each subsequent packet for each test session. | for each subsequent packet for each test session. | |||
| The Session-Reflector uses that counter to set the value of the Sequence Numb er field. | The Session-Reflector uses that counter to set the value of the Sequence Numb er field. | |||
| </t> | </li> | |||
| </list> | </ul> | |||
| </t> | </li> | |||
| <t> | <li> | |||
| Timestamp and Receive Timestamp fields are each eight octets long. The f | The Timestamp and Receive Timestamp fields are each eight octets long. T | |||
| ormat of these fields, NTP or PTPv2, | he | |||
| indicated by the Z field of the Error Estimate field as described in <xr | format of these fields, NTP or PTPv2, is | |||
| ef target="stamp-session-sender"/>. | indicated by the Z field of the Error Estimate field, as described in | |||
| Receive Timestamp is the time the test packet was received by the Sessio | <xref target="session-sender-packet-unauthenticated-section" format="defa | |||
| n-Reflector. Timestamp - | ult"/>. | |||
| the time taken by the Session-Reflector at the start of transmitting the | Receive Timestamp is the time the test packet was received by the | |||
| test packet. | Session-Reflector. Timestamp is | |||
| </t> | the time taken by the Session-Reflector at the start of transmitting | |||
| <t> | the test packet. | |||
| Error Estimate has the same size and interpretation as described in <xre | </li> | |||
| f target="stamp-session-sender"/>. | <li> | |||
| The Error Estimate field has the same size and interpretation as | ||||
| described in <xref target="session-sender-packet-unauthenticated-section" | ||||
| format="default"/>. | ||||
| It is applicable to both Timestamp and Receive Timestamp. | It is applicable to both Timestamp and Receive Timestamp. | |||
| </t> | </li> | |||
| <t> | <li> | |||
| Session-Sender Sequence Number, Session-Sender Timestamp, and Session-Se | The Session-Sender Sequence Number, Session-Sender Timestamp, and | |||
| nder Error Estimate | Session-Sender Error Estimate fields | |||
| are copies of the corresponding fields in the STAMP test packet sent by | are copies of the corresponding fields in the STAMP-Test packet sent | |||
| the Session-Sender. | by the Session-Sender. | |||
| </t> | </li> | |||
| <t> | <li> | |||
| Session-Sender TTL is one octet long field, and its value is the copy of | The Session-Sender TTL field is one octet long, and its value is the cop | |||
| the | y of the | |||
| TTL field in IPv4 (or Hop Limit in IPv6) from the received STAMP test pa | TTL field in IPv4 (or Hop Limit in IPv6) from the received STAMP-Test pa | |||
| cket. | cket. | |||
| </t> | </li> | |||
| <!-- | ||||
| <t> | ||||
| Packet Padding (reflected) is an optional variable length field. The len | ||||
| gth of the Packet Padding (reflected) field MUST be equal to the value | ||||
| of the Server Octets field (<xref target="session-sender-unauthenticated | ||||
| -format"/>). If the value is non-zero, | ||||
| the Session-Reflector MUST copy number of octets equal to the value of S | ||||
| erver Octets field starting with | ||||
| the Server Octets field. | ||||
| </t> | ||||
| --> | ||||
| <t> | ||||
| MBZ is used to achieve alignment of fields within the packet on a four o | ||||
| ctets boundary. | ||||
| The value of the field MUST be zeroed on transmission and MUST be ignore | ||||
| d on receipt. | ||||
| </t> | ||||
| <t> | ||||
| Reserved field in the Session-Reflector unauthenticated packet i | ||||
| s three octets long. | ||||
| It MUST be all zeroed on the transmission and MUST be ignored on receipt | ||||
| . | ||||
| </t> | ||||
| </list> | ||||
| </t> | ||||
| </section> | ||||
| <section anchor="session-reflector-packet-authenticated-section" title="Session- | <li> | |||
| Reflector Packet Format in Authenticated Mode"> | The MBZ fields are used to achieve alignment of fields within the packet | |||
| <t> | on a four-octet boundary. | |||
| For the authenticated mode: | The value of each MBZ field <bcp14>MUST</bcp14> be zeroed on transmissio | |||
| <figure align="left" anchor="session-reflector-authenticated-format" ti | n | |||
| tle=" STAMP Session-Reflector test packet format in authenticated mode"> | and <bcp14>MUST</bcp14> be ignored on receipt. | |||
| <artwork><![CDATA[ | </li> | |||
| </ul> | ||||
| </section> | ||||
| <section anchor="session-reflector-packet-authenticated-section" numbere | ||||
| d="true" toc="default"> | ||||
| <name>Session-Reflector Packet Format in Authenticated Mode</name> | ||||
| <figure anchor="session-reflector-authenticated-format"> | ||||
| <name>STAMP Session-Reflector Test Packet Format in Authenticated Mo | ||||
| de</name> | ||||
| <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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Sequence Number | | | Sequence Number | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | MBZ (12 octets) | | | MBZ (12 octets) | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Timestamp | | | Timestamp | | |||
| skipping to change at line 574 ¶ | skipping to change at line 549 ¶ | |||
| +-+-+-+-+-+-+-+-+ + | +-+-+-+-+-+-+-+-+ + | |||
| | | | | | | |||
| | MBZ (15 octets) | | | MBZ (15 octets) | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | HMAC (16 octets) | | | HMAC (16 octets) | | |||
| | | | | | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ]]></artwork> | ||||
| ]]></artwork> | </figure> | |||
| </figure> | <t> | |||
| The field definitions are the same as the unauthenticated mode, listed in | ||||
| </t> | <xref target="session-reflector-packet-unauthenticated-section" format="defaul | |||
| t"/>. | ||||
| <t> | Additionally, the MBZ field is used to make the packet length a multiple of 16 | |||
| The field definitions are the same as the unauthenticated mode, listed in <xre | octets. | |||
| f target="session-reflector-packet-unauthenticated-section"/>. | The value of the field <bcp14>MUST</bcp14> be zeroed on transmission and | |||
| Additionally, the MBZ field is used to to make the packet length a multiple of | <bcp14>MUST</bcp14> be ignored on receipt. | |||
| 16 octets. | Note that the MBZ field is used to calculate the HMAC hash value. | |||
| The value of the field MUST be zeroed on transmission and MUST be ignored on r | Also, the STAMP Session-Reflector test packet format in authenticated mode | |||
| eceipt. | includes the HMAC <xref target="RFC2104" format="default"/> hash at the end of | |||
| Note, that the MBZ field is used to calculate HMAC hash value. | the PDU. | |||
| Also, STAMP Session-Reflector test packet format in authenticated mode | The detailed use of the HMAC field is in <xref target="integrity-section" form | |||
| includes HMAC (<xref target="RFC2104"/>) hash at the end of the PDU. | at="default"/>. | |||
| The detailed use of the HMAC field is in <xref target="integrity-section"/>. | </t> | |||
| </t> | </section> | |||
| </section> | ||||
| </section> | <section anchor="integrity-section" numbered="true" toc="default"> | |||
| <name>Integrity Protection in STAMP</name> | ||||
| </section> | <t> | |||
| Authenticated mode provides integrity protection to each STAMP | ||||
| <section anchor="integrity-section" title="Integrity Protection in | message by adding | |||
| STAMP"> | ||||
| <t> | ||||
| Authenticated mode provides integrity protection to each STAMP m | ||||
| essage by adding | ||||
| Hashed Message Authentication Code (HMAC). STAMP | Hashed Message Authentication Code (HMAC). STAMP | |||
| uses HMAC-SHA-256 truncated to 128 bits (similarly to the use of | uses HMAC-SHA-256 truncated to 128 bits (similarly to the use | |||
| it in IPSec defined in <xref target="RFC4868"/>); hence | of it in IPsec defined in <xref target="RFC4868" format="default" | |||
| the length of the HMAC field is 16 octets. In the Authenticated | />); hence, | |||
| mode, | the length of the HMAC field is 16 octets. In the authenticated | |||
| HMAC covers the first six blocks (96 octets). HMAC uses its own | mode, | |||
| key that may be unique for each STAMP test session; | HMAC covers the first six blocks (96 octets). HMAC uses its | |||
| key management and the mechanisms to distribute the HMAC key are | own key, which may be unique for each STAMP-Test session; | |||
| outside the scope of this specification. One example is to | key management and the mechanisms to distribute the HMAC key | |||
| use an orchestrator to configure HMAC key based on STAMP YANG da | are outside the scope of this specification. One example is to | |||
| ta model <xref target="I-D.ietf-ippm-stamp-yang"/>. | use an orchestrator to configure the HMAC key based on the STAMP | |||
| HMAC MUST be verified as early as possible to avoid using or pro | YANG | |||
| pagating corrupted data. | data model <xref target="I-D.ietf-ippm-stamp-yang" format="defaul | |||
| </t> | t"/>. | |||
| <t> | HMAC <bcp14>MUST</bcp14> be verified as early as possible to | |||
| Future specifications may define the use of other, more advanced | avoid using or propagating corrupted data. | |||
| cryptographic algorithms, | </t> | |||
| possibly providing an update to the STAMP YANG data model <xref | <t> | |||
| target="I-D.ietf-ippm-stamp-yang"/>. | Future specifications may define the use of other, more | |||
| </t> | advanced cryptographic algorithms, | |||
| </section> | possibly providing an update to the STAMP YANG data model | |||
| <xref target="I-D.ietf-ippm-stamp-yang" format="default"/>. | ||||
| <section anchor="vonfidentiality-section" title="Confidentiality | </t> | |||
| Protection in STAMP"> | </section> | |||
| <t> | <section anchor="vonfidentiality-section" numbered="true" toc="default"> | |||
| If confidentiality protection for STAMP is required, a STAMP | <name>Confidentiality Protection in STAMP</name> | |||
| test session MUST use a secured transport. For example, | <t> | |||
| STAMP packets could be transmitted in the dedicated IPsec tunnel | If confidentiality protection for STAMP is required, a | |||
| or share the IPsec tunnel with the | STAMP-Test session <bcp14>MUST</bcp14> use a secured | |||
| monitored flow. Also, Datagram Transport Layer Security protocol | transport. For example, | |||
| STAMP packets could be transmitted in the dedicated IPsec | ||||
| tunnel or share the IPsec tunnel with the | ||||
| monitored flow. Also, the Datagram Transport Layer Security prot | ||||
| ocol | ||||
| would provide the desired confidentiality protection. | would provide the desired confidentiality protection. | |||
| </t> | </t> | |||
| </section> | </section> | |||
| <section anchor="interoperation-twamp" numbered="true" toc="default"> | ||||
| <section anchor="interoperation-twamp" title="Interoperability with TWAMP Li | <name>Interoperability with TWAMP Light</name> | |||
| ght"> | <t> | |||
| <t> | One of the essential requirements to STAMP is the ability to interwork with a | |||
| One of the essential requirements to STAMP is the ability to interwork with a TW | TWAMP Light device. Because STAMP and TWAMP use different algorithms in | |||
| AMP Light device. | authenticated mode (HMAC-SHA-256 versus HMAC-SHA-1), interoperability is only | |||
| Because STAMP and TWAMP use different algorithms in Authenticated mode (HMAC-SHA | considered for unauthenticated mode. There are two possible combinations for | |||
| -256 vs. HMAC-SHA-1), | such a use case: | |||
| interoperability is only considered for Unauthenticated mode. There are two poss | </t> | |||
| ible | <ul spacing="normal"> | |||
| combinations for such use case: | <li>STAMP Session-Sender with TWAMP Light Session-Reflector</li> | |||
| <list style="symbols"> | <li>TWAMP Light Session-Sender with STAMP Session-Reflector</li> | |||
| <t>STAMP Session-Sender with TWAMP Light Session-Reflector;</t> | </ul> | |||
| <t>TWAMP Light Session-Sender with STAMP Session-Reflector.</t> | <t> | |||
| </list> | In the former case, the Session-Sender might not be aware that its Session-Re | |||
| </t> | flector | |||
| <t> | does not support STAMP. For example, a TWAMP Light Session-Reflector may not | |||
| In the former case, the Session-Sender might not be aware that its Session-R | support the use of UDP port 862, as specified in <xref target="RFC8545" forma | |||
| eflector | t="default"/>. | |||
| does not support STAMP. For example, a TWAMP Light Session-Reflector may not | Thus, <xref target="stamp-section" format="default"/> permits a STAMP | |||
| support the use of UDP port 862 as specified in <xref target="RFC8545"/>. | Session-Sender to use alternative ports. If any of STAMP extensions are | |||
| Thus <xref target="stamp-section"/>. permits a STAMP Session-Sender to use a | used, the TWAMP Light Session-Reflector will view them as the Packet | |||
| lternative ports. | Padding field. | |||
| If any of STAMP extensions are used, the TWAMP Light Session-Reflector | </t> | |||
| will view them as Packet Padding field. | <t> | |||
| <!-- The Session-Sender | ||||
| SHOULD use the default format for its timestamps - NTP. And it MAY | ||||
| use PTPv2 timestamp format. --> | ||||
| </t> | ||||
| <t> | ||||
| In the latter scenario, if a TWAMP Light Session-Sender does not support | In the latter scenario, if a TWAMP Light Session-Sender does not support | |||
| the use of UDP port 862, the test management system MUST set STAMP | the use of UDP port 862, the test management system <bcp14>MUST</bcp14> set | |||
| Session-Reflector to use UDP port number, as permitted by <xref target="stamp | the STAMP Session-Reflector to use UDP port number, as permitted by <xref tar | |||
| -section"/>. | get="stamp-section" format="default"/>. The Session-Reflector | |||
| The Session-Reflector MUST be set to use the default format for its timestamp | <bcp14>MUST</bcp14> be set to use the default format for its timestamps, | |||
| s, NTP. | NTP. | |||
| </t> | </t> | |||
| <t> | ||||
| <t> | ||||
| A STAMP Session-Reflector that supports this specification will transmit the bas e packet | A STAMP Session-Reflector that supports this specification will transmit the bas e packet | |||
| (<xref target="session-reflector-unauthenticated-format"/>) if it receives a pac | (<xref target="session-reflector-unauthenticated-format" format="default"/>) | |||
| ket smaller than | if it receives a packet smaller than | |||
| the STAMP base packet. If the packet received from TWAMP Session-Sender is larg | the STAMP base packet. If the packet received from the TWAMP Session-Sender is | |||
| er than the STAMP base packet, | larger than the STAMP base packet, | |||
| the STAMP Session-Reflector that supports this specification will copy the conte | the STAMP Session-Reflector that supports this specification will copy the | |||
| nt of the remainder of the received packet | content of the remainder of the received packet to transmit a reflected packet | |||
| to transmit reflected packet of symmetrical size. | of symmetrical size. | |||
| </t> | </t> | |||
| </section> | ||||
| </section> | </section> | |||
| <section anchor="operation-sec" numbered="true" toc="default"> | ||||
| </section> | <name>Operational Considerations</name> | |||
| <t> | ||||
| <section anchor="operation-sec" title="Operational Considerations"> | ||||
| <t> | ||||
| STAMP is intended to be used on production networks to enable | STAMP is intended to be used on production networks to enable | |||
| the operator to assess service level agreements based on packet delay, | the operator to assess service level agreements based on packet delay, | |||
| delay variation, and loss. When using STAMP over the Internet, especially | delay variation, and loss. When using STAMP over the Internet, especially | |||
| when STAMP test packets are transmitted with the destination UDP port number fr | when STAMP-Test packets are transmitted with the destination UDP port number fr | |||
| om | om | |||
| the User Ports range, the possible impact of the STAMP test packets MUST be | the User Ports range, the possible impact of the STAMP-Test packets | |||
| thoroughly analyzed. | <bcp14>MUST</bcp14> be thoroughly analyzed. | |||
| The use of STAMP for each case MUST be agreed by users of | The use of STAMP for each case <bcp14>MUST</bcp14> be agreed by users of | |||
| nodes hosting the Session-Sender and Session-Reflector before starting the | nodes hosting the Session-Sender and Session-Reflector before starting | |||
| STAMP test session. | the STAMP-Test session. | |||
| </t> | </t> | |||
| <t> | <t> | |||
| Also, the use of the well-known port number as | Also, the use of the well-known port number as | |||
| the destination UDP port number in STAMP test packets transmitted | the destination UDP port number in STAMP-Test packets transmitted | |||
| by a Session-Sender would not impede | by a Session-Sender would not impede | |||
| the ability to measure performance in an Equal Cost Multipath environment | the ability to measure performance in an Equal-Cost Multipath environment, | |||
| and analysis in Section 5.3 <xref target="RFC8545"/> fully applies to STAMP. | and analysis in <xref target="RFC8545" sectionFormat="of" section="5.3"/> | |||
| </t> | fully applies to STAMP. | |||
| </section> | </t> | |||
| <section anchor="iana-consider" title="IANA Considerations"> | ||||
| <t> | ||||
| This document doesn't have any IANA action. This section may be removed bef | ||||
| ore the publication. | ||||
| </t> | ||||
| </section> | </section> | |||
| <section anchor="iana-consider" numbered="true" toc="default"> | ||||
| <section anchor="security" title="Security Considerations"> | <name>IANA Considerations</name> | |||
| <t> | <t> | |||
| <xref target="RFC5357"/> does not identify security considerations specific | This document has no IANA actions. | |||
| to TWAMP-Test but refers to | </t> | |||
| security considerations identified for OWAMP in <xref target="RFC4656"/>. S | </section> | |||
| ince both OWAMP and TWAMP include control plane and data plane components, | <section anchor="security" numbered="true" toc="default"> | |||
| only security considerations related to OWAMP-Test, discussed in Sections 6 | <name>Security Considerations</name> | |||
| .2, 6.3 <xref target="RFC4656"/> apply to STAMP. | <t> | |||
| </t> | <xref target="RFC5357" format="default"/> does not identify security | |||
| <t> | considerations specific to TWAMP-Test but refers to | |||
| STAMP uses the well-known UDP port number allocated for the OWAMP-Test/TWAM | security considerations identified for OWAMP in <xref target="RFC4656" form | |||
| P-Test Receiver port. Thus | at="default"/>. Since both OWAMP and TWAMP include control-plane and | |||
| the security considerations and measures to mitigate the risk of the attack | data-plane components, | |||
| using the registered port number documented in | only security considerations related to OWAMP-Test discussed in Sections | |||
| Section 6 <xref target="RFC8545"/> equally apply to STAMP. | <xref target="RFC4656" section="6.2" sectionFormat="bare"/> and | |||
| Because of the control and management of a STAMP test being outside the sco | <xref target="RFC4656" section="6.3" sectionFormat="bare"/> of <xref target | |||
| pe of this specification only the more general | ="RFC4656"/> apply to STAMP. | |||
| requirement is set: | </t> | |||
| <list> | <t> | |||
| <t> | STAMP uses the well-known UDP port number allocated for the | |||
| To mitigate the possible attack vector, the control, and management of a ST | OWAMP-Test/TWAMP-Test Receiver Port. Thus, the security considerations and | |||
| AMP test session MUST use the secured transport. | measures to mitigate the risk of the attack using the registered port | |||
| </t> | number documented in <xref target="RFC8545" sectionFormat="of" section="6"/ | |||
| <t> | > equally apply to STAMP. Because of the control and | |||
| The load of the STAMP test packets offered to a network MUST be carefully e | management of a STAMP-Test being outside the scope of this specification, | |||
| stimated, | only the more general requirement is set: | |||
| and the possible impact on the existing services MUST be thoroughly analyze | </t> | |||
| d | <ul empty="true" spacing="normal"> | |||
| before launching the test session. | <li> | |||
| <xref target="RFC8085"/> section 3.1.5 provides guidance on handling networ | To mitigate the possible attack vector, the control and management of a | |||
| k | STAMP-Test session <bcp14>MUST</bcp14> use the secured transport. | |||
| load for UDP-based protocol. While the characteristic of test traffic depen | </li> | |||
| ds on | <li> | |||
| the test objective, it is highly recommended to stay in the limits as provi | The load of the STAMP-Test packets offered to a network | |||
| ded in <xref target="RFC8085"/>. | <bcp14>MUST</bcp14> be carefully estimated, | |||
| </t> | and the possible impact on the existing services <bcp14>MUST</bcp14> be | |||
| </list> | thoroughly analyzed before launching the test session. | |||
| </t> | <xref target="RFC8085" sectionFormat="of" section="3.1.5"/> provides | |||
| <t> | guidance on handling network load for UDP-based protocol. While the | |||
| characteristic of test traffic depends on the test objective, it is | ||||
| highly recommended to stay in the limits, as provided in <xref target="RFC8 | ||||
| 085" format="default"/>. | ||||
| </li> | ||||
| </ul> | ||||
| <t> | ||||
| Use of HMAC-SHA-256 in the authenticated mode protects the data integrity | Use of HMAC-SHA-256 in the authenticated mode protects the data integrity | |||
| of the STAMP test packets. | of the STAMP-Test packets. | |||
| </t> | </t> | |||
| </section> | ||||
| </section> | ||||
| <section title="Acknowledgments"> | ||||
| <t> | ||||
| Authors express their appreciation to Jose Ignacio Alvarez-Hamelin and | ||||
| Brian Weis for their great insights into the security and identity protection, | ||||
| and the most helpful and practical suggestions. Also, our sincere thanks to | ||||
| David Ball and Rakesh Gandhi or their thorough reviews and helpful comments. | ||||
| </t> | ||||
| </section> | ||||
| </middle> | </middle> | |||
| <back> | ||||
| <displayreference target="I-D.ietf-ippm-stamp-yang" to="STAMP-YANG"/> | ||||
| <displayreference target="I-D.ietf-ippm-stamp-option-tlv" to="STAMP-OPTION"/ | ||||
| > | ||||
| <references> | ||||
| <name>References</name> | ||||
| <references> | ||||
| <name>Normative References</name> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.2119.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.8174.xml"/> | ||||
| <!-- <?rfc include="reference.RFC.8126"?> --> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.5357.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.5905.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.4656.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.8186.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.6335.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.6038.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.8545.xml"/> | ||||
| <back> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | |||
| <references title="Normative References"> | ence.RFC.2104.xml"/> | |||
| <?rfc include="reference.RFC.2119"?> | ||||
| <?rfc include="reference.RFC.8174"?> | ||||
| <!-- | ||||
| <?rfc include="reference.RFC.8126"?> | ||||
| --> | ||||
| <?rfc include="reference.RFC.5357"?> | ||||
| <?rfc include="reference.RFC.5905"?> | ||||
| <?rfc include="reference.RFC.4656"?> | ||||
| <?rfc include="reference.RFC.8186"?> | ||||
| <?rfc include="reference.RFC.6335"?> | ||||
| <?rfc include="reference.RFC.6038"?> | ||||
| <?rfc include="reference.RFC.8545"?> | ||||
| <?rfc include="reference.I-D.ietf-ippm-stamp-option-tlv"?> | ||||
| <?rfc include="reference.RFC.2104"?> | ||||
| <reference anchor="IEEE.1588.2008"> | <reference anchor="IEEE.1588.2008"> | |||
| <front> | <front> | |||
| <title>Standard for a Precision Clock Synchronization Protocol for Networked Mea | <title>IEEE Standard for a Precision Clock Synchronization Protocol | |||
| surement and Control Systems</title> | for | |||
| <author> | Networked Measurement and Control Systems</title> | |||
| <organization/> | <author> | |||
| </author> | <organization>IEEE</organization> | |||
| <date month="March" year="2008"/> | </author> | |||
| </front> | <date month="July" year="2008"/> | |||
| <seriesInfo name="IEEE" value="Standard 1588"/> | </front> | |||
| </reference> | <seriesInfo name="IEEE" value="Standard 1588"/> | |||
| </reference> | ||||
| </references> | </references> | |||
| <references> | ||||
| <references title="Informative References"> | <name>Informative References</name> | |||
| <?rfc include="reference.RFC.4868"?> | ||||
| <?rfc include="reference.RFC.8085"?> | ||||
| <?rfc include="reference.RFC.7750"?> | ||||
| <?rfc include="reference.I-D.ietf-ippm-stamp-yang"?> | ||||
| <reference anchor="BBF.TR-390"> | ||||
| <front> | ||||
| <title>Performance Measurement from IP Edge to Customer Equipment using TWAMP Li | ||||
| ght</title> | ||||
| <author> | ||||
| <organization/> | ||||
| </author> | ||||
| <date month="May" year="2017"/> | ||||
| </front> | ||||
| <seriesInfo name="BBF" value="TR-390"/> | ||||
| </reference> | ||||
| </references> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | |||
| ence.RFC.4868.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.8085.xml"/> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.7750.xml"/> | ||||
| <!-- I-D.draft-ietf-ippm-stamp-yang: I-D Exists --> | ||||
| <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml3/reference. | ||||
| I-D.draft-ietf-ippm-stamp-yang-05.xml"/> | ||||
| <!--draft-ietf-ippm-stamp-option-tlv; I-D Exists --> | ||||
| <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml3/reference.I-D.ietf | ||||
| -ippm-stamp-option-tlv.xml"/> | ||||
| </back> | <reference anchor="BBF.TR-390"> | |||
| </rfc> | <front> | |||
| <title>Performance Measurement from IP Edge to Customer Equipment | ||||
| using TWAMP Light</title> | ||||
| <seriesInfo name="TR-390" value="Issue 1"/> | ||||
| <author> | ||||
| <organization>Broadband Forum</organization> | ||||
| </author> | ||||
| <date month="May" year="2017"/> | ||||
| </front> | ||||
| </reference> | ||||
| </references> | ||||
| </references> | ||||
| <section numbered="false" toc="default"> | ||||
| <name>Acknowledgments</name> | ||||
| <t>The authors express their appreciation to <contact fullname="Jose Ignac | ||||
| io Alvarez-Hamelin"/> and | ||||
| <contact fullname="Brian Weis"/> for their great insights into the | ||||
| security and identity protection as well as the most helpful and practical sugge | ||||
| stions. Also, our sincere thanks to | ||||
| <contact fullname="David Ball"/>, <contact fullname="Rakesh Gandhi"/>, and <cont | ||||
| act fullname="Xiao Min"/> for | ||||
| their thorough reviews and helpful comments. | ||||
| </t> | ||||
| </section> | ||||
| </back> | ||||
| </rfc> | ||||
| End of changes. 72 change blocks. | ||||
| 708 lines changed or deleted | 605 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||