idnits 2.17.1 draft-ietf-bmwg-vswitch-opnfv-00.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 : ---------------------------------------------------------------------------- ** There are 17 instances of too long lines in the document, the longest one being 2 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (July 8, 2016) is 2821 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Unused Reference: 'RFC2330' is defined on line 807, but no explicit reference was found in the text == Unused Reference: 'RFC2680' is defined on line 821, but no explicit reference was found in the text == Unused Reference: 'RFC2681' is defined on line 826, but no explicit reference was found in the text == Unused Reference: 'RFC3393' is defined on line 835, but no explicit reference was found in the text == Unused Reference: 'RFC3432' is defined on line 840, but no explicit reference was found in the text == Unused Reference: 'RFC4689' is defined on line 849, but no explicit reference was found in the text == Unused Reference: 'RFC5357' is defined on line 859, but no explicit reference was found in the text == Unused Reference: 'RFC5905' is defined on line 864, but no explicit reference was found in the text == Unused Reference: 'RFC6049' is defined on line 909, but no explicit reference was found in the text == Unused Reference: 'RFC6248' is defined on line 913, but no explicit reference was found in the text == Unused Reference: 'RFC6390' is defined on line 918, but no explicit reference was found in the text ** Obsolete normative reference: RFC 2679 (Obsoleted by RFC 7679) ** Obsolete normative reference: RFC 2680 (Obsoleted by RFC 7680) == Outdated reference: A later version (-03) exists of draft-huang-bmwg-virtual-network-performance-01 == Outdated reference: A later version (-05) exists of draft-ietf-bmwg-virtual-net-03 Summary: 3 errors (**), 0 flaws (~~), 14 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group M. Tahhan 3 Internet-Draft B. O'Mahony 4 Intended status: Informational Intel 5 Expires: January 9, 2017 A. Morton 6 AT&T Labs 7 July 8, 2016 9 Benchmarking Virtual Switches in OPNFV 10 draft-ietf-bmwg-vswitch-opnfv-00 12 Abstract 14 This memo describes the progress of the Open Platform for NFV (OPNFV) 15 project on virtual switch performance "VSWITCHPERF". This project 16 intends to build on the current and completed work of the 17 Benchmarking Methodology Working Group in IETF, by referencing 18 existing literature. The Benchmarking Methodology Working Group has 19 traditionally conducted laboratory characterization of dedicated 20 physical implementations of internetworking functions. Therefore, 21 this memo begins to describe the additional considerations when 22 virtual switches are implemented in general-purpose hardware. The 23 expanded tests and benchmarks are also influenced by the OPNFV 24 mission to support virtualization of the "telco" infrastructure. 26 Requirements Language 28 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 29 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 30 document are to be interpreted as described in RFC 2119 [RFC2119]. 32 Status of This Memo 34 This Internet-Draft is submitted in full conformance with the 35 provisions of BCP 78 and BCP 79. 37 Internet-Drafts are working documents of the Internet Engineering 38 Task Force (IETF). Note that other groups may also distribute 39 working documents as Internet-Drafts. The list of current Internet- 40 Drafts is at http://datatracker.ietf.org/drafts/current/. 42 Internet-Drafts are draft documents valid for a maximum of six months 43 and may be updated, replaced, or obsoleted by other documents at any 44 time. It is inappropriate to use Internet-Drafts as reference 45 material or to cite them other than as "work in progress." 47 This Internet-Draft will expire on January 9, 2017. 49 Copyright Notice 51 Copyright (c) 2016 IETF Trust and the persons identified as the 52 document authors. All rights reserved. 54 This document is subject to BCP 78 and the IETF Trust's Legal 55 Provisions Relating to IETF Documents 56 (http://trustee.ietf.org/license-info) in effect on the date of 57 publication of this document. Please review these documents 58 carefully, as they describe your rights and restrictions with respect 59 to this document. Code Components extracted from this document must 60 include Simplified BSD License text as described in Section 4.e of 61 the Trust Legal Provisions and are provided without warranty as 62 described in the Simplified BSD License. 64 Table of Contents 66 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 67 2. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 68 3. Benchmarking Considerations . . . . . . . . . . . . . . . . . 4 69 3.1. Comparison with Physical Network Functions . . . . . . . 4 70 3.2. Continued Emphasis on Black-Box Benchmarks . . . . . . . 4 71 3.3. New Configuration Parameters . . . . . . . . . . . . . . 4 72 3.4. Flow classification . . . . . . . . . . . . . . . . . . . 6 73 3.5. Benchmarks using Baselines with Resource Isolation . . . 7 74 4. VSWITCHPERF Specification Summary . . . . . . . . . . . . . . 8 75 5. 3x3 Matrix Coverage . . . . . . . . . . . . . . . . . . . . . 16 76 5.1. Speed of Activation . . . . . . . . . . . . . . . . . . . 17 77 5.2. Accuracy of Activation section . . . . . . . . . . . . . 17 78 5.3. Reliability of Activation . . . . . . . . . . . . . . . . 17 79 5.4. Scale of Activation . . . . . . . . . . . . . . . . . . . 17 80 5.5. Speed of Operation . . . . . . . . . . . . . . . . . . . 17 81 5.6. Accuracy of Operation . . . . . . . . . . . . . . . . . . 17 82 5.7. Reliability of Operation . . . . . . . . . . . . . . . . 17 83 5.8. Scalability of Operation . . . . . . . . . . . . . . . . 18 84 5.9. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 18 85 6. Security Considerations . . . . . . . . . . . . . . . . . . . 18 86 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 87 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 19 88 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 19 89 9.1. Normative References . . . . . . . . . . . . . . . . . . 19 90 9.2. Informative References . . . . . . . . . . . . . . . . . 21 91 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 93 1. Introduction 95 Benchmarking Methodology Working Group (BMWG) has traditionally 96 conducted laboratory characterization of dedicated physical 97 implementations of internetworking functions. The Black-box 98 Benchmarks of Throughput, Latency, Forwarding Rates and others have 99 served our industry for many years. Now, Network Function 100 Virtualization (NFV) has the goal to transform how internetwork 101 functions are implemented, and therefore has garnered much attention. 103 This memo summarizes the progress of the Open Platform for NFV 104 (OPNFV) project on virtual switch performance characterization, 105 "VSWITCHPERF", through the Brahmaputra (second) release [BrahRel]. 106 This project intends to build on the current and completed work of 107 the Benchmarking Methodology Working Group in IETF, by referencing 108 existing literature. For example, currently the most often 109 referenced RFC is [RFC2544] (which depends on [RFC1242]) and 110 foundation of the benchmarking work in OPNFV is common and strong. 112 See https://wiki.opnfv.org/ 113 characterize_vswitch_performance_for_telco_nfv_use_cases for more 114 background, and the OPNFV website for general information: 115 https://www.opnfv.org/ 117 The authors note that OPNFV distinguishes itself from other open 118 source compute and networking projects through its emphasis on 119 existing "telco" services as opposed to cloud-computing. There are 120 many ways in which telco requirements have different emphasis on 121 performance dimensions when compared to cloud computing: support for 122 and transfer of isochronous media streams is one example. 124 Note also that the move to NFV Infrastructure has resulted in many 125 new benchmarking initiatives across the industry. The authors are 126 currently doing their best to maintain alignment with many other 127 projects, and this Internet Draft is one part of the efforts. We 128 acknowledge the early work in 129 [I-D.huang-bmwg-virtual-network-performance], and useful discussion 130 with the authors. 132 2. Scope 134 The primary purpose and scope of the memo is to inform the industry 135 of work-in-progress that builds on the body of extensive BMWG 136 literature and experience, and describe the extensions needed for 137 benchmarking virtual switches. Inital feedback indicates that many 138 of these extensions may be applicable beyond the current scope (to 139 hardware switches in the NFV Infrastructure and to virtual routers, 140 for example). Additionally, this memo serves as a vehicle to include 141 more detail and commentary from BMWG and other Open Source 142 communities, under BMWG's chartered work to characterize the NFV 143 Infrastructure (a virtual switch is an important aspect of that 144 infrastructure). 146 3. Benchmarking Considerations 148 This section highlights some specific considerations (from 149 [I-D.ietf-bmwg-virtual-net])related to Benchmarks for virtual 150 switches. The OPNFV project is sharing its present view on these 151 areas, as they develop their specifications in the Level Test Design 152 (LTD) document. 154 3.1. Comparison with Physical Network Functions 156 To compare the performance of virtual designs and implementations 157 with their physical counterparts, identical benchmarks are needed. 158 BMWG has developed specifications for many network functions this 159 memo re-uses existing benchmarks through references, and expands them 160 during development of new methods. A key configuration aspect is the 161 number of parallel cores required to achieve comparable performance 162 with a given physical device, or whether some limit of scale was 163 reached before the cores could achieve the comparable level. 165 It's unlikely that the virtual switch will be the only application 166 running on the SUT, so CPU utilization, Cache utilization, and Memory 167 footprint should also be recorded for the virtual implementations of 168 internetworking functions. 170 3.2. Continued Emphasis on Black-Box Benchmarks 172 External observations remain essential as the basis for Benchmarks. 173 Internal observations with fixed specification and interpretation 174 will be provided in parallel to assist the development of operations 175 procedures when the technology is deployed. 177 3.3. New Configuration Parameters 179 A key consideration when conducting any sort of benchmark is trying 180 to ensure the consistency and repeatability of test results. When 181 benchmarking the performance of a vSwitch there are many factors that 182 can affect the consistency of results, one key factor is matching the 183 various hardware and software details of the SUT. This section lists 184 some of the many new parameters which this project believes are 185 critical to report in order to achieve repeatability. 187 Hardware details including: 189 o Platform details 191 o Processor details 193 o Memory information (type and size) 195 o Number of enabled cores 197 o Number of cores used for the test 199 o Number of physical NICs, as well as their details (manufacturer, 200 versions, type and the PCI slot they are plugged into) 202 o NIC interrupt configuration 204 o BIOS version, release date and any configurations that were 205 modified 207 o CPU microcode level 209 o Memory DIMM configurations (quad rank performance may not be the 210 same as dual rank) in size, freq and slot locations 212 o PCI configuration parameters (payload size, early ack option...) 214 o Power management at all levels (ACPI sleep states, processor 215 package, OS...) 217 Software details including: 219 o OS parameters and behavior (text vs graphical no one typing at the 220 console on one system) 222 o OS version (for host and VNF) 224 o Kernel version (for host and VNF) 226 o GRUB boot parameters (for host and VNF) 228 o Hypervisor details (Type and version) 230 o Selected vSwitch, version number or commit id used 232 o vSwitch launch command line if it has been parameterised 234 o Memory allocation to the vSwitch 236 o which NUMA node it is using, and how many memory channels 237 o DPDK or any other SW dependency version number or commit id used 239 o Memory allocation to a VM - if it's from Hugpages/elsewhere 241 o VM storage type: snapshot/independent persistent/independent non- 242 persistent 244 o Number of VMs 246 o Number of Virtual NICs (vNICs), versions, type and driver 248 o Number of virtual CPUs and their core affinity on the host 250 o Number vNIC interrupt configuration 252 o Thread affinitization for the applications (including the vSwitch 253 itself) on the host 255 o Details of Resource isolation, such as CPUs designated for Host/ 256 Kernel (isolcpu) and CPUs designated for specific processes 257 (taskset). - Test duration. - Number of flows. 259 Test Traffic Information: 261 o Traffic type - UDP, TCP, IMIX / Other 263 o Packet Sizes 265 o Deployment Scenario 267 3.4. Flow classification 269 Virtual switches group packets into flows by processing and matching 270 particular packet or frame header information, or by matching packets 271 based on the input ports. Thus a flow can be thought of a sequence 272 of packets that have the same set of header field values (5-tuple) or 273 have arrived on the same port. Performance results can vary based on 274 the parameters the vSwitch uses to match for a flow. The recommended 275 flow classification parameters for any vSwitch performance tests are: 276 the input port, the source IP address, the destination IP address and 277 the Ethernet protocol type field. It is essential to increase the 278 flow timeout time on a vSwitch before conducting any performance 279 tests that do not measure the flow setup time. Normally the first 280 packet of a particular stream will install the flow in the virtual 281 switch which adds an additional latency, subsequent packets of the 282 same flow are not subject to this latency if the flow is already 283 installed on the vSwitch. 285 3.5. Benchmarks using Baselines with Resource Isolation 287 This outline describes measurement of baseline with isolated 288 resources at a high level, which is the intended approach at this 289 time. 291 1. Baselines: 293 * Optional: Benchmark platform forwarding capability without a 294 vswitch or VNF for at least 72 hours (serves as a means of 295 platform validation and a means to obtain the base performance 296 for the platform in terms of its maximum forwarding rate and 297 latency). 299 Benchmark platform forwarding capability 301 __ 302 +--------------------------------------------------+ | 303 | +------------------------------------------+ | | 304 | | | | | 305 | | Simple Forwarding App | | Host 306 | | | | | 307 | +------------------------------------------+ | | 308 | | NIC | | | 309 +---+------------------------------------------+---+ __| 310 ^ : 311 | | 312 : v 313 +--------------------------------------------------+ 314 | | 315 | traffic generator | 316 | | 317 +--------------------------------------------------+ 319 * Benchmark VNF forwarding capability with direct connectivity 320 (vSwitch bypass, e.g., SR/IOV) for at least 72 hours (serves 321 as a means of VNF validation and a means to obtain the base 322 performance for the VNF in terms of its maximum forwarding 323 rate and latency). The metrics gathered from this test will 324 serve as a key comparison point for vSwitch bypass 325 technologies performance and vSwitch performance. 327 Benchmark VNF forwarding capability 329 __ 330 +--------------------------------------------------+ | 331 | +------------------------------------------+ | | 332 | | | | | 333 | | VNF | | | 334 | | | | | 335 | +------------------------------------------+ | | 336 | | Passthrough/SR-IOV | | Host 337 | +------------------------------------------+ | | 338 | | NIC | | | 339 +---+------------------------------------------+---+ __| 340 ^ : 341 | | 342 : v 343 +--------------------------------------------------+ 344 | | 345 | traffic generator | 346 | | 347 +--------------------------------------------------+ 349 * Benchmarking with isolated resources alone, with other 350 resources (both HW&SW) disabled Example, vSw and VM are SUT 352 * Benchmarking with isolated resources alone, leaving some 353 resources unused 355 * Benchmark with isolated resources and all resources occupied 357 2. Next Steps 359 * Limited sharing 361 * Production scenarios 363 * Stressful scenarios 365 4. VSWITCHPERF Specification Summary 367 The overall specification in preparation is referred to as a Level 368 Test Design (LTD) document, which will contain a suite of performance 369 tests. The base performance tests in the LTD are based on the pre- 370 existing specifications developed by BMWG to test the performance of 371 physical switches. These specifications include: 373 o [RFC2544] Benchmarking Methodology for Network Interconnect 374 Devices 376 o [RFC2889] Benchmarking Methodology for LAN Switching 378 o [RFC6201] Device Reset Characterization 380 o [RFC5481] Packet Delay Variation Applicability Statement 382 Some of the above/newer RFCs are being applied in benchmarking for 383 the first time, and represent a development challenge for test 384 equipment developers. Fortunately, many members of the testing 385 system community have engaged on the VSPERF project, including an 386 open source test system. 388 In addition to this, the LTD also re-uses the terminology defined by: 390 o [RFC2285] Benchmarking Terminology for LAN Switching Devices 392 o [RFC5481] Packet Delay Variation Applicability Statement 394 Specifications to be included in future updates of the LTD include: 396 o [RFC3918] Methodology for IP Multicast Benchmarking 398 o [RFC4737] Packet Reordering Metrics 400 As one might expect, the most fundamental internetworking 401 characteristics of Throughput and Latency remain important when the 402 switch is virtualized, and these benchmarks figure prominently in the 403 specification. 405 When considering characteristics important to "telco" network 406 functions, we must begin to consider additional performance metrics. 407 In this case, the project specifications have referenced metrics from 408 the IETF IP Performance Metrics (IPPM) literature. This means that 409 the [RFC2544] test of Latency is replaced by measurement of a metric 410 derived from IPPM's [RFC2679], where a set of statistical summaries 411 will be provided (mean, max, min, etc.). Further metrics planned to 412 be benchmarked include packet delay variation as defined by [RFC5481] 413 , reordering, burst behaviour, DUT availability, DUT capacity and 414 packet loss in long term testing at Throughput level, where some low- 415 level of background loss may be present and characterized. 417 Tests have been (or will be) designed to collect the metrics below: 419 o Throughput Tests to measure the maximum forwarding rate (in frames 420 per second or fps) and bit rate (in Mbps) for a constant load (as 421 defined by [RFC1242]) without traffic loss. 423 o Packet and Frame Delay Distribution Tests to measure average, min 424 and max packet and frame delay for constant loads. 426 o Packet Delay Tests to understand latency distribution for 427 different packet sizes and over an extended test run to uncover 428 outliers. 430 o Scalability Tests to understand how the virtual switch performs as 431 the number of flows, active ports, complexity of the forwarding 432 logic's configuration... it has to deal with increases. 434 o Stream Performance Tests (TCP, UDP) to measure bulk data transfer 435 performance, i.e. how fast systems can send and receive data 436 through the switch. 438 o Control Path and Datapath Coupling Tests, to understand how 439 closely coupled the datapath and the control path are as well as 440 the effect of this coupling on the performance of the DUT 441 (example: delay of the initial packet of a flow). 443 o CPU and Memory Consumption Tests to understand the virtual 444 switch's footprint on the system, usually conducted as auxiliary 445 measurements with benchmarks above. They include: CPU 446 utilization, Cache utilization and Memory footprint. 448 o The so-called "Soak" tests, where the selected test is conducted 449 over a long period of time (with an ideal duration of 24 hours, 450 and at least 6 hours). The purpose of soak tests is to capture 451 transient changes in performance which may occur due to infrequent 452 processes or the low probability coincidence of two or more 453 processes. The performance must be evaluated periodically during 454 continuous testing, and this results in use of [RFC2889] Frame 455 Rate metrics instead of [RFC2544] Throughput (which requires 456 stopping traffic to allow time for all traffic to exit internal 457 queues). 459 Future/planned test specs include: 461 o Request/Response Performance Tests (TCP, UDP) which measure the 462 transaction rate through the switch. 464 o Noisy Neighbour Tests, to understand the effects of resource 465 sharing on the performance of a virtual switch. 467 o Tests derived from examination of ETSI NFV Draft GS IFA003 468 requirements [IFA003] on characterization of acceleration 469 technologies applied to vswitches. 471 The flexibility of deployment of a virtual switch within a network 472 means that the BMWG IETF existing literature needs to be used to 473 characterize the performance of a switch in various deployment 474 scenarios. The deployment scenarios under consideration include: 476 Physical port to virtual switch to physical port 478 __ 479 +--------------------------------------------------+ | 480 | +--------------------+ | | 481 | | | | | 482 | | v | | Host 483 | +--------------+ +--------------+ | | 484 | | phy port | vSwitch | phy port | | | 485 +---+--------------+------------+--------------+---+ __| 486 ^ : 487 | | 488 : v 489 +--------------------------------------------------+ 490 | | 491 | traffic generator | 492 | | 493 +--------------------------------------------------+ 495 Physical port to virtual switch to VNF to virtual switch to physical 496 port 498 __ 499 +---------------------------------------------------+ | 500 | | | 501 | +-------------------------------------------+ | | 502 | | Application | | | 503 | +-------------------------------------------+ | | 504 | ^ : | | 505 | | | | | Guest 506 | : v | | 507 | +---------------+ +---------------+ | | 508 | | logical port 0| | logical port 1| | | 509 +---+---------------+-----------+---------------+---+ __| 510 ^ : 511 | | 512 : v __ 513 +---+---------------+----------+---------------+---+ | 514 | | logical port 0| | logical port 1| | | 515 | +---------------+ +---------------+ | | 516 | ^ : | | 517 | | | | | Host 518 | : v | | 519 | +--------------+ +--------------+ | | 520 | | phy port | vSwitch | phy port | | | 521 +---+--------------+------------+--------------+---+ __| 522 ^ : 523 | | 524 : v 525 +--------------------------------------------------+ 526 | | 527 | traffic generator | 528 | | 529 +--------------------------------------------------+ 531 Physical port to virtual switch to VNF to virtual switch to VNF to 532 virtual switch to physical port 534 __ 535 +----------------------+ +----------------------+ | 536 | Guest 1 | | Guest 2 | | 537 | +---------------+ | | +---------------+ | | 538 | | Application | | | | Application | | | 539 | +---------------+ | | +---------------+ | | 540 | ^ | | | ^ | | | 541 | | v | | | v | | Guests 542 | +---------------+ | | +---------------+ | | 543 | | logical ports | | | | logical ports | | | 544 | | 0 1 | | | | 0 1 | | | 545 +---+---------------+--+ +---+---------------+--+__| 546 ^ : ^ : 547 | | | | 548 : v : v _ 549 +---+---------------+---------+---------------+--+ | 550 | | 0 1 | | 3 4 | | | 551 | | logical ports | | logical ports | | | 552 | +---------------+ +---------------+ | | 553 | ^ | ^ | | | Host 554 | | |-----------------| v | | 555 | +--------------+ +--------------+ | | 556 | | phy ports | vSwitch | phy ports | | | 557 +---+--------------+----------+--------------+---+_| 558 ^ : 559 | | 560 : v 561 +--------------------------------------------------+ 562 | | 563 | traffic generator | 564 | | 565 +--------------------------------------------------+ 567 Physical port to virtual switch to VNF 569 __ 570 +---------------------------------------------------+ | 571 | | | 572 | +-------------------------------------------+ | | 573 | | Application | | | 574 | +-------------------------------------------+ | | 575 | ^ | | 576 | | | | Guest 577 | : | | 578 | +---------------+ | | 579 | | logical port 0| | | 580 +---+---------------+-------------------------------+ __| 581 ^ 582 | 583 : __ 584 +---+---------------+------------------------------+ | 585 | | logical port 0| | | 586 | +---------------+ | | 587 | ^ | | 588 | | | | Host 589 | : | | 590 | +--------------+ | | 591 | | phy port | vSwitch | | 592 +---+--------------+------------ -------------- ---+ __| 593 ^ 594 | 595 : 596 +--------------------------------------------------+ 597 | | 598 | traffic generator | 599 | | 600 +--------------------------------------------------+ 602 VNF to virtual switch to physical port 604 __ 605 +---------------------------------------------------+ | 606 | | | 607 | +-------------------------------------------+ | | 608 | | Application | | | 609 | +-------------------------------------------+ | | 610 | : | | 611 | | | | Guest 612 | v | | 613 | +---------------+ | | 614 | | logical port | | | 615 +-------------------------------+---------------+---+ __| 616 : 617 | 618 v __ 619 +------------------------------+---------------+---+ | 620 | | logical port | | | 621 | +---------------+ | | 622 | : | | 623 | | | | Host 624 | v | | 625 | +--------------+ | | 626 | vSwitch | phy port | | | 627 +-------------------------------+--------------+---+ __| 628 : 629 | 630 v 631 +--------------------------------------------------+ 632 | | 633 | traffic generator | 634 | | 635 +--------------------------------------------------+ 637 VNF to virtual switch to VNF 639 __ 640 +----------------------+ +----------------------+ | 641 | Guest 1 | | Guest 2 | | 642 | +---------------+ | | +---------------+ | | 643 | | Application | | | | Application | | | 644 | +---------------+ | | +---------------+ | | 645 | | | | ^ | | 646 | v | | | | | Guests 647 | +---------------+ | | +---------------+ | | 648 | | logical ports | | | | logical ports | | | 649 | | 0 | | | | 0 | | | 650 +---+---------------+--+ +---+---------------+--+__| 651 : ^ 652 | | 653 v : _ 654 +---+---------------+---------+---------------+--+ | 655 | | 1 | | 1 | | | 656 | | logical ports | | logical ports | | | 657 | +---------------+ +---------------+ | | 658 | | ^ | | Host 659 | L-----------------+ | | 660 | | | 661 | vSwitch | | 662 +------------------------------------------------+_| 664 A set of Deployment Scenario figures is available on the VSPERF Test 665 Methodology Wiki page [TestTopo]. 667 5. 3x3 Matrix Coverage 669 This section organizes the many existing test specifications into the 670 "3x3" matrix (introduced in [I-D.ietf-bmwg-virtual-net]). Because 671 the LTD specification ID names are quite long, this section is 672 organized into lists for each occupied cell of the matrix (not all 673 are occupied, also the matrix has grown to 3x4 to accommodate scale 674 metrics when displaying the coverage of many metrics/benchmarks). 675 The current version of the LTD specification is available [LTD]. 677 The tests listed below assess the activation of paths in the data 678 plane, rather than the control plane. 680 A complete list of tests with short summaries is available on the 681 VSPERF "LTD Test Spec Overview" Wiki page [LTDoverV]. 683 5.1. Speed of Activation 685 o Activation.RFC2889.AddressLearningRate 687 o PacketLatency.InitialPacketProcessingLatency 689 5.2. Accuracy of Activation section 691 o CPDP.Coupling.Flow.Addition 693 5.3. Reliability of Activation 695 o Throughput.RFC2544.SystemRecoveryTime 697 o Throughput.RFC2544.ResetTime 699 5.4. Scale of Activation 701 o Activation.RFC2889.AddressCachingCapacity 703 5.5. Speed of Operation 705 o Throughput.RFC2544.PacketLossRate 707 o CPU.RFC2544.0PacketLoss 709 o Throughput.RFC2544.PacketLossRateFrameModification 711 o Throughput.RFC2544.BackToBackFrames 713 o Throughput.RFC2889.MaxForwardingRate 715 o Throughput.RFC2889.ForwardPressure 717 o Throughput.RFC2889.BroadcastFrameForwarding 719 5.6. Accuracy of Operation 721 o Throughput.RFC2889.ErrorFramesFiltering 723 o Throughput.RFC2544.Profile 725 5.7. Reliability of Operation 727 o Throughput.RFC2889.Soak 729 o Throughput.RFC2889.SoakFrameModification 730 o PacketDelayVariation.RFC3393.Soak 732 5.8. Scalability of Operation 734 o Scalability.RFC2544.0PacketLoss 736 o MemoryBandwidth.RFC2544.0PacketLoss.Scalability 738 5.9. Summary 740 |------------------------------------------------------------------------| 741 | | | | | | 742 | | SPEED | ACCURACY | RELIABILITY | SCALE | 743 | | | | | | 744 |------------------------------------------------------------------------| 745 | | | | | | 746 | Activation | X | X | X | X | 747 | | | | | | 748 |------------------------------------------------------------------------| 749 | | | | | | 750 | Operation | X | X | X | X | 751 | | | | | | 752 |------------------------------------------------------------------------| 753 | | | | | | 754 | De-activation | | | | | 755 | | | | | | 756 |------------------------------------------------------------------------| 758 6. Security Considerations 760 Benchmarking activities as described in this memo are limited to 761 technology characterization of a Device Under Test/System Under Test 762 (DUT/SUT) using controlled stimuli in a laboratory environment, with 763 dedicated address space and the constraints specified in the sections 764 above. 766 The benchmarking network topology will be an independent test setup 767 and MUST NOT be connected to devices that may forward the test 768 traffic into a production network, or misroute traffic to the test 769 management network. 771 Further, benchmarking is performed on a "black-box" basis, relying 772 solely on measurements observable external to the DUT/SUT. 774 Special capabilities SHOULD NOT exist in the DUT/SUT specifically for 775 benchmarking purposes. Any implications for network security arising 776 from the DUT/SUT SHOULD be identical in the lab and in production 777 networks. 779 7. IANA Considerations 781 No IANA Action is requested at this time. 783 8. Acknowledgements 785 The authors appreciate and acknowledge comments from Scott Bradner, 786 Marius Georgescu, Ramki Krishnan, Doug Montgomery, Martin Klozik, 787 Christian Trautman, and others for their reviews. 789 9. References 791 9.1. Normative References 793 [NFV.PER001] 794 "Network Function Virtualization: Performance and 795 Portability Best Practices", Group Specification ETSI GS 796 NFV-PER 001 V1.1.1 (2014-06), June 2014. 798 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 799 Requirement Levels", BCP 14, RFC 2119, 800 DOI 10.17487/RFC2119, March 1997, 801 . 803 [RFC2285] Mandeville, R., "Benchmarking Terminology for LAN 804 Switching Devices", RFC 2285, DOI 10.17487/RFC2285, 805 February 1998, . 807 [RFC2330] Paxson, V., Almes, G., Mahdavi, J., and M. Mathis, 808 "Framework for IP Performance Metrics", RFC 2330, 809 DOI 10.17487/RFC2330, May 1998, 810 . 812 [RFC2544] Bradner, S. and J. McQuaid, "Benchmarking Methodology for 813 Network Interconnect Devices", RFC 2544, 814 DOI 10.17487/RFC2544, March 1999, 815 . 817 [RFC2679] Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way 818 Delay Metric for IPPM", RFC 2679, DOI 10.17487/RFC2679, 819 September 1999, . 821 [RFC2680] Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way 822 Packet Loss Metric for IPPM", RFC 2680, 823 DOI 10.17487/RFC2680, September 1999, 824 . 826 [RFC2681] Almes, G., Kalidindi, S., and M. Zekauskas, "A Round-trip 827 Delay Metric for IPPM", RFC 2681, DOI 10.17487/RFC2681, 828 September 1999, . 830 [RFC2889] Mandeville, R. and J. Perser, "Benchmarking Methodology 831 for LAN Switching Devices", RFC 2889, 832 DOI 10.17487/RFC2889, August 2000, 833 . 835 [RFC3393] Demichelis, C. and P. Chimento, "IP Packet Delay Variation 836 Metric for IP Performance Metrics (IPPM)", RFC 3393, 837 DOI 10.17487/RFC3393, November 2002, 838 . 840 [RFC3432] Raisanen, V., Grotefeld, G., and A. Morton, "Network 841 performance measurement with periodic streams", RFC 3432, 842 DOI 10.17487/RFC3432, November 2002, 843 . 845 [RFC3918] Stopp, D. and B. Hickman, "Methodology for IP Multicast 846 Benchmarking", RFC 3918, DOI 10.17487/RFC3918, October 847 2004, . 849 [RFC4689] Poretsky, S., Perser, J., Erramilli, S., and S. Khurana, 850 "Terminology for Benchmarking Network-layer Traffic 851 Control Mechanisms", RFC 4689, DOI 10.17487/RFC4689, 852 October 2006, . 854 [RFC4737] Morton, A., Ciavattone, L., Ramachandran, G., Shalunov, 855 S., and J. Perser, "Packet Reordering Metrics", RFC 4737, 856 DOI 10.17487/RFC4737, November 2006, 857 . 859 [RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J. 860 Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)", 861 RFC 5357, DOI 10.17487/RFC5357, October 2008, 862 . 864 [RFC5905] Mills, D., Martin, J., Ed., Burbank, J., and W. Kasch, 865 "Network Time Protocol Version 4: Protocol and Algorithms 866 Specification", RFC 5905, DOI 10.17487/RFC5905, June 2010, 867 . 869 [RFC6201] Asati, R., Pignataro, C., Calabria, F., and C. Olvera, 870 "Device Reset Characterization", RFC 6201, 871 DOI 10.17487/RFC6201, March 2011, 872 . 874 9.2. Informative References 876 [BrahRel] "Brahmaputra, Second OPNFV Release https://www.opnfv.org/ 877 brahmaputra". 879 [I-D.huang-bmwg-virtual-network-performance] 880 Huang, L., Rong, G., Mandeville, B., and B. Hickman, 881 "Benchmarking Methodology for Virtualization Network 882 Performance", draft-huang-bmwg-virtual-network- 883 performance-01 (work in progress), April 2015. 885 [I-D.ietf-bmwg-virtual-net] 886 Morton, A., "Considerations for Benchmarking Virtual 887 Network Functions and Their Infrastructure", draft-ietf- 888 bmwg-virtual-net-03 (work in progress), June 2016. 890 [IFA003] "https://docbox.etsi.org/ISG/NFV/Open/Drafts/ 891 IFA003_Acceleration_-_vSwitch_Spec/". 893 [LTD] "LTD Test Specification 894 http://artifacts.opnfv.org/vswitchperf/docs/requirements/ 895 index.html". 897 [LTDoverV] 898 "LTD Test Spec Overview https://wiki.opnfv.org/wiki/ 899 vswitchperf_test_spec_review". 901 [RFC1242] Bradner, S., "Benchmarking Terminology for Network 902 Interconnection Devices", RFC 1242, DOI 10.17487/RFC1242, 903 July 1991, . 905 [RFC5481] Morton, A. and B. Claise, "Packet Delay Variation 906 Applicability Statement", RFC 5481, DOI 10.17487/RFC5481, 907 March 2009, . 909 [RFC6049] Morton, A. and E. Stephan, "Spatial Composition of 910 Metrics", RFC 6049, DOI 10.17487/RFC6049, January 2011, 911 . 913 [RFC6248] Morton, A., "RFC 4148 and the IP Performance Metrics 914 (IPPM) Registry of Metrics Are Obsolete", RFC 6248, 915 DOI 10.17487/RFC6248, April 2011, 916 . 918 [RFC6390] Clark, A. and B. Claise, "Guidelines for Considering New 919 Performance Metric Development", BCP 170, RFC 6390, 920 DOI 10.17487/RFC6390, October 2011, 921 . 923 [TestTopo] 924 "Test Topologies https://wiki.opnfv.org/vsperf/ 925 test_methodology". 927 Authors' Addresses 929 Maryam Tahhan 930 Intel 932 Email: maryam.tahhan@intel.com 934 Billy O'Mahony 935 Intel 937 Email: billy.o.mahony@intel.com 939 Al Morton 940 AT&T Labs 941 200 Laurel Avenue South 942 Middletown,, NJ 07748 943 USA 945 Phone: +1 732 420 1571 946 Fax: +1 732 368 1192 947 Email: acmorton@att.com 948 URI: http://home.comcast.net/~acmacm/