Choosing a Send Function (Windows Embedded CE 6.0)
1/6/2010
A miniport NIC driver for connectionless media can handle sends by supplying either of the following functions:
MiniportSendPackets can input more than one packet in a single call. NDIS passes packets to MiniportSendPackets as an array of pointers to packet descriptors. MiniportSend, however, can input only one packet in a single call.
In general, a miniport supplies a MiniportSendPackets function if it can simultaneously send multiple packets to its NIC. For example, a miniport that manages a busmaster direct memory access (DMA) NIC that has an onboard ring typically supplies a MiniportSendPackets function. For such a NIC, the miniport can set up the ring with a number of packets and transmit them in a single operation.
Even if a NIC can only accept one packet at a time for transmission, you can improve performance by queuing within the miniport packets received by MiniportSendPackets. Such a strategy avoids the latency of repeated calls to MiniportSend.
If a miniport NIC driver supplies entry points for both MiniportSend and MiniportSendPackets in NDIS_MINIPORT_CHARACTERISTICS, NDIS always calls MiniportSendPackets to pass send requests to the miniport.
See Also
Reference
MiniportSendPackets
MiniportSend
NDIS_MINIPORT_CHARACTERISTICS