Switch from SQM scripts to QoSify tool for better WifiCalling / VoWifi

It seems that SW offload needs to be enabled and installed Qosify to
proper estabilish wificalling / VoWifi connection.
This commit is contained in:
Daniel Pawlik
2025-01-07 16:48:28 +01:00
parent 7c13f630c6
commit 5b05bed9f5
6 changed files with 98 additions and 8 deletions

View File

@@ -83,10 +83,15 @@ CONFIG_PACKAGE_collectd-mod-dns=y
CONFIG_PACKAGE_usteer=y
CONFIG_PACKAGE_luci-app-usteer=y
# sqm
CONFIG_PACKAGE_luci-app-sqm=y
CONFIG_PACKAGE_sqm-scripts=y
CONFIG_PACKAGE_ip6tables-nft=y
# SQM
# CONFIG_PACKAGE_luci-app-sqm=y
# CONFIG_PACKAGE_sqm-scripts=y
# CONFIG_PACKAGE_ip6tables-nft=y
CONFIG_PACKAGE_qosify=y
CONFIG_PACKAGE_kmod-ifb=y
CONFIG_PACKAGE_kmod-sched-bpf=y
CONFIG_PACKAGE_kmod-sched-cake=y
# ddns
CONFIG_PACKAGE_luci-app-ddns=y

View File

@@ -18,11 +18,12 @@ CONFIG_PACKAGE_libbpf=m
CONFIG_PACKAGE_libelf=m
CONFIG_PACKAGE_libpcap=m
CONFIG_PACKAGE_libxdp=m
CONFIG_PACKAGE_qosify=m
CONFIG_PACKAGE_tc-tiny=m
CONFIG_PACKAGE_xdp-filter=m
CONFIG_PACKAGE_xdp-loader=m
CONFIG_PACKAGE_xdpdump=m
# NOTE: Qosify is already present in main-router.
# CONFIG_PACKAGE_qosify
# CONFIG_USE_GC_SECTIONS=y
CONFIG_USE_LTO=y

View File

@@ -19,6 +19,7 @@ CRYPTO_LIB=${CRYPTO_LIB:-'openssl'} # wolfssl or openssl; if empty - mbedtls
ADDITIONAL_PACKAGES=${ADDITIONAL_PACKAGES:-'bmon rsync bind-dig ethtool-full pciutils tcpdump iperf3 vim'}
INSTALL_LANG_PACKAGES=${INSTALL_LANG_PACKAGES:-'true'}
INSTALL_MINIMUM_PACKAGES=${INSTALL_MINIMUM_PACKAGES:-'false'}
SQM_TOOL=${SQM_TOOL:-'qosify'} # or luci-app-sqm
if [ -z "$ROUTER_IP" ]; then
echo "Please provide router ip like: 192.168.1.1"
@@ -52,6 +53,9 @@ collectd-mod-dns collectd-mod-wireless \
luci-app-statistics luci htop curl owut \
irqbalance luci-app-irqbalance"
# additional
# fping kmod-crypto-user kmod-cryptodev
if [[ "$INSTALL_MINIMUM_PACKAGES" =~ True|true ]]; then
if [[ "$CRYPTO_LIB" =~ ^(Wolfssl|wolfssl|Openssl|openssl)$ ]]; then
echo -e "By choosing INSTALL_MINIMUM_PACKAGES, consider to use:\n\n export CRYPTO_LIB=mbedtls\n\n"
@@ -79,7 +83,8 @@ fi
# additional packages
if [[ "$DEVICE" =~ Main|main ]]; then
PACKAGES="$PACKAGES luci-proto-wireguard kmod-wireguard wireguard-tools qrencode"
PACKAGES="$PACKAGES luci-app-sqm"
# PACKAGES="$PACKAGES luci-app-sqm"
PACKAGES="$PACKAGES $SQM_TOOL"
PACKAGES="$PACKAGES ddns-scripts luci-app-ddns bind-host"
if [[ "$INSTALL_DNSCRYPT_PROXY2" =~ True|true ]]; then
PACKAGES="$PACKAGES dnscrypt-proxy2"
@@ -138,6 +143,8 @@ esac
### Bufferbloat - install SQM - https://openwrt.org/docs/guide-user/network/traffic-shaping/sqm
# luci-app-sqm luci-i18n-sqm-pl sqm-scripts-extra
# # OR
# qosify - https://forum.openwrt.org/t/qosify-new-package-for-dscp-marking-cake/111789/1122
### Better roaming
# usteer luci-app-usteer

View File

@@ -0,0 +1,49 @@
config defaults
list defaults /etc/qosify/*.conf
option dscp_prio video
option dscp_icmp +besteffort
option dscp_default_udp besteffort
option prio_max_avg_pkt_len 500
config class besteffort
option ingress CS0
option egress CS0
config class bulk
option ingress LE
option egress LE
config class video
option ingress AF41
option egress AF41
config class voice
option ingress CS6
option egress CS6
option bulk_trigger_pps 100
option bulk_trigger_timeout 5
option dscp_bulk CS0
config interface wan
option name wan
option disabled 0
option bandwidth_up 1000mbit
option bandwidth_down 1000mbit
## It is better to set own overhead and mpu than what is set in the template
## https://forum.openwrt.org/t/qosify-new-package-for-dscp-marking-cake/111789/729
# option overhead_type ethernet
option overhead_type none
# defaults:
option ingress 1
option egress 1
option mode diffserv4
option nat 1
option host_isolate 1
option autorate_ingress 0
### VLAN or PPPoE => overhead is 44
### PPPoE (common for DSL or fiber): 40 bytes (18 bytes Ethernet + 8 bytes PPPoE header + 14 bytes other layers)
### Without VLAN or PPPoE => overhead is 18
### MPU set 84 or 64.
option ingress_options "overhead 18 mpu 84"
option egress_options "overhead 18 mpu 84"
option options ""

View File

@@ -0,0 +1,25 @@
# DNS
tcp:53 voice
tcp:5353 voice
udp:53 voice
udp:5353 voice
# NTP
udp:123 voice
# SSH
tcp:22 +video
# HTTP/QUIC
udp:500 voice
udp:4500 voice
udp:5060 voice
udp:5061 voice
tcp:5060 voice
tcp:5061 voice
tcp:80 +besteffort
tcp:443 +besteffort
udp:80 +besteffort
udp:443 +besteffort
udp:500 +besteffort

View File

@@ -9,10 +9,13 @@ config queue 'eth1'
option linklayer 'ethernet'
option debug_logging '0'
option verbosity '5'
option overhead '44'
### VLAN or PPPoE => overhead is 44
### PPPoE (common for DSL or fiber): 40 bytes (18 bytes Ethernet + 8 bytes PPPoE header + 14 bytes other layers)
### Without VLAN or PPPoE => 18
### MPU set 84 or 64.
option overhead '18'
option linklayer_advanced '1'
option tcMTU '2047'
option tcTSIZE '128'
option tcMPU '84'
option linklayer_adaptation_mechanism 'default'