CoDel AQM discussions
 help / color / mirror / Atom feed
* [Codel] Python scripts from ns-3-dev GitHub repo
@ 2013-01-30 12:21 Igor Maravić
  2013-01-30 23:38 ` Andrew McGregor
  0 siblings, 1 reply; 4+ messages in thread
From: Igor Maravić @ 2013-01-30 12:21 UTC (permalink / raw)
  To: andrew.mcgregor; +Cc: codel, bloat

Hi Andrew,

I'm trying to use useful python scripts from ns-3-dev GitHub repo, but
unsuccessfully.

Could you provide some usage cases on how they should be used?

BR
Igor

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Codel] Python scripts from ns-3-dev GitHub repo
  2013-01-30 12:21 [Codel] Python scripts from ns-3-dev GitHub repo Igor Maravić
@ 2013-01-30 23:38 ` Andrew McGregor
  2013-01-31 10:57   ` Igor Maravić
  0 siblings, 1 reply; 4+ messages in thread
From: Andrew McGregor @ 2013-01-30 23:38 UTC (permalink / raw)
  To: igorm; +Cc: codel, andrew.mcgregor, bloat

[-- Attachment #1: Type: text/plain, Size: 1969 bytes --]

Ok, so multirun.py runs a whole set of experiments.  The various commented
bits of code around line 85 give ways to do ranges of options in several
different ways.  The options are just passed as text to tcp_qfp.cc.  It
runs experiment cases in parallel, one for each core in your machine.

That will produce a huge number of files, with names that tell you which
experiment they belong to and which nodes in the topology they were
collected from.  Then you can analyse them.

burstmemoryestimators.py is a graphing routine that gives you a whole lot
of information about what happened in each run.  It opens the ptrace files
left by the experiment (passed as an argument, you want a file called
something like tcp_qfp-1-11-Left.pcap if there were 10 nodes in your
experiment), and calculates a bunch of statistics: packet interarrival time
(blue dots), burstiness metric (red) and queue markov memory metric (green).

The burstiness metric runs from -1 (periodic) through 0 (Poisson process)
to +1 (1/f noise).

The memory metric is zero if the queue is perfectly memoryless, and
non-zero proportional to how much memory it has.  Thus it shows the queue's
contribution to interarrival time statistics.  Note that a queue is
memoryless both if it is empty OR if it is completely full, and this metric
is signed (negative if the queue is draining).

It only makes sense to run this script on a leaf link; if there is more
than one flow, the estimators will not track flows separately and thus will
not make sense.


On Wed, Jan 30, 2013 at 11:21 PM, Igor Maravić <igorm@etf.rs> wrote:

> Hi Andrew,
>
> I'm trying to use useful python scripts from ns-3-dev GitHub repo, but
> unsuccessfully.
>
> Could you provide some usage cases on how they should be used?
>
> BR
> Igor
> _______________________________________________
> Codel mailing list
> Codel@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/codel
>

[-- Attachment #2: Type: text/html, Size: 2578 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Codel] Python scripts from ns-3-dev GitHub repo
  2013-01-30 23:38 ` Andrew McGregor
@ 2013-01-31 10:57   ` Igor Maravić
  2013-01-31 11:58     ` Andrew McGregor
  0 siblings, 1 reply; 4+ messages in thread
From: Igor Maravić @ 2013-01-31 10:57 UTC (permalink / raw)
  To: Andrew McGregor; +Cc: codel, andrew.mcgregor, bloat

Thanks Andrew,

I managed to start simulations. Unfortunately it wasn't as easy as expected.

You forgot to add patch that added some cmd line arguments to tcp-qfp
and which you're using in python script + there were some problems
with python script.

Anyway, Thanks :)

BR
Igor

