When a miniport indicates a IP packet fragment does the TCP/IP stack
queue the packet and wait for all fragments to arrive before returning
the NDIS_PACKET to the miniport or does the stack copy out the received
fragment and return the NDIS_PACKET as soon as possible? Thanks in
advance.
sincerely,
Vedvyas Shanbhogue
If a miniport indicates a packet and the status of that packet is *not* set
to NDIS_STATUS_RESOURCES, the TCPIP stack may hold onto that packet even
beyond reassembly; for instance, until the data associated with the packet
is delivered to the receiving program.
A miniport cannot and must not rely on any specific behavior on the part of
a bound protocol other than nominal NDIS packet rules. An intervening
driver (a packet filter) may change the apparent behavior of TCPIP.SYS as
observed by the miniport (consider the PSCHED filter) and thus even if you
knew with certainty how TCPIP.SYS would handle a particular situation, as a
Miniport, it still would not be guaranteed to behave so.
If your miniport cannot tolerate a protocol holding on to a packet, set the
status of the packet to NDIS_STATUS_RESOURCES before indicating it and force
the stack to copy it.
Good Luck,
Dave Cattley
Consulting Engineer
Systems Software Development
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Shanbhogue, Vedvyas
Sent: Friday, March 24, 2006 10:36 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] TCP/IP Protocol Behaviour question
When a miniport indicates a IP packet fragment does the TCP/IP stack queue
the packet and wait for all fragments to arrive before returning the
NDIS_PACKET to the miniport or does the stack copy out the received fragment
and return the NDIS_PACKET as soon as possible? Thanks in advance.
sincerely,
Vedvyas Shanbhogue
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer