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 |
---|---|
|
autre (c’est-à-dire, aucun des éléments suivants) |
|
regular1822 |
|
hdh1822 |
|
ddn-x25 |
|
rfc877-x25 |
|
Ethernet-csmacd |
|
iso88023-csmacd |
|
iso88024-tokenBus |
|
iso88025-tokenRing |
|
iso88026-man |
|
starLan |
|
protéon-10Mbit |
|
proteon-80Mbit |
|
hyperchannel |
|
Fddi |
|
Lapb |
|
Sdlc |
|
ds1 (T-1) |
|
e1 (équiv. européen de T-1) |
|
basicISDN |
|
primaryISDN (série propriétaire) |
|
propPointToPointSerial |
|
Ppp |
|
softwareLoopback |
|
eon (CLNP sur IP [11]) |
|
Ethernet-3 Mbit |
|
nsip (XNS sur IP) |
|
slip (slip générique) |
|
ultra (technologies ULTRA) |
|
ds3 (T-3) |
|
sip (SMDS) |
|
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 |
---|---|
|
Haut ; prêt à passer des paquets. |
|
hors service. |
|
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 |
---|---|
|
Haut ; prêt à passer des paquets. |
|
hors service. |
|
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