TCP: Desativar ACKs puros?

0

Eu tenho um cenário onde desejo desabilitar os ACKs puros (TCP ACKs sem dados), mas não consigo encontrar como fazer isso. Existe uma opção que eu possa definir para que os ACKs sejam sempre incluídos no próximo pacote de dados (dos quais posso ter certeza de que virá)?

Eu tentei desabilitar o quickACKs por meio do comando ip route para um intervalo de rede e um dispositivo específicos, mas não pareceu ter nenhum efeito. Como informação adicional, estou executando um kernel 4.4 nesta máquina. Se você precisar de mais informações, pergunte e eu fornecerei.

    
por random_error 14.04.2016 / 14:32

2 respostas

1

Um pacote tem que ser reconhecido pelo destinatário dentro de um tempo específico, porque senão o remetente assume que o pacote se perdeu e irá retransmiti-lo. Se o destinatário enviar dados de qualquer maneira, o ACK será adicionado a esses dados. Se nenhum dado for enviado, um ACK puro precisará ser enviado para que o remetente saiba a tempo que o pacote foi recebido.

    
por 14.04.2016 / 16:15
0

Como se viu, o aplicativo que estava me dando esses ACKs puros usava um soquete com o conjunto de opções TCP_NODELAY, então cada pacote seria respondido o mais rápido possível sem esperar por dados adicionais.

    
por 15.04.2016 / 13:40