Iperf: erro - o tamanho do buffer de soquete não foi definido corretamente

Criado em 20 jun. 2018  ·  3Comentários  ·  Fonte: esnet/iperf

Contexto

Estou tentando fazer um teste de iperf da minha máquina 192.168.1.50 para outra máquina 192.168.1.220. O teste a seguir apresentará o erro "erro - tamanho do buffer de soquete não definido corretamente":

iperf3 -c 192.168.1.220 -w 512K

Este comando funcionará quando -w for definido como 416k, qualquer coisa maior e esse erro for exibido. Fiz uma pequena pesquisa e pensei que fosse devido à janela de sessão tcp ser muito pequena, mas não parece ser o caso.

Estes são alguns dos valores sysctl:

net.core.rmem_max = 16777216
net.core.rmem_default = 212992
net.core.wmem_max = 212992
net.ipv4.tcp_rmem = 4096        87380   16777216
net.ipv4.tcp_wmem = 4096        16384   16777216

No entanto, sou capaz de fazer este teste com sucesso na outra direção. Então eu acredito que isso tenha a ver com algum tipo de configuração nesta máquina, que eu não sei o que pode ser.

Qualquer ajuda será apreciada sobre isso.

Obrigado!

  • Versão do iperf3:
    iperf 3.1.7
    Linux 3450asterisk 3.10.0-123.9.3.el7.x86_64 # 1 SMP Qui. 6 de novembro 15:06:03 UTC 2014 x86_64
    Recursos opcionais disponíveis: configuração de afinidade de CPU, rótulo de fluxo IPv6, configuração de algoritmo de congestionamento TCP, sendfile / zerocopy, ritmo de soquete

  • Hardware:
    NIC integrado, 8 GB de RAM, Xeon E3-1271

  • Sistema operacional (e distribuição, se houver):
    CentOS 7

Relatório de erro

  • Comportamento esperado
    iperf deve ser capaz de lidar com esse tamanho de janela

  • Comportamento Real
    iperf gera um erro quando o tamanho da janela é maior que 416k

  • Passos para reproduzir
    Tente fazer um teste iperf com um tamanho de janela maior que 416k
question

Comentários muito úteis

Achei que tinha escrito uma resposta a isso, mas aparentemente não escrevi.

Você pode querer tentar aumentar o tamanho de net.core.wmem_max , que ainda parece ter um valor bastante baixo / padrão.

Algumas outras dicas sobre como ajustar um kernel Linux (que abrange a configuração dos tamanhos de buffer de soquete) podem ser encontradas aqui:

http://fasterdata.es.net/host-tuning/linux/

Finalmente, você pode querer considerar o uso de uma versão mais recente do iperf3 (iperf 3.6 é o atual até o momento desta escrita). Se bem me lembro, algumas versões mais recentes têm algumas correções no código de configuração do buffer de soquete, embora de improviso, eu me lembro se elas são diretamente aplicáveis ​​a este problema.

Todos 3 comentários

Achei que tinha escrito uma resposta a isso, mas aparentemente não escrevi.

Você pode querer tentar aumentar o tamanho de net.core.wmem_max , que ainda parece ter um valor bastante baixo / padrão.

Algumas outras dicas sobre como ajustar um kernel Linux (que abrange a configuração dos tamanhos de buffer de soquete) podem ser encontradas aqui:

http://fasterdata.es.net/host-tuning/linux/

Finalmente, você pode querer considerar o uso de uma versão mais recente do iperf3 (iperf 3.6 é o atual até o momento desta escrita). Se bem me lembro, algumas versões mais recentes têm algumas correções no código de configuração do buffer de soquete, embora de improviso, eu me lembro se elas são diretamente aplicáveis ​​a este problema.

Boa leitura, obrigado.

Fechando este problema porque acho que a questão foi resolvida.

Esta página foi útil?
0 / 5 - 0 avaliações