.. when it is transfering a large file it sticks around 11 mb/s.
sem conhecer, você poderia ter causado uma transferência parcial ao comparar as taxas de transferência, tornando a CPU um gargalo.
O rsync faz uma delta-transfer por padrão se ele vê um arquivo parcial no receptor (sobra do scp
test?). O método "rolling checksum" para comparar o que precisa ser transferido terá seu preço na utilização da CPU no lado do Remetente.
Eu notei uma diminuição de 4 vezes na taxa de transferência em um grande arquivo binário parcial com uma CPU fraca como Remetente (Intel Atom ou instâncias de nuvem VM menores). Em máquinas maiores, a taxa de transferência permaneceu ativa após a varredura parcial do arquivo inicial, quando continuava. A diferença na taxa de transferência para a planície netcat
deve ser a criptografia via ssh.
Explicitamente dizer ao rsync para não usar transferências parciais ( -W|--whole-file
) colocará as taxas de transferência no mesmo estádio novamente. Se necessário, --append
é outra maneira de retomar uma transferência de arquivo interrompida sem causar uma transferência delta. get -a
in sftp
pode retomar um download também.
Veja a descrição da arquitetura do Rsyncs para mais explicações.