draft-ietf-bmwg-vswitch-opnfv-02.txt   draft-ietf-bmwg-vswitch-opnfv-03.txt 
Network Working Group M. Tahhan Network Working Group M. Tahhan
Internet-Draft B. O'Mahony Internet-Draft B. O'Mahony
Intended status: Informational Intel Intended status: Informational Intel
Expires: October 19, 2017 A. Morton Expires: November 2, 2017 A. Morton
AT&T Labs AT&T Labs
April 17, 2017 May 1, 2017
Benchmarking Virtual Switches in OPNFV Benchmarking Virtual Switches in OPNFV
draft-ietf-bmwg-vswitch-opnfv-02 draft-ietf-bmwg-vswitch-opnfv-03
Abstract Abstract
This memo describes the progress of the Open Platform for NFV (OPNFV) This memo describes the progress of the Open Platform for NFV (OPNFV)
project on virtual switch performance "VSWITCHPERF". This project project on virtual switch performance "VSPERF". This project intends
intends to build on the current and completed work of the to build on the current and completed work of the Benchmarking
Benchmarking Methodology Working Group in IETF, by referencing Methodology Working Group in IETF, by referencing existing
existing literature. The Benchmarking Methodology Working Group has literature. The Benchmarking Methodology Working Group has
traditionally conducted laboratory characterization of dedicated traditionally conducted laboratory characterization of dedicated
physical implementations of internetworking functions. Therefore, physical implementations of internetworking functions. Therefore,
this memo begins to describe the additional considerations when this memo begins to describe the additional considerations when
virtual switches are implemented in general-purpose hardware. The virtual switches are implemented in general-purpose hardware. The
expanded tests and benchmarks are also influenced by the OPNFV expanded tests and benchmarks are also influenced by the OPNFV
mission to support virtualization of the "telco" infrastructure. mission to support virtualization of the "telco" infrastructure.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
skipping to change at page 1, line 48 skipping to change at page 1, line 48
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on October 19, 2017. This Internet-Draft will expire on November 2, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Abbreviations . . . . . . . . . . . . . . . . . . . . . . 3
3. Benchmarking Considerations . . . . . . . . . . . . . . . . . 4 2. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1. Comparison with Physical Network Functions . . . . . . . 4 3. Benchmarking Considerations . . . . . . . . . . . . . . . . . 5
3.2. Continued Emphasis on Black-Box Benchmarks . . . . . . . 4 3.1. Comparison with Physical Network Functions . . . . . . . 5
3.3. New Configuration Parameters . . . . . . . . . . . . . . 4 3.2. Continued Emphasis on Black-Box Benchmarks . . . . . . . 5
3.4. Flow classification . . . . . . . . . . . . . . . . . . . 6 3.3. New Configuration Parameters . . . . . . . . . . . . . . 5
3.5. Benchmarks using Baselines with Resource Isolation . . . 7 3.4. Flow classification . . . . . . . . . . . . . . . . . . . 7
4. VSWITCHPERF Specification Summary . . . . . . . . . . . . . . 8 3.5. Benchmarks using Baselines with Resource Isolation . . . 8
5. 3x3 Matrix Coverage . . . . . . . . . . . . . . . . . . . . . 16 4. VSPERF Specification Summary . . . . . . . . . . . . . . . . 9
5.1. Speed of Activation . . . . . . . . . . . . . . . . . . . 17 5. 3x3 Matrix Coverage . . . . . . . . . . . . . . . . . . . . . 17
5.2. Accuracy of Activation section . . . . . . . . . . . . . 17 5.1. Speed of Activation . . . . . . . . . . . . . . . . . . . 18
5.3. Reliability of Activation . . . . . . . . . . . . . . . . 17 5.2. Accuracy of Activation section . . . . . . . . . . . . . 18
5.4. Scale of Activation . . . . . . . . . . . . . . . . . . . 17 5.3. Reliability of Activation . . . . . . . . . . . . . . . . 18
5.5. Speed of Operation . . . . . . . . . . . . . . . . . . . 17 5.4. Scale of Activation . . . . . . . . . . . . . . . . . . . 18
5.6. Accuracy of Operation . . . . . . . . . . . . . . . . . . 17 5.5. Speed of Operation . . . . . . . . . . . . . . . . . . . 18
5.7. Reliability of Operation . . . . . . . . . . . . . . . . 17 5.6. Accuracy of Operation . . . . . . . . . . . . . . . . . . 18
5.8. Scalability of Operation . . . . . . . . . . . . . . . . 18 5.7. Reliability of Operation . . . . . . . . . . . . . . . . 18
5.9. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 18 5.8. Scalability of Operation . . . . . . . . . . . . . . . . 19
6. Security Considerations . . . . . . . . . . . . . . . . . . . 18 5.9. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 19
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 6. Security Considerations . . . . . . . . . . . . . . . . . . . 19
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 19 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 19 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20
9.1. Normative References . . . . . . . . . . . . . . . . . . 19 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 20
9.2. Informative References . . . . . . . . . . . . . . . . . 20 9.1. Normative References . . . . . . . . . . . . . . . . . . 20
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 9.2. Informative References . . . . . . . . . . . . . . . . . 21
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22
1. Introduction 1. Introduction
Benchmarking Methodology Working Group (BMWG) has traditionally Benchmarking Methodology Working Group (BMWG) has traditionally
conducted laboratory characterization of dedicated physical conducted laboratory characterization of dedicated physical
implementations of internetworking functions. The Black-box implementations of internetworking functions. The Black-box
Benchmarks of Throughput, Latency, Forwarding Rates and others have Benchmarks of Throughput, Latency, Forwarding Rates and others have
served our industry for many years. Now, Network Function served our industry for many years. Now, Network Function
Virtualization (NFV) has the goal to transform how internetwork Virtualization (NFV) has the goal to transform how internetwork
functions are implemented, and therefore has garnered much attention. functions are implemented, and therefore has garnered much attention.
This memo summarizes the progress of the Open Platform for NFV This memo summarizes the progress of the Open Platform for NFV
(OPNFV) project on virtual switch performance characterization, (OPNFV) project on virtual switch performance characterization,
"VSWITCHPERF", through the Brahmaputra (second) release [BrahRel]. "VSPERF", through the Brahmaputra (second) release [BrahRel]. This
This project intends to build on the current and completed work of project intends to build on the current and completed work of the
the Benchmarking Methodology Working Group in IETF, by referencing Benchmarking Methodology Working Group in IETF, by referencing
existing literature. For example, currently the most often existing literature. For example, currently the most often
referenced RFC is [RFC2544] (which depends on [RFC1242]) and referenced RFC is [RFC2544] (which depends on [RFC1242]) and
foundation of the benchmarking work in OPNFV is common and strong. foundation of the benchmarking work in OPNFV is common and strong.
See [VSPERFhome] for more background, and the OPNFV website for See [VSPERFhome] for more background, and the OPNFV website for
general information [OPNFV]. general information [OPNFV].
The authors note that OPNFV distinguishes itself from other open The authors note that OPNFV distinguishes itself from other open
source compute and networking projects through its emphasis on source compute and networking projects through its emphasis on
existing "telco" services as opposed to cloud-computing. There are existing "telco" services as opposed to cloud-computing. There are
skipping to change at page 3, line 42 skipping to change at page 3, line 42
and transfer of isochronous media streams is one example. and transfer of isochronous media streams is one example.
Note also that the move to NFV Infrastructure has resulted in many Note also that the move to NFV Infrastructure has resulted in many
new benchmarking initiatives across the industry. The authors are new benchmarking initiatives across the industry. The authors are
currently doing their best to maintain alignment with many other currently doing their best to maintain alignment with many other
projects, and this Internet Draft is one part of the efforts. We projects, and this Internet Draft is one part of the efforts. We
acknowledge the early work in acknowledge the early work in
[I-D.huang-bmwg-virtual-network-performance], and useful discussion [I-D.huang-bmwg-virtual-network-performance], and useful discussion
with the authors. with the authors.
1.1. Abbreviations
For the purposes of this document, the following abbreviations apply:
ACK Acknowledge
ACPI Advanced Configuration and Power Interface
BIOS Basic Input Output System
BMWG Benchmarking Methodology Working Group
CPDP Control Plane Data Plane
CPU Central Processing Unit
DIMM Dual In-line Memory Module
DPDK Data Plane Development Kit
DUT Device Under Test
GRUB Grand Unified Bootloader
ID Identification
IMIX Internet Mix
IP Internet Protocol
IPPM IP Performance Metrics
LAN Local Area Network
LTD Level Test Design
NFV Network Functions Virtualisation
NIC Network Interface Card
NUMA Non Uniform Memory Access
OPNFV Open Platform for NFV
OS Operating System
PCI Peripheral Component Interconnect
PDV Packet Delay Variation
SR/IOV Single Root/Input Output Virtualization
SUT System Under Test
SW Software
TCP Transmission control Protocol
TSO TCP Segment Offload
UDP User Datagram Protocol
VM Virtual Machine
VNF Virtualised Network Function
VSPERF OPNFV vSwitch Performance Project
2. Scope 2. Scope
The primary purpose and scope of the memo is to inform the industry The primary purpose and scope of the memo is to inform the industry
of work-in-progress that builds on the body of extensive BMWG of work-in-progress that builds on the body of extensive BMWG
literature and experience, and describe the extensions needed for literature and experience, and describe the extensions needed for
benchmarking virtual switches. Inital feedback indicates that many benchmarking virtual switches. Initial feedback indicates that many
of these extensions may be applicable beyond the current scope (to of these extensions may be applicable beyond the current scope (to
hardware switches in the NFV Infrastructure and to virtual routers, hardware switches in the NFV Infrastructure and to virtual routers,
for example). Additionally, this memo serves as a vehicle to include for example). Additionally, this memo serves as a vehicle to include
more detail and commentary from BMWG and other Open Source more detail and commentary from BMWG and other Open Source
communities, under BMWG's chartered work to characterize the NFV communities, under BMWG's chartered work to characterize the NFV
Infrastructure (a virtual switch is an important aspect of that Infrastructure. A virtual switch (vswitch) is an important aspect of
infrastructure). the NFV infrastructure; it provides connectivity between and among
physical network functions and virtual network functions.
The benchmarking covered in this memo should be applicable to many The benchmarking covered in this memo should be applicable to many
types of vswitches, and remain vswitch-agnostic to great degree. types of vswitches, and remain vswitch-agnostic to great degree.
There has been no attempt to track and test all features of any There has been no attempt to track and test all features of any
specific vswitch implementation. specific vswitch implementation.
3. Benchmarking Considerations 3. Benchmarking Considerations
This section highlights some specific considerations (from This section highlights some specific considerations (from
[I-D.ietf-bmwg-virtual-net])related to Benchmarks for virtual [I-D.ietf-bmwg-virtual-net])related to Benchmarks for virtual
switches. The OPNFV project is sharing its present view on these switches. The OPNFV project is sharing its present view on these
areas, as they develop their specifications in the Level Test Design areas, as they develop their specifications in the Level Test Design
(LTD) document. (LTD) document.
3.1. Comparison with Physical Network Functions 3.1. Comparison with Physical Network Functions
To compare the performance of virtual designs and implementations To compare the performance of virtual designs and implementations
with their physical counterparts, identical benchmarks are needed. with their physical counterparts, identical benchmarks are needed.
BMWG has developed specifications for many network functions this BMWG has developed specifications for many physical network
memo re-uses existing benchmarks through references, and expands them functions. The OPNFV LTD document re-uses existing benchmarks and
during development of new methods. A key configuration aspect is the methods through references, and expands on them for development of
number of parallel cores required to achieve comparable performance new methods. A key configuration aspect for vswitches is the number
with a given physical device, or whether some limit of scale was of parallel CPU cores required to achieve comparable performance with
reached before the cores could achieve the comparable level. a given physical device, or whether some limit of scale will be
reached before the vswitch can achieve the comparable performance
level.
It's unlikely that the virtual switch will be the only application It's unlikely that the virtual switch will be the only application
running on the SUT, so CPU utilization, Cache utilization, and Memory running on the System Under Test (SUT), so CPU utilization, Cache
footprint should also be recorded for the virtual implementations of utilization, and Memory footprint should also be recorded for the
internetworking functions. virtual implementations of internetworking functions.
3.2. Continued Emphasis on Black-Box Benchmarks 3.2. Continued Emphasis on Black-Box Benchmarks
External observations remain essential as the basis for Benchmarks. External observations remain essential as the basis for Benchmarks.
Internal observations with fixed specification and interpretation Internal observations with fixed specification and interpretation
will be provided in parallel to assist the development of operations will be provided in parallel to assist the development of operations
procedures when the technology is deployed. procedures when the technology is deployed.
3.3. New Configuration Parameters 3.3. New Configuration Parameters
A key consideration when conducting any sort of benchmark is trying A key consideration when conducting any sort of benchmark is trying
to ensure the consistency and repeatability of test results. When to ensure the consistency and repeatability of test results. When
benchmarking the performance of a vSwitch there are many factors that benchmarking the performance of a vswitch there are many factors that
can affect the consistency of results, one key factor is matching the can affect the consistency of results, one key factor is matching the
various hardware and software details of the SUT. This section lists various hardware and software details of the SUT. This section lists
some of the many new parameters which this project believes are some of the many new parameters which this project believes are
critical to report in order to achieve repeatability. critical to report in order to achieve repeatability.
Hardware details including: Hardware details (platform, processor, memory, and network)
including:
o Platform details o BIOS version, release date and any configurations that were
modified
o Processor details o Power management at all levels (ACPI sleep states, processor
package, OS...)
o Memory information (type and size) o CPU microcode level
o Number of enabled cores o Number of enabled cores
o Number of cores used for the test o Number of cores used for the test
o Number of physical NICs, as well as their details (manufacturer, o Memory information (type and size)
versions, type and the PCI slot they are plugged into)
o NIC interrupt configuration
o BIOS version, release date and any configurations that were
modified
o CPU microcode level
o Memory DIMM configurations (quad rank performance may not be the o Memory DIMM configurations (quad rank performance may not be the
same as dual rank) in size, freq and slot locations same as dual rank) in size, freq and slot locations
o PCI configuration parameters (payload size, early ack option...) o Number of physical NICs, as well as their details (manufacturer,
versions, type and the PCI slot they are plugged into)
o Power management at all levels (ACPI sleep states, processor o NIC interrupt configuration (and any special features in use)
package, OS...)
o PCI configuration parameters (payload size, early ACK option,
etc.)
Software details including: Software details including:
o OS parameters and behavior (text vs graphical no one typing at the o OS parameters and behavior (text vs graphical no one typing at the
console on one system) console on one system)
o OS version (for host and VNF) o OS version (for host and VNF)
o Kernel version (for host and VNF) o Kernel version (for host and VNF)
o GRUB boot parameters (for host and VNF) o GRUB boot parameters (for host and VNF)
o Hypervisor details (Type and version) o Hypervisor details (Type and version)
o Selected vSwitch, version number or commit id used o Selected vswitch, version number or commit id used
o vSwitch launch command line if it has been parameterised o vswitch launch command line if it has been parameterised
o Memory allocation to the vSwitch o Memory allocation to the vswitch
o which NUMA node it is using, and how many memory channels
o which NUMA node it is using, and how many memory channels
o DPDK or any other SW dependency version number or commit id used o DPDK or any other SW dependency version number or commit id used
o Memory allocation to a VM - if it's from Hugpages/elsewhere o Memory allocation to a VM - if it's from Hugepages/elsewhere
o VM storage type: snapshot/independent persistent/independent non- o VM storage type: snapshot/independent persistent/independent non-
persistent persistent
o Number of VMs o Number of VMs
o Number of Virtual NICs (vNICs), versions, type and driver o Number of Virtual NICs (vNICs), versions, type and driver
o Number of virtual CPUs and their core affinity on the host o Number of virtual CPUs and their core affinity on the host
o Number vNIC interrupt configuration o Number vNIC interrupt configuration
o Thread affinitization for the applications (including the vSwitch o Thread affinitization for the applications (including the vswitch
itself) on the host itself) on the host
o Details of Resource isolation, such as CPUs designated for Host/ o Details of Resource isolation, such as CPUs designated for Host/
Kernel (isolcpu) and CPUs designated for specific processes Kernel (isolcpu) and CPUs designated for specific processes
(taskset). - Test duration. - Number of flows. (taskset). - Test duration. - Number of flows.
Test Traffic Information: Test Traffic Information:
o Traffic type - UDP, TCP, IMIX / Other o Traffic type - UDP, TCP, others.
o Packet Sizes o Packet Sizes - fixed or IMIX [RFC6985]
o Deployment Scenario o Deployment Scenario
3.4. Flow classification 3.4. Flow classification
Virtual switches group packets into flows by processing and matching Virtual switches group packets into flows by processing and matching
particular packet or frame header information, or by matching packets particular packet or frame header information, or by matching packets
based on the input ports. Thus a flow can be thought of a sequence based on the input ports. Thus a flow can be thought of a sequence
of packets that have the same set of header field values (5-tuple) or of packets that have the same set of header field values, or have
have arrived on the same port. Performance results can vary based on arrived on the same physical or logical port. Performance results
the parameters the vSwitch uses to match for a flow. The recommended can vary based on the parameters the vswitch uses to match for a
flow classification parameters for any vSwitch performance tests are: flow. The recommended flow classification parameters for any vswitch
the input port, the source IP address, the destination IP address and performance tests are: the input port (physical or logical), the
the Ethernet protocol type field. It is essential to increase the source IP address, the destination IP address and the Ethernet
flow timeout time on a vSwitch before conducting any performance protocol type field. It is essential to increase the flow timeout
tests that do not measure the flow setup time. Normally the first time on a vswitch before conducting any performance tests that do not
packet of a particular stream will install the flow in the virtual intend to measure the flow setup time. Normally the first packet of
switch which adds an additional latency, subsequent packets of the a particular stream will install the flow in the virtual switch which
same flow are not subject to this latency if the flow is already adds an additional latency, subsequent packets of the same flow are
installed on the vSwitch. not subject to this latency if the flow is already installed on the
vswitch.
3.5. Benchmarks using Baselines with Resource Isolation 3.5. Benchmarks using Baselines with Resource Isolation
This outline describes measurement of baseline with isolated This outline describes measurement of baseline with isolated
resources at a high level, which is the intended approach at this resources at a high level, which is the intended approach at this
time. time.
1. Baselines: 1. Baselines:
* Optional: Benchmark platform forwarding capability without a * Optional: Benchmark platform forwarding capability without a
skipping to change at page 7, line 42 skipping to change at page 8, line 40
^ : ^ :
| | | |
: v : v
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | traffic generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
* Benchmark VNF forwarding capability with direct connectivity * Benchmark VNF forwarding capability with direct connectivity
(vSwitch bypass, e.g., SR/IOV) for at least 72 hours (serves (vswitch bypass, e.g., SR/IOV) for at least 72 hours (serves
as a means of VNF validation and a means to obtain the base as a means of VNF validation and a means to obtain the base
performance for the VNF in terms of its maximum forwarding performance for the VNF in terms of its maximum forwarding
rate and latency). The metrics gathered from this test will rate and latency). The metrics gathered from this test will
serve as a key comparison point for vSwitch bypass serve as a key comparison point for vswitch bypass
technologies performance and vSwitch performance. technologies performance and vswitch performance.
Benchmark VNF forwarding capability Benchmark VNF forwarding capability
__ __
+--------------------------------------------------+ | +--------------------------------------------------+ |
| +------------------------------------------+ | | | +------------------------------------------+ | |
| | | | | | | | | |
| | VNF | | | | | VNF | | |
| | | | | | | | | |
| +------------------------------------------+ | | | +------------------------------------------+ | |
skipping to change at page 8, line 28 skipping to change at page 9, line 28
^ : ^ :
| | | |
: v : v
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | traffic generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
* Benchmarking with isolated resources alone, with other * Benchmarking with isolated resources alone, with other
resources (both HW&SW) disabled Example, vSw and VM are SUT resources (both HW&SW) disabled Example, vswitch and VM are
SUT
* Benchmarking with isolated resources alone, leaving some * Benchmarking with isolated resources alone, leaving some
resources unused resources unused
* Benchmark with isolated resources and all resources occupied * Benchmark with isolated resources and all resources occupied
2. Next Steps 2. Next Steps
* Limited sharing * Limited sharing
* Production scenarios * Production scenarios
* Stressful scenarios * Stressful scenarios
4. VSWITCHPERF Specification Summary 4. VSPERF Specification Summary
The overall specification in preparation is referred to as a Level The overall specification in preparation is referred to as a Level
Test Design (LTD) document, which will contain a suite of performance Test Design (LTD) document, which will contain a suite of performance
tests. The base performance tests in the LTD are based on the pre- tests. The base performance tests in the LTD are based on the pre-
existing specifications developed by BMWG to test the performance of existing specifications developed by BMWG to test the performance of
physical switches. These specifications include: physical switches. These specifications include:
o [RFC2544] Benchmarking Methodology for Network Interconnect o [RFC2544] Benchmarking Methodology for Network Interconnect
Devices Devices
skipping to change at page 10, line 12 skipping to change at page 11, line 16
per second or fps) and bit rate (in Mbps) for a constant load (as per second or fps) and bit rate (in Mbps) for a constant load (as
defined by [RFC1242]) without traffic loss. defined by [RFC1242]) without traffic loss.
o Packet and Frame Delay Distribution Tests to measure average, min o Packet and Frame Delay Distribution Tests to measure average, min
and max packet and frame delay for constant loads. and max packet and frame delay for constant loads.
o Packet Delay Tests to understand latency distribution for o Packet Delay Tests to understand latency distribution for
different packet sizes and over an extended test run to uncover different packet sizes and over an extended test run to uncover
outliers. outliers.
o Scalability Tests to understand how the virtual switch performs as o Scalability Tests to understand how the virtual switch performs
the number of flows, active ports, complexity of the forwarding with increasing number of flows, number of active ports,
logic's configuration... it has to deal with increases. configuration complexity of the forwarding logic, etc.
o Stream Performance Tests (TCP, UDP) to measure bulk data transfer o Stream Performance Tests (TCP, UDP) to measure bulk data transfer
performance, i.e. how fast systems can send and receive data performance, i.e. how fast systems can send and receive data
through the switch. through the switch.
o Control Path and Datapath Coupling Tests, to understand how o Control Path and Datapath Coupling Tests, to understand how
closely coupled the datapath and the control path are as well as closely coupled the datapath and the control path are as well as
the effect of this coupling on the performance of the DUT the effect of this coupling on the performance of the DUT
(example: delay of the initial packet of a flow). (example: delay of the initial packet of a flow).
skipping to change at page 11, line 11 skipping to change at page 12, line 17
o Noisy Neighbour Tests, to understand the effects of resource o Noisy Neighbour Tests, to understand the effects of resource
sharing on the performance of a virtual switch. sharing on the performance of a virtual switch.
o Tests derived from examination of ETSI NFV Draft GS IFA003 o Tests derived from examination of ETSI NFV Draft GS IFA003
requirements [IFA003] on characterization of acceleration requirements [IFA003] on characterization of acceleration
technologies applied to vswitches. technologies applied to vswitches.
The flexibility of deployment of a virtual switch within a network The flexibility of deployment of a virtual switch within a network
means that the BMWG IETF existing literature needs to be used to means that the BMWG IETF existing literature needs to be used to
characterize the performance of a switch in various deployment characterize the performance of a vswitch in various deployment
scenarios. The deployment scenarios under consideration include: scenarios. The deployment scenarios under consideration include:
Physical port to virtual switch to physical port Physical port to virtual switch to physical port
__ __
+--------------------------------------------------+ | +--------------------------------------------------+ |
| +--------------------+ | | | +--------------------+ | |
| | | | | | | | | |
| | v | | Host | | v | | Host
| +--------------+ +--------------+ | | | +--------------+ +--------------+ | |
| | phy port | vSwitch | phy port | | | | | phy port | vswitch | phy port | | |
+---+--------------+------------+--------------+---+ __| +---+--------------+------------+--------------+---+ __|
^ : ^ :
| | | |
: v : v
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | traffic generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
skipping to change at page 12, line 30 skipping to change at page 13, line 30
^ : ^ :
| | | |
: v __ : v __
+---+---------------+----------+---------------+---+ | +---+---------------+----------+---------------+---+ |
| | logical port 0| | logical port 1| | | | | logical port 0| | logical port 1| | |
| +---------------+ +---------------+ | | | +---------------+ +---------------+ | |
| ^ : | | | ^ : | |
| | | | | Host | | | | | Host
| : v | | | : v | |
| +--------------+ +--------------+ | | | +--------------+ +--------------+ | |
| | phy port | vSwitch | phy port | | | | | phy port | vswitch | phy port | | |
+---+--------------+------------+--------------+---+ __| +---+--------------+------------+--------------+---+ __|
^ : ^ :
| | | |
: v : v
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | traffic generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
skipping to change at page 13, line 30 skipping to change at page 14, line 30
^ : ^ : ^ : ^ :
| | | | | | | |
: v : v _ : v : v _
+---+---------------+---------+---------------+--+ | +---+---------------+---------+---------------+--+ |
| | 0 1 | | 3 4 | | | | | 0 1 | | 3 4 | | |
| | logical ports | | logical ports | | | | | logical ports | | logical ports | | |
| +---------------+ +---------------+ | | | +---------------+ +---------------+ | |
| ^ | ^ | | | Host | ^ | ^ | | | Host
| | |-----------------| v | | | | |-----------------| v | |
| +--------------+ +--------------+ | | | +--------------+ +--------------+ | |
| | phy ports | vSwitch | phy ports | | | | | phy ports | vswitch | phy ports | | |
+---+--------------+----------+--------------+---+_| +---+--------------+----------+--------------+---+_|
^ : ^ :
| | | |
: v : v
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | traffic generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
skipping to change at page 14, line 29 skipping to change at page 15, line 29
^ ^
| |
: __ : __
+---+---------------+------------------------------+ | +---+---------------+------------------------------+ |
| | logical port 0| | | | | logical port 0| | |
| +---------------+ | | | +---------------+ | |
| ^ | | | ^ | |
| | | | Host | | | | Host
| : | | | : | |
| +--------------+ | | | +--------------+ | |
| | phy port | vSwitch | | | | phy port | vswitch | |
+---+--------------+------------ -------------- ---+ __| +---+--------------+------------ -------------- ---+ __|
^ ^
| |
: :
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | traffic generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
skipping to change at page 15, line 29 skipping to change at page 16, line 29
: :
| |
v __ v __
+------------------------------+---------------+---+ | +------------------------------+---------------+---+ |
| | logical port | | | | | logical port | | |
| +---------------+ | | | +---------------+ | |
| : | | | : | |
| | | | Host | | | | Host
| v | | | v | |
| +--------------+ | | | +--------------+ | |
| vSwitch | phy port | | | | vswitch | phy port | | |
+-------------------------------+--------------+---+ __| +-------------------------------+--------------+---+ __|
: :
| |
v v
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | traffic generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
skipping to change at page 16, line 29 skipping to change at page 17, line 29
: ^ : ^
| | | |
v : _ v : _
+---+---------------+---------+---------------+--+ | +---+---------------+---------+---------------+--+ |
| | 1 | | 1 | | | | | 1 | | 1 | | |
| | logical ports | | logical ports | | | | | logical ports | | logical ports | | |
| +---------------+ +---------------+ | | | +---------------+ +---------------+ | |
| | ^ | | Host | | ^ | | Host
| L-----------------+ | | | L-----------------+ | |
| | | | | |
| vSwitch | | | vswitch | |
+------------------------------------------------+_| +------------------------------------------------+_|
A set of Deployment Scenario figures is available on the VSPERF Test A set of Deployment Scenario figures is available on the VSPERF Test
Methodology Wiki page [TestTopo]. Methodology Wiki page [TestTopo].
5. 3x3 Matrix Coverage 5. 3x3 Matrix Coverage
This section organizes the many existing test specifications into the This section organizes the many existing test specifications into the
"3x3" matrix (introduced in [I-D.ietf-bmwg-virtual-net]). Because "3x3" matrix (introduced in [I-D.ietf-bmwg-virtual-net]). Because
the LTD specification ID names are quite long, this section is the LTD specification ID names are quite long, this section is
skipping to change at page 20, line 10 skipping to change at page 21, line 10
[RFC4737] Morton, A., Ciavattone, L., Ramachandran, G., Shalunov, [RFC4737] Morton, A., Ciavattone, L., Ramachandran, G., Shalunov,
S., and J. Perser, "Packet Reordering Metrics", RFC 4737, S., and J. Perser, "Packet Reordering Metrics", RFC 4737,
DOI 10.17487/RFC4737, November 2006, DOI 10.17487/RFC4737, November 2006,
<http://www.rfc-editor.org/info/rfc4737>. <http://www.rfc-editor.org/info/rfc4737>.
[RFC6201] Asati, R., Pignataro, C., Calabria, F., and C. Olvera, [RFC6201] Asati, R., Pignataro, C., Calabria, F., and C. Olvera,
"Device Reset Characterization", RFC 6201, "Device Reset Characterization", RFC 6201,
DOI 10.17487/RFC6201, March 2011, DOI 10.17487/RFC6201, March 2011,
<http://www.rfc-editor.org/info/rfc6201>. <http://www.rfc-editor.org/info/rfc6201>.
[RFC6985] Morton, A., "IMIX Genome: Specification of Variable Packet
Sizes for Additional Testing", RFC 6985,
DOI 10.17487/RFC6985, July 2013,
<http://www.rfc-editor.org/info/rfc6985>.
9.2. Informative References 9.2. Informative References
[BrahRel] "Brahmaputra, Second OPNFV Release [BrahRel] "Brahmaputra, Second OPNFV Release
https://wiki.opnfv.org/display/SWREL/Brahmaputra". https://wiki.opnfv.org/display/SWREL/Brahmaputra".
[I-D.huang-bmwg-virtual-network-performance] [I-D.huang-bmwg-virtual-network-performance]
Huang, L., Rong, G., Mandeville, B., and B. Hickman, Huang, L., Rong, G., Mandeville, B., and B. Hickman,
"Benchmarking Methodology for Virtualization Network "Benchmarking Methodology for Virtualization Network
Performance", draft-huang-bmwg-virtual-network- Performance", draft-huang-bmwg-virtual-network-
performance-02 (work in progress), March 2017. performance-02 (work in progress), March 2017.
 End of changes. 42 change blocks. 
100 lines changed or deleted 146 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/