Rpi4 < $(community_build)

I was told that you can not use SQM with nft qos.But i was in need to limit speed for few devices. So, I decided to test and install the package and added devices based on mac address. My test was successful and i was able to limit speed of devices and it is working fine so far.

1 Like

here see my speedtest with and without adding a device in
QoS over Nftables
limit rate by mac address

here without speed limit

10614661093_LI (2)

with speed limit

10614671164_LI

and here is the ping to
dns.google
even when doing speed tests ping is constant. Without SQM pings go haywire :innocent:

so it looks like nft qos and sqm are working fine together.

1 Like

just making what neil1 stated a little clearer...

"when configured for the limited use case of limiting a few devices based on mac... and this is factored into the general SQM setup"

the key consideration with this is that SQM is still handling and applying further control on these flows... and ideally you should set it's primary bandwidth limits to allow for ( minus ) these devices bandwidth then exclude them from SQM... to result in an accurate and predictable result...

some other issues I observed with nft-qos while testing neil's config;

  • luci left and right tabs crash ( non-mac limit features - did not investigate if this is a compat or module issue etc. )
  • hotplug is absolute / hardcoded ( no way to disable even if service is )

that said... in general it is pretty cool...

1 Like

sorry i missed this post

here is the output

rpi-support.sh
############ buildid:r15199-5d2b577a53 localversion:2.3.637-1 files:e97e46a06 Sep3 variant:full
################################# wrt.ini brief
WIFIAUTOSETUP=1
ENABLEDSERVICES="simple-adblock"
#################################
################################# hardware info
Revision        : c03111
Serial          : 100000001fb0cf74
Model           : Raspberry Pi 4 Model B Rev 1.1
#################################
[    0.028050] raspberrypi-firmware soc:firmware: Attached to firmware from 2020-05-22 21:11, variant start
[    0.032046] raspberrypi-firmware soc:firmware: Firmware hash is 4da3e1264076308eda90652cb98b553ae0586390
[73570.478843] raspberrypi-firmware soc:firmware: mbox_send_message returned -62
[77895.927983] raspberrypi-firmware soc:firmware: mbox_send_message returned -62
[110140.165794] raspberrypi-firmware soc:firmware: mbox_send_message returned -62
################################## cmdline.txt
console=ttyAMA1,115200 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=squashfs,ext4 rootwait
################################## cmdline.txt
console=ttyAMA1,115200 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=squashfs,ext4 rootwait
################################# config.txt
boot_delay=3
dtoverlay=uart2
################################## cmdline.txt
console=ttyAMA1,115200 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=squashfs,ext4 rootwait
################################# opkg repos
/etc/opkg/customfeeds.conf:src/gz git_core https://github.com/wulfy23/rpi4-opkg/raw/master/r15199-5d2b577a53/core
/etc/opkg/customfeeds.conf:src/gz git_base https://github.com/wulfy23/rpi4-opkg/raw/master/r15199-5d2b577a53/base
/etc/opkg/customfeeds.conf:src/gz git_luci https://github.com/wulfy23/rpi4-opkg/raw/master/r15199-5d2b577a53/luci
/etc/opkg/distfeeds.conf:src/gz openwrt_kmods https://downloads.openwrt.org/snapshots/targets/bcm27xx/bcm2711/kmods/5.4.82-1-9c8ae92a7cae5c0da821e5ef6f3edb59
/etc/opkg/distfeeds.conf:src/gz openwrt_freifunk https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a72/freifunk
/etc/opkg/distfeeds.conf:src/gz openwrt_packages https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a72/packages
/etc/opkg/distfeeds.conf:src/gz openwrt_routing https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a72/routing
/etc/opkg/distfeeds.conf:src/gz openwrt_telephony https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a72/telephony
################################# packages restore historical
##################################################### 20200918124428
CUSTOMUPDATEURL="/fs/sdd1/openwrt/RTNGext/cache/rpi4/builds"
BUGURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
MANUURL="https://www.raspberrypi.org"
MANUDEVICE="rpi-foundation"
SUPPORTURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
HOMEURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
localversion="1.13.57-5"
FILESREVISION="23300"
BUILD_ID="r14475-4a3230683b"
WIFIAUTOSETUP=1
RESTOREFILES="/restorefiles"
LOGPERSIST="/boot/logp"
SYSINFO="/root/sysinfo.wrt"
opkg remove --force-removal-of-dependent-packages adblock #[ok]#997-remtxt-removed-previously
opkg remove --force-removal-of-dependent-packages ar #[ok]#997-remtxt-removed-previously
opkg remove --force-removal-of-dependent-packages coreutils-sort #[ok]#997-remtxt-removed-previously
opkg remove --force-removal-of-dependent-packages libbfd #[ok]#997-remtxt-removed-previously
opkg remove --force-removal-of-dependent-packages luci-app-adblock #[ok]#997-remtxt-removed-previously
opkg remove --force-removal-of-dependent-packages minicom #[ok]#997-remtxt-removed-previously
opkg install igmpproxy #[ok]#customapp
opkg install speedtest-netperf #[ok]#customapp
opkg install libcap #[ok]#customapp
opkg install kmod-sched-cake-virtual #[fail]#customapp
opkg install libmbedtls12 #[ok]#customapp
opkg install libgnutls #[ok]#customapp
opkg install libtasn1 #[ok]#customapp
opkg install libpam #[ok]#customapp
opkg install libattr #[ok]#customapp
opkg install attr #[ok]#customapp
opkg install libexpat #[ok]#customapp
opkg install libdbus #[ok]#customapp
opkg install dbus #[ok]#customapp
opkg install libavahi-dbus-support #[ok]#customapp
opkg install libdaemon #[ok]#customapp
opkg install avahi-dbus-daemon #[ok]#customapp
opkg install libavahi-client #[ok]#customapp
opkg install samba4-libs #[ok]#customapp
opkg install samba4-server #[ok]#customapp
opkg install vsftpd #[ok]#customapp
opkg install luci-app-samba4 #[ok]#customapp
opkg install kmod-scsi-core #[ok]#customapp
opkg install kmod-usb-storage #[ok]#customapp
opkg install ca-certificates #[ok]#customapp
opkg install simple-adblock #[ok]#customapp
opkg install luci-app-simple-adblock #[ok]#customapp
opkg install kmod-lib-crc16 #[ok]#customapp
opkg install kmod-crypto-hash #[ok]#customapp
opkg install kmod-crypto-crc32c #[ok]#customapp
opkg install kmod-fs-ext4 #[ok]#customapp
opkg install kmod-usb-ehci #[ok]#customapp
opkg install kmod-usb2 #[ok]#customapp
opkg install kmod-usb3 #[ok]#customapp
opkg install kmod-fs-ntfs #[ok]#customapp
##################################################### 20201029092508
CUSTOMUPDATEURL="/fs/sdd1/openwrt/RTNGext/cache/rpi4/builds"
BUGURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
MANUURL="https://www.raspberrypi.org"
MANUDEVICE="rpi-foundation"
SUPPORTURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
HOMEURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
localversion="2.3.11-3"
FILESREVISION="23716"
BUILD_ID="r14779-6c85a449a9"
WIFIAUTOSETUP=1
RESTOREFILES="/restorefiles"
LOGPERSIST="/boot/logp"
SYSINFO="/root/sysinfo.wrt"
##################################################### 20201122210649
CUSTOMUPDATEURL="/fs/sdd1/openwrt/RTNGext/cache/rpi4/builds"
BUGURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
MANUURL="https://www.raspberrypi.org"
MANUDEVICE="rpi-foundation"
SUPPORTURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
HOMEURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
localversion="2.3.505-2"
FILESREVISION="25011"
BUILD_ID="r14985-4d4ef1058c"
WIFIAUTOSETUP=1
RESTOREFILES="/restorefiles"
LOGPERSIST="/boot/plog"
SYSINFO="/root/sysinfo.wrt"
UPGRADEsFLAVOUR="stable"
##################################################### 20201125122348
CUSTOMUPDATEURL="/fs/sdd1/openwrt/RTNGext/cache/rpi4/builds"
BUGURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
MANUURL="https://www.raspberrypi.org"
MANUDEVICE="rpi-foundation"
SUPPORTURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
HOMEURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
localversion="2.3.505-3"
FILESREVISION="25011"
BUILD_ID="r14985-4d4ef1058c"
WIFIAUTOSETUP=1
RESTOREFILES="/restorefiles"
LOGPERSIST="/boot/plog"
SYSINFO="/root/sysinfo.wrt"
UPGRADEsFLAVOUR="stable"
##################################################### 20201212175133
CUSTOMUPDATEURL="/fs/sdd1/openwrt/RTNGext/cache/rpi4/builds"
BUGURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
MANUURL="https://www.raspberrypi.org"
MANUDEVICE="rpi-foundation"
SUPPORTURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
HOMEURL="https://forum.openwrt.org/t/rpi4-community-build/69998"
localversion="2.3.637-1"
variant="full"
FILESREVISION="25063"
BUILD_ID="r15199-5d2b577a53"
WIFIAUTOSETUP=1
RESTOREFILES="/restorefiles"
LOGPERSIST="/boot/plog"
SYSINFO="/root/sysinfo.wrt"
UPGRADEsFLAVOUR="stable"

