Partager via


IfEntry, structure (tcpioctl.h)

[Cette structure peut être modifiée ou indisponible dans les versions ultérieures de Windows.]

Décrit une interface TCP/IP conforme à la norme SNMPv2 (Simple Network Management Protocol, version 2) pour la base d’informations de gestion pour la gestion réseau des réseaux TCP/IP (MIB-II), comme spécifié dans la requête de commentaires (RFC) de l’Internet Engineering Task Force (IETF ) 1213 aux pages 16 à 23.

Syntaxe

typedef struct IFEntry {
  ulong if_index;
  ulong if_type;
  ulong if_mtu;
  ulong if_speed;
  ulong if_physaddrlen;
  uchar if_physaddr[MAX_PHYSADDR_SIZE];
  ulong if_adminstatus;
  ulong if_operstatus;
  ulong if_lastchange;
  ulong if_inoctets;
  ulong if_inucastpkts;
  ulong if_innucastpkts;
  ulong if_indiscards;
  ulong if_inerrors;
  ulong if_inunknownprotos;
  ulong if_outoctets;
  ulong if_outucastpkts;
  ulong if_outnucastpkts;
  ulong if_outdiscards;
  ulong if_outerrors;
  ulong if_outqlen;
  ulong if_descrlen;
  uchar if_descr[1];
} IFEntry;

Membres

if_index

Valeur comprise entre 1 et le nombre d’interfaces réseau présentes sur ce système, quel que soit leur état actuel, qui identifie de façon unique cette interface et persiste lors de la réinitialisation du système de gestion réseau.

if_type

Type d’interface en fonction du ou des protocoles physiques ou de liaison immédiatement en dessous de la couche réseau dans la pile de protocoles. Le tableau suivant répertorie les valeurs possibles de ce membre if_type énumérés aux pages 18 et 19 de la RFC 1213.

Valeur Signification
1
autre (c’est-à-dire, aucun des éléments suivants)
2
regular1822
3
hdh1822
4
ddn-x25
5
rfc877-x25
6
Ethernet-csmacd
7
iso88023-csmacd
8
iso88024-tokenBus
9
iso88025-tokenRing
10
iso88026-man
11
starLan
12
protéon-10Mbit
13
proteon-80Mbit
14
hyperchannel
15
Fddi
16
Lapb
17
Sdlc
18
ds1 (T-1)
19
e1 (équiv. européen de T-1)
20
basicISDN
21
primaryISDN (série propriétaire)
22
propPointToPointSerial
23
Ppp
24
softwareLoopback
25
eon (CLNP sur IP [11])
26
Ethernet-3 Mbit
27
nsip (XNS sur IP)
28
slip (slip générique)
29
ultra (technologies ULTRA)
30
ds3 (T-3)
31
sip (SMDS)
32
frame-relay(32)
 

Incluez le fichier d’en-tête Ipifcons.h du Kit de développement logiciel (SDK) Microsoft pour les constantes d’indicateur prenant en charge ces types d’interface IP et d’autres.

Lorsque vous examinez la valeur du membre if_type , vous pouvez également définir et tester une constante supplémentaire qui identifie une interface « bouclage » : #define IF_TYPE_LOOPBACK 0

if_mtu

Taille, en octets, du plus grand datagramme pouvant être envoyé ou reçu sur l’interface. Pour les interfaces utilisées pour transmettre des datagrammes réseau, il s’agit de la taille du plus grand datagramme réseau qui peut être envoyé sur l’interface.

if_speed

Estimation de la bande passante actuelle de l’interface, en bits par seconde. Pour les interfaces qui ne varient pas en bande passante ou pour lesquelles aucune estimation précise ne peut être effectuée, ce membre contient la bande passante nominale.

if_physaddrlen

Longueur, en octets, de l’adresse contenue dans le membre if_physaddr . Pour les interfaces telles que les ports série qui n’ont pas d’adresse de ce type, le membre if_physaddrlen est égal à zéro.

if_physaddr[MAX_PHYSADDR_SIZE]

