Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite...

21
Mellanox Technologies www.mellanox.com Mellanox ConnectX-3 NATIVE ESXi Driver for VMware vSphere 6.5 User Manual Rev 3.16.11.6

Transcript of Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite...

Page 1: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Mellanox ConnectX-3 NATIVE ESXi Driver for VMware vSphere 6.5 User Manual

Mellanox Technologieswww.mellanox.com

Rev 3.16.11.6

Page 2: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

NOTE:THIS HARDWARE, SOFTWARE OR TEST SUITE PRODUCT (“PRODUCT(S)”) AND ITS RELATED DOCUMENTATION ARE PROVIDED BY MELLANOX TECHNOLOGIES “AS-IS” WITH ALL FAULTS OF ANY KIND AND SOLELY FOR THE PURPOSE OF AIDING THE CUSTOMER IN TESTING APPLICATIONS THAT USE THE PRODUCTS IN DESIGNATED SOLUTIONS. THE CUSTOMER'S MANUFACTURING TEST ENVIRONMENT HAS NOT MET THE STANDARDS SET BY MELLANOX TECHNOLOGIES TO FULLY QUALIFY THE PRODUCT(S) AND/OR THE SYSTEM USING IT. THEREFORE, MELLANOX TECHNOLOGIES CANNOT AND DOES NOT GUARANTEE OR WARRANT THAT THE PRODUCTS WILL OPERATE WITH THE HIGHEST QUALITY. ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL MELLANOX BE LIABLE TO CUSTOMER OR ANY THIRD PARTIES FOR ANY DIRECT, INDIRECT, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES OF ANY KIND (INCLUDING, BUT NOT LIMITED TO, PAYMENT FOR PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY FROM THE USE OF THE PRODUCT(S) AND RELATED DOCUMENTATION EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Mellanox Technologies350 Oakmead Parkway Suite 100Sunnyvale , CA 94085U.S.A.www.mellanox.comTel: (408) 970-3400Fax: (408) 970-3403

© Copyright 2018. Mellanox Technologies Ltd . All Rights Reserved .

Mellanox®, Mellanox logo, Accelio®, BridgeX®, CloudX logo, CompustorX® , Connect -IB®, ConnectX® , CoolBox® , CORE-Direct® , EZchip®, EZchip logo, EZappliance® , EZdesign®, EZdriver® , EZsystem®, GPUDirect®, InfiniHost®, InfiniBridge®, InfiniScale®, Kotura®, Kotura logo, Mellanox CloudRack® , Mellanox CloudXMellanox® , Mellanox Federal Systems® , Mellanox HostDirect® , Mellanox Multi-Host®, Mellanox Open Ethernet®, Mellanox OpenCloud® , Mellanox OpenCloud Logo® , Mellanox PeerDirect® , Mellanox ScalableHPC® , Mellanox StorageX® , Mellanox TuneX® , Mellanox Connect Accelerate Outperform logo , Mellanox Virtual Modular Switch®, MetroDX®, MetroX®, MLNX-OS®, NP-1c®, NP-2®, NP-3®, NPS®, Open Ethernet logo , PhyX®, PlatformX®, PSIPHY®, SiPhy®, StoreX®, SwitchX®, Tilera®, Tilera logo, TestX®, TuneX®, The Generation of Open Ethernet logo , UFM®, Unbreakable Link® , Virtual Protocol Interconnect® , Voltaire® and Voltaire logo are registered trademarks of Mellanox Technologies , Ltd.

All other trademarks are property of their respective owners .

For the most updated list of Mellanox trademarks, visit http://www.mellanox.com/page/trademarks

Doc #: MLNX-15-4896 2Mellanox Technologies

Page 3: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Rev 3.16.11.6 3Mellanox Technologies

