Implementar timeout de recebimento de requisição TCP com fragmentação de pacotes de rede, para evitar congelamentos em caso de requisição mal formada ou incompleta.
Situação | Recebimento de uma requisição de operação pelo DBAccess, onde existem dados adicionais a serem enviados em multiplos pacotes de rede. |
---|---|
Ocorrência | Caso uma conexão do DBAccess receba um pacote fragmentado, o loop de recebimento dos dados restantes não tem timeout. Caso a conexão cliente seja mantida aberta e congele, sem enviar os dados, ou seja finalizada de forma abrupta – ou a notificação do fechamento da conexão client-side não seja enviada pelo client da conexão tcp, ou nao chegue ao dbaccess server ( socket half-opened ) , o dbaccess permanece em um loop de recebimendo de dados até que o serviço seja baixado, ou o socket utilizado torne-se inválido. |
Implementação | A recepção de dados fragmentados sai por timeout de 10 segundos, uma vez que ela deixe de receber os dados que estavam sendo enviados pelo cliente do dbaccess, mesmo que o socket esteja aberto do lado do dbaccess server. |
Informações adicionais |
|
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas