This Is USB-to-USB data transfer between two Linux OSes possible? question and the answer is USB 2.0 which is simply outdated. As USB 3.0 is much faster than simple Gigabit Ethernet and I want to connect a laptop and a desktop both with SSDs, this would be a great solution. If it's possible.
Yes, USB 3.0 makes full duplex data transfer possible, with 3.0 cabling. The specs are in section 5.5.2 of the USB specs. The link to those specs is given earlier in another answer. http://www.gaw.ru/pdf/interface/usb/USB%203%200_english.pdf
Cables are becoming easier to find- they can be bought on Amazon, for example, for under $8.00. be sure to buy DATA TRANSFER, male A to male A cables. Newer versions of Linux support the transfer.
I hope that helps someone- I searched for the answer for quite a while myself.
While this doesn't seem to be availabe, there are dual Gigabit Ethernet adapters (make sure to get a real dual NIC and not a NIC + switch) and that's 2GBit. Disappointing. Then it's down to bonding the two together. In my case, the desktop have spare PCI Express x1 ports so I will get a dual NIC card instead of converting USB 3.0 there. For the laptop, USB 3.0 expresscard (they make ones with practically disappearing ports) and an adapter seems to be the easiest.
And since we are bonding, the laptop and the desktop both have gigabit Ethernet already so I can reach 3gbit/s theoretically which is quite good for syncing two machines which are limited by SATA speeds.
Found some info about this on the linux-usb mailing list, from Feb 2012:
The xHCI spec describes a debug port to connect two hosts together, but a debug port is optional and almost none of the xHCI hosts currently on the market actually have them. Also, as Alan said, there isn't any Linux software to support it.
I can't find anything newer to contradict this, so looks like it's a not the way to go. I would bet that even if it did work, the fact that it uses a debug port is going to slow things down considerably. Plus some systems only designate a single USB connector as debug-enabled, so not only would this male-to-male cable only work on certain machines, but only on one USB port on those machines as well!
I did find information on a Prolific PL2701 IC that can bridge two USB3 hosts, in a similar way to the older USB2 bridge cables. It says it supports RNDIS (network emulation), mass storage, and some other protocols. So looks like USB3 doesn't alleviate the need for a special bridge cable to connect two PCs.
No; it is not possible. USB is a master/slave ( host/device ) protocol. You can only connect devices to a host, and a host can only be connected to devices. The USB On The Go addition allows for some gadgets ( limited to cell phones and tablets ) to act as one, or the other, depending on what it is connected to, but desktop PCs are host only and so can not be connected to each other.