AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 678336
Accepted
Mark Henderson
Mark Henderson
Asked: 2015-03-26 18:57:56 +0800 CST2015-03-26 18:57:56 +0800 CST 2015-03-26 18:57:56 +0800 CST

WAN de 20 Mbps limitada a 10 Mbps no túnel IPSec

  • 772

Recentemente, atualizamos um site remoto de uma fibra de 10/10 Mbps para um link de fibra de 20/20 Mbps (é fibra até o porão, depois VDSL do porão até o escritório, aproximadamente 30 metros). Existem cópias regulares de arquivos grandes (multi-gig) entre este site e um site central, então a teoria era que aumentar o link para 20/20 deveria reduzir pela metade os tempos de transferência.

Para transferências para copiar arquivos (por exemplo, usando robocopypara copiar arquivos em qualquer direção ou replicação do Veeam Backup and Recovery), eles são limitados a 10 Mbps.

Antes da atualização:

insira a descrição da imagem aqui

Após a atualização ( robocopy):

insira a descrição da imagem aqui

Quase idêntico (ignore a diferença no tempo de transferência).

As transferências estão sendo feitas através de um túnel IPSec entre um Cisco ASA5520 e um Mikrotik RB2011UiAS-RM .

Primeiros pensamentos:

  • QoS - não. Existem regras de QoS, mas nenhuma que afete esse fluxo. Desativei todas as regras por alguns minutos para verificar de qualquer maneira, e nenhuma alteração
  • Limites definidos por software. A maior parte desse tráfego é de envio externo do Veeam Backup and Recovery, mas não há limites definidos lá. Além disso, acabei de fazer uma sequência robocopye vi exatamente as mesmas estatísticas.
  • Hardware não capaz. Bem, os números de desempenho publicados de um 5520 são 225 Mbps de dados 3DES, e o Mikrotik não publica números, mas seria bem mais de 10 Mbps. O Mikrotik está em torno de 25%-33% de uso da CPU ao fazer esses testes de transferência. (Além disso, fazer uma transferência HTTP pelo túnel IPSec atinge quase 20 Mbps)
  • Latência combinada com o tamanho da janela TCP? Bem, é uma latência de 15 ms entre os sites, portanto, mesmo no pior caso, o tamanho da janela de 32 KB 32*0.015é de no máximo 2,1 MB/s. Além disso, várias transferências simultâneas ainda somam apenas 10 Mbps, o que não suporta essa teoria
  • Talvez a origem e o destino sejam uma merda? Bem, a fonte pode enviar leituras sequenciais sustentadas de 1,6 GB/s, então não é isso. O destino pode fazer gravações sequenciais sustentadas de 200 MB/s, então também não é isso.

Esta é uma situação muito estranha. Eu nunca vi nada se manifestar dessa maneira antes.

Onde mais posso procurar?


Em uma investigação mais aprofundada, estou confiante em apontar o túnel IPSec como o problema. Fiz um exemplo artificial e fiz alguns testes diretamente entre dois endereços IP públicos nos sites, e depois fiz exatamente o mesmo teste usando os endereços IP internos, e consegui replicar 20 Mbps na Internet não criptografada e apenas 10 Mbps no IPSec lado.


A versão anterior tinha uma pista falsa sobre HTTP. Esqueça isso, este foi um mecanismo de teste defeituoso.

De acordo com a sugestão do Xeon e ecoada pelo meu ISP quando pedi suporte, configurei uma regra mangle para reduzir o MSS dos dados IPSec para 1422 - com base neste cálculo :

 1422   +  20 + 4 +  4 +   16  +   0     +      1    +     1     +   12
PAYLOAD  IPSEC SPI ESP  ESP-AES ESP (Pad)  Pad Length Next Header ESP-SHA

Para caber dentro do 1480 MTU do ISP. Mas, infelizmente, isso não fez nenhuma diferença efetiva.


Depois de comparar as capturas do wireshark, a sessão TCP negocia um MSS de 1380 em ambas as extremidades agora (depois de ajustar algumas coisas e adicionar um buffer no caso de minha matemática ser ruim. Dica: provavelmente sim). 1380 também é o MSS padrão do ASA de qualquer maneira, então pode ter negociado isso o tempo todo de qualquer maneira.


Estou vendo alguns dados estranhos na ferramenta dentro do Mikrotik que venho utilizando para medir o tráfego. Pode não ser nada. Não percebi isso antes porque estava usando uma consulta filtrada e só vi isso quando removi o filtro.

windows
  • 2 2 respostas
  • 2198 Views

2 respostas

  • Voted
  1. Best Answer
    Mark Henderson
    2015-03-30T18:40:23+08:002015-03-30T18:40:23+08:00

    Mesmo que a CPU tenha sido a terceira coisa que verifiquei e escrevi isto:

    O Mikrotik está em torno de 25%-33% de uso da CPU ao fazer esses testes de transferência

    O que é confirmado pelo gráfico da CPU

    insira a descrição da imagem aqui

    Eu tive a confirmação de recursos externos (ou seja, vários outros fóruns e blogs de suporte ) que a maioria dos roteadores Mikrotik simplesmente não pode enviar mais de 11 Mbps de tráfego IPSec com criptografia 3DES ou AES, a menos que você obtenha um modelo com descarregamento de criptografia de hardware .

    Portanto, parece que isso é apenas uma limitação de hardware. Eu deveria ter detectado muito antes, mas por algum motivo o Mikrotik não estava indicando para mim que estava sendo vinculado à CPU.

    Saindo das compras eu vou.

    • 3
  2. shodanshok
    2015-03-31T14:46:34+08:002015-03-31T14:46:34+08:00

    Posso confirmar que o culpado é a CPU. Aqui fiz benchmarking de um Mikrotik RB750GL e medi 12 Mb/s com tráfego AES-128 (e apenas 6,0 Mb/s com 3DES).

    Seu resultado parece perfeitamente alinhado com o que registrei.

    • 2

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve