← TCP/IP: fundamentos e diagnóstico
04 / 12 · 40 MIN

Estados, filas e controlo de fluxo

Relaciona estados TCP e pressão de receção com o comportamento da aplicação.

Conceito e mecanismo

Os estados TCP descrevem fases do protocolo. CLOSE_WAIT significa que foi recebido um FIN remoto e falta o fecho local quando apropriado. Muitas entradas persistentes justificam observar como a aplicação trata fim de fluxo, recursos e dependências. TIME_WAIT tem uma função normal no fecho; a contagem isolada não prova fuga. Compara taxa de ligações, duração, erros e limites antes de alterar temporizadores. Em sockets estabelecidos, dados recebidos por ler podem crescer quando o consumidor está lento. Não apliques automaticamente essa interpretação a filas de sockets LISTEN, onde o contexto é diferente. Recolhas sucessivas permitem distinguir uma fila transitória de pressão sustentada.

Aplicação guiada

Controlo de fluxo protege a capacidade anunciada pelo recetor. Janela zero pede limitar envio normal de novos dados; probes permitem acompanhar a reabertura. Isso não prova, por si só, congestionamento ou packet loss. Controlo de congestionamento é outra limitação, relacionada com pressão no percurso; uma janela de receção grande não a elimina. No caso fictício, a fila recebida cresce e as threads esperam por uma dependência. Correlaciona essa espera com o ritmo de leitura antes de aumentar buffers. Mais memória pode apenas adiar saturação. Uma mitigação delimitada pode reduzir novas entradas enquanto se recupera o consumidor, com controlo dos dados e critérios de retorno à normalidade.

NA PRÁTICA

CLOSE_WAIT aponta para fecho local pendente; janela zero aponta para capacidade de receção anunciada.

Armadilhas comuns

Todos os estados como fuga; fila de LISTEN como bytes por ler; janela zero como perda; tuning antes da medição.

Tópicos relacionados: Endereços, prefixos e âmbito · Rotas e resolução do próximo salto · Transporte, confirmação e mensagens

Leva esta ideia contigo

Usa estado, tendência e consumo para localizar a limitação.

Criar conta

Referência: Linux TCP sockets and receive queue · DR TCP/IP 2026-09; TCP RFC 9293; IPv6 RFC 8200 with RFC 9673 update; Linux socket and iproute2 guidance