How to reliably detect UDP packet loss.
Hi there,
My understanding is that given reliable transmission (ie no tx buffer overrun), UDP packets may be lost on three levels:
1. On the wire if your ethernet is suspect.
2. In the ethernet driver if there are not enough Rx buffer descriptors.
3. In the IP stack if the UDP socket buffers are to small and not serviced fast enough by your application.
My question is how do you reliably tell where packets get lost?
netstat -su will give you packet receive errors
This supposedly is an indication of the number of packets lost by means of (3).
I have a very good ethernet, but maybe packets are lost in my switch? How to detect this?
I have a good ethernet device (Intel e1000) and driver with 4096 rx buffer descriptors. How do I detect buffer overrun?
Is netstat -su a reliable counter for socket buffer overrun?
Regards
|