LINUX.ORG.RU
решено ФорумAdmin

OpenWRT через RNDIS, низкая скорость

 , ,


0

1

Здравствуйте.

А может OpenWRT на Asus RT-N13U в десять раз замедлять Интернет?

Одна и та же мобилка - подключаю прямо к ПК, получаю 20-30 Мб/с

Linux osad.berg 5.4.131-1-lts54 #1 SMP Tue, 13 Jul 2021 08:24:19 +0000 x86_64 GNU/Linux
rndis0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000
    link/ether 5a:fc:95:5f:a3:80 brd ff:ff:ff:ff:ff:ff
    inet 192.168.42.18/24 brd 192.168.42.255 scope global dynamic noprefixroute rndis0
       valid_lft 3589sec preferred_lft 3589sec

Подключаю мобилку к Asus RT-N13U, а ПК соответственно витой парой к нему - получаю 2-3 Мб/с.

Linux OpenWrt 5.4.143 #0 Tue Aug 31 22:20:08 2021 mips GNU/Linux
usb0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN qlen 1000
    link/ether 6a:39:0b:44:4b:39 brd ff:ff:ff:ff:ff:ff
    inet 192.168.42.57/24 brd 192.168.42.255 scope global usb0
       valid_lft forever preferred_lft forever

Надумал тут на даче вторую машину поставить, обе в сеть и с выходом обеих через мобилку в роутере в Интернет. Да вот незадача со скоростью выяснилась.

Это как-то можно починить? Или это нормально для столь старого роутера?

★★

Ответ на: комментарий от Pinkbyte

Да вроде ничего такого страшного

CPU:  13% usr  30% sys   0% nic   0% idle   0% io   0% irq  56% sirq

Вот последние попытки проверки скорости стало так же, как в Гугле находится человек, который ругается именно на Download. ~2Mbps, в том время как Upload ~20Mbps. У того человека тоже решения нет. Днём точно было в обе стороны ~2Mbps.

На большой машине с телефоном разговаривает ehci-pci. А на роутере dwc2. Может тут где-то разгадка. Что-то ничего другого пока не придумывается.

Toxo2 ★★ ()
Последнее исправление: Toxo2 (всего исправлений: 1)
Ответ на: комментарий от Toxo2

Вот так с телефоном здоровается OpenWrt на mips

[ 3288.928892] usb 1-1: new high-speed USB device number 7 using dwc2
[ 3289.164212] rndis_host 1-1:1.0 usb0: register 'rndis_host' at usb-101c0000.otg-1, RNDIS device, 6e:84:bf:19:7e:94
А так ArchLinux на x86_64
[ 3632.097595] usb 1-1.5: new high-speed USB device number 6 using ehci-pci
[ 3632.249493] usb 1-1.5: New USB device found, idVendor=0b05, idProduct=7782, bcdDevice= 3.10
[ 3632.249496] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3632.249498] usb 1-1.5: Product: Android
[ 3632.249500] usb 1-1.5: Manufacturer: Android
[ 3632.249501] usb 1-1.5: SerialNumber: G8AXB74045288TN
[ 3632.274213] usbcore: registered new interface driver cdc_ether
[ 3632.278742] rndis_host 1-1.5:1.0 usb0: register 'rndis_host' at usb-0000:00:1a.0-1.5, RNDIS device, 82:f8:89:64:1c:c0
[ 3632.278784] usbcore: registered new interface driver rndis_host
[ 3632.287178] rndis_host 1-1.5:1.0 rndis0: renamed from usb0

Toxo2 ★★ ()
Ответ на: комментарий от Toxo2

13% usr
56% sirq
30% sys

В сумме это 99%. 0% idle подтверждает. Вывод - засран проц по полной.

На большой машине с телефоном разговаривает ehci-pci. А на роутере dwc2. Может тут где-то разгадка. Что-то ничего другого пока не придумывается.

Разгадка в том, что на большой машине у тебя и проц большой и шина толстая :-)

На роутерах шоб компенсировать дохлость проца всякие хитрые чипы впиливают, но для них драйвера нужны, у OpenWRT обычно с этим беда. Потому что исходники драйверов производитель как раз как правило либо совсем зажимает, либо даёт, но только под древнюю мохнатую версию ядра...

Pinkbyte ★★★★★ ()
Ответ на: комментарий от Toxo2

Разница в выхлопах в плане функционала мизерная(отрезан отладочный вывод).

Копать тут только в сторону альтернативных прошивок который принципиально заточены на производительность, а не на поддержку свежих ядер - всякие Tomato, Padavan и т.д.

Pinkbyte ★★★★★ ()
Ответ на: комментарий от Pinkbyte

Спасибо! Почти понял )

Копать тут только в сторону альтернативных прошивок

Наверное проще будет тогда уж одну из машин саму и сделать роутером. Изначально такой план и был. Нечаянно вспомнил про RT-N13U в чулане - думал так ещё красивее будет, с отдельной коробочкой.

Вот так:

sysctl -w net.ipv4.ip_forward=1
iptables -A INPUT -i rndis0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eno1 -o rndis0 -j ACCEPT
iptables -A FORWARD -i rndis0 -o eno1 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o rndis0 -j MASQUERADE
вроде работало вчера через телефон непосредственно в ПК.

Toxo2 ★★ ()
Последнее исправление: Toxo2 (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

на большой машине у тебя и проц большой

Нашел в другом чулане DIR-620 C1. Установил тот же самый OpenWrt 21.02.0 r16279-5cc0535800 / LuCI openwrt-21.02 branch git-21.231.26241-422c175.

Строго говоря декларируется, что OpenWrt не работает на C1. Подобрал наиболее похожую для Broadcom BCM5357. Подошла от ASUS RT-N10U. Без WiFi только, да и шут с ним.

В итоге, сижу, смотрю на оба одновременно:

root@Asus-RT-N13U:~# cat /proc/cpuinfo | grep -B4 model
system type		: Ralink RT3052 id:1 rev:3
machine			: Asus RT-N13U
processor		: 0
cpu model		: MIPS 24KEc V4.12

root@Asus-RT-N13U:~# cat /proc/loadavg
0.03 0.36 0.65 1/38 17095

root@Asus-RT-N13U:~# time dd if=/dev/zero bs=1M count=1k | md5sum
1024+0 records in
1024+0 records out
real	2m 3.23s
user	0m 0.00s
sys	0m 21.08s

VS

root@DLINK-DIR620-C1:~# cat /proc/cpuinfo | grep -B4 model
system type		: Broadcom BCM5357
machine			: Unknown Board
processor		: 0
cpu model		: MIPS 74Kc V4.9

root@DLINK-DIR620-C1:~# cat /proc/loadavg
0.02 0.24 0.22 1/42 3687

root@DLINK-DIR620-C1:~# time dd if=/dev/zero bs=1M count=1k | md5sum
1024+0 records in
1024+0 records out
real	1m 28.79s
user	0m 0.03s
sys	0m 20.50s

Вроде бы не то чтобы на порядки эти циферки больше/лучше.

Однако DIR620 может 30 Mbps выдавать через телефон RNDIS, а N13U максимум 2 Mbps. Уже на порядок получается.

P.S. Никакой практической и важной задачи не решаю. Так, ликбез пытаюсь себе проводить. Заодно хлам разгрести.

Toxo2 ★★ ()