< draft-fioccola-rfc8889bis-02.txt   draft-fioccola-rfc8889bis-03.txt >
Network Working Group G. Fioccola, Ed. Network Working Group G. Fioccola, Ed.
Internet-Draft Huawei Technologies Internet-Draft Huawei Technologies
Obsoletes: 8889 (if approved) M. Cociglio Obsoletes: 8889 (if approved) M. Cociglio
Intended status: Standards Track Telecom Italia Intended status: Standards Track Telecom Italia
Expires: August 21, 2022 A. Sapio Expires: August 27, 2022 A. Sapio
Intel Corporation Intel Corporation
R. Sisto R. Sisto
Politecnico di Torino Politecnico di Torino
T. Zhou T. Zhou
Huawei Technologies Huawei Technologies
February 17, 2022 February 23, 2022
Multipoint Alternate-Marking Method Multipoint Alternate-Marking Method
draft-fioccola-rfc8889bis-02 draft-fioccola-rfc8889bis-03
Abstract Abstract
This document generalizes and expands Alternate-Marking methodology This document generalizes and expands Alternate-Marking methodology
to measure any kind of unicast flow whose packets can follow several to measure any kind of unicast flow whose packets can follow several
different paths in the network -- in wider terms, a multipoint-to- different paths in the network -- in wider terms, a multipoint-to-
multipoint network. For this reason, the technique here described is multipoint network. For this reason, the technique here described is
called "Multipoint Alternate Marking". This document obsoletes called "Multipoint Alternate Marking". This document obsoletes
[RFC8889]. [RFC8889].
skipping to change at page 1, line 42 skipping to change at page 1, line 42
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 21, 2022. This Internet-Draft will expire on August 27, 2022.
Copyright Notice Copyright Notice
Copyright (c) 2022 IETF Trust and the persons identified as the Copyright (c) 2022 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 . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 4 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 5
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1. Correlation with RFC 5644 . . . . . . . . . . . . . . . . 5 2.1. Correlation with RFC 5644 . . . . . . . . . . . . . . . . 6
3. Flow Classification . . . . . . . . . . . . . . . . . . . . . 6 3. Flow Classification . . . . . . . . . . . . . . . . . . . . . 6
4. Multipoint Performance Measurement . . . . . . . . . . . . . 9 4. Extension of the Method to Multipoint Flows . . . . . . . . . 9
4.1. Monitoring Network . . . . . . . . . . . . . . . . . . . 9 4.1. Monitoring Network . . . . . . . . . . . . . . . . . . . 9
5. Multipoint Packet Loss . . . . . . . . . . . . . . . . . . . 10 4.2. Network Packet Loss . . . . . . . . . . . . . . . . . . . 10
6. Network Clustering . . . . . . . . . . . . . . . . . . . . . 11 5. Network Clustering . . . . . . . . . . . . . . . . . . . . . 11
6.1. Algorithm for Clusters Partition . . . . . . . . . . . . 12 5.1. Algorithm for Clusters Partition . . . . . . . . . . . . 12
7. Timing Aspects . . . . . . . . . . . . . . . . . . . . . . . 16 6. Multipoint Packet Loss Measurement . . . . . . . . . . . . . 16
8. Multipoint Delay and Delay Variation . . . . . . . . . . . . 17 7. Multipoint Delay and Delay Variation . . . . . . . . . . . . 16
8.1. Delay Measurements on a Multipoint-Paths Basis . . . . . 18 7.1. Delay Measurements on a Multipoint-Paths Basis . . . . . 17
8.1.1. Single-Marking Measurement . . . . . . . . . . . . . 18 7.1.1. Single-Marking Measurement . . . . . . . . . . . . . 17
8.2. Delay Measurements on a Single-Packet Basis . . . . . . . 18 7.2. Delay Measurements on a Single-Packet Basis . . . . . . . 17
8.2.1. Single- and Double-Marking Measurement . . . . . . . 18 7.2.1. Single- and Double-Marking Measurement . . . . . . . 17
8.2.2. Hashing Selection Method . . . . . . . . . . . . . . 19 7.2.2. Hashing Selection Method . . . . . . . . . . . . . . 18
9. Results of the Multipoint Alternate Marking Experiment . . . 20 8. Synchronization and Timing . . . . . . . . . . . . . . . . . 19
9. Results of the Multipoint Alternate Marking Experiment . . . 21
10. A Closed-Loop Performance-Management Approach . . . . . . . . 21 10. A Closed-Loop Performance-Management Approach . . . . . . . . 21
11. Security Considerations . . . . . . . . . . . . . . . . . . . 22 11. Security Considerations . . . . . . . . . . . . . . . . . . . 23
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23
13. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 23 13. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 23
14. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 23 14. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 23
15. References . . . . . . . . . . . . . . . . . . . . . . . . . 23 15. References . . . . . . . . . . . . . . . . . . . . . . . . . 24
15.1. Normative References . . . . . . . . . . . . . . . . . . 23 15.1. Normative References . . . . . . . . . . . . . . . . . . 24
15.2. Informative References . . . . . . . . . . . . . . . . . 24 15.2. Informative References . . . . . . . . . . . . . . . . . 24
Appendix A. Changes Log . . . . . . . . . . . . . . . . . . . . 25 Appendix A. Changes Log . . . . . . . . . . . . . . . . . . . . 25
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 25 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 26
1. Introduction 1. Introduction
The Alternate-Marking method, as described in The Alternate-Marking method, as described in
[I-D.fioccola-rfc8321bis], is applicable to a point-to-point path. [I-D.fioccola-rfc8321bis], is applicable to a point-to-point path.
The extension proposed in this document applies to the most general The extension proposed in this document applies to the most general
case of multipoint-to-multipoint path and enables flexible and case of multipoint-to-multipoint path and enables flexible and
adaptive performance measurements in a managed network. adaptive performance measurements in a managed network.
The Alternate-Marking methodology described in The Alternate-Marking methodology described in
skipping to change at page 8, line 40 skipping to change at page 9, line 4
\ +------+ / \ +------+ /
<> R4 <> <> R4 <>
+------+ \ +------+ \
+------+ \ +------+ +------+ \ +------+
---<> R2 <> <> R7 <>--- ---<> R2 <> <> R7 <>---
+------+ \ / +------+ +------+ \ / +------+
\ +------+ / \ +------+ /
<> R5 <> <> R5 <>
/ +------+ \ / +------+ \
+------+ / \ +------+ +------+ / \ +------+
---<> R3 <> <> R8 <>--- ---<> R3 <> <> R8 <>---
+------+ +------+ +------+ +------+
Figure 1: Flow Classification Figure 1: Flow Classification
The case of unicast flow is considered in Figure 1. The anycast flow The case of unicast flow is considered in Figure 1. The anycast flow
is also in scope, because there is no replication and only a single is also in scope, because there is no replication and only a single
node from the anycast group receives the traffic, so it can be viewed node from the anycast group receives the traffic, so it can be viewed
as a special case of unicast flow. Furthermore, an ECMP flow is in as a special case of unicast flow. Furthermore, an ECMP flow is in
scope by definition, since it is a point-to-multipoint unicast flow. scope by definition, since it is a point-to-multipoint unicast flow.
4. Multipoint Performance Measurement 4. Extension of the Method to Multipoint Flows
By using the Alternate-Marking method, only point-to-point paths can By using the Alternate-Marking method, only point-to-point paths can
be monitored. To have an IP (TCP/UDP) flow that follows a point-to- be monitored. To have an IP (TCP/UDP) flow that follows a point-to-
point path, we have to define, with a specific value, 5 point path, we have to define, with a specific value, 5
identification fields (IP Source, IP Destination, Transport Protocol, identification fields (IP Source, IP Destination, Transport Protocol,
Source Port, Destination Port). Source Port, Destination Port).
Multipoint Alternate Marking enables the performance measurement for Multipoint Alternate Marking enables the performance measurement for
multipoint flows selected by identification fields without any multipoint flows selected by identification fields without any
constraints (even the entire network production traffic). It is also constraints (even the entire network production traffic). It is also
skipping to change at page 10, line 41 skipping to change at page 10, line 41
assumed that there be a monitoring point at all possible egress assumed that there be a monitoring point at all possible egress
points of the multipoint monitored network. points of the multipoint monitored network.
The same is also applicable for the delay, but it will be described The same is also applicable for the delay, but it will be described
in the following sections. in the following sections.
The rest of the document assumes that the traffic is going from left The rest of the document assumes that the traffic is going from left
to right in order to simplify the explanation. But the analysis done to right in order to simplify the explanation. But the analysis done
for one direction applies equally to all directions. for one direction applies equally to all directions.
5. Multipoint Packet Loss 4.2. Network Packet Loss
Since all the packets of the considered flow leaving the network have Since all the packets of the considered flow leaving the network have
previously entered the network, the number of packets counted by all previously entered the network, the number of packets counted by all
the input nodes is always greater than, or equal to, the number of the input nodes is always greater than, or equal to, the number of
packets counted by all the output nodes. Noninitial fragments are packets counted by all the output nodes. Noninitial fragments are
not considered here. not considered here.
The assumption is the use of the Alternate-Marking method. In the The assumption is the use of the Alternate-Marking method. In the
case of no packet loss occurring in the marking period, if all the case of no packet loss occurring in the marking period, if all the
input and output points of the network domain to be monitored are input and output points of the network domain to be monitored are
skipping to change at page 11, line 41 skipping to change at page 11, line 41
The equation is applied on a per-time-interval basis and a per-flow The equation is applied on a per-time-interval basis and a per-flow
basis: basis:
The reference interval is the Alternate-Marking period, as defined The reference interval is the Alternate-Marking period, as defined
in [I-D.fioccola-rfc8321bis]. in [I-D.fioccola-rfc8321bis].
The flow definition is generalized here. Indeed, as described The flow definition is generalized here. Indeed, as described
before, a multipoint packet flow is considered, and the before, a multipoint packet flow is considered, and the
identification fields can be selected without any constraints. identification fields can be selected without any constraints.
6. Network Clustering 5. Network Clustering
The previous equation can determine the number of packets lost The previous equation of Section 4.2 can determine the number of
globally in the monitored network, exploiting only the data provided packets lost globally in the monitored network, exploiting only the
by the counters in the input and output nodes. data provided by the counters in the input and output nodes.
In addition, it is also possible to leverage the data provided by the In addition, it is also possible to leverage the data provided by the
other counters in the network to converge on the smallest other counters in the network to converge on the smallest
identifiable subnetworks where the losses occur. These subnetworks identifiable subnetworks where the losses occur. These subnetworks
are named "clusters". are named "clusters".
A cluster graph is a subnetwork of the entire monitoring network A cluster graph is a subnetwork of the entire monitoring network
graph that still satisfies the packet loss equation (introduced in graph that still satisfies the packet loss equation (introduced in
the previous section), where PL in this case is the number of packets the previous section), where PL in this case is the number of packets
lost in the cluster. As for the entire monitoring network graph, the lost in the cluster. As for the entire monitoring network graph, the
skipping to change at page 12, line 37 skipping to change at page 12, line 37
(one is the input interface, the other is the output interface, and (one is the input interface, the other is the output interface, and
the router has only these two interfaces), instead of counting the router has only these two interfaces), instead of counting
exactly twice, upon entering and leaving, it is possible to consider exactly twice, upon entering and leaving, it is possible to consider
a single measurement point. In this case, we do not care about the a single measurement point. In this case, we do not care about the
internal packet loss of the router. internal packet loss of the router.
It is worth highlighting that it might also be convenient to define It is worth highlighting that it might also be convenient to define
clusters based on the topological information so that they are clusters based on the topological information so that they are
applicable to all the possible flows in the monitored network. applicable to all the possible flows in the monitored network.
6.1. Algorithm for Clusters Partition 5.1. Algorithm for Clusters Partition
A simple algorithm can be applied in order to split our monitoring A simple algorithm can be applied in order to split our monitoring
network into clusters. This can be done for each direction network into clusters. This can be done for each direction
separately. The clusters partition is based on the monitoring separately. The clusters partition is based on the monitoring
network graph, which can be valid for a specific flow or can also be network graph, which can be valid for a specific flow or can also be
general and valid for the entire network topology. general and valid for the entire network topology.
It is a two-step algorithm: It is a two-step algorithm:
o Group the links where there is the same starting node; o Group the links where there is the same starting node;
skipping to change at page 15, line 18 skipping to change at page 15, line 18
<> R8 <>--- <> R8 <>---
+------+ +------+
Figure 3: Clusters Example Figure 3: Clusters Example
There are clusters with more than two nodes as well as two-node There are clusters with more than two nodes as well as two-node
clusters. In the two-node clusters, the loss is on the link (Cluster clusters. In the two-node clusters, the loss is on the link (Cluster
4). In more-than-two-node clusters, the loss is on the cluster, but 4). In more-than-two-node clusters, the loss is on the cluster, but
we cannot know in which link (Cluster 1, 2, or 3). we cannot know in which link (Cluster 1, 2, or 3).
In this way, the calculation of packet loss can be made on a cluster In this way, the calculation of packet loss, delay and delay
basis. Note that the packet counters for each marking period permit variation can be made on a cluster basis. Note that the packet
calculating the packet rate on a cluster basis, so Committed counters for each marking period permit calculating the packet rate
Information Rate (CIR) and Excess Information Rate (EIR) could also on a cluster basis, so Committed Information Rate (CIR) and Excess
be deduced on a cluster basis. Information Rate (EIR) could also be deduced on a cluster basis.
Obviously, by combining some clusters in a new connected subnetwork Obviously, by combining some clusters in a new connected subnetwork
(called a "super cluster"), the packet-loss rule is still true. (called a "super cluster"), the packet-loss rule is still true.
In this way, in a very large network, there is no need to configure In this way, in a very large network, there is no need to configure
detailed filter criteria to inspect the traffic. You can check a detailed filter criteria to inspect the traffic. It is possible to
multipoint network and, in case of problems, go deep with a step-by- check a multipoint network and, in case of problems, go deep with a
step cluster analysis, but only for the cluster or combination of step-by-step cluster analysis, but only for the cluster or
clusters where the problem happens. combination of clusters where the problem happens.
In summary, once a flow is defined, the algorithm to build the In summary, once a flow is defined, the algorithm to build the
clusters partition is based on topological information; therefore, it clusters partition is based on topological information; therefore, it
considers all the possible links and nodes crossed by the given flow, considers all the possible links and nodes crossed by the given flow,
even if there is no traffic. So, if the flow does not enter or even if there is no traffic. So, if the flow does not enter or
traverse all the nodes, the counters have a nonzero value for the traverse all the nodes, the counters have a nonzero value for the
involved nodes and a zero value for the other nodes without traffic; involved nodes and a zero value for the other nodes without traffic;
but in the end, all the formulas are still valid. but in the end, all the formulas are still valid.
The algorithm described above is an iterative clustering algorithm, The algorithm described above is an iterative clustering algorithm,
but it is also possible to apply a recursive clustering algorithm by but it is also possible to apply a recursive clustering algorithm by
using the node-node adjacency matrix representation using the node-node adjacency matrix representation
[IEEE-ACM-ToN-MPNPM]. [IEEE-ACM-ToN-MPNPM].
The complete and mathematical analysis of the possible algorithms for The complete and mathematical analysis of the possible algorithms for
clusters partition, including the considerations in terms of clusters partition, including the considerations in terms of
efficiency and a comparison between the different methods, is in the efficiency and a comparison between the different methods, is in the
paper [IEEE-ACM-ToN-MPNPM]. paper [IEEE-ACM-ToN-MPNPM].
7. Timing Aspects 6. Multipoint Packet Loss Measurement
It is important to consider the timing aspects, since out-of-order
packets happen and have to be handled as well, as described in
[I-D.fioccola-rfc8321bis].
However, in a multisource situation, an additional issue has to be
considered. With multipoint path, the egress nodes will receive
alternate marked packets in random order from different ingress
nodes, and this must not affect the measurement.
So, if we analyze a multipoint-to-multipoint path with more than one
marking node, it is important to recognize the reference measurement
interval. In general, the measurement interval for describing the
results is the interval of the marking node that is more aligned with
the start of the measurement, as reported in Figure 4.
Note that the mark switching approach based on a fixed timer is
considered in this document.
time -> start stop
T(R1) |-------------|
T(R2) |-------------|
T(R3) |------------|
Figure 4: Measurement Interval
In Figure 4, it is assumed that the node with the earliest clock (R1)
identifies the right starting and ending times of the measurement,
but it is just an assumption, and other possibilities could occur.
So, in this case, T(R1) is the measurement interval, and its
recognition is essential in order to make comparisons with other
active/passive/hybrid Packet Loss metrics.
Regarding the timing constraints of the methodology,
[I-D.fioccola-rfc8321bis] already describes two contributions that
are taken into account: the clock error between network devices and
the network delay between the measurement points.
When we expand to a multipoint environment, we have to consider that
there are more marking nodes that mark the traffic based on
synchronized clock time. But, due to different synchronization
issues that may happen, the marking batches can be of different
lengths and with different offsets when they get mixed in a
multipoint flow. The additional gap that results between the sources
can be incorporated into A, which is the maximum clock skew between
the network devices, as already defined in [I-D.fioccola-rfc8321bis].
...BBBBBBBBB | AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA | BBBBBBBBB...
|<======================================>|
| L |
...=========>|<==================><==================>|<==========...
| L/2 L/2 |
|<====>| |<====>|
d | | d
|<========================>|
available counting interval
Figure 5: Timing Aspects
Moreover, it is assumed that each path of the multipoint flow can
still be represented with a distinct normal distribution. So, for
the aggregate multipoint path, the combination of normal
distributions result in a new normal distribution. Under this
assumption, the definition of the guard band d is still applicable as
defined in [I-D.fioccola-rfc8321bis] and is given by:
d = A + D_avg + 3*D_stddev,
where A is the clock accuracy, D_avg is the average value of the
network delay, and D_stddev is the standard deviation of the delay.
As shown in Figure 5 and according to [I-D.fioccola-rfc8321bis], the
condition that must be satisfied to enable the method to function
properly is that the available counting interval must be > 0, and
that means:
L - 2d > 0. The Network Packet Loss, defined in Section 4.2, valid for the an
entire monitored flow, can easily be extended to each multipoint path
(e.g., the whole multipoint network, a cluster, or a combination of
clusters). In this way it is possible to calculate Multipoint Packet
Loss that is representative of a multipoint path.
This formula needs to be verified for each measurement point on the The same equation of Section 4.2 can be applied to a generic
multipoint path. multipoint path like a cluster or a combination of clusters, where
the number of packets are those entering and leaving the multipoint
path.
Note that the timing considerations are valid for both packet loss By applying the algorithm described in Section 5.1, it is possible to
and delay measurements. split the monitoring network into clusters. Then, packet loss can be
measured on a cluster basis for each single period by considering the
counters of the input and output nodes that belong to the specific
cluster. This can be done for every packet flow in each marking
period.
8. Multipoint Delay and Delay Variation 7. Multipoint Delay and Delay Variation
The same line of reasoning can be applied to delay and delay The same line of reasoning can be applied to delay and delay
variation. Similarly to the delay measurements defined in variation. Similarly to the delay measurements defined in
[I-D.fioccola-rfc8321bis], the marking batches anchor the samples to [I-D.fioccola-rfc8321bis], the marking batches anchor the samples to
a particular period, and this is the time reference that can be used. a particular period, and this is the time reference that can be used.
It is important to highlight that both delay and delay-variation It is important to highlight that both delay and delay-variation
measurements make sense in a multipoint path. The delay variation is measurements make sense in a multipoint path. The delay variation is
calculated by considering the same packets selected for measuring the calculated by considering the same packets selected for measuring the
delay. delay.
In general, it is possible to perform delay and delay-variation In general, it is possible to perform delay and delay-variation
measurements on the basis of multipoint paths or single packets: measurements on the basis of multipoint paths or single packets:
o Delay measurements on the basis of multipoint paths mean that the o Delay measurements on the basis of multipoint paths mean that the
delay value is representative of an entire multipoint path (e.g., delay value is representative of an entire multipoint path (e.g.,
the whole multipoint network, a cluster, or a combination of the whole multipoint network, a cluster, or a combination of
clusters). clusters).
o Delay measurements on a single-packet basis mean that you can use o Delay measurements on a single-packet basis mean that you can use
a multipoint path just to easily couple packets between input and a multipoint path just to easily couple packets between input and
output nodes of a multipoint path, as described in the following output nodes of a multipoint path, as described in the following
sections. sections.
8.1. Delay Measurements on a Multipoint-Paths Basis 7.1. Delay Measurements on a Multipoint-Paths Basis
8.1.1. Single-Marking Measurement 7.1.1. Single-Marking Measurement
Mean delay and mean delay-variation measurements can also be Mean delay and mean delay-variation measurements can also be
generalized to the case of multipoint flows. It is possible to generalized to the case of multipoint flows. It is possible to
compute the average one-way delay of packets in one block, a cluster, compute the average one-way delay of packets in one block, a cluster,
or the entire monitored network. or the entire monitored network.
The average latency can be measured as the difference between the The average latency can be measured as the difference between the
weighted averages of the mean timestamps of the sets of output and weighted averages of the mean timestamps of the sets of output and
input nodes. This means that, in the calculation, it is possible to input nodes. This means that, in the calculation, it is possible to
weigh the timestamps by considering the number of packets for each weigh the timestamps by considering the number of packets for each
endpoints. endpoints.
Note that, since the one-way delay value is representative of a Note that, since the one-way delay value is representative of a
multipoint path, it is possible to calculate the two-way delay of a multipoint path, it is possible to calculate the two-way delay of a
multipoint path by summing the one-way delays of the two directions, multipoint path by summing the one-way delays of the two directions,
similarly to [I-D.fioccola-rfc8321bis]. similarly to [I-D.fioccola-rfc8321bis].
8.2. Delay Measurements on a Single-Packet Basis 7.2. Delay Measurements on a Single-Packet Basis
8.2.1. Single- and Double-Marking Measurement 7.2.1. Single- and Double-Marking Measurement
Delay and delay-variation measurements relative to only one picked Delay and delay-variation measurements relative to only one picked
packet per period (both single and double marked) can be performed in packet per period (both single and double marked) can be performed in
the multipoint scenario, with some limitations: the multipoint scenario, with some limitations:
Single marking based on the first/last packet of the interval Single marking based on the first/last packet of the interval
would not work, because it would not be possible to agree on the would not work, because it would not be possible to agree on the
first packet of the interval. first packet of the interval.
Double marking or multiplexed marking would work, but each Double marking or multiplexed marking would work, but each
skipping to change at page 19, line 38 skipping to change at page 18, line 17
A desirable option is to monitor simultaneously all the paths of a A desirable option is to monitor simultaneously all the paths of a
multipoint path in the same marking period; for this purpose, hashing multipoint path in the same marking period; for this purpose, hashing
can be used, as reported in the next section. can be used, as reported in the next section.
Note that, since the one-way delay measurement is done on a single- Note that, since the one-way delay measurement is done on a single-
packet basis, it is always possible to calculate the two-way delay packet basis, it is always possible to calculate the two-way delay
but it is not immediate since it is necessary to couple the but it is not immediate since it is necessary to couple the
measurement on each single path with the opposite direction. In this measurement on each single path with the opposite direction. In this
case the NMS can do the calculation. case the NMS can do the calculation.
8.2.2. Hashing Selection Method 7.2.2. Hashing Selection Method
RFCs 5474 [RFC5474] and 5475 [RFC5475] introduce sampling and RFCs 5474 [RFC5474] and 5475 [RFC5475] introduce sampling and
filtering techniques for IP packet selection. filtering techniques for IP packet selection.
The hash-based selection methodologies for delay measurement can work The hash-based selection methodologies for delay measurement can work
in a multipoint-to-multipoint path and MAY be used either coupled to in a multipoint-to-multipoint path and MAY be used either coupled to
mean delay or stand-alone. mean delay or stand-alone.
[I-D.mizrahi-ippm-marking] introduces how to use the hash method (RFC [I-D.mizrahi-ippm-marking] introduces how to use the hash method (RFC
5474 [RFC5474] and RFC 5475 [RFC5475]) combined with the Alternate- 5474 [RFC5474] and RFC 5475 [RFC5475]) combined with the Alternate-
skipping to change at page 20, line 27 skipping to change at page 19, line 9
Alternate Marking is used to create periods, so that hash-based Alternate Marking is used to create periods, so that hash-based
samples are divided into batches, which allows anchoring the selected samples are divided into batches, which allows anchoring the selected
samples to their period. Moreover, in the dynamic hash-based samples to their period. Moreover, in the dynamic hash-based
sampling, by dynamically adapting the length of the hash value, the sampling, by dynamically adapting the length of the hash value, the
number of samples is bounded in each marking period. number of samples is bounded in each marking period.
In a multipoint environment, the hashing selection MAY be the In a multipoint environment, the hashing selection MAY be the
solution for performing delay measurements on specific packets and solution for performing delay measurements on specific packets and
overcoming the single- and double-marking limitations. overcoming the single- and double-marking limitations.
8. Synchronization and Timing
It is important to consider the timing aspects, since out-of-order
packets happen and have to be handled as well, as described in
[I-D.fioccola-rfc8321bis].
However, in a multisource situation, an additional issue has to be
considered. With multipoint path, the egress nodes will receive
alternate marked packets in random order from different ingress
nodes, and this must not affect the measurement.
So, if we analyze a multipoint-to-multipoint path with more than one
marking node, it is important to recognize the reference measurement
interval. In general, the measurement interval for describing the
results is the interval of the marking node that is more aligned with
the start of the measurement, as reported in Figure 4.
Note that the mark switching approach based on a fixed timer is
considered in this document.
time -> start stop
T(R1) |-------------|
T(R2) |-------------|
T(R3) |------------|
Figure 4: Measurement Interval
In Figure 4, it is assumed that the node with the earliest clock (R1)
identifies the right starting and ending times of the measurement,
but it is just an assumption, and other possibilities could occur.
So, in this case, T(R1) is the measurement interval, and its
recognition is essential in order to make comparisons with other
active/passive/hybrid Packet Loss metrics.
Regarding the timing constraints of the methodology,
[I-D.fioccola-rfc8321bis] already describes two contributions that
are taken into account: the clock error between network devices and
the network delay between the measurement points.
When we expand to a multipoint environment, we have to consider that
there are more marking nodes that mark the traffic based on
synchronized clock time. But, due to different synchronization
issues that may happen, the marking batches can be of different
lengths and with different offsets when they get mixed in a
multipoint flow. The additional gap that results between the sources
can be incorporated into A, which is the maximum clock skew between
the network devices, as already defined in [I-D.fioccola-rfc8321bis].
...BBBBBBBBB | AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA | BBBBBBBBB...
|<======================================>|
| L |
...=========>|<==================><==================>|<==========...
| L/2 L/2 |
|<====>| |<====>|
d | | d
|<========================>|
available counting interval
Figure 5: Timing Aspects
Moreover, it is assumed that each path of the multipoint flow can
still be represented with a distinct normal distribution. So, for
the aggregate multipoint path, the combination of normal
distributions result in a new normal distribution. Under this
assumption, the definition of the guard band d is still applicable as
defined in [I-D.fioccola-rfc8321bis] and is given by:
d = A + D_avg + 3*D_stddev,
where A is the clock accuracy, D_avg is the average value of the
network delay, and D_stddev is the standard deviation of the delay.
As shown in Figure 5 and according to [I-D.fioccola-rfc8321bis], the
condition that must be satisfied to enable the method to function
properly is that the available counting interval must be > 0, and
that means:
L - 2d > 0.
This formula needs to be verified for each measurement point on the
multipoint path.
Note that the timing considerations are valid for both packet loss
and delay measurements.
9. Results of the Multipoint Alternate Marking Experiment 9. Results of the Multipoint Alternate Marking Experiment
The methodology described in the previous sections can be applied to The methodology described in the previous sections can be applied to
various performance measurement problems, as also explained in various performance measurement problems, as also explained in
[I-D.fioccola-rfc8321bis]. [I-D.fioccola-rfc8321bis].
Either one or two flag bits might be available for marking in Either one or two flag bits might be available for marking in
different deployments: different deployments:
One flag: packet loss measurement SHOULD be done as described in One flag: packet loss measurement SHOULD be done as described in
Section 5 by applying the network clustering partition described Section 6 by applying the network clustering partition described
in Section 6. While delay measurement MAY be done according to in Section 5. While delay measurement MAY be done according to
the Mean delay calculation representative of the multipoint path, the Mean delay calculation representative of the multipoint path,
as described in Section 8.1.1. Single-marking method based on the as described in Section 7.1.1. Single-marking method based on the
first/last packet of the interval cannot be applied, as mentioned first/last packet of the interval cannot be applied, as mentioned
in Section 8.2.1. in Section 7.2.1.
Two flags: packet loss measurement SHOULD be done as described in Two flags: packet loss measurement SHOULD be done as described in
Section 5 by applying the network clustering partition described Section 6 by applying the network clustering partition described
in Section 6. While delay measurement SHOULD be done on a single in Section 5. While delay measurement SHOULD be done on a single
packet basis according to double-marking method Section 8.2.1. In packet basis according to double-marking method Section 7.2.1. In
this case the Mean delay calculation (Section 8.1.1) MAY also be this case the Mean delay calculation (Section 7.1.1) MAY also be
used as a representative value of a multipoint path. used as a representative value of a multipoint path.
One flag and hash-based selection: packet loss measurement SHOULD One flag and hash-based selection: packet loss measurement SHOULD
be done as described in Section 5 by applying the network be done as described in Section 6 by applying the network
clustering partition described in Section 6. Hash-based selection clustering partition described in Section 5. Hash-based selection
methodologies, introduced in Section 8.2.2, MAY be used for delay methodologies, introduced in Section 7.2.2, MAY be used for delay
measurement. measurement.
The experiment with Multipoint Alternate Marking methodologies The experiment with Multipoint Alternate Marking methodologies
confirmed the benefits of the Alternate Marking methodology described confirmed the benefits of the Alternate Marking methodology described
in [I-D.fioccola-rfc8321bis], as its extension to the general case of in [I-D.fioccola-rfc8321bis], as its extension to the general case of
multipoint-to-multipoint scenarios. multipoint-to-multipoint scenarios.
The Multipoint Alternate Marking Method is RECOMMENDED only for The Multipoint Alternate Marking Method is RECOMMENDED only for
controlled domains, as per [I-D.fioccola-rfc8321bis]. controlled domains, as per [I-D.fioccola-rfc8321bis].
skipping to change at page 23, line 35 skipping to change at page 24, line 12
The authors would like to thank Martin Duke and Tommy Pauly for their The authors would like to thank Martin Duke and Tommy Pauly for their
assistance and their detailed and precious reviews. assistance and their detailed and precious reviews.
15. References 15. References
15.1. Normative References 15.1. Normative References
[I-D.fioccola-rfc8321bis] [I-D.fioccola-rfc8321bis]
Fioccola, G., Cociglio, M., Mirsky, G., Mizrahi, T., Zhou, Fioccola, G., Cociglio, M., Mirsky, G., Mizrahi, T., Zhou,
T., and X. Min, "Alternate-Marking Method", draft- T., and X. Min, "Alternate-Marking Method", draft-
fioccola-rfc8321bis-02 (work in progress), February 2022. fioccola-rfc8321bis-03 (work in progress), February 2022.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC5474] Duffield, N., Ed., Chiou, D., Claise, B., Greenberg, A., [RFC5474] Duffield, N., Ed., Chiou, D., Claise, B., Greenberg, A.,
Grossglauser, M., and J. Rexford, "A Framework for Packet Grossglauser, M., and J. Rexford, "A Framework for Packet
Selection and Reporting", RFC 5474, DOI 10.17487/RFC5474, Selection and Reporting", RFC 5474, DOI 10.17487/RFC5474,
March 2009, <https://www.rfc-editor.org/info/rfc5474>. March 2009, <https://www.rfc-editor.org/info/rfc5474>.
skipping to change at page 25, line 26 skipping to change at page 26, line 4
o Removed section on "Examples of application" o Removed section on "Examples of application"
Changes in v-(01) include: Changes in v-(01) include:
o Considerations on BUM traffic o Considerations on BUM traffic
o Reference to RFC8321bis for the fragmentation part o Reference to RFC8321bis for the fragmentation part
o Revised section on "Delay Measurements on a Single-Packet Basis" o Revised section on "Delay Measurements on a Single-Packet Basis"
o Revised section on "Timing Aspects" o Revised section on "Timing Aspects"
Changes in v-(02) include: Changes in v-(02) include:
o Clarified the formula in the section on "Timing Aspects" to be o Clarified the formula in the section on "Timing Aspects" to be
aligned with RFC 8321 aligned with RFC 8321
o Considerations on two-way delay measurements in both sections 8.1 o Considerations on two-way delay measurements in both sections 8.1
and 8.2 on delay measurements and 8.2 on delay measurements
o Clarified in section 4.1 on "Monitoring Network" that the o Clarified in section 4.1 on "Monitoring Network" that the
description is done for one direction but it can easily be description is done for one direction but it can easily be
extended to all direction extended to all direction
o New section on "Results of the Multipoint Alternate Marking o New section on "Results of the Multipoint Alternate Marking
Experiment" Experiment"
Changes in v-(03) include:
o Moved and renamed section on "Timing Aspects" as "Synchronization
and Timing"
o Renamed old section on "Multipoint Packet Loss" as "Network Packet
Loss"
o New section on "Multipoint Packet Loss Measurement"
o Renamed section on "Multipoint Performance Measurement" as
"Extension of the Method to Multipoint Flows"
Authors' Addresses Authors' Addresses
Giuseppe Fioccola (editor) Giuseppe Fioccola (editor)
Huawei Technologies Huawei Technologies
Riesstrasse, 25 Riesstrasse, 25
Munich 80992 Munich 80992
Germany Germany
Email: giuseppe.fioccola@huawei.com Email: giuseppe.fioccola@huawei.com
Mauro Cociglio Mauro Cociglio
Telecom Italia Telecom Italia
Via Reiss Romoli, 274 Via Reiss Romoli, 274
Torino 10148 Torino 10148
Italy Italy
Email: mauro.cociglio@telecomitalia.it Email: mauro.cociglio@telecomitalia.it
Amedeo Sapio Amedeo Sapio
Intel Corporation Intel Corporation
4750 Patrick Henry Dr. 4750 Patrick Henry Dr.
Santa Clara, CA 95054 Santa Clara, CA 95054
USA USA
Email: amedeo.sapio@intel.com Email: amedeo.sapio@intel.com
Riccardo Sisto Riccardo Sisto
Politecnico di Torino Politecnico di Torino
 End of changes. 41 change blocks. 
140 lines changed or deleted 173 lines changed or added

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