TT IPTV во FreeBSD

Доступны более 100 каналов в великолепном качестве, благодаря современным оптоволоконным линиям и новейшему коммутационному оборудованию.

Модератор: Max

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

TT IPTV во FreeBSD

Сообщение leksey » Пт 21 ноя, 2008 2:55

Есть кто уже прошел этот путь?
У нас вобще PIMv2 или DVMRP?
Пока просто тупо произношу эти слова. Очень бы не хотелось плотно узнавать их значения.
Пару хауту нашел, но еще не опробовал. Была мысль, посмотреть как M0n0wall , но там транслирования IMGP нет.
Короче, бобры-извращенцы, присоединяйтесь или поделитесь уже погрызенным деревом.

Max
Администратор
Сообщения: 603
Зарегистрирован: Вт 16 мар, 2004 18:39

Re: TT IPTV во FreeBSD

Сообщение Max » Пт 21 ноя, 2008 13:36

leksey писал(а):У нас вобще PIMv2 или DVMRP?

У нас на клиентских портах только IGMP.

Аватара пользователя
Tiger
Модератор
Сообщения: 2781
Зарегистрирован: Чт 24 июл, 2003 14:13
Откуда: Tiger@jabber.tushino.com. Погода,TV-прогр, фильмы и мн. др.: ftp:// http://10.80.192.167
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Tiger » Пт 21 ноя, 2008 23:33

Дерево грыз в NetBSD но там ещё хуже чем во фряхе, значит смотреть можно, но для этого, по совету akirill'a, может быть необходимо прописать /sbin/route add -net 224.0.0.0 -netmask 240.0.0.0 [ваш шлюз]. Роутить, можно, можно как я извращенец vlc (vlm) + интерфейс на php, перевожу с udp в TT, в unicast в сети по квартире, но это из-за бедности NetBSD. Во FreeBSD на которую я сейчас неспешно перехожу (уже вот пол года как перехожу), есть igmpproxy, ну нет, в портах её вроде нет, а linux версия не собирается, но есть добрые люди которые это пропатчили для FreeBSD. Таким образом роутинг через роутер на фряхе поднять можно и вроде даже просто (это я ещё не пробовал).
С уважением Tiger.

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Сб 22 ноя, 2008 3:38

Max писал(а):
leksey писал(а):У нас вобще PIMv2 или DVMRP?

У нас на клиентских портах только IGMP.

Ок. Как я понял DVMRP это для обмена между роутерами. почему она упоминалась в контексте раздачи пользователям - не знаю.

и. чтобы не забыть. касаемо обсужденного ранее вопроса - забыл сказать, все же я поддался и перезагрузил , но дело то не в том оказалось. сначала посчитал на бумажке, потом поставил ipcalc и посчитал в нем - маска-то, по-видимому, неверная у меня - /19 и тот самый айпи, что мы пинговали, он в локальной сети лежит, поэтому и бродкаст-запрос

Tiger писал(а):Дерево грыз в NetBSD но там ещё хуже чем во фряхе, значит смотреть можно, но для этого, по совету akirill'a, может быть необходимо прописать /sbin/route add -net 224.0.0.0 -netmask 240.0.0.0 [ваш шлюз]. Роутить, можно, можно как я извращенец vlc (vlm) + интерфейс на php, перевожу с udp в TT, в unicast в сети по квартире, но это из-за бедности NetBSD. Во FreeBSD на которую я сейчас неспешно перехожу (уже вот пол года как перехожу), есть igmpproxy, ну нет, в портах её вроде нет, а linux версия не собирается, но есть добрые люди которые это пропатчили для FreeBSD. Таким образом роутинг через роутер на фряхе поднять можно и вроде даже просто (это я ещё не пробовал).

igmpproxy как-то криво перетащена и валяется в сети просто в виде архива. но, как я понял, и оригинальный проект линуксовый не особо живой.

а что касаемо akirill'a - он что-то делал подобное? одним маршрутом тут мало что добьешься - нат обычный только IP умеет.

Аватара пользователя
Tiger
Модератор
Сообщения: 2781
Зарегистрирован: Чт 24 июл, 2003 14:13
Откуда: Tiger@jabber.tushino.com. Погода,TV-прогр, фильмы и мн. др.: ftp:// http://10.80.192.167
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Tiger » Сб 22 ноя, 2008 21:09

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

