[Click] Jitter

J Klein JKlein at gmx.com
Thu Jan 6 12:58:30 EST 2005


Hi Philippe,

I did a quick and simple Jitter thing a few weeks ago - don't know whether
it is of any use for you or whether it is to simple (eg. nothing with
gaussian distribution). It consists of a queue and a Jitterunqueue element.
The queue is pretty much the standard click queue, just renamed and modified
to call a notifier function in Jitterunqueue (derived from delayunqueue)
everytime it enqueues a packet. In Jitterunqueue whenever this notifier
function is called a new departure time is determined and put in a ordered
list. The first element of the list determines the next departure time. Thus
packets stay in order and no packet exceeds the maximum delay. (though the
delay once determined for a packet at it's arrival might change if another
packet that arrives later is scheduled to be unqueued before the original
packet). Upon unqueueing a packet the departure time is erased from the list
and so on.

The delay is determined by just the usual (random() % maxdelay) but you
could replace it by whatever other function you want.

Be careful if you try jittering elements in nsclick. Using tasks did not
work for me in nsclick - tasks got called x times at the same time instance
and thereafter at the next scheduled event again x times, but not inbetween.
This way the jitter element with tasks in nsclick to me actually introduced
network synchronization rather than desynchronizing it. Using timers in the
simulator worked better, seems like a timer generates a new event at the
scheduled time.

 As I used the delayunqueue as basis for the Jitterunqueue - in user or
kernel level it uses tasks below 100000 usec and above this value timers.

If this satisfies your needs I will post you the code of the two elements
(due to the nsclick thing they are still crowded with click_chatter debug
output-I will have to clean them up before posting).

Regards,
-joachim  



Hi Phillipe,

I don't think anyone has written an element that adds random jitter, but
that does sound like a useful element to have around.  What type of jitter
do you want?  Just every packet is delayed by a uniform random amount?  I
assume you wouldn't want the jitter element to induce reordering...

E


On Dec 20, 2004, at 4:54 AM, Philippe De Neve wrote:

> Hi,
>
> has anybody written an element that adds jitter?
>
> greetz, Philippe.
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click






More information about the click mailing list