If RSS is enabled with the 'enabled' sysctl, the packet dispatching policy will move from ‘direct’ to ‘hybrid’.
hw.em.max_interrupt_rate: 32000hw.em.rx_process_limit: -1
# Some suggestions this should be equal to at least maximum sessions/states, i.e flows, I believe. # Firewall regularly has at least 2000 sessions/state entries, so to allow for burstingnet.inet.ip.dummynet.fqcodel.flows: 8192 # The default hard size limit (in unit of packet) of all queues managed by an instance of the scheduler. # This is the absolute upper limit permittednet.inet.ip.dummynet.fqcodel.limit: 20480
net.inet.ip.intr_queue_maxlen: 2048net.isr.defaultqlimit: 2048net.link.ifqmaxlen: 2048 # Set to sum of RX/TX NIC descriptors; default 1024 descriptors net.route.netisr_maxqlen: 2048
net.inet.tcp.tso: 0
net.isr.bindthreads: 1net.isr.maxthreads: -1
"The trick part is that after PPPoE session is established, mpd5 does not process its traffic as it goes completely in-kernel"
<30>1 2023-11-28T07:50:25+00:00 Firewall.localdomain ppp 75232 - [meta sequenceId="12"] [wan_link0] PPPoE: Connecting to ''<30>1 2023-11-28T07:50:31+00:00 Firewall.localdomain ppp 75232 - [meta sequenceId="1"] PPPoE: rec'd ACNAME "XXXXX-XXX-C1".......<30>1 2023-11-28T07:50:32+00:00 Firewall.localdomain ppp 75232 - [meta sequenceId="70"] [wan] IFACE: Rename interface ng0 to pppoe0
em0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resettingem0: Watchdog timeout Queue[0]-- resetting
hw.pci.enable_msix="0"hw.pci.enable_msi="0"
WARNING: attempt to domain_add(netgraph) after domainfinalize()ng0: changing name to 'pppoe0'
vmstat -iinterrupt total rateirq16: em0 em4+ 998150914 3871irq17: em1 em5 592811 2irq18: em2 em6+ 311699977 1209irq19: em3 em7+ 4029536 16irq22: hdac0 9 0irq23: ehci1 386863 2cpu0:timer 277593929 1077cpu1:timer 150527204 584cpu2:timer 176130400 683cpu3:timer 142581455 553Total 2061693098 7996
pciconf -lcv | grep -i asp link x1(x1) speed 2.5(5.0) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(5.0) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(5.0) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(5.0) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(5.0) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(5.0) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(5.0) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(5.0) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1) link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1)
hw.pci.enable_msix: 0hw.pci.enable_msi: 1
machdep.disable_msix_migration: Disable migration of MSI-X interrupts between CPUs
net.isr.bindthreads: Bind netisr threads to CPUs.
Uptime 1194:41:36
sysctl -A | grep msix