<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.35 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-pinkert-ippm-ip-measurement-option-03" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title>An IPv4 and IPv6 measurement option (MO) for hybrid flow measurements.</title>
    <seriesInfo name="Internet-Draft" value="draft-pinkert-ippm-ip-measurement-option-03"/>
    <author fullname="Tjeerd J. Pinkert">
      <organization>Siemens Mobility GmbH</organization>
      <address>
        <postal>
          <street>Ackerstrasse 22</street>
          <city>Braunschweig</city>
          <code>38126</code>
          <country>Germany</country>
        </postal>
        <email>tjeerd.pinkert@siemens.com</email>
        <uri>https://www.mobility.siemens.com</uri>
      </address>
    </author>
    <author fullname="Negar Masoudifar">
      <organization>Siemens Mobility GmbH</organization>
      <address>
        <postal>
          <street>Ackerstrasse 22</street>
          <city>Braunschweig</city>
          <code>38126</code>
          <country>Germany</country>
        </postal>
        <email>negar.masoudifar@siemens.com</email>
        <uri>https://www.mobility.siemens.com</uri>
      </address>
    </author>
    <author fullname="Akachukwu Adnife Nnamdi">
      <organization>Siemens Mobility GmbH</organization>
      <address>
        <postal>
          <street>Ackerstrasse 22</street>
          <city>Braunschweig</city>
          <code>38126</code>
          <country>Germany</country>
        </postal>
        <email>akachukwu.nnamdi@siemens.com</email>
        <uri>https://www.mobility.siemens.com</uri>
      </address>
    </author>
    <date year="2026" month="April" day="30"/>
    <area>OPS</area>
    <workgroup>IPPM Working Group</workgroup>
    <keyword>hybrid network measurements</keyword>
    <keyword>measurement data</keyword>
    <keyword>ip option</keyword>
    <abstract>
      <?line 127?>

<t>This document introduces an internet protocol (IP) measurement option (MO) that
contains information, normally not available to the receiver of IP packets, to
perform hybrid network measurements. In particular, measurements that need a
sender time stamp and a packet order number are then possible directly at the
receiver. The information contained in the IP MO can also be used by hosts
en-route to perform slightly more limited hybrid network measurements.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://dutchyatwork.github.io/rfc-draft-ip-measurement-option/#go.draft-pinkert-ippm-ip-measurement-option.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-pinkert-ippm-ip-measurement-option/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        IP Performance Measurement Working Group mailing list (<eref target="mailto:ippm@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/ippm/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/ippm/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/DutchyatWork/rfc-draft-ip-measurement-option"/>.</t>
    </note>
  </front>
  <middle>
    <?line 137?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Hybrid network measurements on differentiated services (DS) microflows
<xref target="RFC2475"/>, following the IP performance metrics (IPPM) rationale outlined in
<xref target="RFC2330"/>, can be performed for a limited number of metrics without the need
for P-type packets. Using hybrid measurements, a complete characterisation of
an end-to-end path through the internet is not possible. Nevertheless, hybrid
measurements allow a measurement host to obtain important information about
the minimum or maximum quality (depending on the situation and metric) that
the network currently offers.</t>
      <t>The P-type packets used by, e.g., the one-way active measurement protocol
(OWAMP, <xref target="RFC4656"/>) and two-way active measurement protocol (TWAMP,
<xref target="RFC5357"/>), contain additional information that is needed for the calculation
of certain metrics. Two important pieces of information are the sequence
number and the timestamp, that are needed to calculate packet loss metrics and
packet delay metrics.</t>
      <t>To include such information in an IP packet, for measurement at the IP layer,
a suitable solution needs to be found. Since the data of IP packets is
determined by the upper stack configuration and the application protocol, the
only way is to include this information in the IP header. Fortunately, the
designers of the IPv4 and IPv6 protocols acknowledged the possibility of
inclusion of information for various purposes in the IP header as IP options.</t>
      <t>This document describes an IPv4 and IPv6 measurement option (MO) for the
measurement of packet loss, packet delay and other metrics that require a
sequence number and a timestamp from the sending host at the receiving host.</t>
    </section>
    <section anchor="justification-for-an-ip-measurement-option">
      <name>Justification for an IP measurement option</name>
      <t>In internetworks, the IP protocol is the unifying protocol in the network
stack. At the link layer various network technologies can be deployed that
are all capable of transporting IP packets. Although measurement techniques
and specifications are present for the lower layers, it is typically hard to
implement these such, that data from specific applications on a host can be
measured.</t>
      <t>Another concern is that, at the data link layer, each particular link layer
protocol adds protocol control information with a technology dependent amount
of data, to each IP packet. Therefore, measurements performed on various data
link layers cannot always be compared without assumptions.</t>
      <t>Typical internet applications use "sockets", a concept found in many of the
major operating systems, where both IP addresses, the transport protocol and
its port numbers are grouped. This is exactly the definition of a microflow.</t>
      <t>Nevertheless, transport layer protocols do typically not have the flexibility
to allow for measurements at the transport layer, since not all, or maybe even
least of the, transport protocols, include a sequence number and timestamp in
their data fragments. Also at the transport layer, the argument holds that
measurements are not necessarily comparable between different transport
protocols. In addition, a generic software, would also need adaptation for
each transport protocol, to perform (comparable) measurements when operating
higher up in the network stack.</t>
      <t>The IP protocol gets part of its flexibility from the capability of inserting
IP options into the IP header. Together with its unifying properties on
internet hosts, which allows comparison of measurement data among applications
and hosts, the network layer with the IP protocol forms the ideal place for
measurements, as acknowledged by the IPPM framework. The only downside of an
IP measurement option is that the IP header is enlarged. Adding slightly to
the amount of data sent through the network. In many cases this is offset by
the benefits of being capable of assessing the network quality at real-time.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in <xref target="BCP14"/> (<xref target="RFC2119"/>) (<xref target="RFC8174"/>) when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="metrics-for-the-ip-measurement-option">
      <name>Metrics for the IP measurement option</name>
      <t>The IP measurement option will be designed specifically for the following
metrics:
    - One-way Packet Delay, Mean Packet Delay, Packet Delay Variation,
    - One-way Packet Loss, Packet Reordering and Packet Duplication.</t>
      <t>The measurement option must be suitable for the measurement of microflows as
defined by <xref target="RFC2475"/> in the scope of DS. Microflows are identified by IP
source and destination addresses, the protocol id and transport layer source
and destination port numbers (when available). Measurements must be possible
between two end hosts on a point-to-point (P2P) IP link. Extension to multi-
point-to-multi-point links (MP2MP) should be possible. This requires that each
packet can be uniquely assigned to a microflow.</t>
      <t>In addition, it should be possible that hosts en-route, can use the IP MO to
measure or estimate the metrics on a microflow basis. Such measurements can
be done at boundary / gateway hosts of the network. One difficulty, in this
case, can be, that not all packets of a microflow must necessarily pass a
certain host, since paths through the network, for packets of the same micro-
flow, may differ.</t>
    </section>
    <section anchor="considerations-regarding-the-option-content">
      <name>Considerations regarding the option content</name>
      <t>Data rates and packet rates per microflow can be readily measured by source,
observer, and destination using a clock and the number of octets per microflow
traversing the network interface. These metrics do not need additional
information.</t>
      <section anchor="concerning-loss-reordering-and-duplicates">
        <name>Concerning loss, reordering and duplicates</name>
        <t>To measure packet losses, reordering and duplication, each packet must be
uniquely identifiable, and orderable, within the microflow. Only selected
transport layer protocols include such information, e.g., the TCP protocol.</t>
        <ul spacing="normal">
          <li>
            <t>The IP MO must include information to uniquely identify the position of each
IP packet in a stream of packets.</t>
          </li>
        </ul>
      </section>
      <section anchor="concerning-network-traversal-time-delay">
        <name>Concerning network traversal time (delay)</name>
        <t>To measure packet delay and other time-based properties of the network, the
time at the start of transmission (wire arrival time at the transmitting host)
and end of reception (wire exit time at the receiving host) of the IP packet
must be recorded. It is assumed in this document that hosts hosts have well
synchronised clocks. Clock synchronization is a topic that is addressed
abundantly elsewhere (<xref target="RFC2330"/>).</t>
        <t>The sending host records the start of transmission time, while the receiving
host records the end of reception time. In combination with the network
interface speed and the number of octets in the IP packet, the start of
reception time can be calculated at the receiving host. Note that the
receiving host can only timestamp at the end of reception, because only then
is clear that the packet has arrived complete and in good order.</t>
        <t>An exemption here can be hardware timestamp units that mark the start of
reception time. However, this time may include the store and forward time of
the input queue. With the wire arrival time at both hosts, the network delay
can be determined.</t>
        <t>The timestamps for start of transmission (transmission time stamp, TTS) and
start of reception (reception time stamp, RTS), as recorded in the host
software, may need correction to accurately represent the wire arrival times.
Such corrections are common in time transfer systems. The correction problem
however does not change the requirement that the wire arrival time of the
source needs to be sent to the receiver.</t>
        <ul spacing="normal">
          <li>
            <t>The IP MO must contain the wire arrival time of the sender.</t>
          </li>
        </ul>
      </section>
      <section anchor="concerning-microflow-identification">
        <name>Concerning microflow identification</name>
        <t>Although it is assumed that microflows form a single data stream, this must
not be the case. Consider a user of a computer starting and stopping a group
of network programs at the same port, contacting the same destination host at
the same port with the same protocol. It is now unclear, since multiple
programs were used, if the measured data should be grouped in one measurement
or not. Another use case is that where the higher layer protocols do not
contain port numbers in the "classical" sense (classical transport protocols
are UDP, TCP and other internet transport protocols).</t>
        <t>This ambiguity is resolved by the inclusion of a flow label in the IPv6
protocol. A unique flow identifier is assigned, by the sending host, to
packets belonging to the same microflow.</t>
        <ul spacing="normal">
          <li>
            <t>The IPv4 MO must contain a flow identifier in equivalence to the
IPv6 protocol.</t>
          </li>
        </ul>
      </section>
      <section anchor="concerning-packet-selection-for-measurement">
        <name>Concerning packet selection for measurement</name>
        <t>To apply "alternate marker" methods <xref target="RFC9341"/>, there must be a way to apply
a (single bit) marker in the IP header. This can be done using the DSCP
<xref target="RFC2474"/> field of the IP packet, and alternating two code points while
keeping the transport properties for both code points equal, or by abusing
the single bit that is still free in the CU fields specified in <xref target="RFC2474"/>.
The first would need broader support to implement the method, the latter
would void the internet standards. Notably the ECN <xref target="RFC3168"/> and L4S
specifications <xref target="RFC9330"/>, <xref target="RFC9331"/>, <xref target="RFC9332"/> that uses these bits.</t>
        <ul spacing="normal">
          <li>
            <t>The MO must contain a marker to enable the use of alternate marker methods.</t>
          </li>
        </ul>
        <t>Another consideration is that measurement software may not be capable of
processing all packets on high-speed interfaces. In this case, either layer 3
hardware support would be needed, or statistics could be gathered on only a
fraction of the packets that are sent. In the latter case it would be
unfavourable to apply an MO only to the packets that should be measured,
because network components may react differently on packets of different
lengths, and, potentially, on packets with different header lengths.</t>
        <ul spacing="normal">
          <li>
            <t>The MO must contain a marker to signal which packets shall be used to
calculate metrics on.</t>
          </li>
        </ul>
      </section>
      <section anchor="concerning-integrity-of-measurement-data">
        <name>Concerning integrity of measurement data</name>
        <t>Since the network traffic with IP measurement options included may pass
network nodes that are owned by foreign entities, the IP measurement option
must be protected against manipulation. One way to do this is to include a
digital signature into the MO option. Another way to do this is to encrypt the
contents of the measurement option for all hosts that should not read its
contents.</t>
        <ul spacing="normal">
          <li>
            <t>The MO must contain the possibility to include a cryptographic signature.</t>
          </li>
          <li>
            <t>Encryption of the MO contents, potentially including a cryptographic
signature, must be possible.</t>
          </li>
        </ul>
      </section>
      <section anchor="concerning-fragmentation-of-ip-packets">
        <name>Concerning fragmentation of IP packets</name>
        <t>Fragmentation of IP packets works as follows. The IP header of a packet that
needs fragmentation, is copied into each fragment. The data of the IP packet
is cut into slices, and each slice is added to a new fragment. Then the more
fragments flag and the fragment offset fields are set / updated. The more
fragments flag is set to zero on the last fragment.</t>
        <t>The identifier field is used to distinguish fragments of more than one
package. The sending host must ensure that the same identifier value is not
reused when packets can still be under way in the network (network timeout,
255 seconds). Due to this reason, modern layer 4 protocols, notoriously the
TCP protocol try to avoid that IP packets are fragmented, since only 64k
fragments can be underway in an IP network at the same time. It can be
understood that with the current higher speed network interfaces, this poses a
limitation on the data throughput possible for a single microflow.</t>
        <t>Nevertheless it is good practice to consider fragmentation in the design of an
IP measurement option. The specification of IPv4 options provides the copy
flag, that allow an option to be present in the first fragment only, or to
copy it into all fragments.</t>
        <t>Since our IP measurement option could still be used to obtain information on
the network performance by hosts enroute, when it is present on fragments of
an IP datagram, it would be favourable to copy the data of the IP measurement
option into each fragment.</t>
        <ul spacing="normal">
          <li>
            <t>The IP MO must be included in all fragments of an IP datagram.</t>
          </li>
        </ul>
        <t>Fragments of a datagram can be identified by the identifier, fragmented flag,
and the contents of the fragment offset field. This may help enroute hosts
to interpret "the same" IP measurement option as not belonging to a packet
duplicate. This also allows to measure fragment duplications both on the
enroute host, as well as on the receiving host, that can be introduced as
measurement additions. In this way fragment delay, loss, reordering or
duplication statistics can be determined in addition.</t>
        <t>The main measurements are to be performed on the source and destination hosts
before fragmentation is performed and after re-assembly of fragments. This
also means that measurements by systems "on the path" may yield different
results than those on the end systems, unless they are capable of marking
whether all fragments have passed such a system.</t>
        <t>Since IPv4 packets, in contrast to IPv6 packets, can be fragmented by hosts
enroute, fragmentation statistics may differ for various network segments.</t>
      </section>
    </section>
    <section anchor="determination-of-the-properties-of-the-option-content">
      <name>Determination of the properties of the option content</name>
      <t>In this section the contents of the MO determined above is specified
specifically, based on the available technology and boundaries of the
possibilities that an IP option offers. The following items were identified.</t>
      <ul spacing="normal">
        <li>
          <t>The IP MO must contain the wire arrival time of the sender.</t>
        </li>
        <li>
          <t>The IP MO must include information to uniquely identify the position of each
IP packet in a stream of packets.</t>
        </li>
        <li>
          <t>The IPv4 MO must contain a flow identifier in equivalence to the
IPv6 protocol.</t>
        </li>
        <li>
          <t>The MO must contain a marker to enable the use of alternate marker methods.</t>
        </li>
        <li>
          <t>The MO must contain a marker to signal which packets shall be used to
calculate metrics on.</t>
        </li>
        <li>
          <t>The MO must contain the possibility to include a cryptographic signature.</t>
        </li>
        <li>
          <t>Encryption of the MO contents, potentially including a cryptographic
signature, must be possible.</t>
        </li>
        <li>
          <t>The IP MO must be included in all fragments of an IP datagram.</t>
        </li>
      </ul>
      <section anchor="current-state-of-the-art-technology">
        <name>Current state of the art technology</name>
        <t>The fastest data links today measure 1 Tbit/s per channel or more <xref target="Nokia"/>. It
is assumed that 10 Tbit/s data link technology will become feasible in the
near future. Links based on <xref target="IEEE802.3"/> Ethernet have a minimum frame size of
46 octets and a packet size of 72 octets. A 12 octets inter-frame gap must be
added. The time to send the data on a 10 Tbit/s link can now be calculated.
The number of bit times for one frame is 672. Each bit takes 0.1 picoseconds
to send, therefore sending the minimum length frame takes 67.2 picoseconds.</t>
        <t>On a 1 Pbit/s link, under the assumption that Ethernet frames are used, the
time to send one minimum-length frame would be 0.672 picoseconds. At the
latter rate, approx. 1488.1 Ethernet packets can be sent in 1 nanosecond.</t>
        <t>At the network layer, the maximum datagram lifetime (MDL) of IP packets of
is approximately 120 seconds <xref target="RFC6864"/>.</t>
        <t>The IPv4 protocol allows an IP header length of 15 * 32 bits. 10 * 32 bits are
