mtk-bwmod v1.8
[v1.8] — System File Overlay (Init Layer)
Added
New tuning layer via Magisk system file replacement — applied by Android init system, runs before service.sh and before user space starts.
system/etc/init/mtk-bwmod.rc — Android Init Script
- Processed by Android init daemon (not Magisk)
- Runs at two stages:
on post-fs-data— early boot, kernel params before network upon property:sys.boot_completed=1— after modules loaded (BBR, conntrack)
- Covers: TCP core, UDP buffers, socket core, routing, conntrack, IPv6
- Universal: Android 8+ on all MTK devices
system/etc/sysctl.d/99-mtk-bwmod.conf — sysctl.d Fallback
- Applied by init sysctl service on ROMs that process
/etc/sysctl.d/ - Mirrors init.rc settings as a redundancy layer
- Includes: TCP, UDP, buffers, conntrack, routing, IPv6
Boot Layer Architecture
Android init
├─ post-fs-data ← [NEW v1.8] mtk-bwmod.rc (early kernel params)
├─ sysctl.d ← [NEW v1.8] 99-mtk-bwmod.conf (fallback)
└─ boot_completed
├─ BBR + buffers ← [NEW v1.8] mtk-bwmod.rc (module-dependent)
└─ Magisk service.sh (22 sections, fine tuning + radio + WiFi)
Technical Details
mtk-bwmod.rc — on post-fs-data (early):
- TCP fastopen, SACK, window scaling, ECN, keepalive, notsent_lowat
- UDP rmem/wmem_min, port range 1024-65535
- Socket: somaxconn=8192, netdev_budget=600, backlog=32768, rps_flow=32768
- Routing: rp_filter, no redirects, no source routing
mtk-bwmod.rc—on property:sys.boot_completed=1(late): - BBR congestion control (tcp_bbr.ko must be loaded)
- TCP buffers: 64MB rmem/wmem
- Conntrack: max=2,000,000, TCP_EST=600s, UDP=30s
99-mtk-bwmod.conf— sysctl.d: - Full mirror of init.rc params as fallback
- Applied by
sysctl --systemduring init - And nothing.