Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: igmpproxy тупит  (Прочитано 4974 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн bagart

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
igmpproxy тупит
« : 15 Января 2011, 18:34:47 »
дано  IPTV: VLC udp://@255... маленького локального провайдера
Ubuntu 10.10 Desktop x86_64 в качестве сервера на Athlon 3200+
100мбит езернет с инетом 30мбит(без авторизации вообще), и 100мбит внутренняя локалка
важный момент. у меня настроен QoS но htb.init, но во время настройки я его отключил!(хотя не удивлюсь, если он продолжает частично влиять на систему)
между мной и сервером - VOIP/SIP-роутер. WAN не подключён (по сути он тоже может влиять на броадкастинг)
в сети вообще куча роутеров(сеть домашняя)
раньше ставил udproxy, но он идеологически не удобный: зачем прокси есть есть роутинг, требует переписка плейлиста который и так постоянно меняется провайдером

прочитал кучу противоречивых инструкций про igmp-роутинг (именно противоречивых)
в итоге прописал route(хотя у меня и так 0.0.0.0 в 1 gw), Iptables igmp ACCEPT(Хотя у меня и так ACCEPT по дефолту), sysctl *rp_filter=0(как выяснилось потом - на Igmpproxy явно не влияет), aptitude install pimd - явно не помогло. хотя вроде переключило(может другая переменная. точно не помню)
вроде sysctl net.ipv4.conf.all.mc_forwarding = 1
удалил все роуты и iptables ибо это было "по инструкции" но, очевидно, ненужное
пришлось отключить pimd чтобы его запустить igmpproxy(возможно, это на что-то повлияло)


пришлось пойти лёгким путём - IGMPPROXY

(Нажмите, чтобы показать/скрыть)
в итоге проблемы следующие:

включаю VLC 1 канал (4мбит)
  4мбита->на сервер
  4мбита->из сервер
  4мбита->на клиент
далее 4/4/4
всё отлично
-------------------------
нажимаю СТОП
  4/4/0
я отписался но трафик на сервер и в локалку всё равно идёт.
т.е. броадкаст никто не отписал но на комп он не попадает(фильтруется на входе?)
-------------------------
отключаю/включаю роутер между клиентом и сервером(проверка)! :)
  4/4/0
трафик всё ещё идёт.
-------------------------
включаю VLC 1 канал
  4/4/4
всё отлично
-------------------------
включаю VLC 2 канал(2мбит)
 5,9/5,9/2
всё отлично
-------------------------
3 канал (4мбит)
9,8/6-7/2,9
картинка поломалась. если вернутся на канал с мин.трафиком - картинка лучше но срывается.
-------------------------
СТОП
9,8/5,8-7,2/2,9-3,6
я не могу отписаться от этого канала как не пробую! первые 2 свободно отписывались! наверное надо добавить altnet?

чем больше каналов включаю, тем больше трафика. но тв уже никак не покаывает

разницу в скорости между исходом в локалке и входом к клиенту я могу объяснить слабым роутером между ними(обычно он здесь не стоит, но пока вынужден обходится так). он вообще какой-то странный :)

но проблема явно в другом. почему не происходит отписывания от броадкаста вообще - на вход в серв?
вернее происходит ровно через 5 минут(толи таймаут на отсутствие запросов, толи Igmpproxy сам поддерживает подписку по непонятным причинам)
проц на сервере свободный(Idle > 90%)

напомню, в системе отключён QoS через htb.init
не уверен. возможно он оставляет скрытые плоды своей работы в отключённом состоянии


а самое прикольное, я могу переключать каналы дальше подписываясь ещё на новые каналы, и трафик растёт вплоть до 55мбит(судя по всему, потолок) т.е. предел канала банально не достигнут(и не это причина пропажи инета. хотя, возможно это происки провайдера c QoS)

финт ушами
sudo /etc/init.d/igmpproxy restart
трафик падает ровно в 0-1 поток(1 - если включен VLC)!

