Advanced iSCSI Options - Tuning, iSER, RDMA, FC, Etc

Problem/Justification
Currently, Scale users are unable to set advanced iSCSI parameters or utilize other features of SCST project. An example is below, where you might like to set these settings or capabilities:

  1. Set advanced iSCSI target parameters like:
    “MaxRecvDataSegmentLength=262144,
    MaxXmitDataSegmentLength=262144,
    FirstBurstLength=262144,
    MaxBurstLength=1048576,
    MaxOutstandingR2T=16,
    ImmediateData=Yes,
    InitialR2T=No,
    MaxConnections=4,
    QueuedCommands=256”

  2. Edit the /etc/scst.conf file to manually add the advanced settings, as the middleware overwrites the file.

Impact

There’s mismatches between the settings initiators might use and what TrueNAS is offering/set for.

There’s no capability to use advanced tuning for specific workloads, scenarios, or add other features that the operating system and scst currently supports.

Adding the capability to allow users to tune settings allows for experimentation, learning, perfecting environments.

Disadvantage is more complicated setup, but I recommend the advanced settings be separate or an additional panel not presented by default.

User Story

You’re setting up your homelab/community based shared storage target, possibly for virtualization or remote drive storage.

After setting up the basics of an iSCSI implementation, depending on your storage initiator, it may have different parameters from what TrueNAS is set for.

Users decide to tune or compare TrueNAS iSCSI settings with other vendor recommendations or try to match settings from initiators like Proxmox, ESXi, HyperV, etc.

Users may wish to try using higher performance adapters, or old/used adapters: Intel Ethernet, Chelsio, Mellanox, QLogic, and they should be able to set mins/max lengths, queue length, etc and check some boxes for RDMA, iSER, FC if their hardware supports it.

2 Likes