Date: Thu, 18 Sep 2003 10:03:11 -0500 From: Dan Nelson <dnelson@allantgroup.com> To: Terry Lambert <tlambert2@mindspring.com> Cc: "freebsd-hackers@FreeBSD. ORG" <freebsd-hackers@freebsd.org> Subject: Re: TCP information Message-ID: <20030918150311.GG51544@dan.emsphone.com> In-Reply-To: <3F6975BD.14CD05EE@mindspring.com> References: <GPEOJKGHAMKFIOMAGMDIMEHHELAC.deepak@ai.net> <3F6975BD.14CD05EE@mindspring.com>
next in thread | previous in thread | raw e-mail | index | archive | help
In the last episode (Sep 18), Terry Lambert said: > Deepak Jain wrote: > > Is there a utility/hack/patch that would allow a diligent sysadmin > > to obtain which specific TCP connections are generating retransmits > > and receiving packet drops? netstat will show me drops on an > > interface, but not on a specific source/dest pair? > > These types of statistics aren't kept. > > They usually do not make it into commercial product distributions for > performance reasons, and because every byte added to a tcpcb > structure is one byte less that can be used for something else. In > practice, adding 134 bytes of statistics to a tcpcb would double its > size and halve the number of simultaneous connections you would be > able to support with the same amount of RAM in a given machine (as > one example), if all of that memory had to come out of the same > space, all other things being equal. tcpcb is currently 236 bytes though, and I don't imagine adding another 8 bytes for an unsigned long "dropped packets" counter is going to kill him. Deepak: if you really want stats, try adding a struct tcpstat to tcpcb and hack all the netinet/tcp* code to update those whenever the global tcpstat gets updated. You'll get all the info that netstat -s prints, for each socket. *That* will definitely double the size of struct tcpcb :) -- Dan Nelson dnelson@allantgroup.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030918150311.GG51544>