There are two basic types of transfer methods, each with its own
advantages and limitations. Both types of connection make use of a
remote shell access program such as
telnet to connect to the remote host.
This connection is used to perform many of the operations that TRAMP requires to make the remote file system transparently accessible from the local host. It is only when visiting files that the methods differ.
Loading or saving a remote file requires that the content of the file
be transferred between the two hosts. The content of the file can
be transferred using one of two methods: the inline method over
the same connection used to log in to the remote host, or the
external method through another connection using a remote copy
program such as
The performance of the external methods is generally better than that of the inline methods, at least for large files. This is caused by the need to encode and decode the data when transferring inline.
The one exception to this rule are the
scp based transfer
methods. While these methods do see better performance when actually
transferring files, the overhead of the cryptographic negotiation at
startup may drown out the improvement in file transfer times.
External methods should be configured such a way that they don’t
require a password (with
ssh-agent, or such alike). Modern
scp implementations offer options to reuse existing
ssh connections, which will be enabled by default if
available. If it isn’t possible, you should consider Password handling, otherwise you will be prompted for a password every copy