Adresse de l’interface au niveau de la couche de protocole immédiatement en dessous de la couche réseau dans la pile de protocoles. Pour les interfaces telles que les ports série qui n’ont pas d’adresse de ce type, le membre if_physaddr contient une chaîne vide.

if_adminstatus

État souhaité de l’interface ; l’une des valeurs suivantes spécifiées à la page 20 de la RFC 1213.

Valeur Signification
1
Haut ; prêt à passer des paquets.
2
hors service.
3
Dans un état de test, de sorte qu’aucun paquet opérationnel ne puisse être passé.

if_operstatus

État opérationnel actuel réel de l’interface ; l’une des valeurs suivantes spécifiées à la page 20 de la RFC 1213.

Valeur Signification
1
Haut ; prêt à passer des paquets.
2
hors service.
3
Dans un état de test, de sorte qu’aucun paquet opérationnel ne puisse être passé.

if_lastchange

Heure, en centièmes de seconde, depuis la dernière réinitialisation de la partie gestion du réseau du système, à laquelle cette interface est entrée dans son état opérationnel actuel réel. Si l’état actuel a été entré avant la dernière réinitialisation du sous-système de gestion du réseau local, ce membre est défini sur zéro.

if_inoctets

Nombre total d’octets reçus sur cette interface, y compris les caractères de cadrage.

if_inucastpkts

Nombre de paquets de monodiffusion de sous-réseau remis à un protocole de couche supérieure.

if_innucastpkts

Nombre de paquets non monodiffusion (diffusion de sous-réseau ou multidiffusion de sous-réseau) remis à un protocole de couche supérieure.

if_indiscards

Nombre de paquets entrants qui ont été ignorés pour libérer des ressources de mémoire ou pour une autre raison similaire qui n’est pas liée à une erreur qui empêcherait leur livrable dans un protocole de couche supérieure.

if_inerrors

Nombre de paquets entrants qui contiennent des erreurs qui les empêchent d’être livrables dans un protocole de couche supérieure.

if_inunknownprotos

Nombre de paquets entrants qui ont été ignorés en raison d’un protocole inconnu ou non pris en charge.

if_outoctets

Nombre total d’octets transmis hors de l’interface, y compris les caractères d’encadrement.

if_outucastpkts

Nombre total de paquets que des protocoles de niveau supérieur ont demandé à être transmis à une adresse de monodiffusion de sous-réseau, y compris ceux qui ont été ignorés ou non envoyés.

if_outnucastpkts

Nombre total de paquets que des protocoles de niveau supérieur ont demandé à être transmis à une adresse non monodiffusion (diffusion de sous-réseau ou multidiffusion de sous-réseau), y compris ceux qui ont été ignorés ou non envoyés.

if_outdiscards

Nombre de paquets sortants qui ont été ignorés pour libérer des ressources de mémoire ou pour d’autres raisons similaires qui ne sont pas liées à une erreur qui empêcherait leur transmission.

if_outerrors

Nombre de paquets sortants qui n’ont pas pu être transmis en raison d’erreurs.

if_outqlen

Nombre actuel de paquets dans la file d’attente de paquets de sortie.

if_descrlen

Taille, en octets, sans aucun caractère null de fin, du texte de description de l’interface contenu dans le membre if_descr .

if_descr[1]

Chaîne de texte qui contient des informations sur cette interface, notamment le nom du fabricant, le nom du produit et la version du matériel. Si la chaîne n’est pas incluse, la taille de la mémoire tampon est de 1 octet.

Remarques

En raison de sa longueur variable if_descr membre, la structure IFEntry n’a pas de taille fixe. Pour allouer de la mémoire pour contenir une instance réelle de la structure, une taille de mémoire tampon raisonnablement sûre peut être calculée comme suit :

maxIFEntryLen = sizeof(IFEntry) + MAX_ADAPTER_DESCRIPTION_LENGTH + 1;

Configuration requise

Condition requise Valeur
En-tête tcpioctl.h

Voir aussi

IOCTL_TCP_QUERY_INFORMATION_EX

Informations de référence sur la base d’informations de gestion