Как настроить мультикаст

Настройка Multicast в системах видеонаблюдения

Настройка Multicast в системах видеонаблюдения

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

При использовании multicast в системе видеонаблюдения камера или видеосервер отправляет в сеть один единственный поток данных, который затем дублируется маршрутизатором или коммутатором с функцией маршрутизации мультикаст-трафика.

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

Для применения технологии multicast необходимо выполнение следующих условий:

  • реализация передачи multicast-трафика в видеокамерах либо в ПО видеонаблюдения на серверах;
  • использование управляемых коммутаторов либо маршрутизаторов, с функцией маршрутизации мультикаст-трафика (IGMP snooping);
  • настройка источников (камер, серверов), приемников (УРМ) и коммутаторов/маршрутизаторов.

Преимуществами мультикаста являются:

  • сравнительно небольшие требования к пропускной способности линии связи, идущей от источника трафика;
  • возможность подключения большого количества получателей трафика (десятки, сотни и даже тысячи);
  • стабильная работа источника трафика, т.к. подключение/отключение получателей никак не сказывается на работе источника.

Главным же недостатком мультикаста , применительно к видеонаблюдению, является отсутствие преимуществ перед традиционным юникаст. Вызвано это тем, что у IP-камеры один получатель данных – видеосервер, а у видеосервера, по понятным причинам, небольшое количество получателей видео даже если еть центральный пост, к тому же, как правило, на каждом мониторе отображается разный набор камер.

Также мультикаст не пригоден для работы с архивами видеосервера с удаленных рабочих мест. При просмотре архива подразумевается выборочное воспроизведение записей на разных рабочих местах. Это, в свою очередь, вынуждает использовать «традиционный» Unicast и, соответственно, увеличивать трафик сети.

Но если вы все же хотите использовать в своей системе мультикаст, нужно его включить. Однако перед включением обязательно проверьте, что сСетевое оборудование не блокирует мультикаст трафик, а в настройках вашего VLC плеера нет флажка RTP поверх RTSP (TCP).

Для разного оборудования для видеонаблюдения мультикаст включается по разному. Приведем несколько примеров.

Dahua

Адрес UDP по умолчанию — 224.1.2.3, диапазон изменения — 224.X.X.X.to 239.X.X.X

OMNY PRO

Включение мультикаст выполняется в WEB интерфейсе.

Заходим Configuration—Advance Set—Access Platform—PU SetRegister Server> вводим адреса между 224—239 сегментом, например, 224.168.1.100, указываем порт 10102.

Сохраняем, устройство перезагружается. Открываем VLC плеер для проверки (Media /открыть URL/сеть) и вводим строку запроса udp://@224.168.1.100:10102 (соответствующий адрес и порт).

Новые модели имеют другое расположение настроек мультикаст:

Configuration>>network management>>Network Service>>MUC

OMNY Base

Включение мультикаст выполняется в WEB интерфейсе. Путь Settings/Network/RTSP — Multicast Settings / Enable Multicast, затем вводим адреса между 224—239 сегментом, например, 224.1.2.3, указываем порт 10000 и сохраняем.

Открываем VLC плеер для проверки (Медиа/открыть URL/сеть) и вводим строку запроса как RTSP.

Убедитесь, что в настройках вашего VLC плеера нет флажка RTP поверх RTSP (TCP).

Вот, пожалуй, и все. Мы же напоминаем, что наша компания «Запишем всё» с 2010 года занимается проектированием, монтажом, обслуживанием и ремонтом систем видеонаблюдения и видеодомофонов в Москве и Подмосковье.

Мы работаем быстро, качественно и по доступным ценам. Перечень услуг и цены на их вы можете посмотреть здесь.

Звоните +7 (499) 390-28-45 с 8-00 до 22-00 в любой день недели, в том числе и в выходные. Мы будем рады Вам помочь!

Как настроить IPTV на MikroTik

Установка пакета multicast

Чтобы настроить IPTV на роутерах MikroTik, сначала необходимо установить дополнительный пакет multicast. Для этого выполните следующее:

  1. Перейдите на оффициальный сайт MikroTik по ссылке http://www.mikrotik.com/download;
  2. Определите, к какой серии относится ваш роутер, и версию операционной системы RouterOS, установленную на роутере. Если на сайте нет нужной версии, вам потребуется обновить операционную систему роутера до необходимой версии. Как это сделать можно прочитать в инструкции Как обновить MikroTik RouterOS;
  3. Нажмите на ссылку напротив Extra Packages и необходимой версии RouterOS, чтобы скачать дополнительные пакеты;

После перезагрузки в меню System — Packages должен появиться модуль multicast.

Настройка IGMP Proxy

Выполним настройку IGMP Proxy на MikroTik.

Откройте меню Routing — IGMP Proxy и нажмите синий плюсик, чтобы указать на какой порт приходит IPTV.

В выпадающем списке Interface выберите WAN порт, к которому подключен кабель интернет провайдера и поставьте галочку Upstream.

В поле Alternative Subnets укажите подсеть стриммеров. Если вы не знаете данные подсети, то попробуйте указать: 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16.

Я настраивал IPTV для Maxnet, и у меня все заработало c Alternative Subnets 0.0.0.0/0. Но так лучше не делать. Используйте 0.0.0.0/0 только если не смогли найти необходимую подсеть.

После ввода параметров нажмите кнопку OK.

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

В выпадающем списке Interface выберите порт, на который нужно пробросить IPTV, и нажмите кнопку OK. В Interface желательно указывать один конкретный порт, чтобы не было проблем с производительностью роутера.

