Partilhar via


Mantendo uma pilha de interface de rede

O NDIS fornece serviços para manter a tabela de pilha de interface (ifStackTable no RFC 2863). O NDIS mantém a tabela de pilha para adaptadores de miniporta NDIS, NDIS 5. x filtrar drivers intermediários e módulos de filtro NDIS. O NDIS também fornece serviços para permitir que drivers NDIS adicionem e excluam entradas nesta tabela. Para drivers intermediários do MUX, o NDIS não tem acesso à relação entre a interface de miniporto virtual e a interface inferior do protocolo. Portanto, os drivers intermediários do NDIS 6.0 MUX devem especificar essas relações de interface interna.

Para definir uma relação de pilha entre duas interfaces, qualquer driver NDIS pode passar os parâmetros HigherLayerIfIndex e LowerLayerIfIndex para a função NdisIfAddIfStackEntry . Esses parâmetros especificam um adaptador de rede que deve ser maior na pilha do adaptador de rede e um adaptador de rede que deve ser menor na pilha.

Um driver que tem informações de ordem de pilha sobre uma interface relacionada a outra interface (por exemplo, associações internas em um driver intermediário do MUX que não são visíveis para o NDIS) chama NdisIfAddIfStackEntry para preencher a tabela de pilha de interface. Essa função retornará NDIS_STATUS_SUCCESS se a entrada de pilha tiver sido feita com êxito. Normalmente, o componente que possui ou é o provedor de interface para a interface de camada superior (que HigherLayerIfIndex identifica) chama NdisIfAddIfStackEntry.

Para remover uma entrada de tabela de pilha, um driver passa os parâmetros HigherLayerIfIndex e LowerLayerIfIndex para a função NdisIfDeleteIfStackEntry .

Para obter um exemplo de como manter a pilha de interface, consulte o driver de exemplo MUX 6.0.