Ubuntu – How to network two computers together using Thunderbolt 3

networkingthunderbolt

I have two computers, and I need to transfer a (very) large file between them.

Both computers are Thunderbolt 3 compatible, and I have a passive Thunderbolt cable ready to use.

Is there a way I can set up a direct peer-to-peer network between these two devices over this cable? I would rather avoid using adapters to Ethernet so that I can keep the theoretical max speed that Thunderbolt offers.

I've found this post on the kernel mailing list, but I have no idea how to use it, or if it's even available for me to use.

Both computers are running Ubuntu 16.04 with kernel 4.10 installed on them.

Best Answer

ThunderBolt 3 User Space tools

These are the ThunderBolt 3 User Space tools that work with Kernel Version 4.13 and higher. They were revised 6 days ago (December 4, 2017).

Summary from link

Overview

Thunderboltâ„¢ technology is a transformational high-speed, dual protocol I/O that provides unmatched performance with up to 40Gbps bi-directional transfer speeds. It provides flexibility and simplicity by supporting both data (PCIe, USB3.1) and video (DisplayPort) on a single cable connection that can daisy-chain up to six devices.

Features

The user-space components implement device approval support:

  1. Easier interaction with the kernel module for approving connected devices.
  2. ACL for auto-approving devices white-listed by the user.

tbtacl

tbtacl is intended to be triggered by udev (see the udev rules in tbtacl.rules). It auto-approves devices that are found in ACL.

tbtadm

tbtadm is a user-facing CLI tool. It provides operations for device approval, handling the ACL and more.

Supported OSes

  • Ubuntu* 16.04 and 17.04
  • Fedora* 26
  • Clear Linux*

Kernel/Daemon Compatibility

The user-space components operate in coordination with the upstream Thunderbolt kernel driver (found in v4.13) to provide the Thunderbolt functionalities. These components are NOT compatible with the old out-of-tree Thunderbolt kernel module.

Related Question