Нажмите кнопку Settings и поставьте галочку напротив Quick Liave. Это позволит быстро переключаться между каналами.

Настройка Firewall

Чтобы фаервол пропускал IPTV, необходимо добавить разрешающие правила. Откройте меню New Terminal.

Выполните в терминале следующие команды:

/ip firewall filter add action=accept chain=input comment=»Allow IGMP» disabled=no in-interface=ether1 protocol=igmp

/ip firewall filter add action=accept chain=forward comment=»IPTV UDP forwarding» disabled=no dst-port=1234 protocol=udp

ether1 — это интерфейс, на который приходит IPTV от провайдера. Если ваше имя отличается, укажите необходимое.

После этого откройте меню IP — Firewall и перейдите на вкладку Filter Rules. Созданные правила перетяните кнопкой мыши вверх выше запрещающих.

Настройка Wi-Fi

Если вы транслируете IPTV по Wi-Fi, то необходимо выполнить следующие настройки.

  1. Откройте меню Wireless.
  2. Перейдите на вкладку Interfaces.
  3. Откройте двойным щелчком беспроводной интерфейс wlan1.
  4. Перейдите на вкладку Wireless.
  5. Нажмите кнопку Advanced Mode.

Найдите параметр WMM Support и выберите enabled. Он включит поддержку Wi-Fi multimedia. Если у вас много клиентов, то его лучше не включать, поскольку один клиент может мультикастом съесть весь канал.

В параметре Multicast Helper выберите full. Это позволит отправлять мультикаст пакеты по MAC адресам клиентам, подключенным к Wi-Fi.

После этого нажмите кнопку OK.

На этом настройка IPTV на MikroTik окончена.

IGMP Proxy и Мультикаст: что это в роутере и как включить?

И так, чтобы раскрыть тему IGMP Proxy, PIM и мультикаста полностью – давайте начнём с самого начала. Вы, наверное, уже знаете, как передаётся эфирное телевидение. То есть у нас есть телевизионная вышка, которая путём радиоволн передаёт закодированный сигнал. А клиент в свою очередь принимает этот сигнал с антенны и видит картинку на телевизоре. Аналогично все происходит и путём кабельного ТВ. Только разница в том, что в кабельном идёт сигнал непосредственно по проложенному проводу к каждому приёмнику.

Но общее все же есть – сигнал одновременно поступает к всем клиентам. Когда вы включите телевизор, то вы увидите сигнал, который отправляется всем. Но если вы включите, например тот же самый YouTube, то там все по-другому. Каждому пользователю предоставляется свой пакет трафика.

И вот мы подошли к вопросу – что же такое мультикаст? Это технология, которая объединяет два этих подхода передачи трафикав. На первом уровне, пакет отправляется только в одном экземпляре, но только тому клиенту, который сделал на него запрос. Приёмников на самом деле может быть несколько.

Самый яркий пример мультикаста — это использования IPTV. Не все провайдеры предоставляют данную возможность, но щас она набирает обороты и возможно, кто-то уже пользуется этой услугой. Представим, что у нас есть два пользователя: Вася и Петя, который подключены к одному провайдеру. Так вот сервер IPTV, отправляет сигналы не всем пользователям, а только тем, кто в данный момент подключен.

Но самое главное, что Вася и Петя будут получать сигнал и пакеты только того канала, который в данный момент включен. Например, Вася смотрит «Первый канал», а Петя «СТС». Сервер четко отправляет пакеты информации только по тому каналу, который активен. Ещё один пример — это онлайн конференция, которой часто пользуются крупные компании. Ведь нет смысла раскидываться трафиком и отправлять всем, можно просто от одного разливать информацию к каждому клиенту.

  1. Реализация
  2. Куда идёт пакет
  3. Как включить на роутере
  4. Задать вопрос автору статьи

Реализация

А теперь встаём следующая проблема – как это организовать. Представьте себе, что в сети у провайдера очень много узлов, коммутаторов, маршутизаторов, серверов и есть центральный сервер того же IPTV. Задача сервера отправить трафик таким образом, чтобы он максимально быстро через минимальное количество узлов дошёл до пользователя.

При этом нужно это сделать так, чтобы не образовалось кольцо – когда трафик начинает ходить по кругу и бесконечно. Поэтому путь пакетов будет выглядеть как дерево, да и топология будет использоваться подобная. То есть выходя пакет от сервера он подходит к одному из узлов. Дальше узел должен определить куда дальше отправлять пакет.

А теперь мы подобрались к протоколу IGMP (Internet Group Management Protocol) — это такой протокол, который позволяет быстро подключаться клиенту к ближайшему маршрутизатору. Он сообщает ему, что нужен трафик по тому или иному каналу. Если же запроса к маршрутизатору нет, то он просто простаивает и тем самым высвобождает ресурсы сети.

Также используется PIM (Protocol Independent Multicast) протокол – эта такая система, которая выстраивает адрес от сервера к конечному получателю через одну ветвь дерева. При этом система постоянно мониторит путь, чтобы менять его, если какой-то сегмент выключен или был перемещён.

Проще говоря, сервер транслирует только один сигнал каждого телевизионного канала. И пользователи получают только сигнал того канала, который запросили. Одновременно один сигнал могут получать и несколько приёмников. Именно для этого и нужен протокол IGMP.

Куда идёт пакет

