Maximum HTTP Connections…

Para acabar com as vezes em que o IE apenas nos deixa ter alguns downloads em simultâneo e quando queremos abrir mais uma página ou fazer um novo download este fica a morrer até alguma ligação anterior ter sido encerrada.

O IE por defeito está limitado a um determinado numero de ligações em simultâneo se nós alterarmos essas limitações podemos ter um controlo maior sobre o nosso IE impedindo que fiquemos á espera…

Para isso temos de adicionar as seguintes chaves no nosso registo de forma a indicar outros valores que não os de defeito.

HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionInternet Settings”MaxConnectionsPerServer”=dword:00000010″MaxConnectionsPer1_0Server”=dword:00000010
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settings”MaxConnectionsPerServer”=dword:00000010″MaxConnectionsPer1_0Server”=dword:00000010

Aqui damos um valor de 10.
Atenção que não convêm aumentar muito alem das 10. Pois também pode aumentar o numero de sites http em que temos problemas. Se tivermos muitos problemas nos que visitamos convêm descer o numero.
Isto tem a ver com a sobrecarga que podemos dar a um servidor ao abrir demasiadas ligações simultâneas, se ele tiver algum tipo de restrição então esta solução não se torna mais rápida…

Tunning de Rede Windows XP

Neste artigo vou descrever como fazer um tweak ao windows XP registry para tentarmos melhorar a performance deste a nivel da rede.

O objectivo é que comprendam um pouco mais do modo como funciona o windows xp em rede e que não comprem ou instalem software adicional para melhorar o desempenho de rede da máquina sem necessidade.
O windows XP contem vários parametros de registo que devidamente configurados podem afectar a performance radicalmente.

Temos o TCP Window por exemplo, que é uma especie de buffer que armazena os pacotes que recebemos da rede antes de as enviar para a aplicção (mdelo OSI) que está á espera delas para processar a informação. Estas ficam aqui armazenadas até uma flag de push ser defenida nos pacotes que chegam ou quando a aplicação decidir ir buscar ao buffer os dados necessários.

Durante o “handshake de TCP/IP” da ligação TCP/IP, ambos os lados informam o parceiro de qual é o seu tamanho de Janela ou “Window Size” Esta informação fica registada no TCP Header (como já vimos anteriormente noutro post) e pode ter um valor de 0 a 65535 e esse é o valor máximo em bytes que o buffer ou Janela pode ter.

Por defeito o windows XP utiliza um sistema de Window Scaling que muda de acordo com a forma como ele está a trabalhar. Isto é se ele está a receber uma ligação ele comporta-se como um servidor e ele utiliza este sistema, quando ele está a iniciar uma ligação ele não utiliza este Window Scaling.

Se um parceiro fica sem espaço durante a troca de pacotes este envia um pacote com uma sinalização de Window=0 O parceiro TCP para de enviar pacotes até um novo pacote seja enviado com a sinalização de Window diferente de 0. Aqui a troca de dados é reiniciada até haver outro pacote de sinalização com o Window=0.

Com o aumento de velocidade de ligações os 65535 bytes tornam-se pequenos, é aqui que o Window Scaling é utilizado, se ambos os lados da comunicação tem a opção de window scaling no TCP Header então o window Scaling é suportado, o Window scale define o factor multiplicativo para usar e determinal o tamanho de janela. Um window Scale de 1 significa que o Window Size vai ser multiplicado por 2

Com esta lógia temos então
0 -> multiplica por 1
1 -> multiplica por 2
2 -> multiplica por 4
3 -> multiplica por 8
4-> multiplica por 16
5-> multiplica por 32
6-> multiplica por 64
7-> multiplica por 128

Exemplo:
Queremos fazer download de um ficheiro de 75Mbytes, se não tivermos estas opções activas o que acontece é que rápidamente ficamos com o buffer cheio, se as tivermos activas o nosso buffer seria escalado por 4 e que nos daria um buffer de 262,140 bytes.

Para activar o Windows Scaling temos de editar o registo:
na chave hkey_Local_MachineSYSTEMCurrentControlSetServicesTCPIP
Key: TcpipParameters
Adicionar uma chave tipo
Value Type: REG_DWORD
Nome da chave:tcp1323opts
Valor: 1

Com esta alteração quanto maior for o ficheiro que temos a transferir maior é o nosso window size ou buffer.

Outas alterações que podem ajudar são:

HKLMSYSTEMCurrentControlSetServicesTcpipParametersSackOpts=”1″
HKLMSYSTEMCurrentControlSetServicesTcpipParametersTcpMaxDupAcks=”2″
HKLMSYSTEMCurrentControlSetServicesTcpipParametersInterfacesMTU=”1500″

No windows vista o tamanho por defeito do Window size é de 131072.