Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(905)

Issue 2405042: ns3 RED Request for Comments

Can't Edit
Can't Publish+Mail
Start Review
Created:
15 years, 7 months ago by Duy
Modified:
15 years, 7 months ago
CC:
ns-3-reviews_googlegroups.com
Visibility:
Public.

Patch Set 1 #

Total comments: 13
Unified diffs Side-by-side diffs Delta from patch set Stats (+1426 lines, -0 lines) Patch
A examples/queue/red.cc View 1 chunk +333 lines, -0 lines 0 comments Download
A examples/queue/wscript View 1 chunk +5 lines, -0 lines 0 comments Download
A src/node/red-queue.h View 1 chunk +237 lines, -0 lines 6 comments Download
A src/node/red-queue.cc View 1 chunk +851 lines, -0 lines 7 comments Download

Messages

Total messages: 2
Mathieu Lacage
looks nice. minor comments. http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.cc File src/node/red-queue.cc (right): http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.cc#newcode47 src/node/red-queue.cc:47: .SetParent<Queue> () I don't know ...
15 years, 7 months ago (2010-10-13 09:14:32 UTC) #1
Tom Henderson
15 years, 7 months ago (2010-10-22 04:53:40 UTC) #2
Duy,
Please add ns-3-reviews@googlegroups.com to the cc list in this review issue.

My main comment is that more unit and flow-based tests are needed.  The existing
test just copies from DropTail and has nothing to do with RED.  

Have a look at this paper:
http://icir.org/floyd/red.html#ns

I think it would be a good goal to try to reproduce those tests for this
implementation, and document the tests in a tech report like Sally Floyd did. 
One thing that the data shows is a queue monitor with average and instantaneous
queue length.  

- Tom

http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.cc
File src/node/red-queue.cc (right):

http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.cc#newcode75
src/node/red-queue.cc:75: .AddAttribute ("m_qthMin",
again (see comment in the header file), I would try to align this name with what
is in the paper and make the member variable prefixed with "m_".  As per our
coding style, that probably would mean calling this attribute "MinTh" and the
variable m_minTh.

http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.cc#newcode524
src/node/red-queue.cc:524: return m_rmask & rand ();
do not use rand()-- use a random number from an ns-3 RandomVariable.

http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.cc#newcode637
src/node/red-queue.cc:637: //      m_qavg = AvgCalc (m_packets.size ());
this needs to be finished off

http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.h
File src/node/red-queue.h (right):

http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.h#newcode57
src/node/red-queue.h:57: * based on the Kuznetsov's implementation of Red in
Linux
I thought that this was implementation of the original RED from the paper, but
this comment suggests that it is taken partly from Linux?  Please clarify what
comes from where.

http://codereview.appspot.com/2405042/diff/1/src/node/red-queue.h#newcode215
src/node/red-queue.h:215: uint32_t m_qthMin; ///> Min avg length threshold
(bytes), should be < qthMax/2
To the extent possible, if you are copying algorithm from a paper, try to align
variable names.  For example, the original RED paper used min_th, but here you
have m_qthMin.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b