на графике (# nload eth0 1024) отлично как он падает лесенкой(т.е. не моментально а по некому таймауту) в течении ~1 секунды
для меня открытие - трафик идёт только пока его ежесекундно просят(или там некое подобие TCP с проверкой на факт получения?). сразу понятно, почему при пользовании клиентом без роутеров проблем не возникает - нет потребителя - нет трафика(позже проверю как ведёт себя VLC запущенный на сервере. думаю многое объяснит ) :(


вобщем, надо мне его научить отписываться от броадкаста. непонятно толко где(iptables,igmpproxy altnet или ещё какой route). есть мысли?

Пользователь решил продолжить мысль 15 Января 2011, 19:16:25:
смотрю на сервере видео
при переключении каналов трафит не растёт(igmpproxy не отключал). т.е. растёт сразу после переключения в 2 раза потом сразу нормализуется в  1 поток


финт - включаю один и тот же канал на сервере и на клиенте
трафик не вырос но стал поступать на клиент

останавливаю на клиенте - трафикна исход с сервера продолжается но на вход клиента не попадает
останавливаю на сервере - ничего не меняется

вобщем, напрямую подключённый клиент нормально работает и нормально отписывается, и igmpproxy установленный на той же машине на VLC не влияет

Пользователь решил продолжить мысль 15 Января 2011, 19:56:34:
повторно попробовал в
Код: (/etc/sysctl.conf) [Выделить]
net.ipv4.conf.default.rp_filter=0
net.ipv4.conf.all.rp_filter=0

pv4.ipv4.conf.eth0.mc_forwarding=1
net.ipv4.conf.all.mc_forwarding=1
net.ipv4.conf.eth1.mc_forwarding=1
с перезагрузкой. параметры выставились как надо(mc_forwarding)


не помогло ни чем  :(
посоветуйте хоть как посмотреть пакеты подписки/отписки?

Пользователь решил продолжить мысль 15 Января 2011, 20:33:11:
попробовал для прикола такой вариант:
vlc-wrapper udp://@225.0.0.5:1234 --sout '#std{access=http,mux=ts,dst=192.168.0.251:30100}' --daemon
работает. но как сделать "по запросу" непонятно, ибо трафик начинает собирать сразу, как запускается демон.
ну да и смысла нет. интересно, что лучше updroxy или такое в VLC
« Последнее редактирование: 15 Января 2011, 20:33:11 от bagart »

Оффлайн bagart

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: igmpproxy тупит
« Ответ #1 : 09 Февраля 2011, 14:00:39 »
сдаётся мне, что тема нативного роутинга IPTV актуальная, поэтому UP

Оффлайн nomeron

  • Новичок
  • *
  • Сообщений: 30
    • Просмотр профиля
Re: igmpproxy тупит
« Ответ #2 : 09 Февраля 2011, 15:00:50 »
Почему не происходит отписывания от броадкаста вообще - на вход в серв?
Потому,  что на входе используется igmp snooping, а не чистый igmp
http://ru.wikipedia.org/wiki/IGMP_snooping
Вы отписываетесь не от сервера, а от рассылки на порт коммутатора.
В вашем случае коммутатор ждет 5 мин для прекращения потока.
Так помойму у всех провайдеров устроено, чтобы снижать нагрузку на оборудование

Оффлайн bagart

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: igmpproxy тупит
« Ответ #3 : 10 Февраля 2011, 22:57:47 »
ну я так и понял/описал (и даже читал эту самую статью на вики раньше, просто не думал что это именно ЕГО фишка)
мой вопрос потребительский: как сделать адекватный роутинг IGMP ну Ubuntu.
как это делают обычные роутеры за тыщу рублей (пусть, не так просто как в 1 галочку).
к сожалению, держать трафик в 5 минут просто неприемлимо при 100мегабитной сети у реального провайдера. мне бы подкорректировать этот самый таймаут.
придётся на досуге попробовать повторить...

Оффлайн nomeron

  • Новичок
  • *
  • Сообщений: 30
    • Просмотр профиля
Re: igmpproxy тупит
« Ответ #4 : 13 Февраля 2011, 15:14:08 »
В Вашей ситуации роутер будет работать абсолютно аналогично.
Решить проблему можно только на уровне провайдера.
Время отписки можно уменьшишь (по крайней мере на Dlink точно параметр есть)
На отключение IGMP_snooping лично для вас провайдер не пойдет, ведь это сильно увеличит нагрузку на всю цепочку

Оффлайн bagart

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: igmpproxy тупит
« Ответ #5 : 14 Февраля 2011, 15:11:11 »
В Вашей ситуации роутер будет работать абсолютно аналогично.
Решить проблему можно только на уровне провайдера.
Время отписки можно уменьшишь (по крайней мере на Dlink точно параметр есть)
На отключение IGMP_snooping лично для вас провайдер не пойдет, ведь это сильно увеличит нагрузку на всю цепочку
Спасибо за убедительный ответ, но всё же.
локлально и ПРАКТИЧЕСКИ проблему решить точно можно(другое дело, реализовано ли это в igmpproxy или других igmp-роутерах).
я уже писал: рестарт броадкаст-демона решает проблему с левым трафиком моментально.
а значит исходящий броадкас-шлюз реагирует на что-то(броадкаст-ответы или их отсутствие)
а значит, это поведение можно эмулировать.
возможно, с кратковременным прерыванием вещания для других просматриваемых каналов(если отписка может происходить только на уровне "сервер недоступен", а не на уровне отдельных взятых адресов ретрансляции). хотя эта проблема теоретически решаемая: можно же "выделить", если провайдер позволит зарезервировать несколько ип-адресов

Оффлайн drako

  • Старожил
  • *
  • Сообщений: 1422
    • Просмотр профиля
Re: igmpproxy тупит
« Ответ #6 : 17 Февраля 2011, 13:03:58 »
По Вашему описанию похоже на некоректную работу самого igmpproxy. Пробовал его на шестом дебиане, работает на ура. Pimd такой же мультикаст-роутер как и igmpproxy, потому они одновременно и не пахали. Кстати, по умолчанию конфиг igmpproxy устанавливается в /usr/local/etc.

 

Страница сгенерирована за 0.043 секунд. Запросов: 25.