Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Como aumentar de 4 para 10 segmentos no primeiro round trip TCP?

Foi comentado no curso que em alguns casos 10 segmentos TCP já são enviados no primeiro round trip.

Sou programador, então não entendo quase nada de rede, mas, como é possível fazer esse aumento? Não encontrei muito material pesquisando rapidamente no Google.

3 respostas
solução!

Oi Carlos,

Se voce usa o Linux com kernel relativamente recente, fica tranquilo que o padrão já é 10.

Existe uma constante no kernel do Linux no arquivo tcp.h chamada TCP_INIT_CWND. Desde a versão 2.6.39 ela tem valor 10 por padrão:

http://lxr.free-electrons.com/source/include/net/tcp.h?v=2.6.39#L199

Se voce compilou o kernel, basta olhar esse arquivo e ver se está 10 mesmo e eventualmente mudar pra 10. Se pegou algum kernel ja compilado, mais provavel que deixaram o 10 mesmo.

Voce pode olhar as sockets do seu servidor pra ver se estao usando o valor 10 no CWND. Esse comando mostra isso:

ss -nli | fgrep cwnd

Além disso, eu escrevi um post sobre como estimar o tamanho dessa janela do ponto de vista do cliente: http://blog.caelum.com.br/como-estimar-a-janela-inicial-de-uma-nova-conexao-tcp-com-wireshark/

Se você chegar a conclusão no fim de tudo isso que precisa aumentar sua janela inicial, em geral a solução é só usar um kernel mais novo e pronto.

Abraço

Show de bola, Sérgio!

Dei uma pesquisada, mas como não sou da área nem pesquisar direito eu acho que sei. kkkkk

Como eu faria isso num servidor Windows?

Na empresa onde eu trabalho, nosso servidor de produção é Windows.

Abraços e muito obrigado pelo esclarecimento.

Oi Carlos,

Eu não uso servidor Windows então não sei direito. Mas encontrei um tutorial na Web que mostra como fazer. Talvez valha a pena dar uma olhada:

https://andydavies.me/blog/2011/11/21/increasing-the-tcp-initial-congestion-window-on-windows-2008-server-r2/

Abraço