idnits 2.17.1 draft-morton-ippm-2680-bis-04.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- -- The draft header indicates that this document obsoletes RFC2680, but the abstract doesn't seem to directly say this. It does mention RFC2680 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (October 6, 2014) is 3488 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'RFC2026' is defined on line 806, but no explicit reference was found in the text == Unused Reference: 'RFC4656' is defined on line 829, but no explicit reference was found in the text == Unused Reference: 'RFC5357' is defined on line 833, but no explicit reference was found in the text == Unused Reference: 'RFC5657' is defined on line 837, but no explicit reference was found in the text == Unused Reference: 'RFC5835' is defined on line 841, but no explicit reference was found in the text == Unused Reference: 'RFC6049' is defined on line 844, but no explicit reference was found in the text == Unused Reference: 'ADK' is defined on line 862, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-ippm-testplan-rfc2680' is defined on line 867, but no explicit reference was found in the text == Unused Reference: 'RFC3931' is defined on line 873, but no explicit reference was found in the text ** Downref: Normative reference to an Informational RFC: RFC 2330 ** Obsolete normative reference: RFC 2679 (Obsoleted by RFC 7679) ** Obsolete normative reference: RFC 2680 (Obsoleted by RFC 7680) ** Downref: Normative reference to an Informational RFC: RFC 5835 ** Downref: Normative reference to an Informational RFC: RFC 6703 ** Obsolete normative reference: RFC 7321 (Obsoleted by RFC 8221) Summary: 6 errors (**), 0 flaws (~~), 10 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group G. Almes 3 Internet-Draft Texas A&M 4 Obsoletes: 2680 (if approved) S. Kalidindi 5 Intended status: Standards Track Ixia 6 Expires: April 9, 2015 M. Zekauskas 7 Internet2 8 A. Morton, Ed. 9 AT&T Labs 10 October 6, 2014 12 A One-Way Loss Metric for IPPM 13 draft-morton-ippm-2680-bis-04 15 Abstract 17 This memo (RFC 2680 bis) defines a metric for one-way loss of packets 18 across Internet paths. It builds on notions introduced and discussed 19 in the IPPM Framework document, RFC 2330; the reader is assumed to be 20 familiar with that document. 22 Requirements Language 24 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 25 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 26 document are to be interpreted as described in RFC 2119 [RFC2119]. 28 Status of This Memo 30 This Internet-Draft is submitted in full conformance with the 31 provisions of BCP 78 and BCP 79. 33 Internet-Drafts are working documents of the Internet Engineering 34 Task Force (IETF). Note that other groups may also distribute 35 working documents as Internet-Drafts. The list of current Internet- 36 Drafts is at http://datatracker.ietf.org/drafts/current/. 38 Internet-Drafts are draft documents valid for a maximum of six months 39 and may be updated, replaced, or obsoleted by other documents at any 40 time. It is inappropriate to use Internet-Drafts as reference 41 material or to cite them other than as "work in progress." 43 This Internet-Draft will expire on April 9, 2015. 45 Copyright Notice 47 Copyright (c) 2014 IETF Trust and the persons identified as the 48 document authors. All rights reserved. 50 This document is subject to BCP 78 and the IETF Trust's Legal 51 Provisions Relating to IETF Documents 52 (http://trustee.ietf.org/license-info) in effect on the date of 53 publication of this document. Please review these documents 54 carefully, as they describe your rights and restrictions with respect 55 to this document. Code Components extracted from this document must 56 include Simplified BSD License text as described in Section 4.e of 57 the Trust Legal Provisions and are provided without warranty as 58 described in the Simplified BSD License. 60 Table of Contents 62 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 63 1.1. Motivation . . . . . . . . . . . . . . . . . . . . . . . 4 64 1.2. General Issues Regarding Time . . . . . . . . . . . . . . 5 65 2. A Singleton Definition for One-way Packet Loss . . . . . . . 6 66 2.1. Metric Name: . . . . . . . . . . . . . . . . . . . . . . 6 67 2.2. Metric Parameters: . . . . . . . . . . . . . . . . . . . 6 68 2.3. Metric Units: . . . . . . . . . . . . . . . . . . . . . . 6 69 2.4. Definition: . . . . . . . . . . . . . . . . . . . . . . . 6 70 2.5. Discussion: . . . . . . . . . . . . . . . . . . . . . . . 6 71 2.6. Methodologies: . . . . . . . . . . . . . . . . . . . . . 7 72 2.7. Errors and Uncertainties: . . . . . . . . . . . . . . . . 9 73 2.8. Reporting the metric: . . . . . . . . . . . . . . . . . . 10 74 2.8.1. Type-P . . . . . . . . . . . . . . . . . . . . . . . 10 75 2.8.2. Loss Threshold . . . . . . . . . . . . . . . . . . . 10 76 2.8.3. Calibration Results . . . . . . . . . . . . . . . . . 10 77 2.8.4. Path . . . . . . . . . . . . . . . . . . . . . . . . 10 78 3. A Definition for Samples of One-way Packet Loss . . . . . . . 11 79 3.1. Metric Name: . . . . . . . . . . . . . . . . . . . . . . 11 80 3.2. Metric Parameters: . . . . . . . . . . . . . . . . . . . 11 81 3.3. Metric Units: . . . . . . . . . . . . . . . . . . . . . . 12 82 3.4. Definition: . . . . . . . . . . . . . . . . . . . . . . . 12 83 3.5. Discussion: . . . . . . . . . . . . . . . . . . . . . . . 12 84 3.6. Methodologies: . . . . . . . . . . . . . . . . . . . . . 13 85 3.7. Errors and Uncertainties: . . . . . . . . . . . . . . . . 13 86 3.8. Reporting the metric: . . . . . . . . . . . . . . . . . . 14 87 4. Some Statistics Definitions for One-way Packet Loss . . . . . 14 88 4.1. Type-P-One-way-Packet Loss-Average . . . . . . . . . . . 14 89 5. Security Considerations . . . . . . . . . . . . . . . . . . . 15 90 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15 91 7. RFC 2680 bis . . . . . . . . . . . . . . . . . . . . . . . . 16 92 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 93 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 17 94 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 18 95 10.1. Normative References . . . . . . . . . . . . . . . . . . 18 96 10.2. Informative References . . . . . . . . . . . . . . . . . 19 97 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19 99 1. Introduction 101 This memo defines a metric for one-way packet loss across Internet 102 paths. It builds on notions introduced and discussed in the IPPM 103 Framework document, [RFC2330]; the reader is assumed to be familiar 104 with that document. 106 This memo is intended to be parallel in structure to a companion 107 document for One-way Delay ("A One-way Delay Metric for IPPM") 108 [RFC2679]; the reader is assumed to be familiar with that document. 110 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 111 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 112 document are to be interpreted as described in[RFC2119]. Although 113 [RFC2119] was written with protocols in mind, the key words are used 114 in this document for similar reasons. They are used to ensure the 115 results of measurements from two different implementations are 116 comparable, and to note instances when an implementation could 117 perturb the network. 119 The structure of the memo is as follows: 121 + A 'singleton' analytic metric, called Type-P-One-way-Packet-Loss, 122 is introduced to measure a single observation of packet transmission 123 or loss. 125 + Using this singleton metric, a 'sample', called Type-P-One-way- 126 Packet-Loss-Poisson-Stream, is introduced to measure a sequence of 127 singleton transmissions and/or losses measured at times taken from a 128 Poisson process. 130 + Using this sample, several 'statistics' of the sample are defined 131 and discussed. 133 This progression from singleton to sample to statistics, with clear 134 separation among them, is important. 136 Whenever a technical term from the IPPM Framework document is first 137 used in this memo, it will be tagged with a trailing asterisk. For 138 example, "term*" indicates that "term" is defined in the Framework. 140 1.1. Motivation 142 Understanding one-way packet loss of Type-P* packets from a source 143 host* to a destination host is useful for several reasons: 145 + Some applications do not perform well (or at all) if end-to-end 146 loss between hosts is large relative to some threshold value. 148 + Excessive packet loss may make it difficult to support certain 149 real-time applications (where the precise threshold of "excessive" 150 depends on the application). 152 + The larger the value of packet loss, the more difficult it is for 153 transport-layer protocols to sustain high bandwidths. 155 + The sensitivity of real-time applications and of transport-layer 156 protocols to loss become especially important when very large delay- 157 bandwidth products must be supported. 159 The measurement of one-way loss instead of round-trip loss is 160 motivated by the following factors: 162 + In today's Internet, the path from a source to a destination may be 163 different than the path from the destination back to the source 164 ("asymmetric paths"), such that different sequences of routers are 165 used for the forward and reverse paths. Therefore round-trip 166 measurements actually measure the performance of two distinct paths 167 together. Measuring each path independently highlights the 168 performance difference between the two paths which may traverse 169 different Internet service providers, and even radically different 170 types of networks (for example, research versus commodity networks, 171 or networks with asymmetric link capacities, or wireless vs. wireline 172 access). 174 + Even when the two paths are symmetric, they may have radically 175 different performance characteristics due to asymmetric queueing. 177 + Performance of an application may depend mostly on the performance 178 in one direction. For example, a TCP-based communication may 179 experience reduced throughput if congestion occurs in one direction 180 of its communication. Trouble shooting may be simplified if the 181 congested direction of TCP transmission can be identified. 183 + In quality-of-service (QoS) enabled networks, provisioning in one 184 direction may be radically different than provisioning in the reverse 185 direction, and thus the QoS guarantees differ. Measuring the paths 186 independently allows the verification of both guarantees. 188 It is outside the scope of this document to say precisely how loss 189 metrics would be applied to specific problems. 191 1.2. General Issues Regarding Time 193 {Comment: the terminology below differs from that defined by ITU-T 194 documents (e.g., G.810, "Definitions and terminology for 195 synchronization networks" and I.356, "B-ISDN ATM layer cell transfer 196 performance"), but is consistent with the IPPM Framework document. 197 In general, these differences derive from the different backgrounds; 198 the ITU-T documents historically have a telephony origin, while the 199 authors of this document (and the Framework) have a computer systems 200 background. Although the terms defined below have no direct 201 equivalent in the ITU-T definitions, after our definitions we will 202 provide a rough mapping. However, note one potential confusion: our 203 definition of "clock" is the computer operating systems definition 204 denoting a time-of-day clock, while the ITU-T definition of clock 205 denotes a frequency reference.} 207 Whenever a time (i.e., a moment in history) is mentioned here, it is 208 understood to be measured in seconds (and fractions) relative to UTC. 210 As described more fully in the Framework document, there are four 211 distinct, but related notions of clock uncertainty: 213 synchronization* 215 measures the extent to which two clocks agree on what time it is. 216 For example, the clock on one host might be 5.4 msec ahead of the 217 clock on a second host. {Comment: A rough ITU-T equivalent is "time 218 error".} 220 accuracy* 222 measures the extent to which a given clock agrees with UTC. For 223 example, the clock on a host might be 27.1 msec behind UTC. {Comment: 224 A rough ITU-T equivalent is "time error from UTC".} 226 resolution* 228 specification of the smallest unit by which the clock's time is 229 updated. It gives a lower bound on the clock's uncertainty. For 230 example, the clock on an old Unix host might tick only once every 10 231 msec, and thus have a resolution of only 10 msec. {Comment: A very 232 rough ITU-T equivalent is "sampling period".} 234 skew* 235 measures the change of accuracy, or of synchronization, with time. 236 For example, the clock on a given host might gain 1.3 msec per hour 237 and thus be 27.1 msec behind UTC at one time and only 25.8 msec an 238 hour later. In this case, we say that the clock of the given host 239 has a skew of 1.3 msec per hour relative to UTC, which threatens 240 accuracy. We might also speak of the skew of one clock relative to 241 another clock, which threatens synchronization. {Comment: A rough 242 ITU-T equivalent is "time drift".} 244 2. A Singleton Definition for One-way Packet Loss 246 2.1. Metric Name: 248 Type-P-One-way-Packet-Loss 250 2.2. Metric Parameters: 252 + Src, the IP address of a host 254 + Dst, the IP address of a host 256 + T, a time 258 + Tmax, a loss threshold waiting time 260 2.3. Metric Units: 262 The value of a Type-P-One-way-Packet-Loss is either a zero 263 (signifying successful transmission of the packet) or a one 264 (signifying loss). 266 2.4. Definition: 268 >>The *Type-P-One-way-Packet-Loss* from Src to Dst at T is 0<< means 269 that Src sent the first bit of a Type-P packet to Dst at wire-time* T 270 and that Dst received that packet. 272 >>The *Type-P-One-way-Packet-Loss* from Src to Dst at T is 1<< means 273 that Src sent the first bit of a type-P packet to Dst at wire-time T 274 and that Dst did not receive that packet (within the loss threshold 275 waiting time, Tmax). 277 2.5. Discussion: 279 Thus, Type-P-One-way-Packet-Loss is 0 exactly when Type-P-One-way- 280 Delay is a finite value, and it is 1 exactly when Type-P-One-way- 281 Delay is undefined. 283 The following issues are likely to come up in practice: 285 + A given methodology will have to include a way to distinguish 286 between a packet loss and a very large (but finite) delay. As noted 287 by Mahdavi and Paxson [RFC2678], simple upper bounds (such as the 255 288 seconds theoretical upper bound on the lifetimes of IP packets 289 [RFC0791]) could be used, but good engineering, including an 290 understanding of packet lifetimes, will be needed in practice. 291 {Comment: Note that, for many applications of these metrics, there 292 may be no harm in treating a large delay as packet loss. An audio 293 playback packet, for example, that arrives only after the playback 294 point may as well have been lost. See section 4.1.1 of [RFC6703] for 295 examination of unusual packet delays and application performance 296 estimation.} 298 + If the packet arrives, but is corrupted, then it is counted as 299 lost. {Comment: one is tempted to count the packet as received since 300 corruption and packet loss are related but distinct phenomena. If 301 the IP header is corrupted, however, one cannot be sure about the 302 source or destination IP addresses and is thus on shaky grounds about 303 knowing that the corrupted received packet corresponds to a given 304 sent test packet. Similarly, if other parts of the packet needed by 305 the methodology to know that the corrupted received packet 306 corresponds to a given sent test packet, then such a packet would 307 have to be counted as lost. Counting these packets as lost but 308 packet with corruption in other parts of the packet as not lost would 309 be inconsistent.} 311 + If the packet is duplicated along the path (or paths) so that 312 multiple non-corrupt copies arrive at the destination, then the 313 packet is counted as received. 315 + If the packet is fragmented and if, for whatever reason, reassembly 316 does not occur, then the packet will be deemed lost. 318 2.6. Methodologies: 320 As with other Type-P-* metrics, the detailed methodology will depend 321 on the Type-P (e.g., protocol number, UDP/TCP port number, size, 322 precedence). 324 Generally, for a given Type-P, one possible methodology would proceed 325 as follows: 327 + Arrange that Src and Dst have clocks that are synchronized with 328 each other. The degree of synchronization is a parameter of the 329 methodology, and depends on the threshold used to determine loss (see 330 below). 332 + At the Src host, select Src and Dst IP addresses, and form a test 333 packet of Type-P with these addresses. 335 + At the Dst host, arrange to receive the packet. 337 + At the Src host, place a timestamp in the prepared Type-P packet, 338 and send it towards Dst (ideally minimizing time before sending). 340 + If the packet arrives within a reasonable period of time, the one- 341 way packet-loss is taken to be zero (and take a timestamp as soon as 342 possible upon the receipt of the packet). 344 + If the packet fails to arrive within a reasonable period of time, 345 Tmax, the one-way packet-loss is taken to be one. Note that the 346 threshold of "reasonable" here is a parameter of the metric. 348 {Comment: The definition of reasonable is intentionally vague, and is 349 intended to indicate a value "Th" so large that any value in the 350 closed interval [Th-delta, Th+delta] is an equivalent threshold for 351 loss. Here, delta encompasses all error in clock synchronization and 352 timestamp acquisition and assignment along the measured path. If 353 there is a single value, Tmax, after which the packet must be counted 354 as lost, then we reintroduce the need for a degree of clock 355 synchronization similar to that needed for one-way delay, and 356 virtually all practical measurement systems combine methods for delay 357 and loss. Therefore, if a measure of packet loss parameterized by a 358 specific non-huge "reasonable" time-out value is needed, one can 359 always measure one-way delay and see what percentage of packets from 360 a given stream exceed a given time-out value. This point is examined 361 in detail in [RFC6703], including analysis preferences to assign 362 undefined delay to packets that fail to arrive with the difficulties 363 emerging from the informal "infinite delay" assignment, and an 364 estimation of an upper bound on waiting time for packets in transit. 365 Further, enforcing a specific constant waiting time on stored 366 singletons of one-way delay is compliant with this specification and 367 may allow the results to serve more than one reporting audience.} 369 Issues such as the packet format, the means by which Dst knows when 370 to expect the test packet, and the means by which Src and Dst are 371 synchronized are outside the scope of this document. {Comment: We 372 plan to document elsewhere our own work in describing such more 373 detailed implementation techniques and we encourage others to as 374 well.} 376 2.7. Errors and Uncertainties: 378 The description of any specific measurement method should include an 379 accounting and analysis of various sources of error or uncertainty. 380 The Framework document provides general guidance on this point. 382 For loss, there are three sources of error: 384 + Synchronization between clocks on Src and Dst. 386 + The packet-loss threshold (which is related to the synchronization 387 between clocks). 389 + Resource limits in the network interface or software on the 390 receiving instrument. 392 The first two sources are interrelated and could result in a test 393 packet with finite delay being reported as lost. Type-P-One-way- 394 Packet-Loss is 1 if the test packet does not arrive, or if it does 395 arrive and the difference between Src timestamp and Dst timestamp is 396 greater than the "reasonable period of time", or loss threshold. If 397 the clocks are not sufficiently synchronized, the loss threshold may 398 not be "reasonable" - the packet may take much less time to arrive 399 than its Src timestamp indicates. Similarly, if the loss threshold 400 is set too low, then many packets may be counted as lost. The loss 401 threshold must be high enough, and the clocks synchronized well 402 enough so that a packet that arrives is rarely counted as lost. (See 403 the discussions in the previous two sections.) 405 Since the sensitivity of packet loss measurement alone to lack of 406 clock synchronization is less than for delay, we refer the reader to 407 the treatment of synchronization errors in the One-way Delay metric 408 [RFC2330] for more details. 410 The last source of error, resource limits, cause the packet to be 411 dropped by the measurement instrument, and counted as lost when in 412 fact the network delivered the packet in reasonable time. 414 The measurement instruments should be calibrated such that the loss 415 threshold is reasonable for application of the metrics and the clocks 416 are synchronized enough so the loss threshold remains reasonable. 418 In addition, the instruments should be checked to ensure the that the 419 possibility a packet arrives at the network interface, but is lost 420 due to congestion on the interface or to other resource exhaustion 421 (e.g., buffers) on the instrument is low. 423 2.8. Reporting the metric: 425 The calibration and context in which the metric is measured MUST be 426 carefully considered, and SHOULD always be reported along with metric 427 results. We now present four items to consider: Type-P of the test 428 packets, the loss threshold, instrument calibration, and the path 429 traversed by the test packets. This list is not exhaustive; any 430 additional information that could be useful in interpreting 431 applications of the metrics should also be reported (see [RFC6703] 432 for extensive discussion of reporting considerations for different 433 audiences). 435 2.8.1. Type-P 437 As noted in the Framework document [RFC2330], the value of the metric 438 may depend on the type of IP packets used to make the measurement, or 439 "Type-P". The value of Type-P-One-way-Delay could change if the 440 protocol (UDP or TCP), port number, size, or arrangement for special 441 treatment (e.g., IP precedence or RSVP) changes. The exact Type-P 442 used to make the measurements MUST be accurately reported. 444 2.8.2. Loss Threshold 446 The threshold, Tmax, (or methodology to distinguish) between a large 447 finite delay and loss MUST be reported. 449 2.8.3. Calibration Results 451 The degree of synchronization between the Src and Dst clocks MUST be 452 reported. If possible, possibility that a test packet that arrives 453 at the Dst network interface is reported as lost due to resource 454 exhaustion on Dst SHOULD be reported. 456 2.8.4. Path 458 Finally, the path traversed by the packet SHOULD be reported, if 459 possible. In general it is impractical to know the precise path a 460 given packet takes through the network. The precise path may be 461 known for certain Type-P on short or stable paths. If Type-P 462 includes the record route (or loose-source route) option in the IP 463 header, and the path is short enough, and all routers* on the path 464 support record (or loose-source) route, then the path will be 465 precisely recorded. This is impractical because the route must be 466 short enough, many routers do not support (or are not configured for) 467 record route, and use of this feature would often artificially worsen 468 the performance observed by removing the packet from common-case 469 processing. However, partial information is still valuable context. 470 For example, if a host can choose between two links* (and hence two 471 separate routes from Src to Dst), then the initial link used is 472 valuable context. {Comment: For example, with Merit's NetNow setup, a 473 Src on one NAP can reach a Dst on another NAP by either of several 474 different backbone networks.} 476 3. A Definition for Samples of One-way Packet Loss 478 Given the singleton metric Type-P-One-way-Packet-Loss, we now define 479 one particular sample of such singletons. The idea of the sample is 480 to select a particular binding of the parameters Src, Dst, and Type- 481 P, then define a sample of values of parameter T. The means for 482 defining the values of T is to select a beginning time T0, a final 483 time Tf, and an average rate lambda, then define a pseudo-random 484 Poisson process of rate lambda, whose values fall between T0 and Tf. 485 The time interval between successive values of T will then average 1/ 486 lambda. 488 Note that Poisson sampling is only one way of defining a sample. 489 Poisson has the advantage of limiting bias, but other methods of 490 sampling will be appropriate for different situations. For example, 491 a truncated Poisson distribution may be needed to avoid reactive 492 network state changes during intervals of inactivity, see section 4.6 493 of [RFC7321]. Sometimes, the goal is sampling with a known bias, and 494 [RFC3432] describes a method for periodic sampling with random start 495 times. 497 3.1. Metric Name: 499 Type-P-One-way-Packet-Loss-Poisson-Stream 501 3.2. Metric Parameters: 503 + Src, the IP address of a host 505 + Dst, the IP address of a host 507 + T0, a time 509 + Tf, a time 511 + Tmax, a loss threshold waiting time 513 + lambda, a rate in reciprocal seconds 515 3.3. Metric Units: 517 A sequence of pairs; the elements of each pair are: 519 + T, a time, and 521 + L, either a zero or a one 523 The values of T in the sequence are monotonic increasing. Note that 524 T would be a valid parameter to Type-P-One-way-Packet-Loss, and that 525 L would be a valid value of Type-P-One-way-Packet-Loss. 527 3.4. Definition: 529 Given T0, Tf, and lambda, we compute a pseudo-random Poisson process 530 beginning at or before T0, with average arrival rate lambda, and 531 ending at or after Tf. Those time values greater than or equal to T0 532 and less than or equal to Tf are then selected. At each of the times 533 in this process, we obtain the value of Type-P-One-way-Packet-Loss at 534 this time. The value of the sample is the sequence made up of the 535 resulting pairs. If there are no such pairs, the 536 sequence is of length zero and the sample is said to be empty. 538 3.5. Discussion: 540 The reader should be familiar with the in-depth discussion of Poisson 541 sampling in the Framework document [RFC2330], which includes methods 542 to compute and verify the pseudo-random Poisson process. 544 We specifically do not constrain the value of lambda, except to note 545 the extremes. If the rate is too large, then the measurement traffic 546 will perturb the network, and itself cause congestion. If the rate 547 is too small, then you might not capture interesting network 548 behavior. {Comment: We expect to document our experiences with, and 549 suggestions for, lambda elsewhere, culminating in a "best current 550 practices" document.} 552 Since a pseudo-random number sequence is employed, the sequence of 553 times, and hence the value of the sample, is not fully specified. 554 Pseudo-random number generators of good quality will be needed to 555 achieve the desired qualities. 557 The sample is defined in terms of a Poisson process both to avoid the 558 effects of self-synchronization and also capture a sample that is 559 statistically as unbiased as possible. The Poisson process is used 560 to schedule the loss measurements. The test packets will generally 561 not arrive at Dst according to a Poisson distribution, since they are 562 influenced by the network. Time-slotted links described in [RFC7321] 563 can greatly modify the sample characteristics. 565 {Comment: there is, of course, no claim that real Internet traffic 566 arrives according to a Poisson arrival process. 568 It is important to note that, in contrast to this metric, loss rates 569 observed by transport connections do not reflect unbiased samples. 570 For example, TCP transmissions both (1) occur in bursts, which can 571 induce loss due to the burst volume that would not otherwise have 572 been observed, and (2) adapt their transmission rate in an attempt to 573 minimize the loss rate observed by the connection.} 575 All the singleton Type-P-One-way-Packet-Loss metrics in the sequence 576 will have the same values of Src, Dst, and Type-P. 578 Note also that, given one sample that runs from T0 to Tf, and given 579 new time values T0' and Tf' such that T0 <= T0' <= Tf' <= Tf, the 580 subsequence of the given sample whose time values fall between T0' 581 and Tf' are also a valid Type-P-One-way-Packet-Loss-Poisson-Stream 582 sample. 584 3.6. Methodologies: 586 The methodologies follow directly from: 588 + the selection of specific times, using the specified Poisson 589 arrival process, and 591 + the methodologies discussion already given for the singleton Type- 592 P-One-way-Packet-Loss metric. 594 Care must be given to correctly handle out-of-order arrival of test 595 packets; it is possible that the Src could send one test packet at 596 TS[i], then send a second one (later) at TS[i+1], while the Dst could 597 receive the second test packet at TR[i+1], and then receive the first 598 one (later) at TR[i]. Metrics for reordering may be found in 599 [RFC4737]. 601 3.7. Errors and Uncertainties: 603 In addition to sources of errors and uncertainties associated with 604 methods employed to measure the singleton values that make up the 605 sample, care must be given to analyze the accuracy of the Poisson 606 arrival process of the wire-times of the sending of the test packets. 607 Problems with this process could be caused by several things, 608 including problems with the pseudo-random number techniques used to 609 generate the Poisson arrival process. The Framework document shows 610 how to use the Anderson-Darling test verify the accuracy of the 611 Poisson process over small time frames. {Comment: The goal is to 612 ensure that the test packets are sent "close enough" to a Poisson 613 schedule, and avoid periodic behavior.} 615 3.8. Reporting the metric: 617 The calibration and context for the underlying singletons MUST be 618 reported along with the stream. (See "Reporting the metric" for 619 Type-P-One-way-Packet-Loss.) 621 4. Some Statistics Definitions for One-way Packet Loss 623 Given the sample metric Type-P-One-way-Packet-Loss-Poisson-Stream, we 624 now offer several statistics of that sample. These statistics are 625 offered mostly to be illustrative of what could be done. See 626 [RFC6703] for additional discussion of statistics that are relevant 627 to different audiences. 629 4.1. Type-P-One-way-Packet Loss-Average 631 Given a Type-P-One-way-Packet-Loss-Poisson-Stream, the average of all 632 the L values in the Stream. In addition, the Type-P-One-way-Packet- 633 Loss-Average is undefined if the sample is empty. 635 Example: suppose we take a sample and the results are: 637 Stream1 = < 639 641 643 645 647 649 > 651 Then the average would be 0.2. 653 Note that, since healthy Internet paths should be operating at loss 654 rates below 1% (particularly if high delay-bandwidth products are to 655 be sustained), the sample sizes needed might be larger than one would 656 like. Thus, for example, if one wants to discriminate between 657 various fractions of 1% over one-minute periods, then several hundred 658 samples per minute might be needed. This would result in larger 659 values of lambda than one would ordinarily want. 661 Note that although the loss threshold should be set such that any 662 errors in loss are not significant, if the possibility that a packet 663 which arrived is counted as lost due to resource exhaustion is 664 significant compared to the loss rate of interest, Type-P-One-way- 665 Packet-Loss-Average will be meaningless. 667 5. Security Considerations 669 Conducting Internet measurements raises both security and privacy 670 concerns. This memo does not specify an implementation of the 671 metrics, so it does not directly affect the security of the Internet 672 nor of applications which run on the Internet. However, 673 implementations of these metrics must be mindful of security and 674 privacy concerns. 676 There are two types of security concerns: potential harm caused by 677 the measurements, and potential harm to the measurements. The 678 measurements could cause harm because they are active, and inject 679 packets into the network. The measurement parameters MUST be 680 carefully selected so that the measurements inject trivial amounts of 681 additional traffic into the networks they measure. If they inject 682 "too much" traffic, they can skew the results of the measurement, and 683 in extreme cases cause congestion and denial of service. 685 The measurements themselves could be harmed by routers giving 686 measurement traffic a different priority than "normal" traffic, or by 687 an attacker injecting artificial measurement traffic. If routers can 688 recognize measurement traffic and treat it separately, the 689 measurements will not reflect actual user traffic. If an attacker 690 injects artificial traffic that is accepted as legitimate, the loss 691 rate will be artificially lowered. Therefore, the measurement 692 methodologies SHOULD include appropriate techniques to reduce the 693 probability measurement traffic can be distinguished from "normal" 694 traffic. Authentication techniques, such as digital signatures, may 695 be used where appropriate to guard against injected traffic attacks. 697 The privacy concerns of network measurement are limited by the active 698 measurements described in this memo. Unlike passive measurements, 699 there can be no release of existing user data. 701 6. Acknowledgements 703 Thanks are due to Matt Mathis for encouraging this work and for 704 calling attention on so many occasions to the significance of packet 705 loss. 707 Thanks are due also to Vern Paxson for his valuable comments on early 708 drafts, and to Garry Couch and Will Leland for several useful 709 suggestions. 711 7. RFC 2680 bis 713 The text above constitutes RFC 2680 bis proposed for advancement on 714 the IETF Standards Track. 716 [RFC7290] provides the test plan and results supporting [RFC2680] 717 advancement along the standards track, according to the process in 718 [RFC6576]. The conclusions of [RFC7290] list four minor 719 modifications for inclusion: 721 1. Section 6.2.3 of [RFC7290] asserts that the assumption of post- 722 processing to enforce a constant waiting time threshold is 723 compliant, and that the text of the RFC should be revised 724 slightly to include this point (see the last list item of section 725 2.6, above). 727 2. Section 6.5 of [RFC7290] indicates that Type-P-One-way-Packet- 728 Loss-Average statistic is more commonly called Packet Loss Ratio, 729 so it is re-named in RFC2680bis (this small discrepancy does not 730 affect candidacy for advancement) (see section 4.1, above). 732 3. The IETF has reached consensus on guidance for reporting metrics 733 in [RFC6703], and this memo should be referenced in RFC2680bis to 734 incorporate recent experience where appropriate (see the last 735 list item of section 2.6, section 2.8, and section 4 above). 737 4. There are currently two errata with status "Verified" and "Held 738 for document update" for [RFC2680], and it appears these minor 739 revisions should be incorporated in RFC2680bis (see section 1 and 740 section 2.7). 742 A number of updates to the [RFC2680] text have been implemented in 743 the text, to reference key IPPM RFCs that were approved after 744 [RFC2680] (see sections 3 and 3.6, above), and to address comments on 745 the IPPM mailing list describing current conditions and experience. 747 1. Near the end of section 1.1, update of a network example using 748 ATM and clarification of TCP's affect on queue occupation and 749 importance of one-way delay measurement. 751 2. Clarification of the definition of "resolution" in section 1.2. 753 3. Explicit inclusion of the maximum waiting time input parameter in 754 sections 2.2, 2.4, and 3.2, reflecting recognition of this 755 parameter in more recent RFCs and ITU-T Recommendation Y.1540. 757 4. Addition of reference to RFC6703 in the discussion of packet life 758 time and application timeouts in section 2.5. 760 5. Added parenthetical guidance on minimizing interval between 761 timestamp placement to send time or reception time in section 762 2.6. Also, the text now recognizes the timestamp acquisition 763 process and that practical systems measure both delay and loss 764 (thus require the max waiting time parameter). 766 6. Added reference to RFC 3432 Periodic sampling alongside Poisson 767 sampling in section 3, and also noting that a truncated Poisson 768 distribution may be needed with modern networks as described in 769 the IPPM Framework update, RFC7312. 771 7. Recognition that Time-slotted links described in [RFC7321] can 772 greatly modify the sample characteristics, in section 3.5. 774 8. Add reference to RFC 4737 Reordering metric in the related 775 discussion of section 3.6, Methodologies. 777 9. 779 Section 5.4.4 of [RFC6390] suggests a common template for performance 780 metrics partially derived from previous IPPM and BMWG RFCs, but also 781 contains some new items. All of the [RFC6390] Normative points are 782 covered, but not quite in the same section names or orientation. 783 Several of the Informative points are covered. Maintaining the 784 familiar outline of IPPM literature has both value and minimizes 785 unnecessary differences between this revised RFC and current/future 786 IPPM RFCs. 788 8. IANA Considerations 790 This memo makes no requests of IANA. 792 9. Acknowledgements 794 Special thanks are due to Vern Paxson of Lawrence Berkeley Labs for 795 his helpful comments on issues of clock uncertainty and statistics. 796 Thanks also to Garry Couch, Will Leland, Andy Scherrer, Sean Shapira, 797 and Roland Wittig for several useful suggestions. 799 10. References 801 10.1. Normative References 803 [RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791, September 804 1981. 806 [RFC2026] Bradner, S., "The Internet Standards Process -- Revision 807 3", BCP 9, RFC 2026, October 1996. 809 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 810 Requirement Levels", BCP 14, RFC 2119, March 1997. 812 [RFC2330] Paxson, V., Almes, G., Mahdavi, J., and M. Mathis, 813 "Framework for IP Performance Metrics", RFC 2330, May 814 1998. 816 [RFC2678] Mahdavi, J. and V. Paxson, "IPPM Metrics for Measuring 817 Connectivity", RFC 2678, September 1999. 819 [RFC2679] Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way 820 Delay Metric for IPPM", RFC 2679, September 1999. 822 [RFC2680] Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way 823 Packet Loss Metric for IPPM", RFC 2680, September 1999. 825 [RFC3432] Raisanen, V., Grotefeld, G., and A. Morton, "Network 826 performance measurement with periodic streams", RFC 3432, 827 November 2002. 829 [RFC4656] Shalunov, S., Teitelbaum, B., Karp, A., Boote, J., and M. 830 Zekauskas, "A One-way Active Measurement Protocol 831 (OWAMP)", RFC 4656, September 2006. 833 [RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J. 834 Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)", 835 RFC 5357, October 2008. 837 [RFC5657] Dusseault, L. and R. Sparks, "Guidance on Interoperation 838 and Implementation Reports for Advancement to Draft 839 Standard", BCP 9, RFC 5657, September 2009. 841 [RFC5835] Morton, A. and S. Van den Berghe, "Framework for Metric 842 Composition", RFC 5835, April 2010. 844 [RFC6049] Morton, A. and E. Stephan, "Spatial Composition of 845 Metrics", RFC 6049, January 2011. 847 [RFC6576] Geib, R., Morton, A., Fardid, R., and A. Steinmitz, "IP 848 Performance Metrics (IPPM) Standard Advancement Testing", 849 BCP 176, RFC 6576, March 2012. 851 [RFC6703] Morton, A., Ramachandran, G., and G. Maguluri, "Reporting 852 IP Network Performance Metrics: Different Points of View", 853 RFC 6703, August 2012. 855 [RFC7321] McGrew, D. and P. Hoffman, "Cryptographic Algorithm 856 Implementation Requirements and Usage Guidance for 857 Encapsulating Security Payload (ESP) and Authentication 858 Header (AH)", RFC 7321, August 2014. 860 10.2. Informative References 862 [ADK] Scholz, F. and M. Stephens, "K-sample Anderson-Darling 863 Tests of fit, for continuous and discrete cases", 864 University of Washington, Technical Report No. 81, May 865 1986. 867 [I-D.ietf-ippm-testplan-rfc2680] 868 Ciavattone, L., Geib, R., Morton, A., and M. Wieser, "Test 869 Plan and Results for Advancing RFC 2680 on the Standards 870 Track", draft-ietf-ippm-testplan-rfc2680-05 (work in 871 progress), April 2014. 873 [RFC3931] Lau, J., Townsley, M., and I. Goyret, "Layer Two Tunneling 874 Protocol - Version 3 (L2TPv3)", RFC 3931, March 2005. 876 [RFC4737] Morton, A., Ciavattone, L., Ramachandran, G., Shalunov, 877 S., and J. Perser, "Packet Reordering Metrics", RFC 4737, 878 November 2006. 880 [RFC6390] Clark, A. and B. Claise, "Guidelines for Considering New 881 Performance Metric Development", BCP 170, RFC 6390, 882 October 2011. 884 [RFC7290] Ciavattone, L., Geib, R., Morton, A., and M. Wieser, "Test 885 Plan and Results for Advancing RFC 2680 on the Standards 886 Track", RFC 7290, July 2014. 888 Authors' Addresses 890 Guy Almes 891 Texas A&M 893 Email: galmes@tamu.edu 894 Sunil Kalidindi 895 Ixia 897 Email: skalidindi@ixiacom.com 899 Matt Zekauskas 900 Internet2 902 Email: matt@internet2.edu 904 Al Morton (editor) 905 AT&T Labs 906 200 Laurel Avenue South 907 Middletown, NJ 07748 908 USA 910 Phone: +1 732 420 1571 911 Fax: +1 732 368 1192 912 Email: acmorton@att.com 913 URI: http://home.comcast.net/~acmacm/