Table of Contents

Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4Document Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5About this Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6Chapter 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.1 nmlx4 Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.2 Ethernet (EN) Management Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.3 Mellanox Firmware Tools. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.4 Mellanox NATIVE ESX Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1.4.1 Software Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.5 Module Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1.5.1 nmlx4 Module Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.6 Device Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Chapter 2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.1 Hardware and Software Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.2 Installing Mellanox NATIVE ESX Driver for VMware vSphere . . . . . . . . . . 132.3 Removing Mellanox OFED Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.4 Loading/Unloading Driver Kernel Modules . . . . . . . . . . . . . . . . . . . . . . . . 142.5 Firmware Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Chapter 3 Features Overview and Configuration . . . . . . . . . . . . . . . . . . . . . . 163.1 VXLAN Hardware Offload. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.1.1 Configuring VXLAN Hardware Offload. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.2 Packet Capture Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3.2.1 Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.2.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.2.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

Chapter 4 Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.1 General Related Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.2 Ethernet Related Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.3 Installation Related Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Page 4: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Rev 3.16.11.64 Mellanox Technologies

List of Tables

Table 1: Document Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5Table 2: Abbreviations and Acronyms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6Table 3: Reference Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7Table 4: nmlx4_core Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Table 5: nmlx4_en Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Table 6: nmlx4_rdma Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Table 7: Software and Hardware Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13Table 8: General Related Issues. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Table 9: Ethernet Related Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Table 10: Installation Related Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Page 5: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Re

Document Revision HistoryTable 1 - Document Revision History

Release Date Description

Rev 3.16.11.6

November 30, 2017 • Section 3.2, “Packet Capture Utility”, on page 17

v 3.16.11.6 5Mellanox Technologies

Page 6: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

About this ManualThis preface provides general information concerning the scope and organization of this User’s Manual.

Intended AudienceThis manual is intended for system administrators responsible for the installation, configuration, management and maintenance of the software and hardware of VPI (in Ethernet mode), and Ethernet adapter cards. It is also intended for application developers.

Common Abbreviations and AcronymsTable 2 - Abbreviations and Acronyms

Abbreviation / Acronym Whole Word / Description

B (Capital) ‘B’ is used to indicate size in bytes or multiples of bytes (e.g., 1KB = 1024 bytes, and 1MB = 1048576 bytes)

b (Small) ‘b’ is used to indicate size in bits or multiples of bits (e.g., 1Kb = 1024 bits)

FW Firmware

HCA Host Channel Adapter

HW Hardware

LSB Least significant byte

lsb Least significant bit

MSB Most significant byte

msb Most significant bit

NIC Network Interface Card

SW Software

VPI Virtual Protocol Interconnect

PR Path Record

RDS Reliable Datagram Sockets

SDP Sockets Direct Protocol

SL Service Level

MPI Message Passing Interface

QoS Quality of Service

ULP Upper Level Protocol

vHBA Virtual SCSI Host Bus adapter

uDAPL User Direct Access Programming Library

Rev 3.16.11.66 Mellanox Technologies

Page 7: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Re

Related DocumentationTable 3 - Reference Documents

Document Name Description

IEEE Std 802.3ae™-2002(Amendment to IEEE Std 802.3-2002)Document # PDF: SS94996

Part 3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer SpecificationsAmendment: Media Access Control (MAC) Parame-ters, Physical Layers, and Management Parameters for 10 Gb/s Operation

Firmware Release Notes for Mellanox adapter devices

See the Release Notes PDF file relevant to your adapter device. For further information please refer to the Mellanox website.www.mellanox.com -> Support -> Firmware Down-load

MFT User Manual Mellanox Firmware Tools User’s Manual. For further information please refer to the Mellanox website.www.mellanox.com -> Products -> InfiniBand/VPI Driver -> Firmware Tools

MFT Release Notes Release Notes for the Mellanox Firmware Tools. For further information please refer to the Mellanox web-site.www.mellanox.com -> Products -> InfiniBand/VPI Driver -> Firmware Tools

VMware vSphere 6.5 Documentation Center VMware website

v 3.16.11.6 7Mellanox Technologies

Page 8: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