@anon50098793 what is QoS based on packet size?
Is it same as SQM or it is a different thing?

whoops... bug in the setup scripts altered the console setup when it should not have ( RPIALTUART=1 )...

As I have this enabled... and these files are included as part of the default backup... it's not something i've been able to test much... ( and won't effect most users unless you use a UART/console connection )...

I've added the originals within the next build so anyone can revert ( although will need to know if it comes back after that );

(cd / && tar -xvzf /etc/custom/4-model-b/bootconforig.tar.gz)

( note: if you have additional options please re-add them, old backups would also be effected )

  • QoS in general is the governance of flows via marking and/or altering transmission behavior based on those marks/classifications... or in otherwords 'prioritizing traffic'

( not to be confused with 'nft-qos' which is a package that carries the qos label )

  • SQM is a 'QoS implementing package set'

SQM = QoS
nft-qos = QoS

While the underlying queue mechanics ( 'altering transmission' ) of the above tools are quite different... the 'identifying' or 'marking' principle is pretty transferable/universal...

'On packet size' is just referring to a 'broad classify' trick that can, and is commonly used to better mark realtime flows ( VOIP, dns, icmp etc.) and optionally the opposite ( large size )...

like most things classification... there are many exceptions... ( see how @hisham2630 script declassify's when a flow exceeds a certain quota||&&timeframe ), but it's a one nice trick build on when expected flows are unknown...

1 Like

just a small note... re: http by default now in master/snapshot...

master is changing the default luci settings to not redirect automatically to https...

  • new installs will have the setting
  • existing installs will ( should ) inherit the existing setting

at this stage, i'm not going to bother writing a custom downgrade script ( or 'upgrade' but always open to input on this )... as for most people it does not make much difference... ( i.e. if you worked out how to get around any browser https complaint by now... then it makes no difference )

fwiw, i personally prefer what is being implemented... although for anyone using it in an untrusted environment ( hotspot vpn client etc. ) you should probably enable https redirect on new installs or just go to https on these networks...

you mentioned about stable release for pi4.
Can you tell in how many months or weeks?

stable 'official' probably around 6+weeks minimum would be a sane rough guesstimate ( aiming for the latter side if RC )...

1 Like

is there some package to show bandwidth usage wrt users live in LUCI?

i got this package and this is what i was looking for

2 Likes

Yeah that would a great package in the build, live bandwidth stats for connected devices is handy to know.. have you installed that package? How was the install and does it work?

it is given in the link

Install
Step 1 - install the wrtbwmon package:

    Download the latest .ipk file from wrtbwmon releases
    Copy the file to your router /tmp directory
        I use the following command: scp wrtbwmon_*_all.ipk root@192.168.1.1:/tmp/
    Install the package opkg install /tmp/wrtbwmon_*_all.ipk

Step 2 - setup* the wrtbwmon package:

    Schedule it to run on startup /etc/init.d/wrtbwmon enable
    Manually start it now /etc/init.d/wrtbwmon start

*If you have already setup a cron job to update the wrtbwmon database, it would be best if you removed it. There is no need for wrtbwmon to regurarly update the db since we only need to run it when the Usage page is active.
Step 3 - install this module:

    Download the latest .ipk file from releases
    Copy the file to your router /tmp directory
        I use the following command: scp luci_wrtbwmon_*_all.ipk root@192.168.1.1:/tmp/
    Install the package opkg install /tmp/luci_wrtbwmon_*_all.ipk
    Clear the cache for luci to get the web interface to refresh rm /tmp/luci-indexcache

there is;

  • realtime graphs -> connections
  • cmdline iptraf(-ng), iftop if it's not installed
  • nlbwmon ( yes not realtime unless flushed )

as this is;

  • a task that is done interactively, 'once in a while' and
  • can be achieved 'gently' with the above mentioned tools
  • different people will have different ways to do this

you are welcome to install any tools you'd like onto the build... but I cannot really justify adding another 'background' data collector in addition to nlbwmon...

( custom cron lines etc. really complicate the upgrade logic )

not being in the official repos would complicate re-installation and automation for you ( fairly sure this package used to be in the official repos... )

I suggest you practice basic ssh usage and use the provided 'iptraf-ng'... much lighter on the system for the intended purpose...

1 Like

hi wulfy

was still on 14869 so decided to do my first sysupgrade :slight_smile:
took a backup first of the config
uploaded the -sys std 15199 all went well
some comments :slight_smile:

  • I just had created a script under $HOME and it's gone after upgrade, neither in the backup (no worries it was a small thing)
    so next time I'll put it in a backupped location :non-potable_water:
  • SQM config was still present, but it was disabled after the upgrade. Just re-enabled it.

tx again for all your hard work !

1 Like

thankyou for the feedback...

  • customfiles need to go into '/etc/sysupgrade.conf' ( editable in LUCI somewhere also )
  • sqm would need to go into ENABLEDSERVICES="sqm"

at /root/wrt.ini ( editable at banip > advanced > wrt.ini configuration )...
( you can also enter 'sysupgrade -l | grep -v restorefiles | grep -v rrd' with quotes into LUCI > system > customcommands > doCMD to see that it is including all your custom files )

one small note for anyone else also on such older builds...
the 'first upgrade' from these old builds does not have the newer '-R' / packagerestore logix... that is delivered during the upgrade... so they would only be available after the newer build is installed...

i've been thinking about making sqm always on by default...

a) most people use it... and importantly
b) it's fairly polite if enabled and not configured

1 Like

it get stuck so many connections to load.
And I just need to watch users and their download upload speeds.

ssh root@routerip
iptraf-ng #iptraffic-monitor -> eth0 #S -> B
opkg update && opkg install --force-checksum iftop
iftop -P -i eth0
1 Like

error because of conflict ?

 daemon.err uhttpd[3561]: Another app is currently holding the xtables lock. Perhaps you want to use the -w option?

how to remove it now?

 opkg remove luci-wrtbwmon
Removing package luci-wrtbwmon from root...
Not deleting modified conffile /etc/config/wrtbwmon.
root@network /34# opkg remove wrtbwmon
Removing package wrtbwmon from root...

A little off-topic but for those of us who run this build full-time, this looks like it could be a great board for the CM - https://github.com/geerlingguy/raspberry-pi-pcie-devices/issues/25#issuecomment-751566018

1 Like

hi guys & HP NY!

I just noticed several

raspberrypi-firmware soc:firmware: mbox_send_message returned -62
raspberrypi-clk firmware-clocks: Failed to change pllb frequency: -62

in dmesg..

anyone else? any idea?
tx

1 Like