Bug 2340 - RED incorrectly checks if there is enough room for a packet in byte mode
RED incorrectly checks if there is enough room for a packet in byte mode
Status: RESOLVED FIXED
Product: ns-3
Classification: Unclassified
Component: traffic-control
pre-release
PC Linux
: P5 trivial
Assigned To: Stefano Avallone
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2016-03-17 18:02 UTC by Stefano Avallone
Modified: 2016-03-18 00:19 UTC (History)
2 users (show)

See Also:


Attachments
Proposed fix (645 bytes, patch)
2016-03-17 18:02 UTC, Stefano Avallone
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Stefano Avallone 2016-03-17 18:02:42 UTC
Created attachment 2345 [details]
Proposed fix

The check performed by the DoEnqueue method of RED to determine whether a packet exceeds its limit:

nQueued >= m_queueLimit

is incorrect if RED operates in byte mode and leads to RED not recognizing that the packet will be dropped by the internal DropTail queue.

Please see:

https://groups.google.com/forum/?fromgroups#!topic/ns-3-users/Ic8J_Owe68c

for more context.

Attached is a patch contributed by Mohit and Lynne that fixes this check.
Comment 1 Tom Henderson 2016-03-18 00:19:05 UTC
pushed in changeset 12055:1ef99429c15e