2013/1/31 Andrew McGregor <andrewmcgr@gmail.com>:
> Ok, so multirun.py runs a whole set of experiments.  The various commented
> bits of code around line 85 give ways to do ranges of options in several
> different ways.  The options are just passed as text to tcp_qfp.cc.  It runs
> experiment cases in parallel, one for each core in your machine.
>
> That will produce a huge number of files, with names that tell you which
> experiment they belong to and which nodes in the topology they were
> collected from.  Then you can analyse them.
>
> burstmemoryestimators.py is a graphing routine that gives you a whole lot of
> information about what happened in each run.  It opens the ptrace files left
> by the experiment (passed as an argument, you want a file called something
> like tcp_qfp-1-11-Left.pcap if there were 10 nodes in your experiment), and
> calculates a bunch of statistics: packet interarrival time (blue dots),
> burstiness metric (red) and queue markov memory metric (green).
>
> The burstiness metric runs from -1 (periodic) through 0 (Poisson process) to
> +1 (1/f noise).
>
> The memory metric is zero if the queue is perfectly memoryless, and non-zero
> proportional to how much memory it has.  Thus it shows the queue's
> contribution to interarrival time statistics.  Note that a queue is
> memoryless both if it is empty OR if it is completely full, and this metric
> is signed (negative if the queue is draining).
>
> It only makes sense to run this script on a leaf link; if there is more than
> one flow, the estimators will not track flows separately and thus will not
> make sense.
>
>
> On Wed, Jan 30, 2013 at 11:21 PM, Igor Maravić <igorm@etf.rs> wrote:
>>
>> Hi Andrew,
>>
>> I'm trying to use useful python scripts from ns-3-dev GitHub repo, but
>> unsuccessfully.
>>
>> Could you provide some usage cases on how they should be used?
>>
>> BR
>> Igor
>> _______________________________________________
>> Codel mailing list
>> Codel@lists.bufferbloat.net
>> https://lists.bufferbloat.net/listinfo/codel
>
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Codel] Python scripts from ns-3-dev GitHub repo
  2013-01-31 10:57   ` Igor Maravić
@ 2013-01-31 11:58     ` Andrew McGregor
  0 siblings, 0 replies; 4+ messages in thread
From: Andrew McGregor @ 2013-01-31 11:58 UTC (permalink / raw)
  To: igorm; +Cc: codel, andrew.mcgregor, bloat

[-- Attachment #1: Type: text/plain, Size: 2667 bytes --]

Yes, sorry.  Very much work in progress, and was uploaded in a hurry.

Still, glad you got somewhere with it.

Andrew

On 31/01/2013, at 9:57 PM, Igor Maravić <igorm@etf.rs> wrote:

> Thanks Andrew,
> 
> I managed to start simulations. Unfortunately it wasn't as easy as expected.
> 
> You forgot to add patch that added some cmd line arguments to tcp-qfp
> and which you're using in python script + there were some problems
> with python script.
> 
> Anyway, Thanks :)
> 
> BR
> Igor
> 
> 2013/1/31 Andrew McGregor <andrewmcgr@gmail.com>:
>> Ok, so multirun.py runs a whole set of experiments.  The various commented
>> bits of code around line 85 give ways to do ranges of options in several
>> different ways.  The options are just passed as text to tcp_qfp.cc.  It runs
>> experiment cases in parallel, one for each core in your machine.
>> 
>> That will produce a huge number of files, with names that tell you which
>> experiment they belong to and which nodes in the topology they were
>> collected from.  Then you can analyse them.
>> 
>> burstmemoryestimators.py is a graphing routine that gives you a whole lot of
>> information about what happened in each run.  It opens the ptrace files left
>> by the experiment (passed as an argument, you want a file called something
>> like tcp_qfp-1-11-Left.pcap if there were 10 nodes in your experiment), and
>> calculates a bunch of statistics: packet interarrival time (blue dots),
>> burstiness metric (red) and queue markov memory metric (green).
>> 
>> The burstiness metric runs from -1 (periodic) through 0 (Poisson process) to
>> +1 (1/f noise).
>> 
>> The memory metric is zero if the queue is perfectly memoryless, and non-zero
>> proportional to how much memory it has.  Thus it shows the queue's
>> contribution to interarrival time statistics.  Note that a queue is
>> memoryless both if it is empty OR if it is completely full, and this metric
>> is signed (negative if the queue is draining).
>> 
>> It only makes sense to run this script on a leaf link; if there is more than
>> one flow, the estimators will not track flows separately and thus will not
>> make sense.
>> 
>> 
>> On Wed, Jan 30, 2013 at 11:21 PM, Igor Maravić <igorm@etf.rs> wrote:
>>> 
>>> Hi Andrew,
>>> 
>>> I'm trying to use useful python scripts from ns-3-dev GitHub repo, but
>>> unsuccessfully.
>>> 
>>> Could you provide some usage cases on how they should be used?
>>> 
>>> BR
>>> Igor
>>> _______________________________________________
>>> Codel mailing list
>>> Codel@lists.bufferbloat.net
>>> https://lists.bufferbloat.net/listinfo/codel
>> 
>> 


[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 2326 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-01-31 11:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-01-30 12:21 [Codel] Python scripts from ns-3-dev GitHub repo Igor Maravić
2013-01-30 23:38 ` Andrew McGregor
2013-01-31 10:57   ` Igor Maravić
2013-01-31 11:58     ` Andrew McGregor

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox