# Copyright 2015-2016 Intel Corporation. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ############################ # Directories # ############################ # use DPDK VHOST USER by default RTE_SDK = RTE_SDK_USER OVS_DIR = OVS_DIR_USER OVS_VAR_DIR = '/usr/local/var/run/openvswitch/' OVS_ETC_DIR = '/usr/local/etc/openvswitch/' VSWITCH_DIR = os.path.join(ROOT_DIR, 'vswitches') # ############################ # DPDK configuration # ############################ # DPDK target used when builing DPDK RTE_TARGET = 'x86_64-native-linuxapp-gcc' # list of NIC HWIDs to which traffic generator is connected # In case of NIC with SRIOV suport, it is possible to define, # which virtual function should be used # e.g. value '0000:05:00.0|vf1' will configure two VFs and second VF # will be used for testing WHITELIST_NICS = ['0000:05:00.0', '0000:05:00.1'] # for DPDK_MODULES the path is in reference to the build directory # To use vfio set # DPDK_MODULES = [ # ('vfio-pci'), # ] DPDK_MODULES = [ ('kmod', 'igb_uio'), ] VHOST_MODULE = [ ('eventfd_link', 'eventfd_link') ] # list of modules that will be inserted using 'modprobe' on system init # To use vfio set # SYS_MODULES = ['cuse'] SYS_MODULES = ['uio', 'cuse'] # vhost character device file used by dpdkvhostport QemuWrap cases VHOST_DEV_FILE = 'ovs-vhost-net' # location of vhost-user sockets VHOST_USER_SOCKS = ['/tmp/dpdkvhostuser0', '/tmp/dpdkvhostuser1', '/tmp/dpdkvhostuser2', '/tmp/dpdkvhostuser3', '/tmp/myport0', '/tmp/helloworld123', '/tmp/abcstuff0'] # ############################ # vswitch configuration # ############################ # 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 VSWITCHD_DPDK_ARGS = ['-c', '0x4', '-n', '4', '--socket-mem 1024,0'] # 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" 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. # To enable multi queue modify the below param to the number of queues. # 0 = disabled VSWITCH_MULTI_QUEUES = 0 # parameters passed to ovs-vswitchd in case that OvsVanilla is selected VSWITCHD_VANILLA_ARGS = [] # use full module path to load module matching OVS version built from the source VSWITCH_VANILLA_KERNEL_MODULES = ['libcrc32c', 'ip_tunnel', 'vxlan', 'gre', 'nf_conntrack', 'nf_defrag_ipv4', 'nf_defrag_ipv6', os.path.join(OVS_DIR_VANILLA, 'datapath/linux/openvswitch.ko')] # Bridge name to be used by VSWTICH VSWITCH_BRIDGE_NAME = 'br0' # directory where hugepages will be mounted on system init HUGEPAGE_DIR = '/dev/hugepages' # If no hugepages are available, try to allocate HUGEPAGE_RAM_ALLOCATION. # Default is 10 GB. # 10 GB (10485760 kB) or more is recommended for PVP & PVVP testing scenarios. HUGEPAGE_RAM_ALLOCATION = 10485760 # Sets OVS PMDs core mask to 30 for affinitization to 5th and 6th CPU core. # Note that the '0x' notation should not be used. VSWITCH_PMD_CPU_MASK = '30' VSWITCH_AFFINITIZATION_ON = 1 VSWITCH_FLOW_TIMEOUT = '30000' # list of tuples of format (path, module_name), which will be inserted # using 'insmod' on system init # for OVS modules the path is in reference to the OVS directory. OVS_MODULES = [] # log file for ovs-vswitchd LOG_FILE_VSWITCHD = 'vswitchd.log' # log file for ovs-dpdk LOG_FILE_OVS = 'ovs.log' # default vswitch implementation VSWITCH = "OvsDpdkVhost"