[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[altq 23] Re:





> -----Original Message-----
> From: owner-altq@csl.sony.co.jp [mailto:owner-altq@csl.sony.co.jp]On
> Behalf Of Kenjiro Cho
> Sent: Monday, June 07, 1999 8:15 AM
> To: Fulvio Risso
> Cc: altq@csl.sony.co.jp
> Subject: [altq 21] Re: When a class is delayed
> 
> ...
> This target idle time is used to set the undertime.
> 
>   --+-----------+---------+-------------+-------------------> time
>    now        ifnow                undertime
>                 <-pkttime-><-targetidle->
> 
> rmc_delay_action() tries to set the idle time to be offtime.
> 
> 	delay = undertime - target_idle + offtime
> 
>   ------------------+----------+--------+--------+--------->
>                    now       ifnow  undertime
>                 <-pkttime-><------ offtime ------>
> 
> Does this answer your questions?

Not really.
From the first graph, I can write:

	undertime= ifnow + pkttime + targetidle

From the second:

	delay = undertime - target_idle + offtime =
	= ifnow + pkttime + targetidle - target_idle + offtime =
	= ifnow + pkttime + offtime

==> the suspension time is computed according to ifnow. I think it should be used "now".


> I think that larger burst is caused by a negative avgidle.
> (I guess minidle should not be used)
> What happens when you set minidle to 0?  

Nothing of particularly interesting. The same test (MTU 9180, IP 9180, 2Mbps output, 73% class, one UPD flow) repeated when minidle=0 gives the followinf interarrival time:

130382 (microsec)
37360
37368
37365
37357
130580
37364
37944
37365
37362
129995
37364
37365
37364
37360
130579
37363
37361
37361
37366
130579

===> that is wrong (I guess).

	fulvio