我习惯认为 USB 传输对于数据来说是安全的,也就是说 USB 不会增加数据存储的不可靠性程度。
但是,我读到过,就其可靠性而言,USB 并不总是数据传输的最佳选择。例如,在 RAID 中使用 USB 磁盘似乎不是一个好主意。
我想知道数据丢失的风险是否特定于 RAID 的工作方式,或者是每个 USB 传输所固有的。
答案1
USB 数据路径受到双方校验和的保护。
https://www.beyondlogic.org/usbnutshell/usb3.shtml
(注意 USB 数据包结构中的 CRC 字段)
这是来自原始 USB 规范的引述:
8.3.5 循环冗余校验
在 USB 线的两端,硬件(PIC USB 外设和 PC 上的主机控制器)检查 CRC 以检测数据包错误(#1)。对于控制、中断和批量事务,错误的发生由两端共享,因为事务中缺少(未及时)握手(ACK)数据包(#2)。然后,主机控制器重试事务两次(错误更正)。在第三个错误时,主机控制器向 PC 驱动程序报告传输错误(#3)。在 Isoc 事务中,检测到错误,但错误处理取决于 USB 协议上的应用程序。
您可以在此处下载完整的 USB 2.0 规范以供参考:
https://www.usb.org/document-library/usb-20-specification
希望这有帮助!