1 | <?xml version="1.0" encoding="US-ASCII"?>
|
2 | <!DOCTYPE rfc SYSTEM "rfc2629.dtd">
|
3 | <?rfc toc="yes"?>
|
4 | <?rfc tocdepth="3"?>
|
5 | <?rfc symrefs="yes"?>
|
6 | <?rfc sortrefs="yes"?>
|
7 | <?rfc inline="yes"?>
|
8 | <?rfc compact="yes"?>
|
9 | <?rfc subcompact="no"?>
|
10 | <rfc category="info" number="XXXX" submissionType="IETF"
|
11 | ipr="pre5378Trust200902" updates="2330" consensus="yes">
|
12 | <front>
|
13 | <title abbrev="IPPM IPv6 Update">IPv6, IPv4 and Coexistence Updates for
|
14 | the Active Metric Framework of IP Performance Metrics (IPPM)</title>
|
15 |
|
16 | <author fullname="Al Morton" initials="A." surname="Morton">
|
17 | <organization>AT&T Labs</organization>
|
18 |
|
19 | <address>
|
20 | <postal>
|
21 | <street>200 Laurel Avenue South</street>
|
22 |
|
23 | <city>Middletown</city>
|
24 |
|
25 | <region>NJ</region>
|
26 |
|
27 | <code>07748</code>
|
28 |
|
29 | <country>United States of America</country>
|
30 | </postal>
|
31 |
|
32 | <phone>+1 732 420 1571</phone>
|
33 |
|
34 | <facsimile>+1 732 368 1192</facsimile>
|
35 |
|
36 | <email>acmorton@att.com</email>
|
37 | <!--[rfced] The following URI does not seem to work. Please update or remove.
|
38 |
|
39 | ORIGINAL:
|
40 | http://home.comcast.net/~acmacm/
|
41 | -->
|
42 |
|
43 | <uri>http://home.comcast.net/~acmacm/</uri>
|
44 | </address>
|
45 | </author>
|
46 |
|
47 | <author fullname="Joachim Fabini" initials="J." surname="Fabini">
|
48 | <organization>TU Wien</organization>
|
49 |
|
50 | <address>
|
51 | <postal>
|
52 | <street>Gusshausstrasse 25/E389</street>
|
53 |
|
54 | <city>Vienna</city>
|
55 |
|
56 | <region/>
|
57 |
|
58 | <code>1040</code>
|
59 |
|
60 | <country>Austria</country>
|
61 | </postal>
|
62 |
|
63 | <phone>+43 1 58801 38813</phone>
|
64 |
|
65 | <facsimile>+43 1 58801 38898</facsimile>
|
66 |
|
67 | <email>Joachim.Fabini@tuwien.ac.at</email>
|
68 |
|
69 | <uri>http://www.tc.tuwien.ac.at/about-us/staff/joachim-fabini/</uri>
|
70 | </address>
|
71 | </author>
|
72 |
|
73 | <author fullname="Nalini Elkins" initials="N." surname="Elkins">
|
74 | <organization>Inside Products, Inc.</organization>
|
75 |
|
76 | <address>
|
77 | <postal>
|
78 | <street/>
|
79 |
|
80 | <city>Carmel Valley</city>
|
81 |
|
82 | <region>CA</region>
|
83 |
|
84 | <code>93924</code>
|
85 |
|
86 | <country>United States of America</country>
|
87 | </postal>
|
88 |
|
89 | <phone/>
|
90 |
|
91 | <facsimile/>
|
92 |
|
93 | <email>nalini.elkins@insidethestack.com</email>
|
94 |
|
95 | <uri/>
|
96 | </address>
|
97 | </author>
|
98 |
|
99 | <author fullname="Michael S. Ackermann" initials="M." surname="Ackermann">
|
100 | <organization>Blue Cross Blue Shield of Michigan</organization>
|
101 |
|
102 | <address>
|
103 | <postal>
|
104 | <street/>
|
105 |
|
106 | <city/>
|
107 |
|
108 | <region/>
|
109 |
|
110 | <code/>
|
111 |
|
112 | <country/>
|
113 | </postal>
|
114 |
|
115 | <phone/>
|
116 |
|
117 | <facsimile/>
|
118 |
|
119 | <email>mackermann@bcbsm.com</email>
|
120 |
|
121 | <uri/>
|
122 | </address>
|
123 | </author>
|
124 |
|
125 | <author fullname="Vinayak Hegde" initials="V." surname="Hegde">
|
126 | <organization>Consultant</organization>
|
127 |
|
128 | <address>
|
129 | <postal>
|
130 | <street>Brahma Sun City, Wadgaon-Sheri</street>
|
131 |
|
132 | <city>Pune</city>
|
133 |
|
134 | <region>Maharashtra</region>
|
135 |
|
136 | <code>411014</code>
|
137 |
|
138 | <country>India</country>
|
139 | </postal>
|
140 |
|
141 | <phone>+91 9449834401</phone>
|
142 |
|
143 | <email>vinayakh@gmail.com</email>
|
144 |
|
145 | <uri>http://www.vinayakhegde.com</uri>
|
146 | </address>
|
147 | </author>
|
148 |
|
149 | <date month="August" year="2018"/>
|
150 |
|
151 | <!-- [rfced] Please insert any keywords (beyond those that appear in
|
152 | the title) for use on https://www.rfc-editor.org/search.
|
153 | -->
|
154 |
|
155 | <keyword>example</keyword>
|
156 |
|
157 |
|
158 | <abstract>
|
159 | <t>This memo updates the IP Performance Metrics (IPPM) framework defined
|
160 | by RFC 2330 with new considerations for measurement methodology and testing. It
|
161 | updates the definition of standard-formed packets to include
|
162 | IPv6 packets, deprecates the definition of minimal IP packet, and
|
163 | augments distinguishing aspects, referred to as type p, for
|
164 | test packets in RFC 2330. This memo identifies that IPv4-IPv6
|
165 | coexistence can challenge measurements within the scope of the IPPM
|
166 | framework. Example use cases include, but are not limited to, IPv4-IPv6
|
167 | translation, NAT, and protocol encapsulation. IPv6 header compression and
|
168 | use of IPv6 over Low-Power Wireless Area Networks (6LoWPAN) are
|
169 | considered and excluded from the standard-formed packet evaluation.</t>
|
170 | </abstract>
|
171 |
|
172 | </front>
|
173 |
|
174 | <middle>
|
175 | <section title="Introduction">
|
176 | <t>The IETF IP Performance Metrics (IPPM) working group first created a
|
177 | framework for metric development in <xref target="RFC2330"/>. This
|
178 | framework has stood the test of time and enabled development of many
|
179 | fundamental metrics. It has been updated in the area of metric
|
180 | composition <xref target="RFC5835"/> and in several areas related to
|
181 | active stream measurement of modern networks with reactive properties
|
182 | <xref target="RFC7312"/>.</t>
|
183 |
|
184 | <t>The IPPM framework <xref target="RFC2330"/> recognized (in Section
|
185 | 13) that many aspects of an IP packet can influence its processing during
|
186 | transfer across the network.</t>
|
187 |
|
188 | <t>In Section 15 of <xref target="RFC2330"/>, the notion of a
|
189 | "standard-formed" packet is defined. However, the definition was never
|
190 | updated to include IPv6, as the original authors originally desired to
|
191 | do.</t>
|
192 |
|
193 | <t>In particular, IPv6 Extension Headers and protocols that use IPv6
|
194 | header compression are growing in use. This memo seeks to provide the
|
195 | needed updates.</t>
|
196 | </section>
|
197 |
|
198 | <section title="Requirements Language">
|
199 | <t>
|
200 | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
|
201 | NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
|
202 | "MAY", and "OPTIONAL" in this document are to be interpreted as
|
203 | described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/>
|
204 | when, and only when, they appear in all capitals, as shown here.
|
205 | </t>
|
206 |
|
207 | </section>
|
208 |
|
209 | <section title="Scope">
|
210 | <t>The purpose of this memo is to expand the coverage of IPPM metrics to
|
211 | include IPv6, highlight additional aspects of test packets, and
|
212 | make them part of the IPPM performance metric framework.</t>
|
213 |
|
214 | <t>The scope is to update key sections of <xref target="RFC2330"/>,
|
215 | adding considerations that will aid the development of new measurement
|
216 | methodologies intended for today's IP networks. Specifically, this memo
|
217 | expands the type-p examples in Section 13 and expands the definition (in Section 15)
|
218 | of a standard-formed packet to include IPv6 header aspects and other
|
219 | features.</t>
|
220 |
|
221 | <t>Other topics in <xref target="RFC2330"/> that might be updated or
|
222 | augmented are deferred to future work. This includes the topics of
|
223 | passive and various forms of hybrid active/passive measurements.</t>
|
224 | </section>
|
225 |
|
226 | <section title="Packets of Type P">
|
227 | <t>A fundamental property of many Internet metrics is that the measured
|
228 | value of the metric depends on characteristics of the IP packet(s) used
|
229 | to make the measurement. Potential influencing factors include IP header
|
230 | fields and their values, as well as higher-layer protocol headers and
|
231 | their values. Consider an IP-connectivity metric: one obtains different
|
232 | results depending on whether one is interested in, for example, connectivity for
|
233 | packets destined for well-known TCP ports or unreserved UDP ports,
|
234 | those with invalid IPv4 checksums, or those with TTL or Hop Limit of 16. In some circumstances, these distinctions will result in
|
235 | special treatment of packets in intermediate nodes and end systems -- for
|
236 | example, if Diffserv <xref target="RFC2474"/>, Explicit Congestion Notification (ECN) <xref target="RFC3168"/>, Router Alert <xref target="RFC6398"/>, Hop-by-Hop
|
237 | extensions <xref target="RFC7045"/>, or Flow Labels <xref
|
238 | target="RFC6437"/> are used, or in the presence of firewalls or RSVP
|
239 | reservations.</t>
|
240 |
|
241 | <t>Because of this distinction, we introduce the generic notion of a
|
242 | "packet of type p", where in some contexts P will be explicitly defined
|
243 | (i.e., exactly what type of packet we mean), partially defined (e.g.,
|
244 | "with a payload of B octets"), or left generic. Thus we may talk about
|
245 | generic IP-Type-P-connectivity or more specific
|
246 | IP-port-HTTP-connectivity. Some metrics and methodologies may be
|
247 | fruitfully defined using generic type-p definitions, which are then made
|
248 | specific when performing actual measurements.</t>
|
249 |
|
250 | <t>Whenever a metric's value depends on the type of the packets involved, the metric's name will include either a specific type or
|
251 | a phrase such as "type-p". Thus we will not define an "IP-connectivity"
|
252 | metric but instead an "IP-Type-P-connectivity" metric and/or perhaps an
|
253 | "IP-port-HTTP-connectivity" metric. This naming convention serves as an
|
254 | important reminder that one must be conscious of the exact type of
|
255 | traffic being measured.</t>
|
256 |
|
257 | <t>If the information constituting type p at the Source is found to have
|
258 | changed at the Destination (or at a measurement point between the Source
|
259 | and Destination, as in <xref target="RFC5644"/>), then the modified
|
260 | values MUST be noted and reported with the results. Some modifications
|
261 | occur according to the conditions encountered in transit (such as
|
262 | congestion notification) or due to the requirements of segments of the
|
263 | Source-to-Destination path. For example, the packet length will change
|
264 | if IP headers are converted to the alternate version/address family or
|
265 |
|
266 | <!--[rfced] Does the second sentence here state conditions that are always
|
267 | true or give examples of what might be true in some cases? Please clarify.
|
268 |
|
269 | ORIGINAL:
|
270 | Even header fields like TTL/Hop Limit that typically change in transit may
|
271 | be relevant to specific tests. For example, Neighbor Discovery
|
272 | Protocol (NDP) [RFC4861] packets are transmitted with the Hop Limit
|
273 | value set to 255, and the validity test specifies that the Hop Limit
|
274 | MUST have a value of 255 at the receiver, too. So, while other tests
|
275 | may intentionally exclude the TTL/Hop Limit value from their type-p
|
276 | definition, for this particular test, the correct Hop Limit value is
|
277 | of high relevance and MUST be part of the type-p definition.
|
278 |
|
279 | PERHAPS:
|
280 | Even header fields like TTL/Hop Limit that typically change in transit may
|
281 | be relevant to specific tests. For example, Neighbor Discovery
|
282 | Protocol (NDP) [RFC4861] packets could be transmitted with the Hop Limit
|
283 | value set to 255, while the validity test specifies that the Hop Limit
|
284 | MUST have a value of 255 at the receiver, too. So, while other tests
|
285 | may intentionally exclude the TTL/Hop Limit value from their type-p
|
286 | definition, for this particular test, the correct Hop Limit value is
|
287 | of high relevance and MUST be part of the type-p definition.
|
288 |
|
289 | -->
|
290 | optional Extension Headers are added or removed. Even header fields
|
291 | like TTL/Hop Limit that typically change in transit may be relevant to
|
292 | specific tests. For example, Neighbor Discovery Protocol (NDP) <xref
|
293 | target="RFC4861"/> packets are transmitted with the Hop Limit value set to
|
294 | 255, and the validity test specifies that the Hop Limit MUST have a
|
295 | value of 255 at the receiver, too. So, while other tests may
|
296 | intentionally exclude the TTL/Hop Limit value from their type-p
|
297 | definition, for this particular test, the correct Hop Limit value is of
|
298 | high relevance and MUST be part of the type-p definition.</t>
|
299 |
|
300 | <t>Local policies in intermediate nodes based on examination of IPv6
|
301 | Extension Headers may affect measurement repeatability. If intermediate
|
302 | nodes follow the recommendations of <xref target="RFC7045"/>,
|
303 | repeatability may be improved to some degree.</t>
|
304 |
|
305 | <t>A closely related note: It would be very useful to know if a given
|
306 | Internet component (like host, link, or path) treats equally a class C
|
307 | of different types of packets. If so, then any one of those types of
|
308 | packets can be used for subsequent measurement of the component. This
|
309 | suggests we devise a metric or suite of metrics that attempt to
|
310 | determine class C (a designation that has no relationship to address
|
311 | assignments, of course).</t>
|
312 |
|
313 | <t>Load balancing over parallel paths is one particular example where
|
314 | such a class C would be more complex to determine in IPPM measurements.
|
315 | Load balancers and routers often use flow identifiers, computed as
|
316 | hashes (specific parts) of the packet header, for deciding among the
|
317 | available parallel paths a packet will traverse. Packets with identical
|
318 | hashes are assigned to the same flow and forwarded to the same resource
|
319 | in the load balancer's (or router's) pool. The presence of a load
|
320 | balancer on the measurement path, as well as the specific headers and
|
321 | fields that are used for the forwarding decision, are not known when
|
322 | measuring the path as a black box. Potential assessment scenarios
|
323 | include the measurement of one of the parallel paths, and the
|
324 | measurement of all available parallel paths that the load balancer can
|
325 | use. Knowledge of a load balancer's flow definition (alternatively: its
|
326 | class C specific treatment in terms of header fields in scope of hash
|
327 | operations) is therefore a prerequisite for repeatable measurements. A
|
328 | path may have more than one stage of load balancing, adding to class C
|
329 | definition complexity.</t>
|
330 | </section>
|
331 |
|
332 | <section title="Standard-Formed Packets">
|
333 | <t>Unless otherwise stated, all metric definitions that concern IP
|
334 | packets include an implicit assumption that the packet is
|
335 | standard-formed. A packet is standard-formed if it meets all of the
|
336 | following REQUIRED criteria:</t>
|
337 |
|
338 | <t><list style="hanging">
|
339 | <t hangText="+">It includes a valid IP header. See below for
|
340 | version-specific criteria.</t>
|
341 |
|
342 | <t hangText="+">It is not an IP fragment.</t>
|
343 |
|
344 | <t hangText="+">The Source and Destination addresses correspond to
|
345 | the intended Source and Destination, including Multicast Destination
|
346 | addresses.</t>
|
347 |
|
348 | <t hangText="+">If a transport header is present, it contains a
|
349 | valid checksum and other valid fields.</t>
|
350 | </list>For an IPv4 (<xref target="RFC0791"/> and updates) packet to be
|
351 | standard-formed, the following additional criteria are REQUIRED:<list
|
352 | style="symbols">
|
353 | <t>The version field is 4.</t>
|
354 |
|
355 | <!--[rfced] This bullet point seems to contain two different
|
356 | requirements. Please check whether they should each have their own bullet
|
357 | point or remain together.
|
358 |
|
359 | ORIGINAL:
|
360 | The Internet Header Length (IHL) value is >= 5; the checksum is
|
361 | correct.
|
362 | -->
|
363 | <t>The Internet Header Length (IHL) value is >= 5; the checksum
|
364 | is correct.</t>
|
365 |
|
366 | <t>Its total length as given in the IPv4 header corresponds to the
|
367 | size of the IPv4 header plus the size of the payload.</t>
|
368 |
|
369 | <t>Either the packet possesses sufficient TTL to travel from the
|
370 | Source to the Destination if the TTL is decremented by one at each
|
371 | hop, or it possesses the maximum TTL of 255.</t>
|
372 |
|
373 | <t>It does not contain IP options unless explicitly noted.</t>
|
374 | </list></t>
|
375 |
|
376 | <t>For an IPv6 (<xref target="RFC8200"/> and updates) packet to be
|
377 | standard-formed, the following criteria are REQUIRED:<list
|
378 | style="symbols">
|
379 | <t>The version field is 6.</t>
|
380 |
|
381 | <t>Its total length corresponds to the size of the IPv6 header (40
|
382 | octets) plus the length of the payload as given in the IPv6
|
383 | header.</t>
|
384 |
|
385 | <t>The payload length value for this packet (including Extension
|
386 | Headers) conforms to the IPv6 specifications.</t>
|
387 |
|
388 | <t>Either the packet possesses sufficient Hop Limit to travel from
|
389 | the Source to the Destination if the Hop Limit is decremented by one
|
390 | at each hop, or it possesses the maximum Hop Limit of 255.</t>
|
391 |
|
392 | <t>Either the packet does not contain IP Extension Headers, or it
|
393 | contains the correct number and type of headers as specified in the
|
394 | packet, and the headers appear in the standard-conforming order
|
395 | (Next Header).</t>
|
396 |
|
397 | <t>All parameters used in the header and Extension Headers are found
|
398 | in the IANA Registry of Internet Protocol Version 6 (IPv6)
|
399 | Parameters, specified in <xref target="IANA-6P"/>.</t>
|
400 | </list></t>
|
401 |
|
402 | <t>Two mechanisms require some discussion in the context of
|
403 | standard-formed packets, namely IPv6 over Low-Power Wireless Area
|
404 | Networks (6LowPAN) <xref target="RFC4944"/> and Robust Header
|
405 | Compression (ROHC) <xref target="RFC3095"/>. 6LowPAN, as defined in <xref target="RFC4944"/>
|
406 | and updated by <xref target="RFC6282"/> with header compression and
|
407 | <xref target="RFC6775"/> with neighbor discovery optimizations, proposes
|
408 | solutions for using IPv6 in resource-constrained environments. An
|
409 | adaptation layer enables the transfer of IPv6 packets over networks
|
410 | having an MTU smaller than the minimum IPv6 MTU. Fragmentation and
|
411 | reassembly of IPv6 packets, as well as the resulting state that would
|
412 | be stored in intermediate nodes, poses substantial challenges to
|
413 | measurements. Likewise, ROHC operates statefully in compressing headers
|
414 | on subpaths, storing state in intermediate hosts. The modification of
|
415 | measurement packets' type p by ROHC and 6LowPAN requires substantial work, as do requirements
|
416 | with respect to the concept of standard-formed packets for these two
|
417 | protocols. For these reasons, we
|
418 | consider ROHC and 6LowPAN packets to be out of the scope of the
|
419 | standard-formed packet evaluation.</t>
|
420 |
|
421 | <t>The topic of IPv6 Extension Headers brings current controversies into
|
422 | focus, as noted by <xref target="RFC6564"/> and <xref target="RFC7045"/>.
|
423 | However, measurement use cases in the context of the IPPM framework,
|
424 | such as in-situ OAM <xref target="IOAM-DATA"/> in enterprise
|
425 | environments, can benefit from inspection, modification, addition, or
|
426 | deletion of IPv6 extension headers in hosts along the measurement
|
427 | path.</t>
|
428 |
|
429 | <t><xref target="RFC8250"/> endorses the use of the IPv6 Destination Option
|
430 | for measurement purposes, consistent with other approved IETF
|
431 | specifications.</t>
|
432 |
|
433 | <t>The following additional considerations apply when IPv6 Extension
|
434 | Headers are present:</t>
|
435 |
|
436 | <t><list style="symbols">
|
437 | <t>Extension Header inspection: Some intermediate nodes may inspect
|
438 | Extension Headers or the entire IPv6 packet while in transit. In
|
439 | exceptional cases, they may drop the packet or route via a
|
440 | suboptimal path, and measurements may be unreliable or
|
441 | unrepeatable. The packet (if it arrives) may be standard-formed,
|
442 | with a corresponding type p.</t>
|
443 |
|
444 | <t>Extension Header modification: In Hop-by-Hop headers, some TLV-encoded options may be permitted to change at intermediate nodes
|
445 | while in transit. The resulting packet may be standard-formed, with
|
446 | a corresponding type p.</t>
|
447 |
|
448 | <t>Extension Header insertion or deletion: Although such behavior is
|
449 | not endorsed by current standards, it is possible that Extension
|
450 | Headers could be added to, or removed from, the header chain. The
|
451 | resulting packet may be standard-formed, with a corresponding
|
452 | type p. This point simply encourages measurement system designers to
|
453 | be prepared for the unexpected and notify users when such events
|
454 | occur. There are issues with Extension Header insertion and deletion,
|
455 | of course, such as exceeding the path MTU due to insertion, etc.</t>
|
456 |
|
457 | <t>A change in packet length (from the corresponding packet observed
|
458 | at the Source) or header modification is a significant factor in
|
459 | Internet measurement and REQUIRES a new type p to be reported with
|
460 | the test results.</t>
|
461 | </list>It is further REQUIRED that if a packet is described as having
|
462 | a "length of B octets", then 0 <= B <= 65535; and if B is the
|
463 | payload length in octets, then B <= (65535-IP header size in octets,
|
464 | including any Extension Headers). The jumbograms defined in <xref
|
465 | target="RFC2675"/> are not covered by the above length analysis, but if
|
466 | the IPv6 Jumbogram Payload Hop-by-Hop Option Header is present, then a
|
467 | packet with corresponding length MUST be considered standard-formed. In
|
468 | practice, the path MTU will restrict the length of standard-formed
|
469 | packets that can successfully traverse the path. Path MTU Discovery for
|
470 | IP version 6 (PMTUD, <xref target="RFC8201"/>) or Packetization Layer
|
471 | Path MTU Discovery (PLPMTUD, <xref target="RFC4821"/>) is recommended to
|
472 | prevent fragmentation.</t>
|
473 |
|
474 | <t>So, for example, one might imagine defining an IP-connectivity metric
|
475 | as "IP-type-P-connectivity for standard-formed packets with the IP
|
476 | Diffserv field set to 0", or, more succinctly, "IP-type-P-connectivity
|
477 | with the IP Diffserv Field set to 0", since standard-formed is already
|
478 | implied by convention. Changing the contents of a field, such as the
|
479 | Diffserv Code Point, ECN bits, or Flow Label may have a profound effect
|
480 | on packet handling during transit, but does not affect a packet's status
|
481 | as standard-formed. Likewise, the addition, modification, or deletion of
|
482 | extension headers may change the handling of packets in transit
|
483 | hosts.</t>
|
484 |
|
485 | <t><xref target="RFC2330"/> defines the "minimal IP packet from A to B"
|
486 | as a particular type of standard-formed packet often useful to consider.
|
487 | When defining IP metrics, no packet smaller or simpler than this can be
|
488 | transmitted over a correctly operating IP network. However, the concept
|
489 | of the minimal IP packet has not been employed (since typical active
|
490 | measurement systems employ a transport layer and a payload) and its
|
491 | practical use is limited. Therefore, this memo deprecates the concept of
|
492 | the "minimal IP packet from A to B".</t>
|
493 | </section>
|
494 |
|
495 | <section title="NAT, IPv4-IPv6 Transition, and Compression Techniques">
|
496 | <t>This memo adds the key considerations for utilizing IPv6 in two
|
497 | critical conventions of the IPPM framework, namely packets of type p and
|
498 | standard-formed packets. The need for coexistence of IPv4 and IPv6 has
|
499 | originated transitioning standards like the framework for IPv4/IPv6
|
500 | Translation in <xref target="RFC6144"/> or IP/ICMP Translation
|
501 | Algorithms in <xref target="RFC7915"/> and <xref target="RFC7757"/>.</t>
|
502 |
|
503 | <t>The definition and execution of measurements within the context of
|
504 | the IPPM framework is challenged whenever such translation mechanisms
|
505 | are present along the measurement path. In use cases like
|
506 | IPv4-IPv6 translation, NAT, protocol encapsulation, or IPv6 header
|
507 | compression may result in modification of the measurement packet's
|
508 | type p along the path. All these changes MUST be reported. Example
|
509 | consequences include, but are not limited to:</t>
|
510 |
|
511 | <t><list style="symbols">
|
512 | <t>Modification or addition of headers or header field values in
|
513 | intermediate nodes. IPv4-IPv6 transitioning or IPv6 header
|
514 | compression mechanisms may result in changes of the measurement
|
515 | packets' type p, too. Consequently, hosts along the measurement path
|
516 | may treat packets differently because of the type-p modification.
|
517 | Measurements at observation points along the path may also need
|
518 | extra context to uniquely identify a packet.</t>
|
519 |
|
520 | <t>Network Address Translators (NAT) on the path can have an
|
521 | unpredictable impact on latency measurement (in terms of the amount
|
522 | of additional time added) and possibly other types of measurements.
|
523 | It is not usually possible to control this impact as testers may
|
524 | not have any control of the underlying network or middleboxes.
|
525 | There is a possibility that stateful NAT will lead to unstable
|
526 | performance for a flow with specific type p, since state needs to be
|
527 | created for the first packet of a flow, and state may be lost later
|
528 | if the NAT runs out of resources. However, this scenario does not
|
529 | invalidate the type p for testing; for example, the purpose of a
|
530 | test might be exactly to quantify the NAT's impact on delay
|
531 | variation. The presence of NAT may mean that the measured
|
532 | performance of type p will change between the source and the
|
533 | destination. This can cause an issue when attempting to correlate
|
534 | measurements conducted on segments of the path that include or
|
535 | exclude the NAT. Thus it is a factor to be aware of when conducting
|
536 | measurements.</t>
|
537 |
|
538 | <t>Variable delay due to internal state. One side effect of changes
|
539 | due to IPv4-IPv6 transitioning mechanisms is the variable delay that
|
540 | intermediate nodes spend for header modifications. Similar to NAT,
|
541 | the allocation of internal state and establishment of context within
|
542 | intermediate nodes may cause variable delays, depending on the
|
543 | measurement stream pattern and position of a packet within the
|
544 | stream. For example, the first packet in a stream will typically
|
545 | trigger allocation of internal state in an intermediate IPv4-IPv6
|
546 | transition host. Subsequent packets can benefit from lower
|
547 | processing delay due to the existing internal state. However, large
|
548 | interpacket delays in the measurement stream may result in the
|
549 | intermediate host deleting the associated state and needing to
|
550 | re-establish it on arrival of another stream packet. It is worth
|
551 | noting that this variable delay due to internal state allocation in
|
552 | intermediate nodes can be an explicit use case for measurements.</t>
|
553 |
|
554 | <t>Variable delay due to packet length. IPv4-IPv6 transitioning or
|
555 | header compression mechanisms modify the length of measurement
|
556 | packets. The modification of the packet size may or may not change
|
557 | how the measurement path treats the packets.</t>
|
558 | </list></t>
|
559 |
|
560 | <t/>
|
561 | </section>
|
562 |
|
563 | <section anchor="Security" title="Security Considerations">
|
564 | <t>The security considerations that apply to any active measurement of
|
565 | live paths are relevant here as well. See <xref target="RFC4656"/> and
|
566 | <xref target="RFC5357"/>.</t>
|
567 |
|
568 | <t>When considering the privacy of those involved in measurement or those
|
569 | whose traffic is measured, the sensitive information available to
|
570 | potential observers is greatly reduced when using active techniques
|
571 | that are within this scope of work. Passive observations of user
|
572 | traffic for measurement purposes raise many privacy issues. We refer the
|
573 | reader to the privacy considerations described in the Large Scale
|
574 | Measurement of Broadband Performance (LMAP) framework <xref
|
575 | target="RFC7594"/>, which covers active and passive techniques.</t>
|
576 | </section>
|
577 |
|
578 | <section anchor="IANA" title="IANA Considerations">
|
579 | <t>This document has no IANA actions.</t>
|
580 | </section>
|
581 |
|
582 | </middle>
|
583 |
|
584 | <back>
|
585 | <references title="Normative References">
|
586 | <?rfc include='reference.RFC.0791'?>
|
587 |
|
588 | <?rfc include='reference.RFC.2119'?>
|
589 |
|
590 | <?rfc include='reference.RFC.2330'?>
|
591 |
|
592 | <?rfc include='reference.RFC.2474'?>
|
593 |
|
594 | <?rfc include='reference.RFC.2675'?>
|
595 |
|
596 | <?rfc include='reference.RFC.3168'?>
|
597 |
|
598 | <?rfc include='reference.RFC.3095'?>
|
599 |
|
600 | <?rfc include='reference.RFC.4944'?>
|
601 |
|
602 | <?rfc include='reference.RFC.4656'?>
|
603 |
|
604 | <?rfc include='reference.RFC.4821'?>
|
605 |
|
606 | <?rfc include='reference.RFC.4861'?>
|
607 |
|
608 | <?rfc include='reference.RFC.5357'?>
|
609 |
|
610 | <?rfc include='reference.RFC.5644'?>
|
611 |
|
612 | <?rfc include='reference.RFC.5835'?>
|
613 |
|
614 | <?rfc include='reference.RFC.6144'?>
|
615 |
|
616 | <?rfc include='reference.RFC.6282'?>
|
617 |
|
618 | <?rfc include='reference.RFC.6398'?>
|
619 |
|
620 | <?rfc include='reference.RFC.6437'?>
|
621 |
|
622 | <?rfc include='reference.RFC.6564'?>
|
623 |
|
624 | <?rfc include='reference.RFC.6775'?>
|
625 |
|
626 | <?rfc include='reference.RFC.7045'?>
|
627 |
|
628 | <?rfc include='reference.RFC.7312'?>
|
629 |
|
630 | <?rfc include='reference.RFC.7757'?>
|
631 |
|
632 | <?rfc include='reference.RFC.7915'?>
|
633 |
|
634 | <?rfc include='reference.RFC.8174'?>
|
635 |
|
636 | <?rfc include='reference.RFC.8200'?>
|
637 |
|
638 | <?rfc include='reference.RFC.8201'?>
|
639 |
|
640 | <?rfc include='reference.RFC.8250'?>
|
641 | </references>
|
642 |
|
643 | <references title="Informative References">
|
644 | <?rfc include='reference.RFC.7594'?>
|
645 |
|
646 | <!-- draft-ietf-ippm-ioam-data-03 exists -->
|
647 | <reference anchor='IOAM-DATA'>
|
648 | <front>
|
649 | <title>Data Fields for In-situ OAM</title>
|
650 |
|
651 | <author initials='F' surname='Brockners' fullname='Frank Brockners'>
|
652 | <organization />
|
653 | </author>
|
654 |
|
655 | <author initials='S' surname='Bhandari' fullname='Shwetha Bhandari'>
|
656 | <organization />
|
657 | </author>
|
658 |
|
659 | <author initials='C' surname='Pignataro' fullname='Carlos Pignataro'>
|
660 | <organization />
|
661 | </author>
|
662 |
|
663 | <author initials='H' surname='Gredler' fullname='Hannes Gredler'>
|
664 | <organization />
|
665 | </author>
|
666 |
|
667 | <author initials='J' surname='Leddy' fullname='John Leddy'>
|
668 | <organization />
|
669 | </author>
|
670 |
|
671 | <author initials='S' surname='Youell' fullname='Stephen Youell'>
|
672 | <organization />
|
673 | </author>
|
674 |
|
675 | <author initials='T' surname='Mizrahi' fullname='Tal Mizrahi'>
|
676 | <organization />
|
677 | </author>
|
678 |
|
679 | <author initials='D' surname='Mozes' fullname='David Mozes'>
|
680 | <organization />
|
681 | </author>
|
682 |
|
683 | <author initials='P' surname='Lapukhov' fullname='Petr Lapukhov'>
|
684 | <organization />
|
685 | </author>
|
686 |
|
687 | <author initials='R' surname='Chang' fullname='Remy Chang'>
|
688 | <organization />
|
689 | </author>
|
690 |
|
691 | <author initials='d' surname='daniel.bernier@bell.ca' fullname='daniel.bernier@bell.ca'>
|
692 | <organization />
|
693 | </author>
|
694 |
|
695 | <author initials='J' surname='Lemon' fullname='John Lemon'>
|
696 | <organization />
|
697 | </author>
|
698 |
|
699 | <date month='June' day='27' year='2018' />
|
700 |
|
701 |
|
702 | </front>
|
703 |
|
704 | <seriesInfo name='Work in Progress,' value='draft-ietf-ippm-ioam-data-03' />
|
705 |
|
706 | </reference>
|
707 |
|
708 |
|
709 | <reference anchor="IANA-6P" target="https://www.iana.org/assignments/ipv6-parameters">
|
710 | <front>
|
711 | <title>Internet Protocol Version 6 (IPv6) Parameters</title>
|
712 |
|
713 | <author fullname="IANA" initials="" surname="IANA">
|
714 |
|
715 | <organization>IANA</organization>
|
716 | </author>
|
717 |
|
718 | <date />
|
719 | </front>
|
720 |
|
721 | </reference>
|
722 | </references>
|
723 | <section anchor="Acknowledgements" title="Acknowledgements" numbered="no">
|
724 | <t>The authors thank Brian Carpenter for identifying the lack of IPv6
|
725 | coverage in IPPM's framework and listing additional distinguishing
|
726 | factors for packets of type p. Both Brian and Fred Baker discussed many
|
727 | of the interesting aspects of IPv6 with the coauthors, leading to a
|
728 | more solid first draft: thank you both. Thanks to Bill Jouris for an
|
729 | editorial pass through the pre-00 text. As we completed our journey,
|
730 | Nevil Brownlee, Mike Heard, Spencer Dawkins, Warren Kumari, and Suresh
|
731 | Krishnan all contributed useful suggestions.</t>
|
732 | </section>
|
733 |
|
734 | </back>
|
735 | </rfc>
|