Рассмотрим на примере. Вообще данная технология использует IP адреса 224.0.0.0-239.255.255.255 диапазона. Например, сервер отправляет один канал с адресом 224.2.2.4. Это канал «СТС». IGMP протокол, использующийся только в отрезке между клиентом и ближайшим маршрутизатором, который к нему подключен.

  1. Так вот, пользовательская программа отправляет запрос на просмотр канала 224.2.2.4 ближайшему маршрутизатору.
  2. Если в маршрутизаторе уже есть поток и через него идёт дерево канала, который запросил клиент – то пакеты сразу же отправляются пользователю, и он видит изображение.
  3. Как только клиент выключит программу на маршрутизатор отправляется сигнал, о выходе из группы и сигнал более туда не идёт.
  4. Но также маршрутизатор постоянно отправляет сигнал на ближайших включенных клиентов, чтобы удостовериться, что они ещё принимают трафик. Происходит это каждые 60 секунд. Клиент, который получил такой запрос, обязан отправить ответ или его отключат. Все это происходит в автономном режиме.

Как включить на роутере

В роутере данная функция чаще всего нужна для нормального просмотра IPTV. По умолчанию эта функция уже включена, но можно проверить. Теперь я покажу как включить эту функцию на примере модели TP-Link.

Заходим в «Сеть» – «IPTV» и включаем «IGMP Прокси». Также не забываем поставить галочку «IGMP Snooping» – функция, исключающая получение трафика от группы, к которой не принадлежит клиент. На новых прошивках данный пункт находится там же, только изначально надо нажать на вкладку «Дополнительные настройки». Обязательно нажмите на кнопку «Сохранить» в само конце.

Сети для самых маленьких. Часть 9.1. Мультикаст. Общее понимание Multicast

Наш умозрительный провайдер linkmeup взрослеет и обрастает по-тихоньку всеми услугами обычных операторов связи. Теперь мы доросли до IPTV.

Отсюда вытекает необходимость настройки мультикастовой маршрутизации и в первую очередь понимание того, что вообще такое мультикаст.

Это первое отклонение от привычных нам принципов работы IP-сетей. Всё-таки парадигма многоадресной рассылки в корне отличается от тёплого лампового юникаста.

Можно даже сказать, это в некоторой степени бросает вызов гибкости вашего разума в понимании новых подходов.

В этой серии статей сосредоточимся на следующем:

Содержание серии статей про мультикаст

  • Общее понимание Multicast
  • Протокол IGMP
  • Протокол PIM
    • PIM Dense Mode
    • PIM Sparse Mode
    • SPT Switchover — переключение RPT-SPT
    • DR, Assert, Forwarder
    • Автоматический выбор RP
    • SSM
    • BIDIR PIM
  • Мультикаст на канальном уровне
    • IGMP Snooping
    • MVR
  • Дополнительно: Микровыпуск СДСМ. Подготовка лаборатории для работы с мультикаст в GNS3

На заре моего становления, как инженера, тема мультикаста меня неимоверно пугала, и я связываю это с психотравмой моего первого опыта с ним.

«Так, Марат, срочно, до полудня нужно пробросить видеопоток до нашего нового здания в центре города — провайдер отдаст его нам тут на втором этаже» — услышал я одним чудесным утром. Всё, что я тогда знал о мультикасте, так это то, что отправитель один, получателей много, ну и, кажется, протокол IGMP там как-то задействован.

В итоге до полудня мы пытались всё это дело запустить — я пробросил самый обычный VLAN от точки входа до точки выхода. Но сигнал был нестабильным — картинка замерзала, разваливалась, прерывалась. Я в панике пытался разобраться, что вообще можно сделать с IGMP, тыркался, тыркался, включал мультикаст роутинг, IGMP Snooping, проверял по тысяче раз задержки и потери — ничего не помогало. А потом вдруг всё заработало. Само собой, стабильно, безотказно.

Это послужило мне прививкой против мультикаста, и долгое время я не проявлял к нему никакого интереса.

Уже гораздо позже я пришёл в к следующему правилу:

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

Сохраняйте спокойствие и доверьтесь мне. После этой статьи такие вещи вас пугать не будут.

Общее понимание Multicast

Как известно, существуют следующие типы трафика:

Unicast Одноадресная рассылка — один отправитель, один получатель. (пример: запрос HTTP-странички у WEB-сервера). Broadcast Широковещательная рассылка — один отправитель, получатели — все устройства в широковещательном сегменте. (пример: ARP-запрос). Multicast Многоадресная рассылка — один отправитель, много получателей. (пример: IPTV). Anycast Одноадресная рассылка ближайшему узлу — один отправитель, вообще получателей много, но фактически данные отправляются только одному. (пример: Anycast DNS).

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

Первое, что приходит на ум, — это телевидение (IPTV) — один сервер-источник отправляет трафик, который хочет получать сразу много клиентов. Это и определяет сам термин — multicast — многоадресное вещание. То есть, если уже известный вам Broadcast означает вещание всем, мультикаст означает вещание определённой группе.

Второе применение — это, например, репликация операционной системы на множество компьютеров разом. Это подразумевает загрузку больших объёмов данных с одного сервера.

Возможные сценарии: аудио и видеоконференции (один говорит — все слушают), электронная коммерция, аукционы, биржи. Но это в теории, а на практике редко тут всё-таки используется мультикаст.

Ещё одно применение — это служебные сообщения протоколов. Например, OSPF в своём широковещательном домене рассылает свои сообщения на адреса 224.0.0.5 и 224.0.0.6. И обрабатывать их будут только те узлы, на которых запущен OSPF.

Сформулируем два основных принципа мультикастовой рассылки:

  1. отправитель посылает только одну копию трафика, независимо от количества получателей;
  2. трафик получают только те, кто действительно заинтересован в нём.

В данной статье для практики мы возьмём IPTV, как наиболее наглядный пример.

Пример 1

Начнём с самого простого случая:

Пример 1

На сервере-источнике настроено вещание в группу 224.2.2.4 — это означает, что сервер отправляет трафик на IP-адрес 224.2.2.4. На клиенте видеоплеер настроен принимать поток группы 224.2.2.4.

При этом, заметьте, клиент и сервер не обязательно должны иметь адреса из одной подсети и пинговать друг друга — достаточно, чтобы они были в одном широковещательном домене. Мультикастовый поток просто льётся с сервера, а клиент его просто принимает. Вы можете попробовать это прямо у себя на рабочем месте, соединив патчкордом два компьютера и запустив, например, VLC.

Надо заметить, что в мультикасте нет никакой сигнализации от источника, мол, «Здрасьте, я Источник, не надо немного мультикаста?». Сервер-источник просто начинает вещать в свой интерфейс мультикастовые пакеты. В нашем примере они напрямую попадают клиенту и тот, собственно, сразу же их и принимает.

Если на этом линке отловить пакеты, то вы увидите, что мультикастовый трафик — это ни что иное, как море UDP-пакетов.

Содержимое мультикастового трафика

Мультикаст не привязан к какому-то конкретному протоколу. По сути, всё, что его определяет — адреса. Однако, если говорить о его применении, то в абсолютном большинстве случаев используется именно UDP. Это легко объясняется тем, что обычно с помощью многоадресной рассылки передаются данные, которые нужны здесь и сейчас. Например, видео. Если кусочек кадра потеряется, и отправитель будет пытаться его послать повторно, как это происходит в TCP, то, скорее всего, этот кусочек опоздает, и где его тогда показывать? Поезд ушёл. Ровно то же самое со звуком.

Соответственно не нужно и устанавливать соединение, поэтому TCP здесь ни к чему.

Чем же так разительно отличается мультикаст от юникаста? Думаю, у вас есть уже предположение. И вы, наверняка, правы.

В обычной ситуации у нас 1 получатель и 1 отправитель — у каждого из них один уникальный IP-адрес. Отправитель точно знает, куда надо слать пакет и ставит этот адрес в заголовок IP. Каждый промежуточный узел благодаря своей таблице маршрутизации точно знает, куда переслать пакет. Юникастовый трафик между двумя узлами беспрепятственно проходит сквозь сеть. Но проблема в том, что в обычном пакете указывается только один IP-адрес получателя.

Что делать, если у одного и того же трафика несколько получателей? В принципе можно расширить одноадресный подход и на такую ситуацию — отправлять каждому клиенту свой экземпляр пакета. Клиенты не заметят разницы — хоть он один, хоть их тысяча, но разница будет отчётливо различима на ваших каналах передачи данных.

Зависимость нагрузки на сеть от количества пользователей при передаче юникаст и мультикаст трафика

Предположим у нас идёт передача одного SD-канала с мультикаст-сервера. Пусть, он использует 2 Мб/с. Всего таких каналов 30, а смотрит каждый канал по 20 человек одновременно. Итого получается 2 Мб/с * 30 каналов * 20 человек = 1200 Мб/с или 1,2 Гб/с только на телевидение в случае одноадресной рассылки. А есть ведь ещё HD каналы, где можно смело умножать эту цифру на 2. И где тут место для торрентов?

Вот почему в IPv4 был заложен блок адресов класса D: 224.0.0.0/4 (224.0.0.0-239.255.255.255). Адреса этого диапазона определяют мультикастовую группу. Один адрес — это одна группа, обычно она обозначается буквой «G».

То есть, говоря, что клиент подключен к группе 224.2.2.4, мы имеем ввиду, что он получает мультикастовый трафик с адресом назначения 224.2.2.4.

Пример 2

Добавим в схему коммутатор и ещё несколько клиентов:

Пример 2

Мультикастовый сервер по-прежнему вещает для группы 224.2.2.4. На коммутаторе все 4 порта должны быть в одном VLAN. Трафик приходит на коммутатор и по умолчанию рассылается во все порты одного VLAN’а. Значит все клиенты получают этот трафик. На них на всех в видеопроигрывателе так же указан групповой адрес 224.2.2.4.

Собственно, все эти устройства становятся членами данной мультикастовой группы. Членство в ней динамическое: кто угодно, в любой момент может войти и выйти из неё.

В данной ситуаци трафик будут получать даже те, кто этого в общем-то и не хотел, то есть на нём не запущен ни плеер, ни что бы то ни было другое. Но только, если он в том же VLAN’е. Позже мы разберёмся, как с этим бороться.

Обратите внимание, что в данном случае от сервера-источника приходит только одна копия трафика на коммутатор, а не по отдельной копии на каждого клиента. И в нашем примере с SD каналами загрузка порта между источником и коммутатором будет не 1,2 Гб/с, а всего 60 Мб/с (2Мб/с * 30 каналов).

Собственно говоря, весь этот огромный диапазон (224.0.0.0-239.255.255.255) можно использовать. Ну, почти весь — первые адреса (диапазон 224.0.0.0/23) всё-таки зарезервированы под известные протоколы.

Список зарезервированных IP-адресов

Адрес Значение
224.0.0.0 Не используется
224.0.0.1 Все узлы данного сегмента
224.0.0.2 Все мультикастовые узлы данного сегмента
224.0.0.4 Данный адрес выделялся для покойного протокола DVMRP
224.0.0.5 Все OSPF-маршрутизаторы сегмента
224.0.0.6 Все DR маршрутизаторы сегмента
224.0.0.9 Все RIPv2-маршрутизаторы сегмента
224.0.0.10 Все EIGRP-маршрутизаторы сегмента
224.0.0.13 Все PIM-маршрутизаторы сегмента
224.0.0.18 Все VRRP-маршрутизаторы сегмента
224.0.0.19-21 Все IS-IS-маршрутизаторы сегмента
224.0.0.22 Все IGMP-маршрутизаторы сегмента (v2 и v3)
224.0.0.102 Все HSRPv2/GLBP-маршрутизаторы сегмента
224.0.0.107 PTPv2 — Precision Time Protocol
224.0.0.251 mDNS
224.0.0.252 LLMNR
224.0.0.253 Teredo
224.0.1.1 NTP
224.0.1.39 Cisco Auto-RP-Announce
224.0.1.40 Cisco Auto-RP-Discovery
224.0.1.41 H.323 Gatekeeper
224.0.1.129-132 PTPv1/PTPv2
239.255.255.250 SSDP

Диапазон 224.0.0.0/24 зарезервирован под link-local коммуникации. Мультикастовые пакеты с такими адресами назначения не могут выходить за пределы одного широковещательного сегмента.

Диапазон 224.0.1.0/24 зарезервирован под протоколы, которым необходимо передавать мультикаст по всей сети, то есть проходить через маршрутизаторы.

Вот, собственно, самые базисные вещи касательно мультикаста.

Мы рассмотрели простую ситуацию, когда источник и получатель находятся в одном сегменте сети. Трафик, полученный коммутатором, просто рассылается им во все порты — никакой магии.

Но пока совсем непонятно, как трафик от сервера достигает клиентов, когда между ними огромная провайдерская сеть линкмиап? Да и откуда, собственно, будет известно, кто клиент? Мы же не можем вручную прописать маршруты, просто потому что не знаем, где могут оказаться клиенты. Не ответят на этот вопрос и обычные протоколы маршрутизации. Так мы приходим к пониманию, что доставка мультикаст — это нечто совершенно новое для нас.

Вообще, чтобы доставить мультикаст от источника до получателя на данный момент существует много протоколов — IGMP/MLD, PIM, MSDP, MBGP, MOSPF, DVMRP.

Мы остановимся на двух из них, которые используются в настоящее время: PIM и IGMP.

С помощью IGMP конечные получатели-клиенты сообщают ближайшим маршрутизаторам о том, что хотят получать трафик. А PIM строит путь движения мультикастового трафика от источника до получателей через маршрутизаторы.

Использование протоколов PIM и IGMP на участках сети

Настройка IPTV через роутер | IPTV по Wi-Fi и проводное подключение

«Что такое IPTV?» и «Как настроить IPTV через роутер и через приставку?»

Услуга IPTV от провайдера

Все больше российских провайдеров помимо услуг по предоставлению доступа в Интернет предлагают возможность смотреть телевидение стандарта IPTV. Давайте посмотрим какие плюсы мы получим от использования данного стандарта.

Преимущества IPTV перед обычным эфирным ТВ

  • Нет необходимости в ТВ-тюнере, установленном на вашем ПК.
  • Возможность приостановить воспроизведение канала на определенное время.
  • IPTV может предоставлять дополнительные услуги, такие как «Видео по запросу» (VOD, Video On Demand).

Принимать телевидение в формате IPTV можно двумя способами — через специальную приставку, которую предоставляет провайдер или приобретается отдельно. Также IPTV можно воспроизводить с помощью программного плеера, такого как IP-TV Player. Данное приложение является надстройкой для популярного проигрывателя VLC. Для показа каналов укажите город и провайдера, предоставляющего услугу IPTV. В результате в программу загрузится список каналов, и можно будет смотреть видео.

Программные плееры для воспроизведения IPTV: VLC, IPTV Player, PC Player и т.п.

Самая актуальная проблема для пользователей при настройки IPTV через роутер — это правильно настроить этот стандарт в веб-интерфейсе wi-fi роутера для бесперебойной работы. Далеко не все роутеры подходят для этих целей.

Внимание! Список роутеров с поддержкой IPTV вы можете узнать, позвонив своему провайдеру или посмотрев на официальном сайте. Или воспользоваться моей подборкой.

Роутеры для работы IPTV: 54 Мбит/с беспроводные маршрутизаторы (серия G), 150 Мбит/с беспроводные маршрутизаторы (серия N), 300 Мбит/с беспроводные маршрутизаторы (серия N) и старше.

Для раздачи IPTV по беспроводному соединению без приставки (возможно использование такого соединения лишь тогда, когда сигнал не закодирован) теоретически можно использовать огромное количество роутеров, но на практике бесперебойной работы от роутера удается добиться лишь с альтернативной прошивкой. Netgear WNR 3500L стабильно работает с IPTV c прошивкой от tomato. Asus WL520g c прошивкой от oleg’а. Обращаю ваше внимание, что IPTV по кабелю и по воздуху — это различные методы реализации IPTV в квартире, IPTV по воздуху должен уметь обрабатывать ваш роутер и чтобы добиться работы IPTV, приходиться вмешиваться в прошивку маршрутизатора.

Также не забывайте о покрытии беспроводной сети, кому-то понадобится оптимизировать сеть, а кто-то столкнется с «лагами» и артефактами изображения при удалении клиента (ПК, ноутбука, ТВ) от роутера. В некоторых случаях появляется необходимость в преобразовании UDP-мультикаст потока IPTV в TCP-юникаст. Данная процедура возможна с помощью специальной утилиты UDP to HTTP, которая будет преобразовывать трафик. Данное приложение должно быть активно на ПК, с подключенным IPTV по витой паре, но для этого необходим постоянно активный компьютер (север или клиент сети), либо выбирайте роутер, умеющий выполнять преобразование трафика (с поддержкой udpxy). В таком случае конверсия потока будет осуществляться силами маршрутизатора.

UDP-to-HTTP Proxy предназначен для преобразования udp-мультикаст трафика IPTV в tcp-юникаст (конкретно http) трафик. Это полезно для комфортного просмотра IPTV через Wi-Fi, NAT, на КПК, бытовых плеерах и игровых консолях.

IPTV через роутер

Зачастую, для работы IPTV на компьютере через wi-fi роутер, на самом устройстве ничего настраивать не нужно. Обновите версию прошивки вашего устройства и впоследствии поддержка IPTV на роутере будет включена автоматически. Вам необходимо лишь выбрать устройство (маршрутизатор) с поддержкой IPTV (IGMP протокол).

IGMP (Internet Group Management Protocol) — это протокол управления групповой (multicast — мультикаст) передачей данных в сетях, основанных на протоколе IP. Протокол IGMP используется роутерами для организации сетевых устройств в группы. Тот, кто искал информацию по форумам, не раз сталкивался с понятием мультикаст. IGMP используется для поддержки потокового видео, что эффективно сказывается на реализации потока IPTV. Сразу проверьте, не блокирует файрвол, брандмауэр или антивирус этот протокол. Мультикаст, как правило, активируется опцией Enable multicast routing.

Внимание! Активный мультикаст в некоторых моделях роутеров частенько «забивает» локальную сеть, особенно это касается wi-fi.

IPTV через приставку

Для работы IPTV через приставку рекомендуется использовать функцию «Bridge». Таким образом мы настраиваем LAN порты на режим свитчинга с WAN. Плюс ко всему, мы получаем возможность подключить кабель провайдера не в WAN, а в тот LAN порт, что объединен с WAN’ом. Сразу замечу, данную функцию поддерживают не все роутеры. Например, в роутерах TP-LINK эта функция присутствует в меню Network — Bridge (Сеть — Мост), в Asus она называется Choose WAN Bridge Port и т.п. Для функционирования IPTV необходимо лишь выбрать LAN порт, который мы будем использовать для подключения IPTV приставки.

Для тех кто хочет использовать большее количество приставок, имеется возможность выбрать два порта (Например, LAN3 и LAN4, если у вас две приставки). Если ваша модель wi-fi роутера не имеет поддержку «Bridge» и для вашего провайдера достаточно поддержки мультикаста (протокол IGMP), вы сможете смотреть IPTV через приставку.

Пользователям, чьи модели роутеров не поддерживают функции Bridge, но телевидение работает с перебоями («рассыпается» картинка и «заикается» звук) стоит обратить внимание на загруженность их роутеров. Особенно это касается тех, кто обладает большой скоростью скачивания, чрезмерной нагрузкой (большое количество активных торрент-закачек, работают в DC++ и т.п.). Решить эти проблемы можно ограничением скорости скачивания, лимитировать количество одновременных соединений до 50. Для тех, кто использует модели без поддержки Bridge рекомендуется подключать не более одной приставки IPTV. Если вы используете две (или более приставки), а роутер не поддерживает функции Bridge, то вы можете использовать обычный свитч. Свитч необходимо установить перед роутером. К свитчу будут подключены две приставки IPTV, кабель вашего провайдера, а кабель от роутера в порт WAN.

Как настроить IPTV

Например, настройка IPTV на роутере D-Link DIR-300 и подобных моделей сводится к установке одной лишь галочки в пункте «Enable multicast streams»:

Лично для меня, настройка IP телевидения по проводному соединению сводилась к нескольким шагам (на примере роутера Asus 520GU):

  • Необходимо зайти в разделWAN, предварительно активировав DHCP
  • перейти во вкладку Общее
  • найти пункт Выбор порта IPTV STB — выбираем из списка тот порт, к которому будет подключена IPTV-приставка.
  • Нажимаем Применить и все.

Настройка IPTV на роутере ASUS

Теперь я опишу 2 способа настройки IPTV через роутер RT-G32 B

Внимание! Описанную инструкцию по настройке IPTV можно использовать и на других моделях роутеров Asus для наглядности, и не только Asus в практическом и теоретическом применении.

1 способ. Перейдите в раздел ЛВС —> Маршрут и поставьте галочку “Включить многоадресную маршрутизацию” – “Yes”. Сохраняем – “Применить”.

В данном случае в локальную сеть будет транслироваться multicast поток для VLC плеера без изменений.

Преимущества данного способа:
1. Никаких дополнительных настроек VLC плеера производить не надо.

Недостатки:
1. Возможность подключения компьютера для просмотра IPTV только через витую пару (Ethernet-кабель).
2. Падение скорости интернет соединения на других компьютерах в локальной сети, в момент воспроизведения IPTV.
3. Сильная нагрузка на маршрутизатор.
4. Излишний multicast трафик внутри сети.

