Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Apr 2007 22:10:52 -0500
From:      Orum <yoitsmeremember@gmail.com>
To:        "FreeBSD-Net mailing list" <freebsd-net@freebsd.org>
Subject:   altq unfortunately queuing vlan traffic.
Message-ID:  <f3ac6ca80704112010m4f440222lc9a47c490db92060@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi,

I just recently configured altq to run on my vge0 interface.  The machine is
running FreeBSD 6-STABLE (6.2-RELEASE doesn't have altq support in the vge
driver).  Before I go any further, let me show you a tiny diagram of my
network:

Private LAN ]----[vlan2, parent if = vge0] FreeBSD router [vge0 (doing nat
via pf)]----[ Internet

I'm using pf for nat on vge0, and would like to also like to use altq on
that interface (no queuing is needed on the vlan2 interface).  But, shortly
after enabling it I noticed that my SSH session to that machine started to
lag greatly.  After going through and making a few sanity checks (cpu usage,
disabling altq, etc.), I'm pretty sure I discovered that the problem is that
altq is queuing packets destined for the vlan in vge0's queue because it is
the parent interface.

Ideally I would just add another interface, but unfortunately that's not
possible.  I also can't put the internet connection on a vlan for two
reasons; 1) altq is not supported on vlan devices (I think I know why now
too!), and 2) pf's nat does not work on vlan devices (probably for the same
reason altq doesn't work on them).

I guess this leaves me with two options.  I can either make it so that altq
will not queue packets on an interface for packets destined for a vlan that
has that interface as a parent, or I can try and make altq work on the vlan
interface, and modify pf's nat to work on vlan interfaces as well, thus
eliminating the need to differentiate between those packets destined for a
vlan and those for the untagged physical interface.  The former seems like
it would be the easier of the two, though neither option seems easy to me.

Where would I go about making these modifications?  In altq?  Or does this
have to do with the TCP/IP stack?  Or something to do with the driver itself
(to make matters more complicated, it uses VLAN_HWTAGGING)?  I really have
no idea where to begin.  Or, if you can think of another easier solution to
this problem, let me know!

Thanks in advance,
Ian



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f3ac6ca80704112010m4f440222lc9a47c490db92060>