Available since: Windows Packet Filter 3.2.20
The _FAST_IO_SECTION structure defines the memory layout of a shared-memory section mapped between the user-mode application and ndisrd.sys for ultra-low-latency packet transfer.
Declaration
typedef struct _FAST_IO_SECTION
{
volatile FAST_IO_SECTION_HEADER fast_io_header;
INTERMEDIATE_BUFFER fast_io_packets[ANY_SIZE];
} FAST_IO_SECTION, *PFAST_IO_SECTION;
Members
fast_io_header
A volatile FAST_IO_SECTION_HEADER containing synchronization flags and section state.
fast_io_packets
Array of INTERMEDIATE_BUFFER structures sized to ANY_SIZE. The total number of packet slots is determined during section allocation and initialization.
Remarks
Shared-memory Fast I/O transfers packets through an array of packet slots, with a packet count and synchronization flags in the section header. A section can contain multiple packets, and applications can process them in batches. WOW64 mode (running a 32-bit application on 64-bit Windows) is not supported for Fast I/O. The native unsorted read/send APIs also reject WOW64. For batched processing from a WOW64 application, use the adapter-scoped ReadPackets, SendPacketsToAdapter, and SendPacketsToMstcp APIs, whose native wrappers translate the WOW64 layouts.
See Also
InitializeFastIo, AddSecondaryFastIo, _FAST_IO_SECTION_HEADER