Desativar início lento do tcp

0

Estou procurando desativar o mecanismo de início lento tcp para rede de alta velocidade. Atualmente, os clientes enviam fluxos de 100 MB a servidores aleatórios com link de 1 Gbps sem bloqueio. Na minha matemática, o tempo de conclusão dos fluxos é inferior a 1 segundo.

Mas o problema é que eles não conseguem alcançar uma largura de banda de link completa. Em outras palavras, eles são concluídos na fase de início lento antes de obter uma largura de banda de link completa. Portanto, quero aumentar o tamanho da janela de congestionamento tcp para o máximo.

Existe alguém que saiba como eu altero esse valor facilmente sem modificação do kernel?

Thx ~

Junho Suh
fonte
qual é a sua versão do kernel do linux?
Mvp
O ubuntu 12.04lts e a versão do kernel são Linux user-X9DR3-F 3.2.0-44-generic # 69-Ubuntu SMP Thu May 16 17:35:01 UTC 2013 x86_64 x86_64 x86_64 GNU / Linux
Junho Suh

Respostas:

0

Nas versões mais antigas do kernel do Linux, o valor inicial da janela de congestionamento ( initcwnd) era tão baixo quanto apenas 2 (2 * MSS, ou cerca de 3 KB) e, desde 3.0, o novo padrão é 10 (cerca de 14 KB).

Desde que o seu kernel Linux não seja muito antigo, você pode aumentar a janela de congestionamento inicial usando o comando ip, algo como isto:

Obter informações da rota padrão atual:

$ ip route | grep default
default via 192.168.1.1 dev eth0  proto static

Atribua um novo initcwndvalor a esta rota:

$ sudo ip route change default via 192.168.1.1 dev eth0 proto static initcwnd 10

Isso aumenta a janela de congestionamento inicial padrão para um valor mais alto de 10 * MSS (~ 14KB). Você pode querer jogar com valores maiores que isso, provavelmente tão altos quanto 40.

Para mais informações, leia a proposta original do Google para aumentar o initcwnd e também este artigo .

mvp
fonte