leksey писал(а):а что касаемо akirill'a - он что-то делал подобное? одним маршрутом тут мало что добьешься - нат обычный только IP умеет.

Там был разговор о просмотре iptv, если это не прописать то програмы не с того интерфейса начинают IPTV нюхать и естественно ничего не работает viewtopic.php?p=389873#p389873
С уважением Tiger.

Max
Администратор
Сообщения: 603
Зарегистрирован: Вт 16 мар, 2004 18:39

Re: TT IPTV во FreeBSD

Сообщение Max » Сб 22 ноя, 2008 23:24

leksey писал(а):чтобы не забыть. касаемо обсужденного ранее вопроса - забыл сказать, все же я поддался и перезагрузил , но дело то не в том оказалось. сначала посчитал на бумажке, потом поставил ipcalc и посчитал в нем - маска-то, по-видимому, неверная у меня - /19 и тот самый айпи, что мы пинговали, он в локальной сети лежит, поэтому и бродкаст-запрос

Откуда /19 ? Там должно быть /27 на интерфейсе.

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Пн 24 ноя, 2008 20:25

Max писал(а):
leksey писал(а):чтобы не забыть. касаемо обсужденного ранее вопроса - забыл сказать, все же я поддался и перезагрузил , но дело то не в том оказалось. сначала посчитал на бумажке, потом поставил ipcalc и посчитал в нем - маска-то, по-видимому, неверная у меня - /19 и тот самый айпи, что мы пинговали, он в локальной сети лежит, поэтому и бродкаст-запрос

Откуда /19 ? Там должно быть /27 на интерфейсе.

Поправил. Но перезагрузил только сеть и роутинг. Теперь все должно быть нормально.

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Пн 01 дек, 2008 0:55

попросил товарища из кверти поковыряться - у них тоже IPTV есть и он себе настраивал связку VLC + webfrontend.

на своей 6.3 он поднял все. только оно падало при вступлении в группу, после его правок перестало. вот тут архив
http://narod.ru/disk/4098336000/igmppro ... r.tar.html

в 7.0 это не работает, сейчас в процессе ковыряния. когда получится, выложу архив или диф. если кому-то надо, то могу написать инструкцию по настройке краткую

Аватара пользователя
Tiger
Модератор
Сообщения: 2781
Зарегистрирован: Чт 24 июл, 2003 14:13
Откуда: Tiger@jabber.tushino.com. Погода,TV-прогр, фильмы и мн. др.: ftp:// http://10.80.192.167
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Tiger » Пн 01 дек, 2008 1:29

