Subject: Re: [vserver] Traffic accounting
From: Herbert Poetzl <herbert@13thfloor.at>
Date: Sat, 10 Jan 2009 05:27:07 +0100

On Fri, Jan 09, 2009 at 05:14:08PM -0500, Cedric Veilleux wrote:
> Herbert,
> 
> Thank you for the clarifications.
> 
> > do your guest _share_ IPs between them? 
> > if not, the best and simplest way to get proper
> > on-wire accounting is to add an iptables account
> > rule, and feed that into your collecting/graphing
> > solution
> 
> OK, I will investigate this solution.
> 
> 
> > > Are there known problems with the vserver traffic 
> > > accounting via proc?
> > 
> > besides the fact, that there is no traffic accounting
> > for Linux-VServer guests via proc, no :)
> > 
> > the cacct entry in /proc/virtual/<xid> accounts the
> > sockets (send/receive/fail) of a guest, which can be
> > a lot less than the actual on-wire traffic (due to
> > headers, retransmissions, etc)
> 
> OMG! Well this does come as a surprise to me.

okay, probably I should rephrase/clarify that
a little more here:

processes use sockets to transfer data 
on the local machine and via network.
network sockets usually result in network
packets being transferred via network
interfaces :)

> The header of the cacct file reads:
> 
> Type	  recv #/bytes	  send #/bytes	   fail #/bytes
> 
> So I assumed the first number was the number of packets 
> and second the number of bytes transferred..

that assumption is correct, but it accounts
the data handled by the sockets, not by the
network interfaces ...

> I guess the collectd people assumed the same thing since 
> the generated graphs under a default install does show 
> traffic as bit/s as well as total amount transferred 
> (in/outgoing) directly from these numbers.

nothing wrong with that, as long as it doesn't
claim it is on-wire network traffic, IMHO :)

best,
Herbert

> Thank you,
> 
> Cedric
> 
> 
> 
> 
> 
>