IPv6 Performance Measurement with Alternate Marking Method
draft-fioccola-v6ops-ipv6-alt-mark-00
This document is an Internet-Draft (I-D).
Anyone may submit an I-D to the IETF.
This I-D is not endorsed by the IETF and has no formal standing in the
IETF standards process.
The information below is for an old version of the document.
| Document | Type |
This is an older version of an Internet-Draft whose latest revision state is "Replaced".
|
|
|---|---|---|---|
| Authors | Giuseppe Fioccola , Gunter Van de Velde , Mauro Cociglio , Praveen Muley | ||
| Last updated | 2018-02-26 | ||
| Replaced by | draft-fz-6man-ipv6-alt-mark | ||
| RFC stream | (None) | ||
| Formats | |||
| Stream | Stream state | (No stream defined) | |
| Consensus boilerplate | Unknown | ||
| RFC Editor Note | (None) | ||
| IESG | IESG state | I-D Exists | |
| Telechat date | (None) | ||
| Responsible AD | (None) | ||
| Send notices to | (None) |
draft-fioccola-v6ops-ipv6-alt-mark-00
V6OPS Working Group G. Fioccola
Internet-Draft Telecom Italia
Intended status: Standards Track G. Van de Velde
Expires: August 30, 2018 Nokia
M. Cociglio
Telecom Italia
P. Muley
Nokia
February 26, 2018
IPv6 Performance Measurement with Alternate Marking Method
draft-fioccola-v6ops-ipv6-alt-mark-00
Abstract
This document describes how the alternate marking method can be used
as the passive performance measurement method in an IPv6 domain, and
will discuss the strengths and the weaknesses of the implementation
options available to network operations.
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
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 August 30, 2018.
Fioccola, et al. Expires August 30, 2018 [Page 1]
Internet-Draft IPv6 PM with AMM February 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
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. IPv6 application of Alternate Marking . . . . . . . . . . . . 3
2.1. IPv6 Extension Headers as Marking Field . . . . . . . . . 3
2.2. IPv6 Addresses as Marking Field . . . . . . . . . . . . . 4
2.3. IPv6 Flow Label as Marking Field . . . . . . . . . . . . 4
2.3.1. IPv6 Tunnel Use Case . . . . . . . . . . . . . . . . 6
2.3.2. SRv6 Use Case . . . . . . . . . . . . . . . . . . . . 6
3. Alternate Marking Method Operation . . . . . . . . . . . . . 6
3.1. Single Mark Measurement . . . . . . . . . . . . . . . . . 7
3.2. Double Mark Measurement . . . . . . . . . . . . . . . . . 7
4. Security Considerations . . . . . . . . . . . . . . . . . . . 7
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 8
7.1. Normative References . . . . . . . . . . . . . . . . . . 8
7.2. Informative References . . . . . . . . . . . . . . . . . 8
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction
This document reports a summary on the possible implemetation options
for the application of the alternate marking method in an IPv6
domain.
[RFC8321] describes passive performance measurement method, which can
be used to measure packet loss, latency and jitter on live traffic.
Because this method is based on marking consecutive batches of
packets the method often referred as Alternate Marking Method.
Fioccola, et al. Expires August 30, 2018 [Page 2]
Internet-Draft IPv6 PM with AMM February 2018
This document defines how the alternate marking method can be used to
measure packet loss and delay metrics of IPv6 tunneled packets or
SRv6 policies.
The IPv6 Header Format defined in [RFC8200] and [RFC2460] introduces
the availability of an 20-bit flow label, the format of IPv6
addresses and the Extension Headers in the base IPv6 Header.
For instance, considering the Flow Label, [RFC6294] makes a survey of
Proposed Use Cases for the IPv6 Flow Label. The flow label is an
immutable field recommended to contain a pseudo-random value,
however, often it has the default value of zero. [RFC6436] and
[RFC6437] open the door for IPv6 Flow Label to be used in a
controlled environment and [RFC6438] describes the use of the IPv6
Flow Label field for load distribution purpose, especially across
Equal Cost Multi-Path (ECMP) and/or Link Aggregation Group (LAG)
paths. It is important to underline that these specifications
encourage non-zero flow label values to be used and clearly defines
how to set a non-zero value and it retains the rule that the flow
label must not be changed en route but allows routers to set the
label on behalf of hosts that do not do so. Based on these
considerations, it is allowed to use the flow label field in a
managed domain, assuming that, when a packet leaves the domain, the
original flow label value MUST be restored or the packet MUST be
found invalid.
2. IPv6 application of Alternate Marking
The application of the alternate marking requires a marking field.
The alternatives that can be taken into consideration for the choice
of the marking field are the following:
o Extension Header
o IPv6 Address
o Flow Label
2.1. IPv6 Extension Headers as Marking Field
A new type of EH may be a solution space proposal (e.g. [RFC8250]
gives a chance).
A possibility can be to use a Hop-By-Hop(HBH) Extension Header(EH).
The assumption is that a HBH EH with an alternate marking measurement
option can be defined. The router processing can be optimized to
handle this case.
Fioccola, et al. Expires August 30, 2018 [Page 3]
Internet-Draft IPv6 PM with AMM February 2018
2.2. IPv6 Addresses as Marking Field
There is an advantage of using destination addresses (DA) to encode
the alternate marking method. In addition to identifying a host, a
destination address is also and more fundamentally identifying an
exit point from the forwarding domain. It indicates where processing
for forwarding to the DA stops, and where other processing of the
packet is to occur. Using the DA to encode this alternate marking
processing means that it is easy to retrofit into existing devices
and models. There is no need to replace existing IPv6 forwarding
devices, because they already support DA based forwarding.
2.3. IPv6 Flow Label as Marking Field
There are few other drawbacks to use Flow Label instead of an EH
solution or IPv6 Addresses for IPv6 alternate marking:
o easier backward compatibility because nothing breaks if a transit
router does not have the capability of understanding the Flow
Label context (in that case the flow-label in the outer tunnel
header is just a flow-label).
o having a EH seems less backward compatible, and will be less easy
to use unless ALL routers in the domain support these type of
headers.
o using DA for marking seems expensive.
o For most of the routers the support nearly comes for free.
o Less bits on the wire (going SRv6 has already a significant bits-
on-wire tax because of the outer IPv6 header and the SRv6 EH).
So, using the flow-label in the outer IPv6 tunnel header (e.g. SRv6
header) gives some benefits. The flow-label as marking field, is
basically something that routers can do right now, and it does not
break any IPv6 rules and is expected to be supported by the routers
by default. Indeed the solution proposed in the draft, is for the
moment assumed to be exclusive from other usages (with exception of
entropy) of the flow-label in the controlled operator domain.
Currently, network operators traditionally do not use flow-label at
all, hence the above assumption seems reasonable.
So, the application of the Alternate Marking method in a managed and
controlled domain could be realised with two fundamental assumptions:
o The original flow-label reconstructed when leaving the controlled
domain.
Fioccola, et al. Expires August 30, 2018 [Page 4]
Internet-Draft IPv6 PM with AMM February 2018
o The usage of IPv6 tunnels (IPv6inIPv6, IPSec, IPv6 UDP, etc..) or
SRv6 policies.
The Figure 1 displays format of the possible Mark Field (2 bits from
20 bit IPv6 flow-label field).
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flow Label | MF|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Mark Field (MF) is:
0
0 1
+-+-+-+-+
| S | D |
+-+-+-+-+
Figure 1: Mark field format
where:
o S - Single mark method;
o D - Double mark method.
The use of the other 18 bits is not specified in this document
because is out of scope here. But it should follow [RFC6437], where
flow-label based load balancing, ECMP or LAG is described. The
methodology SHOULD be used within a controlled domain where the load-
balancing based on flow label is disabled. Otherwise, the network
elements MUST mask the Mark Field (MF), so it will not change hashing
calculation for the same flow because only 18 bits + 2 zeros can be
used for the entropy.
In this case, the controlled domain reflects to the fact that it is a
network operator choice that grabs control of packet handling within
its own network. The network operator adds through policy the outer
SRv6 header and has in fact three options regarding flow label:
1) Just do not do anything with Flow Label (leave it default).
2) Alternate marking only and NO usage of entropy.
3) Alternate marking and entropy (in this case the entropy SHOULD
be based upon 18 bits instead of 20 bits because otherwise paths
Fioccola, et al. Expires August 30, 2018 [Page 5]
Internet-Draft IPv6 PM with AMM February 2018
may be changed when the marking changes (e.g. periods of 5 minutes
per marking period). This is however not a MUST because some
operators do not care if because of marking change.
The closed system here is defined by the IPv6 Tunnel or SRv6, in
particular it is the network between the head-end (where the outer
header is added) and the tail-end (where the outer header is
removed).
2.3.1. IPv6 Tunnel Use Case
The ingress router is the "source" of the IPv6 tunnel and impose the
OUTER IPv6 header, so Ingress router can control 2 bits (Mark Field)
from 20 bit flow-label field of OUTER IPv6 header. The Egress router
removes OUTER IPv6 header, restoring ORIGINAL payload and payload
headers (IPv6, IPv4, L2 traffic, MBH, etc...).
The flow-label is set "only" by the tunnel head-end router on the
outer IPv6 header. The tunnel head-end router can do this because it
is the device that created the outer header. The original IPv6
packet is riding inside the tunnel, and as result the original flow-
label and original IPv6 header is left untouched.
2.3.2. SRv6 Use Case
When IPv6 SRv6 Encapsulation is used, the outer SRv6 header uses 2
bits (Mark Field) from 20 bit flow-label field. Outer SRv6 header
will be removed when exiting the SP domain and the original flow-
label is restored at egress.
The flow label of the original packet is untouched. The flow label
that is set in this proposal is done at the SRv6 tunnel head-end
which imposes the SRv6 encapsulation header. So basically, it is
just the SRv6 tunnel outer encap header which is used for alternate
marking. And this is set only one time by the original SRv6 tunnel
head-end router (which is the source address of the IPv6 SRv6
tunnel). This outer SRv6 header is removed when the packet exits the
SRv6 domain, and the original flow label appears again untouched.
So, in this proposal there is no device which is changing flow-labels
at all. It is only during the imposing of the SRv6 outer header,
that the flow label field is set once for Alternate marking purposes
inside the outer SRv6 tunnel header.
3. Alternate Marking Method Operation
[RFC8321] describes in detail the methodology, that we briefly
illustrate also here.
Fioccola, et al. Expires August 30, 2018 [Page 6]
Internet-Draft IPv6 PM with AMM February 2018
3.1. Single Mark Measurement
As explained in the [RFC8321], marking can be applied to delineate
blocks of packets based either on equal number of packets in a block
or based on equal time interval. The latter method offers better
control as it allows better account for capabilities of downstream
nodes to report statistics related to batches of packets and, at the
same time, time resolution that affects defect detection interval.
If the Single Mark measurement used, then the D flag MUST be set to
zero on transmit and ignored by monitoring point.
The S flag is used to create alternate flows to measure the packet
loss by switching value of the S flag. Delay metrics MAY be
calculated with the alternate flow using any of the following
methods:
o First/Last Batch Packet Delay calculation: timestamps are
collected based on order of arrival so this method is sensitive to
packet loss and re-ordering.
o Average Packet Delay calculation: an average delay is calculated
by considering the average arrival time of the packets within a
single block. This method only provides single metric for the
duration of the block and it doesn't give information about the
delay distribution.
3.2. Double Mark Measurement
Double Mark method allows more detailed measurement of delays for the
monitored flow but it requires more nodal and network resources. If
the Double Mark method used, then the S flag MUST be used to create
the alternate flow. The D flag MUST be used to mark single packets
to measure delay jitter.
The first marking (S flag alternation) is needed for packet loss and
also for average delay measurement. The second marking (D flag is
put to one) creates a new set of marked packets that are fully
identified and dedicated for delay. This method is useful to have
not only the average delay but also to know more about the statistic
distribution of delay values.
4. Security Considerations
tbc
Fioccola, et al. Expires August 30, 2018 [Page 7]
Internet-Draft IPv6 PM with AMM February 2018
5. Acknowledgements
The authors would like to thank Brian Carpenter, Fred Baker, Tom
Herbert, Mark Smith, Joel Halpern, Fernando Gont, Xiaohu Xu and Joel
Jaeggli for their comments and feedbacks.
6. IANA Considerations
7. References
7.1. Normative References
[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>.
7.2. Informative References
[RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", RFC 2460, DOI 10.17487/RFC2460,
December 1998, <https://www.rfc-editor.org/info/rfc2460>.
[RFC6294] Hu, Q. and B. Carpenter, "Survey of Proposed Use Cases for
the IPv6 Flow Label", RFC 6294, DOI 10.17487/RFC6294, June
2011, <https://www.rfc-editor.org/info/rfc6294>.
[RFC6436] Amante, S., Carpenter, B., and S. Jiang, "Rationale for
Update to the IPv6 Flow Label Specification", RFC 6436,
DOI 10.17487/RFC6436, November 2011,
<https://www.rfc-editor.org/info/rfc6436>.
[RFC6437] Amante, S., Carpenter, B., Jiang, S., and J. Rajahalme,
"IPv6 Flow Label Specification", RFC 6437,
DOI 10.17487/RFC6437, November 2011,
<https://www.rfc-editor.org/info/rfc6437>.
[RFC6438] Carpenter, B. and S. Amante, "Using the IPv6 Flow Label
for Equal Cost Multipath Routing and Link Aggregation in
Tunnels", RFC 6438, DOI 10.17487/RFC6438, November 2011,
<https://www.rfc-editor.org/info/rfc6438>.
[RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", STD 86, RFC 8200,
DOI 10.17487/RFC8200, July 2017,
<https://www.rfc-editor.org/info/rfc8200>.
Fioccola, et al. Expires August 30, 2018 [Page 8]
Internet-Draft IPv6 PM with AMM February 2018
[RFC8250] Elkins, N., Hamilton, R., and M. Ackermann, "IPv6
Performance and Diagnostic Metrics (PDM) Destination
Option", RFC 8250, DOI 10.17487/RFC8250, September 2017,
<https://www.rfc-editor.org/info/rfc8250>.
[RFC8321] Fioccola, G., Ed., Capello, A., Cociglio, M., Castaldelli,
L., Chen, M., Zheng, L., Mirsky, G., and T. Mizrahi,
"Alternate-Marking Method for Passive and Hybrid
Performance Monitoring", RFC 8321, DOI 10.17487/RFC8321,
January 2018, <https://www.rfc-editor.org/info/rfc8321>.
Authors' Addresses
Giuseppe Fioccola
Telecom Italia
Torino
Italy
Email: giuseppe.fioccola@telecomitalia.it
Gunter Van de Velde
Nokia
Antwerp
BE
Email: gunter.van_de_velde@nokia.com
Mauro Cociglio
Telecom Italia
Torino
Italy
Email: mauro.cociglio@telecomitalia.it
Praveen Muley
Nokia
Mountain View
USA
Email: praveen.muley@nokia.com
Fioccola, et al. Expires August 30, 2018 [Page 9]