leksey писал(а):попросил товарища из кверти поковыряться - у них тоже IPTV есть и он себе настраивал связку VLC + webfrontend.
Вот мой скрипт (для работы нужно запустить VLC "vlc -I telnet --telnet-password (ваш пароль)"

Код: Выделить всё

<?php
function utf8win1251($s){$out="";$c1="";$byte2=false;for ($c=0;$c<strlen($s);$c++){$i=ord($s[$c]);if ($i<=127) $out.=$s[$c];if ($byte2){$new_c2=($c1&3)*64+($i&63);$new_c1=($c1>>2)&5;$new_i=$new_c1*256+$new_c2;if ($new_i==1025) $out_i=168; else if ($new_i==1105) $out_i=184; else $out_i=$new_i-848; $out.=chr($out_i);$byte2=false;} if (($i>>5)==6) {$c1=$i;$byte2=true;}}return $out;}

if($_GET['adr']!=''){
  $fp = fsockopen("127.0.0.1", 4212, $errno, $errstr);
  if (!$fp) {
    echo "ERROR: $errno - $errstr<br />\n";
  } else {
    sleep(1);
    fwrite($fp, "(ваш пароль)\n");
    sleep(1);
    fwrite($fp, "del ch1\n");
    sleep(1);
    if($_GET['adr']!='stop'){
      fwrite($fp, "new ch1 broadcast enabled\n");
      sleep(1);
      fwrite($fp, "setup ch1 input ".$_GET['adr']."\n");
      sleep(1);
      fwrite($fp, "setup ch1 output #std{mux=ts,access=http,dst=(ip адрес интерфейса во внутреннюю сеть):8080}\n");
      sleep(1);
      fwrite($fp, "control ch1 play\n");
      sleep(1);
    }
    fwrite($fp, "exit\n");
    fclose($fp);
  }
$x=substr($_SERVER['REQUEST_URI'],0,-1*strlen($_SERVER['QUERY_STRING']))."play=".$_GET['adr'];
header ( "Location: http" .
(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on" ? "s" : "") . "://"
. $_SERVER['SERVER_NAME'] . ":" . $_SERVER['SERVER_PORT']
. $x );
exit;
}
echo '<html><head><title>Домашнее телевиденье my.net</title></head><body><ol><li>Запустите VLC указав поток <a href="http://(ip адрес интерфейса внутренняя сеть):8080">http://(ip адрес интерфейса внутренняя сеть):8080</a></li><li>выберете канал</li></ol></br>';
$handle = fopen("(адрес m3u файла со списком каналов)", "r");
$tv_name=0;
if($_GET['play']=='stop'){
  echo '<a href="?adr=stop"><b>СТОП</b></a><br/>'."\n<ol>";
}else{
  echo '<a href="?adr=stop">СТОП</a><br/>'."\n<ol>";
}
while (!feof($handle)) {
    $buffer = fgets($handle, 4096);
    $pos = strpos($buffer,'#EXTINF:');
    if ($pos === false) {
      $pos = strpos($buffer,'udp://@');
      if($pos == 0 && $pos !== false && $tv_name!=''){
        if($_GET['play']==trim($buffer)){
          echo '<li><b><a href="?adr='.trim($buffer).'">'.$tv_name."</a></b></li>\n";
        }else{
          echo '<li><a href="?adr='.trim($buffer).'">'.$tv_name."</a></li>\n";
        }
      }
    } else if( $pos == 0 ) {
      $tv_name=trim(utf8win1251(substr($buffer, 8)));
    }
}
fclose($handle);
?>
</ol></body></html>
С уважением Tiger.

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Чт 04 дек, 2008 2:06

Ну что сказать? Слава российским бобрам-извращенцам!
Напильник победил.
Видево показывается, нагрузка на машину смешная

ps -auxww|grep igmp
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
root 56777 0.0 0.1 3104 1096 p4 S 1:36AM 0:00.05 /usr/local/sbin/igmpproxy


Трафик не такой уж смешной :-)
Ifstat
age0 re0 tun0
KB/s in KB/s out KB/s in KB/s out KB/s in KB/s out
680.12 0.00 0.06 681.57 0.00 0.00
679.84 0.00 0.06 679.93 0.00 0.00
679.93 0.00 0.06 679.84 0.00 0.00
680.01 0.33 0.38 680.14 0.27 0.31


Признаюсь, первый раз увидел айпитиви и мне это понравилось. Только наличие рекламы смутило. Уже, грешным делом, отвык.

Аватара пользователя
Tiger
Модератор
Сообщения: 2781
Зарегистрирован: Чт 24 июл, 2003 14:13
Откуда: Tiger@jabber.tushino.com. Погода,TV-прогр, фильмы и мн. др.: ftp:// http://10.80.192.167
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Tiger » Пт 05 дек, 2008 12:54

leksey можешь расказать про методы победы?
С уважением Tiger.

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Пт 05 дек, 2008 14:46

Tiger писал(а):leksey можешь расказать про методы победы?

пропатченная версия impproxy
скажи пошта, чтобы не плодить эти версии в интернете. у меня нет версии пока красиво оформленной. да и есть мысля все же портом это оформить

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Сб 06 дек, 2008 2:42

чувствую, на нормальную версию времени у меня не будет, поэтому пока только так

http://narod.ru/disk/4208649000/igmppro ... ar.gz.html
~tar -xvf igmpproxy-freebsd-06122008.tar.gz
~cd igmpproxy-install-complete/src/
~make
~su
~Password:
#make install


отредактировать файл /usr/local/etc/igmpproxy.conf чтобы там были ваши имена интерфейсов

мой конфиг
quickleave
phyint age0 upstream
altnet 224.0.0.0/8
altnet 234.0.0.0/8
altnet 239.0.0.0/8
altnet 233.0.0.0/8
altnet 77.0.0.0/8
phyint re0 downstream


нафига нужен маршрут на 77 сеть я не знаю. из него производится само вещание

в /etc/rc.conf добавить
igmpproxy_enable="YES"

static_routes="multicast1 multicast2 multicast3 multicast4"
route_multicast1="-net 239.0.0.1/8 10.80.192.1"
route_multicast2="-net 224.0.0.1/8 10.80.192.1"
route_multicast3="-net 239.0.0.1/8 10.80.192.1"
route_multicast4="-net 233.0.0.1/8 10.80.192.1"

10.80.192.1 (последний айпи в стройке) замените на IP-адрес вашего гейтвея (зависит от сегмента)

Пересобрать ядро. Оно должно быть собрано с опцией MROUTING.
options MROUTING


igmp в файерволе нужно разрешить. если у вас ipfw, который для NAT часто используется
ipfw add 500 allow igmp from any to any


Запуск в текущей сессии (при последующих ОС запусках будет уже само стартовать)
/usr/local/etc/rc.d/igmpproxy.sh start


Решение проблем
Для отладки можно запускать igmpproxy -d -c /usr/local/etc/igmpproxy.conf

Когда все нормально То будут пакеты вида
tcpdump -n -e -ttt -i age0 `ip proto igmp`
004824 00:80:48:5a:18:9c > 01:00:5e:00:2a:11, ethertype IPv4 (0x0800), length 1358: 77.246.100.194.34815 > 224.0.42.17.5000: UDP, length 1316


Если нет, скорее всего запросы с прокси не идут в сеть. Чтобы проверить, работает ли ТВ вообще, на компе без иксов можно запустить vlc. Лучше поставить последнюю vlc 9.x.x, в портах ее нет. При конфигурировании нужно прописать для установки ncurses - консольный интерфейс. Запускаем vlc не из-под рута:

vlc -vvv udp://@224.0.42.1:5000
или vlc -I ncurses udp://@224.0.42.1:5000

Если работает, то все ок. Изображение будет в виде текстовых символов, если это неочевидно.

Дальше смотрим тспдампом внутренний интерфейс. Если и там есть пакеты, значет проблема уже в локальной машине.

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Ср 10 дек, 2008 17:43

Настроил еще на одной машине - работает, однако.
Правда, теперь надо как-то разрулить ситуацию, когда ДЦ-трафик давит видео и картинка начинает сыпаться.

Аватара пользователя
Mityagin.Spb.Ru
Сообщения: 13
Зарегистрирован: Вт 16 дек, 2008 8:43
Откуда: Санкт-Петербург
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Mityagin.Spb.Ru » Вт 16 дек, 2008 8:50

Супер продавцам радости!
Моему счастью нет предела!
НО! Все работает как часы, и внезапно вешает машину... причем... осень осень красиво... спасает только нажатие на power =(((
Картинка застревает, логов никаких,... 100% по причине igmpproxy.. что капать? видел много закоментенных в коде строк =) что делать? как быть? опять без телика жить?!
Может есть необходимость что-то подправить в ядре aka sysctl ?

И все-же огромнейший респект тому человеку который сделал 2008 сборку!

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Вт 16 дек, 2008 23:31

Mityagin.Spb.Ru писал(а):Супер продавцам радости!
Моему счастью нет предела!
НО! Все работает как часы, и внезапно вешает машину... причем... осень осень красиво... спасает только нажатие на power =(((
Картинка застревает, логов никаких,... 100% по причине igmpproxy.. что капать? видел много закоментенных в коде строк =) что делать? как быть? опять без телика жить?!
Может есть необходимость что-то подправить в ядре aka sysctl ?

И все-же огромнейший респект тому человеку который сделал 2008 сборку!

А версия фряхи какая? Падает с паникой ядра?

Аватара пользователя
Mityagin.Spb.Ru
Сообщения: 13
Зарегистрирован: Вт 16 дек, 2008 8:43
Откуда: Санкт-Петербург
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Mityagin.Spb.Ru » Ср 17 дек, 2008 4:53

Panic нету, видимо сил на него нету... просто застревает и все... ноль реакции... FreeBSD 7

Аватара пользователя
Tiger
Модератор
Сообщения: 2781
Зарегистрирован: Чт 24 июл, 2003 14:13
Откуда: Tiger@jabber.tushino.com. Погода,TV-прогр, фильмы и мн. др.: ftp:// http://10.80.192.167
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Tiger » Ср 17 дек, 2008 21:30

Mityagin.Spb.Ru писал(а):Panic нету, видимо сил на него нету... просто застревает и все... ноль реакции... FreeBSD 7
А может 7.1? У меня 7.1 зависает, причём не полностью, т.е. какая-то базовая реакция остаётся, даже консли пытается переключать, но висит. Корки нет потому как зависает, а не падает.
С уважением Tiger.

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Чт 18 дек, 2008 0:58

А если сказать
sysctl debug.bootverbose=1

Аватара пользователя
Tiger
Модератор
Сообщения: 2781
Зарегистрирован: Чт 24 июл, 2003 14:13
Откуда: Tiger@jabber.tushino.com. Погода,TV-прогр, фильмы и мн. др.: ftp:// http://10.80.192.167
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Tiger » Чт 18 дек, 2008 2:10

Завис один раз в дебаге (igmpproxy -d), к сожалению консоль была открыта не та, сейчас гоняю с открытой нужной консолью, но не зависает уже который час, скорее всего поставлю 7.0, что бы и не заморачиваться с этой проблемой.
С уважением Tiger.

Аватара пользователя
Mityagin.Spb.Ru
Сообщения: 13
Зарегистрирован: Вт 16 дек, 2008 8:43
Откуда: Санкт-Петербург
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Mityagin.Spb.Ru » Пт 19 дек, 2008 0:48

leksey писал(а):А если сказать
sysctl debug.bootverbose=1

включил... ждемс...

PS: Только опять восстановил нормальную работу mysql и других баз... более суток работало нормально и вот опять..

Аватара пользователя
Mityagin.Spb.Ru
Сообщения: 13
Зарегистрирован: Вт 16 дек, 2008 8:43
Откуда: Санкт-Петербург
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Mityagin.Spb.Ru » Пт 19 дек, 2008 0:51

Tiger писал(а):
Mityagin.Spb.Ru писал(а):Panic нету, видимо сил на него нету... просто застревает и все... ноль реакции... FreeBSD 7
А может 7.1? У меня 7.1 зависает, причём не полностью, т.е. какая-то базовая реакция остаётся, даже консли пытается переключать, но висит. Корки нет потому как зависает, а не падает.


7.0-RELEASE-p5

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Пт 19 дек, 2008 23:41

У меня еще появилось предположение, что стабильность работы как-то зависит от сетевых контроллеров/драйверов.
У меня стоят: age (на материнке)/re (карточка)/stge(карточка) (используются первые два)
Если у вас есть возможность, то попробуйте поработать на другом сетевом контроллере.

Аватара пользователя
Tiger
Модератор
Сообщения: 2781
Зарегистрирован: Чт 24 июл, 2003 14:13
Откуда: Tiger@jabber.tushino.com. Погода,TV-прогр, фильмы и мн. др.: ftp:// http://10.80.192.167
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Tiger » Сб 20 дек, 2008 1:44

У меня два реалтека, каких не вспомню, но одинаковых, самых простых, гигабитных re, правда есть старенький бронебойный 3com xl, но он для другого настраивается, завтра снова буду пытаться поймать зависание и посмотреть что валится на консоль в дебаге (первый раз зависание было тоже в дебаге, но консоль была открыта другая).
С уважением Tiger.

Аватара пользователя
Mityagin.Spb.Ru
Сообщения: 13
Зарегистрирован: Вт 16 дек, 2008 8:43
Откуда: Санкт-Петербург
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Mityagin.Spb.Ru » Сб 20 дек, 2008 8:49

Итак в этот раз дольше продержалось... полтора дня.. последние сообщение... правда обратите внимание между ними все работало...
Dec 20 07:05:10 natd[480]: unexpected packet read from routing socket (Network is down)
Dec 20 07:31:26 natd[480]: unexpected packet read from routing socket (Network is down)


Интерфесы у меня (два одинаковых):
Nov 21 11:41:05 kernel: fxp0: <Intel 82551 Pro/100 Ethernet> port 0xdf00-0xdf3f mem 0xfe5ff000-0xfe5fffff,0xfe5c0000-0xfe5dffff irq 17 at device 9.0 on pci1
Nov 21 11:41:05 kernel: miibus0: <MII bus> on fxp0
Nov 21 11:41:05 kernel: inphy0: <i82555 10/100 media interface> PHY 1 on miibus0
Nov 21 11:41:05 kernel: inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

В качестве биллинга стоит stargazer. Последнюю версию поставлю на днях. Если не пользоваться тв при включенном igmpproxy, то проблемы нет, но как только переключаешь канал...тут срабатывает "слот машина" - либо тв(777), либо висим и следует ручной power-reboot, fsck -y, mysql recover, и тд.. да еще раз повторюсь обычно это при переключении на другой адрес...

gygenot
Сообщения: 3
Зарегистрирован: Сб 20 дек, 2008 15:06

Re: TT IPTV во FreeBSD

Сообщение gygenot » Вс 21 дек, 2008 0:27

Всем привет!
Сообщите, пожалуйста, что выдает у вас в системе uname -a. Когда прокся вешает сервер, это происходит во время смены канала? Есть ли у кого возможность в режиме отладки посмотреть последние строки вывода программы перед зависанием? У самого сейчас freebsd 6.4 prerelease, скоро обновлюсь до 6.4, программа иногда падает с segmentation fault.
Я еще немного посмотрю, что можно сделать. Дело в том, что я переписываю версию прокси для линукса, т.к. ее до меня кто-то пытался адаптировать к фре. Но, возможно, тут ограничиться правками не удасться. Мне не нравится, по какому принципу она построена. В основе программы лежит select с таймаутом, который слушает сокет. Если во время таймаута происходит что-то непредвиденное, прога тут же падает c segsig и последующим coredumpом. Так же эта ошибка возникает при словленном termsig. Переписал на pselect, стал отлавливать сигналы, вроде стабильность повысилась. Переписал процедуры покидания группы.
Сейчас рассматриваю вариант перехода на другую проксю, адаптация к фре быстрее, чем заново писать кривую программу. Завтра выложу архив (или попрошу лексея) с последними правками, может получше будет.

С уважением,
gygenot

Аватара пользователя
Mityagin.Spb.Ru
Сообщения: 13
Зарегистрирован: Вт 16 дек, 2008 8:43
Откуда: Санкт-Петербург
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Mityagin.Spb.Ru » Вс 21 дек, 2008 0:42

gygenot писал(а):Всем привет!
Сообщите, пожалуйста, что выдает у вас в системе uname -a. Когда прокся вешает сервер, это происходит во время смены канала? Есть ли у кого возможность в режиме отладки посмотреть последние строки вывода программы перед зависанием? У самого сейчас freebsd 6.4 prerelease, скоро обновлюсь до 6.4, программа иногда падает с segmentation fault.
Я еще немного посмотрю, что можно сделать. Дело в том, что я переписываю версию прокси для линукса, т.к. ее до меня кто-то пытался адаптировать к фре. Но, возможно, тут ограничиться правками не удасться. Мне не нравится, по какому принципу она построена. В основе программы лежит select с таймаутом, который слушает сокет. Если во время таймаута происходит что-то непредвиденное, прога тут же падает c segsig и последующим coredumpом. Так же эта ошибка возникает при словленном termsig. Переписал на pselect, стал отлавливать сигналы, вроде стабильность повысилась. Переписал процедуры покидания группы.
Сейчас рассматриваю вариант перехода на другую проксю, адаптация к фре быстрее, чем заново писать кривую программу. Завтра выложу архив (или попрошу лексея) с последними правками, может получше будет.

С уважением,
gygenot


Рад буду посодействовать в развитии данного софта т.к. имею большую заинтерисованность.
Плз при появлении нового дистриба прошу выслать его на kirill@mityagin.spb.ru, выложу зеркало.

leksey
Сообщения: 214
Зарегистрирован: Пн 09 май, 2005 0:02
Откуда: xmpp:lke@jabber.tushino.com
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение leksey » Вс 21 дек, 2008 2:01

Думаю, заинтересованность имеют многие - IPTV появляется у многих провайдеров.

Версия, о которой говорил Стас.

Аватара пользователя
Mityagin.Spb.Ru
Сообщения: 13
Зарегистрирован: Вт 16 дек, 2008 8:43
Откуда: Санкт-Петербург
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Mityagin.Spb.Ru » Вс 21 дек, 2008 3:34

leksey писал(а):Думаю, заинтересованность имеют многие - IPTV появляется у многих провайдеров.

Версия, о которой говорил Стас.


Продублировал:
http://www.mityagin.spb.ru/freebsd/igmp ... 008.tar.gz

Аватара пользователя
Mityagin.Spb.Ru
Сообщения: 13
Зарегистрирован: Вт 16 дек, 2008 8:43
Откуда: Санкт-Петербург
Контактная информация:

Re: TT IPTV во FreeBSD

Сообщение Mityagin.Spb.Ru » Вс 21 дек, 2008 4:24

Продалжаем c версией 21 декабря:

Note: Timeout 9
Debu: Got leave message from Яип to ПОТОКип. Starting last member detection.
Debu: Leaving group ПОТОКип upstream on IF addres ВНЕШНИЙипКпрову.

Консили не переключить.. все висит...

При нажатии на power:
acpi: suspend request ignored (not ready yet)
acpi: че то там S5 пипец..

Замечанно что при CTRL-C (Break) приложение в debug тупит до тех пор пока клиент смотрит... как только клиент отключился Break сработал...

Для инф. скидываю вывод при компиляции:

Код: Выделить всё

make
echo '#define BUILD "' `date +%y%m%d` '"' >build.h
cc -O2 -fno-strict-aliasing -pipe  -O2 -c igmpproxy.c
igmpproxy.c: In function 'main':
igmpproxy.c:102: warning: incompatible implicit declaration of built-in function 'strlen'
igmpproxy.c:124: warning: assignment discards qualifiers from pointer target type
igmpproxy.c:134: warning: assignment discards qualifiers from pointer target type
cc -O2 -fno-strict-aliasing -pipe  -O2 -c config.c
config.c: In function 'parsePhyintToken':
config.c:228: warning: incompatible implicit declaration of built-in function 'strlen'
config.c:249: warning: incompatible implicit declaration of built-in function 'strcpy'
config.c: In function 'parseSubnetAddress':
config.c:337: warning: assignment makes pointer from integer without a cast
config.c:340: warning: assignment makes pointer from integer without a cast
cc -O2 -fno-strict-aliasing -pipe  -O2 -c confread.c
cc -O2 -fno-strict-aliasing -pipe  -O2 -c request.c
cc -O2 -fno-strict-aliasing -pipe  -O2 -c udpsock.c
udpsock.c: In function 'openUdpSocket':
udpsock.c:62: warning: incompatible implicit declaration of built-in function 'memset'
cc -O2 -fno-strict-aliasing -pipe  -O2 -c mcgroup.c
mcgroup.c: In function 'joinMcGroup':
mcgroup.c:51: warning: incompatible implicit declaration of built-in function 'memset'
mcgroup.c: In function 'leaveMcGroup':
mcgroup.c:71: warning: incompatible implicit declaration of built-in function 'memset'
cc -O2 -fno-strict-aliasing -pipe  -O2 -c rttable.c
rttable.c: In function 'internUpdateKernelRoute':
rttable.c:604: warning: incompatible implicit declaration of built-in function 'memset'
cc -O2 -fno-strict-aliasing -pipe  -O2 -c igmp.c
igmp.c: In function 'initIgmp':
igmp.c:63: warning: incompatible implicit declaration of built-in function 'bzero'
igmp.c: In function 'sendIgmp':
igmp.c:268: warning: incompatible implicit declaration of built-in function 'bzero'
cc -O2 -fno-strict-aliasing -pipe  -O2 -c ifvc.c
ifvc.c: In function 'buildIfVc':
ifvc.c:97: warning: incompatible implicit declaration of built-in function 'strncpy'
ifvc.c:118: warning: incompatible implicit declaration of built-in function 'memcpy'
cc -O2 -fno-strict-aliasing -pipe  -O2 -c callout.c
cc -O2 -fno-strict-aliasing -pipe  -O2 -c kern.c
cc -O2 -fno-strict-aliasing -pipe  -O2 -c syslog.c
cc -O2 -fno-strict-aliasing -pipe  -O2 -c lib.c
cc -O2 -fno-strict-aliasing -pipe  -O2 -c mroute-api.c
mroute-api.c: In function 'addVIF':
mroute-api.c:104: warning: incompatible implicit declaration of built-in function 'memset'
mroute-api.c: In function 'addMRoute':
mroute-api.c:158: warning: incompatible implicit declaration of built-in function 'memset'
mroute-api.c:171: warning: incompatible implicit declaration of built-in function 'memcpy'
mroute-api.c: In function 'delMRoute':
mroute-api.c:202: warning: incompatible implicit declaration of built-in function 'memset'
cc  *.o
mv a.out igmpproxy


Вернуться в «Цифровое телевидение»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя