Rate Measurement!! Contd...

arvind arvind_venkatesan at yahoo.com
Wed Feb 13 20:07:25 EST 2002


More questions Eddie !!

Could you throw some more light on the ToDevice element.

1. Does the ToDevice element send packets based on the line speed?
2. By any chance is the rate of sending packets out of ToDevice bounded by
the number of "packets" irrespective of line speed?

some experimental results (the line speed is 100Mbps)

1. RatedSource(RATE 10000000, LIMIT 10000000) -> AverageCounter() ->
ToDevice(eth0);

Result: The rated source supposedly makes a default packet size of 64
bytes.(for some reason when I do a Print()
the packet size comes out to be 69,..anyway..).
the rate measured by AverageCounter is 99149 pkts/sec.
(which is approx 45Mbps)

2. RatedSource(DATA <502 byte long>, RATE 10000000, LIMIT 10000000) ->
AverageCounter() -> ToDevice(eth0);

Result: The rate measured by AverageCounter is 23712 pkts/sec (which is
approx 100Mbps)

I guess this time the experiments are comparable.
Could you please tell me whats happening?

Thanks.

-arvind

Arvind Venkatesan
Grad Student
CS Dept
RPI, Troy 12180



----- Original Message -----
From: "Eddie Kohler" <kohler at icir.org>
To: "arvind" <arvind_venkatesan at yahoo.com>
Cc: <click at amsterdam.lcs.mit.edu>
Sent: Wednesday, February 13, 2002 2:59 PM
Subject: Re: Rate Measurement!!


> Hi Arvind,
>
> > 1. RatedSource(1234,10000000,10000000) -> AverageCounter() -> Discard();
> >
> > 2. RatedSource(1234,10000000,10000000) -> AverageCounter() ->
ToDevice(eth0);
> > the read handler value for rate was 95264.
> >
> > Since the 'rate' measures the arrival rate I expected both values to be
> > the same.
> >
> > Can anybody please explain the discrepancy???
> >
> > Does ToDevice (by any chance) adjust the rate depending on how much can
it
> > send out?
>
> The situations you have created are actually not comparable. In the first
> configuration, all the ports have been assigned to push (all ports are
> agnostic, and in the absence of any constraints, agnostic ports default to
> push). So RatedSource is in charge of how many packets get sent, and it
> sends as many as it can. In the second configuration, all the ports are
> assigned to pull (because ToDevice's input must be pull, and the
constraint
> propagates back). Now ToDevice is in charge of how many packets get sent,
> since it determines how many pull requests are made. Your assumption is
> right: ToDevice, here, is adjusting the rate depending on how much it can
> send out. For more on push and pull ports, see any of our general-purpose
> papers. To see whether a port is push or pull, check the
> /proc/click/NAME/ports handler.
>
> > In the second experiment sometimes I occassionally saw
> > this message : "ToDevice rejected a packet on eth0 !"
>
> That sounds like the "busy reject" case you talked about in your previous
> mail. It looks like you're triggering it. Was Linux sending any packets at
> the time?
>
> Eddie


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com




More information about the click mailing list