Compartir a través de


estructura MIB_TCP6ROW_OWNER_PID (tcpmib.h)

La estructura MIB_TCP6ROW_OWNER_PID contiene información que describe una conexión TCP IPv6 asociada a un identificador de proceso específico (PID).

Sintaxis

typedef struct _MIB_TCP6ROW_OWNER_PID {
  UCHAR ucLocalAddr[16];
  DWORD dwLocalScopeId;
  DWORD dwLocalPort;
  UCHAR ucRemoteAddr[16];
  DWORD dwRemoteScopeId;
  DWORD dwRemotePort;
  DWORD dwState;
  DWORD dwOwningPid;
} MIB_TCP6ROW_OWNER_PID, *PMIB_TCP6ROW_OWNER_PID;

Miembros

ucLocalAddr[16]

Tipo: UCHAR[16]

La dirección IPv6 para el punto de conexión local de la conexión TCP en el equipo local. Un valor de cero indica que el agente de escucha puede aceptar una conexión en cualquier interfaz.

dwLocalScopeId

Tipo: DWORD

Identificador de ámbito en orden de bytes de red para la dirección IPv6 local.

dwLocalPort

Tipo: DWORD

Número de puerto en orden de bytes de red para el punto de conexión local de la conexión TCP en el equipo local.

ucRemoteAddr[16]

Tipo: UCHAR[16]

La dirección IPv6 del punto de conexión remoto de la conexión TCP en el equipo remoto. Cuando el miembro dwState es MIB_TCP_STATE_LISTEN, este valor no tiene ningún significado.

dwRemoteScopeId

Tipo: DWORD

Identificador de ámbito en orden de bytes de red para la dirección IPv6 remota.

dwRemotePort

Tipo: DWORD

Número de puerto en orden de bytes de red para el punto de conexión remoto de la conexión TCP en el equipo remoto.

dwState

Tipo: DWORD

Estado de la conexión TCP. Este miembro puede ser uno de los valores de la enumeración MIB_TCP_STATE definida en el archivo de encabezado Tcpmib.h . Tenga en cuenta que el archivo de encabezado Tcpmib.h se incluye automáticamente en Iprtrmib.h, que se incluye automáticamente en el archivo de encabezado Iphlpapi.h . Los archivos de encabezado Tcpmib.h e Iprtrmib.h nunca se deben usar directamente.

Valor Significado
MIB_TCP_STATE_CLOSED
1
La conexión TCP está en estado CLOSED que no representa ningún estado de conexión.
MIB_TCP_STATE_LISTEN
2
La conexión TCP está en estado LISTEN esperando una solicitud de conexión desde cualquier PUERTO y TCP remoto.
MIB_TCP_STATE_SYN_SENT
3
La conexión TCP está en estado SYN-SENT esperando una solicitud de conexión coincidente después de haber enviado una solicitud de conexión (paquete SYN).
MIB_TCP_STATE_SYN_RCVD
4
La conexión TCP está en estado SYN-RECEIVED esperando una confirmación de confirmación de solicitud de conexión después de haber recibido y enviado una solicitud de conexión (paquete SYN).
MIB_TCP_STATE_ESTAB
5
La conexión TCP está en el estado ESTABLISHED que representa una conexión abierta, los datos recibidos se pueden entregar al usuario. Este es el estado normal de la fase de transferencia de datos de la conexión TCP.
MIB_TCP_STATE_FIN_WAIT1
6
La conexión TCP es el estado FIN-WAIT-1 en espera de una solicitud de terminación de conexión desde el TCP remoto o una confirmación de la solicitud de terminación de conexión enviada anteriormente.
MIB_TCP_STATE_FIN_WAIT2
7
La conexión TCP es el estado FIN-WAIT-1 en espera de una solicitud de terminación de conexión desde el TCP remoto.
MIB_TCP_STATE_CLOSE_WAIT
8
La conexión TCP está en estado CLOSE-WAIT esperando una solicitud de terminación de conexión del usuario local.
MIB_TCP_STATE_CLOSING
9
La conexión TCP está en estado CLOSING esperando una confirmación de solicitud de terminación de conexión desde el TCP remoto.
MIB_TCP_STATE_LAST_ACK
10
La conexión TCP está en el estado LAST-ACK esperando una confirmación de la solicitud de terminación de conexión enviada previamente al TCP remoto (que incluye una confirmación de su solicitud de terminación de conexión).
MIB_TCP_STATE_TIME_WAIT
11
La conexión TCP está en el estado TIME-WAIT esperando suficiente tiempo para pasar para asegurarse de que el TCP remoto recibió la confirmación de su solicitud de terminación de conexión.
MIB_TCP_STATE_DELETE_TCB
12
La conexión TCP está en el estado de eliminación de TCB que representa la eliminación del bloque de control de transmisión (TCB), una estructura de datos que se usa para mantener información sobre cada entrada TCP.

