draft-ietf-ippm-route-01.txt   draft-ietf-ippm-route-02.txt 
Network Working Group J. Alvarez-Hamelin Network Working Group J. Alvarez-Hamelin
Internet-Draft Universidad de Buenos Aires Internet-Draft Universidad de Buenos Aires
Updates: 2330 (if approved) A. Morton Updates: 2330 (if approved) A. Morton
Intended status: Standards Track AT&T Labs Intended status: Standards Track AT&T Labs
Expires: August 20, 2018 J. Fabini Expires: January 3, 2019 J. Fabini
TU Wien TU Wien
C. Pignataro C. Pignataro
Cisco Systems, Inc. Cisco Systems, Inc.
February 16, 2018 July 2, 2018
Advanced Unidirectional Route Assessment (AURA) Advanced Unidirectional Route Assessment (AURA)
draft-ietf-ippm-route-01 draft-ietf-ippm-route-02
Abstract Abstract
This memo introduces an advanced unidirectional route assessment This memo introduces an advanced unidirectional route assessment
(AURA) metric and associated measurement methodology, based on the IP (AURA) metric and associated measurement methodology, based on the IP
Performance Metrics (IPPM) Framework RFC 2330. This memo updates RFC Performance Metrics (IPPM) Framework RFC 2330. This memo updates RFC
2330 in the areas of path-related terminology and path description, 2330 in the areas of path-related terminology and path description,
primarily to include the possibility of parallel subpaths between a primarily to include the possibility of parallel subpaths between a
given Source and Destination pair, owing to the presence of multi- given Source and Destination pair, owing to the presence of multi-
path technologies. path technologies.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
document are to be interpreted as described in RFC 2119 [RFC2119]. "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.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on August 20, 2018. This Internet-Draft will expire on January 3, 2019.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2018 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Issues with Earlier Work to define Route . . . . . . . . 3 1.1. Issues with Earlier Work to define Route . . . . . . . . 3
2. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Route Metric Terms and Definitions . . . . . . . . . . . . . 5 3. Route Metric Terms and Definitions . . . . . . . . . . . . . 5
3.1. Formal Name . . . . . . . . . . . . . . . . . . . . . . . 5 3.1. Formal Name . . . . . . . . . . . . . . . . . . . . . . . 6
3.2. Parameters . . . . . . . . . . . . . . . . . . . . . . . 6 3.2. Parameters . . . . . . . . . . . . . . . . . . . . . . . 6
3.3. Metric Definitions . . . . . . . . . . . . . . . . . . . 7 3.3. Metric Definitions . . . . . . . . . . . . . . . . . . . 7
3.4. Related Round-Trip Delay and Loss Definitions . . . . . . 8 3.4. Related Round-Trip Delay and Loss Definitions . . . . . . 8
3.5. Discussion . . . . . . . . . . . . . . . . . . . . . . . 9 3.5. Discussion . . . . . . . . . . . . . . . . . . . . . . . 9
3.6. Reporting the Metric . . . . . . . . . . . . . . . . . . 10 3.6. Reporting the Metric . . . . . . . . . . . . . . . . . . 9
4. Route Assessment Methodologies . . . . . . . . . . . . . . . 10 4. Route Assessment Methodologies . . . . . . . . . . . . . . . 10
4.1. Active Methodologies . . . . . . . . . . . . . . . . . . 10 4.1. Active Methodologies . . . . . . . . . . . . . . . . . . 10
4.2. Hybrid Methodologies . . . . . . . . . . . . . . . . . . 12 4.1.1. Temporal Composition for Route Metrics . . . . . . . 12
4.3. Combining Different Methods . . . . . . . . . . . . . . . 12 4.1.2. Routing Class C Identification . . . . . . . . . . . 13
5. Background on Round-Trip Delay Measurement Goals . . . . . . 13 4.2. Hybrid Methodologies . . . . . . . . . . . . . . . . . . 14
6. Tools to Measure Delays in the Internet . . . . . . . . . . . 14 4.3. Combining Different Methods . . . . . . . . . . . . . . . 15
7. RTD Measurements Statistics . . . . . . . . . . . . . . . . . 15 5. Background on Round-Trip Delay Measurement Goals . . . . . . 16
8. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 17 6. Tools to Measure Delays in the Internet . . . . . . . . . . . 16
9. Security Considerations . . . . . . . . . . . . . . . . . . . 17 7. RTD Measurements Statistics . . . . . . . . . . . . . . . . . 18
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 8. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 19
11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 17 9. Security Considerations . . . . . . . . . . . . . . . . . . . 19
12. References . . . . . . . . . . . . . . . . . . . . . . . . . 18 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20
12.1. Normative References . . . . . . . . . . . . . . . . . . 18 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20
12.2. Informative References . . . . . . . . . . . . . . . . . 20 12. Appendix I MPLS Methods for Route Assessment . . . . . . . . 20
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 21
13.1. Normative References . . . . . . . . . . . . . . . . . . 21
13.2. Informative References . . . . . . . . . . . . . . . . . 24
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 25
1. Introduction 1. Introduction
The IETF IP Performance Metrics (IPPM) working group first created a The IETF IP Performance Metrics (IPPM) working group first created a
framework for metric development in [RFC2330]. This framework has framework for metric development in [RFC2330]. This framework has
stood the test of time and enabled development of many fundamental stood the test of time and enabled development of many fundamental
metrics. It has been updated in the area of metric composition metrics. It has been updated in the area of metric composition
[RFC5835], and in several areas related to active stream measurement [RFC5835], and in several areas related to active stream measurement
of modern networks with reactive properties [RFC7312]. of modern networks with reactive properties [RFC7312].
skipping to change at page 3, line 19 skipping to change at page 3, line 25
reliability metrics for paths through the Internet," and Section 5 of reliability metrics for paths through the Internet," and Section 5 of
[RFC2330] defines terms that support description of a path under [RFC2330] defines terms that support description of a path under
test. However, metrics for assessment of path components and related test. However, metrics for assessment of path components and related
performance aspects had not been attempted in IPPM when the [RFC2330] performance aspects had not been attempted in IPPM when the [RFC2330]
framework was written. framework was written.
This memo takes-up the route measurement challenge and specifies a This memo takes-up the route measurement challenge and specifies a
new route metric, two practical frameworks for methods of measurement new route metric, two practical frameworks for methods of measurement
(using either active or hybrid active-passive methods [RFC7799]), and (using either active or hybrid active-passive methods [RFC7799]), and
round-trip delay and link information discovery using the results of round-trip delay and link information discovery using the results of
measurements. measurements. All route measurements are limited by the willingness
of hosts along the path to be discovered, to cooperate with the
methods used, or to recognize that the measurement operation is
taking place (such as when tunnels are present).
1.1. Issues with Earlier Work to define Route 1.1. Issues with Earlier Work to define Route
Section 7 of [RFC2330] presented a simple example of a "route" metric Section 7 of [RFC2330] presented a simple example of a "route" metric
along with several other examples. The example is reproduced below along with several other examples. The example is reproduced below
(where the reference is to Section 5 of [RFC2330]): (where the reference is to Section 5 of [RFC2330]):
"route: The path, as defined in Section 5, from A to B at a given "route: The path, as defined in Section 5, from A to B at a given
time." time."
skipping to change at page 4, line 27 skipping to change at page 4, line 36
2. Scope 2. Scope
The purpose of this memo is to add new route metrics and methods of The purpose of this memo is to add new route metrics and methods of
measurement to the existing set of IPPM metrics. measurement to the existing set of IPPM metrics.
The scope is to define route metrics that can identify the path taken The scope is to define route metrics that can identify the path taken
by a packet or a flow traversing the Internet between two hosts. by a packet or a flow traversing the Internet between two hosts.
Although primarily intended for hosts communicating on the Internet Although primarily intended for hosts communicating on the Internet
with IP, the definitions and metrics are constructed to be applicable with IP, the definitions and metrics are constructed to be applicable
to other network domains, if desired. to other network domains, if desired. The methods of measurement to
assess the path may not be able to discover all hosts comprising the
path, but such omissions are often deterministic and explainable
sources of error.
Also, to specify a framework for active methods of measurement which Also, to specify a framework for active methods of measurement which
use the techniques described in [PT] at a minimum, and a framework use the techniques described in [PT] at a minimum, and a framework
for hybrid active-passive methods of measurement, such as the Hybrid for hybrid active-passive methods of measurement, such as the Hybrid
Type I method [RFC7799] described in Type I method [RFC7799] described in
[I-D.ietf-ippm-ioam-data](intended only for single administrative [I-D.ietf-ippm-ioam-data](intended only for single administrative
domains), which do not rely on ICMP and provide a protocol for domains), which do not rely on ICMP and provide a protocol for
explicit interrogation of nodes on a path. Combinations of active explicit interrogation of nodes on a path. Combinations of active
methods and hybrid active-passive methods are also in-scope. methods and hybrid active-passive methods are also in-scope.
skipping to change at page 5, line 5 skipping to change at page 5, line 17
This memo updates Section 5 of [RFC2330] in the areas of path-related This memo updates Section 5 of [RFC2330] in the areas of path-related
terminology and path description, primarily to include the terminology and path description, primarily to include the
possibility of parallel subpaths between a given Source and possibility of parallel subpaths between a given Source and
Destination address pair (possibly resulting from Equal Cost Multi- Destination address pair (possibly resulting from Equal Cost Multi-
Path (ECMP) and Unequal Cost Multi-Path (UCMP) technologies). Path (ECMP) and Unequal Cost Multi-Path (UCMP) technologies).
There are several simple non-goals of this memo. There is no attempt There are several simple non-goals of this memo. There is no attempt
to assess the reverse path from any host on the path to the host to assess the reverse path from any host on the path to the host
attempting the path measurement. The reverse path contribution to attempting the path measurement. The reverse path contribution to
delay will be that experienced by ICMP packets (in active methods), delay will be that experienced by ICMP packets (in active methods),
and may be different from UDP or TCP packets. Also, the round trip and may be different from delays experienced by UDP or TCP packets.
delay will include an unknown contribution of processing time at the Also, the round trip delay will include an unknown contribution of
host that generates the ICMP response. Therefore, the ICMP-based processing time at the host that generates the ICMP response.
active methods are not supposed to yield accurate, reproducible Therefore, the ICMP-based active methods are not supposed to yield
estimations of the round-trip delay that UDP or TCP packets will accurate, reproducible estimations of the round-trip delay that UDP
experience. or TCP packets will experience.
3. Route Metric Terms and Definitions 3. Route Metric Terms and Definitions
This section sets requirements for the following components to This section sets requirements for the following components to
support the Route Metric: support the Route Metric:
Host Identity The unique address for hosts communicating within the Host Identity The unique address for hosts communicating within the
network domain. For hosts communicating on the Internet with IP, network domain. For hosts communicating on the Internet with IP,
it is the globally routable IP address(es) which the host uses it is the globally routable IP address(es) which the host uses
when communicating with other hosts under normal or error when communicating with other hosts under normal or error
skipping to change at page 6, line 16 skipping to change at page 6, line 27
This section lists the REQUIRED input factors to specify a Route This section lists the REQUIRED input factors to specify a Route
metric. metric.
o Src, the address of a host (such as the globally routable IP o Src, the address of a host (such as the globally routable IP
address). address).
o Dst, the address of a host (such as the globally routable IP o Dst, the address of a host (such as the globally routable IP
address). address).
o i, the limit on the number of Hops a packet may visit as it o i, the limit on the number of Hops a specific packet may visit as
traverses from the host at Src to the host at Dst (such as the TTL it traverses from the host at Src to the host at Dst (such as the
or Hop Limit). TTL or Hop Limit).
o MaxHops, the maximum value of i used, (i=1,2,3,...MaxHops). o MaxHops, the maximum value of i used, (i=1,2,3,...MaxHops).
o T0, a time (start of measurement interval) o T0, a time (start of measurement interval)
o Tf, a time (end of measurement interval) o Tf, a time (end of measurement interval)
o T, the host time of a packet as measured at MP(Src), meaning o T, the host time of a packet as measured at MP(Src), meaning
Measurement Point at the Source. Measurement Point at the Source.
o Ta, the host time of a reply packet's *arrival* as measured at o Ta, the host time of a reply packet's *arrival* as measured at
MP(Src), assigned to packets that arrive within a "reasonable" MP(Src), assigned to packets that arrive within a "reasonable"
time (see parameter below). time (see parameter below).
o Tmax, a maximum waiting time for reply packets to return to the o Tmax, a maximum waiting time for reply packets to return to the
source, set sufficiently long to disambiguate packets with long source, set sufficiently long to disambiguate packets with long
delays from packets that are discarded (lost), thus the delays from packets that are discarded (lost), such that the
distribution of delay is not truncated. distribution of round-trip delay is not truncated.
o F, the number of different flows simulated by the method and o F, the number of different flows simulated by the method and
variant. variant.
o flow, the stream of packets with the same n-tuple of designated o flow, the stream of packets with the same n-tuple of designated
header fields that (when held constant) results in identical header fields that (when held constant) result in identical
treatment in a multi-path decision (such as that taken in load treatment in a multi-path decision (such as the decision taken in
balancing). load balancing).
o Type-P, the complete description of the packets for which this o Type-P, the complete description of the packets for which this
assessment applies (including the flow-defining fields). assessment applies (including the flow-defining fields).
3.3. Metric Definitions 3.3. Metric Definitions
This section defines the REQUIRED measurement components of the Route This section defines the REQUIRED measurement components of the Route
metrics (unless otherwise indicated): metrics (unless otherwise indicated):
M, the total number of packets sent between T0 and Tf. M, the total number of packets sent between T0 and Tf.
skipping to change at page 9, line 29 skipping to change at page 9, line 33
o If a discovered host always replies using the same network o If a discovered host always replies using the same network
address, regardless of the interface a packet arrives on, then address, regardless of the interface a packet arrives on, then
multiple parallel links cannot be detected in that network domain. multiple parallel links cannot be detected in that network domain.
o If parallel links between routers are aggregated below the IP o If parallel links between routers are aggregated below the IP
layer, In other words, all links share the same pair of IP layer, In other words, all links share the same pair of IP
addresses, then the existence of these parallel links can't be addresses, then the existence of these parallel links can't be
detected at IP layer. This applies to other network domains with detected at IP layer. This applies to other network domains with
layers below them, as well. layers below them, as well.
Section 9.2 of [RFC2330] describes Temporal Composition of metrics, @@@@ This paragraph on Temporal Composition moved to support a more
and introduces the possibility of a relationship between earlier complete section on Methodology (section 4).
measurement results and the results for measurement at the current
time (for a given metric). If this topic is investigated further,
there may be some value in establishing a Temporal Composition
relationship for Route Metrics. However, this relationship does not
represent a forecast of future route conditions in any way.
When a route assessment employs IP packets (for example), the reality When a route assessment employs IP packets (for example), the reality
of flow assignment to parallel subpaths involves layers above IP. of flow assignment to parallel subpaths involves layers above IP.
Thus, the measured Route Ensemble is applicable to IP and higher Thus, the measured Route Ensemble is applicable to IP and higher
layers (as described in the methodology's packet of Type-P and flow layers (as described in the methodology's packet of Type-P and flow
parameters). parameters).
@@@@ Editor's Note: There is an opportunity to investigate and @@@@ The Temporal Measurement and Route Class C (unrelated to address
discuss the RFC 2330 notion of equal treatment for a class of classes of the past) is now partly addressed in Section 4.
packets, "...very useful to know if a given Internet component treats
equally a class C of different types of packets", as it applies to
Route measurements. Knowledge of "class C" parameters on a path
potentially reduces the number of flows required for a given method.
3.6. Reporting the Metric 3.6. Reporting the Metric
@@@@ to be provided @@@@ now partly addressed, based on feedback at IETF-101:
An Information Model and an XML Data Model for Storing Traceroute
Measurements is available in [RFC5388]. The measured information at
each hop includes four pieces of information: a one-dimensional hop
index, host symbolic address, host IP address, and RTD for each
response.
The description of Hop information that may be collected according to
this memo covers more dimensions, as defined in Section 3.3 above.
For example, the Hop index is two-dimensional to capture the
complexity of a Route Ensemble, and it contains corresponding host
identities at a minimum. The models need to be expanded to include
these features, as well as Arrival Interface ID, Departure Interface
ID, and Arrival Timestamp, when available.
@@@@ can we leave updates to RFC 5388 for further work? Or, do we
need to take-on this topic in an Appendix here?
4. Route Assessment Methodologies 4. Route Assessment Methodologies
There are two classes of methods described in this section, active There are two classes of methods described in this section, active
methods relying on the reaction to TTL or Hop Limit Exceeded methods relying on the reaction to TTL or Hop Limit Exceeded
condition to discover hosts on a path, and Hybrid active-passive condition to discover hosts on a path, and Hybrid active-passive
methods that involve direct interrogation of cooperating hosts methods that involve direct interrogation of cooperating hosts
(usually within a single domain). Description of these methods (usually within a single domain). Description of these methods
follow. follow.
@@@@ Editor's Note: We need to incorporate description of Type-P @@@@ Editor's Note: We need to incorporate description of Type-P
packets (with the flow parameters) used in each method below. packets (with the flow parameters) used in each method below (done
for Active).
4.1. Active Methodologies 4.1. Active Methodologies
We have chosen to describe the method based on that employed in We have chosen to describe the method based on that employed in
current open source tools, thereby providing a practical framework current open source tools, thereby providing a practical framework
for further advanced techniques to be included as method variants. for further advanced techniques to be included as method variants.
This method is applicable to use across multiple administrative This method is applicable to use across multiple administrative
domains. domains.
Paris-traceroute [PT] provides some measure of protection from path Paris-traceroute [PT] provides some measure of protection from path
variation generated by ECMP load balancing, and it ensures traceroute variation generated by ECMP load balancing, and it ensures traceroute
packets will follow the same path in 98% of cases according to packets will follow the same path in 98% of cases according to
[SCAMPER]. If it is necessary to find every path possible between [SCAMPER]. If it is necessary to find every path possible between
two hosts, Paris-traceroute provides "exhaustive" mode while scamper two hosts, Paris-traceroute provides "exhaustive" mode while scamper
provides "tracelb" (stands for traceroute load balance). provides "tracelb" (stands for traceroute load balance).
The Type-P of packets used could be ICMP (as ones in the original The Type-P of packets used could be ICMP (as in the original
traceroute), UDP and TCP. The later are used when a particular traceroute), UDP or TCP. The later are used when a particular
characteristic is needed to verify, such as filtering or traffic characteristic needs to be to verified, such as filtering or traffic
shaping on specific ports (i.e., services). shaping on specific ports (i.e., services). [SCAMPER] supports IPv6
traceroute measurements, keeping the FlowLable constant in all
packets.
The advanced route assessment methods used in Paris-traceroute [PT] The advanced route assessment methods used in Paris-traceroute [PT]
keep the critical fields constant for every packet to maintain the keep the critical fields constant for every packet to maintain the
appearance of the same flow. Since route assessment can be conducted appearance of the same flow. Since route assessment can be conducted
using TCP, UDP or ICMP packets, this method REQUIRES the Diffserv using TCP, UDP or ICMP packets, this method REQUIRES the Diffserv
field, the protocol number, IP source and destination addresses, and field, the protocol number, IP source and destination addresses, and
the port settings for TCP or UDP kept constant. For ICMP probes, the the port settings for TCP or UDP kept constant. For ICMP probes, the
method additionally REQUIRES the type, code, and ICMP checksum method additionally REQUIRES keeping the type, code, and ICMP
constant; which take the same position in the header of an IP packet, checksum constant; which occupy the corresponding positions in the
e.g., bytes 20 to 23 when the header IP has no options. header of an IP packet, e.g., bytes 20 to 23 when the header IP has
no options.
Maintaining a constant checksum in ICMP is most challenging because Maintaining a constant checksum in ICMP is most challenging because
the ICMP Sequence Number is part of the calculation. The advanced the ICMP Sequence Number is part of the calculation. The advanced
traceroute method requires calculations using the IP Sequence Number traceroute method requires calculations using the IP Sequence Number
Field and the Identifier Field, yielding a constant ICMP checksum in Field and the Identifier Field, yielding a constant ICMP checksum in
successive packets. For an example of calculations to maintain a successive packets. For an example of calculations to maintain a
constant checksum, see Appendix A of [RFC7820], where revision of a constant checksum, see Appendix A of [RFC7820], where revision of a
timestamp field is complemented by modifying the 2 octet checksum timestamp field is complemented by modifying the 2 octet checksum
complement field (these fields take the roles of the ICMP Sequence complement field (these fields take the roles of the ICMP Sequence
Number Identifier Fields, respectively). Number and Identifier Fields, respectively).
For TCP and UDP packets, the checksum must also be kept constant. For TCP and UDP packets, the checksum must also be kept constant.
Therefore, the first four bytes of UDP (or TCP) data field are Therefore, the first four bytes of UDP (or TCP) data field are
modified to compensate for fields that change from packet to packet. modified to compensate for fields that change from packet to packet.
Note: other variants of advanced traceroute are planned be described. @@@@ Note: other variants of advanced traceroute are planned be
described.
Finally, the return path is also important to check. Taking into Finally, the return path is also important to check. Taking into
account that it is an ICMP time exceeded (during transit) packet, the account that it is an ICMP time exceeded (during transit) packet, the
source and destination IP are constant for every reply. Then, we source and destination IP are constant for every reply. Then, we
should consider the fields in the first 32 bits of the protocol on should consider the fields in the first 32 bits of the protocol on
the top of IP: the type and code of ICMP packet, and its checksum. the top of IP: the type and code of ICMP packet, and its checksum.
Again, to maintain the ICMP checksum constant for the returning Again, to maintain the ICMP checksum constant for the returning
packets, we need to consider the whole ICMP message. It contains the packets, we need to consider the whole ICMP message. It contains the
IP header of the discarded packet plus the first 8 bytes of the IP IP header of the discarded packet plus the first 8 bytes of the IP
payload; that is some of the fields of TCP header, the UDP header payload; that is some of the fields of TCP header, the UDP header
skipping to change at page 12, line 14 skipping to change at page 12, line 28
Then, the way to identify different hops and attempts of the same Then, the way to identify different hops and attempts of the same
flow is: flow is:
o TCP case: The IP identification field. o TCP case: The IP identification field.
o UDP case: The IP identification field. o UDP case: The IP identification field.
o ICMP case: The IP identification field, and ICMP Sequence number. o ICMP case: The IP identification field, and ICMP Sequence number.
4.1.1. Temporal Composition for Route Metrics
The Active Route Assessment Methods described above have the ability
to discover portions of a path where ECMP load balancing is present,
observed as two or more unique Member Routes having one or more
distinct Hops which are part of the Route Ensemble. Likewise,
attempts to deliberately vary the flow characteristics to discover
all Member Routes will reveal portions of the path which are flow-
invariant.
Section 9.2 of [RFC2330] describes Temporal Composition of metrics,
and introduces the possibility of a relationship between earlier
measurement results and the results for measurement at the current
time (for a given metric). There is value in establishing a Temporal
Composition relationship for Route Metrics. However, this
relationship does not represent a forecast of future route conditions
in any way.
For Route Metric measurements, the value of Temporal Composition is
to reduce the measurement iterations required with repeated
measurements. Reduced iterations are possible by inferring that
current measurements using fixed and previously measured flow
characteristics:
o will have many common hops with previous measurements.
o will have relatively time-stable results at the ingress and egress
portions of the path when measured from user locations, as opposed
to measurements of backbone networks and across inter-domain
gateways.
o may have greater potential for time-variation in path portions
where ECMP load balancing is observed (because increasing or
decreasing the pool of links changes the hash calculations).
Optionally, measurement systems may take advantage of the inferences
above when seeking to reduce measurement iterations, after exhaustive
measurements indicate that the time-stable properties are present.
Repetitive Active Route measurement systems:
1. SHOULD occasionally check path portions which have exhibited
stable results over time, particularly ingress and egress
portions of the path.
2. SHOULD continue testing portions of the path that have previously
exhibited ECMP load balancing.
3. SHALL trigger re-assessment of the complete path and Route
Ensemble, if any change in hops is observed for a specific (and
previously tested) flow.
@@@@ Comments on this new material are very welcome!
4.1.2. Routing Class C Identification
There is an opportunity to apply the [RFC2330] notion of equal
treatment for a class of packets, "...very useful to know if a given
Internet component treats equally a class C of different types of
packets", as it applies to Route measurements. Knowledge of "class
C" parameters (unrelated to address classes of the past) on a path
potentially reduces the number of flows required for a given method
to assess a Route Ensemble over time.
First, recognize that each Member Route of a Route Ensemble will have
a corresponding Routing Class C. Class C can be discovered by
testing with multiple flows, all of which traverse the unique set of
hops that comprise a specific Member Route.
Second, recognize that the different Routing Classes depend primarily
on the hash functions used at each instance of ECMP load balancing on
the path.
Third, recognize the synergy with Temporal Composition methods
(described above) where evaluation intends to discover time-stable
portions of each Member Route so that more emphasis can be placed on
ECMP portions that also determine Class C.
The methods to assess the various Routing Class C characteristics
benefit from the following measurement capabilities:
o flows designed to determine which n-tuple header fields are
considered by a given hash function and ECMP hop on the path, and
which are not. This operation immediately narrows the search
space, where possible, and partially defines a Routing Class C.
o a priori knowledge of the possible types of hash functions in use
also helps to design the flows for testing (major router vendors
publish information about these hash functions, examples are here
https://www.researchgate.net/
publication/281571413_COMPARISON_OF_HASH_STRATEGIES_FOR_FLOW-
BASED_LOAD_BALANCING ).
o ability to direct the emphasis of current measurements on ECMP
portions of the path, based on recent past measurement results
(the Class C of some portions of the path is essentially "all
packets").
@@@@ Comments on this new material are very welcome! Especially
suggestions for tools that might lend themselves to support these
measurements.
4.2. Hybrid Methodologies 4.2. Hybrid Methodologies
The Hybrid Type I methods provide an alternative method for Route The Hybrid Type I methods provide an alternative method for Route
Member assessment. As mentioned in the Scope section, Member assessment. As mentioned in the Scope section,
[I-D.ietf-ippm-ioam-data] provides a possible set of data fields that [I-D.ietf-ippm-ioam-data] provides a possible set of data fields that
would support route identification. would support route identification.
In general, nodes in the measured domain would be equipped with In general, nodes in the measured domain would be equipped with
specific abilities: specific abilities:
skipping to change at page 17, line 41 skipping to change at page 20, line 16
whose traffic is measured, the sensitive information available to whose traffic is measured, the sensitive information available to
potential observers is greatly reduced when using active techniques potential observers is greatly reduced when using active techniques
which are within this scope of work. Passive observations of user which are within this scope of work. Passive observations of user
traffic for measurement purposes raise many privacy issues. We refer traffic for measurement purposes raise many privacy issues. We refer
the reader to the privacy considerations described in the Large Scale the reader to the privacy considerations described in the Large Scale
Measurement of Broadband Performance (LMAP) Framework [RFC7594], Measurement of Broadband Performance (LMAP) Framework [RFC7594],
which covers active and passive techniques. which covers active and passive techniques.
10. IANA Considerations 10. IANA Considerations
This memo makes no requests of IANA. This memo makes no requests of IANA. We thank the good folks at IANA
for having checked this section anyway.
11. Acknowledgements 11. Acknowledgements
The authors acknowledge Ruediger Geib, for his penetrating comments The original 3 authors acknowledge Ruediger Geib, for his penetrating
on the initial draft. Carlos Pignataro challenged the authors to comments on the initial draft, and his initial text for the
Appendix on MPLS. Carlos Pignataro challenged the authors to
consider a wider scope, and applied his substantial expertise with consider a wider scope, and applied his substantial expertise with
many technologies and their measurement features in his extensive many technologies and their measurement features in his extensive
comments. Frank Brockners also shared useful comments. We thank comments. Frank Brockners also shared useful comments. We thank
them all! them all!
12. References 12. Appendix I MPLS Methods for Route Assessment
12.1. Normative References A host assessing an MPLS path must be part of the MPLS domain where
the path is implemented. When this condition is met, RFC 8029
provides a powerful set of mechanisms to detect "correct operation of
the data plane, as well as a mechanism to verify the data plane
against the control plane" [RFC8029].
MPLS routing is based on the presence of a Forwarding Equivalence
Class (FEC) Stack in all visited hosts. Selecting one of several
Equal Cost Multi Path (ECMP) is however based on information hidden
deeper in the stack. Early deployments may support a so called
"Entropy label" for this purpose. State of the art deployments base
their choice of an ECMP member based on the IP addresses. Both
methods allow load sharing information to be decoupled from routing
information. Thus, an MPLS traceroute is able to check how packets
with a contiguous number of ECMP relevant addresses (and the same
destination) are routed by a particular router. The minimum number
of MPLS paths traceable at a router should be 32. Implementations
supporting more paths are available.
The MPLS echo request and reply messages offering this feature must
support the Downstream Detailed Mapping TLV (was Downstream Mapping
initially, but the latter has been deprecated). The MPLS echo
response includes the incoming interface where a router received the
MPLS Echo request. The MPLS Echo reply further informs which of the
n addresses relevant for the load sharing decision results in a
particular next hop interface and contains the next hop's interface
address (if available). This ensures that the next hop will receive
a properly coded MPLS Echo request in the next step route of
assessment.
RFC to be 8403 (draft-ietf-spring-oam-usecase-10) explains how a
central Path Monitoring System could be used to detect arbitrary MPLS
paths between any routers within a single MPLS domain. The
combination of MPLS forwarding, Segment Routing and MPLS traceroute
offers a simple architecture and a powerful mechanism to detect and
validate (segment routed) MPLS paths.
13. References
13.1. Normative References
[I-D.ietf-ippm-ioam-data] [I-D.ietf-ippm-ioam-data]
Brockners, F., Bhandari, S., Pignataro, C., Gredler, H., Brockners, F., Bhandari, S., Pignataro, C., Gredler, H.,
Leddy, J., Youell, S., Mizrahi, T., Mozes, D., Lapukhov, Leddy, J., Youell, S., Mizrahi, T., Mozes, D., Lapukhov,
P., Chang, R., and d. daniel.bernier@bell.ca, "Data Fields P., Chang, R., daniel.bernier@bell.ca, d., and J. Lemon,
for In-situ OAM", draft-ietf-ippm-ioam-data-01 (work in "Data Fields for In-situ OAM", draft-ietf-ippm-ioam-
progress), October 2017. data-03 (work in progress), June 2018.
[RFC0792] Postel, J., "Internet Control Message Protocol", STD 5, [RFC0792] Postel, J., "Internet Control Message Protocol", STD 5,
RFC 792, DOI 10.17487/RFC0792, September 1981, RFC 792, DOI 10.17487/RFC0792, September 1981,
<https://www.rfc-editor.org/info/rfc792>. <https://www.rfc-editor.org/info/rfc792>.
[RFC1122] Braden, R., Ed., "Requirements for Internet Hosts - [RFC1122] Braden, R., Ed., "Requirements for Internet Hosts -
Communication Layers", STD 3, RFC 1122, Communication Layers", STD 3, RFC 1122,
DOI 10.17487/RFC1122, October 1989, DOI 10.17487/RFC1122, October 1989,
<https://www.rfc-editor.org/info/rfc1122>. <https://www.rfc-editor.org/info/rfc1122>.
skipping to change at page 19, line 25 skipping to change at page 22, line 37
[RFC4656] Shalunov, S., Teitelbaum, B., Karp, A., Boote, J., and M. [RFC4656] Shalunov, S., Teitelbaum, B., Karp, A., Boote, J., and M.
Zekauskas, "A One-way Active Measurement Protocol Zekauskas, "A One-way Active Measurement Protocol
(OWAMP)", RFC 4656, DOI 10.17487/RFC4656, September 2006, (OWAMP)", RFC 4656, DOI 10.17487/RFC4656, September 2006,
<https://www.rfc-editor.org/info/rfc4656>. <https://www.rfc-editor.org/info/rfc4656>.
[RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J. [RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J.
Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)", Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)",
RFC 5357, DOI 10.17487/RFC5357, October 2008, RFC 5357, DOI 10.17487/RFC5357, October 2008,
<https://www.rfc-editor.org/info/rfc5357>. <https://www.rfc-editor.org/info/rfc5357>.
[RFC5388] Niccolini, S., Tartarelli, S., Quittek, J., Dietz, T., and
M. Swany, "Information Model and XML Data Model for
Traceroute Measurements", RFC 5388, DOI 10.17487/RFC5388,
December 2008, <https://www.rfc-editor.org/info/rfc5388>.
[RFC5644] Stephan, E., Liang, L., and A. Morton, "IP Performance [RFC5644] Stephan, E., Liang, L., and A. Morton, "IP Performance
Metrics (IPPM): Spatial and Multicast", RFC 5644, Metrics (IPPM): Spatial and Multicast", RFC 5644,
DOI 10.17487/RFC5644, October 2009, DOI 10.17487/RFC5644, October 2009,
<https://www.rfc-editor.org/info/rfc5644>. <https://www.rfc-editor.org/info/rfc5644>.
[RFC5835] Morton, A., Ed. and S. Van den Berghe, Ed., "Framework for [RFC5835] Morton, A., Ed. and S. Van den Berghe, Ed., "Framework for
Metric Composition", RFC 5835, DOI 10.17487/RFC5835, April Metric Composition", RFC 5835, DOI 10.17487/RFC5835, April
2010, <https://www.rfc-editor.org/info/rfc5835>. 2010, <https://www.rfc-editor.org/info/rfc5835>.
[RFC6282] Hui, J., Ed. and P. Thubert, "Compression Format for IPv6 [RFC6282] Hui, J., Ed. and P. Thubert, "Compression Format for IPv6
skipping to change at page 20, line 31 skipping to change at page 23, line 50
Measurement Protocol (TWAMP)", RFC 7820, Measurement Protocol (TWAMP)", RFC 7820,
DOI 10.17487/RFC7820, March 2016, DOI 10.17487/RFC7820, March 2016,
<https://www.rfc-editor.org/info/rfc7820>. <https://www.rfc-editor.org/info/rfc7820>.
[RFC8029] Kompella, K., Swallow, G., Pignataro, C., Ed., Kumar, N., [RFC8029] Kompella, K., Swallow, G., Pignataro, C., Ed., Kumar, N.,
Aldrin, S., and M. Chen, "Detecting Multiprotocol Label Aldrin, S., and M. Chen, "Detecting Multiprotocol Label
Switched (MPLS) Data-Plane Failures", RFC 8029, Switched (MPLS) Data-Plane Failures", RFC 8029,
DOI 10.17487/RFC8029, March 2017, DOI 10.17487/RFC8029, March 2017,
<https://www.rfc-editor.org/info/rfc8029>. <https://www.rfc-editor.org/info/rfc8029>.
12.2. Informative References [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>.
13.2. Informative References
[bdrmap] Luckie, M., Dhamdhere, A., Huffaker, B., Clark, D., and [bdrmap] Luckie, M., Dhamdhere, A., Huffaker, B., Clark, D., and
KC. Claffy, "bdrmap: Inference of Borders Between IP KC. Claffy, "bdrmap: Inference of Borders Between IP
Networks", In Proceedings of the 2016 ACM on Internet Networks", In Proceedings of the 2016 ACM on Internet
Measurement Conference, pp. 381-396. ACM, 2016. Measurement Conference, pp. 381-396. ACM, 2016.
[I-D.brockners-inband-oam-data] [I-D.brockners-inband-oam-data]
Brockners, F., Bhandari, S., Pignataro, C., Gredler, H., Brockners, F., Bhandari, S., Pignataro, C., Gredler, H.,
Leddy, J., Youell, S., Mizrahi, T., Mozes, D., Lapukhov, Leddy, J., Youell, S., Mizrahi, T., Mozes, D., Lapukhov,
P., Chang, R., and d. daniel.bernier@bell.ca, "Data Fields P., Chang, R., and d. daniel.bernier@bell.ca, "Data Fields
skipping to change at page 22, line 22 skipping to change at page 25, line 39
URI: http://cnet.fi.uba.ar/ignacio.alvarez-hamelin/ URI: http://cnet.fi.uba.ar/ignacio.alvarez-hamelin/
Al Morton Al Morton
AT&T Labs AT&T Labs
200 Laurel Avenue South 200 Laurel Avenue South
Middletown, NJ 07748 Middletown, NJ 07748
USA USA
Phone: +1 732 420 1571 Phone: +1 732 420 1571
Fax: +1 732 368 1192 Fax: +1 732 368 1192
Email: acmorton@att.com Email: acm@research.att.com
URI: http://home.comcast.net/~acmacm/
Joachim Fabini Joachim Fabini
TU Wien TU Wien
Gusshausstrasse 25/E389 Gusshausstrasse 25/E389
Vienna 1040 Vienna 1040
Austria Austria
Phone: +43 1 58801 38813 Phone: +43 1 58801 38813
Fax: +43 1 58801 38898 Fax: +43 1 58801 38898
Email: Joachim.Fabini@tuwien.ac.at Email: Joachim.Fabini@tuwien.ac.at
 End of changes. 32 change blocks. 
73 lines changed or deleted 247 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/