Estados de ligação de TCP e a saída Netstat

Traduções de Artigos Traduções de Artigos
Artigo: 137984 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Este artigo descreve estados de ligação de TCP e a ler saída Netstat (NETSTAT.EXE).

Antes de transferência de dados é implementada no TCP, deve estabelecer ligação. TCP emprega um handshake tridireccional (é possível encontrar os detalhes no RFC793, capítulo 3: "Função Specification").

Mais Informação

Estados de ligação de TCP

Segue-se uma breve explicação do handshake deste. Neste contexto "cliente" é o peer pedir uma ligação e o "servidor" é o peer aceitar uma ligação. Tenha em atenção que esta notação não reflecte as relações de cliente/servidor como um principal de arquitectura.

  1. Estabelecimento da ligação

    • O cliente envia uma mensagem SYN que contém a porta do servidor e para o servidor (Abrir activo), a inicial sequência de número (ISN do cliente).
    • O servidor envia de volta SYN e próprios ACK (que consiste o cliente ISN + 1).
    • O cliente envia um ACK (que consiste o servidor ISN + 1).
  2. Ligação corte pendente (modificado de forma três handshake).

    • O cliente envia um FIN (fecho activo). Este é uma agora uma ligação half fechado. O cliente já não envia dados, mas ainda não conseguir receber dados do servidor. Ao receber este FIN, o servidor entra num estado fechar passivo.
    • O servidor envia uma ACK (que é a sequência FIN clientes + 1)
    • O servidor envia a suas próprias FIN.
    • O cliente envia um ACK (que é FIN sequência do servidor + 1). Ao receber este ACK, o servidor encerra a ligação.
Uma ligação half fechado pode ser utilizada para terminar de enviar dados ao peitoril receber dados. Aplicações de socket podem chamar encerramento com o segundo argumento definido como 1 para introduzir este estado.

Saída netstat

Os estados de ligação TCP acima podem ser monitorizados de um rastreio de rede nos sinalizadores de TCP. Também é possível determinar o estado da ligação executando o utilitário Netstat e olhar para a coluna de estado. Netstat é fornecido com o Windows NT, Windows 95 e TCP/IP-32 para Windows for Workgroups.

Estado explicações tal como mostrado na Netstat:
EXPLICAÇÃO de estado
------------ --------------------------------------------------------

SYN_SEND Indica abrir activo.

SYN_RECEIVED Server recebidos apenas SYN do cliente.

ESTABELECIDA Cliente recebeu SYN do servidor e é estabelecida uma sessão.

LISTEN Server está pronto para aceitar ligações.

NOTA: Consulte a documentação para listen() socket chamada. TCP sockets num estado de escuta não são apresentadas - esta é uma limitação do NETSTAT. Para obter informações adicionais, consulte o seguinte artigo na base de dados de conhecimento da Microsoft:
134404NETSTAT.EXE não mostrar sockets de recepção TCP
FIN_WAIT_1 Indica o fim activo.

TIMED_WAIT Cliente introduz este estado depois de fechar activo.

CLOSE_WAIT Feche o indica passiva. Apenas o servidor recebeu FIN primeiro a partir de um cliente.

FIN_WAIT_2 Cliente recebeu apenas confirmação da respectiva primeira FIN do servidor.

LAST_ACK Server estiver neste estado quando envia a suas próprias FIN.

FECHADO Server recebida ACK do cliente e ligação é fechada.
Por exemplo, considere o seguinte cenário:

Uma aplicação de socket foi terminada, mas Netstat comunica o socket num estado CLOSE_WAIT. Isto pode indicar que o cliente fechou correctamente a ligação (FIN foi enviada), mas o servidor ainda tem o respectivo socket abrir. Isto pode ser o resultado de uma instância (entre todos os threads ou processos) do socket não a ser fechado.

NOTA: É normal ter um socket no estado TIME_WAIT durante um longo período de tempo. A hora é especificada no RFC793 como duas vezes o máximo segmento duração (MSL). TRANSFERÊNCIA é especificada como sendo 2 minutos. Deste modo, um socket poderia estar no estado TIME_WAIT tempo 4 minutos. Alguns sistemas implementam valores diferentes (menos de 2 minutos) para a transferência.

Referências adicionais:
  • Trabalho na "rede com TCP/IP, volume 1", Douglas Comer
  • "TCP/IP Illustrated, volume 1", Richard Stevens.
  • "Computador Networks" por Andrew Tanenbaum

Propriedades

Artigo: 137984 - Última revisão: 5 de dezembro de 2003 - Revisão: 3.0
A informação contida neste artigo aplica-se a:
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Server 3.5
  • Microsoft Windows NT Server 3.51
  • Microsoft TCP/IP for Windows for Workgroups 3.11
  • Microsoft Windows 95
Palavras-chave: 
kbmt KB137984 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 137984
Exclusão de Responsabilidade para Conteúdo sem Suporte na KB
Este artigo foi escrito sobre produtos para os quais a Microsoft já não fornece suporte. Por conseguinte, este artigo é oferecido "tal como está" e deixará de ser actualizado.

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com