[PATH] ALTQ(9) codel algorithm implementation

Andre Oppermann andre at freebsd.org
Fri Jun 14 11:01:29 UTC 2013


On 14.06.2013 11:51, Gleb Smirnoff wrote:
>    Ermal,
>
> On Mon, Jun 10, 2013 at 03:43:12PM +0200, Ermal Lu?i wrote:
> E> at location [1] can be found a patch for Codel[3] algorithm implementation.
> E>
> E> Triggered by a mail to the mailing lists[2] of OpenBSD i completed the
> E> implementation for FreeBSD.
> E>
> E> It allows to use codel as the single configured discipline on an interface.
> E> Also it can be used as a sub discipline of existing queueing disciplines
> E> already present.
> E>
> E> The work has been tested and confirmed working without issues in pfSense.
> E>
> E> Any objections on pushing this into FreeBSD?
> E>
> E> [1]
> E> https://github.com/pfsense/pfsense-tools/blob/master/patches/RELENG_10_0/altq_codel.diff
> E> [2] http://permalink.gmane.org/gmane.os.openbsd.tech/29745
> E> [3] http://www.bufferbloat.net/projects/codel/wiki
>
> I'm afraid we can't grow mbuf packet header with 8 bytes just to satisfy
> the ALTQ codel algo, which would definitely have a limited usage among
> FreeBSD users. Thus, "enqueue_time" should go into mbuf_tags(9) not into
> mbuf packet header.

Agreed.  We don't have space for that in the mbuf header.  There's some other
fields that may be repurposed though, the header pointer for example which is
almost entirely unused.  With some updates to the TSO and Checksum offload
mechanism I have in the pipeline the "header" field can be easily repurposed.

Though I'm against an "obscure" ALTQ mechanism having its own mbuf header field
as such.  It must be a generic field that can be used by others as well.

-- 
Andre



More information about the freebsd-net mailing list