1 IntroductionMellanox NATIVE ESX is a software stack which operates across Mellanox’s ConnectX®-3 and ConnectX®-3 Pro network adapter solutions supporting up to 40Gb/s Ethernet (ETH) and 2.5 or 5.0 GT/s PCI Express 2.0 and 3.0 uplinks to servers.

The following sub-sections briefly describe the various components of the Mellanox NATIVE ESX stack.

1.1 nmlx4 Drivernmlx4 is the low level driver implementation for the ConnectX®-3 and ConnectX®-3 Pro adapt-ers designed by Mellanox Technologies. ConnectX® family adapters can operate as an Infini-Band adapter, or as an Ethernet NIC. The NATIVE ESX driver supports Ethernet NIC configurations. To accommodate the supported configurations, the driver is split into the follow-ing modules:

nmlx4_core

Handles low-level functions like device initialization and firmware commands processing. Also controls resource allocation.

nmlx4_en

A 10/40GigE driver that handles Ethernet specific functions and plugs into the ESX uplink layer

1.2 Ethernet (EN) Management InterfaceEN Management Interface provides user space application means to access EN driver data (simi-lar to ethtool interface in Linux).

The kernel space management interface layer is implemented as part of the EN driver and released as part of nmlx4_en.

The user space management interface access layer provides a set of accessors functions to driver objects and it is provided as a development source package tarball (H and C files). The user should include the H file and compile and link against the C file.

1.3 Mellanox Firmware ToolsThe Mellanox Firmware Tools (MFT) package is a set of firmware management tools for a single node. MFT can be used for:

• Generating a standard or customized Mellanox firmware image

• Burning a firmware image to a single node

MFT includes the following tools:

• flint: burns a firmware binary image or an expansion ROM image to the Flash device of a Mellanox network adapter/bridge/switch device. It includes query functions to the burnt firmware image and to the binary image file.

Rev 3.16.11.68 Mellanox Technologies

Page 9: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Introduction

Re

• Debug utilities: A set of debug utilities (e.g., itrace, mlxdump, mstdump, mlxmcg, wqdump, mcra, i2c, mget_temp, and pckt_drop)

For additional details, please refer to the MFT User’s Manual www.mellanox.com -> Products -> InfiniBand/VPI Driver -> Firmware Tools.

1.4 Mellanox NATIVE ESX Package

1.4.1 Software ComponentsMLNX-NATIVE-ESX contains the following software components:

• Mellanox Host Channel Adapter Drivers

• nmlx4 which is split into multiple modules:

• nmlx4_core (low-level helper)

• nmlx4_en (Ethernet)

• EN Management Interface development package tarball

1.5 Module Parameters

1.5.1 nmlx4 Module ParametersTo set nmlx4 parameters:

and/or

To show all parameters which were set until now:

Parameters which are not set by the user, remain on default value.

The following sections list the available nmlx4 parameters.

esxcli system module parameters set -m nmlx4_core -p ‘<parameter>=<value>’

esxcli system module parameters set -m nmlx4_en -p ‘<parameter>=<value>’

esxcli system module parameters list -m <module name>

v 3.16.11.6 9Mellanox Technologies

Page 10: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

1.5.1.1 nmlx4_core Parameters

1.5.1.2 nmlx4_en Parameters

Table 1 - nmlx4_core Parameters

Name Description Values

enable_64b_cqe_eqe Enables 64 byte CQEs/EQEs when the firm-ware supports this.

• 1 - enabled• 0 - disabledDefault: 0

enable_dmfs Enables Device Managed Flow Steering • 1 - enabled• 0 - disabled Default: 1

enable_qos Enables Quality of Service support in the HCA • 1 - enabled• 0 - disabled Default: 0

enable_rocev2 Enables RoCEv2 mode for all devices • 1 - enabled• 0 - disabled Default: 0

enable_vxlan_offloads Enables VXLAN offloads when supported by NIC

• 1 - enabled• 0 - disabled Default: 1

log_mtts_per_seg Log2 number of MTT entries per segment 1-7 Default: 3

log_num_mgm_entry_size Log2 MGM entry size, that defines the number of QPs per MCG, for example: value 10 results in 248 QP per MGM entry

