TCP information
Dan Nelson
dnelson at allantgroup.com
Thu Sep 18 08:03:14 PDT 2003
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 at allantgroup.com
More information about the freebsd-hackers
mailing list