DF bit na comunicação do Apache para o Tomcat

1

Editado (as edições estão em itálico ):

Na minha configuração, eu tenho um servidor HTTP Apache 2.2 configurado como um proxy reverso com mod_proky_jk , que expõe o serviço http de um servidor de aplicativos Apache Tomcat 6. Os dois são diferentes caixas do MS Windows 2008 R2.

Meu problema é que a comunicação entre um dispositivo remoto móvel conectado via GPRS ou GSM às vezes falha .

Eu encontrei esta mensagem e ela parece se encaixar na minha situação.

Descarregando mensagens TCP, notei que o Apache solicita pacotes com o bit DF definido como "não fragmentar". O tamanho do quadro Ethernet é na verdade 1514 e o MTU é 1500.

Existe uma maneira de dizer ao Apache para não usar o bit DF? Talvez ligando o serviço ao IP da máquina em vez de todas as interfaces?

A nova opção é :

Se o problema for causado por bytes adicionados PPPoE, a configuração de um MTU inferior nas duas caixas do Windows pode corrigir este problema?

Outras atualizações

Notei que alguns dispositivos móveis falharam na comunicação, outros não falharam. Analisei as diferenças entre dois desses dispositivos e observei nas configurações de WWAN em Ferramentas > Configuração de dados a que não trabalhava tinha " Ativar configuração automática " não verificado . Eu verifiquei e reinicializei e a conexão foi bem-sucedida. Eu desmarcou e a conexão ainda é bem sucedida. Este dispositivo nunca falha novamente.

Talvez eu tenha percebido o problema? O que essa configuração afeta no nível de comunicação?

    
por Andrea Colleoni 27.02.2012 / 15:57

1 resposta

1

Is there a way to tell Apache to not use DF bit?

Não, não há como fazer isso, porque o Apache não funciona nesse nível na pilha de rede. O Apache faz chamadas de sistema padrão para o kernel.

My problem is that communication between the two fails due to IP checksum offload.

Como você sabe que a comunicação falha devido a falhas devido ao descarregamento da soma de verificação de IP? Só porque você vê erros de soma de verificação no wireshark, não significa que haja uma falha.

I noticed that Apache requests packets with the DF bit set to "don't fragment", but the packet size actually is 1514, (more than the MTU = 1500),

Tem certeza de que o pacote tem 1514 bytes, ou o quadro Ethernet é o encapsulado em 1514 bytes?

pinging with "-f -l 1514" switch it tells "Packet needs to be fragmented but DF set.".

Quanto ao seu ping, se o MTU for 1500, tentar pingar com tamanho de 1514 não funcionará.

    
por 27.02.2012 / 18:19