[Cake] Doubt regarding the Linux implementation of Cake

vignesh kannan vignesh2496 at gmail.com
Wed Mar 29 13:34:30 EDT 2017


I am Vignesh, and I am new to this mailing list. I have been going through
the Cobalt AQM algorithm implemented in the Cake framework since the last
two weeks. Here is the link :

The C file : https://github.com/dtaht/sch_cake/blob/master/cobalt.c
The header file : https://github.com/dtaht/sch_cake/blob/master/cobalt.h

I have also been following the discussions happening about Cobalt on the
Bufferbloat mailing list. So I am having problems relating the two sources
just mentioned above (the implementation and the discussion). According to
my understanding of the Codel algorithm, the count variable (which keeps
track of the number of packets dropped in the currently running dropping
state) is never really decremented iteratively.

However the Cobalt implementation reduces count iteratively (in line 234 of
the file cobalt.c) under certain circumstances and this is happening in the
function named cobalt_should_drop( ) which is called to determine if Cobalt
should drop the packet or dequeue it. It would be great if someone could
throw light on what is exactly happening in this function and also a
comprehensive explanation of Cobalt itself would be appreciated.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.bufferbloat.net/pipermail/cake/attachments/20170329/4cd238f7/attachment.html>

More information about the Cake mailing list