2 способ. Необходимо настроить функцию ”IPTV UDP Multicast to HTTP Proxy”. Перейдите в раздел ЛВС —> Маршруты и поставьте галочку “Включить многоадресную маршрутизацию” – “Yes”, и в поле ”IPTV UDP
Multicast to HTTP Proxy” выберите произвольный порт. Например, 2323. Сохраните изменения – “Применить”.

Преимущества данного способа:

  1. Возможность смотреть IPTV на компьютере по WiFi соединению.
  2. Остальные компьютеры в локальной сети не испытывают падения скорости при интернет-соединения.
  3. Роутер не перегружается.
  4. Multicast трафик во внутреннюю сеть не транслируется, а VLC плеер захватывает поток видео с wifi роутера.
  1. Необходимо изменить плейлист для используемого мультимедиа плеера.

Правки, которые необходимо внести в VLC плей-листом при использовании функции «IPTV UDP Multicast to HTTP Proxy»:

Откройте плей-лист в текстовом редакторе.
Найдите строки вида — udp://@239.23.0.200:1234/ и удалите часть, которую я выделил жирным. Изменять необходимо все.
На место удаленной части udp://@ вставьте — http://192.168.1.1:2323/udp/, где 192.168.1.1 — IP адрес вашего wi-fi роутера, а 2323 – прокси порт, который вы выбрали.
Результатом будет строка — http://192.168.1.1:2323/udp/239.23.0.200:1234/

На что стоит обратить внимание при подключении IPTV:

Использование IPTV приставки:

Активация опции Choose WAN Bridge Port и выбор одного или нескольких LAN портов роутера для подключения IPTV приставки.

Использование для просмотра IPTV ПК (проводное и беспроводное подключение)

Активация опции « Enable multicast routing», которая отключит фильтрацию multicast трафика и станет активным перенаправление его во внутреннюю подсеть на LAN интерфейсы в случае необходимости. Не забывайте разрешить активность программы для просмотра IPTV в файрволе.

Для пользователей IPTV, использующих беспроводной вариант подключения, чтобы избежать «лагов» и «артефактов» понадобится опция Multicast Rate (Mbps), с помощью которой вы можете ограничить ширину полосы multicast трафика, передаваемого на беспроводной интерфейс. Рекомендуется устанавливать максимальное значение, во избежание разрывов Wi-Fi соединения на остальных беспроводных клиентах при просмотре.

Передача видео Multicast: простые решения сложных проблем

Построение или оптимизация IP-сетей для передачи видеопотоков в формате Multicast могут нередко сопровождаться проблемами. Примеры их решения в первую очередь заинтересуют системных администраторов и специалистов, обслуживающих небольшие корпоративные и ведомственные сети — они ориентированы на быстрое развертывание и минимальные затраты, поскольку основаны на бесплатном ПО

Илья Назаров
Системный инженер
компании «Интелком лайн»

Рассмотрим некоторые конкретные задачи, которые могут возникнуть при работе с IP-сетями.

Обеспечение надежности передачи Multicast

Первая и наиболее распространенная проблема, возникающая при передаче не только видеопотоков, но и вообще любого трафика реального времени, — это вариация задержки и потери пакетов. В случае если причина тому — перегруженность каналов, то, как правило, есть возможность обойти проблему путем расширения пропускной способности или настройки QoS.

На сегодня различные возможности QoS реализованы практически на любом сетевом оборудовании. С принципами их работы и примерами настроек можно ознакомиться в Интернете, поэтому рассматривать их не будем. Сложности возникают, когда даже при обеспечении гарантированной пропускной способности на канале все равно возникают потери пакетов. Такая ситуация типична для каналов последней мили, где потери пакетов происходят вследствие ошибок на физическом уровне. Наиболее актуальной данная проблема является для операторов услуг IPTV, которые не всегда могут обеспечить качественный канал до оборудования абонента Производители решений IPTV решают данную проблему, встраивая возможность повторной отправки потерянного пакета. В общем случае для этого используются специальные серверы, кэширующие видеопотоки, которые устанавливаются на периферийных узлах. Абонентские устройства (set top box) отслеживают состояние потоков и при возникновении потерь пакетов запрашивают повторную передачу этих пакетов у ближайшего сервера. Если поток передается в формате Multicast, повторные пакеты передаются абонентскому устройству в виде Unicast, чтобы не нагружать каналы других пользователей.

В настоящее время ведутся разработки стандартного протокола Pragmatic General Multicast (RFC 3208), который также предназначен для отслеживания потерь пакетов Multicast и повторной их отправки. Некоторые производители сетевого оборудования и операционных систем уже реализуют функционал PGM в своих продуктах.

Передача поверх сетей Unicast

Другая проблема, которая часто случается при построении сетей вещания, — отсутствие поддержки маршрутизации Multicast на некоторых сегментах сети. Такая ситуация может возникнуть, например, если источник и приемник находятся в разных сегментах сети, соединяемых через Интернет или посредством арендованного IP VPN. В подобном случае применяются технологии туннелирования. Для этих целей разработано множество протоколов и стандартов, на особенностях которых не будем заострять внимание, отметим лишь, что туннель может быть маршрутизирующим или коммутирующим. В первом случае маршрутизаторы на концах туннеля должны поддерживать протоколы передачи IP Multicast (PIM), во втором — поток передается прозрачно на уровне кадров Ethernet.