9-12 Default: 12

msi_x Enables MSI-X • 1 - enabled• 0 - disabled Default: 1

mst_recovery Enables recovery mode (only NMST module is loaded)

• 1 - enabled• 0 - disabled Default: 0

rocev2_udp_port Destination port for RoCEv2 1-65535 for RoCEv2Default: 4791

Table 2 - nmlx4_en Parameters

Name Description Value

num_rings_per_rss_-queue

Enables RSS • 2-4• 0 - disabled Default: 0When this value is != 0, RSS is enabled with 1 RSS Queue that manages num_rings_per_rss_queue Rx Rings Note: The value must be a power of 2

Rev 3.16.11.610 Mellanox Technologies

Page 11: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Introduction

Re

1.5.1.3 nmlx4_rdma Parameters

1.6 Device CapabilitiesNormally, an application needs to query the device capabilities before attempting to create a resource. It is essential for the application to be able to operate over different devices with differ-ent capabilities.

pfcrx Priority based Flow Con-trol policy on RX.

0-255 Default: 0It is a 8 bits bit mask, each bit indicates prior-ity [0-7]. • 1 respects incoming pause frames on the

specified priority. • 0 - ignore incoming pause frames on the

specified priority.

pfctx Priority based Flow Con-trol policy on TX.

0-255 Default: 0It is a 8 bits bit mask, each bit indicates prior-ity [0-7]. • 1 - generates pause frames according to

the RX buffer threshold on the specified priority.

• 0 - never generates pause frames on the specified priority.

vlan_filter Enables VLAN filter • 1 - enabled• 0 - disabled Default: 0

rx_ring_size Rx Ring size. Must be power of 2.

64-4096Default: 512

tx_ring_size Tx Ring size. Must be power of 2.

64-4096Default: 512

Table 3 - nmlx4_rdma Parameters

Name Description Value

dscp_to_pcp1

1. Cannot be enabled when pcp_force is active.

Map the three MSBs of DSCP value to PCP on outgoing RoCE traffic.

• 0 - Disabled• 1 - EnabledDefault: 0

pcp_force2

2. Cannot be active when dscp_to_pcp is enabled.

PCP value to force on out-going RoCE traffic.

• -1 - Disabled• 0-7 - PCP value to forceDefault: -1

Table 2 - nmlx4_en Parameters

Name Description Value

v 3.16.11.6 11Mellanox Technologies

Page 12: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Specifically, when creating a QP, the user needs to specify the maximum number of outstanding work requests that the QP supports. This value should not exceed the queried capabilities. How-ever, even when you specify a number that does not exceed the queried capability, the verbs can still fail since some other factors such as the number of scatter/gather entries requested, or the size of the inline data required, affect the maximum possible work requests. Hence an application should try to decrease this size (halving is a good new value) and retry until it succeeds.

Rev 3.16.11.612 Mellanox Technologies

Page 13: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Installation

Re

2 InstallationThis chapter describes how to install and test the Mellanox NATIVE ESX package on a single host machine with Mellanox Ethernet adapter hardware installed.

2.1 Hardware and Software Requirements

2.2 Installing Mellanox NATIVE ESX Driver for VMware vSphere

To install the driver:

1. Log into the ESXi server with root permissions.

2. Install the driver.

Example:

3. Reboot the machine.

4. Verify the driver was installed successfully.

Table 4 - Software and Hardware Requirements

Requirements Description

Platforms A server platform with an adapter card based on one of the following Mellanox Technologies’ HCA devices:• MT27508 ConnectX®-3 (VPI, EN) (firmware: fw-ConnectX3)• MT4103 ConnectX®-3 Pro (VPI, EN) (firmware: fw-ConnectX3Pro)

Device ID For the latest list of device IDs, please visit Mellanox website.

Operating System ESXi 6.5 Operating System.

Installer Privileges The installation requires administrator privileges on the target machine.

Please uninstall any previous Mellanox driver packages prior to installing the new ver-sion.