available for IP options. This is a total of 40 octets of which 38 can be used
for user content.</t>
        <t>The IPv6 protocol allows for 258 octet options of which 256 can be used for
user contents.</t>
        <t>Regarding time transfer techniques, two standards exist. The <xref target="IEEE1588-2019"/>
precision time protocol version 3 (PTPv3) is concipated to work with Ethernet,
the IPv4 and IPv6 protocols, and the UDP protocol. The network time protocol
version 4 (NTPv4) <xref target="RFC5905"/> is used in the scope of IPv4 and IPv6. The PTP
protocol favours integer calculation, while the NTP protocol favours binary
floating point calculations.</t>
        <t>Time in the Linux OS kernel is delivered in nanoseconds resolution by the
kernel interface. Time of the MAC OS X mach microkernel is delivered with
nanosecond resolution as well. Time of the Windows kernel is delivered with a
100 nanosecond resolution.</t>
      </section>
      <section anchor="wire-arrival-time-of-the-sender">
        <name>Wire arrival time of the sender</name>
        <t>The sender wire arrival time of the IP packet must be included in the IP
option, such that the receiver can calculate the packet delay based on the
receiver wire arrival time of the IP packet. Alternatively, both sender and
receiver could send the wire arrival time to a third party that can then
calculate the packet delay.</t>
        <t>For the definition of time the major question is which resolution is
sufficient. The next question is that of the calculator system. Is calculation
done in integer of floating-point arithmetic. Integer calculation can be done
on most machines, floating point arithmetic is expensive, both in hardware as
well as in software when emulated.</t>
        <t>Both in the NTP as well as the PTP protocol, the coarse timescale is kept in
seconds from the epoch. The PTP protocol reserves 48 bits for the coarse
timescale, the NTP protocol at least 32 bits, with the possibility of
extending to 64 bits (the latter is more than enough for all practical
purposes). The 16-bit format is typically only used for time differences.</t>
        <t>It must be noted that, since the maximum datagram lifetime of an IP packet is
120 seconds, together with the fact that clocks in modern systems are
synchronized with one second accuracy, the 7 least significant bits of the
second counter of the 32- or 48-bit second counter, related to the epoch,
should normally suffice to uniquely complete the timestamp based on the second
counter of the receiver clock. Under the assumption that normal IP connections
are lost within 255 seconds (TTL reduced to 0) an 8-bit seconds counter would
suffice, it is mentioned in <xref target="RFC6864"/> that this is not always the case. To
account for links where higher MDLs are possible an arbitrary number of bits
could be added to this number. A 12-bit seconds counter would allow to
identify delayed packets uniquely up to 1 hour with clock deviations on the
systems of up to 150 seconds. This seems sufficient for most earth based
purposes.</t>
        <t>Only when the need to account for (inter)stellar applications arises, transfer
of a larger part of the second counter would be needed. A 32-bit seconds
timestamp allows for link delays of 136 years, which is sufficient for delay
measurements for space travel within the solar system.</t>
        <t>The fractional part of the second is encoded as a number of fractions in the
NTP protocol. Each fraction is 2^(-N) long, where N is the number of bits used
to encode the fractional seconds. NTP allows 16, 32 or 64 bits fractional
seconds. The PTP protocol, on the other hand, encodes the fractional seconds
part as a 32-bit number representing the number of nanoseconds in the
fraction. Since most binary floating-point numbers have no exact match when
converting to decimal floating-point numbers, rounding errors must occur when
converting back and forth between NTP and PTP fractions. Reasons why to choose
one format over the other must thus come from elsewhere.</t>
        <t>A reason to favour the NTP format, may lie in the simplicity of certain
calculations. Conversions between 16-, 32-, and 64-bit values can be performed
by efficient bitshift operations. Adding and subtracting is also simply
possible. A potential drawback are that rounding errors to nanoseconds exist,
and those may not be distributed evenly. This may prevent the use of accurate
high resolution measurements, where rounding errors may become significant.</t>
        <t>One reason to favour the PTP format, which counts the fraction of time in an
integer number of nanoseconds, lies in the field of frequency metrology. Many
physical clocks count time based on a 10 MHz, 100 MHz, 1 GHz or even 10 GHz
oscillator. These frequencies can be expressed as powers of 10 of a
nanosecond. In addition, calculations in nanoseconds have a more natural feel
than those in, e.g., 2^(-32) = 232.8... picosecond units. Other arguments are
that PTP implementations often feature accurate hardware timestamping units,
and that all major operating systems deliver time in nanoseconds. Therefore
the fractional seconds will be represented in nanoseconds.</t>
        <t>Due to the technical restrictions of an IP option, the format for the
timestamp must be chosen in a clever way. To represent one second in
nanoseconds, 30 bits are sufficient. It is proposed to take the thirty least
significant bits of a 32-bit word for this. Reserving the two most significant
bits for other purposes. For the seconds part of the timestamp, 7 transferred
bits are sufficient to reproduce the sender timestamp on the receiver, it
would make sense to transfer at least an octet second part. The additional
number of seconds may be used to relieve the requirement on the time
synchronization of the two systems in use.</t>
        <ul spacing="normal">
          <li>
            <t>For the IP measurement option, the PTP Timestamp format will be used as the
basis for both seconds and nanoseconds. The least significant bits of the
seconds field will be used in the IP measurement option.</t>
          </li>
        </ul>
      </section>
      <section anchor="unique-packet-identifier">
        <name>Unique packet identifier</name>
        <t>The classical means of determining whether packets are sent in order, is by
use of a counter that increments upon sending of each subsequent packet.</t>
        <t>As discussed in 5.2 each packet will be marked with a sender timestamp with ns
resolution. On 10 Gbit/s links, sending one minimum size frame takes 67.2 ns.
Therefore, the timestamp alone suffices to uniquely order packets sent on links
up to 100 Gbit/s (6.72 ns / frame). At higher link speeds, an additional
numerator can be used to subdivide the timestamp. For a 1 Pbit/s link, a
numerator that is capable of counting to 1489 is sufficient to uniquely
numerate ethernet frames and thus IP packets. This requires at least an 11 bit
counter.</t>
        <t>The IP ID field seems a good numerator candidate for counting datagrams, but
it is currently specified to be solely used for fragmentation and reassembly
by <xref target="RFC6864"/>. Therefore, it is not suitable for measurement purposes (it is
always zero for unfragmented packets) also because some sources do not vary
the ID at all.</t>
        <t>Duplication detection may be based on hashes <xref target="RFC6621"/>, but loss and
reordering measurements are not possible when higher protocol layers lack
information to detect these. This is e.g. the case with UDP. A timestamp can
thus not replace a numerator field, since it does not show whether packets are
missing, even on slow links.</t>
        <t>A unique packet identifier of at least 12 bits is therefore recommended. Only
on very fast links problems may occur when the counter overflows and multiple
packet have the same timestamp and unique packet identifier.</t>
      </section>
      <section anchor="flow-identifier">
        <name>Flow identifier</name>
        <t>The last bit of contents that may be needed for transport layer-less
protocols is a definition of a microflow identifier. For most current day
protocols there are 16-bit port numbers specified for source and destination
ports. This would call for a 32-bit source/destination flow field. On the
other hand, there are very few protocols without a transport layer. The IP
packet definition allows only 256 of them, defined by the protocol byte.
For outgoing flows, a host can only open 2^16 ports, so a 16-bit flow
identifier for transport-less protocols suffices from this perspective.</t>
        <t>The IPv6 protocol <xref target="RFC8200"/> specifies a 20-bit flow label. Defining 20 bits
for the flow label allows unification of its use with IPv6 <xref target="RFC8200"/>.</t>
        <t>It must be noted that flow labels and the IP options are not protected against
unwanted modifications and are for measurement purposes only. Transport-less
protocols can open multiple data flows based on higher level protocols (e.g.
application protocol). It is advised to generate flow labels stateful
according to <xref target="RFC6437"/>. For compatibility reasons this will be the course of
action for the IPv4 option.</t>
      </section>
      <section anchor="alternate-marker">
        <name>Alternate marker</name>
        <t>Hybrid measurements may be done using an alternate marker method such as
specified in <xref target="RFC9341"/>. The measurement option could be a way to include such
a marker independent from, e.g., an alternating DSCP. Therefore, at least one
bit must be reserved as alternating marker bit.</t>
      </section>
      <section anchor="include-in-calculation-marker">
        <name>Include in calculation marker</name>
        <t>Since switches and routers may have differentiating behaviour when packet
sizes differ, the same packet with and without the IP measurement option could
be treated differently. To allow for unbiased measurements, even when only
fractions of the packets of a microflow are to be included in measurements,
the packets that are not to be measured on, must be of the same length. This
means that a dummy measurement option must be included in the IP header in
this case. At least one bit must be reserved as "include in calculation" bit,
to allow the receiver to decide whether to include a packet in the
measurements or not.</t>
      </section>
      <section anchor="security-measures">
        <name>Security measures</name>
        <t>There are reasons to apply security measures to this data in the packet
header. Since the IP measurement option can be used to verify an SLA / SLS,
there may be monetary reasons to falsify the information in the packet, to
make the measurement system think that all is fine on the network. E.g.,
forging of the timestamp by the last switch in the path may make the receiver
think that the packet delay was less than it actually is.</t>
        <t>There are multiple scenarios thinkable how IT security measures are applied
to the IP measurement option.</t>
        <ol spacing="normal" type="1"><li>
            <t>Proof of integrity of the IP measurement option, while keeping the content
available for third parties to use.</t>
          </li>
          <li>
            <t>Encryption of the contents of the IP measurement option to hide the content
for third parties.</t>
          </li>
        </ol>
        <t>Since the IP header, including the IP measurement option can be freely
manipulated by hosts en-route, it is not possible to avoid that hosts may
remove the IP measurement option entirely. All fields that need to be
manipulated are easily adapted. An end-host may know that the IP measurement
option has been removed, by being configured to expect the IP MO on certain
connections with other hosts and not receiving any. The configuration can be
static or dynamic, e.g., by means of a measurement management protocol. Such
protocols would need definition in a separate RFC.</t>
        <t>To ensure the integrity of the IP measurement option, a cryptographic
signature can be used. It could be added as additional bytes to the IP
measurement option. A HMAC or a hash of the signature can be added when
symmetric keys are used. The latter has the advantage that the space needed to
add the hash can be limited, e.g., by including only the first x octets of the
full hash. It is quite expensive to add a full public/private key signature.</t>
        <t>Upon signing an option, hosts that know the appropriate keys can verify the
data in the IP measurement option. Depending on the type of signature used, it
may be possible for hosts to change the option content and resign. It must,
therefore, be ensured that, for such types of signatures, only trusted hosts
obtain the keys. One indication of the presence of a signature is the length
of the option. Hosts involved in verifying options before making measurements
should however rely on other sources to determine if they expect signed
measurement options. In this case they may also reliably detect removal of
signatures, which is easily possible.</t>
        <t>Fragmentation must be taken into account, and data in the IP header that is
required for fragmentation and defragmentation may be changed by systems "on
the path". It can therefore not be used as input for cryptographic signatures.</t>
        <t>To perform various measurements the signature must be made over a pseudo
header including the following data:
1. IP version
2. IP internet header length (Fixed value, 10 words)
3. IP total length (Payload length)
4. IP protocol type (Next header field)
4a. (Flow Label)
5. IP source address
6. IP destination address
7. IP measurement option, including:
    a. IP option type
    b. IP option length
    c. IP measurement option data excluding the signature / signature hash.
