SSD in external USB 3.0 closure not recognized as SSD

I've brought an SSD and external closure that supports UASP and USB 3.0. The drive is recognized and the speed is ok. But the drive is recognized as normal hard drive by Windows (8.1). I.e. when I try to optimize the SSD volume it begins to defragment it instead of issuing TRIM command.

My question is what characteristics should an external hdd closure have to have to allow Windows to recognize it as real SSD drive? Is it possible at all with USB 3.0 interface or I need an eSATA interface?


Solution 1:

This is what wikipedia says about the Trim command :

The TRIM command specification is being standardized as part of the AT Attachment (ATA) interface standard, led by Technical Committee T13 of the International Committee for Information Technology Standards (INCITS). TRIM is implemented under the DATA SET MANAGEMENT command (opcode 06h) the draft ACS-2 specification. The ATA standard is supported by both parallel (IDE, PATA) and serial (SATA) ATA hardware.

Conclusion : TRIM is only for drives connected via IDE and SATA variants, so does not apply to USB.

Solution 2:

USB Mass Storage Class in fact speaks SCSI commands, which then translated to ATA commands by the USB closure controller chip then speaks to the internal disk. The actual issue that prevent the TRIM ATA command to be used is that the USB closure controller doesn't support SCSI UNMAP to ATA TRIM command translation thus the operating system can't issue TRIM command to the internal disk.

Currently (as of 2016/6/21) most of the USB to SATA bridge solutions don't support this feature, but exists some exceptions like Jmicron 578 which, although claimed support of SCSI UNMAP command, seems to have certain flaw on its implementation.

Make sure to ask the manufacturer if the USB closure supports SCSI UNMAP to ATA TRIM translation before buying it next time!

Reference

USB外置存储Trim功能测试_技术论坛_PCEVA,PC绝对领域,传播真正的电脑知识