Project

General

Profile

Actions

Feature #14408

closed

Include ``ixv`` in ALTQ capable NIC list

Added by mrpops2ko . over 1 year ago. Updated over 1 year ago.

Status:
Resolved
Priority:
Low
Assignee:
Category:
Traffic Shaper (ALTQ)
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:
Plus Target Version:
23.09
Release Notes:
Default

Description

Not a lot to go on for this one unfortunately but I can attach screenshots. WAN and Guest Wifi (Opt 11 is an openvpn server) are visible but LAN isn't.

all three are using IXV drivers (SR-IOV VF)

Both LAN and guest wifi have a DHCP server attached to them. I have guest wifi on a vlan and lan not on one.

Actions #1

Updated by mrpops2ko . over 1 year ago

edit: ah interestingly if i associate the guest wifi without a vlan tag it is removed from the interface

my wan connection is a PPPoE vlan tagged too.

I'm assuming a quick and dirty resolution would be to just vlan tag my LAN traffic too but should this not just work natively?

Actions #2

Updated by Jim Pingle over 1 year ago

  • Tracker changed from Bug to Feature
  • Subject changed from Traffic Shaper ALTQ not working / visible to Include ``ixv`` in ALTQ capable NIC list
  • Status changed from New to Feedback
  • Affected Version deleted (All)

For ATLQ to be offered on that NIC, it must be listed as being ALTQ capable in source:src/etc/inc/interfaces.inc#L6824

As far as I can see, ixv has never been included in that list.

Before we could enable that we'd have to know for sure it works on that type of NIC. It appears to be a subtype of ixgbe(4) so it's possible it should work, but still needs testing.

You can install the System Patches package and then create an entry for the following diff and apply it to see if it works:

diff --git a/src/etc/inc/interfaces.inc b/src/etc/inc/interfaces.inc
index 6984f346db..e66bd5526b 100644
--- a/src/etc/inc/interfaces.inc
+++ b/src/etc/inc/interfaces.inc
@@ -6824,7 +6824,7 @@ function is_altq_capable($int) {
        $capable = array("ae", "age", "alc", "ale", "an", "aue", "axe", "bce",
                        "bfe", "bge", "bnxt", "bridge", "bxe", "cas", "cpsw", "dc", "de",
                        "ed", "em", "ep", "epair", "et", "fxp", "gem", "hme", "hn",
-                       "igb", "igc", "ix", "jme", "l2tp", "le", "lem", "msk", "mxge", "my",
+                       "igb", "igc", "ix", "ixv", "jme", "l2tp", "le", "lem", "msk", "mxge", "my",
                        "ndis", "nfe", "ng", "nge", "npe", "nve", "ql", "ovpnc",
                        "ovpns", "ppp", "pppoe", "pptp", "re", "rl", "sf", "sge",
                        "sis", "sk", "ste", "stge", "ti", "tun", "txp", "udav",

If you are able to setup and use the ALTQ shaper on there and it doesn't generate ruleset errors saying the device doesn't support ALTQ, then it should be reasonably safe to add it to the list in the repository.

Actions #3

Updated by Jim Pingle over 1 year ago

pops pops wrote in #note-1:

I'm assuming a quick and dirty resolution would be to just vlan tag my LAN traffic too but should this not just work natively?

Yes, using a VLAN-tagged interface is a good way to work around lack of ALTQ support in any type of interface.

Actions #4

Updated by mrpops2ko . over 1 year ago

/usr/bin/patch --directory='/' -t --strip '2' -i '/var/patches/646e1ad314998.patch' --check --forward --ignore-whitespace

Hmm... Looks like a unified diff to me...
The text leading up to this was:
-------------------------- |diff --git a/src/etc/inc/interfaces.inc b/src/etc/inc/interfaces.inc |index 6984f346db..e66bd5526b 100644 |--- a/src/etc/inc/interfaces.inc |+++ b/src/etc/inc/interfaces.inc
--------------------------
Patching file etc/inc/interfaces.inc using Plan A...
Hunk #1 failed at 6824.
1 out of 1 hunks failed while patching etc/inc/interfaces.inc
done

for some additional information the ixgbe package supports SR-IOV and i'm making use of that, the VNF (virtual network function) nic is what i've handed over to pfsense from esxi

Actions #5

Updated by Jim Pingle over 1 year ago

What version are you running? That diff was against the master branch of CE so it may be different. You can make the same edit by hand, though, just add that one entry into the list.

Actions #6

Updated by mrpops2ko . over 1 year ago

23.05-RELEASE (amd64)

Actions #7

Updated by mrpops2ko . over 1 year ago

manually editing it results in it now being visible

i will do some performance testing and report back

Actions #8

Updated by Jim Pingle over 1 year ago

OK, for 23.05 the diff would be:

diff --git a/src/etc/inc/interfaces.inc b/src/etc/inc/interfaces.inc
index 85aa2f7b96..d3e8600f08 100644
--- a/src/etc/inc/interfaces.inc
+++ b/src/etc/inc/interfaces.inc
@@ -6863,7 +6863,7 @@ function is_altq_capable($int) {
        $capable = array("ae", "age", "alc", "ale", "an", "aue", "axe", "bce",
                        "bfe", "bge", "bnxt", "bridge", "bxe", "cas", "cpsw", "dc", "de",
                        "ed", "em", "ep", "epair", "et", "fxp", "gem", "hme", "hn",
-                       "igb", "igc", "ix", "jme", "l2tp", "le", "lem", "msk", "mvneta", "mxge", "my",
+                       "igb", "igc", "ix", "ixv", "jme", "l2tp", "le", "lem", "msk", "mvneta", "mxge", "my",
                        "ndis", "nfe", "ng", "nge", "npe", "nve", "ql", "ovpnc",
                        "ovpns", "ppp", "pppoe", "pptp", "re", "rl", "sf", "sge",
                        "sis", "sk", "ste", "stge", "ti", "tun", "txp", "udav",
Actions #9

Updated by mrpops2ko . over 1 year ago

ok did some testing but as my setup is quite complex it would be good to have someone else test too.

i can confirm at least that it works, that it throttles traffic up and down and the queues appear to be working on the priority.

thank you for the quick turnaround time.

Actions #10

Updated by Jim Pingle over 1 year ago

  • Status changed from Feedback to New
  • Target version set to 2.7.0
  • Plus Target Version set to 23.09
Actions #11

Updated by Jim Pingle over 1 year ago

That's good enough to list it, I'd say.

If it were not supported it wouldn't have even loaded the new ruleset, let alone given any appearance of it throttling.

Actions #12

Updated by Luiz Souza over 1 year ago

  • Status changed from New to Feedback
  • % Done changed from 0 to 100

Diff committed to master and RELENG_2_7_0.

Actions #13

Updated by Luiz Souza over 1 year ago

  • Assignee set to Luiz Souza
Actions #14

Updated by Christian McDonald over 1 year ago

  • Status changed from Feedback to Resolved

ixv is now in the ALTQ capable NIC list.

Marking as resolved.

Actions

Also available in: Atom PDF