udpxy. Работает только часть каналов из плей-листа
Поставил 1.9.2.7-8.12 . Попробовал посмотреть через Wi-Fi. Часть каналов работает идеально, часть сплошная зеленая каша. Причем замечено, что работают каналы с
http://192.168.251.1:7777/udp/233.32.210.xxx:5050.
Сплошной мусор на адресах
http://192.168.251.1:7777/udp/233.32.240.xxx:5050
Это только у меня так?
При просмотре udp://@233.32.240.xxx:5050 напрямую без udpxy все более или менее нормально - иногда проскакивают артефакты, но такого сплошного мусора нет.
Есть виндовый проет на эту тему
http://borpas.info/index.php?go=dpr_util#prox
может у них можно что-то полезное подсмотреть???
2 Attachment(s)
проблемные каналы Корбины: первая попытк
Итак, первая попытка заключается в том, что внутренний размер буфера данных udpxy делается теперь равным размеру multicast-буфера, т.е. регулируется параметром -B
<output>
Setting up multicast listener
multicast buffer size set to [64] Kb
Added client: pid=[30684], maddr=[224.0.12.26], mport=[5000], saddr=[127.0.0.1], sport=[33494]
............................... blah blah blah .....................
Relaying traffic from socket[4] to socket[7], buffer size=[65536]
</output>
Попробуйте, господа, и поделитесь опытом - есть ли какая польза.
udpxy.mipsel.gz - архив бинарника для mips, вроде бы и собран с правильными библиотеками:
$ ldd udpxy
libc.so.0 => /lib/libc.so.0 (0x0x2ab07000)
ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x0x2aac0000)
2 Attachment(s)
сборка 0.1-26 - только для тестирования
Добавил параметр -R {n=number_of_records} - в зависимости от значения n будет буферизироваться n пакетов на входе. Попробуйте поэкспериментировать с ним.
Добавил параметр -y - при указании буфер посылки расширяется (посредством SO_SNDBUF) до размера входного буфера (-B).
Есть также параметр вывода статистики по клиенту -S: при указании его и -v в журнал будут выводиться записи типа:
Sent TSTAT={ sender=[4546], bytes=[5264000.000000], seconds=[42.000000] }
Received TSTAT={ sender=[4546], bytes=[5264000.000000], seconds=[42.000000] }
client pid=[4546] context updated
По ним расчитывается пропускная способность.
Пример запуска:
./udpxy -p 4020 -v -S -R 4 -y
Будет буферизироваться 4 записи, установлен вывод статистики и расширенный буфер выхода.
Было бы интересно посмотреть на журнал при прогоне на проблемных каналах.
1 Attachment(s)
продолжаем опыты с Корбиной: 0.1-27
Чтобы отмести уже насовсем версию о недостаточной пропускной способности, попробуйте значение -1 для -R в сочетании с различными значениями для -B (при включённом -y): это обеспечит наполнение буфера "до краёв", как, например при таком вызове:
./udpxy -p 4022 -v -S -y -R -1
Я попробовал на своей жуткой (медленной и глюковатой) беспроводной сети и добился значительного улучшения пропускной способности. Но, возможно, дело тут совсем и не в ней - однако, убедиться стоит. Скорость передачи теперь (напрямую) есть в журнале:
Updated context for pid=[10111]; [125.0] Kb/sec
Если будет что-то интересное - шлите журналы.