none
WEC7 Ethernet driver: Ping starts to fail with larger packets RRS feed

  • Question

  • Hi All!!

    I ported a Windows 7 driver to WEC7. The basic functionality is fine and I am able to ping between WEC7 client and a Win7 host. It works well when I continue ping with packets of around 1500 bytes. However when I increase the ping packet size to around 65000 bytes (for stress testing of the driver), ping starts to fail after around 200 packets have been pushed. Upon a l little more debugging I could find out that in this case packets are being indicated to NDIS (NdisMIndicateReceiveNetBufferLists getting called) but NDIS stops calling my MiniportSendNetBufferLists  routine. The calls to these two functions happen regularly while ping are going well. The reasons are not clear to me as to why NDIS stops calling the MiniportSendNetBufferLists routine.
    Can anyone suggest some pointers on this so that I can proceed...

    Thanks!

    Wednesday, February 26, 2014 7:37 PM

Answers

  • Balaji,
    Thanks for responding.

    I debugged some more and verified with "netstat" that the packets are being reported to the IP layer. As of now we are considering it as an issue with the IP layer. So the "malformation" is something we need to verify. Adding on to these info, if I stop the heavy ping while it starts to fail and start a normal ping, it goes well.

    Thanks!

    • Marked as answer by deepak_ Wednesday, December 10, 2014 2:21 PM
    Friday, February 28, 2014 10:31 AM

All replies

  • Hi,

    There could be several reasons. Most likely the packet(s) sent up the stack is/are malformed. The stack won't be able to decipher the packet(s) sent to it and is not forming a reply.

    You may try tracing the receive portions where you would be doing NET_BUFFER_LIST allocations(e.g. NdisAllocateNetBufferandNetBufferList) for higher packet sizes. Also any retreat and advance operations/operations on MDL might throw some light on the issue. 

    Regards,

    Balaji.

    Thursday, February 27, 2014 9:40 AM
  • Balaji,
    Thanks for responding.

    I debugged some more and verified with "netstat" that the packets are being reported to the IP layer. As of now we are considering it as an issue with the IP layer. So the "malformation" is something we need to verify. Adding on to these info, if I stop the heavy ping while it starts to fail and start a normal ping, it goes well.

    Thanks!

    • Marked as answer by deepak_ Wednesday, December 10, 2014 2:21 PM
    Friday, February 28, 2014 10:31 AM