Recevoir des indications avec Header-Data Split

Un pilote miniport qui prend en charge le fractionnement d’en-tête-données doit indiquer les données reçues au format requis par le fractionnement des données d’en-tête. Par exemple, les mémoires tampons d’en-tête doivent toutes se trouver dans un bloc de stockage contigu et les mémoires tampons de données doivent inclure un espace de remplissage.

Les informations d’en-tête dans les trames fractionnées ne doivent jamais inclure de balises de réseau local virtuel (VLAN). Le fractionnement des données d’en-tête nécessite la prise en charge du réseau local virtuel dans le matériel et nécessite la suppression des balises VLAN des trames entrantes et leur placement dans les informations OOB Ieee8021QNetBufferListInfo dans la structure NET_BUFFER_LIST . Le pilote miniport doit spécifier la prise en charge du VLAN dans le membre MacOptions de la structure NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES et en réponse à la requête OID OID_GEN_MAC_OPTIONS .

NDIS et les pilotes de sur-ment ou les applications en mode utilisateur utilisent l’OID OID_GEN_HD_SPLIT_PARAMETERS pour définir les paramètres actuels de fractionnement des données d’en-tête d’un adaptateur miniport. Si l’indicateur NDIS_HD_SPLIT_COMBINE_ALL_HEADERS dans le membre HDSplitCombineFlags de la structure NDIS_HD_SPLIT_PARAMETERS est défini, l’adaptateur miniport doit combiner tous les trames fractionnées. Si le fractionnement d’en-tête-données est activé dans le matériel, le pilote miniport doit combiner l’en-tête et les données avant d’indiquer la trame à NDIS. Pour plus d’informations sur OID_GEN_HD_SPLIT_PARAMETERS et d’autres problèmes d’administration et de configuration, consultez Administration et configuration du fractionnement des données d’en-tête.

Cette section comprend :

Allocation de la mémoire tampon d’en-tête

Allocation du remplissage pour la mémoire tampon de données

Définition des informations de NET_BUFFER_LIST