Port NDIS par défaut

Le port zéro est réservé comme port par défaut pour un adaptateur miniport. Si le paramètre PortNumber d’une fonction ou le membre PortNumber d’une structure est défini sur zéro, soit le pilote miniport n’a alloué aucun port, soit l’activité actuelle n’est pas spécifique au port.

Pour obtenir un bon exemple du port NDIS par défaut, envisagez un pilote intermédiaire MUX D’équilibrage de charge et de basculement (LBFO). Le miniport virtuel d’un tel pilote peut être le port zéro (port par défaut). Le pilote intermédiaire peut affecter des ports aux cartes miniports sous-jacentes avec les numéros de port compris entre 1 et le nombre de ports (N). Un pilote qui se superpose peut envoyer des données au port zéro pour permettre au pilote LBFO de sélectionner l’un des ports sous-jacents, ou le pilote qui se superpose peut spécifier un numéro de port compris entre 1 et N pour choisir un port spécifique pour l’opération d’envoi.

Les pilotes miniport n’ont pas besoin d’allouer des ports ou de prendre en charge des numéros de port autres que le port par défaut. Même si un pilote miniport n’alloue pas de ports, NDIS alloue le port par défaut et l’active après que le pilote miniport a appelé la fonction NdisMSetMiniportAttributes pour définir les attributs d’inscription dans la structure NDIS_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES . Les pilotes Miniport peuvent démarrer des opérations sur le port par défaut lorsque NdisMSetMiniportAttribute retourne correctement. Dans ce cas, NDIS libère le port par défaut lorsque le pilote miniport retourne à partir de la fonction MiniportHaltEx .