X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=conf%2F02_vswitch.conf;h=873b5bca1370ba1aad2e44aa03568e3e45b83017;hb=63b56ed1d74657129006f066a3f118c4c369d23c;hp=2ca7591c4d4dd0d850112f9ee56b6bd85d93827a;hpb=cafcb9f24b422a4b3a0b19ba00c83fe2819dcbaa;p=vswitchperf.git diff --git a/conf/02_vswitch.conf b/conf/02_vswitch.conf index 2ca7591c..873b5bca 100644 --- a/conf/02_vswitch.conf +++ b/conf/02_vswitch.conf @@ -1,4 +1,4 @@ -# Copyright 2015-2016 Intel Corporation. +# Copyright 2015-2018 Intel Corporation, Tieto and others. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -33,6 +33,12 @@ RTE_TARGET = 'x86_64-native-linuxapp-gcc' # will be used for testing WHITELIST_NICS = [] +# List defines an amount of memory to be allocated by DPDK at NUMA nodes. This +# option is shared by all vSwitches with DPDK support. In case, that there is +# a socket-mem configuration specified in vSwitch specific configuration option, +# then it will be overridden by DPDK_SOCKET_MEM value. +DPDK_SOCKET_MEM = ['1024', '0'] + # vhost character device file used by dpdkvhostport QemuWrap cases VHOST_DEV_FILE = 'ovs-vhost-net' @@ -47,7 +53,7 @@ PATHS['dpdk'] = { # To use vfio set: # 'modules' : ['uio', 'vfio-pci'], 'modules' : ['uio', os.path.join(RTE_TARGET, 'kmod/igb_uio.ko')], - 'bind-tool': 'tools/dpdk*bind.py', + 'bind-tool': '*tools/dpdk*bind.py', 'testpmd': os.path.join(RTE_TARGET, 'app', 'testpmd'), }, 'bin': { @@ -103,6 +109,20 @@ PATHS['vswitch'] = { }, 'ovs_var_tmp': '/usr/local/var/run/openvswitch/', 'ovs_etc_tmp': '/usr/local/etc/openvswitch/', + 'VppDpdkVhost': { + 'type' : 'src', + 'src': { + 'path': os.path.join(ROOT_DIR, 'src/vpp/vpp/build-root/install-vpp-native/vpp'), + 'vpp': 'bin/vpp', + 'vppctl': 'bin/vppctl', + 'vpp_plugin_path' : 'lib64/vpp_plugins', + }, + 'bin': { + 'vpp': 'vpp', + 'vppctl': 'vppctl', + 'vpp_plugin_path' : '/usr/lib/vpp_plugins', + } + }, } # default OvsVanilla configuration is similar to OvsDpdkVhost except 'path' and 'modules' @@ -116,22 +136,30 @@ PATHS['vswitch']['OvsVanilla']['bin']['modules'] = ['openvswitch'] # ############################ # These are DPDK EAL parameters and they may need to be changed depending on # hardware configuration, like cpu numbering and NUMA. -# + # parameters used for legacy DPDK configuration through '--dpdk' option of ovs-vswitchd # e.g. ovs-vswitchd --dpdk --socket-mem 1024,0 # This config line is also used for pkt_fwd option (TestPMD phy2phy and pvp tests) -VSWITCHD_DPDK_ARGS = ['-c', '0x4', '-n', '4', '--socket-mem 1024,0'] +# NOTE: DPDK socket mem allocation is driven by parameter DPDK_SOCKET_MEM +VSWITCHD_DPDK_ARGS = ['-c', '0x4', '-n', '4'] # options used for new type of OVS configuration via calls to ovs-vsctl # e.g. ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-socket-mem="1024,0" +# NOTE: DPDK socket mem allocation is driven by parameter DPDK_SOCKET_MEM VSWITCHD_DPDK_CONFIG = { 'dpdk-init' : 'true', 'dpdk-lcore-mask' : '0x4', - 'dpdk-socket-mem' : '1024,0', } # Note: VSPERF will automatically detect, which type of DPDK configuration should # be used. +# Defines if VSWITCH should be a server for sockets of DPDK vhost-user +# interfaces (True) or not (False). Support of vhost user server mode +# in Open vSwitch is deprecated and will be removed in future releases. +# Note: Qemu 2.7 and newer is required to support settings +# VSWITCH_VHOSTUSER_SERVER_MODE = False +VSWITCH_VHOSTUSER_SERVER_MODE = True + # To enable multi queue with dpdk modify the below param to the number of # queues for dpdk. 0 = disabled VSWITCH_DPDK_MULTI_QUEUES = 0 @@ -146,6 +174,10 @@ VSWITCHD_VANILLA_ARGS = [] # Bridge name to be used by VSWTICH VSWITCH_BRIDGE_NAME = 'br0' +# A tunnel type used by OP2P and PTUNP deployments +# Supported values: 'vxlan', 'gre' or 'geneve' +TUNNEL_TYPE = 'vxlan' + # directory where hugepages will be mounted on system init HUGEPAGE_DIR = '/dev/hugepages' @@ -169,3 +201,49 @@ LOG_FILE_OVS = 'ovs.log' # default vswitch implementation VSWITCH = "OvsDpdkVhost" + +VSWITCH_JUMBO_FRAMES_ENABLED = False +VSWITCH_JUMBO_FRAMES_SIZE = 9000 + +# default arguments of OVS ctl tools +OVS_VSCTL_ARGS = [] +OVS_OFCTL_ARGS = ['-O', 'OpenFlow13'] # backward compatible default value +OVS_APPCTL_ARGS = [] + +# default flow template to be used by OVS classes +OVS_FLOW_TEMPLATE = { + 'idle_timeout': '0' +} + +# enable or disable configuration of routing tables; See vswitchperf_design.rst +# for details. +OVS_ROUTING_TABLES = False + +######################### +## VPP +######################### +# Set of arguments used for startup of VPP +# NOTE: DPDK socket mem allocation is driven by parameter DPDK_SOCKET_MEM +VSWITCH_VPP_CLI_SOCK = '' +VSWITCH_VPP_ARGS = { + 'unix' : [ + 'interactive', # required by VSPERF to detect successful VPP startup + 'log /tmp/vpp.log', + 'full-coredump', + ], + 'cpu' : [ + 'main-core 2', + 'workers 2', + 'corelist-workers 4,5', + ], +} + +# log file for VPP +LOG_FILE_VPP = 'vsperf-vpp.log' + +# Select l2 connection method used by VPP. +# Supported values are: 'xconnect', 'l2patch' and 'bridge' +VSWITCH_VPP_L2_CONNECT_MODE = 'xconnect' + +# Options used during creation of dpdkvhostuser interface +VSWITCH_VPP_VHOSTUSER_ARGS = ['feature-mask', '0xFF']