idnits 2.17.1 draft-morton-bmwg-b2b-frame-03.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 (October 20, 2018) is 1986 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) October 20, 2018 5 Intended status: Informational 6 Expires: April 23, 2019 8 Updates for the Back-to-back Frame Benchmark in RFC 2544 9 draft-morton-bmwg-b2b-frame-03 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 April 23, 2019. 45 Copyright Notice 47 Copyright (c) 2018 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 . . . . . . . . . . . . . . . . . . . 8 73 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 74 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9 75 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 76 10.1. Normative References . . . . . . . . . . . . . . . . . . 9 77 10.2. Informative References . . . . . . . . . . . . . . . . . 10 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). Knowledge of approximate buffer storage size (in time or 190 bytes) may be useful to estimate whether frame losses will occur if 191 DUT forwarding is temporarily suspended in a production deployment, 192 due to an unexpected interruption of frame processing (an 193 interruption of duration greater than the estimated buffer would 194 certainly cause lost frames). 196 The presentation of OPNFV VSPERF evaluation and development of 197 enhanced search alogorithms [VSPERF-BSLV] was discussed at IETF-102. 198 The enhancements are intended to compensate for transient inerrrupts 199 that may cause loss at near-Throughput levels of offered load. 200 Subsequent analysis of the results indicates that buffers within the 201 DUT can compensate for some interrupts, and this finding increases 202 the importance of the Back-to-back frame characterization described 203 here. 205 4. Prerequisites 207 The Test Setup MUST be consistent with Figure 1 of [RFC2544], or 208 Figure 2 when the tester's sender and recover are different devices. 209 Other mandatory testing aspects described in [RFC2544] MUST be 210 included, unless explicitly modified in the next section. 212 The ingress and egress link speeds and link layer protocols MUST be 213 specified and used to compute the maximum theoretical frame rate when 214 respecting the minimum inter-frame gap. 216 The test results for the Throughput Benchmark conducted according to 217 Section 26.1 of [RFC2544] for all [RFC2544]-RECOMMENDED frame sizes 218 MUST be available to reduce the tested frame size list, or to note 219 invalid results for individual frame sizes (because the burst length 220 may be essentially infinite for large frame sizes). 222 Note that: 224 o the Throughput and the Back-to-back Frame measurement 225 configuration traffic characteristics (unidirectional or bi- 226 directional) MUST match. 228 o the Throughput measurement MUST be under zero-loss conditions, 229 according to Section 26.1 of [RFC2544]. 231 The Back-to-back Benchmark described in Section 3.1 of [RFC1242] MUST 232 be measured directly by the tester. Additional measurement 233 requirements are described below in Section 5. 235 5. Back-to-back Frames 237 Objective: To characterize the ability of a DUT to process back-to- 238 back frames as defined in [RFC1242]. 240 The Procedure follows. 242 5.1. Preparing the list of Frame sizes 244 From the list of RECOMMENDED Frame sizes (Section 9 of [RFC2544]), 245 select the subset of Frame sizes whose measured Throughput was less 246 than the maximum theoretical Frame Rate. These are the only Frame 247 sizes where it is possible to produce a burst of frames that cause 248 the DUT buffers to fill and eventually overflow, producing one or 249 more discarded frames. 251 5.2. Test for a Single Frame Size 253 Each trial in the test requires the tester to send a burst of frames 254 (after idle time) with the minimum inter-frame gap, and to count the 255 corresponding frames forwarded by the DUT. 257 The duration of the trial MUST be at least 2 seconds, to allow DUT 258 buffers to deplete. 260 If all frames have been received, the tester increases the length of 261 the burst according to the search algorithm and performs another 262 trial. 264 If the received frame count is less than the number of frames in the 265 burst, then the limit of DUT processing and buffering may have been 266 exceeded, and the burst length is determined by the search algorithm 267 for the next trial. 269 Classic search algorithms have been adapted for use in benchmarking, 270 where the search requires discovery of a pair of outcomes, one with 271 no loss and another with loss, at load conditions within the 272 acceptable tolerance. Also for conditions encountered when 273 benchmarking the Infrastructure for Network Function Virtualization 274 require algorithm enhancement. Fortunately, the adaptation of Binary 275 Search, and an enhanced Binary Search with Loss Verification have 276 been specified in [TST009]. These alogorithms (see clause 12.3) can 277 easily be used for Back-to-back Frame benchmarking by replacing the 278 Offered Load level with burst length in frames. [TST009] Annex B 279 describes the theory behind the enhanced Binary Search algorithm. 281 Either the [TST009] Binary Search or Binary Search with Loss 282 Verification algorithms MUST be used, and input parameters to the 283 algorithm(s) MUST be reported. 285 The Back-to-back Frame value is the longest burst of frames that the 286 DUT can successfully process and buffer without frame loss, as 287 determined from the series of trials. The tester may impose a 288 (configurable) minimum step size for burst length, and the step size 289 MUST be reported with the results (as this influences the accuracy 290 and variation of test results). 292 5.3. Test Repetition 294 The test MUST be repeated N times for each frame size in the subset 295 list, and each Back-to-back Frame value made available for further 296 processing (below). 298 5.4. Benchmark Calculations 300 For each Frame size, calculate the following summary statistics for 301 Back-to-back Frame values over the N tests: 303 o Average (Benchmark) 305 o Minimum 307 o Maximum 309 o Standard Deviation 311 Further, calculate the Implied DUT Buffer Time and the Corrected DUT 312 Buffer Time in seconds, as follows: 314 Implied DUT Buffer Time = 316 Average num of Back-to-back Frames / Max Theoretical Frame Rate 318 The formula above is simply expressing the Burst of Frames in units 319 of time. 321 Corrected DUT Buffer Time = 323 Measured Throughput 324 = Implied DUT Buffer Time * -------------------------- 325 Max Theoretical Frame Rate 327 The term on the far right in the formula for Corrected DUT Buffer 328 Time accounts for all the frames in the Burst that were transmitted 329 by the DUT *while the Burst of frames were sent in*. So, these frames 330 are not in the Buffer and the Buffer size is more accurately 331 estimated by excluding them. 333 6. Reporting 335 The back-to-back results SHOULD be reported in the format of a table 336 with a row for each of the tested frame sizes. There SHOULD be 337 columns for the frame size and for the resultant average frame count 338 for each type of data stream tested. 340 The number of tests Averaged for the Benchmark, N, MUST be reported. 342 The Minimum, Maximum, and Standard Deviation across all complete 343 tests SHOULD also be reported. 345 The Corrected DUT Buffer Time SHOULD also be reported. 347 If the tester operates using a maximum burst length in frames, then 348 this maximum length SHOULD be reported. 350 +--------------+----------------+----------------+------------------+ 351 | Frame Size, | Ave B2B | Min,Max,StdDev | Corrected Buff | 352 | octets | Length, frames | | Time, Sec | 353 +--------------+----------------+----------------+------------------+ 354 | 64 | 26000 | 25500,27000,20 | 0.00004 | 355 +--------------+----------------+----------------+------------------+ 357 Back-to-Back Frame Results 359 Static and configuration parameters: 361 Number of test repetitions, N 363 Minimum Step Size (during searches), in frames. 365 7. Security Considerations 367 Benchmarking activities as described in this memo are limited to 368 technology characterization using controlled stimuli in a laboratory 369 environment, with dedicated address space and the other constraints 370 [RFC2544]. 372 The benchmarking network topology will be an independent test setup 373 and MUST NOT be connected to devices that may forward the test 374 traffic into a production network, or misroute traffic to the test 375 management network. See [RFC6815]. 377 Further, benchmarking is performed on a "black-box" basis, relying 378 solely on measurements observable external to the DUT/SUT. 380 Special capabilities SHOULD NOT exist in the DUT/SUT specifically for 381 benchmarking purposes. Any implications for network security arising 382 from the DUT/SUT SHOULD be identical in the lab and in production 383 networks. 385 8. IANA Considerations 387 This memo makes no requests of IANA. 389 9. Acknowledgements 391 Thanks to Trevor Cooper, Sridhar Rao, and Martin Klozik of the VSPERF 392 project for many contributions to the testing [VSPERF-b2b]. Yoshiaki 393 Itou has also investigated the topic, and made useful suggestions. 395 10. References 397 10.1. Normative References 399 [RFC1242] Bradner, S., "Benchmarking Terminology for Network 400 Interconnection Devices", RFC 1242, DOI 10.17487/RFC1242, 401 July 1991, . 403 [RFC1944] Bradner, S. and J. McQuaid, "Benchmarking Methodology for 404 Network Interconnect Devices", RFC 1944, 405 DOI 10.17487/RFC1944, May 1996, 406 . 408 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 409 Requirement Levels", BCP 14, RFC 2119, 410 DOI 10.17487/RFC2119, March 1997, 411 . 413 [RFC2544] Bradner, S. and J. McQuaid, "Benchmarking Methodology for 414 Network Interconnect Devices", RFC 2544, 415 DOI 10.17487/RFC2544, March 1999, 416 . 418 [RFC5180] Popoviciu, C., Hamza, A., Van de Velde, G., and D. 419 Dugatkin, "IPv6 Benchmarking Methodology for Network 420 Interconnect Devices", RFC 5180, DOI 10.17487/RFC5180, May 421 2008, . 423 [RFC6201] Asati, R., Pignataro, C., Calabria, F., and C. Olvera, 424 "Device Reset Characterization", RFC 6201, 425 DOI 10.17487/RFC6201, March 2011, 426 . 428 [RFC6815] Bradner, S., Dubray, K., McQuaid, J., and A. Morton, 429 "Applicability Statement for RFC 2544: Use on Production 430 Networks Considered Harmful", RFC 6815, 431 DOI 10.17487/RFC6815, November 2012, 432 . 434 [RFC6985] Morton, A., "IMIX Genome: Specification of Variable Packet 435 Sizes for Additional Testing", RFC 6985, 436 DOI 10.17487/RFC6985, July 2013, 437 . 439 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 440 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 441 May 2017, . 443 10.2. Informative References 445 [OPNFV-2017] 446 Cooper, T., Morton, A., and S. Rao, "Dataplane 447 Performance, Capacity, and Benchmarking in OPNFV", June 448 2017, 449 . 452 [RFC8239] Avramov, L. and J. Rapp, "Data Center Benchmarking 453 Methodology", RFC 8239, DOI 10.17487/RFC8239, August 2017, 454 . 456 [TST009] ETSI Network Function Virtualization ISG, "ETSI GS NFV-TST 457 009 V3.1.1 (2018-10), "Network Functions Virtualisation 458 (NFV) Release 3; Testing; Specification of Networking 459 Benchmarks and Measurement Methods for NFVI"", October 460 2018, . 463 [VSPERF-b2b] 464 Morton, A., "Back2Back Testing Time Series (from CI)", 465 June 2017, . 469 [VSPERF-BSLV] 470 Morton, A. and S. Rao, "Evolution of Repeatability in 471 Benchmarking: Fraser Plugfest (Summary for IETF BMWG)", 472 July 2018, 473 . 477 Author's Address 479 Al Morton 480 AT&T Labs 481 200 Laurel Avenue South 482 Middletown,, NJ 07748 483 USA 485 Phone: +1 732 420 1571 486 Fax: +1 732 368 1192 487 Email: acmorton@att.com