idnits 2.17.1 draft-morton-bmwg-b2b-frame-05.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 updates RFC2544, but the abstract doesn't seem to directly say this. It does mention RFC2544 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 seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords -- however, there's a paragraph with a matching beginning. Boilerplate error? (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). (Using the creation date from RFC2544, updated by this document, for RFC5378 checks: 1999-03-01) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (March 2, 2019) is 1879 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 1944 (Obsoleted by RFC 2544) Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group A. Morton 3 Internet-Draft AT&T Labs 4 Updates: 2544 (if approved) March 2, 2019 5 Intended status: Informational 6 Expires: September 3, 2019 8 Updates for the Back-to-back Frame Benchmark in RFC 2544 9 draft-morton-bmwg-b2b-frame-05 11 Abstract 13 Fundamental Benchmarking Methodologies for Network Interconnect 14 Devices of interest to the IETF are defined in RFC 2544. This memo 15 updates the procedures of the test to measure the Back-to-back frames 16 Benchmark of RFC 2544, based on further experience. 18 This memo updates Section 26.4 of RFC 2544. 20 Requirements Language 22 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 23 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 24 "OPTIONAL" in this document are to be interpreted as described in BCP 25 14[RFC2119] [RFC8174] when, and only when, they appear in all 26 capitals, as shown here. 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 https://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 September 3, 2019. 45 Copyright Notice 47 Copyright (c) 2019 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 (https://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 . . . . . . . . . . . . . . . . . . . . . . . . 2 63 2. Scope and Goals . . . . . . . . . . . . . . . . . . . . . . . 3 64 3. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 3 65 4. Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . 5 66 5. Back-to-back Frames . . . . . . . . . . . . . . . . . . . . . 6 67 5.1. Preparing the list of Frame sizes . . . . . . . . . . . . 6 68 5.2. Test for a Single Frame Size . . . . . . . . . . . . . . 6 69 5.3. Test Repetition . . . . . . . . . . . . . . . . . . . . . 7 70 5.4. Benchmark Calculations . . . . . . . . . . . . . . . . . 7 71 6. Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . 8 72 7. Security Considerations . . . . . . . . . . . . . . . . . . . 9 73 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 74 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10 75 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 76 10.1. Normative References . . . . . . . . . . . . . . . . . . 10 77 10.2. Informative References . . . . . . . . . . . . . . . . . 11 78 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 11 80 1. Introduction 82 The IETF's fundamental Benchmarking Methodologies are defined 83 in[RFC2544], supported by the terms and definitions in [RFC1242], and 84 [RFC2544] actually obsoletes an earlier specification, [RFC1944]. 85 Over time, the benchmarking community has updated [RFC2544] several 86 times, including the Device Reset Benchmark [RFC6201], and the 87 important Applicability Statement [RFC6815] concerning use outside 88 the Isolated Test Environment (ITE) required for accurate 89 benchmarking. Other specifications implicitly update [RFC2544], such 90 as the IPv6 Benchmarking Methodologies in [RFC5180]. 92 Recent testing experience with the Back-to-back Frame test and 93 Benchmark in Section 26.4 of [RFC2544] indicates that an update is 94 warranted [OPNFV-2017] [VSPERF-b2b]. This memo describes the 95 rationale and provides the updated method. 97 [RFC2544] provides its own Requirements Language consistent with 98 [RFC2119], since [RFC1944] predates [RFC2119]. Thus, the 99 requirements presented in this memo are expressed in [RFC2119] terms, 100 and intended for those performing/reporting laboratory tests to 101 improve clarity and repeatability, and for those designing devices 102 that facilitate these tests. 104 2. Scope and Goals 106 The scope of this memo is to define an updated method to 107 unambiguously perform tests, measure the benchmark(s), and report the 108 results for Back-to-back Frames (presently described Section 26.4 of 109 [RFC2544]). 111 The goal is to provide more efficient test procedures where possible, 112 and to expand reporting with additional interpretation of the 113 results. The tests described in this memo address the cases where 114 the maximum frame rate of a single ingress port cannot be transferred 115 to an egress port loss-free (for some frame sizes of interest). 117 [RFC2544] Benchmarks rely on test conditions with constant frame 118 sizes, with the goal of understanding what network device capability 119 has been tested. Tests with the smallest size stress the header 120 processing capacity, and tests with the largest size stress the 121 overall bit processing capacity. Tests with sizes in-between may 122 determine the transition between these two capacities. However, 123 conditions simultaneously sending multiple frame sizes, such as those 124 described in [RFC6985], MUST NOT be used in Back-to-back Frame 125 testing. 127 Section 3 of [RFC8239] describes buffer size testing for physical 128 networking devices in a Data Center. The [RFC8239] methods measure 129 buffer latency directly with traffic on multiple ingress ports that 130 overload an egress port on the Device Under Test (DUT), and are not 131 subject to the revised calculations presented in this memo. 133 3. Motivation 135 Section 3.1 of [RFC1242] describes the rationale for the Back-to-back 136 Frames Benchmark. To summarize, there are several reasons that 137 devices on a network produce bursts of frames at the minimum allowed 138 spacing, and it is therefore worthwhile to understand the Device 139 Under Test (DUT) limit on the length of such bursts in practice. 140 Also, [RFC1242] states: 142 "Tests of this parameter are intended to determine the extent 143 of data buffering in the device." 145 After this test was defined, there have been occasional discussions 146 of the stability and repeatability of the results, both over time and 147 across labs. Fortunately, the Open Platform for Network Function 148 Virtualization (OPNFV) VSPERF project's Continuous Integration (CI) 149 testing routinely repeats Back-to-back Frame tests to verify that 150 test functionality has been maintained through development of the 151 test control programs. These tests were used as a basis to evaluate 152 stability and repeatability, even across lab set-ups when the test 153 platform was migrated to new DUT hardware at the end of 2016. 155 When the VSPERF CI results were examined [VSPERF-b2b], several 156 aspects of the results were considered notable: 158 1. Back-to-back Frame Benchmark was very consistent for some fixed 159 frame sizes, and somewhat variable for others. 161 2. The Back-to-back Frame length reported for large frame sizes was 162 unexpectedly long, and no explanation or measurement limit 163 condition was indicated. 165 3. Calculation of the extent of buffer time in the DUT helped to 166 explain the results observed with all frame sizes (for example, 167 some frame sizes cannot exceed the frame header processing rate 168 of the DUT and therefore no buffering occurs, therefore the 169 results depended on the test equipment and not the DUT). 171 4. It was found that the actual buffer time in the DUT could be 172 estimated using results from the Throughput tests conducted 173 according to Section 26.1 of [RFC2544], because it appears that 174 the DUT's frame processing rate may tend to increase the 175 estimate. 177 Further, if the Throughput tests of Section 26.1 of [RFC2544] are 178 conducted as a prerequisite test, the number of frame sizes required 179 for Back-to-back Frame Benchmarking can be reduced to one or more of 180 the small frame sizes, or the results for large frame sizes can be 181 noted as invalid in the results if tested anyway (these are the frame 182 sizes for which the back-to-back frame rate cannot exceed the exceed 183 the frame header processing rate of the DUT and no buffering occurs). 185 [VSPERF-b2b] provides the details of the calculation to estimate the 186 actual buffer storage available in the DUT, using results from the 187 Throughput tests for each frame size, and the maximum theoretical 188 frame rate for the DUT links (which constrain the minimum frame 189 spacing). We present some of these details here. 191 The simplified model used in these calculations for the DUT includes 192 a packet header processing function with limited rate of operation, 193 as shown below: 195 |------------ DUT --------| 196 Generator -> Ingress -> Buffer -> HeaderProc -> Egress -> Receiver 198 So, in the back2back frame testing: 200 1. The Ingress burst arrives at Max Theoretical Frame Rate, and 201 initially the frames are buffered 203 2. The packet header processing function (HeaderProc) operates at 204 approximately the "Measured Throughput", removing frames from the 205 buffer 207 3. Frames that have been processed are clearly not in the buffer, so 208 the Corrected DUT buffer time equation (Section 5.4) estimates 209 and removes the frames that the DUT forwarded on Egress during 210 the burst. 212 Knowledge of approximate buffer storage size (in time or bytes) may 213 be useful to estimate whether frame losses will occur if DUT 214 forwarding is temporarily suspended in a production deployment, due 215 to an unexpected interruption of frame processing (an interruption of 216 duration greater than the estimated buffer would certainly cause lost 217 frames). 219 The presentation of OPNFV VSPERF evaluation and development of 220 enhanced search alogorithms [VSPERF-BSLV] was discussed at IETF-102. 221 The enhancements are intended to compensate for transient inerrrupts 222 that may cause loss at near-Throughput levels of offered load. 223 Subsequent analysis of the results indicates that buffers within the 224 DUT can compensate for some interrupts, and this finding increases 225 the importance of the Back-to-back frame characterization described 226 here. 228 4. Prerequisites 230 The Test Setup MUST be consistent with Figure 1 of [RFC2544], or 231 Figure 2 when the tester's sender and recover are different devices. 232 Other mandatory testing aspects described in [RFC2544] MUST be 233 included, unless explicitly modified in the next section. 235 The ingress and egress link speeds and link layer protocols MUST be 236 specified and used to compute the maximum theoretical frame rate when 237 respecting the minimum inter-frame gap. 239 The test results for the Throughput Benchmark conducted according to 240 Section 26.1 of [RFC2544] for all [RFC2544]-RECOMMENDED frame sizes 241 MUST be available to reduce the tested frame size list, or to note 242 invalid results for individual frame sizes (because the burst length 243 may be essentially infinite for large frame sizes). 245 Note that: 247 o the Throughput and the Back-to-back Frame measurement 248 configuration traffic characteristics (unidirectional or bi- 249 directional) MUST match. 251 o the Throughput measurement MUST be under zero-loss conditions, 252 according to Section 26.1 of [RFC2544]. 254 The Back-to-back Benchmark described in Section 3.1 of [RFC1242] MUST 255 be measured directly by the tester. Additional measurement 256 requirements are described below in Section 5. 258 5. Back-to-back Frames 260 Objective: To characterize the ability of a DUT to process back-to- 261 back frames as defined in [RFC1242]. 263 The Procedure follows. 265 5.1. Preparing the list of Frame sizes 267 From the list of RECOMMENDED Frame sizes (Section 9 of [RFC2544]), 268 select the subset of Frame sizes whose measured Throughput was less 269 than the maximum theoretical Frame Rate. These are the only Frame 270 sizes where it is possible to produce a burst of frames that cause 271 the DUT buffers to fill and eventually overflow, producing one or 272 more discarded frames. 274 5.2. Test for a Single Frame Size 276 Each trial in the test requires the tester to send a burst of frames 277 (after idle time) with the minimum inter-frame gap, and to count the 278 corresponding frames forwarded by the DUT. 280 The duration of the trial MUST be at least 2 seconds, to allow DUT 281 buffers to deplete. 283 If all frames have been received, the tester increases the length of 284 the burst according to the search algorithm and performs another 285 trial. 287 If the received frame count is less than the number of frames in the 288 burst, then the limit of DUT processing and buffering may have been 289 exceeded, and the burst length is determined by the search algorithm 290 for the next trial. 292 Classic search algorithms have been adapted for use in benchmarking, 293 where the search requires discovery of a pair of outcomes, one with 294 no loss and another with loss, at load conditions within the 295 acceptable tolerance. Also for conditions encountered when 296 benchmarking the Infrastructure for Network Function Virtualization 297 require algorithm enhancement. Fortunately, the adaptation of Binary 298 Search, and an enhanced Binary Search with Loss Verification have 299 been specified in [TST009]. These alogorithms (see clause 12.3) can 300 easily be used for Back-to-back Frame benchmarking by replacing the 301 Offered Load level with burst length in frames. [TST009] Annex B 302 describes the theory behind the enhanced Binary Search algorithm. 304 Either the [TST009] Binary Search or Binary Search with Loss 305 Verification algorithms MUST be used, and input parameters to the 306 algorithm(s) MUST be reported. 308 The Back-to-back Frame value is the longest burst of frames that the 309 DUT can successfully process and buffer without frame loss, as 310 determined from the series of trials. The tester may impose a 311 (configurable) minimum step size for burst length, and the step size 312 MUST be reported with the results (as this influences the accuracy 313 and variation of test results). 315 5.3. Test Repetition 317 The test MUST be repeated N times for each frame size in the subset 318 list, and each Back-to-back Frame value made available for further 319 processing (below). 321 5.4. Benchmark Calculations 323 For each Frame size, calculate the following summary statistics for 324 Back-to-back Frame values over the N tests: 326 o Average (Benchmark) 328 o Minimum 330 o Maximum 331 o Standard Deviation 333 Further, calculate the Implied DUT Buffer Time and the Corrected DUT 334 Buffer Time in seconds, as follows: 336 Implied DUT Buffer Time = 338 Average num of Back-to-back Frames / Max Theoretical Frame Rate 340 The formula above is simply expressing the Burst of Frames in units 341 of time. 343 The next step is to apply a correction factor that accounts for the 344 DUT's frame forwarding operation during the test (assuming a simple 345 model of the DUT composed of a buffer and a forwarding function). 347 Corrected DUT Buffer Time = 349 Measured Throughput 350 = Implied DUT Buffer Time * -------------------------- 351 Max Theoretical Frame Rate 353 where: 355 1. The "Measured Throughput" is the RFC2544 Throughput Benchmark for 356 the frame size tested, and MUST be expressed in Frames per second 357 in this equation. 359 2. The "Max Theoretical Frame Rate" is a calculated value for the 360 interface speed and link layer technology used, and MUST be 361 expressed in Frames per second in this equation. 363 The term on the far right in the formula for Corrected DUT Buffer 364 Time accounts for all the frames in the Burst that were transmitted 365 by the DUT *while the Burst of frames were sent in*. So, these frames 366 are not in the Buffer and the Buffer size is more accurately 367 estimated by excluding them. 369 6. Reporting 371 The back-to-back results SHOULD be reported in the format of a table 372 with a row for each of the tested frame sizes. There SHOULD be 373 columns for the frame size and for the resultant average frame count 374 for each type of data stream tested. 376 The number of tests Averaged for the Benchmark, N, MUST be reported. 378 The Minimum, Maximum, and Standard Deviation across all complete 379 tests SHOULD also be reported. 381 The Corrected DUT Buffer Time SHOULD also be reported. 383 If the tester operates using a maximum burst length in frames, then 384 this maximum length SHOULD be reported. 386 +--------------+----------------+----------------+------------------+ 387 | Frame Size, | Ave B2B | Min,Max,StdDev | Corrected Buff | 388 | octets | Length, frames | | Time, Sec | 389 +--------------+----------------+----------------+------------------+ 390 | 64 | 26000 | 25500,27000,20 | 0.00004 | 391 +--------------+----------------+----------------+------------------+ 393 Back-to-Back Frame Results 395 Static and configuration parameters: 397 Number of test repetitions, N 399 Minimum Step Size (during searches), in frames. 401 7. Security Considerations 403 Benchmarking activities as described in this memo are limited to 404 technology characterization using controlled stimuli in a laboratory 405 environment, with dedicated address space and the other constraints 406 [RFC2544]. 408 The benchmarking network topology will be an independent test setup 409 and MUST NOT be connected to devices that may forward the test 410 traffic into a production network, or misroute traffic to the test 411 management network. See [RFC6815]. 413 Further, benchmarking is performed on a "black-box" basis, relying 414 solely on measurements observable external to the DUT/SUT. 416 Special capabilities SHOULD NOT exist in the DUT/SUT specifically for 417 benchmarking purposes. Any implications for network security arising 418 from the DUT/SUT SHOULD be identical in the lab and in production 419 networks. 421 8. IANA Considerations 423 This memo makes no requests of IANA. 425 9. Acknowledgements 427 Thanks to Trevor Cooper, Sridhar Rao, and Martin Klozik of the VSPERF 428 project for many contributions to the testing [VSPERF-b2b]. Yoshiaki 429 Itou has also investigated the topic, and made useful suggestions. 431 10. References 433 10.1. Normative References 435 [RFC1242] Bradner, S., "Benchmarking Terminology for Network 436 Interconnection Devices", RFC 1242, DOI 10.17487/RFC1242, 437 July 1991, . 439 [RFC1944] Bradner, S. and J. McQuaid, "Benchmarking Methodology for 440 Network Interconnect Devices", RFC 1944, 441 DOI 10.17487/RFC1944, May 1996, 442 . 444 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 445 Requirement Levels", BCP 14, RFC 2119, 446 DOI 10.17487/RFC2119, March 1997, 447 . 449 [RFC2544] Bradner, S. and J. McQuaid, "Benchmarking Methodology for 450 Network Interconnect Devices", RFC 2544, 451 DOI 10.17487/RFC2544, March 1999, 452 . 454 [RFC5180] Popoviciu, C., Hamza, A., Van de Velde, G., and D. 455 Dugatkin, "IPv6 Benchmarking Methodology for Network 456 Interconnect Devices", RFC 5180, DOI 10.17487/RFC5180, May 457 2008, . 459 [RFC6201] Asati, R., Pignataro, C., Calabria, F., and C. Olvera, 460 "Device Reset Characterization", RFC 6201, 461 DOI 10.17487/RFC6201, March 2011, 462 . 464 [RFC6815] Bradner, S., Dubray, K., McQuaid, J., and A. Morton, 465 "Applicability Statement for RFC 2544: Use on Production 466 Networks Considered Harmful", RFC 6815, 467 DOI 10.17487/RFC6815, November 2012, 468 . 470 [RFC6985] Morton, A., "IMIX Genome: Specification of Variable Packet 471 Sizes for Additional Testing", RFC 6985, 472 DOI 10.17487/RFC6985, July 2013, 473 . 475 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 476 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 477 May 2017, . 479 10.2. Informative References 481 [OPNFV-2017] 482 Cooper, T., Morton, A., and S. Rao, "Dataplane 483 Performance, Capacity, and Benchmarking in OPNFV", June 484 2017, 485 . 488 [RFC8239] Avramov, L. and J. Rapp, "Data Center Benchmarking 489 Methodology", RFC 8239, DOI 10.17487/RFC8239, August 2017, 490 . 492 [TST009] ETSI Network Function Virtualization ISG, "ETSI GS NFV-TST 493 009 V3.1.1 (2018-10), "Network Functions Virtualisation 494 (NFV) Release 3; Testing; Specification of Networking 495 Benchmarks and Measurement Methods for NFVI"", October 496 2018, . 499 [VSPERF-b2b] 500 Morton, A., "Back2Back Testing Time Series (from CI)", 501 June 2017, . 505 [VSPERF-BSLV] 506 Morton, A. and S. Rao, "Evolution of Repeatability in 507 Benchmarking: Fraser Plugfest (Summary for IETF BMWG)", 508 July 2018, 509 . 513 Author's Address 514 Al Morton 515 AT&T Labs 516 200 Laurel Avenue South 517 Middletown,, NJ 07748 518 USA 520 Phone: +1 732 420 1571 521 Fax: +1 732 368 1192 522 Email: acmorton@att.com