[ovs-dev] [PATCH] netdev-linux: HFSC in linux

Ethan Jackson ethan at nicira.com
Thu Nov 11 18:53:57 UTC 2010

> Of course, the big question is whether we should factor out similar code
> somehow.  I'm happy to defer that, though, until we delete the htb code
> or until we add a third almost-identical implementation, whichever comes
> first.  That's when it will really be worthwhile.

Yah I agree.  It's actually slightly tricky to figure out the correct
point of abstraction so I thought I would defer the issue.  For
example, the concept of min-rate and max-rate are really awkward in
HFSC land.  If we decide to move towards allowing people to explicitly
set service curves then what is the max-rate of the parent queue?  The
slope of the steepest segment?  I would almost like to get rid of
struct htb and struct hfsc all together and have them just be special
htb_class and hfsc_class.  That's naturally closer to how hfsc does

Anyways, if we decide to keep HTB long term and decide not to allow
people to define service curves explicitly, I would vote for
condensing the code.  If we aren't sure then I vote for holding off
until we add a third queue and it becomes clear whether or not it will
be useful for that case as well.

> I saw one use of HTB_N_QUEUES and one use of htb_get__() within the new
> code.  I assume that both of those should use the HFSC version instead.


> Some of the htb functions have comments above them that describe the
> equivalent "tc" commands, but the hfsc code doesn't add similar
> comments.  Would you mind doing that, so that for testing and debugging
> by hand I don't have to remember the tc syntax?

No Problem

> Since the configuration is simplified, would it be OK to delete the "and
> how to configure it" phrase in the linux-hfsc description in
> vswitch.xml?


I'll send out a diff to this patch today.

More information about the dev mailing list