I have two sets of USB 3.0 magnetic drives, each set connected to its own USB 3.0 hub, each of which in turn is connected to its own USB 3.0 root hub on my host (where the bunch of devices are soft RAID:ed together).

The bandwidth of each "path" is saturated, in the sense that RAID data rate is limited by the root hub data rate, not by individual drives.

Let's say that I bought a 2-port USB 3.1 Gen-2 expansion card.

As far as I have understood, the two protocols use the same set of pins/wires (Reference: https://www.synopsys.com/designware-ip/technical-bulletin/achieving-10-gbps.html), where

USB 3.1 Gen 1 (USB 3.0) specifies a theoretical physical data rate of 5x1 Gbps.

USB 3.1 Gen 2 specifies a theoretical physical data rate of 5x2 Gbps.

Ignoring overhead such as discussed in the article, could I theoretically connect the two existing Gen-1 hubs to the single Gen-2 root hub, and fully utilize that card's bandwidth?

[EDIT] Ali Chen mentioned the use of "store-and-forward" in USB 3.1 G2 hubs, which led me to find the following:

"With Multiple INs, the USB 3.1 [Gen 2] host sends an IN request to both devices and the hub buffers the data coming from the 5Gbit/s USB 3.0 device and transmits it whenever there's capacity on the upstream port, maximising the use of the available bandwidth" http://www.techdesignforums.com/practice/technique/understanding-usb-3-1-protocol/

  • 1
    Sad truth: USB controller firmware is not as great as it could be. I think you'll find that aside from very specific types of load, it's hard to saturate the wire, as the controllers throttle significantly before, or just crash under high bulk transfer load (looking at you ASmedia) – Marcus Müller Sep 7 '17 at 17:47
  • I don't expect rates anywhere near theoretical maxima anywhere :), I was more thinking conceptually: "Is Gen-2 = 2x Gen-1? / Can I migrate this way? When 10Gbps (20Gbps) arrives, can I just aggregate pieces of old network?" – marcusaux Sep 7 '17 at 19:53
  • 1
    @MarcusMüller, no, you are likely looking at SNPS :-( – Ale..chenski Sep 7 '17 at 23:54

The answer is: Yes. One SuperSpeedPlus (SS+) host controller is equivalent to two individual regular SuperSpeed (SS) controllers in terms of aggregate bandwidth.

This is true even if you have a SS+ hub between SS+ root and your SS devices. This is because the SS+ architecture is more advanced: the SS+ hubs, instead of being simple repeater/forwarders as in SS architecture, now have so-called "store and forward" architecture, see page 3-15 and Figure 3-8 of USB 3.1 Specifications (provided by usb.org as a part of huge zip file).

ADDITION. A brief overview of architectural improvements in USB 3.1 Gen 2 protocols can be found here. Essentially the SS+ (or SSP) adds substantial local buffering for packets, and looks similar to the idea of split transactions in USB2 Transaction Translator architecture.

| improve this answer | |
  • Interesting information, thank you for the answer. Could you please clarify whether this aggregation would work in my specific case? I have read bits about "store and forward" and "split transactions" elsewhere also, about USB 1.1 / USB 2.0 coexisting, hub aggregating slower devices on high-speed link, but I don't feel confident. – marcusaux Sep 7 '17 at 19:48
  • Never mind, your answer lead me to read about store-and-forward elsewhere. Great, thank you! – marcusaux Sep 7 '17 at 21:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy