MIB_TCP6ROW_OWNER_MODULE struttura (tcpmib.h)

La struttura MIB_TCP6ROW_OWNER_MODULE contiene informazioni che descrivono una connessione TCP IPv6 associata a un ID processo specifico (PID) con dati di proprietà.

Sintassi

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;

Members

ucLocalAddr[16]

Tipo: UCHAR[16]

Indirizzo IPv6 per l'endpoint locale della connessione TCP nel computer locale. Un valore pari a zero indica che il listener può accettare una connessione in qualsiasi interfaccia.

dwLocalScopeId

Tipo: DWORD

ID ambito nell'ordine di byte di rete per l'indirizzo IPv6 locale.

dwLocalPort

Tipo: DWORD

Numero di porta nell'ordine di byte di rete per l'endpoint locale della connessione TCP nel computer locale.

ucRemoteAddr[16]

Tipo: UCHAR[16]

Indirizzo IPv6 dell'endpoint remoto della connessione TCP nel computer remoto. Quando il membro dwState è MIB_TCP_STATE_LISTEN, questo valore non ha alcun significato.

dwRemoteScopeId

Tipo: DWORD

ID ambito nell'ordine di byte di rete per l'indirizzo IPv6 remoto.

dwRemotePort

Tipo: DWORD

Numero di porta nell'ordine di byte di rete per l'endpoint remoto della connessione TCP nel computer remoto.

dwState

Tipo: DWORD

Stato della connessione TCP. Questo membro può essere uno dei valori dell'enumerazione MIB_TCP_STATE definita nel file di intestazione Tcpmib.h . Si noti che il file di intestazione Tcpmib.h viene automaticamente incluso in Iprtrmib.h, incluso automaticamente nel file di intestazione Iphlpapi.h . I file di intestazione Tcpmib.h e Iprtrmib.h non devono mai essere usati direttamente.

Valore Significato
MIB_TCP_STATE_CLOSED
1
La connessione TCP si trova nello stato CLOSED che non rappresenta alcuno stato di connessione.
MIB_TCP_STATE_LISTEN
2
La connessione TCP si trova nello stato LISTEN in attesa di una richiesta di connessione da qualsiasi TCP e porta remota.
MIB_TCP_STATE_SYN_SENT
3
La connessione TCP si trova nello stato SYN-SENT in attesa di una richiesta di connessione corrispondente dopo aver inviato una richiesta di connessione (pacchetto SYN).
MIB_TCP_STATE_SYN_RCVD
4
La connessione TCP si trova nello stato SYN-RECEIVED in attesa di una conferma della richiesta di connessione dopo aver ricevuto e inviato una richiesta di connessione (pacchetto SYN).
MIB_TCP_STATE_ESTAB
5
La connessione TCP si trova nello stato ESTABLISHED che rappresenta una connessione aperta, i dati ricevuti possono essere recapitati all'utente. Questo è lo stato normale per la fase di trasferimento dei dati della connessione TCP.
MIB_TCP_STATE_FIN_WAIT1
6
La connessione TCP è lo stato FIN-WAIT-1 in attesa di una richiesta di terminazione della connessione dal TCP remoto o un riconoscimento della richiesta di terminazione della connessione inviata in precedenza.
MIB_TCP_STATE_FIN_WAIT2
7
La connessione TCP è lo stato FIN-WAIT-1 in attesa di una richiesta di terminazione della connessione dal TCP remoto.
MIB_TCP_STATE_CLOSE_WAIT
8
La connessione TCP si trova nello stato CLOSE-WAIT in attesa di una richiesta di terminazione della connessione dall'utente locale.
MIB_TCP_STATE_CLOSING
9
La connessione TCP si trova nello stato CLOSING in attesa di un riconoscimento della richiesta di terminazione della connessione dal TCP remoto.
MIB_TCP_STATE_LAST_ACK
10
La connessione TCP si trova nello stato LAST-ACK in attesa di un riconoscimento della richiesta di terminazione della connessione inviata in precedenza al TCP remoto (che include un riconoscimento della richiesta di terminazione della connessione).
MIB_TCP_STATE_TIME_WAIT
11
La connessione TCP si trova nello stato TIME-WAIT in attesa del tempo sufficiente per assicurarsi che il TCP remoto abbia ricevuto il riconoscimento della richiesta di terminazione della connessione.
MIB_TCP_STATE_DELETE_TCB
12
La connessione TCP si trova nello stato di eliminazione TCB che rappresenta l'eliminazione del blocco di controllo trasmissione (TCB), una struttura di dati usata per mantenere le informazioni su ogni voce TCP.

dwOwningPid

Tipo: DWORD

PID del processo locale che ha rilasciato un'associazione di contesto per questa connessione TCP.

liCreateTimestamp

Tipo: LARGE_INTEGER

Struttura FILETIME che indica quando si è verificata l'operazione di associazione del contesto che ha creato questa connessione TCP.

OwningModuleInfo[TCPIP_OWNING_MODULE_SIZE]

Tipo: ULONGLONG[TCPIP_OWNING_MODULE_SIZE]

Matrice di dati opachi che contiene informazioni sulla proprietà.

Commenti

La struttura MIB_TCP6TABLE_OWNER_MODULE viene restituita da una chiamata a GetExtendedTcpTable con il parametro TableClass impostato su un TCP_TABLE_OWNER_MODULE_LISTENER, TCP_TABLE_OWNER_MODULE_CONNECTIONSo TCP_TABLE_OWNER_MODULE_ALL dall'enumerazione TCP_TABLE_CLASS e il parametro ulAf impostato su AF_INET6. La struttura MIB_TCP6TABLE_OWNER_MODULE contiene una matrice di strutture MIB_TCP6ROW_OWNER_MODULE .

Il membro dwState indica lo stato della voce TCP in un diagramma di stato TCP. Una connessione TCP passa attraverso una serie di stati durante la sua durata. Gli stati sono: LISTEN, SYN-SENT, SYN-RECEIVED, ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-ACK, TIME-WAIT e lo stato fittizio CHIUSO. Lo stato CLOSED è fittizio perché rappresenta lo stato quando non è presente alcun blocco di controllo di trasmissione e quindi nessuna connessione. Il protocollo TCP è descritto in RFC 793. Per altre informazioni, vedere http://www.ietf.org/rfc/rfc793.txt.

I membri ucLocalAddr e ucRemoteAddr vengono archiviati in una matrice di caratteri in ordine di byte di rete. Le funzioni RtlIpv6AddressToString o RtlIpv6AddressToStringEx possono essere usate per convertire l'indirizzo IPv6 nei membri ucLocalAddr o ucRemoteAddr in una stringa senza caricare la DLL di Windows Sockets.

I membri dwLocalScopeId e dwRemoteScopeId sono in ordine di byte di rete. Per usare i membri dwLocalScopeId o dwRemoteScopeId, è possibile che siano necessarie le funzioni ntohl o inet_ntoa in Windows Sockets o funzioni simili.

I membri dwLocalPort e dwRemotePort sono in ordine di byte di rete. Per usare i membri dwLocalPort o dwRemotePort , è possibile che siano necessarie funzioni ntohs o inet_ntoa in Windows Sockets o funzioni simili.

In Microsoft Windows Software Development Kit (Windows SDK) (SDK) rilasciato per Windows Vista e versioni successive, l'organizzazione dei file di intestazione è stata modificata. Questa struttura è definita nel file di intestazione Tcpmib.h , non nel file di intestazione Iprtrmib.h . Si noti che il file di intestazione Tcpmib.h viene automaticamente incluso in Iprtrmib.h, incluso automaticamente nel file di intestazione Iphlpapi.h . I file di intestazione Tcpmib.h e Iprtrmib.h non devono mai essere usati direttamente.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista, Windows XP con SP2 [solo app desktop]
Server minimo supportato Windows Server 2008, Windows Server 2003 con SP1 [solo app desktop]
Intestazione tcpmib.h (includere Iphlpapi.h)

Vedi anche

GetExtendedTcpTable

RtlIpv6AddressToString

RtlIpv6AddressToStringEx

SYSTEMTIME

TCP_TABLE_CLASS

inet_ntoa

ntohl

ntohs