Ethereal-dev: Re: [Ethereal-dev] throughput graph

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: "Fabio Mascio " <fmascio@xxxxxxxxxxxxx>
Date: Tue, 10 Sep 2002 23:21:55 +0800
Hi Pavel,
thank you very much for your patch, but I don't know if my email box can accept it, can I download from elsewhere?
About code I just mean that at 21st sample the sum is 	sum -= oldest->data;
but as you say the delta time is recomputed ONLY at the top of the next iteration of the loop, so the 21sf sum does
not has the bytes of the first sample (that furthermore they are NEVER added before so why subtract them now?) but the delta time is still calculated on 21 samples. 
If just the first time that i=21 oldest->data will be 0, the  throughput will be computed over 21 samples but byte and time will be synchronized.
Anyway I will give again a look  to the code, maybe I'm falling in mistake.


Fabio


----- Original Message -----
From: Pavel Mores <pvl@xxxxx>
Date: Mon, 9 Sep 2002 12:57:10 +0200 
To: ethereal-dev@xxxxxxxxxxxx
Subject: Re: [Ethereal-dev] throughput graph


> On Fri, Sep 06, 2002 at 07:09:13PM +0800, Fabio Mascio  wrote:
> 
> > Hi all,
> > I think ethereal is a great program and I use it especially for watching and optimizing the speed of my tcp connections in my wan.
> > I'm sorry if I made a mistake but
> > looking at the throughput graph code I think that the first time that 
> > "i > g->s.tput.nsegs" the value of "oldest->data" should be zero because the first packet is just the reference to calculate the delta time.
> > Instead in this way the first time you enter in this condition, you reduce the sum but not the delta time. 
> > 
> > 	if (i>g->s.tput.nsegs) {
> > 			sum -= oldest->data;
> > 			oldest=oldest->next;
> > 		}
> 
> Hi Fabio,
> 
> I'm not sure whether I understand your description correctly.
> 
> First, let me describe briefly the purpose of the code in question.
> 
> The idea is that for every TCP segment, the time of its arrival is taken
> and a point is plotted to the graph that corresponds to throughput
> computed over last s.tput.nsegs (actually 20, IIRC) segments.  In other
> words, last 20 segments (including this one) are taken, their data is
> summarized and divided by the time during which these 20 segments
> arrived.  I think the current code is correct with respect to this
> design because the delta time is recomputed at the top of the next
> iteration of the loop.
> 
> However, IMHO the design itself is dubious because the first 20 data
> points of the graph have slightly different semantics that the rest of
> the graph and because it often fails to produce a useful graph (data
> points can end up too scattered for an operator to be able to see a
> trend).  If you are interested in measuring throughput of TCP
> connections I can send you a rather largish patch which implements a
> *greatly* enhanced thoughput graphing including EWMA-ized algorithm and
> a GUI to set various parameters for the graph computation.
> 
> 	pvl
> 
> _______________________________________________
> Ethereal-dev mailing list
> Ethereal-dev@xxxxxxxxxxxx
> http://www.ethereal.com/mailman/listinfo/ethereal-dev
> 

   
-- 
_______________________________________________
Get your free email from http://mymail.operamail.com

Powered by Outblaze