IBM Cloud Docs
Otimizando o tamanho da janela TCP para instâncias virtuais

Otimizando o tamanho da janela TCP para instâncias virtuais

Use as seguintes diretrizes para ajustar o tamanho da janela TCP em uma instância do servidor virtual para obter o desempenho ideal em um hypervisor IBM Cloud®. Os hosts virtuais do IBM Cloud têm um tamanho de buffer TCP padrão com o intervalo de 3 a 6 MB.

Para obter o melhor desempenho de sua instância de servidor virtual, é necessário configurar o tamanho da janela do TCP no intervalo de 3 a 6 MB. O kernel configura o limite de memória real para o dobro do valor solicitado, dobrando efetivamente as configurações máximas. Mantenha o tamanho máximo da janela TCP em 2 MB ou abaixo. Com o ajuste automático ativado, o tamanho do buffer do receptor (e o tamanho da janela TCP) é atualizado dinamicamente para cada conexão. Os padrões de espaço de memória por conexão são definidos com as seguintes matrizes de elementos.

  • net.ipv4.tcp_rmem é a memória reservada para buffers de recepção TCP
  • net.ipv4.tcp_wmem é a memória reservada para buffers de envio TCP

Os valores nessas matrizes são os tamanhos de buffer mínimo, inicial e máximo que você usa para configurar os limites no ajuste automático e balancear o uso de memória. Para visualizar as configurações atuais da janela de memória, execute o comando sysctl -a | grep mem

# sysctl -a | grep mem
vm.overcommit_memory = 0
vm.nr_hugepages_mempolicy = 0
vm.lowmem_reserve_ratio = 256   256     32
vm.meminfo_legacy_layout = 1
vm.memory_failure_early_kill = 0
vm.memory_failure_recovery = 1
net.core.wmem_max = 124928
net.core.rmem_max = 124928
net.core.wmem_default = 124928
net.core.rmem_default = 124928
net.core.optmem_max = 20480
net.ipv4.igmp_max_memberships = 20
net.ipv4.tcp_mem = 365184       486912  730368
net.ipv4.tcp_wmem = 4096        16384   1048576
net.ipv4.tcp_rmem = 4096        87830   1048576
net.ipv4.udp_mem = 365184       486912  730368
net.ipv4.udp_rmem_min = 4096
net.ipv4.udp_wmem_min = 4096

Para visualizar todas as configurações de TCP, execute o comando: sysctl -a | grep tcp

Verifique se os recursos do TCP avançados padrão estão ativados:

net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1

Para verificar se o autoajuste está habilitado, verifique se a configuração a seguir tem o valor "1".

net.ipv4.tcp_moderate_rcvbuf = 1

Para alterar as configurações da janela TCP, adicione as configurações ao seu /etc/sysctl.conf arquivo.

Para preservar as mudanças entre reinicializações, certifique-se de incluir os comandos de ajuste em seu arquivo rc.local.