draft-ietf-bmwg-vswitch-opnfv-04.txt   rfc8204.txt 
Network Working Group M. Tahhan Internet Engineering Task Force (IETF) M. Tahhan
Internet-Draft B. O'Mahony Request for Comments: 8204 B. O'Mahony
Intended status: Informational Intel Category: Informational Intel
Expires: December 10, 2017 A. Morton ISSN: 2070-1721 A. Morton
AT&T Labs AT&T Labs
June 8, 2017 September 2017
Benchmarking Virtual Switches in OPNFV Benchmarking Virtual Switches in the Open Platform for NFV (OPNFV)
draft-ietf-bmwg-vswitch-opnfv-04
Abstract Abstract
This memo describes the contributions of the Open Platform for NFV This memo describes the contributions of the Open Platform for NFV
(OPNFV) project on virtual switch performance "VSPERF", particularly (OPNFV) project on Virtual Switch Performance (VSPERF), particularly
in the areas of test set-ups and configuration parameters for the in the areas of test setups and configuration parameters for the
system under test. This project has extended the current and system under test. This project has extended the current and
completed work of the Benchmarking Methodology Working Group in IETF, completed work of the Benchmarking Methodology Working Group in the
and references existing literature. The Benchmarking Methodology IETF and references existing literature. The Benchmarking
Working Group has traditionally conducted laboratory characterization Methodology Working Group has traditionally conducted laboratory
of dedicated physical implementations of internetworking functions. characterization of dedicated physical implementations of
Therefore, this memo describes the additional considerations when internetworking functions. Therefore, this memo describes the
virtual switches are implemented in general-purpose hardware. The additional considerations when virtual switches are implemented on
expanded tests and benchmarks are also influenced by the OPNFV general-purpose hardware. The expanded tests and benchmarks are also
mission to support virtualization of the "telco" infrastructure. influenced by the OPNFV mission to support virtualization of the
"telco" infrastructure.
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This document is not an Internet Standards Track specification; it is
provisions of BCP 78 and BCP 79. published for informational purposes.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Not all documents
approved by the IESG are a candidate for any level of Internet
Standard; see Section 2 of RFC 7841.
This Internet-Draft will expire on December 10, 2017. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/rfc8204.
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 (https://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
1.1. Abbreviations . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 4
2. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2. Abbreviations . . . . . . . . . . . . . . . . . . . . . . 4
2. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Benchmarking Considerations . . . . . . . . . . . . . . . . . 5 3. Benchmarking Considerations . . . . . . . . . . . . . . . . . 5
3.1. Comparison with Physical Network Functions . . . . . . . 5 3.1. Comparison with Physical Network Functions . . . . . . . 5
3.2. Continued Emphasis on Black-Box Benchmarks . . . . . . . 5 3.2. Continued Emphasis on Black-Box Benchmarks . . . . . . . 6
3.3. New Configuration Parameters . . . . . . . . . . . . . . 6 3.3. New Configuration Parameters . . . . . . . . . . . . . . 6
3.4. Flow classification . . . . . . . . . . . . . . . . . . . 8 3.4. Flow Classification . . . . . . . . . . . . . . . . . . . 8
3.5. Benchmarks using Baselines with Resource Isolation . . . 8 3.5. Benchmarks Using Baselines with Resource Isolation . . . 9
4. VSPERF Specification Summary . . . . . . . . . . . . . . . . 10 4. VSPERF Specification Summary . . . . . . . . . . . . . . . . 11
5. 3x3 Matrix Coverage . . . . . . . . . . . . . . . . . . . . . 18 5. 3x3 Matrix Coverage . . . . . . . . . . . . . . . . . . . . . 18
5.1. Speed of Activation . . . . . . . . . . . . . . . . . . . 19 5.1. Speed of Activation . . . . . . . . . . . . . . . . . . . 19
5.2. Accuracy of Activation section . . . . . . . . . . . . . 19 5.2. Accuracy of Activation . . . . . . . . . . . . . . . . . 19
5.3. Reliability of Activation . . . . . . . . . . . . . . . . 19 5.3. Reliability of Activation . . . . . . . . . . . . . . . . 19
5.4. Scale of Activation . . . . . . . . . . . . . . . . . . . 19 5.4. Scale of Activation . . . . . . . . . . . . . . . . . . . 19
5.5. Speed of Operation . . . . . . . . . . . . . . . . . . . 19 5.5. Speed of Operation . . . . . . . . . . . . . . . . . . . 19
5.6. Accuracy of Operation . . . . . . . . . . . . . . . . . . 19 5.6. Accuracy of Operation . . . . . . . . . . . . . . . . . . 19
5.7. Reliability of Operation . . . . . . . . . . . . . . . . 20 5.7. Reliability of Operation . . . . . . . . . . . . . . . . 20
5.8. Scalability of Operation . . . . . . . . . . . . . . . . 20 5.8. Scalability of Operation . . . . . . . . . . . . . . . . 20
5.9. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.9. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 20
6. Security Considerations . . . . . . . . . . . . . . . . . . . 20 6. Security Considerations . . . . . . . . . . . . . . . . . . . 21
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 21
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 21 7.1. Normative References . . . . . . . . . . . . . . . . . . 21
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 21 7.2. Informative References . . . . . . . . . . . . . . . . . 22
9.1. Normative References . . . . . . . . . . . . . . . . . . 21 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 23
9.2. Informative References . . . . . . . . . . . . . . . . . 22 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 23
1. Introduction 1. Introduction
Benchmarking Methodology Working Group (BMWG) has traditionally The 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 of transforming how internetwork
functions are implemented, and therefore has garnered much attention. functions are implemented and therefore has garnered much attention.
A virtual switch (vswitch) is an important aspect of the NFV A virtual switch (vSwitch) is an important aspect of the NFV
infrastructure; it provides connectivity between and among physical infrastructure; it provides connectivity between and among physical
network functions and virtual network functions. As a result, there network functions and virtual network functions. As a result, there
are many vswitch benchmarking efforts, but few specifications to are many vSwitch benchmarking efforts but few specifications to guide
guide the many new test design choices. This is a complex problem the many new test design choices. This is a complex problem and an
and an industry-wide work-in-progress. In future, several of BMWG's industry-wide work in progress. In the future, several of BMWG's
fundamental specifications will likely be updated as more testing fundamental specifications will likely be updated as more testing
experience helps to form consensus around new methodologies, and BMWG experience helps to form consensus around new methodologies, and BMWG
should continue to collaborate with all organizations who share the should continue to collaborate with all organizations that share the
same goal. same goal.
This memo describes the contributions of the Open Platform for NFV This memo describes the contributions of the Open Platform for NFV
(OPNFV) project on virtual switch performance characterization, (OPNFV) project on Virtual Switch Performance (VSPERF)
"VSPERF", through the Danube 3.0 (fourth) release [DanubeRel] to the characterization through the Danube 3.0 (fourth) release [DanubeRel]
chartered work of the BMWG (with stable references to their test to the chartered work of the BMWG (with stable references to their
descriptions). This project has extended the current and completed test descriptions). This project has extended the current and
work of the BMWG in IETF, and references existing literature. For completed work of the BMWG IETF and references existing literature.
example, the most often referenced RFC is [RFC2544] (which depends on For example, the most often referenced RFC is [RFC2544] (which
[RFC1242]), so the foundation of the benchmarking work in OPNFV is depends on [RFC1242]), so the foundation of the benchmarking work in
common and strong. The recommended extensions are specifically in OPNFV is common and strong. The recommended extensions are
the areas of test set-ups and configuration parameters for the system specifically in the areas of test setups and configuration parameters
under test. for the system under test.
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
many ways in which telco requirements have different emphasis on many ways in which telco requirements have different emphasis on
performance dimensions when compared to cloud computing: support for performance dimensions when compared to cloud computing: support for
and transfer of isochronous media streams is one example. and transfer of isochronous media streams is one example.
1.1. Abbreviations 1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
1.2. Abbreviations
For the purposes of this document, the following abbreviations apply: For the purposes of this document, the following abbreviations apply:
ACK Acknowledge ACK Acknowledge
ACPI Advanced Configuration and Power Interface ACPI Advanced Configuration and Power Interface
BIOS Basic Input Output System BIOS Basic Input Output System
BMWG Benchmarking Methodology Working Group BMWG Benchmarking Methodology Working Group
CPDP Control Plane Data Plane CPDP Control Plane Data Plane
CPU Central Processing Unit CPU Central Processing Unit
DIMM Dual In-line Memory Module DIMM Dual In-line Memory Module
DPDK Data Plane Development Kit DPDK Data Plane Development Kit
DUT Device Under Test DUT Device Under Test
GRUB Grand Unified Bootloader GRUB Grand Unified Bootloader
ID Identification ID Identification
IMIX Internet Mix IMIX Internet Mix
IP Internet Protocol IP Internet Protocol
IPPM IP Performance Metrics IPPM IP Performance Metrics
LAN Local Area Network LAN Local Area Network
LTD Level Test Design LTD Level Test Design
NFV Network Functions Virtualisation NFV Network Functions Virtualization
NIC Network Interface Card NIC Network Interface Card
NUMA Non Uniform Memory Access NUMA Non-uniform Memory Access
OPNFV Open Platform for NFV OPNFV Open Platform for NFV
OS Operating System OS Operating System
PCI Peripheral Component Interconnect PCI Peripheral Component Interconnect
PDV Packet Delay Variation PDV Packet Delay Variation
SR/IOV Single Root/Input Output Virtualization SR/IOV Single Root / Input Output Virtualization
SUT System Under Test SUT System Under Test
SW Software TCP Transmission Control Protocol
TCP Transmission control Protocol TSO TCP Segment Offload
TSO TCP Segment Offload UDP User Datagram Protocol
UDP User Datagram Protocol VM Virtual Machine
VM Virtual Machine VNF Virtualised Network Function
VNF Virtualised Network Function VSPERF OPNFV vSwitch Performance Project
VSPERF OPNFV vSwitch Performance Project
2. Scope 2. Scope
The primary purpose and scope of the memo is to describe key aspects The primary purpose and scope of the memo is to describe key aspects
of vswitch benchmarking, particularly in the areas of test set-ups of vSwitch benchmarking, particularly in the areas of test setups and
and configuration parameters for the system under test, and extend configuration parameters for the system under test, and extend the
the body of extensive BMWG literature and experience. Initial body of extensive BMWG literature and experience. Initial feedback
feedback indicates that many of these extensions may be applicable indicates that many of these extensions may be applicable beyond this
beyond this memo's current scope (to hardware switches in the NFV memo's current scope (to hardware switches in the NFV infrastructure
Infrastructure and to virtual routers, for example). Additionally, and to virtual routers, for example). Additionally, this memo serves
this memo serves as a vehicle to include more detail and relevant as a vehicle to include more detail and relevant commentary from BMWG
commentary from BMWG and other Open Source communities, under BMWG's and other open source communities under BMWG's chartered work to
chartered work to characterize the NFV Infrastructure. characterize the NFV infrastructure.
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 a 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 [RFC8172])
[I-D.ietf-bmwg-virtual-net])related to Benchmarks for virtual related to benchmarks for virtual switches. The OPNFV project is
switches. The OPNFV project is sharing its present view on these sharing its present view on these areas as they develop their
areas, as they develop their specifications in the Level Test Design specifications in the Level Test Design (LTD) document as defined by
(LTD) document. [IEEE829].
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 physical network BMWG has developed specifications for many physical network
functions. The BMWG has recommended to re-use existing benchmarks functions. The BMWG has recommended reusing existing benchmarks and
and methods in [I-D.ietf-bmwg-virtual-net], and the OPNFV LTD expands methods in [RFC8172], and the OPNFV LTD expands on them as described
on them as described here. A key configuration aspect for vswitches here. A key configuration aspect for vSwitches is the number of
is the number of parallel CPU cores required to achieve comparable parallel CPU cores required to achieve comparable performance with a
performance with a given physical device, or whether some limit of given physical device or whether some limit of scale will be reached
scale will be reached before the vswitch can achieve the comparable before the vSwitch can achieve the comparable performance level.
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 System Under Test (SUT), so CPU utilization, Cache running on the SUT, so CPU utilization, cache utilization, and memory
utilization, and Memory footprint should also be recorded for the footprint should also be recorded for the virtual implementations of
virtual implementations of internetworking functions. However, internetworking functions. However, internally measured metrics such
internally-measured metrics such as these are not benchmarks; they as these are not benchmarks; they may be useful for the audience
may be useful for the audience (operations) to know, and may also be (e.g., operations) to know and may also be useful if there is a
useful if there is a problem encountered during testing. problem encountered during testing.
Benchmark Comparability between virtual and physical/hardware Benchmark comparability between virtual and physical/hardware
implementations of equivalent functions will likely place more implementations of equivalent functions will likely place more
detailed and exact requirements on the *testing systems* (in terms of detailed and exact requirements on the "testing systems" (in terms of
stream generation, algorithms to search for max values, and their stream generation, algorithms to search for maximum values, and their
configurations of course). This is another area for standards configurations). This is another area for standards development to
development to appreciate. However, the is a topic for a future appreciate; however, this is a topic for a future document.
draft.
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 a 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
can affect the consistency of results, one key factor is matching the that can affect the consistency of results; one key factor is
various hardware and software details of the SUT. This section lists matching the various hardware and software details of the SUT. This
some of the many new parameters which this project believes are section lists some of the many new parameters that this project
critical to report in order to achieve repeatability. believes are critical to report in order to achieve repeatability.
It has been the goal of the project to produce repeatable results, It has been the goal of the project to produce repeatable results,
and a large set of the parameters believed to be critical is provided and a large set of the parameters believed to be critical is provided
so that the benchmarking community can better appreciate the increase so that the benchmarking community can better appreciate the increase
in configuration complexity inherent in this work. The parameter set in configuration complexity inherent in this work. The parameter set
below is assumed sufficient for the infrastructure in use by the below is assumed sufficient for the infrastructure in use by the
VSPERF project to obtain repeatable results from test-to-test. VSPERF project to obtain repeatable results from test to test.
Hardware details (platform, processor, memory, and network) Hardware details (platform, processor, memory, and network)
including: including:
o BIOS version, release date and any configurations that were o BIOS version, release date, and any configurations that were
modified modified
o Power management at all levels (ACPI sleep states, processor o Power management at all levels (ACPI sleep states, processor
package, OS...) package, OS, etc.)
o CPU microcode level 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 Memory information (type and size) o Memory information (type and size)
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, frequency, and slot locations
o Number of physical NICs, as well as their details (manufacturer, o Number of physical NICs and their details (manufacturer, versions,
versions, type and the PCI slot they are plugged into) type, and the PCI slot they are plugged into)
o NIC interrupt configuration (and any special features in use) o NIC interrupt configuration (and any special features in use)
o PCI configuration parameters (payload size, early ACK option, o PCI configuration parameters (payload size, early ACK option,
etc.) etc.)
Software details including: Software details including:
o OS parameters and behavior (text vs graphical no one typing at the o OS RunLevel
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 parameterized
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 software dependency version number or commit ID
used
o Memory allocation to a VM - if it's from Hugepages/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
persistent non-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 of vNICs and their interrupt configurations
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 Traffic Information: Test traffic information:
o Traffic type - UDP, TCP, others. o Test duration
o Frame Sizes - fixed or IMIX [RFC6985](with [IEEE802.1ac], frames o Number of flows
may be longer than 1500 bytes, and up to 2000 bytes)
o Traffic type - UDP, TCP, and others
o Frame Sizes - fixed or IMIX [RFC6985] (note that with
[IEEE802.1ac], frames may be longer than 1500 bytes and up to 2000
bytes)
o Deployment Scenario - defines the communications path in the SUT o Deployment Scenario - defines the communications path in the SUT
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 as a
of packets that have the same set of header field values, or have sequence of packets that have the same set of header field values or
arrived on the same physical or logical port. Performance results have arrived on the same physical or logical port. Performance
can vary based on the parameters the vswitch uses to match for a results can vary based on the parameters the vSwitch uses to match
flow. The recommended flow classification parameters for any vswitch for a flow. The recommended flow classification parameters for any
performance tests are: the input port (physical or logical), the vSwitch performance tests are: the input port (physical or logical),
source MAC address, the destination MAC address, the source IP the source MAC address, the destination MAC address, the source IP
address, the destination IP address and the Ethernet protocol type address, the destination IP address, and the Ethernet protocol type
field (although classification may take place on other fields, such field (although classification may take place on other fields, such
as source and destination transport port numbers). It is essential as source and destination transport port numbers). It is essential
to increase the flow timeout time on a vswitch before conducting any to increase the flow timeout time on a vSwitch before conducting any
performance tests that do not intend to measure the flow setup time, performance tests that do not intend to measure the flow setup time
see Section 3 of [RFC2889]. Normally the first packet of a (see Section 3 of [RFC2889]). Normally, the first packet of a
particular stream will install the flow in the virtual switch which particular stream will install the flow in the virtual switch, which
adds an additional latency, subsequent packets of the same flow are introduces additional latency; subsequent packets of the same flow
not subject to this latency if the flow is already installed on the are not subject to this latency if the flow is already installed on
vswitch. 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 the measurement of baselines 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
vswitch or VNF for at least 72 hours (serves as a means of vSwitch or VNF for at least 72 hours (serves as a means of
platform validation and a means to obtain the base performance platform validation and a means to obtain the base performance
for the platform in terms of its maximum forwarding rate and for the platform in terms of its maximum forwarding rate and
latency). latency).
Figure 1 Benchmark platform forwarding capability
__ __
+--------------------------------------------------+ | +--------------------------------------------------+ |
| +------------------------------------------+ | | | +------------------------------------------+ | |
| | | | | | | | | |
| | Simple Forwarding App | | Host | | Simple Forwarding App | | Host
| | | | | | | | | |
| +------------------------------------------+ | | | +------------------------------------------+ | |
| | NIC | | | | | NIC | | |
+---+------------------------------------------+---+ __| +---+------------------------------------------+---+ __|
^ :
| |
: v
+--------------------------------------------------+
| |
| Traffic Generator |
| |
+--------------------------------------------------+
Figure 1: Benchmark Platform Forwarding Capability
* Benchmark VNF forwarding capability with direct connectivity
(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
performance for the VNF in terms of its maximum forwarding
rate and latency). The metrics gathered from this test will
serve as a key comparison point for vSwitch bypass
technologies performance and vSwitch performance.
__
+--------------------------------------------------+ __ |
| +------------------------------------------+ | | |
| | | | Host/ |
| | VNF | | Guest |
| | | | | |
| +------------------------------------------+ | __| |
| | Passthrough/SR-IOV | | Host
| +------------------------------------------+ | |
| | NIC | | |
+---+------------------------------------------+---+ __|
^ : ^ :
| | | |
: v : v
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | Traffic Generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
* Benchmark VNF forwarding capability with direct connectivity Figure 2: Benchmark VNF Forwarding Capability
(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
performance for the VNF in terms of its maximum forwarding
rate and latency). The metrics gathered from this test will
serve as a key comparison point for vswitch bypass
technologies performance and vswitch performance.
Figure 2 Benchmark VNF forwarding capability
__
+--------------------------------------------------+ |
| +------------------------------------------+ | |
| | | | |
| | VNF | | |
| | | | |
| +------------------------------------------+ | |
| | Passthrough/SR-IOV | | Host
| +------------------------------------------+ | |
| | NIC | | |
+---+------------------------------------------+---+ __|
^ :
| |
: v
+--------------------------------------------------+
| |
| traffic generator |
| |
+--------------------------------------------------+
* Benchmarking with isolated resources alone, with other * Benchmarking with isolated resources alone and with other
resources (both HW&SW) disabled Example, vswitch and VM are resources (both hardware and software) disabled; for example,
SUT vSwitch and VM are SUT.
* Benchmarking with isolated resources alone, leaving some * Benchmarking with isolated resources alone, thus leaving some
resources unused resources unused.
* Benchmark with isolated resources and all resources occupied * Benchmarking 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. VSPERF 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
existing specifications developed by BMWG to test the performance of pre-existing specifications developed by the BMWG to test the
physical switches. These specifications include: performance of physical switches. These specifications include:
o [RFC2544] Benchmarking Methodology for Network Interconnect o Benchmarking Methodology for Network Interconnect Devices
Devices [RFC2544]
o [RFC2889] Benchmarking Methodology for LAN Switching o Benchmarking Methodology for LAN Switching [RFC2889]
o [RFC6201] Device Reset Characterization o Device Reset Characterization [RFC6201]
o [RFC5481] Packet Delay Variation Applicability Statement o Packet Delay Variation Applicability Statement [RFC5481]
Some of the above/newer RFCs are being applied in benchmarking for The two most recent RFCs above ([RFC6201] and [RFC5481]) are being
the first time, and represent a development challenge for test applied in benchmarking for the first time and represent a
equipment developers. Fortunately, many members of the testing development challenge for test equipment developers. Fortunately,
system community have engaged on the VSPERF project, including an many members of the testing system community have engaged on the
open source test system. VSPERF project, including an open source test system.
In addition to this, the LTD also re-uses the terminology defined by: In addition to this, the LTD also reuses the terminology defined by:
o [RFC2285] Benchmarking Terminology for LAN Switching Devices o Benchmarking Terminology for LAN Switching Devices [RFC2285]
It is recommended that these references are included in future It is recommended that these references be included in future
benchmarking specifications: benchmarking specifications:
o [RFC3918] Methodology for IP Multicast Benchmarking o Methodology for IP Multicast Benchmarking [RFC3918]
o [RFC4737] Packet Reordering Metrics o Packet Reordering Metrics [RFC4737]
As one might expect, the most fundamental internetworking As one might expect, the most fundamental internetworking
characteristics of Throughput and Latency remain important when the characteristics of throughput and latency remain important when the
switch is virtualized, and these benchmarks figure prominently in the switch is virtualized, and these benchmarks figure prominently in the
specification. specification.
When considering characteristics important to "telco" network When considering characteristics important to "telco" network
functions, additional performance metrics are needed. In this case, functions, additional performance metrics are needed. In this case,
the project specifications have referenced metrics from the IETF IP the project specifications have referenced metrics from the IETF IP
Performance Metrics (IPPM) literature. This means that the [RFC2544] Performance Metrics (IPPM) literature. This means that the latency
test of Latency is replaced by measurement of a metric derived from test described in [RFC2544] is replaced by measurement of a metric
IPPM's [RFC2679], where a set of statistical summaries will be derived from IPPM's [RFC7679], where a set of statistical summaries
provided (mean, max, min, and percentiles). Further metrics planned will be provided (mean, max, min, and percentiles). Further metrics
to be benchmarked include packet delay variation as defined by planned to be benchmarked include packet delay variation as defined
[RFC5481] , reordering, burst behaviour, DUT availability, DUT by [RFC5481], reordering, burst behaviour, DUT availability, DUT
capacity and packet loss in long term testing at Throughput level, capacity, and packet loss in long-term testing at the throughput
where some low-level of background loss may be present and level, where some low level of background loss may be present and
characterized. characterized.
Tests have been designed to collect the metrics below: Tests have been designed to collect the metrics below:
o Throughput Tests to measure the maximum forwarding rate (in frames o Throughput tests are designed to measure the maximum forwarding
per second or fps) and bit rate (in Mbps) for a constant load (as rate (in frames per second, fps) and bit rate (in Mbps) for a
defined by [RFC1242]) without traffic loss. constant load (as defined by [RFC1242]) without traffic loss.
o Packet and Frame Delay Distribution Tests to measure average, min o Packet and frame-delay distribution tests are designed to measure
and max packet and frame delay for constant loads. the average minimum and maximum packet (and/or frame) delay for
constant loads.
o Packet Delay Tests to understand latency distribution for o Packet delay tests are designed to understand latency distribution
different packet sizes and over an extended test run to uncover for different packet sizes and to uncover outliers over an
outliers. extended test run.
o Scalability Tests to understand how the virtual switch performs o Scalability tests are designed to understand how the virtual
with increasing number of flows, number of active ports, switch performs with an increasing number of flows, number of
configuration complexity of the forwarding logic, etc. active ports, configuration complexity of the forwarding logic,
etc.
o Stream Performance Tests (TCP, UDP) to measure bulk data transfer o Stream performance tests (with TCP or UDP) are designed to measure
performance, i.e. how fast systems can send and receive data bulk data transfer performance, i.e., how fast systems can send
through the switch. and receive data through the switch.
o Control Path and Datapath Coupling Tests, to understand how o Control-path and data-path coupling tests are designed to
closely the datapath and the control path are coupled, as well as understand how closely the data path and the control path are
the effect of this coupling on the performance of the DUT coupled, as well as the effect of this coupling on the performance
(example: delay of the initial packet of a flow). of the DUT (for example, delay of the initial packet of a flow).
o CPU and Memory Consumption Tests to understand the virtual o CPU and memory consumption tests are designed to understand the
switch's footprint on the system, conducted as auxiliary virtual switch's footprint on the system and are conducted as
measurements with benchmarks above. They include: CPU auxiliary measurements with the benchmarks above. They include
utilization, Cache utilization and Memory footprint. CPU utilization, cache utilization, and memory footprint.
o The so-called "Soak" tests, where the selected test is conducted o The so-called "soak" tests, where the selected test is conducted
over a long period of time (with an ideal duration of 24 hours, over a long period of time (with an ideal duration of 24 hours but
but only long enough to determine that stability issues exist when only long enough to determine that stability issues exist when
found; there is no requirement to continue a test when a DUT found; there is no requirement to continue a test when a DUT
exhibits instability over time). The key performance exhibits instability over time). The key performance
characteristics and benchmarks for a DUT are determined (using characteristics and benchmarks for a DUT are determined (using
short duration tests) prior to conducting soak tests. The purpose short duration tests) prior to conducting soak tests. The purpose
of soak tests is to capture transient changes in performance which of soak tests is to capture transient changes in performance,
may occur due to infrequent processes, memory leaks, or the low which may occur due to infrequent processes, memory leaks, or the
probability coincidence of two or more processes. The stability low-probability coincidence of two or more processes. The
of the DUT is the paramount consideration, so performance must be stability of the DUT is the paramount consideration, so
evaluated periodically during continuous testing, and this results performance must be evaluated periodically during continuous
in use of [RFC2889] Frame Rate metrics instead of [RFC2544] testing, and this results in use of frame rate metrics [RFC2889]
Throughput (which requires stopping traffic to allow time for all instead of throughput [RFC2544] (which requires stopping traffic
traffic to exit internal queues), for example. to allow time for all traffic to exit internal queues), for
example.
Additional test specification development should include: Additional test specification development should include:
o Request/Response Performance Tests (TCP, UDP) which measure the o Request/response performance tests (with TCP or UDP), which
transaction rate through the switch. measure the transaction rate through the switch.
o Noisy Neighbour Tests, to understand the effects of resource o Noisy neighbor tests, in order to understand the effects of
sharing on the performance of a virtual switch. resource 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 it is necessary to characterize the performance of a means that it is necessary to characterize the performance of a
vswitch in various deployment scenarios. The deployment scenarios vSwitch in various deployment scenarios. The deployment scenarios
under consideration include: under consideration are shown in the following figures:
Figure 3 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 |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
Figure 4 Physical port to virtual switch to VNF to virtual switch to
physical port
Figure 3: Physical Port to Virtual Switch to Physical Port
__ __
+---------------------------------------------------+ | +---------------------------------------------------+ |
| | | | | |
| +-------------------------------------------+ | | | +-------------------------------------------+ | |
| | Application | | | | | Application | | |
| +-------------------------------------------+ | | | +-------------------------------------------+ | |
| ^ : | | | ^ : | |
| | | | | Guest | | | | | Guest
| : v | | | : v | |
| +---------------+ +---------------+ | | | +---------------+ +---------------+ | |
| | logical port 0| | logical port 1| | | | | Logical Port 0| | Logical Port 1| | |
+---+---------------+-----------+---------------+---+ __| +---+---------------+-----------+---------------+---+ __|
^ : ^ :
| | | |
: 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 |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
Figure 5 Physical port to virtual switch to VNF to virtual switch to
VNF to virtual switch to physical port
Figure 4: Physical Port to Virtual Switch to VNF to Virtual Switch to
Physical Port
__ __
+----------------------+ +----------------------+ | +----------------------+ +----------------------+ |
| Guest 1 | | Guest 2 | | | Guest 1 | | Guest 2 | |
| +---------------+ | | +---------------+ | | | +---------------+ | | +---------------+ | |
| | Application | | | | Application | | | | | Application | | | | Application | | |
| +---------------+ | | +---------------+ | | | +---------------+ | | +---------------+ | |
| ^ | | | ^ | | | | ^ | | | ^ | | |
| | v | | | v | | Guests | | v | | | v | | Guests
| +---------------+ | | +---------------+ | | | +---------------+ | | +---------------+ | |
| | logical ports | | | | logical ports | | | | | Logical Ports | | | | Logical Ports | | |
| | 0 1 | | | | 0 1 | | | | | 0 1 | | | | 0 1 | | |
+---+---------------+--+ +---+---------------+--+__| +---+---------------+--+ +---+---------------+--+__|
^ : ^ : ^ : ^ :
| | | | | | | |
: 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 |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
Figure 6 Physical port to virtual switch to VNF
Figure 5: Physical Port to Virtual Switch to VNF to Virtual Switch to
VNF to Virtual Switch to Physical Port
__ __
+---------------------------------------------------+ | +---------------------------------------------------+ |
| | | | | |
| +-------------------------------------------+ | | | +-------------------------------------------+ | |
| | Application | | | | | Application | | |
| +-------------------------------------------+ | | | +-------------------------------------------+ | |
| ^ | | | ^ | |
| | | | Guest | | | | Guest
| : | | | : | |
| +---------------+ | | | +---------------+ | |
| | logical port 0| | | | | Logical Port 0| | |
+---+---------------+-------------------------------+ __| +---+---------------+-------------------------------+ __|
^ ^
| |
: __ : __
+---+---------------+------------------------------+ | +---+---------------+------------------------------+ |
| | logical port 0| | | | | Logical Port 0| | |
| +---------------+ | | | +---------------+ | |
| ^ | | | ^ | |
| | | | Host | | | | Host
| : | | | : | |
| +--------------+ | | | +--------------+ | |
| | phy port | vswitch | | | | PHY Port | vSwitch | |
+---+--------------+------------ -------------- ---+ __| +---+--------------+------------ -------------- ---+ __|
^ ^
| |
: :
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | Traffic Generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
Figure 7 VNF to virtual switch to physical port
Figure 6: Physical Port to Virtual Switch to VNF
__ __
+---------------------------------------------------+ | +---------------------------------------------------+ |
| | | | | |
| +-------------------------------------------+ | | | +-------------------------------------------+ | |
| | Application | | | | | Application | | |
| +-------------------------------------------+ | | | +-------------------------------------------+ | |
| : | | | : | |
| | | | Guest | | | | Guest
| v | | | v | |
| +---------------+ | | | +---------------+ | |
| | logical port | | | | | Logical Port | | |
+-------------------------------+---------------+---+ __| +-------------------------------+---------------+---+ __|
: :
| |
v __ v __
+------------------------------+---------------+---+ | +------------------------------+---------------+---+ |
| | logical port | | | | | Logical Port | | |
| +---------------+ | | | +---------------+ | |
| : | | | : | |
| | | | Host | | | | Host
| v | | | v | |
| +--------------+ | | | +--------------+ | |
| vswitch | phy port | | | | vSwitch | PHY Port | | |
+-------------------------------+--------------+---+ __| +-------------------------------+--------------+---+ __|
: :
| |
v v
+--------------------------------------------------+ +--------------------------------------------------+
| | | |
| traffic generator | | Traffic Generator |
| | | |
+--------------------------------------------------+ +--------------------------------------------------+
Figure 8 VNF to virtual switch to VNF
Figure 7: VNF to Virtual Switch to Physical Port
__ __
+----------------------+ +----------------------+ | +----------------------+ +----------------------+ |
| Guest 1 | | Guest 2 | | | Guest 1 | | Guest 2 | |
| +---------------+ | | +---------------+ | | | +---------------+ | | +---------------+ | |
| | Application | | | | Application | | | | | Application | | | | Application | | |
| +---------------+ | | +---------------+ | | | +---------------+ | | +---------------+ | |
| | | | ^ | | | | | | ^ | |
| v | | | | | Guests | v | | | | | Guests
| +---------------+ | | +---------------+ | | | +---------------+ | | +---------------+ | |
| | logical ports | | | | logical ports | | | | | Logical Ports | | | | Logical Ports | | |
| | 0 | | | | 0 | | | | | 0 | | | | 0 | | |
+---+---------------+--+ +---+---------------+--+__| +---+---------------+--+ +---+---------------+--+__|
: ^ : ^
| | | |
v : _ v : _
+---+---------------+---------+---------------+--+ | +---+---------------+---------+---------------+--+ |
| | 1 | | 1 | | | | | 1 | | 1 | | |
| | logical ports | | logical ports | | | | | Logical Ports | | Logical Ports | | |
| +---------------+ +---------------+ | | | +---------------+ +---------------+ | |
| | ^ | | Host | | ^ | | Host
| L-----------------+ | | | \-----------------/ | |
| | | | | |
| vswitch | | | vSwitch | |
+------------------------------------------------+_| +------------------------------------------------+_|
A set of Deployment Scenario figures is available on the VSPERF Test Figure 8: VNF to Virtual Switch to VNF
Methodology Wiki page [TestTopo].
A set of deployment scenario figures is available on the VSPERF "Test
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 [RFC8172]). Because the LTD
the LTD specification ID names are quite long, this section is specification ID names are quite long, this section is organized into
organized into lists for each occupied cell of the matrix (not all lists for each occupied cell of the matrix (not all are occupied;
are occupied, also the matrix has grown to 3x4 to accommodate scale also, the matrix has grown to 3x4 to accommodate scale metrics when
metrics when displaying the coverage of many metrics/benchmarks). displaying the coverage of many metrics/benchmarks). The current
The current version of the LTD specification is available [LTD]. version of the LTD specification is available; see [LTD].
The tests listed below assess the activation of paths in the data The tests listed below assess the activation of paths in the data
plane, rather than the control plane. plane rather than the control plane.
A complete list of tests with short summaries is available on the A complete list of tests with short summaries is available on the
VSPERF "LTD Test Spec Overview" Wiki page [LTDoverV]. VSPERF "LTD Test Spec Overview" wiki page [LTDoverV].
5.1. Speed of Activation 5.1. Speed of Activation
o Activation.RFC2889.AddressLearningRate o Activation.RFC2889.AddressLearningRate
o PacketLatency.InitialPacketProcessingLatency o PacketLatency.InitialPacketProcessingLatency
5.2. Accuracy of Activation section 5.2. Accuracy of Activation
o CPDP.Coupling.Flow.Addition o CPDP.Coupling.Flow.Addition
5.3. Reliability of Activation 5.3. Reliability of Activation
o Throughput.RFC2544.SystemRecoveryTime o Throughput.RFC2544.SystemRecoveryTime
o Throughput.RFC2544.ResetTime o Throughput.RFC2544.ResetTime
5.4. Scale of Activation 5.4. Scale of Activation
skipping to change at page 20, line 25 skipping to change at page 20, line 25
o Scalability.RFC2544.0PacketLoss o Scalability.RFC2544.0PacketLoss
o MemoryBandwidth.RFC2544.0PacketLoss.Scalability o MemoryBandwidth.RFC2544.0PacketLoss.Scalability
o Scalability.VNF.RFC2544.PacketLossProfile o Scalability.VNF.RFC2544.PacketLossProfile
o Scalability.VNF.RFC2544.PacketLossRatio o Scalability.VNF.RFC2544.PacketLossRatio
5.9. Summary 5.9. Summary
|------------------------------------------------------------------------| |---------------------------------------------------------------------|
| | | | | | | | | | | |
| | SPEED | ACCURACY | RELIABILITY | SCALE | | | SPEED | ACCURACY | RELIABILITY | SCALE |
| | | | | | | | | | | |
|------------------------------------------------------------------------| |---------------------------------------------------------------------|
| | | | | | | | | | | |
| Activation | X | X | X | X | | Activation | X | X | X | X |
| | | | | | | | | | | |
|------------------------------------------------------------------------| |---------------------------------------------------------------------|
| | | | | | | | | | | |
| Operation | X | X | X | X | | Operation | X | X | X | X |
| | | | | | | | | | | |
|------------------------------------------------------------------------| |---------------------------------------------------------------------|
| | | | | | | | | | | |
| De-activation | | | | | | De-activation| | | | |
| | | | | | | | | | | |
|------------------------------------------------------------------------| |---------------------------------------------------------------------|
6. Security Considerations 6. Security Considerations
Benchmarking activities as described in this memo are limited to Benchmarking activities as described in this memo are limited to
technology characterization of a Device Under Test/System Under Test technology characterization of a Device Under Test/System Under Test
(DUT/SUT) using controlled stimuli in a laboratory environment, with (DUT/SUT) using controlled stimuli in a laboratory environment with
dedicated address space and the constraints specified in the sections dedicated address space and the constraints specified in the sections
above. above.
The benchmarking network topology will be an independent test setup The benchmarking network topology will be an independent test setup
and MUST NOT be connected to devices that may forward the test and MUST NOT be connected to devices that may forward the test
traffic into a production network, or misroute traffic to the test traffic into a production network or misroute traffic to the test
management network. management network.
Further, benchmarking is performed on a "black-box" basis, relying Further, benchmarking is performed on a "black-box" basis and relies
solely on measurements observable external to the DUT/SUT. solely on measurements observable external to the DUT/SUT.
Special capabilities SHOULD NOT exist in the DUT/SUT specifically for Special capabilities SHOULD NOT exist in the DUT/SUT specifically for
benchmarking purposes. Any implications for network security arising benchmarking purposes. Any implications for network security arising
from the DUT/SUT SHOULD be identical in the lab and in production from the DUT/SUT SHOULD be identical in the lab and in production
networks. networks.
7. IANA Considerations 7. References
No IANA Action is requested at this time.
8. Acknowledgements
The authors appreciate and acknowledge comments from Scott Bradner,
Marius Georgescu, Ramki Krishnan, Doug Montgomery, Martin Klozik,
Christian Trautman, and others for their reviews.
We also acknowledge the early work in
[I-D.huang-bmwg-virtual-network-performance], and useful discussion
with the authors.
9. References
9.1. Normative References 7.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC2285] Mandeville, R., "Benchmarking Terminology for LAN [RFC2285] Mandeville, R., "Benchmarking Terminology for LAN
Switching Devices", RFC 2285, DOI 10.17487/RFC2285, Switching Devices", RFC 2285, DOI 10.17487/RFC2285,
February 1998, <http://www.rfc-editor.org/info/rfc2285>. February 1998, <https://www.rfc-editor.org/info/rfc2285>.
[RFC2544] Bradner, S. and J. McQuaid, "Benchmarking Methodology for [RFC2544] Bradner, S. and J. McQuaid, "Benchmarking Methodology for
Network Interconnect Devices", RFC 2544, Network Interconnect Devices", RFC 2544,
DOI 10.17487/RFC2544, March 1999, DOI 10.17487/RFC2544, March 1999,
<http://www.rfc-editor.org/info/rfc2544>. <https://www.rfc-editor.org/info/rfc2544>.
[RFC2679] Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way
Delay Metric for IPPM", RFC 2679, DOI 10.17487/RFC2679,
September 1999, <http://www.rfc-editor.org/info/rfc2679>.
[RFC2889] Mandeville, R. and J. Perser, "Benchmarking Methodology [RFC2889] Mandeville, R. and J. Perser, "Benchmarking Methodology
for LAN Switching Devices", RFC 2889, for LAN Switching Devices", RFC 2889,
DOI 10.17487/RFC2889, August 2000, DOI 10.17487/RFC2889, August 2000,
<http://www.rfc-editor.org/info/rfc2889>. <https://www.rfc-editor.org/info/rfc2889>.
[RFC3918] Stopp, D. and B. Hickman, "Methodology for IP Multicast [RFC3918] Stopp, D. and B. Hickman, "Methodology for IP Multicast
Benchmarking", RFC 3918, DOI 10.17487/RFC3918, October Benchmarking", RFC 3918, DOI 10.17487/RFC3918, October
2004, <http://www.rfc-editor.org/info/rfc3918>. 2004, <https://www.rfc-editor.org/info/rfc3918>.
[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>. <https://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>. <https://www.rfc-editor.org/info/rfc6201>.
[RFC6985] Morton, A., "IMIX Genome: Specification of Variable Packet [RFC6985] Morton, A., "IMIX Genome: Specification of Variable Packet
Sizes for Additional Testing", RFC 6985, Sizes for Additional Testing", RFC 6985,
DOI 10.17487/RFC6985, July 2013, DOI 10.17487/RFC6985, July 2013,
<http://www.rfc-editor.org/info/rfc6985>. <https://www.rfc-editor.org/info/rfc6985>.
9.2. Informative References [RFC7679] Almes, G., Kalidindi, S., Zekauskas, M., and A. Morton,
Ed., "A One-Way Delay Metric for IP Performance Metrics
(IPPM)", STD 81, RFC 7679, DOI 10.17487/RFC7679, January
2016, <https://www.rfc-editor.org/info/rfc7679>.
[DanubeRel] [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
"Danube, Fourth OPNFV Release 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
https://wiki.opnfv.org/display/SWREL/Danube". May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[I-D.huang-bmwg-virtual-network-performance] 7.2. Informative References
Huang, L., Rong, G., Mandeville, B., and B. Hickman,
"Benchmarking Methodology for Virtualization Network
Performance", draft-huang-bmwg-virtual-network-
performance-02 (work in progress), March 2017.
[I-D.ietf-bmwg-virtual-net] [BENCHMARK-METHOD]
Morton, A., "Considerations for Benchmarking Virtual Huang, L., Ed., Rong, G., Ed., Mandeville, B., and B.
Network Functions and Their Infrastructure", draft-ietf- Hickman, "Benchmarking Methodology for Virtualization
bmwg-virtual-net-05 (work in progress), March 2017. Network Performance", Work in Progress, draft-huang-bmwg-
virtual-network-performance-03, July 2017.
[DanubeRel]
OPNFV, "Danube",
<https://wiki.opnfv.org/display/SWREL/Danube>.
[IEEE802.1ac] [IEEE802.1ac]
https://standards.ieee.org/findstds/standard/802.1AC- IEEE, "IEEE Standard for Local and metropolitan area
2016.html, "802.1AC-2016 - IEEE Standard for Local and networks -- Media Access Control (MAC) Service
metropolitan area networks -- Media Access Control (MAC) Definition", IEEE 802.1AC-2016,
Service Definition", 2016. DOI 10.1109/IEEESTD.2017.7875381, 2016,
<https://standards.ieee.org/findstds/
standard/802.1AC-2016.html>.
[IFA003] "https://docbox.etsi.org/ISG/NFV/Open/Drafts/ [IEEE829] IEEE, "IEEE Standard for Software and System Test
IFA003_Acceleration_-_vSwitch_Spec/". Documentation", IEEE 829-2008,
DOI 10.1109/IEEESTD.2008.4578383,
<http://ieeexplore.ieee.org/document/4578383/>.
[LTD] Note: if the Danube Release LTD is available in artifacts [IFA003] ETSI, "Network Functions Virtualisation (NFV);
at publication, we will use that URL instead., "LTD Test S Acceleration Technologies; vSwitch Benchmarking and
pecificationhttp://artifacts.opnfv.org/vswitchperf/colorad Acceleration Specification", ETSI GS NFV-IFA 003 V2.1.1,
o/docs/requirements/vswitchperf_ltd.html". April 2016, <http://www.etsi.org/deliver/etsi_gs/
NFV-IFA/001_099/003/02.01.01_60/
gs_NFV-IFA003v020101p.pdf>.
[LTDoverV] [LTD] Tahhan, M., "VSPERF Level Test Design (LTD)",
"LTD Test Spec Overview <http://docs.opnfv.org/en/stable-danube/
https://wiki.opnfv.org/display/vsperf/ submodules/vswitchperf/docs/testing/developer/
LTD+Test+Spec+Overview". requirements/vswitchperf_ltd.html#>.
[OPNFV] "OPNFV Home https://www.opnfv.org/". [LTDoverV] Morton, A., "LTD Test Spec Overview",
<https://wiki.opnfv.org/display/vsperf/
LTD+Test+Spec+Overview>.
[OPNFV] OPNFV, "OPNFV", <https://www.opnfv.org/>.
[RFC1242] Bradner, S., "Benchmarking Terminology for Network [RFC1242] Bradner, S., "Benchmarking Terminology for Network
Interconnection Devices", RFC 1242, DOI 10.17487/RFC1242, Interconnection Devices", RFC 1242, DOI 10.17487/RFC1242,
July 1991, <http://www.rfc-editor.org/info/rfc1242>. July 1991, <https://www.rfc-editor.org/info/rfc1242>.
[RFC5481] Morton, A. and B. Claise, "Packet Delay Variation [RFC5481] Morton, A. and B. Claise, "Packet Delay Variation
Applicability Statement", RFC 5481, DOI 10.17487/RFC5481, Applicability Statement", RFC 5481, DOI 10.17487/RFC5481,
March 2009, <http://www.rfc-editor.org/info/rfc5481>. March 2009, <https://www.rfc-editor.org/info/rfc5481>.
[TestTopo] [RFC8172] Morton, A., "Considerations for Benchmarking Virtual
"Test Topologies https://wiki.opnfv.org/display/vsperf/ Network Functions and Their Infrastructure", RFC 8172,
Test+Methodology". DOI 10.17487/RFC8172, July 2017,
<https://www.rfc-editor.org/info/rfc8172>.
[TestTopo] Snyder, E., "Test Methodology",
<https://wiki.opnfv.org/display/vsperf/Test+Methodology>.
[VSPERFhome] [VSPERFhome]
"VSPERF Home https://wiki.opnfv.org/display/vsperf/ Tahhan, M., "VSPERF Home",
VSperf+Home". <https://wiki.opnfv.org/display/vsperf/VSperf+Home>.
Acknowledgements
The authors appreciate and acknowledge comments from Scott Bradner,
Marius Georgescu, Ramki Krishnan, Doug Montgomery, Martin Klozik,
Christian Trautman, Benoit Claise, and others for their reviews.
We also acknowledge the early work in [BENCHMARK-METHOD] and useful
discussion with the authors.
Authors' Addresses Authors' Addresses
Maryam Tahhan Maryam Tahhan
Intel Intel
Email: maryam.tahhan@intel.com Email: maryam.tahhan@intel.com
Billy O'Mahony Billy O'Mahony
Intel Intel
skipping to change at page 24, line 4 skipping to change at page 24, line 16
Maryam Tahhan Maryam Tahhan
Intel Intel
Email: maryam.tahhan@intel.com Email: maryam.tahhan@intel.com
Billy O'Mahony Billy O'Mahony
Intel Intel
Email: billy.o.mahony@intel.com Email: billy.o.mahony@intel.com
Al Morton Al Morton
AT&T Labs AT&T Labs
200 Laurel Avenue South 200 Laurel Avenue South
Middletown,, NJ 07748 Middletown, NJ 07748
USA United States of America
Phone: +1 732 420 1571 Phone: +1 732 420 1571
Fax: +1 732 368 1192 Fax: +1 732 368 1192
Email: acmorton@att.com Email: acmorton@att.com
URI: http://home.comcast.net/~acmacm/
 End of changes. 142 change blocks. 
580 lines changed or deleted 589 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/