#> esxcli software vib install –d <path>/<bundle_file>

#> esxcli software vib install -d <path>/MLNX-NATIVE-ESX-ConnectX-3-3.15.2.0-10EM-600.0.0.2768847.zip

# esxcli software vib list | grep mlxnmlx4-core 3.15.2.0-1OEM.600.0.0.2768847 MEL PartnerSupported 2016-03-03 nmlx4-en 3.15.2.0-1OEM.600.0.0.2768847 MEL PartnerSupported 2016-03-03 nmlx4-rdma 3.15.2.0-1OEM.600.0.0.2768847 MEL PartnerSupported 2016-03-03

After the installation process, all kernel modules are loaded automatically upon boot.

v 3.16.11.6 13Mellanox Technologies

Page 14: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

2.3 Removing Mellanox OFED Driver

To remove all the drivers:

1. Log into the ESXi server with root permissions.

2. List the existing NATIVE ESX driver modules. (see Step 4 in Section 2.2, on page 13)

3. Remove each module.

4. Reboot the server.

2.4 Loading/Unloading Driver Kernel Modules To unload the driver:

To load the driver:

To restart the driver:

Please unload the driver before removing it.

#> esxcli software vib remove -n nmlx4-rdma #> esxcli software vib remove -n nmlx4-en#> esxcli software vib remove -n nmlx4-core

To remove the modules, the command must be run in the same order as shown in the example above.

esxcfg-module -u nmlx4_rdmaesxcfg-module -u nmlx4_enesxcfg-module -u nmlx4_core

/etc/init.d/sfcbd-watchdog stopesxcfg-module nmlx4_coreesxcfg-module nmlx4_enesxcfg-module nmlx4_rdma/etc/init.d/sfcbd-watchdog startkill -POLL $(cat /var/run/vmware/vmkdevmgr.pid)

/etc/init.d/sfcbd-watchdog stopesxcfg-module -u nmlx4_rdmaesxcfg-module -u nmlx4_enesxcfg-module -u nmlx4_coreesxcfg-module nmlx4_coreesxcfg-module nmlx4_enesxcfg-module nmlx4_rdma/etc/init.d/sfcbd-watchdog startkill -POLL $(cat /var/run/vmware/vmkdevmgr.pid)

Rev 3.16.11.614 Mellanox Technologies

Page 15: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Installation

Re

2.5 Firmware Programming1. Download the VMware bootable binary images v3.8.0 from the Mellanox Firmware Tools

(MFT) site.

• File: mft-3.8.0.56-10EM-600.0.0.2295424.x86_64.vib

MD5SUM: 083baec399de55a181f5b26613ae0829

• File: nmst-3.8.0.56-1OEM.600.0.0.2295424.x86_64.vib

MD5SUM: 0426a9ab6e759ad44942d5061a6e9cfe

2. Install the image according to the steps described in the MFT User Manual.

The following procedure requires custom boot image downloading, mounting and boot-ing from a USB device.

v 3.16.11.6 15Mellanox Technologies

Page 16: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

3 Features Overview and Configuration

3.1 VXLAN Hardware OffloadVXLAN hardware offload enables the traditional offloads to be performed on the encapsulated traffic. With ConnectX®-3 Pro, data center operators can decouple the overlay network layer from the physical NIC performance, thus achieving native performance in the new network architecture.

3.1.1 Configuring VXLAN Hardware OffloadVXLAN hardware offload includes:

• TX: Calculates the Inner L3/L4 and the Outer L3 checksum

• RX:

• Checks the Inner L3/L4 and the Outer L3 checksum

• Maps the VXLAN traffic to an RX queue according to:

• Inner destination MAC address

• Outer destination MAC address

• VXLAN ID

VXLAN hardware offload is enabled by default. However, if it was disable and you want to re-enable it, enable the nmlx4_core module parameters "enable_vxlan_offloads" and "enable_dmfs" (setting the parameters to 1).

To enable VXLAN hardware offload:

To disable VXLAN hardware offload:

Except for the module parameters set above, the rest of VXLAN configuration is done in the ESX environment via VMware NSX manager. For additional NSX information, please refer to VMware documentation, see: http://pubs.vmware.com/NSX-62/index.jsp?topic=%2Fcom.vmware.nsx.install.doc%2FGUID-D18A11DF-3D85-4B80-8713-D611648D43F4.html.

Additional information can be found at: http://dailyhypervisor.com/vmware-nsx-for-vsphere-6-1-step-by-step-installation/

esxcli system module parameters set -m nmlx4_core -p 'enable_vxlan_offloads=1'esxcli system module parameters set -m nmlx4_core -p 'enable_dmfs=1'

esxcli system module parameters set -m nmlx4_core -p 'enable_vxlan_offloads=0'

16

Rev 3.16.11.6Mellanox Technologies
Page 17: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Features Overview and Configuration

Re

3.2 Packet Capture UtilityPacket Capture utility duplicates all traffic, including RoCE, in its raw Ethernet form (before stripping) to a dedicated "sniffing" QP, and then passes it to an ESX drop capture point.

It allows gathering of Ethernet and RoCE bidirectional traffic via pktcap-uw and viewing it using regular Ethernet tools, e.g. Wireshark.

3.2.1 ComponentsPacket Capture Utility is comprised of two components:

• ConnectX-3 RoCE module sniffer:

This component is part of the Native ConnectX-3 RoCE driver for ESX and resides in Kernel space.

• RoCE management interface:

User space utility which manages the ConnectX-3 Packet Capture Utility

3.2.2 Usage Step 1. Installed the latest ConnectX-3 driver bundle.

Step 2. Make sure all Native nmlx4 drivers are loaded.

Step 3. Install the RoCE management interface using the supplied VIB: MEL-ESX-nmlx4_sniffer_mgmt-user-<version>.vib

When the management interface is installed the following executable is added:

This executable allows the user the following basic packet capture utility operations: query, enable or disable.

Usage of the tool is shown by activating the help menu:

By nature, RoCE traffic is much faster than ETH. Meaning there is a significant gap between RDMA traffic rate and Capture rate.

Therefore actual "sniffing" RoCE traffic with ETH capture utility is not feasible for long periods.

esxcli system module list | grep nmlxnmlx4_core true truenmlx4_rdma true truenmlx4_en true true

esxcli software vib install -v <path to bundle>/ MEL-ESX-nmlx4_sniffer_mgmt-user-<version>.vib

/opt/mellanox/bin/nmlx4_sniffer_mgmt-user

/opt/mellanox/bin/nmlx4_sniffer_mgmt-user -h

v 3.16.11.6 17Mellanox Technologies

Page 18: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Options:

Step 4. Determine the RoCE device name.

Step 5. Enable the packet capture utility for the required device(s).

Step 6. Use ESX internal packet capture utility to capture the packets.

Step 7. Generate the RoCE or ETH traffic.

Step 8. Stop the capture.

Step 9. Disable the packet capture utility.

3.2.3 Limitations• Capture duration: Packet Capture Utility is a debug tool, meant to be used for bind fail-

ure diagnostics and short period packet sniffing. Running it for a long period of time with stress RDMA traffic will cause undefined behavior. Gaps in capture packets may appear.

• Overhead: A significant performance decrease is expected when the tool is enabled:

• The tool creates a dedicated QP and HW duplicates all RDMA traffic to this QP, before stripping the ETH headers.

• The captured packets reported to ESX are duplicated by the network stack adding to the overhaul execution time

• Drop capture point: The tool uses the VMK_PKTCAP_POINT_DROP to pass the cap-tured traffic. Meaning whomever is viewing the captured file will see all RDMA capture in addition to all the dropped packets reported to the network stack.

• ESX packet exhaustion: During the enable phase (/opt/mellanox/bin/nmlx4_sniff-er_mgmt-user -a vmrdma3 -e) the Kernel component allocates sniffer resources, and among these are the OS packets which are freed upon tool’s disable. Multiple consecu-tive enable/disable calls may cause temporary failures when the tool requests to allocate

