Transferência de rede lenta através da VM do firewall Linux

1

Temos uma VM RedHat 5.8 em execução no ESX sobre o Cisco UCS que está atuando como um firewall usando o iptables. A caixa tem várias nics, uma nic serve como o gateway para a nossa rede com as outras nics cada indo para uma VLAN / rede separada. O problema que estou vendo é que fazer um teste iperf de um host diretamente para a VM do Firewall fornece velocidade de 800+ Mbps, mas tentando fazer um teste iperf de um host fora do firewall para um host dentro do firewall (fazendo com que o tráfego passe através do firewall) rende velocidades de cerca de 30Mbps ou menos.

Os detalhes:

  • Não sei qual versão ou versões do ESX ou UCS estamos executando, mas posso descobrir se isso é importante. Nosso administrador de sistema mantém tudo em dia, então é bem provável que eles estejam nas últimas atualizações.
  • Eu sei que estamos usando o driver VMXNET 3 para os adaptadores de rede.
  • Todas as conexões são confirmadas como 1 Gbps.

O que eu tentei:

  • Pelo que li, o driver e1000 tem melhores resultados, então adicionamos alguns nics usando esse driver e o iperf testados por meio dessas interfaces com os mesmos resultados.
  • Verificou se a LRO estava desativada nas interfaces testadas. Quando eu corri 'ethtool -K ethX lro off', ele relata 'sem configurações de descarga alteradas', o que suponho que signifique que ele já está desativado.
  • Também desativou o TSO nas interfaces testadas.
  • Quando fazia meus testes de velocidade, normalmente estava testando de um dispositivo físico para um dispositivo virtual por meio do firewall no mesmo cluster. Eu também tentei testar de um dispositivo virtual para um dispositivo virtual através do firewall e obtive os mesmos resultados.
  • Desativado iptables e testes de velocidade, recebendo os mesmos resultados.
  • Nenhum dos itens acima mudou nada, exceto possivelmente tornar as coisas ainda mais lentas (consegui < 10 Mbps em um determinado ponto).

Como posso obter 800+ Mbps indo para o firewall em si, isso me leva a pensar que não há nada errado com a configuração das próprias nics. Eu sinto que é um problema com o encaminhamento no próprio sistema operacional, pois ele só parece se manifestar quando está passando o tráfego pelo firewall. Também devo observar que não observei picos de CPU durante esse processo.

Tenho certeza de que estou deixando de fora alguns detalhes, por isso, se houver mais alguma dúvida, me avise. Agradeço qualquer ajuda!

    
por Hypercoyote 03.04.2013 / 01:35

1 resposta

0

Encontramos a solução. Nós tivemos que desabilitar o LRO no nível da lâmina no UCS (como mostrado aqui - > link ). Uma vez que fizemos isso, as velocidades aumentaram para 700 + MBps, limitadas apenas por causa do processamento da CPU e do iptables.

    
por 03.04.2013 / 16:41