Technical guide

USB UASP vs BOT for External Storage

Understand USB Attached SCSI (UAS/UASP), Bulk-Only Transport (BOT), command queuing, Windows drivers, and why the USB transport alone does not determine external-drive speed.

On this page
  1. UASP and BOT are storage transports, not USB speed grades
  2. Why UAS can handle queued storage work more efficiently
  3. Windows exposes the transport through different storage drivers
  4. UASP support has to exist across the usable device path
  5. Do not turn protocol capability into an invented performance number
  6. BOT remains a compatibility path, not a synonym for USB 2.0
  7. What to verify when choosing or diagnosing an external enclosure

UASP and BOT are storage transports, not USB speed grades

An external SSD can use the same physical USB connector and the same nominal USB link while presenting storage commands through different transport protocols. USB Attached SCSI (UAS), commonly marketed as UASP, was designed as a newer USB mass-storage transport than Bulk-Only Transport (BOT). The transport describes how storage commands and their data move across USB; it is not another name for USB 5Gbps, 10Gbps, 20Gbps, or a connector type.

That distinction matters when reading enclosure specifications. A product can advertise UASP support without promising a particular file-copy speed, because the final result still depends on the host controller, negotiated USB link, cable, bridge/controller implementation, storage device, workload, filesystem, operating system, and thermal behavior. UASP is one layer in that path, not a benchmark result.

UAS/UASP and BOT solve the same storage-transport job differently
Layer or behaviorUAS / UASPBOT
PurposeCarry SCSI storage commands over USB using the UAS transportCarry USB mass-storage commands using Bulk-Only Transport
Windows class driverUaspstor.sysUsbstor.sys
Command handlingDesigned to support multiple commands in parallelEstablished simpler mass-storage transport
USB streamsCan use USB 3.x bulk streams when the hardware path supports themDoes not use the UAS bulk-stream model
What it does not proveA specific throughput, latency, SSD speed, USB link rate, or connector capabilityThat the USB link or storage device itself is necessarily slow

Why UAS can handle queued storage work more efficiently

Microsoft describes UAS as designed to improve on BOT by reducing protocol overhead, supporting SATA Native Command Queuing (NCQ), and processing multiple commands in parallel. On a compatible SuperSpeed path, UAS can use the USB bulk-stream mechanism introduced with USB 3.0 so multiple transfers can be associated with separate stream identifiers instead of forcing all work through one undifferentiated bulk sequence.

The Linux kernel documentation describes the same underlying streams capability: USB bulk streams let a driver queue multiple transfers on a bulk endpoint, and UAS uses streams to queue multiple SCSI commands. This architecture is most relevant when there is useful command-level concurrency. It should not be converted into a universal percentage advantage for every sequential copy or every enclosure.

Windows exposes the transport through different storage drivers

Microsoft documents Uaspstor.sys as the Windows mass-storage class driver for UAS and Usbstor.sys as the driver that uses BOT. UAS support was added to Windows with Windows 8 and Windows Server 2012. On hardware that supports USB streams, Uaspstor.sys can use that capability; Microsoft also documents software-stream support for cases where the device operates at High Speed.

Seeing Uaspstor.sys therefore tells you something useful about the active Windows storage path, but it still does not reveal the negotiated USB signaling rate, the bridge chipset quality, or the drive media performance. Conversely, seeing Usbstor.sys identifies the BOT path rather than proving that a cable, port, or SSD is defective.

UASP support has to exist across the usable device path

For an external SATA or NVMe enclosure, the storage device is usually behind a USB-to-storage bridge. The enclosure or bridge must expose the appropriate UAS interface, and the operating system must bind a compatible driver. Host-controller capabilities also matter for hardware streams. A UASP logo or product-page claim on the enclosure cannot upgrade an unrelated bottleneck elsewhere in the connection.

Keep this separate from ordinary USB link negotiation. A USB-C connector does not guarantee UASP, and UASP does not guarantee a particular USB data rate. Likewise, a fast USB link cannot make a slow storage device deliver its theoretical signaling rate. When diagnosing performance, identify the transport and the negotiated link as separate facts.

Do not turn protocol capability into an invented performance number

UAS has architectural advantages for queued work, but the size of any real performance difference is workload- and implementation-dependent. Large sequential transfers may be constrained mainly by the storage media or USB link, while workloads with multiple outstanding operations can make command concurrency more relevant. Queue depth, request size, caching, filesystem behavior and the enclosure controller all change what reaches the wire.

For that reason, a claim such as “UASP is always X percent faster” is not defensible without measurements of the exact devices and workload. The USB-IF specification defines the protocol; it does not promise one consumer benchmark delta. Product-specific performance belongs in reproducible testing of the complete host, cable, enclosure, drive and workload.

BOT remains a compatibility path, not a synonym for USB 2.0

Microsoft notes that its BOT-based Usbstor.sys driver works with all device speeds, including SuperSpeed USB devices. That is an important boundary: BOT is not restricted to USB 2.0, just as UAS is not itself a USB 3.x speed grade. Transport protocol and physical/link speed are separate layers.

This also explains why troubleshooting should begin by identifying what the system actually negotiated rather than assuming from the connector or enclosure label. If an external drive performs unexpectedly, verify the active USB link, storage transport, cable and port, then test the drive and enclosure behavior. Changing only one layer may leave the real bottleneck untouched.

What to verify when choosing or diagnosing an external enclosure

Check the enclosure specification for UAS/UASP support, the supported USB data mode, and the storage interface behind the bridge. Then verify the host port and cable can provide the intended USB mode. In Windows, the loaded storage driver can help distinguish the UAS and BOT paths; on Linux, the active driver and USB descriptors provide similar evidence.

Treat those checks as a compatibility map rather than a buying verdict. UASP support is a useful capability for modern external storage, but it does not replace product-specific evidence about sustained writes, random I/O, thermals, firmware stability, power behavior, or the performance of the installed SSD or hard drive.

Sources

Primary and technical sources

Technical details can vary by exact model, firmware, and platform. These are the sources used for the factual claims in this article.

  1. 01 Microsoft Learn

    USB in Windows FAQ: Uaspstor.sys, Usbstor.sys, UAS, BOT, NCQ, and streams
  2. 02 USB Implementers Forum

    USB Attached SCSI Protocol (UASP) v1.0 specification
  3. 03 Linux Kernel documentation

    USB bulk streams documentation
  4. 04 Linux Kernel documentation

    SCSI interfaces guide: protocol versus transport bus

Related

Technical guide

How to Back Up Installed Drivers in Windows 11

Export third-party driver packages from the Windows 11 driver store with PnPUtil, preserve them before a reinstall, and understand what the backup does and does not contain.