NDIS LWF FilterReceiveNetBufferLists timings

I’m writing NDIS LWF filter which filters out packets and sends them to user mode app for further analysis. Filtering depends on order of packets. Since FilterReceiveNetBufferLists is called at DISPATCH IRQL probably as DPC. DPCs can be processed on multiple processors simultaneusly. I have debugged this and sometimes function is called on processor 0 and sometimes on processor 2 on my PC. How can i assure proper order of packets as they are coming into NIC?

>on my PC. How can i assure proper order of packets as they are coming into NIC?

You can’t. Below TCP you can’t.

Do the TCP reassembly yourself if you want.


Maxim S. Shatskih
Microsoft MVP on File System And Storage
xxxxx@storagecraft.com
http://www.storagecraft.com

ok, thank you!