Re: Monitoring packet loss

Navdeep Parhar <[email protected]>
Newsgroups gmane.os.freebsd.devel.net
Message-ID <[email protected]>
On 8/7/24 7:06 AM, Alan Somers wrote:
> I'd like to track the rate of packet loss for outbound packets from
> some production servers.  Obviously, that's impossible.  But I think
> that the rate of TCP retransmissions should be a close proxy for
> packet loss.  Currently I can only observe TCP retransmissions by
> using wireshark, a slow and laborious process.  But it seems to me
> that the network stack should already have that information

The kernel already maintains a VNET-virtualized tcpstat structure for 
aggregate TCP stats.  netstat and systat grab these using the 
net.inet.tcp.stats sysctl.  This might work for you if you're okay with 
global and not per-interface information.

VNET_PCPUSTAT_DECLARE(struct tcpstat, tcpstat);	/* tcp statistics */

$ netstat -sp tcp | grep -iE 'retr|rexm'
$ systat -tcp

Regards,
Navdeep

 > Would it
> be possible to add a sysctl to expose the total number of
> retransmissions since boot?  This information would be very useful.
> It could reveal for example problems with a model of NIC, or
> congestion on one network segment but not another, or a regression in
> the OS.
> 
> -Alan
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.