NVMe 2.x eLearning Course

Instructor(s): Mike Jackson

Equivalent of: 4-day course

Subscription Length: 120 days

$1595

Course price

We can create a live corporate training for you:

What's Included

NVMe Modules PDF Slides Thumbnail PCIe eBook Course completion certificate
NVMe 2.x eLearning modules
(unlimited access for 120 days)
PDF of Course Slides
(yours to keep, does not expire)
PCI Express eBook
(yours to keep, does not expire)
Course Completion Certificate
(boost your resume / CV)

 

Purchasing this NVMe 2.x eLearning course will provide the materials shown above, but also includes:

You Will Learn

  • Basics of the NVMe Host Controller Interface model
  • The steps for device initialization
  • How command queues are set up and managed
  • How the host software
    • Informs the controller of new commands to execute
    • Learns that commands have been completed
  • The list of defined commands and how they work
  • How error reporting structures are defined
  • Power management options
  • The new features added with the more recent revisions to the spec (thru 2.2)
  • An overview of the storage fabrics in use today, and their strengths and weaknesses
  • The changes needed for NVMe to work in a fabric environment
  • How an NVMe host finds and accesses drives on a fabric
  • How NVMe-oF provides a combination of attractive features for a storage fabric

Course Description

Covered in the NVMe 1.4 eLearning course (included)

  • PCIe Architecture Overview
    • Introduction
    • Basic operation
    • Transaction types
    • Layers and responsibilities overview
  • NVMe Introduction
    • NVMe concepts and definitions
    • Comparison with SATA
    • NVMe Host-Controller Interface overview
    • Queue Management
      • Doorbell Head and Tail registers
      • Execution sequence
      • Tracking completion status
  • Commands
    • NVMe Admin Commands
    • General Structure of commands
    • Identify command options and results
    • Creation and management of Queues
    • Asynchronous Event Notification
    • NVMe IO Commands
      • Read and Write command structure
      • Optimizing write commands
      • Avoiding write amplification
      • Buffer addressing modes (PRPs vs. SGLs)
      • Priority and Arbitration of commands
      • Completing commands
      • Handling Metadata (DIF/DIX)
      • Get Features / Set Features – full coverage of features
  • Architecture
    • Error reporting, Error Reporting Structures
      • Asynchronous Events
      • Completion status
      • Log pages
    • Other log pages
    • Firmware updates
    • Controller registers
    • Controller initialization
    • Power Management
    • Reservations
  •  Other NVMe commands
    • Write uncorrectable
    • Write zeroes
    • Compare
    • Dataset management
    • Configuration overview
  • Summary of changes for 1.3
    • Boot partitions
    • Thermal management by host
    • Write streams
    • Deallocation
    • Virtualization support
    • Debug support – Telemetry, initiated by host or device
    • Self-test options
    • Sanitize command
    • New commands
  • Summary of changes for 1.4
    • NVM Sets
    • I/O Determinism
    • Read recovery levels
    • Persistent Memory Region (PMR)
    • Asymmetric Namespace Access (ANA)
    • Namespace write protect
    • Persistent event log
    • Rebuild assist
    • Endurance groups
    • I/O Performance and Endurance Hints
    • Traffic-based Keep Alive
    • Vendor-specific UUIDs
    • Verify - new command
    • Administrative controller
    • SQ Associations

 

Covered in the NVMe 2.x eLearning course (included)

  • Summary of select updates from 2.0 through 2.3 specs
    • Simple copy command 
    • Domains and Partitioning
    • NVM Set and Endurance Group Management
    • Command and Feature Lockdown
    • NVMe KV
    • Zoned Namespaces
    •  Namespace types
    • IO Command Set Independent Data Structure
    • Rotational media support
    • Command and Effect Log (CEL) Enhancements
    • Non-MDT Command Size Limits
    • CMB Write Elasticity Status
    • Multiple Controller Firmware Update
    •  Telemetry Log Size Changes
    • Telemetry Enhancements
    • Namespace Attachment Limits
    • Time To Ready Enhancements
    • Graceful Disconnection
    • Persistent Event Log Context Counter
    •  SGL Optimizations
    • Protection Information Enhancement
    • ZNS Status Code and Async Notification
    •  Aborting Commands During Format NVM Command
    • Multiple Controller Shutdown Enhancement
    •  Persistent Event Log (PEL) State and Source Reporting
    • Get Log Page Index Offsets
    • In-band Authentication Protocol for NVMe over Fabrics
    • Transport Layer Security (TLS) 1.3 Support
    • Set/Get Features Ported from NVMe-MI to the NVMe 2.0 Base Spec
    •  Boot Partition Read Access using OOB
    • Additional Controller Metadata Types

 

Covered in the NVMe-oF eLearning course (included)

  • Introduction
    • Motivation for moving NVMe to fabrics
      • Improve storage network performance
      • Avoid limitations of PCIe, extend NVMe protocol to the fabric
      • Optimize access latency across the network
    • Differences from base NVMe
    • Initialization Background
  • Fabric Discovery
    • Discovery Service, Discovery Controllers
    • Discovery Mechanism
  • NVMe-oF Initialization
    • Fabrics Commands
    • Device Setup
    • Transport mapping/binding RDMA
    • Introduction to RDMA (Remote Direct Memory Access)
    • Protocol Translation
    • RDMA Examples
  • RDMA Concepts
    • Motivation: Kernel bypass – reduce CPU involvement
    • Zero-copy operation when possible
    • RNIC (RDMA-aware Network Interface Card)
    • Pinned remote memory and storage
    • Command-based Flow Control
    • Read and Write Command Examples
  • NVMe-oF Details
    • Controller Initialization
    • Connections and Associations
    • Static vs. Dynamic Controller model
    • Properties instead of registers
    • Authentication
    • Encapsulation
    • Accessing RDMA Queue pairs
    • Data transfer: Command, Response, Data, Flow Control
    • Fabrics Commands and Responses
  • RNIC Details
    • Software Layers
    • RDMA Verbs
    • Memory Regions and Windows
  • Ethernet overview
    • TCP/IP: addressing, layers, packets
    • RDMA models added to it: RoCE and iWARP
      • Overview of iWARP
        • Added to TCP/IP, so packets are routable and don’t need DCB
        • Messages
        • Layers
        • Advantages and disadvantages
      • Overview of RoCE
        • Version 2 packets include routing information, version 1 did not
        • Use of Data Center Bridging (DCB) to manage routing
        • Flow control
        • Soft RoCE
        • Advantages and disadvantages

Course Content

Module 1a: Intro and Flexible Data Placement
Intro to course, motivation for changes, NVMe family of specs, write amplification problem, basic SSD operation, review of methods to reduce Write Amplification Factor (WAF)

44min to complete

Module 1b: Flexible Data Placement
FDP supporting structures (reclaim units, groups, handles), data isolation options and considerations

22min to complete

Recommended Prerequisites

None

Benefits of eLearning

Access to the Instructor

Ask questions to the MindShare Instructor that taught the course

Cost Effective

Get the same information delivered in a live MindShare class at a fraction of the cost

Available 24/7

MindShare eLearning courses are available when and where you need them

Learn at Your Pace

MindShare eLearning courses are self-paced, so you can process when you're ready