8. Hash over the IP packet data. (Hash over Payload)</t>
        <t>The fields in the pseudo header are composed as follows for the IPv4 protocol:</t>
        <artwork><![CDATA[
  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |Version|  IHL  |          Total Length         |    Protocol   |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                       Source Address                          |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                    Destination Address                        |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
 .                                                               .
 .                   IP measurement option                       .
 .                                                               .
 |                                                               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                  Hash over IP packet data                     |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        <t>The fields in the pseudo header are composed as follows for the IPv6 protocol:</t>
        <artwork><![CDATA[
  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |Version|1 0 1 0|         Payload Length        |  Next Header  |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |               Flow Label              |       Reserved        |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
 +                                                               +
 |                                                               |
 +                       Source Address                          +
 |                                                               |
 +                                                               +
 |                                                               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
 +                                                               +
 |                                                               |
 +                    Destination Address                        +
 |                                                               |
 +                                                               +
 |                                                               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
 .                                                               .
 .                   IP measurement option                       .
 .                                                               .
 |                                                               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                     Hash over Payload                         |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        <t>The hash over the IP packet data (Payload) ensures that port numbers are
always included when present, independent of the higher layer protocol, since
it is favoured to make the implementation independent from possible higher
layer protocols. The requirement on the hash over the IP packet data is that
it can be quickly calculated, and that spoofing the data takes, on average,
more time than the network timeout. Alternatively, a cryptographic hash, using
a private key, may be derived over the pseudo header and the IP packet data
(Payload). Note that the length of the hash must not be limited to 32 bits.</t>
        <t>If cryptographic encryption is feasible given the maximum length of 40 octets
(320 bits) of the IP MO, should be determined elsewhere. Also, which algorithms
to use are not part of this specification. In any case it would be proper that
untrusted hosts on the path know that options are encrypted, and cannot be
used to perform measurements. Therefore, a way to determine whether, or not, an
encrypted measurement option is used must be present. It is proposed to use
the option type for these purposes.</t>
        <t>In all cases the generation and distribution of cryptographic keys is
performed by use of a secure key distribution protocol, that is not part of
this specification. This protocol must be capable of generating keys for each
distinguishable microflow to perform signing or encrypting the IP measurement
option data.</t>
        <t>The possibility of signed and encrypted IP measurement options is indicated in
this RFC, but no particular specification is given yet. Such specifications
are to be subject of RFCs to be written, as are the specifications for
measurement management protocols.</t>
      </section>
    </section>
    <section anchor="ipv4-option-definition">
      <name>IPv4 option definition</name>
      <t>The maximum length of an IPv4 option is ten 32-bit words, or 40 octets, see
<xref target="RFC791"/>. An IPv4 option always includes the option type. The length octet is
always present for IPv4 options with more than only the option type. The IPv4
measurement option is therefore defined as follows.</t>
      <artwork><![CDATA[
  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |  Option Type  | Option Length |             UID               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |               Flow Label              |         Seconds       |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |I A|                   Nanoseconds                             |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
 +                                                               +
 |                                                               |
 +               (Optional) Cryptographic Signature              +
 |                                                               |
 +                                                               +
 |                                                               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
      <t>Option Type: 8 bits</t>
      <ul empty="true">
        <li>
          <t>The IP measurement option is a debugging and measurement option, and must be
present in each fragment of an IP datagram. Two option types are requested,
one for non-encrypted options, with or without signature, and one for
encrypted options, that can only be read by systems on the path that belong
to the trusted group of measurement clients.</t>
          <t>The option may be skipped over if the Option Type is unknown, and the option
data does not change en-route.</t>
          <ul spacing="normal">
            <li>
              <t>Bit  8   (copied flag)   : 1 = copied</t>
            </li>
            <li>
              <t>Bit  6-7 (option class)  : 2 = debugging and measurement</t>
            </li>
            <li>
              <t>Bits 1-5 (option number) : 26 = Unencrypted Measurement Option (UMO),
                                                 to be assigned by IANA</t>
            </li>
            <li>
              <t>Bits 1-5 (option number) : 27 = Encrypted Measurement Option (EMO),
                                                 to be assigned by IANA</t>
            </li>
          </ul>
          <t>Value becomes 218 and 219</t>
        </li>
      </ul>
      <t>Option Length: 8 bits</t>
      <ul empty="true">
        <li>
          <t>The length of the IP measurement option in octets, including length of the
cryptographic signature when present. For an encrypted and signed
measurement option, all octets are included in the length.</t>
        </li>
      </ul>
      <t>Unique Identifier (UID): 16 bits</t>
      <ul empty="true">
        <li>
          <t>The Unique Identifier is incremented for each sent IP packet. This allows
the receiving host to identify packet losses, duplications and re-orderings.
It must be noted that each fragment of a fragmented datagram contains a copy
of the IP measurement option. Therefore systems "on the path" should rely,
e.g., on the fragment offset to perform such measurements. End-hosts perform
measurements on the packet before fragmenting and after re-assembly.</t>
        </li>
      </ul>
      <t>Flow Label: 20 bits</t>
      <ul empty="true">
        <li>
          <t>The Flow Label as specified in the IPv6 standard <xref target="RFC8200"/>.</t>
        </li>
      </ul>
      <t>Seconds: 12 bits</t>
      <ul empty="true">
        <li>
          <t>The 12 least significant bits of the seconds field of the PTP Timestamp.</t>
        </li>
      </ul>
      <t>Usage Flags: 2 bits</t>
      <ul empty="true">
        <li>
          <t>The Usage Flags indicate how the option can be used by the receiving host.</t>
          <ul spacing="normal">
            <li>
              <t>Bit 0: 0 = Dont include in measurement', 1 = Include in measurement</t>
            </li>
            <li>
              <t>Bit 1: Alternate Marker</t>
            </li>
          </ul>
          <t>The I(nclude in measurement) flag signals whether or not the IP measurement
option contains real data. Sending empty data (all 0) may be done to relieve
computational efforts of the sending systems under high data traffic loads,
while keeping the IP header size equal for all IP packets. For signed
connections the cryptographic signature must also be applied on "empty" IP
measurement options, since spoofing would otherwise be possible.</t>
          <t>The A(lternate Marker) can be used to implement alternate marker measurement
methods. Alternate marker methods using this IP measurement option, must
specify how they use this bit.</t>
        </li>
      </ul>
      <t>Nanoseconds: 30 bits</t>
      <ul empty="true">
        <li>
          <t>The nanoseconds field contains the number of nanoseconds of the timestamp.
When a system is not capable of providing timestamps with nanosecond
resolution, the highest resolution that can be provided is used and the
other digits of the nanosecond field are set to 0. When a system uses, e.g.,
a 16-bit subdivision of one second (such as NTP timestamps may), the decimal
value is rounded to the nearest nanosecond. Adding or subtracting a certain
random number of nanoseconds to the result may be used to prevent rounding
bias. This is up to the implementer of the IP measurement option for a
system, but must be documented.</t>
        </li>
      </ul>
      <t>(Optional) Cryptographic Signature:</t>
      <ul empty="true">
        <li>
          <t>Optionally up to 7 words, 28 octets, or 224 bits can be used for the
transmission of a cryptographic signature.</t>
        </li>
      </ul>
      <t>The option order has been chosen such that when this option is the first
option, the data aligns in the IP packet, hopefully resulting in an efficient
processing in host systems, which would be needed on high-speed links. No
EOOL option is needed when this option is the only one <xref target="RFC791"/>,
<xref target="IANA-IP-Option-Numbers"/>.</t>
      <t>When the option is encrypted only the first two octets have their normal
meaning. The rest of the octets form the ciphertext.</t>
    </section>
    <section anchor="ipv6-option-definition">
      <name>IPv6 option definition</name>
      <t>The maximum length of an IPv6 Hop-by-Hop Option is 255 octets, see <xref target="RFC8200"/>.
An IPv6 option always includes the option type, and length octet. The IPv6
measurement option will be defined as follows.</t>
      <artwork><![CDATA[
  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |  Option Type  | Option Length |           Seconds             |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |I A|                   Nanoseconds                             |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                              UID                              |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
 +                                                               +
 |                                                               |
 +               (Optional) Cryptographic Signature              +
 |                                                               |
 +                                                               +
 |                                                               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
      <t>Option Type: 8 bits</t>
      <ul empty="true">
        <li>
          <t>The IP measurement option is a debugging and measurement option, and must be
present in each fragment of an IP datagram. Two option types are requested,
one for non-encrypted options, with or without signature, and one for
encrypted options, that can only be read by systems on the path that belong
to the trusted group of measurement clients.</t>
          <t>The option may be skipped over if the Option Type is unknown, and the option
data does not change en-route.</t>
          <ul spacing="normal">
            <li>
              <t>Bit  8   (copied flag)  : 1 = copied</t>
            </li>
            <li>
              <t>Bit  6-7 (option class  : 2 = debugging and measurement</t>
            </li>
            <li>
              <t>Bits 1-5 (option number): 26 = Unencrypted Measurement Option (UMO),
                                             to be assigned by IANA</t>
            </li>
            <li>
              <t>Bits 1-5 (option number): 27 = Encrypted Measurement Option (EMO),
                                             to be assigned by IANA</t>
            </li>
          </ul>
          <t>Value becomes 218 and 219</t>
        </li>
      </ul>
      <t>Option Length: 8 bits</t>
      <ul empty="true">
        <li>
          <t>The length of the IP measurement option in octets, including length of the
cryptographic signature when present. For an encrypted and signed
measurement option all octets are included in the length.</t>
        </li>
      </ul>
      <t>Seconds: 16 bits</t>
      <ul empty="true">
        <li>
          <t>The 16 least significant bits of the seconds field of the PTP Timestamp.
When the IPv4 algorithms are used for calculations, the four most
significant bits of the Seconds field may be skipped.</t>
        </li>
      </ul>
      <t>Usage Flags: 2 bits</t>
      <ul empty="true">
        <li>
          <t>The Usage Flags indicate how the option can be used by the receiving host.</t>
          <ul spacing="normal">
            <li>
              <t>Bit 0: 0 = Dont include in measurement', 1 = Include in measurement</t>
            </li>
            <li>
              <t>Bit 1: Alternate Marker</t>
            </li>
          </ul>
          <t>The I(nclude in measurement) flag signals whether or not the IP measurement
option contains real data. Sending empty data (all 0) may be done to relieve
computational efforts of the sending systems under high data traffic loads,
while keeping the IP header size equal for all IP packets. For signed
connections the cryptographic signature must also be applied on "empty" IP
measurement options.</t>
          <t>The A(lternate Marker) can be used to implement alternate marker measurement
methods. Alternate marker methods using this IP measurement option, must
specify how they use this bit.</t>
        </li>
      </ul>
      <t>Nanoseconds: 30 bits</t>
      <ul empty="true">
        <li>
          <t>The nanoseconds field contains the number of nanoseconds of the timestamp.
When a system is not capable of providing timestamps with nanosecond
resolution, the highest resolution that can be provided is used and the
other digits of the nanosecond field are set to 0. When a system uses, e.g.,
a 16-bit subdivision of one second (such as NTP timestamps may), the decimal
value is rounded to the nearest nanosecond. Adding or subtracting a certain
random number of nanoseconds to the result may be used to prevent rounding
bias. This is up to the implementer of the IP measurement option for a
system, but must be documented.</t>
        </li>
      </ul>
      <t>Unique Identifier (UID): 32 bits</t>
      <ul empty="true">
        <li>
          <t>The Unique Identifier is incremented for each sent IP packet. This allows
the receiving host to identify packet losses, duplications and re-orderings.
It must be noted that each fragment of a fragmented datagram contains a copy
of the IP measurement option. Therefore systems "on the path" should rely,
e.g., on the fragment offset to perform such measurements. End-hosts perform
measurements on the packet before fragmenting and after re-assembly.
Note that the 16 least significant bits of the UID can be used with the IPv4
algorithms, since they roll over in similar fashion. The full 32-bit UID has
relevance on very fast IPv6 links.</t>
        </li>
      </ul>
      <t>(Optional) Cryptographic Signature:</t>
      <ul empty="true">
        <li>
          <t>Optionally up to 63 words, 252 octets, or 2016 bits can be used for the
transmission of a cryptographic signature.</t>
        </li>
      </ul>
      <t>As the flow identifier is an integral 20-bit field in the IPv6 header it is
not included in the IPv6 measurement option. When the option is encrypted only
the first two octets have their normal meaning. The rest of the octets form
the ciphertext.</t>
      <t>This option shall be aligned in a 4n fashion.</t>
    </section>
    <section anchor="using-the-ip-measurement-option">
      <name>Using the IP measurement option</name>
      <t>The IP MO was defined to enable the hybrid measurement of various statistics
on Diffserv microflows <xref target="RFC2474"/>. Amongst others these are:
- One-way Packet Delay, Mean Packet Delay, Packet Delay Variation and related
  statistics.
- Packet Losses, Reordering and Duplication</t>
      <t>The first goal is to measure such statistics on microflows <xref target="RFC2474"/> between
two end hosts at a point-to-point (P2P) IP link. The statistics can of course
be extended to multi-point-to-multi-point (MP2MP) links. This requires that
the packets can be uniquely assigned to a microflow at the IP layer and that
all properties needed to perform the measurements must be available either by
a statistics collector or by the destination host(s). It is assumed that each
microflow is assigned a unique flow identifier by the source host. This means
that each connection has two microflows, each with its own flow identifier.</t>
      <t>A second goal is that hosts en route, can try to measure or estimate the
measurands on a microflow basis. The difficulty here is that not all packets
must pass a certain host on the route. Nevertheless, useful information can be
obtained from the estimations made by on route hosts. E.g. the fraction of
the traffic traversing certain routes A, B, or C.</t>
      <t>As explained, timestamps upon transmission and reception are needed to perform
delay measurements and their related measurants. To perform packet loss and
related measurements an incrementing numeration counter is needed (NUM).</t>
      <section anchor="measurement-procedure-on-the-end-hosts">
        <name>Measurement procedure on the end hosts</name>
        <t>It is more or less assumed that microflows belong to a pair of sockets on the
source and destination hosts. The operating system (OS) makes counters
available that can be used by polling or (when a fancier way is needed) by
an interrupt mechanism. Such interrupts can come at a programmable time, e.g.
every second. This time interval will be termed measurement interval (MI).
Since the OS has the timers, this seems a logical scheme. The presence of the
MO may trigger the calculation of the various statistics, this can be a
configuration option.</t>
        <t>Hosts can make two queues available to user space programs where the outgoing
and incoming IP headers of each flow are queued for user space analysis. For
incoming packets the reception timestamp is also inserted in this queue.</t>
        <t>It must however be considered that the statistics are only reliable after the
maximum packet delay (MPD) of the system, known to the operator, has expired.
This MPD must thus be configurable but may be set to a default value of 120
seconds. It is advised to make these settings configurable for per microflow
at the destination host. It is advised that each MI becoming available after
MPD is tagged with the start time of the interval at the TAI timescale
<xref target="IEEE1588-2019"/> also used in the MO tagged packets.</t>
        <t>Delay and its related metrics can be readily determined when the destination
host knows the time when the packet was sent. The source time stamp is
included in the MO option. If no packets are lost delay statistics can be
presented immediately to the user.</t>
        <t>Losses can be calculated when the packet counters on the source and
destination are compared, but also when the destination knows which packets
were lost. The packet number (NUM) is therefore included in the MO together
with the time stamp.</t>
        <t>When an IP packet is created the space for an MO is reserved in the packet's
option header and is indicated with a pointer in memory. The flow label can
be inserted readily. Just before transmission of the first octet of the IP
packet a timestamp is retrieved from the OS kernel (transmission time stamp
TTS) and inserted into the IP packet. The colouring counter NUM is inserted
and increased. The packet is then transmitted by the OS. After transmission
the kernel updates the kernel counters for transmission. It may, but must
not, make the IP header available for analysis by forwarding it to a queue
that can be read by user space programs.</t>
        <t>The receiving host has memory reserved for a timestamp and the data of an
incoming IP packet header. When the receiving host sees that an IP packet
carries the MO option, it generates a timestamp (reception time stamp RTS)
when the last octet of the packet has been received. When the completeness
of the packet has been verified (checksums), the MO data and the RTS are used
to update the kernel statistics. The system may also make the IP header and
the RTS available for analysis by forwarding it to a queue that can be read
by user space programs.</t>
        <t>At the receiving host the following data are used to indicate the flow:
- source IP address
- destination IP address
- flow ID</t>
        <t>Normally a microflow would be known based on the protocol ID and source and
destination ports, these can still be used for backward compatibility or
to calculate metrics on microflows that do not carry the MO option. Thoughts
on raw data formats for statistical analysis by a data collection system are
given in Notes for raw metering protocols.</t>
      </section>
      <section anchor="measurement-procedure-at-observers">
        <name>Measurement procedure at observers</name>
        <t>Each switch with deep packet inspection capabilities, each router and host
observing IP packets with an MO option can generate a RTS upon complete
reception. Statistics can now be calculated for each microflow. However, care
must be taken when interpreting these statistics, but they may be useful for
network fault analysis. In the remainder of this section the possibilities
and limitations for measurements made by observers will be discussed.</t>
        <t>The observation on the MPD for end hosts, also holds for observing hosts.
Therefore, the administrator must be able to set the MPD for gathering
statistics. An observer may make raw packet headers available for analysis to
other systems. Observers may contain lists that limit the number of hosts for
which to gather statistics. This is not very different from the way Diffserv
determines which microflows to process or not.</t>
        <t>A speciality for observers is that they cannot be certain that all packets
that are not lost, pass the system. Therefore, care must be taken when
calculating statistics. For example, a loss statistic may say more about the
fraction of microflow packets passing a system than on the actual loss. With
timestamps and an ID, such fractions can even be detected with high
certainty.</t>
        <t>By means of the MO an observer can calculate all statistics that a
destination host can. It would be possible to introduce additional metrics
that are specifically tuned for observers. For example, metrics that only
take largely complete sets of packets to calculate losses, reordering and
duplication.</t>
        <t>The following properties can at least be observed with the standard metrics:
- Fraction of packets passing the observer.
- One-way Delay and related statistics from source to observer.
- Packet reordering and duplicates on consecutive sequences of packets.</t>
        <t>For a full set of observers, one could extend the measurement scheme by
sending the MO and observer RTS to an external measurement system. Such an
external system can then calculate more than the individual host. The raw
data that these systems must transmit to enable this are those the
destination host transmits.</t>
      </section>
      <section anchor="metrics-and-measurement-protocols">
        <name>Metrics and Measurement protocols</name>
        <t>The NUM+TTS information is used to generate statistics on the One-way packet
loss, the one-way packet reordering and the one-way packet duplication.
Metrics for these properties can be related to those available in the IP
Performance Metrics (IPPM) framework <xref target="RFC2330"/>, <xref target="RFC7680"/>. The same holds
for Delay based metrics <xref target="RFC7679"/>, <xref target="RFC3393"/>. On the other hand, the metrics
could be taken from the Ethernet specifications <xref target="MEF10.4"/>. This framework
seems to be more mature at the moment.</t>
        <t>When the destination host makes the MO option and necessary information for
metric determination available to the user space. Advanced metric
calculations must not take place in kernel space and user space programs can
be used to make measurement data available according to one or more sets of
metrics, or may even send the raw data off to a storage server for later
processing. The idea that information can be available in real-time must not
be followed since the MPD must always be observed.</t>
        <t>To send measurement statistics to an overarching data collection system,
protocols like RMON <xref target="RFC2819"/> and its extensions or IPFIX <xref target="RFC7011"/> can be
used or extended.</t>
      </section>
      <section anchor="notes-for-systems-with-real-time-protocols">
        <name>Notes for systems with real-time protocols</name>
        <t>For systems relying on real-time protocols in the network an MPD of 120
seconds, or even 10 seconds, may be way to long. Depending on the criticality
of knowing the network performance near real time, the MPD on sockets
involved, can be set much lower, e.g. 1 second. This is based on the fact
that packets that have longer delay have no meaning anymore for such
protocols and are deemed lost.</t>
      </section>
      <section anchor="notes-for-raw-metering-data-protocols">
        <name>Notes for raw metering data protocols</name>
        <t>When sending raw data to an analysis system for full system analysis the
following must be included in a data unit per measured packet. Such a feature
can, of course, only be used when the network has sufficient capacity left to
send this additional data. A protocol specification is left to the
implementer.</t>
        <t>One data unit would contain a flow identification <xref target="RFC6437"/> consisting of:</t>
        <ul spacing="normal">
          <li>
            <t>source IP address (32 or 128 bit)</t>
          </li>
          <li>
            <t>destination IP address (32 or 128 bit)</t>
          </li>
          <li>
            <t>flow ID (20 bit)
or, when it occupies less bits, a hash (e.g. for IPv6), and measurement data:</t>
          </li>
          <li>
            <t>NUM field (16 bit)</t>
          </li>
          <li>
            <t>TTS nanosecond counter (32 bit)</t>
          </li>
          <li>
            <t>TTS second counter (12/16 bit)</t>
          </li>
          <li>
            <t>RTS nanosecond counter (32 bit)</t>
          </li>
          <li>
            <t>RTS second counter (12/16 bit)</t>
          </li>
        </ul>
        <t>for IPv4 this is a total of 188 bits. For IPv6 this could be 160-bit for a
flow hash (e.g. SHA1) and 104-bit for the measurement data (264 bit). It is
proposed that source hosts set the RTS fields to 0.</t>
        <t>Multiple data units can be packed in one IP packet for the measurement system
A specification for such a protocol can be created when needed. This could
include the traditional Diffserv ports + protocol for IPv4 for non-MO enabled
measurements.</t>
        <t>A consideration could be to include in these data the following data for the
observer transmission time:</t>
        <ul spacing="normal">
          <li>
            <t>ONUM field (16 bit)</t>
          </li>
          <li>
            <t>OTTS nanosecond counter (32 bit)</t>
          </li>
          <li>
            <t>OTTS second counter (12 bit)</t>
          </li>
        </ul>
        <t>where ONUM is the observer NUM field at transmission, and OTTS is the
observer transmission time stamp. This would allow to separate wire and
system time for an observer.</t>
        <t>Alternatively, packets can almost always be identified based on a hash. Hash
based measurement methods <xref target="RFC7014"/> would nevertheless need to send at least
the timestamps in order to determine the system delays for packets. It is
therefore not necessarily cheaper (bit and computation wise) to use a hash
based measurement approach.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Security measures were considered during the design of the IP option, but,
especially in the case of the IPv4 measurement option, possibilities are
limited due to the limited available space in the IPv4 header. Nevertheless,
dropping of the IP measurement option cannot be prevented by the end-hosts.</t>
      <t>As an alternative to real security measures, it is also possible to share
information on how to obfuscate the measurement option information for third
parties. The timestamps and NUM fields may be manipulated by a PRNG of
sufficient strength to make systems on the packet path that are not in the
owner's hand, guess about the true values. The systems owned by the entity
doing the measurements, can share the seeds of the PRNGs, and regularly update
these, using out of band securely encrypted channels.</t>
      <t>It must be considered that, with current network systems, data can be recorded
in abundance, and that obfuscating algorithms may be broken quickly, allowing
the third party to at least read the data in the IP measurement option.</t>
      <t>However, the author of this RFC would not endorse such a method as secure.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requests two IP option numbers to be registered by IANA.</t>
      <artwork><![CDATA[
Name: Unencrypted measurement option
Abbreviation: UMO
Option class: Debugging and measurement (2)
Copy: Yes (1)

Name: Encrypted measurement option
Abbreviation: EMO
Option class: Debugging and measurement (2)
Copy: Yes (1)
]]></artwork>
      <t>It depends on the IANA policy if the option number for encrypted options
should already be reserved, since there is no current implementation of it
and the IP option registry space is very limited.</t>
    </section>
    <section anchor="conclusion">
      <name>Conclusion</name>
      <t>An IPv4 and IPv6 option was introduced that is flexible enough to support
various measurement schemes on various types of IP traffic. Although it ads
to the length of the IP packet, it can be used to measure traffic in
situations where full statistics are needed (e.g., systems with stringent
SLS requirements on delay and packet loss) and bandwidth is not the limitation
for applications.</t>
      <t>Measurement procedures and relevant metrics are to be discussed in companion
RFCs.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC791">
          <front>
            <title>Internet Protocol</title>
            <author fullname="J. Postel" initials="J." surname="Postel"/>
            <date month="September" year="1981"/>
          </front>
          <seriesInfo name="STD" value="5"/>
          <seriesInfo name="RFC" value="791"/>
          <seriesInfo name="DOI" value="10.17487/RFC0791"/>
        </reference>
        <reference anchor="RFC8200">
          <front>
            <title>Internet Protocol, Version 6 (IPv6) Specification</title>
            <author fullname="S. Deering" initials="S." surname="Deering"/>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <date month="July" year="2017"/>
            <abstract>
              <t>This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="86"/>
          <seriesInfo name="RFC" value="8200"/>
          <seriesInfo name="DOI" value="10.17487/RFC8200"/>
        </reference>
        <referencegroup anchor="BCP14" target="https://www.rfc-editor.org/info/bcp14">
          <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119">
            <front>
              <title>Key words for use in RFCs to Indicate Requirement Levels</title>
              <author fullname="S. Bradner" initials="S." surname="Bradner"/>
              <date month="March" year="1997"/>
              <abstract>
                <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
              </abstract>
            </front>
            <seriesInfo name="BCP" value="14"/>
            <seriesInfo name="RFC" value="2119"/>
            <seriesInfo name="DOI" value="10.17487/RFC2119"/>
          </reference>
          <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174">
            <front>
              <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
              <author fullname="B. Leiba" initials="B." surname="Leiba"/>
              <date month="May" year="2017"/>
              <abstract>
                <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
              </abstract>
            </front>
            <seriesInfo name="BCP" value="14"/>
            <seriesInfo name="RFC" value="8174"/>
            <seriesInfo name="DOI" value="10.17487/RFC8174"/>
          </reference>
        </referencegroup>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC1122">
          <front>
            <title>Requirements for Internet Hosts - Communication Layers</title>
            <author fullname="R. Braden" initials="R." role="editor" surname="Braden"/>
            <date month="October" year="1989"/>
            <abstract>
              <t>This RFC is an official specification for the Internet community. It incorporates by reference, amends, corrects, and supplements the primary protocol standards documents relating to hosts. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="3"/>
          <seriesInfo name="RFC" value="1122"/>
          <seriesInfo name="DOI" value="10.17487/RFC1122"/>
        </reference>
        <reference anchor="RFC2330">
          <front>
            <title>Framework for IP Performance Metrics</title>
            <author fullname="V. Paxson" initials="V." surname="Paxson"/>
            <author fullname="G. Almes" initials="G." surname="Almes"/>
            <author fullname="J. Mahdavi" initials="J." surname="Mahdavi"/>
            <author fullname="M. Mathis" initials="M." surname="Mathis"/>
            <date month="May" year="1998"/>
            <abstract>
              <t>The purpose of this memo is to define a general framework for particular metrics to be developed by the IETF's IP Performance Metrics effort. This memo provides information for the Internet community. It does not specify an Internet standard of any kind.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2330"/>
          <seriesInfo name="DOI" value="10.17487/RFC2330"/>
        </reference>
        <reference anchor="RFC2474">
          <front>
            <title>Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers</title>
            <author fullname="K. Nichols" initials="K." surname="Nichols"/>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <date month="December" year="1998"/>
            <abstract>
              <t>This document defines the IP header field, called the DS (for differentiated services) field. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2474"/>
          <seriesInfo name="DOI" value="10.17487/RFC2474"/>
        </reference>
        <reference anchor="RFC2475">
          <front>
            <title>An Architecture for Differentiated Services</title>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <author fullname="M. Carlson" initials="M." surname="Carlson"/>
            <author fullname="E. Davies" initials="E." surname="Davies"/>
            <author fullname="Z. Wang" initials="Z." surname="Wang"/>
            <author fullname="W. Weiss" initials="W." surname="Weiss"/>
            <date month="December" year="1998"/>
            <abstract>
              <t>This document defines an architecture for implementing scalable service differentiation in the Internet. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2475"/>
          <seriesInfo name="DOI" value="10.17487/RFC2475"/>
        </reference>
        <reference anchor="RFC2819">
          <front>
            <title>Remote Network Monitoring Management Information Base</title>
            <author fullname="S. Waldbusser" initials="S." surname="Waldbusser"/>
            <date month="May" year="2000"/>
            <abstract>
              <t>This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in TCP/IP-based internets. In particular, it defines objects for managing remote network monitoring devices. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="59"/>
          <seriesInfo name="RFC" value="2819"/>
          <seriesInfo name="DOI" value="10.17487/RFC2819"/>
        </reference>
        <reference anchor="RFC3168">
          <front>
            <title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
            <author fullname="K. Ramakrishnan" initials="K." surname="Ramakrishnan"/>
            <author fullname="S. Floyd" initials="S." surname="Floyd"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <date month="September" year="2001"/>
            <abstract>
              <t>This memo specifies the incorporation of ECN (Explicit Congestion Notification) to TCP and IP, including ECN's use of two bits in the IP header. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3168"/>
          <seriesInfo name="DOI" value="10.17487/RFC3168"/>
        </reference>
        <reference anchor="RFC3393">
          <front>
            <title>IP Packet Delay Variation Metric for IP Performance Metrics (IPPM)</title>
            <author fullname="C. Demichelis" initials="C." surname="Demichelis"/>
            <author fullname="P. Chimento" initials="P." surname="Chimento"/>
            <date month="November" year="2002"/>
          </front>
          <seriesInfo name="RFC" value="3393"/>
          <seriesInfo name="DOI" value="10.17487/RFC3393"/>
        </reference>
        <reference anchor="RFC4656">
          <front>
            <title>A One-way Active Measurement Protocol (OWAMP)</title>
            <author fullname="S. Shalunov" initials="S." surname="Shalunov"/>
            <author fullname="B. Teitelbaum" initials="B." surname="Teitelbaum"/>
            <author fullname="A. Karp" initials="A." surname="Karp"/>
            <author fullname="J. Boote" initials="J." surname="Boote"/>
            <author fullname="M. Zekauskas" initials="M." surname="Zekauskas"/>
            <date month="September" year="2006"/>
            <abstract>
              <t>The One-Way Active Measurement Protocol (OWAMP) measures unidirectional characteristics such as one-way delay and one-way loss. High-precision measurement of these one-way IP performance metrics became possible with wider availability of good time sources (such as GPS and CDMA). OWAMP enables the interoperability of these measurements. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4656"/>
          <seriesInfo name="DOI" value="10.17487/RFC4656"/>
        </reference>
        <reference anchor="RFC5357">
          <front>
            <title>A Two-Way Active Measurement Protocol (TWAMP)</title>
            <author fullname="K. Hedayat" initials="K." surname="Hedayat"/>
            <author fullname="R. Krzanowski" initials="R." surname="Krzanowski"/>
            <author fullname="A. Morton" initials="A." surname="Morton"/>
            <author fullname="K. Yum" initials="K." surname="Yum"/>
            <author fullname="J. Babiarz" initials="J." surname="Babiarz"/>
            <date month="October" year="2008"/>
            <abstract>
              <t>The One-way Active Measurement Protocol (OWAMP), specified in RFC 4656, provides a common protocol for measuring one-way metrics between network devices. OWAMP can be used bi-directionally to measure one-way metrics in both directions between two network elements. However, it does not accommodate round-trip or two-way measurements. This memo specifies a Two-Way Active Measurement Protocol (TWAMP), based on the OWAMP, that adds two-way or round-trip measurement capabilities. The TWAMP measurement architecture is usually comprised of two hosts with specific roles, and this allows for some protocol simplifications, making it an attractive alternative in some circumstances. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5357"/>
          <seriesInfo name="DOI" value="10.17487/RFC5357"/>
        </reference>
        <reference anchor="RFC5905">
          <front>
            <title>Network Time Protocol Version 4: Protocol and Algorithms Specification</title>
            <author fullname="D. Mills" initials="D." surname="Mills"/>
            <author fullname="J. Martin" initials="J." role="editor" surname="Martin"/>
            <author fullname="J. Burbank" initials="J." surname="Burbank"/>
            <author fullname="W. Kasch" initials="W." surname="Kasch"/>
            <date month="June" year="2010"/>
            <abstract>
              <t>The Network Time Protocol (NTP) is widely used to synchronize computer clocks in the Internet. This document describes NTP version 4 (NTPv4), which is backwards compatible with NTP version 3 (NTPv3), described in RFC 1305, as well as previous versions of the protocol. NTPv4 includes a modified protocol header to accommodate the Internet Protocol version 6 address family. NTPv4 includes fundamental improvements in the mitigation and discipline algorithms that extend the potential accuracy to the tens of microseconds with modern workstations and fast LANs. It includes a dynamic server discovery scheme, so that in many cases, specific server configuration is not required. It corrects certain errors in the NTPv3 design and implementation and includes an optional extension mechanism.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5905"/>
          <seriesInfo name="DOI" value="10.17487/RFC5905"/>
        </reference>
        <reference anchor="RFC6437">
          <front>
            <title>IPv6 Flow Label Specification</title>
            <author fullname="S. Amante" initials="S." surname="Amante"/>
            <author fullname="B. Carpenter" initials="B." surname="Carpenter"/>
            <author fullname="S. Jiang" initials="S." surname="Jiang"/>
            <author fullname="J. Rajahalme" initials="J." surname="Rajahalme"/>
            <date month="November" year="2011"/>
            <abstract>
              <t>This document specifies the IPv6 Flow Label field and the minimum requirements for IPv6 nodes labeling flows, IPv6 nodes forwarding labeled packets, and flow state establishment methods. Even when mentioned as examples of possible uses of the flow labeling, more detailed requirements for specific use cases are out of the scope for this document.</t>
              <t>The usage of the Flow Label field enables efficient IPv6 flow classification based only on IPv6 main header fields in fixed positions. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6437"/>
          <seriesInfo name="DOI" value="10.17487/RFC6437"/>
        </reference>
        <reference anchor="RFC6621">
          <front>
            <title>Simplified Multicast Forwarding</title>
            <author fullname="J. Macker" initials="J." role="editor" surname="Macker"/>
            <date month="May" year="2012"/>
            <abstract>
              <t>This document describes a Simplified Multicast Forwarding (SMF) mechanism that provides basic Internet Protocol (IP) multicast forwarding suitable for limited wireless mesh and mobile ad hoc network (MANET) use. It is mainly applicable in situations where efficient flooding represents an acceptable engineering design trade-off. It defines techniques for multicast duplicate packet detection (DPD), to be applied in the forwarding process, for both IPv4 and IPv6 protocol use. This document also specifies optional mechanisms for using reduced relay sets to achieve more efficient multicast data distribution within a mesh topology as compared to Classic Flooding. Interactions with other protocols, such as use of information provided by concurrently running unicast routing protocols or interaction with other multicast protocols, as well as multiple deployment approaches are also described. Distributed algorithms for selecting reduced relay sets and related discussion are provided in the appendices. Basic issues relating to the operation of multicast MANET border routers are discussed, but ongoing work remains in this area and is beyond the scope of this document. This document defines an Experimental Protocol for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6621"/>
          <seriesInfo name="DOI" value="10.17487/RFC6621"/>
        </reference>
        <reference anchor="RFC6864">
          <front>
            <title>Updated Specification of the IPv4 ID Field</title>
            <author fullname="J. Touch" initials="J." surname="Touch"/>
            <date month="February" year="2013"/>
            <abstract>
              <t>The IPv4 Identification (ID) field enables fragmentation and reassembly and, as currently specified, is required to be unique within the maximum lifetime for all datagrams with a given source address/destination address/protocol tuple. If enforced, this uniqueness requirement would limit all connections to 6.4 Mbps for typical datagram sizes. Because individual connections commonly exceed this speed, it is clear that existing systems violate the current specification. This document updates the specification of the IPv4 ID field in RFCs 791, 1122, and 2003 to more closely reflect current practice and to more closely match IPv6 so that the field's value is defined only when a datagram is actually fragmented. It also discusses the impact of these changes on how datagrams are used. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6864"/>
          <seriesInfo name="DOI" value="10.17487/RFC6864"/>
        </reference>
        <reference anchor="RFC7011">
          <front>
            <title>Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of Flow Information</title>
            <author fullname="B. Claise" initials="B." role="editor" surname="Claise"/>
            <author fullname="B. Trammell" initials="B." role="editor" surname="Trammell"/>
            <author fullname="P. Aitken" initials="P." surname="Aitken"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>This document specifies the IP Flow Information Export (IPFIX) protocol, which serves as a means for transmitting Traffic Flow information over the network. In order to transmit Traffic Flow information from an Exporting Process to a Collecting Process, a common representation of flow data and a standard means of communicating them are required. This document describes how the IPFIX Data and Template Records are carried over a number of transport protocols from an IPFIX Exporting Process to an IPFIX Collecting Process. This document obsoletes RFC 5101.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="77"/>
          <seriesInfo name="RFC" value="7011"/>
          <seriesInfo name="DOI" value="10.17487/RFC7011"/>
        </reference>
        <reference anchor="RFC7014">
          <front>
            <title>Flow Selection Techniques</title>
            <author fullname="S. D'Antonio" initials="S." surname="D'Antonio"/>
            <author fullname="T. Zseby" initials="T." surname="Zseby"/>
            <author fullname="C. Henke" initials="C." surname="Henke"/>
            <author fullname="L. Peluso" initials="L." surname="Peluso"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>The Intermediate Flow Selection Process is the process of selecting a subset of Flows from all observed Flows. The Intermediate Flow Selection Process may be located at an IP Flow Information Export (IPFIX) Exporter or Collector, or within an IPFIX Mediator. It reduces the effort of post-processing Flow data and transferring Flow Records. This document describes motivations for using the Intermediate Flow Selection process and presents Intermediate Flow Selection techniques. It provides an information model for configuring Intermediate Flow Selection Process techniques and discusses what information about an Intermediate Flow Selection Process should be exported.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7014"/>
          <seriesInfo name="DOI" value="10.17487/RFC7014"/>
        </reference>
        <reference anchor="RFC7679">
          <front>
            <title>A One-Way Delay Metric for IP Performance Metrics (IPPM)</title>
            <author fullname="G. Almes" initials="G." surname="Almes"/>
            <author fullname="S. Kalidindi" initials="S." surname="Kalidindi"/>
            <author fullname="M. Zekauskas" initials="M." surname="Zekauskas"/>
            <author fullname="A. Morton" initials="A." role="editor" surname="Morton"/>
            <date month="January" year="2016"/>
            <abstract>
              <t>This memo defines a metric for one-way delay of packets across Internet paths. It builds on notions introduced and discussed in the IP Performance Metrics (IPPM) Framework document, RFC 2330; the reader is assumed to be familiar with that document. This memo makes RFC 2679 obsolete.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="81"/>
          <seriesInfo name="RFC" value="7679"/>
          <seriesInfo name="DOI" value="10.17487/RFC7679"/>
        </reference>
        <reference anchor="RFC7680">
          <front>
            <title>A One-Way Loss Metric for IP Performance Metrics (IPPM)</title>
            <author fullname="G. Almes" initials="G." surname="Almes"/>
            <author fullname="S. Kalidindi" initials="S." surname="Kalidindi"/>
            <author fullname="M. Zekauskas" initials="M." surname="Zekauskas"/>
            <author fullname="A. Morton" initials="A." role="editor" surname="Morton"/>
            <date month="January" year="2016"/>
            <abstract>
              <t>This memo defines a metric for one-way loss of packets across Internet paths. It builds on notions introduced and discussed in the IP Performance Metrics (IPPM) Framework document, RFC 2330; the reader is assumed to be familiar with that document. This memo makes RFC 2680 obsolete.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="82"/>
          <seriesInfo name="RFC" value="7680"/>
          <seriesInfo name="DOI" value="10.17487/RFC7680"/>
        </reference>
        <reference anchor="RFC7799">
          <front>
            <title>Active and Passive Metrics and Methods (with Hybrid Types In-Between)</title>
            <author fullname="A. Morton" initials="A." surname="Morton"/>
            <date month="May" year="2016"/>
            <abstract>
              <t>This memo provides clear definitions for Active and Passive performance assessment. The construction of Metrics and Methods can be described as either "Active" or "Passive". Some methods may use a subset of both Active and Passive attributes, and we refer to these as "Hybrid Methods". This memo also describes multiple dimensions to help evaluate new methods as they emerge.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7799"/>
          <seriesInfo name="DOI" value="10.17487/RFC7799"/>
        </reference>
        <reference anchor="RFC9330">
          <front>
            <title>Low Latency, Low Loss, and Scalable Throughput (L4S) Internet Service: Architecture</title>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe"/>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper"/>
            <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
            <author fullname="G. White" initials="G." surname="White"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>This document describes the L4S architecture, which enables Internet applications to achieve low queuing latency, low congestion loss, and scalable throughput control. L4S is based on the insight that the root cause of queuing delay is in the capacity-seeking congestion controllers of senders, not in the queue itself. With the L4S architecture, all Internet applications could (but do not have to) transition away from congestion control algorithms that cause substantial queuing delay and instead adopt a new class of congestion controls that can seek capacity with very little queuing. These are aided by a modified form of Explicit Congestion Notification (ECN) from the network. With this new architecture, applications can have both low latency and high throughput.</t>
              <t>The architecture primarily concerns incremental deployment. It defines mechanisms that allow the new class of L4S congestion controls to coexist with 'Classic' congestion controls in a shared network. The aim is for L4S latency and throughput to be usually much better (and rarely worse) while typically not impacting Classic performance.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9330"/>
          <seriesInfo name="DOI" value="10.17487/RFC9330"/>
        </reference>
        <reference anchor="RFC9331">
          <front>
            <title>The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S)</title>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper"/>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>This specification defines the protocol to be used for a new network service called Low Latency, Low Loss, and Scalable throughput (L4S). L4S uses an Explicit Congestion Notification (ECN) scheme at the IP layer that is similar to the original (or 'Classic') ECN approach, except as specified within. L4S uses 'Scalable' congestion control, which induces much more frequent control signals from the network, and it responds to them with much more fine-grained adjustments so that very low (typically sub-millisecond on average) and consistently low queuing delay becomes possible for L4S traffic without compromising link utilization. Thus, even capacity-seeking (TCP-like) traffic can have high bandwidth and very low delay at the same time, even during periods of high traffic load.</t>
              <t>The L4S identifier defined in this document distinguishes L4S from 'Classic' (e.g., TCP-Reno-friendly) traffic. Then, network bottlenecks can be incrementally modified to distinguish and isolate existing traffic that still follows the Classic behaviour, to prevent it from degrading the low queuing delay and low loss of L4S traffic. This Experimental specification defines the rules that L4S transports and network elements need to follow, with the intention that L4S flows neither harm each other's performance nor that of Classic traffic. It also suggests open questions to be investigated during experimentation. Examples of new Active Queue Management (AQM) marking algorithms and new transports (whether TCP-like or real time) are specified separately.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9331"/>
          <seriesInfo name="DOI" value="10.17487/RFC9331"/>
        </reference>
        <reference anchor="RFC9332">
          <front>
            <title>Dual-Queue Coupled Active Queue Management (AQM) for Low Latency, Low Loss, and Scalable Throughput (L4S)</title>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper"/>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe"/>
            <author fullname="G. White" initials="G." surname="White"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>This specification defines a framework for coupling the Active Queue Management (AQM) algorithms in two queues intended for flows with different responses to congestion. This provides a way for the Internet to transition from the scaling problems of standard TCP-Reno-friendly ('Classic') congestion controls to the family of 'Scalable' congestion controls. These are designed for consistently very low queuing latency, very low congestion loss, and scaling of per-flow throughput by using Explicit Congestion Notification (ECN) in a modified way. Until the Coupled Dual Queue (DualQ), these Scalable L4S congestion controls could only be deployed where a clean-slate environment could be arranged, such as in private data centres.</t>
              <t>This specification first explains how a Coupled DualQ works. It then gives the normative requirements that are necessary for it to work well. All this is independent of which two AQMs are used, but pseudocode examples of specific AQMs are given in appendices.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9332"/>
          <seriesInfo name="DOI" value="10.17487/RFC9332"/>
        </reference>
        <reference anchor="RFC9341">
          <front>
            <title>Alternate-Marking Method</title>
            <author fullname="G. Fioccola" initials="G." role="editor" surname="Fioccola"/>
            <author fullname="M. Cociglio" initials="M." surname="Cociglio"/>
            <author fullname="G. Mirsky" initials="G." surname="Mirsky"/>
            <author fullname="T. Mizrahi" initials="T." surname="Mizrahi"/>
            <author fullname="T. Zhou" initials="T." surname="Zhou"/>
            <date month="December" year="2022"/>
            <abstract>
              <t>This document describes the Alternate-Marking technique to perform packet loss, delay, and jitter measurements on live traffic. This technology can be applied in various situations and for different protocols. According to the classification defined in RFC 7799, it could be considered Passive or Hybrid depending on the application. This document obsoletes RFC 8321.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9341"/>
          <seriesInfo name="DOI" value="10.17487/RFC9341"/>
        </reference>
        <reference anchor="IANA-IP-Option-Numbers" target="https://www.iana.org/assignments/ip-parameters/ip-parameters.xhtml#ip-parameters-1">
          <front>
            <title>IP Option Numbers</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="IEEE802.3">
          <front>
            <title>IEEE Standard for Ethernet</title>
            <author>
              <organization>Institute of Electrical and Electronics Engineers</organization>
            </author>
            <date year="2022" month="May"/>
          </front>
        </reference>
        <reference anchor="IEEE1588-2019">
          <front>
            <title>IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems</title>
            <author>
              <organization>Institute of Electrical and Electronics Engineers</organization>
            </author>
            <date year="2019" month="November"/>
          </front>
        </reference>
        <reference anchor="MEF10.4">
          <front>
            <title>Subscriber Ethernet Service Attributes</title>
            <author>
              <organization>Metro Ethernet Forum</organization>
            </author>
            <date year="2018" month="December"/>
          </front>
        </reference>
        <reference anchor="Nokia" target="https://www.nokia.com/about-us/news/releases/2020/03/13/nokia-bell-labs-world-records-and-innovations-in-fiber-optics-to-enable-faster-and-higher-capacity-5g-networks-of-the-future/">
          <front>
            <title>Noka Bell Labs' world records and innovations in fibre optics to enable faster and higher capacity 5G networks of the future</title>
            <author>
              <organization>Nokia</organization>
            </author>
            <date year="2020" month="March"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 1231?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Tjeerd Pinkert wants to thank Gert Bolz, and Benjamin Schilling for their
support of the hybrid network measurements innovation project, and Sascha
Liebscher, Achim Willers, Tobias Grosch, and Jaime Lazaro Calderon for their
support to make this work possible within Siemens Mobility.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact fullname="Benjamin Schilling">
        <organization>Siemens Mobility GmbH</organization>
        <address>
          <postal>
            <street>Ackerstrasse 22</street>
            <city>Braunschweig</city>
            <code>38126</code>
            <country>Germany</country>
          </postal>
          <email>benjamin.schilling@siemens.com</email>
          <uri>https://www.mobility.siemens.com</uri>
        </address>
      </contact>
      <contact fullname="Gert Bolz">
        <organization>Siemens Mobility GmbH</organization>
        <address>
          <postal>
            <street>Ackerstrasse 22</street>
            <city>Braunschweig</city>
            <code>38126</code>
            <country>Germany</country>
          </postal>
          <email>gert.bolz@siemens.com</email>
          <uri>https://www.mobility.siemens.com</uri>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1963IbV3bu//0UfTQ/hkwAiDdRMivjHFqSbU6JIo8pxUm5
dKoaQJPoEdCNdDdIwZN5lzxLnuysb132pQFI9tie+EyspMYE0L2v634dDoeu
K7t5cZY9Oq+yi+v7kyyvpvjjNFsUebtqikVRdVm97Mq6yvYur/az27rJZutx
U06z23n9ED/Xjh65Sd4Vd3WzPsvaburctJ5U+YImmDb5bTdcltX7oumG5XK5
oP8ZRi8PZZLhwbFrV+NF2bb0qVsv6d2Ll2++dNVqMS6aMzelCc7cpK7aompX
7VnWNavC3Z9lxy5vivwsu7q+cQ918/6uqVdLevn6+jL7lj6X1V32Fb5z74s1
PTA9c9nQtlIVHd5JdoOf41OgmXN8Vy71QNx9Ua1oMVmmcz26uM6ui4aOaJFX
kyK7DG8/oqdkN4+SxeD7RV7O6Xscyv8ui+52VDd3+D5vJjP6ftZ1y/bs8WM8
hq/K+2Jkjz3GF4/HTf3QFo8xwGO8eFd2s9WYXn2x6iazdd5hysfN7WQo17D1
5PHinA637aI5pzoADmckw47K+lNDPf7dXT36oTc+mnWL+SPn8lU3qxu+lOx2
NZ8L3Lz5U1E00+yPo+xaRqJVZhntPK/K73O8f5bdlBivzS7rcTkvu3X21WL8
NT/Xdk1R0H7OJ/QqfcjbtsiOjvi3ST2l8X9//Ozw6PT38g29e5Z90eSrqp3M
HoryTh9cVR0g+qsC97rmLwu5tI6XN9Jd/u9WVjKa1At+atWUZ5md5cPDw2ih
SxwlTyY7fl3c5U12mbf1alre5s2va8MVVjda+NX9LFs+f59PZqv3D6vsfFqV
t0X2mr6flr+unee2yFHFq/srd06Uq2vK8arbhPUviupP+aKsshtC8vmcaMSv
6wTGur5Ra+v7WW6fZuqyL+r597+u3d7RskZjWtZfuckKXKAjYg0G8c2Xz59+
dqh/PTs6ODhzZXXbe+Lw8OhI/zw6Pj6wP0+enoQ/n9ifzw4/0z+PD0+f2Z/H
nx3rnyenT071zyfHT57an58d2AinJ8f27enpka3t9Nmpzfb04PAw/Om/PX36
mf/zmS3y6dPP7NvPwtLpz8Pw55H/84S/vTh/fT68uB5eCeN/zQy+PeMj7vLm
Drcbn3KZV7nwPJIN7irm0cTzhsu8ITjq6N300+gDOMvvku+GhzK8SD3ErmXy
TCfnHz0j4n9D/S9D5hkvGmt/+fLls4Oj0fFZMh59+1//edOREJU30//6T7rg
//rPl92saEi+4AdZeskOj4m+r7OjA4XXj89YtTT8qiuy+jZ7OS8mRD4m+Zwl
NflYV+WkzV5Wd2VVyCawkMMnz54Njw4ETJIlZrZCFuby7LopJiXErez5vJ68
z27W1WSGUQUL6fe6qyf1nB9/LZJSMY2lG17Mc1A2eupm3XbFoo32+zR7Xd8X
OOEMC/pl9nz58svDg9FJstub1bidELWlie0aspuiuS9JODvvhA4X8UpfFBO/
zmefXudlQSsJQ39ZNyuQiNf1+zLfDcgVfgaNeJyP61U3XLWPq+KhfdwUczrS
on1MgHHw+OD48eHxY352OC7m8+E8H7dDOvv5dEgXRgJsO6TzGJZVVd/zRbX0
9/AWu2XRatIOu3pYVPl4Xgxvc7qUhl+YlXe03uEkX+Ygi8Mnd0MVf9thfTuk
zQxvVx3d7OP4KGlPOXGo+Tx7Rev4fcYLyXQhfDHRQujvjBbSFJksJOvqTBaS
yUL4BVlIZgvJnnxlcniLe6eFZLKQPuqQzAvkOfj0BfFNODcajZwbDocZLZ1Y
xaRz7s2sbDNST1YMvyVAd7qaFNgKPsmFLg3y9y6u93eqRN0s75iv5yVvXel6
XQ0yZgLz+Zr+ICS5hwSPQ6DjwO7o9Aoi/w12S7SIjuF90bUD+tktRY34mH4y
IjShdxo64BUpBoPkR14UvUZ4mjtSlaY0S1cuCuKb+WLJx5/rhHRS+FUULFI6
CqyNRq6JzGKx05LW2dEeaED6xdmqR9kb2kO03UzPoAAs8AZpU5dXdMFVls/b
mgSIbNXSr+N1Nqtb0rCKakhKUMcHYjtu5wQWmG5R01Lm5aLs6JWPnYOTu12U
0+m8cO53dC5ym6ykua93v5rRokmMvS0a+lTmmKgV8tBmey9u6MrLSVNDz23d
d8qA3w2IDs7pK+hwusllpPQRo2kA8nvQPPezho8mp3Okjc71cGQwYpQ0GE6H
DkaHKIwo28b1WghCbOAHUsNoLJ4bF+zwwvUQ2qWB0Ch722J5emrxlgc0NpGe
5Zz4YTaZ5cCGoilbucH61tFyCFyEdExpwG5GM9Et3c14Ro8bhD4AagOTEXEG
Agp6ZF60NItM7ZLTznFsNH+MSAAEXH89Buhk5WJZN8SeugSwmE46TE/iZ7lY
LQhmSW3+wH/++ypn0XBvWixpydh3LeDXEg/RAaqpnp+iqxyeQMRk1eD+CeRq
gAIACpCdHqlB7iArRnejAY9fV8XwgRg5HSEhRLItoxxu7+rb88vrQfadymTv
9nkxNPOnXs323vCrDCyQ4d7tDwzFsnw6LQWwkoNirMfNEFwoKGGhxDtBIxgf
CJImdE8YRCGKEPmhjk5+WRZAAHowuQMhDIQg/74qCNCdEQzshr4HdWHiMpBV
4HldBl2vrcDOM5sT3HiQpjGcfj8t5nQstjK6CVpZNZmvpjTziuh+vCScQxUo
54D3Gx+lUCw8QYMWzcDlNEjZMQ1u6/mKR8EimUMRFt6SQjAdkdoBTMarMPqk
5JmO100hTC4YmYmW4bnVkhAYxJXkJ7qj2/Ju1QTQwxP5cjknIYa/sytmMHJ1
RaAHYCh5GbbdDhyqt13dzazIpyDAJHB0q4pOdb6WoaYFRGOCYWOgqVHP5qUT
n7yv6od5Mb0rZHmCx6JkERXgRbRCEpJF4Ijv86asV222XDX0WtFurCzLW3wQ
Jin4FHNbWiVLZa1c3w81O2KDye+3MTANsgSCMGINwcwDGUNlQ9BL/IyZosBx
FsFxHqA4u23qhQK8EBWmVApRwgPt2xGYzh9XJLPe2g0zEWfY3NyRcxdBxmBx
Z+AZieE+QAFgVZW3a0wTfqiyiHY5hrgRCbP8LfGX9wLq/o6MyHXFZFbV8/qu
pGNXnkMEc16vGQCIJAJhiUKzPAYEAQQ1edWCLGAJAQVovjl4ELGEeHc8RUmn
2jocZrsktcIOpGV6sGyKFk8aXSJ2QEvlBdMZlEy6iOhC1ieUmEFFIVmoBLeS
GWb0PtMBJTKMnnxTNluMZ8zfc7k42bLBz5Su7LwS+CB0JYJYyZHnREX0jnns
cKJE+HOiP0Hgin5z/nqILrfhsiaqEsUIBPYNQLP7WGfCt5heLWCQAInG5AMW
mzGpP3qWuZqCRit68l6QH2gOu3w2WYdl8sWzJDonctMCBCAK0M1MvVRByvVq
EfBWLiNw/eR0iSVmj9qaYeKRCBZ0lMtOyChAFUYVJUVukf+Jrr2mheYMT63o
iYPsAVvKxnQb2CidIEEJURVBCg+C4VTBLUpsGd8K9gp4sRme7jZjckP/X3zI
WXLl6yxuSXZQKQdCiIl2tM1UdAlTCioFqjmtI/DEQc7ye+ETt/Pig5JPR7cm
kk6PHbUGWb0JBiSoMCHimyGmwMLNmm6HllU5KIWdHuJgy3kAc5Rl5Nk2qhZo
GkmeNEjZGN7kd6pJnEM837U65l7N3UrltflUEKUn2zWygQqyQ0vwRyckwMXE
ZExkqCgiaTtM45FHNBqTbABPdwXxMsLptr7tHnLA/EO9IrWTtQlRbqb5svMk
1zG2bB7RIFYw9sKy9tPreYDe4wHUqX66WvaIrrB5lRJjon0H8QAEgpkm/R1B
ReAnTF+N0dLQpHHwdIFhAt3qPq9/U9PwWA8TEIweM4clBoHQVjmPq6xjAb1K
OhSGyFavpGwFC/ruLRAgGi9GciblOlJ8BoIavJY+78IpC/sqpwURj+U8nxR8
PT1FpCeGqCjFHrtbWOzY68RaJotI0/qhamlIxt/KbeWtRsV78ghoQTWHLYao
w/mU+blXNInFMIgz8c2U+GatMJyg+ejOGUiZrk1grFExDQLXbUuHPl7zYGOC
3FtcEg03LjBdxFZhq25b0x/tRE2PYSklnw+BtixZPK+re+inzEXpNl54StYK
DL4v1rDHEF4+unx784ZIMf83e33Ff3/z8v+8vfjm5Qv8ffP1+atX/g+nT9x8
ffX21YvwV3jz+dXl5cvXL+Rl+jZLvnKPLs//DZSfVvXo6vrNxdXr81ePBF1i
gY91BxawGThJDIBqm0OQFkmQmcWf//y/vnh+fXjyl79ke3/+MzTkw8PP/vKX
ff307PDpCT4BS2VKEZz5Ix3k2hHcFsSXoRaIHEOi/lwArZ0R8GRgNHSk//Ad
jufdWfZP48ny8ORz/QK7Tr60g0u+5IPb/GbjZTnJLV9tmcYfafJ977jT9Z7/
W/LZDj/68p/+GeaGbHj47J8/d4CjSxWETfraIZy+2fUTYTsdK8uNrGVEIh74
oQ3rrSNOJW+xzQ2zK1WXr0VOfwE5fQAzctX7Kv6U/QuRK7GmbR/mFcv++uGb
go1ZQC0AiA208vRMqfaWzS1IfsfmvIJo++mpHMEkJAB8a2qgNxAZu2gnRJbx
youbUXYZvdYwZaygLsirF9eurVcNUUmsmo6XGIJqj6k0FNSAqbD2nqgio7j+
KImktMdszhsj90exJb/152CGHWesm6gULEPCDESyXtaEzzAV8R/Z3vXR9T5r
2yRyjrKXH7qiYh2ScH+xmnfl0Pk35LO8h8dpXZfXR5f0PqEqeHy0BBXoVHdT
Ag9Wb0YD1WdWrH3AUtkqgEIUSyS9RMAghWNzMhldNmn2SbHSQdwNVk3iGgoZ
kNdw2AuYNwRiBNH4jPzs2ThvS5JxbmDGSOQOGtwBrWpCV5p7DOk5b9bZ4+yO
hgSs65nfpoyIMIEFKugj3XpgdNeBMZlhURUllS29ESMVgeXSY9FtSUdISrJZ
ijC/iakwCbbbOKPYX6IZGAmIj8tEQ4epBhBtVQw07gam3qhO0SDAYGq8UXET
ehSdlHMvwJkbRKkw+Ov1yxcwwIQdKUgQJ51iP6b3AdsESQauHsPYCwm3jy8r
Zs6kz7A/zCw4wRRbT7qi683oCBdpsA22zhzvliQglmTaAB2kTIjAzGKsmfNc
pCvifPiAoJ9iXLFzNCmRmyp1K1q2lhlQRqaRYvdLjAeq2PLziv7O45JRKtAK
ZbsYSD5C/lNqF7CM4JLeaws46oqp261O7TLsxTbWN8+DZAknTvbGYyAv1cZI
rKB11l/+2oxcXgNk+pEF1ZrFBg4ryBfBtNRu3IE3qMh1k3zLfpU9Njvtb7uC
vkEKzw+JGNC9x5L7bYpLUJl5ZBVmSekQxYLPUwPkiJizNatpyntbSazGLcqu
MyvVPrMFUHAaBAYsNa/xCKSndMnrqYVrP9gTdVfO+IS4ACFXX7D9hg0I5gKK
hcCIrur/Qnl+KOZz15rHGWfCSEd0UpzRbc8ZjRnogkkJ98Zu45FTl49BOdmU
X8zbQgwLe97Zsq/cP7HomQtz9xnjWFiNmhfp0biNATZOl4V4aAykeI2NvHit
yax4nkZAoiqmuylOMLSayTtetkvnNRrobe/THebL7HXdFV5tcumvPApL2sGO
oMP0dzug2SY52KQ8T3KGo/uZzCGVe61MsWIG9Q9wiys3h5T4kbO7ulYyw3Y6
gs5CbFIswdu+YB98YNXCL4zQ3nyfixxIuvt0RtnX9UNxLwYOaI04MfCmYH/H
u3BCYlVEXR7YHonHaDDxhS1XHeltxYpG+9YudStGsnVrixrNtMF5e6y5FRRQ
/cZEaN9BAjaANVM/zJs3N+xtcv7FCO17sKKvfEOvsMJkaG0gh7W7YIfBQTHn
oqfgHlaym08m8HuA8DaFWXu3HgoRVhaEwvsiGBMoLNTXgWXx3m4h2Yq1UMwB
0aREQYkTLQgV+TKJ3BTimJzM8urOEJYFx0CFtl+T2ilVEo/dQrKN1Gm/jRmZ
d+5j42fijd/gK0F0MY4r7JkQwIztZUJgBcqDWsHGrRxC2t1crdfCzRTAsUKH
kxkXaodqCWxN/KI3CXEbEQyBj6uuUIgzmYGQYbkUwYgtrbBTGxzTNdw1+cKb
OFnsA9NXl+WkM7mIf4mFLfWruOS1QCPlK5MAlMlUdEyrigmLiaWsUBAVcX4p
D6AVcNuSZHwbq3JTPR0v+6vhGFAHGTwSzh2hHZ3ZKDNvAagbTs4bmoTJMIqI
vXCL0ZjetQCRVBdTWHk0mUNlIUL9COBBo+/5b7ZZfNlX8/bF9YDFoyBZeNPf
lnf2zQ2XEyO6W8HSxDpVW8/vg/Et8fvlEuJPamIxD6zn/tSF6zhXSStLIFcs
bqaFDWzwmO9KlIvqCjR+jVCuO0OyoDWo3maodn+ygWz55tzEMQjjCfHYFC5j
sqwX+UA3EFD5ksit5sOLQQGiHUyj6+xRPsdBQ98DmymaR5DqZzURjO80wvEd
0/mm8Pp0zi7eTodwebanmDouSbySYba4ePnKjD8AOFdew3hx8/zawlJO3mW0
9fl0Q04Tkd3Wy6+SHo8IWdHeWxFs3PuiWNrACfSYfIrTYC4Wv1vAaMkOC7pi
kr6wNkFkvzcvphHGkwJ62xSFbfP5W1l0a4YkQUG/pREzwduyoRMUwz+znHFT
s1G3XS15kR0HLwQXod6FMFqSe2jrTl6/r8upgrkiSquhkC0LQaTUCKS+fP6a
l4HY2nd8gq9OblzPo/mdRru+G9ifh+HPo3ey8ZXYiKH40WG0HpQ3oVhBIITK
sQO4FYtxD94M3FI3ZtCjPXWKjVfGvYV5CyMIVmkg9UTN0omloGLCNhTJ1Euq
4qzpBDphbijKLlC/Y+eFM7ulByO2EhTCQNPCddNyhODE0+Kc8Yb9mCxG5u4W
QUpKk4IEqTvkOWh7uh67cSXSYV7SaG/ze+LtFoEnqEyYRVch8mq9OXrgEcY7
Bs6EXB8/RNySMJONZzkEH1ptcHQhrKiKrSL+F0fk6a6btYyiA0KpjqPQ5gjm
iF5hThj8ZurR0Hd/EDyBDBMjEUeQDdvOcrHmcmATEeMsCtIJFqwNMgkIuGvU
e7WRH+VC6EykKMNEJfvYalj2loApHyBsT87erojaRDddP6i1FS5w2laGIwN9
8iEUW0za3qRJpJ9tEll+h1hNKAlVudTIKLGnKZGGp1cdO1FITu6m5R2cCnKk
iE0NvjqAkWQ0eWFh62DEk5r1UlQtNWx57X+LXZojSeimRGeOgRIoDPsWnIF+
pJ0A0fWCfOJtZbwiiE3LGdyttrkRjfVSlhuhH0I6dbYEanU8NZ3FIxJs+TEH
GxbmDRAzx7TFJEahJ859ufvHTGKH81Z9EKotBDcgyzTK59mFLUJ+Mt8A1zSp
l8KMLALDHpERLSostYjgvVUnL7VzBJEK8+UB+Au1Vphhuioe0oHVkkag7bxz
nqSb/M5bBOxrczcq/xQi2GWPs9USgdJTWee2kcCJC2aa3xdNbaGSc8QY+LWI
9hlJVCJblK0RC6JHEOBJjGzD2TAUc9QunS1L0izg5Xdi+kzNLgwESOFsguVB
xL5oWpLgVoVGmpL6zpOz98IuHIKRyBVs/p8qzvX89XueFJEaVq+6gTt68oSW
Q1A8Jbk4e7FSIZEF4rwFECyI7jSVsrOTONiC1lJzeI3ICi62UBKxExlPJQ3a
VwSeuCU7LHBAUVyY95yevI8uyvszaA26Hwkms43E56UmJh/ixG+RrlbrArwm
pXGupqcIQ98wU7eqLkpkH8KHFqUhmxwrQ7/a/2EA8Z4TiVxW0W9XfI1qsWzi
WTJjFxHd5Jce9utVisvxY55/hbFYRBPqQCqDsRm6pvtS+AmMCMu1A0pYwKpE
J1dGeEX1NyOGrkOE0YCFFTNrcFmH8XhzlQQARfE1xhZJ+tjhWhXxJ4CyoplF
RUfG7bpKgpfj0HOLqye8UrcVI4scuG0ELCVCWCeAhTuF1jyIRaYsFZh4g90m
+UvUZY3C2CScW8wl4yIwfnXaJ7QkXdoo0H71X9kvhi+pU7VLSNggwjwmhANn
NLXPhLfSWNXEIJ8QHC/tiDWRgZmpRjZkjww1H+247LxV8TvSeo0vOe/O0Rk5
1kmjd7rgW/CLjDw5rShogqYuXiGb9GBqx38VjVMzryKBnaTlw3CURhJSrZ6q
SP4HhQrLERf+hqeqbly00kTy7xs/syi+3fz1Eq7eizdTDI0jH/not7vS5abG
HDzZJzJx/CTry7dQIZpiiFCdxZhTA+J4OdyM45uhRVWbulbLfkYxWWaPdF1w
nD5iCFozOw2KAKHmai7SHR6t2YLuTew+UHJVMQGl79diKw0hRRD2oXsTwrPk
meISe1ogViNmA1bXXAf1lInJpE9AKsXl2uSSmyF2E/tR7ytCpyifR+lOerzR
ZQfnbxJJ7iPrCk8xf5e9UIjIE91vw2PW9xEbWLZmlt6C4kSBInjLx/U9ixne
DOHiyJZBJs46HStK4woxvAAa9duHpbkgb5deialCZLzlmzBdDElFJUMNWy8D
RfvJ5ub/Bs/pL2G0+3mtJ7+07vz/nyr205k0dDmVNIH4HhDhggoYI3Sds0Hb
LsTag8dNcx+vkR1mb8Zl91hiLeDSqYo5x0eDiH/H6Z3vIPy6vmPk8MDeDHH8
Eb5qKNukJkS5pblYfpWrIaUwbzTzdJS94kV5AvCdz/x+F/J+mbzmPjeNY1fp
lL9ns9rJqTlvk6RL/Tl7eqQ/w5Z+eBQcvUjXlZHu8qUPy2DtUQiG+MdqRvBI
LAP4hs3zvkGx4TFJfMFiXA0e5rEGAIilF5ZmmZ0O9vTp0Sh7CWmOH8rf00MH
o8NsWU5q1aKcLkSt3sxjTd9jnVbPRsxWOrSMdPp0dBQPRSB0xZvIrsMeBqrd
MSD5FAW5an8PPKqIBuL26SyGwo6JvTuylGGyFC/yHoxot8lyNLnGqV0R7s0B
jIdN/WGUHZ48e0Yn4ZcQK6bmOCSwOsyqvNIRYbO17M0olloMWJbU6EXbeXlb
SIDJ5YtX+z17BxK1Wl0Lh58R5h8eHZhqy7ZoVHR454PV70+iPAoRKgWBE7Mi
pjl8kv1DdnwkVmtAlP+EA3aBCwJcomQvn3yBMA2YymiskwODa/ogpPT4mddy
W81hZf+jkrOw4NONBePZoyfPZEiv2/mRj56cxkNz4Hk8NADsmxBllniZQwrT
gP0k3j2AAJlWrT/fJeUV3rmlr5/Ag/nlcjQYfXuc7V2/ub4/3hfLUjUplxyM
QUDJ188KukHQwHWznWl7A28HevsiCoviVcU2jpB+ams4yfZe0xpO9hkmUAbk
nTfn9MNVk8llcFp/yHESrVBo1B1b2n12aRwmQ/NlG+8gBqaB2l2LM0oCQKMR
OOsIW9BVEf1dfciubrL3OB5OjCMVAw54WXnAK3VmSlKn6H/OXopi8CLR6PL8
OUb+V8I6hGTCYLFtFtyPC/PE06hWlQ77bVlNAae7xspyd3hwkG0dEcnsxEC/
/bg0F8KYOAdjx7NBQNvGyOUJVdgHohZ4Q5yvTABECqJNcI9oUFssGPvCAD9g
RZxBKB7Je05eZcVVN4SIlbAAMYwYj9scmnVnEvibKaferIMe2yH+aPfiYU/Q
EO80N0yGZWKMjDVQA9MShcJEAEBqYLuCe6P0xuGq+NAlL/GC9ARsObVFtJDw
0ib52ezkLSuPXVA8FVs0XJpUjG5GUmY5gQ6+gYOxt9ghsJ3NrQThpOsQBemh
XhhMEuaWCNm+L/RGEPprjry8dWZBoK+9M5FNTMXChAr3hb5nJCAyPHRCSdL0
Z7rhvGk11mmCQgklUGcJvukMs33yVLGsJzNPkwJ9gXGruSfmf/JMeJRPfefR
nR99sEmb6HYkx0752yCYTHtZ0QUi2qdqsTk9kZn2IqcjLETeAF5UHLVjDhw1
duZzZ3nT+7KRw9Mh5CrRwtIUWLYNGxcTwDSrAVywpOwG5K7qToVfsyx/XKDw
srtpca2LZAfEZ8QJZ2wYg2NT0ItjNDnDU+zkZuuAaBBCNo3gAaSV1EmE2ETy
1bOnevJQSVjdJogcl15P1/uXOl2CC3jr+GgIHeDkGZ9b+gyMTnNjrx5iBs77
zLQgi2BtkWi8Pgyxm8VBhYn2L7O53ooCucLBjLK3O4VVWQCOncapNPKN43nm
wFMNqI78E9nemzevaAKxxtFyDxDTl8V7b/0BsRirFKmwjOqFJI+F4AoWCY3Y
i7AWZQULmUJs2Jva0XVxVhzAT/QziXdSHwLJpJrZbT4A1HppaGkNEhgS7QI+
ShWyvQ+Mp5enRP/ZvSu1zyMf3AwTTMaLqReH/UWulhj8MJvB4M4QKJH80+K+
DJnhDGAKt7REfemJRwEVZdsCDwQqL3FBuCzSE2loBg+P06y9aFqaCvnq7otO
co8Fkn2aeo5E8iSpGtmZhWUhE6Y7NnVz7mLjk0sDJPYOycdX4DiPk+N0Ufxu
EKRZQeSD5EM4PD7N1rQvnzdabmxdQlYTYycHpy4Rv8xR8fM4L4BYZd4Ec+Mb
MbBPtHjJlg1xriaCjKacIRoBkb1ncXMuJuOqofpYERrm6P/uDV/vZ7CyW5b5
a6uskIKmKCHinK819jdapQcIZmhyeIenAzAM2rkxgvCCiyCoz/KUjkiAwIwj
P2TSdsesjs+Ij0IvVNfuI2x9yonfUywV61nZwFbdhCFYxPG+gGHRiWzXqGpJ
oydO0tH5PrBQhYxUCQyFL5jUH9C07aMQQYZdFM8WTVM3mmFWgw9sjDbONd+G
IAqopalnfOzI56P/eiAYZd+wrxYkiW1ok1lNm3ZsuhBeWt8rFdZKIJi4m604
DboQocLnCUAtV+8vBhOFxQsLMqDEPc9Lr520CDwrJxoNo9lSLlFnJH2XtbDW
b4hYPqBnKArd6QlfK3u7venAOyQc6TKFx0BA2qy87SxPnafQjGYO0l2NucIZ
G5LVe8SrXLuQTncebIWozPwgx26e+P590WnE8MSasHnP4KqIwskQFiBV9aZc
vGC+jvxmBK33FqJnllmNF+dc+1iuTjPFBXc34AgKiJjwIvmBCXCx/Savo5sU
8sbUM8U8rwKw192ZHL4VuQYABh/G6yMwbxspwyCFjNjiOMouUWB0OVtLVK9K
UMITeDovZrD97vLr7wcZ1ET5I/vq6+85z/Ae0HOAj65uJ+WcdQlLLbN5oxov
JNFLcgwoyBL1VoTOH/DxR2ptr/hCDMN9PdvsnZB02ZIM5C+KuYv8V6XP4gIV
Pj7az/6QHR0fjZ6NRqPIvCYZG6PsSrxWWmVC5EgGRlyZj+403n1LwAuzLQdg
GQxtyQcBsPAEBq7i5s92lCIxPd1ff7TpqPKK206nfXq0p8sbFgqCTR9rou4j
BgZ6HD4Db8iKnUQiKCtBszJIgZWb9D/BqUtJLCTc3EskDGS4KBMjksOJTCVw
fHzgbXtZrNFeaPBADelGZLb8vUrIpHQT4WMJ3m2T4D3DQnECXXvJdJur7Fm0
8UMtzCgawnkdTii3l64yU9nt0GMBIipB9tTLTw0o6ObOsBMcDHu5I9NKJPcn
fnJoFmWnccQLHIEE6uNAzHroFUkEkbBxUg8bixRZIEr0DATF9iIEzQd/kCJT
FvebKSy6LizU9dPj7CRgu1SgLjlzmf2HdnhbwxIGnkS+CUWwBOwe4rAUUeRd
JvnMIS7cdgFM6yPOJ9S8zL8sJDSZL8TEbwn6YWvZW0lBMD3W+xRF2gyZFOKr
Rwiu+n4BguYxj4O0zGzP0QscEDheO2NZXuKWwPZqYlLwaglft5UgvNW4v9VY
avKYbwByRgtGOVm1ur0no6MkB9e2z15Isxluwid/T8pjZD3MroQ7BMcJobZf
UnB+iPtpwwsD66snc4OeGpzPmXyIbtkmirNUEPXeUQVSnt6pWnXgV7V3OnqK
qbLHsoB99rBY8gzUEY5MY2N3D19Ar+smse7Ds7MaT0vEdaULFlqx4UfKo4Es
NSEKpODLVcH28OTZZz0FKNq1jUM8tu+AYl6zapOSaWkJg5hUHB4CGcykEOoK
XbxQdBANNJeYueQYpiWiPRkH/cLN0kMHSIKYExtAqHEZUi00t62eF7GRKQ3d
yNk6bVEwTstciE8prkVW+oKgSf2MpK6lVQvc44edmhs4CpXdP1UUUqLHtm+F
YyXivmVZj8N7fP78PfwJTCBeZMLemcuGUCMguwh2Sl+9oDXLWxKbZEenR0je
oAOTypRig/bRS1tLXXmbB+v6CsDeqqgV1+a0EdcLsZAVAVpbi/KC0kvSkje+
CHK/fXENYT3gICpFMGRJ7LdUVsojmGCAMfsfnbNPh0QBnG20znHiKBRkFi1B
wTjnC7jLKtFqB3FlWmhQfKieQVGu1f+LFNLFAlRrKjUBYI0mRrpmt7+akzR/
U5hfUArVdqtGNnpJS6egjqtP9LNEYuWRPho21DjetXjhG1+mISiCeBwJDaGF
iYGGDWlG8TrYV0ScSUsbDBGeFcqZiRN0Z925eDlMqlgIsiDdab6ORuJDZcBT
Y3GSRRhQmg0xW8PfHN4wMiRSzIRjOZhGmqWIX30cR83xSjUC8kosCbHpIixM
LrZ4iDIffU3B/kFZXH4o+urPSK0rbPiGJ1ckhMUgiyrtdLPIyzpedyTc4Pxo
qrua8wcwxCCu/MjDkbxfkTZyeMqnB8YI15FZ31HCI454j6+XLzbamGeC6peQ
+EFcA/xZW33X32njh3f+tgAcRwd+ckmzHGl1L9rFkUjkztdVCrmYekirKgl1
VjuWJdrQ7H7SXZ6CaNDW+5ajQnSe1PUzZ9yqesiZUi/qaVzlEyb+5iPEvxab
QHKyEaDzZeGeDMu1VCHvNxBuFRYK2BrDy3sgoW5bod19X51iel+q2MDFBZl7
RmfAEUu3qzkbvhtz9Xyn/TLeCaJyEb3O/EKNWqEkFlZFNyVfDcuMLg8Jpd67
Hwuw570ANV+0POE7Sn+iLFAurL41tk3DPFu3kVnJyamaHrIrDj1OV42LtDgf
GVdWoWopkMCU/WhFWCBSVBM5wXMMOCcB+qGMCDvwxOYbjaDz0aNyVBc+ajHx
edq5iW2zJRSYzFQS45BUNRcxr4grvrPRsaCvy9o4j8ZhQ0Ju9dlB4C9eRIdM
XoW6qTtVFDlS1HdCgCQwJkoNZP08FAtdVeOSYTw1fzFnluKU4KLBDN7Lh+zx
l7jqXvD7J0O7+PVQtrvu9EWfMM8pMXpVcWUniRfSgOgoFpr43mqxWG87j93B
CL5aI4QcTSxl5cCDTLYLZB6VW+HiEV4YhIqsia9OTdfTwstFSSBmCG7t0sLT
baZFARggbwpi2aAD+oTUZFSm6GmDpZu2/ae9F4zpnAWHCghaDnjIqdwBYak+
RHuDd4y+vHl1TlrWzasbvmjN/MW10lF2MPxH67slSduifbdUHff1Zmq3MANQ
klzM1gZsBYGWZmiDfQBFCOskIWuUvQSxAGe7U12553GVZbAoJrgclkF4h134
Rdh1umjqfqgH0TKSxCV2PueEGMKglQTKarl/vTDPdtpJUSE4vZUtsUYDEfri
zZY75PAIsB1xIn3MXHE4Qj8dVPS5TVNpP2KXkZiqOEPfgt3R/yQJxAuBMKXq
6DD9IHxzI3a4HxO/HbZoiJmp1tGsG3ON4tRfj8pWmjjqlbEbflEagMibz8mN
MguiSnxB0wwV+5KEO3mBYIQUuEV9/zHEAQ9oCpDhc4jCkksZOqcwDUzWg4tG
tDASx1F5mP2s0jBDshoJ1lDRNoDh9vwoFD8awxEkS5QSGVonVrsHyPwIyJn4
kThTPbiZQgCBhlmIYM77ZyscK4mW5ZNXa6ueE/cn0KxBztGYgLJN11VOTMQ4
+ngd7GZp6w46mPwu7Vkh1Q0jeS4q2xAJ+ZIwUKAKMwkuJJRIowefDlr8YNTo
R7eHvOyIKEp2ZBp8kLdxDw0oEW3mUddtQV3Sw79GwCDrS7AceD7Yn1ImYNdm
u15IOgBq9IbIZLWJSszQTCOjSDQliTq/i/Nh2afuu2gg+pu/5+l1Nm0UE11X
QDkrw6Vpix+iKFx2Ca+QV05jmXT876uyK0IQGCPWFEHr/ORyNSbB+vESwXed
VB2O0hPcWzZ/wsIrkqldUZS4rqhRSMjyEoVdCzkZbEb5FlYWM8Md2Z4v+t1e
uFsLrOn+PrT2T+eU7SWJqrqsOi4UlaYSqfEL4/EBQe5QRirCLNxrlchHEnbF
6jcHUtJa2mQx7UBvo6FRCq2i6jS/E3PjGKQEAcnWkVYnyi78NxO1P0e1BwRy
RAhzST4Uypu1nEhwLwV+SjtgPjLV7zQbjphp38plAVNWV6sppJCF0Bizwakx
i/OotMjS2miWFP/Zgkq90iHyEq6IbX3wenAdFrWSMYXkMHIXH6aPTlFyHBUT
SCsEmLQIM7cmpmoojtb9TEFNRVC1DDs12O4yjRJNSycTQBOQmvaSAJ0JMI98
unYwlqkD3TwsUlqO7brb84G0N44VtbdEul4PsJg62UEscpRQv+eSX8u2WE1r
5+XumFeHhDQc0RkkFzofDWWASEGfQq35JH1g78vyA+2DAxrgxZbq5PvumF+S
tAB79Dpfz+t8qp/33ckoKSbPWL33GjG1OgezaXouH9E8EOpfQXXfd0/4RbN+
SU1Id8pfbqmo7J6OdvEUfwxSuDofRRl7WA5/O46/VQTklqI7hhU4Kz7EJxzu
5nH0NxNk94wQmJmMhbCEQE2MRHsPP+sR7mt0lYgxJjDzDfu+PFJhT3y5oU5G
apmwsz9z2kzvINv8d7jlu6Mt3x37MQ7p9+PsJHuSnWZPs2fZZz/mOxnlH4c/
8f9kmP/4FwHi/8iyi69f0eew3DcMm68ENu0f/+67YNLnn3c1W04N/24Eks8F
Xnc89LdZzYsIfz6xnr/N2fzQf7qa0U8cZrR7mO3I/qOH+StW8zOdzS93U4FA
pbTrl13Nz0EDT/8H0cBDnu4g3J8x5JQI0u/MhL+WQ/yFoSfw9R6U6H+/MdPf
zw09W1fzY//Zan7iMH+b1fxQNvN3fTa/wc2PW82PEAj+rs/mVwU3v0k5W/79
LW5qQxP75VfDUs7sIwqiV6z31UalJrh+00QLw/LeOPGBSsDwIPHzqn1pa5lr
DTnSaDMJuRcLtnfUpFHcGx7kYJ2TCVyvjrbYTLfEwX70FDT9FutSeym9P3mP
ZD9fCcOy6lFZc1nXt6aeS507REdy1g7afeR3xcBJhqckCedppUEtMLiR3twv
64I1D8SJ7/IssqgOvJe/kNYIfmM9ITbEakTbdf7Sez0doroO/sik54+Ynazb
ON2XlXxw7uK2t+oi+JBwyVY25a68t8qVmmwaZvOVH9zesQa0xL1ELq8GUYnd
qCRTSMvh3pShi+FdzQnLXHAEwS4+QsXHgYc6TtryixMbtF9fUt5OakkJgKyq
xDJrwMX+xuDRieNi9DQMfrS1Kgowqh/WbHNJs/okGMIXiPU2VPVED9TFjKGd
n2hHv0OeL9S4LdodgfurVlIXIlOWKT10MFEC44U10NPa1RYq462eluWjJuoU
StieX7YuVFQbr32+jzhPxXmQDBPnhOfBxaetO7bdKkeyeTuhz4MIoby2akJn
XhP2yrWrouKl/GwImYhuzTwZeEnhfqsT00X2PY38SrPG1RAupWD9Ve4qhNya
+Z9N9rLxb758LqGpVR33H05rXaKmJiPiGuUVuLdGWq/chXiQdjX+E2zrtDga
27pcPBBmddxbsQ3d3tOS570mnttcgFK7LQpxihx/VsyvTyWsDXjUw5M2EiWP
tIwQnpggpr3g0vdPP0Mw03n6fsrS2qwH9JaRILNznkYIR45bVCe1Q9nDGle3
VdfaxsB4a4vXI42NtWjGqFbx362lIcuu5ATegOLQZ/2oBoZUpnp78eKXkpls
Ncm/T1kaMgT4cGrKL7Kai+x8m0z5Osq2+9i/X6Ue8ivT0Xpf7wn05fP97HnC
t268B+ZvuJof++/Xpr+6CLXPMqm94tznVkRwOxlEUPx4dXdnOctbAzsqL9PQ
cFEV5qSq8JYChNmbhzomyq0G4nFFHrRv+DzTDHFip9UwcGQl9Fr9pW58aGdU
LzHXGnLgg59nW971xYeYP2gDytgPHMuV/LBUAabRLCtUxVDuSdTvsTCZl1LB
7HM9Y4upFKWhfV8ul6Y0aM+jmPZCWKwgzVahkpj2SPhc1J1++yyLu5IZh9kX
xJDpmjN0UecS+SilvE+fz4iT/EHr5ocnT4dPsz2LqkAe3j6ePKInd0KAvdxm
h8Mn/mXRWPfx8im9/bYKZx91r7XN7r29vNrHTf8V/0QW8h1k0Z33/PX5J1f1
lFb18qNrevnzr4lG+xcukS9p8G12dPiMz/Po8DOPmsJm+8iZKoQ7ULXy8lYI
DUhepMF2xCckdgRNxasijOFaBRIh8vl2AkAaiBXObDajhTXw2DlN/rwIqRt7
JEPsEzyeJhvefI5lbc3e1AgPSdnEMqJSZVqGG0Ia0HTWL53NYcNWk6bXdjWp
zi3xREPLKgMaZ9vTMjaJXFxvOdQ9l4KyLSelLtcgbR+5z0j33FGbWlVxxPoA
UiWiTJ/oV0WPVaV+R2OEm0pEpC+snd5yRAf5uHpVuY0sbJThRnSPF9jOfIqM
XnEky+W9nlLesWcVHZPcGBXxziyPzQakjx9NXO6lLeuXSQo1ILRFUN+XRChb
0L4EKMNPXu/jMOM4Gi2K7tbA6F7/zog2H5yR/P6H7EVdxQWe46P//YAp9cXW
H/04h2dRUsqlJFcYz7nY2/ruvvQXkYLJrY+pF0PGNsX58zjejsGYmOVcw1tu
NLgPjT/XatEESTjYT/JgQpo8SBG3Lcw1prO4RRGZ6KpkQIN8qSfLdUfE0Kdt
imA+awH9m1HXITyM06e5+Zkv7xbn+oLaeeIWh+lyFPUOgslkQNNdLZocaPKI
jwC9BLZSytayPb3tUuxbHKj3UKLvWFzf2S7xfK93vfv9NILQU21LjlF8i1ZN
eyONyTfFs551Zbsr5oqbU36uOLs2FFhrz3Uk4HMCUKQXnVnJCsOluEKJ4KOH
KzbRbi2O1E89AEn+FpzLKuSbJSqyK0kXESseq/1ZJRnfj0zDhLT8QbCbc79g
X+UmbrmgvUlClx0V0IAmjEjceir0iQ7VQ2Wz1gIIFeJGvT2smBcxOafhfM6j
Js5bu8eoOsiepo9x7aNol4R6+7IbLfpEw/kmPVyfJxTeQxlt7DcuMaOFijhM
NtQpyn1IO50abbte7Lgt34IV7RL65TKsvJCVCaLBkE0VEqylEkHiiggV/LZL
QIzcgEs+RzHCGbu2xtZc9fLTWuUZ4NSe8jXqnpp56+iZl7VQ3vhIa4r1Chkr
QCQdf6Umxa6q8S7SEqRMg8890JIxofKrJl7TUSUmK4ke95VivWskn9M023pS
z+olcii5CTBuStrGsfxnhRTiboOl9oD1fS7E1t8raNdrRCgJ6tnr2r28unoV
LVif3rUXyQQmSDfr4cB9B2F6eHE9lNsZvhbvGASDby0VPQwSKX1pdD1qrqjA
ainpZaP1Hjk1jvZqTqzWe9P0DZajmDuUS0L2rvjQcSlgEVp+pCH1NPu6Xg7H
6yH9x9QPlMN78iS2n8YS0HmVTPQJA6ooj7EB1Vs+T7dZPi0p9jej51aj580W
Q9//YDPjpgX4v3M1n/z36zTs9b7+zeiZ/Wb0/M3o+TMbPX+gzfOnmTx/WYvn
X2Ht/CWNnf/zDJ0/2M4ZbFSpXZM+/nQblSq9PgUoxNn4nFVJRouqglphypVU
LoKWtGMFN8kKUrT9zT72m33sl7WP/Wbz+s3m9ZvN6xewee30vB0f/eZ5+/vz
vH3eCyn+pOABRT6mr76PDEfIfR4JGVHDmjXBMiSie2kJ2paLErGOt3k7s4OU
ahQaHYhJZnnLtGde3OfSUT0qM8l2LStn+deaaU+PvZ32yVFiqD1QcexnsNSe
q7W13xiVW/RJQRTip1YykAlg7Nm0JH6OZgT53iywRU9tA85PWjndD7NyZj/E
yuk2rJxvIiut76zKxmVZe56dVB4AYBN92360npAvoHt5xYWfzOyY9oadbVTY
w2KtjkJoWYyipS9KYF5zHyKFpWrs0clT1ME9X5Ayi82CZ7UaT50DloYo6DFE
lPe1oNsLaY9NKlPV+yr+RMpOU8YFeDlPAWWy/bLQqVVfeaUU75tQrxZvRTVw
LSkWF3hX51yXK+olzlQkatIM3XrLRq17hQMMoCGbVhpCtTdu+THsau39sXd9
dL2PKwDiCTj0On5LqWW05uImBV1hbJQrcA39eNHHbO/y+uiSxlXbf1pRmaP4
A2ELCGlFqr1WyR3jojJ5XviWjBNLBnHStMu3m/ZleDz1xWtphUblJ6EmV1Gy
HDNeuzw5AaJxJPPWLP6r0tLvVb7XhqqVcWdbDmGPqsi2YWe5Fbzt0xCdQotj
sFKkfTlQ2skFzheEcalLhNr8HhQG8gzTcabzD1V/Ji4ZrAKVh7RQlQsVr6SM
F1c/adYxGEIKoCNYaLM+9STkLLJWyZVx5XkBKxRTRDw8KUFcxM3mk4ZWc4MG
x1eDFuhB8hIRQtmhGHyy1yh2Q59RLA4JOvBjJeXwtFyWFO4Bqfed6WTpLG5w
iZUx18vhcWX3UvbOWLr1GnFi/xLlitsnNUzebJE8QJudD7IvmOM8F05RfFjO
eQWDWFblEvQJzxH6MSnU2NAUm3DspEZeWuNaBPGy8e3U7DY4hyXgQCR1adHs
+HE/WpD3sDetVy26rdR4Dp67vddvL/e1D2ZsWmKP4ZQBRa7MkyAubmut99DT
CumoCc5E5ExMj0IElnkpDRhqLaCpTcG2VlC2SxQLZNo6JNu7utnnVDfftayN
WuTGOo/ZKZZEAlQv2HsQzeU2R+sWbtwRzmOfiYcIAE2zWtJmCtgpy3ahaR7+
F6F53BBHiHIDOWOxkDUQlIg+5AqWjkw/YTqgHU9oINRa8lVsC87fiXmkf2bv
8oJuKdT8u7rxlcwwWMP2Id8+LScIueMmDO1kRiPJMcZ1rXDw6DmOjKimvLvT
tLe4yKsKE5s8Wqey+msurXDnay9KRSw8JUmJRNyIWKLnUnRVtfQhltJreoLW
9Y5FGa0yzR1laPf1ArfoTR+t7/zga7DyHCIURkPnJF+umYx9WTfODxSKsRYR
3obSmNbTiXQPCFAq3HHtNpolqvNshbvGXPCvJRJtdcqEFQRmlDfqFtfSW4VK
/0yD1cWcVNMkPvzCZ/GZmsgWdlM2BT/qZsAwQbQKNbRGIunRy1EnrnFUjxBT
s7apFkLRdbiEeg7lV7RudC86Oggt1jYKO1vGactDAEvbdA7cBBL/PFVweih9
bN8Y3PPJywsxRbOw5YGHz81hg0Cp/O4u1nroxJsuaYfrcUmnf3N+Edqgul6b
abn2uCMKYYvOYYY150R8ZNDs2oh2owahRxC4Z0qtsKb5lr7mflwynvkj7jWg
dXjQCiHn0vBDhTyhnPykwavr6yGoYqmax8Wt5LSF1ivcBVPArCcxEteN+iot
iDCV0vFcYQ64RScg0rBtNWT5bqzc6LTv7OmpvkvqhWm5GPrvVIwhfBHbDkzP
SsJXTPB4KHRXSvJkcrX1MK9LM8O2nJZ1YnUelsIBW5BKr5UrqZlSbJp3xgTn
VjwTNB6LzVpAJSnv+/vWFygNacZJSqL2omF5XDT0RUFsVyuLRiXq0amCizwr
mVKYG2V/FBmZ99rXjoOaqb3dzaZijQLylBI2gOviPhbDQqfwvWT0cGLuzZub
fdlZoKGham+wPeHe5wQUUpVVxBS6LzkQedOYAOooW1nPcAcdw4isouuCe+Lq
hnRGIbHRElkQ1LWvlujrIminX3lw9Z0J9D2pTQkV0ix1jjOHfeJ9MMuntYKN
A2FZ9Pkhl3r3pVJdZiguFl3MrbuFQWqgWc88B+Iv8BEAThpOpG06OgspY8+2
i7mqNfnQUtjeVNGbiaQMqzweIYKboFW4nqMnO1xD2Kr/t8li9lKWqzTsGwIY
5xGeq1In8OkbkfiivlySehot11oLVyg9uOM1Ls8Jp8YeiUiT9yS+tmp4pqVL
xJ2eFS3I++U4EZ7BJYaWyFAghFnEVF9lcxtwEOHzg/9oQMn6gOJ2Asp5t+0G
GfeTkpPB9ch12dX7ZyYyGFeUZNMerKrjMKHHyQ9MnC5eOPfaekDHKqWPNhQ5
Jun57JPM0WII7tztnEK7iojkgZOgn6I+Ztwoja4cx9drIUECIArR+lb1xq9T
QwyfsHY9AmCv+9z0zQwNxzs2WTX5g7bOYNVVe/QaVEDmiC41l0fVKsF2OIEX
FAiRrHKi9DD/yjgYfAHhgSXWKPF7t86G4gljJgGkGTlu1auV3ZmlTItiGSru
SycV1raXOZ9RWZj1Qdo58D0AbpyMmlCL1tozhMPh+/AdP3IGclaWDTGdx3zS
qlLBA9UfUlHCOyz87aDcLsvbsGygq1JSdZZpB3NMkmCsjkBbJBrMWJpIrCMX
D2wPCLqx6iIiBQfF4cJI4SIv2Vvr61/o8THw+mIEdIbMr7jYR0jo7zcZUdOF
XVaI3rSWdRZUzE+oiqWyCkm+fDammQ+E2sxqVOPjdo7+tkSb7reby6foUNd2
0s3K29NUM2ONIJrnLodYBGUspnfnlV99aBUAkE14SbuLyHW1djhST80ou/Jn
geHU9UPH6Ota84n2PK5i8ML1iTyIjjO5jJvQ5tB/nbVy3xwkiDQwB5gF2nmZ
3eTMmEDUmYZVhw4V5+JfzpnOhBvAZsxUxlDny5d4w5Nv4mCSbNIfBBLtQAxq
QQtMqptM8qjocMCD0B0Z1pPoKBAUUHzIgY4Dthe0kYrPJ9/iMiE35mNtueLi
pr2BmBsZwPLE2erbU+QeWKUFBM9DjJoIhosMaewDIwbyYiDW8dBzBRSBG7Jo
wZqJF4vh7HZ6eh1S1b6ISucrqc4j2GRjjaf5OOlI45HDdn2NFC+xwBeK2ERd
EGhebWga1bZXZhKuz9f0AA/sVpUSNA8YvaswZiQFcNgbBITijvSoo6QEFMjJ
O/UWjJijmVe2SXwULnLSWm94LwJEpneclO8cNDbS01OuJa1PVwvp4MsINvoQ
0XkCBqUxuGmC/my6c3QnjJGm4tbJ++qKSbfnfdDc94rNMMVkhZpQmfQEnRTx
iSG5kYVj9m+2Il/6WxlwrIJ0MRB/Sd//oKY12AstmMdD3TSAHVgf5LaKh2kE
RPqNXNS0iOpD9pCikJYtj0E3VEURqwZ34wRuzbzaS+RXivobxWmDJ1yMQaom
JV660grR1FImfhMd7LUgfAiwYsc9QUSEFIEyUuP+kdTAtNFN64VNLyikTjHW
3RRQVMEAXAvnqpMf+pCw5YkE9m3dUT2mFPxZqhaIZF0VJxIYmPfwumuxy7Mf
3Abdu7i+vtyX7qQsSLBL7/j44N1A0mBOnx1oSzBu6sTsmvvOCTqMtSeVjCZv
PP1MXz4+/uz4nfUGzHq9AT3x8d03hBF43vay09apvUJD312+/PLwYCRdRlFs
zNbuxJ6s7amkeUGnAiZPWOO+49SdDZgRM30iO0u7lAKsE22RYrCQkkfcw8N4
rxqGYpuxGaBE20HQD4ci2Km5pJ26r7zGhFSaeNINmuqm5uHpVkO02lVWsa0z
Rl9RnIJFMm5jBwLCfSYbT611axLMAB7LrK016uK1iPr2VpS9luQyxGQqMQGQ
ACqbKKFLIKmcFortm+6zFHIR1ThkddsOBjsURgAC7F0M3nKs+UkRJ5BuCLzu
hJhFDJVJHuJK8mYy8zrmhs4ziLrXzEs63W8ur14LxjxjM6zaVpkGt3yfXCrq
y4t/FdQ4ODx8ZwZLviZmpuLgVioVNCmjgczIwkFE5OrL6CmEB2nHky3PGhUw
dQH6D51Yai/ni+ZLPjzI/Heqc2g5OjjItjRYmTQlq44kScKEAUXZeIxNuYyo
D2LhJGJVXE92gzhp8bc5a04yMLgA01uA8eDqG3FXZYepq6psU+38lri8CDdJ
IzuOTsFOEEbIZIy/qWqLUkFNQEYF69oSXby1sSS1FA4wNt/2ry5RghmWoltj
6mNc2GORwKDXNJSjcmsRZvmqdHtNBAKul4e29c1TxX1VoSVsCFKdeiumcHHU
agSRJDJUDULoxcAnbEh8llFMu01YpqLe11DGJ1Aj5sUt+LRTMlEmrZQkPPk8
GE02ytTp67y9KCqRDhjdb8KGtEutqlt5Gmqgw/nOnOLk4rp+tMEzt806lO0d
HwH8D484RWB/p7Voy4NqPcr2pObEvoNzS/T6jvsWL8Gp2fOMcLCBNYninqRW
Te50f7CR+yPNVYZsWZagrj0JKcOskFGiqFezQu9JhKU90f/18OhxGOKbTw7x
zceHcL4UXqfol2sLF1CWZ5JtIToDR5iJK9b4/eGpxqtxVCmfYnQuN1+fH4ot
/vDgxD/Xl2sluv3olHOiLSjGhdKWXLk1hLa03k6AnVlXN4QIO3eZtJUFmHnx
ilGGsQp8Mpiet61IMNWUaw+Nvv9ToAXeEaX+GAYZ8ewrPZP+oJaM0Ek0iEcn
H3rG1sXsH8PA/losq4ukGZGck6ZL0sXbXMA+6EKlsdDwUphHa2VvN62xFtTo
FYkN/wpj3dVWQL76NCRfbQdlBUJxwF+p/yVW3yLMybtkUYJsPK5S091rV29a
3B9bW4bWoVPdQ9mI2dfMCXhR/WpBG3S94r9xQFo+5y7fQYDxoVPTwNVybcqG
utJu3G8I6zMMVNo4eee77IXYJd/AkGm06c7OfIdq5SitJkBSgzbYc4RxCrvz
yRuCfV3SucpEZ3iVSQnNwYv2gM5cGTeknWQoSLKfWe1e3ueWHXJ7uHwy42hP
32D1eQzDLWdE9fpwsq81inaYivNOtYDyrgoeRe8LGq+6gSvUSIaGoCrs5G0R
niYs25bBkdhW2VhuhZSnK68W2FdB5hWRPkTlnnj3VhJ+5qZE4ZZRg9Sd3TPV
cqfZAMHRaH0pW4kZi5sz32tuEBT7/jlak0223cb2pXaGPcbyPOtUD2INuV21
3kOzNckuUaoybh/qrH0o6ww9A5xHbN/7utcbNM+uv3n9FbeGC2JK2zWSuWfq
0UYWKpP1kIxqJk3t9Fs/kPL/+1aV2LsVB5OZwRGZqoUEoiSeNQ6GjA++g5Q8
rQ380obO7Bya+Rq7hKreRogNtQO1QN2hzi8HocO/55g+a9lwxCHhnTE7pLio
Mj0YwrYRIkbaZJt2fu9FAmnaL73MFmeT+3whDtGQzPoATbIAp6LjWFVTCPlR
6XS7f5asQ/qgXty4qaH3a/H1gdBWGO75TH0jWVY/vKWP/c3eN/zRdpAI7lL/
C9t2V0Qigz+ECKXRSLpnwooajdmVU2vDdI5jmUgk/u847XSD4DBvsBQYy66W
INnQC85q64uFgu6QhFI+cE1m1ZIXr3Pil0lW75ZAdjx4Ph4TWks0OL1wecXf
XkX5xWekqu3KLN872ufnn9fL9Vn2b0Sl9g734xW8/HHzv/x55r9AjA/US4+V
fODLel5O1pbEnRyo+pV6uefWpTKfA1bWcVfwKKdEwoJJ8zNA77UiQCvmzkUl
9XVmuTyESgrBbsVFowSd4YRAhMQnDt9wVoUaA8XVVB64n6Na5hVbYNKaFx+Y
sBYV3LZMX1dLiHluSzdHNe7yednPvssomipKBDEnJLIbmLtcT1vrR72RBm3F
eso0MjWKx7ag5LJybdmt1Hglgpjoq2kMocXvSvJSYtlAoXfSxKvO3by6iZs4
8H6m3ugeRROLWgDy9lBOu5k5yTxHlRA1Fr6WIdMLIv42/7OlgHGKUOdtmaEk
uvducgd5eOcrjI/y6DTmcDhk3z2u/HwCywdJ2XfSKPXPZwKhxfQPj9BEvXj0
FyIVfyoKomnXZfWeGDqBQNVpKl9evc++wndf1PPvhX5+UVR/ykn0ym4ms1Ki
glXYLhunMOFbN0jaipHqxHdbkiCgDlnaOCq8y/g3OQFP7l6VxRhQRDTynCZa
ZN/SZOxZeFMjazD7qqnpd3nnjzlk21f593lTZ8/zOZFBz7fjZYV4S5abYQMy
gQE3j02VWF6bXdYS7TBy/w+fXqHAee4AAA==

-->

</rfc>
