Network Working Group G. Mirsky
Internet-Draft X. Min
Intended status: Standards Track ZTE Corp.
Expires: October 14, 2018 G. Jun
ZTE Corporation
H. Nydell
Accedian Networks
R. Foote
Nokia
April 12, 2018
Simple Two-way Active Measurement Protocol Optional Extensions
draft-mirsky-ippm-stamp-option-tlv-01
Abstract
This document describes optional extensions to Simple Two-way Active
Measurement Protocol (STAMP) which enable measurement performance
metrics in addition to ones enabled by the STAMP base specification.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on October 14, 2018.
Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
Mirsky, et al. Expires October 14, 2018 [Page 1]
Internet-Draft STAMP Extensions April 2018
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions used in this document . . . . . . . . . . . . . . 2
2.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 2
2.2. Requirements Language . . . . . . . . . . . . . . . . . . 3
3. Theory of Operation . . . . . . . . . . . . . . . . . . . . . 3
4. TLV Extensions to STAMP . . . . . . . . . . . . . . . . . . . 3
4.1. Extra Padding TLV . . . . . . . . . . . . . . . . . . . . 3
4.2. Location TLV . . . . . . . . . . . . . . . . . . . . . . 4
4.3. Timestamp Information TLV . . . . . . . . . . . . . . . . 6
4.4. Class of Service TLV . . . . . . . . . . . . . . . . . . 6
4.5. Direct Measurement TLV . . . . . . . . . . . . . . . . . 7
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
5.1. STAMP TLV Registry . . . . . . . . . . . . . . . . . . . 8
5.2. Synchronization Source Sub-registry . . . . . . . . . . . 9
5.3. Timestamp Method Sub-registry . . . . . . . . . . . . . . 9
5.4. CoS Operation Sub-registry . . . . . . . . . . . . . . . 9
6. Security Considerations . . . . . . . . . . . . . . . . . . . 9
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 10
8. Normative References . . . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction
Simple Two-way Active Measurement Protocol (STAMP)
[I-D.ietf-ippm-stamp] supports the use of optional extensions that
use Type-Length-Value (TLV) encoding. Such extensions are to enhance
the STAMP base functions, such as measurement of one-way and round-
trip delay, latency, packet loss, as well as ability to detect packet
duplication and out-of-order delivery of the test packets. This
specification provides definitions of optional STAMP extensions,
their formats, and theory of operation.
2. Conventions used in this document
2.1. Terminology
STAMP - Simple Two-way Active Measurement Protocol
DSCP - Differentiated Services Code Point
ECN - Explicit Congestion Notification
Mirsky, et al. Expires October 14, 2018 [Page 2]
Internet-Draft STAMP Extensions April 2018
NTP - Network Time Protocol
PTP - Precision Time Protocol
HMAC Hashed Message Authentication Code
TLV Type-Length-Value
2.2. Requirements Language
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 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. Theory of Operation
STAMP Session-Sender transmits test packets to STAMP Session-
Reflector. STAMP Session-Reflector receives Session-Sender's packet
and acts according to the configuration and optional control
information communicated in the Session-Sender's test packet. 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. STAMP supports three
modes: unauthenticated, authenticated, and encrypted.
Unauthenticated STAMP test packets are compatible on the wire with
unauthenticated TWAMP-Test [RFC5357] packet formats.
By default, STAMP uses symmetrical packets, i.e. size of the packet
transmitted by Session-Reflector equals to the size of the packet
received by the Session-Reflector.
4. TLV Extensions to STAMP
TBA
4.1. Extra Padding TLV
TBA
Mirsky, et al. Expires October 14, 2018 [Page 3]
Internet-Draft STAMP Extensions April 2018
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Extra Padding Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Extra Padding ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Extra Padding TLV
where fields are defined as the following:
o Extra Padding Type - TBA1 allocated by IANA Section 5.1
o Length - 2 octets long field equals length on the Extra Padding
field in octets.
o Extra Padding - a pseudo-random sequence of numbers. The field
MAY be filled with all zeroes.
4.2. Location TLV
STAMP session-sender MAY include the Location TLV to request
information from the session-reflector. The session-sender SHOULD
NOT fill any information fields except for Type and Length. The
session-reflector MUST validate the Length value against address
family of the transport encapsulating the STAMP test packet. If the
value of the Length field is invalid, the session-reflector MUST zero
all fields and MUST NOT return any information to the session-sender.
The session-reflector MUST ignore all other fields of the received
Location TLV.
Mirsky, et al. Expires October 14, 2018 [Page 4]
Internet-Draft STAMP Extensions April 2018
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Location Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source MAC |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | Reserved A |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Destination IP Address ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Source IP Address ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Dest.port | Src.Port | Reserved B |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: Session-Reflector Location TLV
where fields are defined as the following:
o Location Type - TBA2 allocated by IANA Section 5.1
o Length - 2 octets long field equals length on the Value field in
octets. Length field value MUST be 20 octets for the IPv4 address
family. For the IPv6 address family value of the Length field
MUST be 44 octets. All other values are invalid
o Source MAC - 6 octets 48 bits long field. The session-reflector
MUST copy Source MAC of received STAMP packet into this field.
o Reserved A - two octets long field. MUST be zeroed on
transmission and ignored on reception.
o Destination IP Address - IPv4 or IPv6 destination address of the
received by the session-reflector STAMP packet.
o Source IP Address - IPv4 or IPv6 source address of the received by
the session-reflector STAMP packet.
o Dest.port - one octet long UDP destination port number of the
received STAMP packet.
o Src.port - one octet long UDP source port number of the received
STAMP packet.
o Reserved B - two octets long field. MUST be zeroed on
transmission and ignored on reception.
Mirsky, et al. Expires October 14, 2018 [Page 5]
Internet-Draft STAMP Extensions April 2018
4.3. Timestamp Information TLV
STAMP session-sender MAY include the Timestamp Information TLV to
request information from the session-reflector. The session-sender
SHOULD NOT fill any information fields except for Type and Length.
The session-reflector MUST validate the Length value of the STAMP
test packet. If the value of the Length field is invalid, the
session-reflector MUST zero all fields and MUST NOT return any
information to the session-sender.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Timestamp Information Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Synchronization Source | Timestamp Method |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: Timestamp Information TLV
where fields are defined as the following:
o Timestamp Information Type - TBA3 allocated by IANA Section 5.1
o Length - 2 octets long field, equals 4 octets.
o Synchronization Source - two octets long field that characterizes
the source of clock synchronization at the session-reflector. The
value is one of Section 5.2.
o Timestamp Method - two octets long field that characterizes
timestamping method at the session-reflector. The value is one of
Section 5.3. [Ed.note: Should it be split for ingress and
egress?]
4.4. Class of Service TLV
The STAMP session-sender MAY include Class of Service TLV in the
STAMP test packet. If the Class of Service TLV is present in the
STAMP test packet and the value of the Op field equals Report (TBA5)
value Section 5.4, then the STAMP session-reflector MUST copy
Differentiated Services Code Point (DSCP) and Explicit Congestion
Notification (ECN) values from the received STAMP test packet into
DSCP and ECN fields of the Class of Service TLV of the reflected
STAMP test packet. If the value of the Op field equals Set and
Report (TBA6) Section 5.4, then the STAMP session-reflector MUST use
DSCP value from the Class of Service TLV in the received STAMP test
packet as DSCP value of STAMP reflected test packet and MUST copy
Mirsky, et al. Expires October 14, 2018 [Page 6]
Internet-Draft STAMP Extensions April 2018
DSCP and ECN values of the received STAMP test packet into DSCP and
ECN fields of Class of Service TLV in the STAMP reflected a packet.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Class of Service Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Op | Reserved | DSCP |ECN|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4: Class of Service TLV
where fields are defined as the following:
o Class of Service Type - TBA4 allocated by IANA Section 5.1
o Length - 2 octets long field, equals 4 octets.
o Op - 4 bits long field with the value set to operation code point:
* TBA5 - Report CoS values by STAMP Session-Reflector
* TBA6 - Set and Report CoS values to be used for reflected STAMP
test packet
o Reserved - 20 bits long field, must be zeroed in transmission and
ignored on receipt.
o DSCP - Differentiated Services Code Point (DSCP).
o ECN - Explicit Congestion Notification.
4.5. Direct Measurement TLV
The Direct Measurement TLV enables collection of "in profile" IP
packets that had been transmitted and received by the Session-Sender
and Session-Reflector respectfully. The definition of "in-profile
packet" is outside the scope of this document.
Mirsky, et al. Expires October 14, 2018 [Page 7]
Internet-Draft STAMP Extensions April 2018
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Direct Measurement Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Session-Sender Tx counter (S_TxC) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Session-Reflector Rx counter (R_RxC) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Session-Reflector Tx counter (R_TxC) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: Direct Measurement TLV
where fields are defined as the following:
o Direct Measurement Type - TBA5 allocated by IANA Section 5.1
o Length - 2 octets long field equals length on the Value field in
octets. Length field value MUST be 12 octets.
o Session-Sender Tx counter (S_TxC) is four octets long field.
o Session-Reflector Rx counter (R_RxC) is four octets long field.
MUST be zeroed by the Session-Sender and filled by the Session-
Reflector.
o Session-Reflector Tx counter (R_TxC).is four octets long field.
MUST be zeroed by the Session-Sender and filled by the Session-
Reflector.
5. IANA Considerations
5.1. STAMP TLV Registry
IANA is requested to create STAMP TLV Type registry. All code points
in the range 1 through 32759 in this registry shall be allocated
according to the "IETF Review" procedure as specified in [RFC8126].
Code points in the range 32760 through 65279 in this registry shall
be allocated according to the "First Come First Served" procedure as
specified in [RFC8126]. Remaining code points are allocated
according to the Table 1:
Mirsky, et al. Expires October 14, 2018 [Page 8]
Internet-Draft STAMP Extensions April 2018
+---------------+--------------+-------------------------+
| Value | Description | Reference |
+---------------+--------------+-------------------------+
| 0 | Reserved | This document |
| 1- 32759 | Unassigned | IETF Review |
| 32760 - 65279 | Unassigned | First Come First Served |
| 65280 - 65519 | Experimental | This document |
| 65520 - 65534 | Private Use | This document |
| 65535 | Reserved | This document |
+---------------+--------------+-------------------------+
Table 1: STAMP TLV Type Registry
This document defines the following new values in STAMP TLV Type
registry:
+-------+-----------------------+---------------+
| Value | Description | Reference |
+-------+-----------------------+---------------+
| TBA1 | Extra Padding | This document |
| TBA2 | Location | This document |
| TBA3 | Timestamp Information | This document |
| TBA4 | Class of Service | This document |
| TBA5 | Direct Measurement | This document |
+-------+-----------------------+---------------+
Table 2: STAMP Types
5.2. Synchronization Source Sub-registry
TBD
5.3. Timestamp Method Sub-registry
TBD
5.4. CoS Operation Sub-registry
TBD
6. Security Considerations
Use of HMAC in authenticated and encrypted modes may be used to
simultaneously verify both the data integrity and the authentication
of the STAMP test packets.
Mirsky, et al. Expires October 14, 2018 [Page 9]
Internet-Draft STAMP Extensions April 2018
7. Acknowledgments
TBD
8. Normative References
[I-D.ietf-ippm-stamp]
Mirsky, G., Jun, G., Nydell, H., and R. Foote, "Simple
Two-way Active Measurement Protocol", draft-ietf-ippm-
stamp-01 (work in progress), March 2018.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J.
Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)",
RFC 5357, DOI 10.17487/RFC5357, October 2008,
<https://www.rfc-editor.org/info/rfc5357>.
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, DOI 10.17487/RFC8126, June 2017,
<https://www.rfc-editor.org/info/rfc8126>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
Authors' Addresses
Greg Mirsky
ZTE Corp.
Email: gregimirsky@gmail.com
Xiao Min
ZTE Corp.
Email: xiao.min2@zte.com.cn
Mirsky, et al. Expires October 14, 2018 [Page 10]
Internet-Draft STAMP Extensions April 2018
Guo Jun
ZTE Corporation
68# Zijinghua Road
Nanjing, Jiangsu 210012
P.R.China
Phone: +86 18105183663
Email: guo.jun2@zte.com.cn
Henrik Nydell
Accedian Networks
Email: hnydell@accedian.com
Richard Foote
Nokia
Email: footer.foote@nokia.com
Mirsky, et al. Expires October 14, 2018 [Page 11]