В качестве примера можно привести популярную утилиту OpenVPN с открытым исходным кодом, которая может работать в любом из этих режимов. Режим маршрутизации здесь используется по умолчанию, в этом случае создается виртуальный TUN-интерфейс с присвоенным IP-адресом. Для настройки туннеля в режиме коммутации требуется, во-первых, установить пакет утилит Bridge UtiIs, во-вторых, произвести дополнительные изменения в файле конфигурации. Вместо TUN указываем тип интерфейса ТАР (этот тип используется для прозрачной передачи кадров Ethernet) и указываем сценарии инициализации и отключения туннеля:

dev tap0
up «/etc/openvpn/up.sh»
down «/etc/openvpn/down.sh»

В сценарии инициализации (up.sh) включаем виртуальный интерфейс в режиме прозрачной передачи кадров и присваиваем ему соответствующий идентификатор bridge:

/sbin/ip link set tap0 up promise on
/usr/sbin/brctl addif br0 tap0

В сценарии отключения (down.sh) отвязывается идентификатор и отключается интерфейс:

/usr/sbin/brctl delif br0 tap0
/sbin/ip link set tap0 down

При этом в файле /etc/network/interfaces уже должны быть прописаны настройки интерфейса bridge:

auto br0
iface br0 inet static
bridge_ports eth0

На интерфейсе br0 при этом можно настроить IР-адрес, который будет использоваться для удаленного доступа на сам сервер. Таким образом, туннельный интерфейс и интерфейс локальной сети (eth0) оказываются в одной группе с общим идентификатором br0, и трафик между этими интерфейсами будет передаваться прозрачно, аналогично тому, как это делает обычный коммутатор.

Объединение доменов

Одна из самых сложных задач при использовании IP Multicast возникает, когда требуется объединить несколько существующих изолированно друг от друга сетей в единый домен, где получатели потоков должны иметь возможность принимать потоки как из своей сети, так и из присоединенной сети. Главная неприятность, с которой в этой ситуации могут столкнуться администраторы сети, — это пересечение адресного пространства. Если повторяющихся адресов не так уж и много, то можно просто поменять адреса (если есть такая возможность). Но что делать, если такой возможности нет?

Один из способов решения данной проблемы — использование статического NAT на границе доменов. В этом случае при передаче потока из одного домена в другой адрес потока меняется. Но следует убедиться, что используемое оборудование поддерживает трансляцию адресов Multicast. Используя трансляцию, нужно также настроить статическую подписку IGMP на пограничных интерфейсах, поскольку маршрутная информация между доменами передаваться не будет.

Другой способ — использование технологии SSM (Source Specific Multicast) на базе протокола PIM. В этом случае маршрутизация каждого потока в сети осуществляется не по адресу группы рассылки Multicast (G), а по каждой уникальной паре «источник — группа» (S,G). Таким образом, для потоков, имеющих одинаковые адреса Multicast, но разные IP-адреса источников, создаются отдельные маршруты. При использовании SSM следует озаботиться еще и тем, чтобы приложения, принимающие потоки, также могли различить их по адресам источников. Чтобы приложение могло подписаться на необходимые потоки, нужно, чтобы оно использовало протокол IGMP версии 3.

Использование шлюза

Кардинальным решением при объединении доменов вещания будет использование специального шлюза. Такой вариант, несмотря на дороговизну, обладает наибольшей гибкостью и иногда является единственным способом решить проблему совместимости. Шлюз может не только осуществлять трансляцию адресов, но и полностью преобразовывать потоки на более глубоком уровне. Например, можно, принимая постоянный поток RTP из одного домена, осуществлять его перекодировку (transcoding) на лету и добавить возможность подписки на поток по протоколу RTSP в другом домене. При этом для приема и передачи потоков можно использовать адреса и Multicast, и Unicast, а также их комбинации при дублировании потоков. Решения IPTV и VoD различных производителей, как правило, содержат в себе подобный функционал, чтобы обеспечить совместимость с различными абонентскими устройствами и сетевой инфраструктурой.

Разнообразные варианты работы шлюза рассмотрим на примере еще одной популярной утилиты с открытым исходным кодом — VLC media player. Многие пользуются этой программой как обычным видеопроигрывателем, даже не подозревая, насколько богатым функционалом она обладает. Для настройки VLC в качестве шлюза можно пользоваться как графическим интерфейсом, так и командной строкой. Синтаксис командной строки зависит от используемой ОС и может различаться в зависимости от версии программы. В версии 2.0.0 для Windows строка запуска может выглядеть так (одной строкой):

В качестве первого аргумента программе передается адрес принимаемого потока (это также может быть имя файла или устройства видеозахвата), следующие за ним аргументы — список опций. В данном случае мы подписываемся на поток RTP с адресом 239.1.1.1 и портом UDP 5004, перекодируем его (опция transcode), используя видеокодек MPEG-2 и аудиокодек MPEG Audio, и передаем уже с другим адресом — 239.2.2.2 и портом 1234.

Еще один вариант использования:

Опция duplicate позволяет дублировать потоки, используя разные IP-адреса и UDP-порты. В данном примере мы принимаем тот же поток и передаем его в двух экземплярах: с адресами 239.2.2.2 и 192.168.1.1. Указывая в качестве параметра dst-адреса Unicast, можно также решить проблему с передачей потока через сети, которые не поддерживают маршрутизацию Multicast.

Изучайте протоколы!

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

Источник: Журнал «Системы безопасности» #4, 2012

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: