estrutura MIB_TCP6ROW_OWNER_MODULE (tcpmib.h)

A estrutura MIB_TCP6ROW_OWNER_MODULE contém informações que descrevem uma conexão TCP IPv6 associada a uma PID (ID de processo) específica com dados de propriedade.

Sintaxe

typedef struct _MIB_TCP6ROW_OWNER_MODULE {
  UCHAR         ucLocalAddr[16];
  DWORD         dwLocalScopeId;
  DWORD         dwLocalPort;
  UCHAR         ucRemoteAddr[16];
  DWORD         dwRemoteScopeId;
  DWORD         dwRemotePort;
  DWORD         dwState;
  DWORD         dwOwningPid;
  LARGE_INTEGER liCreateTimestamp;
  ULONGLONG     OwningModuleInfo[TCPIP_OWNING_MODULE_SIZE];
} MIB_TCP6ROW_OWNER_MODULE, *PMIB_TCP6ROW_OWNER_MODULE;

Membros

ucLocalAddr[16]

Tipo: UCHAR[16]

O endereço IPv6 para o ponto de extremidade local da conexão TCP no computador local. Um valor zero indica que o ouvinte pode aceitar uma conexão em qualquer interface.

dwLocalScopeId

Tipo: DWORD

A ID de escopo na ordem de bytes de rede para o endereço IPv6 local.

dwLocalPort

Tipo: DWORD

O número da porta na ordem de bytes de rede para o ponto de extremidade local da conexão TCP no computador local.

ucRemoteAddr[16]

Tipo: UCHAR[16]

O endereço IPv6 do ponto de extremidade remoto da conexão TCP no computador remoto. Quando o membro dwState é MIB_TCP_STATE_LISTEN, esse valor não tem nenhum significado.

dwRemoteScopeId

Tipo: DWORD

A ID de escopo na ordem de bytes de rede para o endereço IPv6 remoto.

dwRemotePort

Tipo: DWORD

O número da porta na ordem de bytes de rede para o ponto de extremidade remoto da conexão TCP no computador remoto.

dwState

Tipo: DWORD

O estado da conexão TCP. Esse membro pode ser um dos valores da enumeração MIB_TCP_STATE definida no arquivo de cabeçalho Tcpmib.h . Observe que o arquivo de cabeçalho Tcpmib.h é incluído automaticamente em Iprtrmib.h, que é incluído automaticamente no arquivo de cabeçalho Iphlpapi.h . Os arquivos de cabeçalho Tcpmib.h e Iprtrmib.h nunca devem ser usados diretamente.

Valor Significado
MIB_TCP_STATE_CLOSED
1
A conexão TCP está no estado CLOSED que não representa nenhum estado de conexão.
MIB_TCP_STATE_LISTEN
2
A conexão TCP está no estado LISTEN aguardando uma solicitação de conexão de qualquer TCP remoto e porta.
MIB_TCP_STATE_SYN_SENT
3
A conexão TCP está no estado SYN-SENT aguardando uma solicitação de conexão correspondente depois de ter enviado uma solicitação de conexão (pacote SYN).
MIB_TCP_STATE_SYN_RCVD
4
A conexão TCP está no estado SYN-RECEIVED aguardando uma confirmação de solicitação de conexão após ter recebido e enviado uma solicitação de conexão (pacote SYN).
MIB_TCP_STATE_ESTAB
5
A conexão TCP está no estado ESTABLISHED que representa uma conexão aberta, os dados recebidos podem ser entregues ao usuário. Esse é o estado normal para a fase de transferência de dados da conexão TCP.
MIB_TCP_STATE_FIN_WAIT1
6
A conexão TCP é o estado FIN-WAIT-1 aguardando uma solicitação de encerramento de conexão do TCP remoto ou uma confirmação da solicitação de encerramento de conexão enviada anteriormente.
MIB_TCP_STATE_FIN_WAIT2
7
A conexão TCP é o estado FIN-WAIT-1 aguardando uma solicitação de encerramento de conexão do TCP remoto.
MIB_TCP_STATE_CLOSE_WAIT
8
A conexão TCP está no estado CLOSE-WAIT aguardando uma solicitação de encerramento de conexão do usuário local.
MIB_TCP_STATE_CLOSING
9
A conexão TCP está no estado CLOSING aguardando uma confirmação de solicitação de encerramento de conexão do TCP remoto.
MIB_TCP_STATE_LAST_ACK
10
A conexão TCP está no estado LAST-ACK aguardando uma confirmação da solicitação de encerramento de conexão enviada anteriormente para o TCP remoto (que inclui uma confirmação de sua solicitação de encerramento de conexão).
MIB_TCP_STATE_TIME_WAIT
11
A conexão TCP está no estado TIME-WAIT aguardando tempo suficiente para passar para ter certeza de que o TCP remoto recebeu a confirmação de sua solicitação de encerramento de conexão.
MIB_TCP_STATE_DELETE_TCB
12
A conexão TCP está no estado TCB de exclusão que representa a exclusão do TCB (Bloco de Controle de Transmissão), uma estrutura de dados usada para manter informações sobre cada entrada TCP.

