Velocidade de transferência de scp lento sobre wan

3

Eu tenho uma linha de fibra óptica simétrica de 300mbit, e tenho que transferir um arquivo tar de 51MBYTE do HOST A (fibra óptica de 300 MB) para o HOST B (uma máquina digital com mais de gigabit de largura de banda).

Em ambos os lados eu tenho bons resultados de speedtests (300mbit em A, 700 em B) mas quando eu scp de A para B eu tenho isso:

assets.tar            100%   51MB 220.3KB/s   03:55

apenas 220kbit de velocidade máxima.

Mas se eu fizer do HOST B para A eu tenho um ótimo resultado:

assets.tar            100%   51MB   8.4MB/s   00:06    ***REALLY GOOD SPEED***

Qual pode ser o problema?

    
por Roberto Sha 09.06.2016 / 20:33

2 respostas

1

SCP é uma ferramenta muito simples para copiar arquivos de um lado para outro. Ele não foi projetado para velocidades super rápidas e tem buffers realmente pequenos em ambos os lados.

Se você deseja desempenho, use sftp ou rsync .

Sobre as medidas de velocidade, vamos desenhar um diagrama:

[host A]   --- ??? mbit  ---    [host B]
        \                      /
         \ 300 mbit           / 700 mbit
          \                  /
           [speedtest server]

Os dados entre dois hosts não precisam passar pelo servidor speedtest em que você mediu a velocidade (e provavelmente eles não vão), então essas medidas são irrelevantes para o seu caso. Se você quiser medir a velocidade entre esses dois hosts, você realmente precisa medir o tráfego entre esses dois e nada mais. Pode haver alguma linha que seja assimétrica ou de maneira diferente limitada.

    
por 10.06.2016 / 11:25
0

Eu começaria medindo a velocidade do fluxo TCP mais burro possível. Um FTP simples (não SFTP ou FTPS) faria isso. Se por algum motivo o FTP não funcionar (firewalls podem ser um problema), tente o netcat.

O FTP literalmente gera bytes em um soquete. Desde que esteja usando o tamanho total do pacote TCP, e estamos falando de um único arquivo, você não pode usar o TCP com mais eficiência. Isso lhe dará uma referência do que pode ser alcançado entre os dois hosts.

(Existem alguns protocolos baseados em UDP que podem ser mais rápidos na WAN, evitando a espera por pacotes TCP ACK, mas nenhum deles é um padrão comumente usado).

Observe, no entanto, que o FTP não é compactado, portanto, pode levar mais tempo para determinados tipos de dados. Isso é bom para nosso objetivo de medir o throughput TCP bruto.

Se o FTP for lento / assimétrico também, pode ser que exista um link assimétrico ao longo da rota entre essas máquinas. Você poderia fazer algum diagnóstico adicional executando um sniffer do Wireshark em ambas as extremidades e verificando o rastreamento de pacotes perdidos, etc.

Se o FTP for rápido e simétrico, você terá outro problema. Sem mergulhar fundo, é difícil adivinhar e há muitas possibilidades. Por exemplo, o SSH de uma máquina pode ser configurado para compactar enquanto a outra não é.

    
por 11.06.2016 / 09:13