Compartilhar via


Sending on a WAN Miniport Driver

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Um superior-camada driver chamadas a NdisSend função para enviar pacotes para um subjacente rede de longa distância (WAN) driver de miniporta. O adaptador intermediário driver, em seguida, encaminha os pacotes do canto superior-driver camada. Antes de encaminhar pacotes adaptador, ele repackages-los. Adaptador também reformata a estrutura de pacotes de Estrutura de pacote NDIS Estruturas em NDIS_WAN_PACKET Estruturas antes de encaminhamento.

Após adaptador encaminha pacotes, NDIS chama o rede de longa distância (WAN) Envia do driver de miniporta função. Para um padrão rede de longa distância (WAN) driver de miniporta, essa função de envio é MiniportWanSend. MiniportWanSend transmite pacotes através de NIC até a rede ampla área.

Propriedade do descritor de pacote e os dados pacote é transferida para o rede de longa distância (WAN) driver de miniporta até que o envio for concluído, ou sincronicamente de forma assíncrona. O rede de longa distância (WAN) driver de miniporta retorna NDIS_STATUS_PENDING da sua função de envio para indicar que ela não concluiu a transmissão de pacote. Para um padrão rede de longa distância (WAN) é driver de miniporta, essa função de conclusão NdisMWanSendComplete.

Essas chamadas de conclusão não necessariamente implica que um pacote tenha sido transmitido, embora, com a exceção de placas de rede inteligentes, o pacote geralmente foi transmitida. Essas chamadas, no entanto, indicar que a rede de longa distância (WAN) driver de miniporta está pronto para a propriedade versão do pacote.

Se o rede de longa distância (WAN) driver de miniporta retorna um status Other Than NDIS_STATUS_PENDING, a operação de envio é considerada completo e propriedade do pacote imediatamente reverte para o chamador. Neste maiúsculas e minúsculas, rede de longa distância driver de miniporta não chamar uma função de conclusão para esse pacote.

Após o rede de longa distância (WAN) driver de miniporta recebe os pacotes, ele deve enviar os pacotes para o conexão ativa.

Ao contrário dos drivers de miniporta LAN, rede de longa distância cannotreturn driver de miniporta um status de NDIS_STATUS_RESOURCES para indicar que ele não tem suficiente disponível recursos ao processo de transmissão de pacotes. Em vez disso, o rede de longa distância (WAN) deve driver de miniporta fila a operação de envio internamente para um tempo posterior e talvez inferior a enviar-valor janela sobre a conexão. Este enviar-valor janela é o número de pendente pacotes que a rede de longa distância (WAN) pode driver de miniporta identificador por conexão e é especificado, o driver de miniporta para um superior-driver camada.

O rede de longa distância (WAN) driver de miniporta especifica o número usar como padrão de pendente pacotes que ele pode ter por canalizar dados na MaxTransmit membro das NDIS_WAN_INFO estrutura. O driver de miniporta fornece essa estrutura quando o driver de miniporta responde a OID_WAN_GET_INFO solicitação do driver de protocolo. No entanto, o driver de miniporta pode gerenciar a janela de envio em uma base por linha por chamado e dinamicamente NdisMIndicateStatus Com uma indicação fila. Neste chamar, o driver de miniporta fornece um novo diferente de zero valor para o SendWindow membro das NDIS_MAC_LINE_UP estrutura passado a chamar. Se o driver de miniporta define o valor da SendWindow membro para 0, adaptador usa o valor usar como padrão in MaxTransmit Para essa linha.

O padrão rede de longa distância (WAN) driver de miniporta talvez precise modificar ou adicionar para o cabeçalho bem como adicionar ao final do pacote, de exemplo, para adicionar o FCS. O apropriado driver fornecido da miniporta preenchimento no início e fim do pacote anteriormente. O rede de longa distância (WAN) driver de miniporta pode alterar os dados no pacote de qualquer forma para enviar esse pacote na rede de longa distância médio.

Também é um erro para o rede de longa distância (WAN) driver de miniporta para chamar o NdisMSendResourcesAvailable função.

Pacotes que são passados para o rede de longa distância (WAN) enviar função do driver de miniporta conterá estruturas PPP HDLC simples se estruturas PPP for definida. Para estruturas Remote Access Service (RAS) ou Serial Line Internet Protocol (SLIP), pacotes contêm somente o parte de dados com nenhum estruturas.

Um rede de longa distância (WAN) NIC driver deve tentar fornecer software auto-retorno não ou promíscuo-auto-retorno modo. Ambas essas tipos auto-retorno forem totalmente com suporte no driver de adaptador.

A seguinte lista mostra informações sobre o NDIS rede de longa distância (WAN) pacote:

  • O MacReservedx Membros bem como a WanPacketQueue membro de structurecan de NDIS_WAN_PACKET ser usada pelo padrão rede de longa distância (WAN) driver de miniporta.
  • O disponível preenchimento cabeçalho é simplesmente CurrentBuffer-StartBuffer. O disponível finalizar preenchimento é EndBuffer-(CurrentBuffer+CurrentLength). O cabeçalho e preenchimento final é há garantias seja pelo menos a quantidade solicitada, mas pode ser mais.

See Also

Reference

MiniportWanSend
NDIS_MAC_LINE_UP
NDIS_WAN_INFO
NDIS_WAN_PACKET
NdisMIndicateStatus
NdisMSendResourcesAvailable
NdisMWanSendComplete
NdisMWanSendComplete
NdisSend
OID_WAN_GET_INFO

Concepts

WAN Miniport Drivers
NDIS Packet Structure