dwOwningPid

Tipo: DWORD

PID del proceso local que emitió un enlace de contexto para esta conexión TCP.

Comentarios

La estructura MIB_TCP6TABLE_OWNER_PID se devuelve mediante una llamada a GetExtendedTcpTable con el parámetro TableClass establecido en TCP_TABLE_OWNER_PID_LISTENER, TCP_TABLE_OWNER_PID_CONNECTIONS o TCP_TABLE_OWNER_PID_ALL de la enumeración TCP_TABLE_CLASS y el parámetro ulAf establecido en AF_INET6. La estructura MIB_TCP6TABLE_OWNER_PID contiene una matriz de estructuras de MIB_TCP6ROW_OWNER_PID .

El miembro dwState indica el estado de la entrada TCP en un diagrama de estado TCP. Una conexión TCP avanza a través de una serie de estados durante su vigencia. Los estados son: LISTEN, SYN-SENT, SYN-RECEIVED, ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-ACK, TIME-WAIT y el estado ficticio CLOSED. El estado CLOSED es ficticio porque representa el estado cuando no hay ningún bloque de control de transmisión y, por lo tanto, no hay conexión. El protocolo TCP se describe en RFC 793. Para obtener más información, vea http://www.ietf.org/rfc/rfc793.txt.

Los miembros dwLocalPort y dwRemotePort están en orden de bytes de red. Para usar los miembros dwLocalPort o dwRemotePort , es posible que se necesiten las funciones ntohs o inet_ntoa en Windows Sockets o funciones similares.

Los miembros dwLocalScopeId y dwRemoteScopeId están en orden de bytes de red. Para usar los miembros dwLocalScopeId o dwRemoteScopeId , es posible que se necesiten las funciones ntohl o inet_ntoa en Windows Sockets o funciones similares.

Los miembros ucLocalAddr y ucRemoteAddr se almacenan en una matriz de caracteres en orden de bytes de red. Las funciones RtlIpv6AddressToString o RtlIpv6AddressToStringEx se pueden usar para convertir la dirección IPv6 en los miembros ucLocalAddr o ucRemoteAddr en una cadena sin cargar el archivo DLL de Windows Sockets.

En el Kit de desarrollo de software (SDK) de Microsoft Windows publicado para Windows Vista y versiones posteriores, la organización de los archivos de encabezado ha cambiado. Esta estructura se define en el archivo de encabezado Tcpmib.h , no en el archivo de encabezado Iprtrmib.h . Tenga en cuenta que el archivo de encabezado Tcpmib.h se incluye automáticamente en Iprtrmib.h, que se incluye automáticamente en el archivo de encabezado Iphlpapi.h . Los archivos de encabezado Tcpmib.h e Iprtrmib.h nunca se deben usar directamente.

Requisitos

   
Cliente mínimo compatible Windows Vista, Windows XP con SP2 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008, Windows Server 2003 con SP1 [solo aplicaciones de escritorio]
Encabezado tcpmib.h (incluya Iphlpapi.h)

Consulte también

GetExtendedTcpTable

RtlIpv6AddressToString

RtlIpv6AddressToStringEx

TCP_TABLE_CLASS

inet_ntoa

ntohl

ntohs