-h , --help Print the help message and exit -a , --rdmadev-alias RDMA Device Alias (Mandatory) -e , --sniffer-enable Enable RDMA Sniffer -d , --sniffer-disable Disable RDMA Sniffer -q , --sniffer-query-status Query Sniffer Status

esxcli rdma device listName Driver State MTU Speed Paired Uplink Description ------- ---------- ------ ---- ------- ------------- -------------------------------vmrdma0 nmlx4_rdma Down 1024 0 vmnic5 MT27520 Family [ConnectX-3 Pro]vmrdma1 nmlx4_rdma Down 1024 0 vmnic1000502 MT27520 Family [ConnectX-3 Pro]vmrdma2 nmlx4_rdma Active 4096 40 Gbps vmnic4 MT27520 Family [ConnectX-3 Pro]vmrdma3 nmlx4_rdma Active 4096 40 Gbps vmnic1000402 MT27520 Family [ConnectX-3 Pro]

/opt/mellanox/bin/nmlx4_sniffer_mgmt-user -a <rdma_device> -e

pktcap-uw --capture Drop --o <capture_file>

/opt/mellanox/bin/nmlx4_sniffer_mgmt-user -a vmrdma3 -d

18

Rev 3.16.11.6Mellanox Technologies
Page 19: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Features Overview and Configuration

Re

these packets. It is recommended to allow sufficient time between consecutive disable and enable to fix this issue.

v 3.16.11.6 19Mellanox Technologies

Page 20: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

4 TroubleshootingYou may be able to easily resolve the issues described in this section. If a problem persists and you are unable to resolve it yourself please contact your Mellanox representative or Mellanox Support at [email protected].

4.1 General Related Issues

4.2 Ethernet Related Issues

Table 5 - General Related Issues

Issue Cause Solution

The system panics when it is booted with a failed adapter installed.

Malfunction hardware compo-nent

1. Remove the failed adapter.2. Reboot the system.

Mellanox adapter is not identified as a PCI device.

PCI slot or adapter PCI con-nector dysfunctionality

1. Run lspci. 2. Reseat the adapter in its PCI slot or

insert the adapter to a different PCI slot. If the PCI slot confirmed to be func-tional, the adapter should be replaced.

Mellanox adapters are not installed in the system.

Misidentification of the Mella-nox adapter installed

Run the command below to identify the Mellanox adapter installed. lspci | grep Mellanox'

Table 6 - Ethernet Related Issues

Issue Cause Solution

No link. Mis-configuration of the switch port or using a cable not supporting link rate.

• Ensure the switch port is not down• Ensure the switch port rate is configured

to the same rate as the adapter's port

No link with break-out cable.

Misuse of the break-out cable or misconfiguration of the switch's split ports

• Use supported ports on the switch with proper configuration. For further infor-mation, please refer to the MLNX_OS User Manual.

• Make sure the QSFP break-out cable side is connected to the SwitchX.

Physical link fails to negotiate to maximum supported rate.

The adapter is running an out-dated firmware.

Install the latest firmware on the adapter.

Physical link fails to come up.

The cable is not connected to the port or the port on the other end of the cable is dis-abled.

Ensure that the cable is connected on both ends or use a known working cable

Rev 3.16.11.620 Mellanox Technologies

Page 21: Mellanox ConnectX-3 NATIVE ESXi Driver for VMware …...this hardware, software or test suite product (“product(s)”) and its related documentation are provided by mellanox technologies

Troubleshooting

Re

4.3 Installation Related Issues

Table 7 - Installation Related Issues

Issue Cause Solution

Driver installation fails. The install script may fail for the following reasons:• Failed to uninstall the pre-

vious installation due to dependencies being used

• The operating system is not supported

• Uninstall the previous driver before installing the new one

• Use a supported operating system and kernel

v 3.16.11.6 21Mellanox Technologies