dwOwningPid

Tipo: DWORD

O PID do processo local que emitiu uma associação de contexto para essa conexão TCP.

liCreateTimestamp

Tipo: LARGE_INTEGER

Uma estrutura FILETIME que indica quando ocorreu a operação de associação de contexto que criou essa conexão TCP.

OwningModuleInfo[TCPIP_OWNING_MODULE_SIZE]

Tipo: ULONGLONG[TCPIP_OWNING_MODULE_SIZE]

Uma matriz de dados opacos que contém informações de propriedade.

Comentários

A estrutura MIB_TCP6TABLE_OWNER_MODULE é retornada por uma chamada para GetExtendedTcpTable com o parâmetro TableClass definido como um TCP_TABLE_OWNER_MODULE_LISTENER, TCP_TABLE_OWNER_MODULE_CONNECTIONS ou TCP_TABLE_OWNER_MODULE_ALL da enumeração TCP_TABLE_CLASS e o parâmetro ulAf definido como AF_INET6. A estrutura MIB_TCP6TABLE_OWNER_MODULE contém uma matriz de estruturas de MIB_TCP6ROW_OWNER_MODULE .

O membro dwState indica o estado da entrada TCP em um diagrama de estado TCP. Uma conexão TCP progride por meio de uma série de estados durante seu tempo de vida. Os estados são: LISTEN, SYN-SENT, SYN-RECEIVED, ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-ACK, TIME-WAIT e o estado fictício CLOSED. O estado CLOSED é fictício porque representa o estado quando não há nenhum Bloco de Controle de Transmissão e, portanto, nenhuma conexão. O protocolo TCP é descrito no RFC 793. Para obter mais informações, consulte http://www.ietf.org/rfc/rfc793.txt.

Os membros ucLocalAddr e ucRemoteAddr são armazenados em uma matriz de caracteres na ordem de bytes de rede. As funções RtlIpv6AddressToString ou RtlIpv6AddressToStringEx podem ser usadas para converter o endereço IPv6 nos membros ucLocalAddr ou ucRemoteAddr em uma cadeia de caracteres sem carregar a DLL do Windows Sockets.

Os membros dwLocalScopeId e dwRemoteScopeId estão em ordem de byte de rede. Para usar os membros dwLocalScopeId ou dwRemoteScopeId , as funções ntohl ou inet_ntoa no Windows Sockets ou funções semelhantes podem ser necessárias.

Os membros dwLocalPort e dwRemotePort estão em ordem de byte de rede. Para usar os membros dwLocalPort ou dwRemotePort , as funções ntohs ou inet_ntoa no Windows Sockets ou funções semelhantes podem ser necessárias.

No Microsoft Software Development Kit do Windows (SDK do Windows) (SDK) lançado para Windows Vista e posterior, a organização dos arquivos de cabeçalho foi alterada. Essa estrutura é definida no arquivo de cabeçalho Tcpmib.h , não no arquivo de cabeçalho Iprtrmib.h . Observe que o arquivo de cabeçalho Tcpmib.h é incluído automaticamente em Iprtrmib.h, que é incluído automaticamente no arquivo de cabeçalho Iphlpapi.h . Os arquivos de cabeçalho Tcpmib.h e Iprtrmib.h nunca devem ser usados diretamente.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista, Windows XP com SP2 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008, Windows Server 2003 com SP1 [somente aplicativos da área de trabalho]
Cabeçalho tcpmib.h (inclua Iphlpapi.h)

Confira também

GetExtendedTcpTable

RtlIpv6AddressToString

RtlIpv6AddressToStringEx

SYSTEMTIME

TCP_TABLE_CLASS

inet_ntoa

ntohl

ntohs