Настройка IPTV-телевидения (multicast)

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

Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор — официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.

Подключение IPTV-приставки непосредственно в сеть провайдера

Самый простой и нетребовательный к ресурсам способ смотреть IPTV, полностью оправдан, если ваша приставка не имеет никаких иных функции, которые требуют доступа к ресурсам локальной сети. Если вспомнить былые времена, то многие провайдеры при подключении IPTV ставили перед роутером простой свитч, куда включали IPTV-приставку, фактически мы повторим эту схему, но с использованием возможностей Mikrotik.

Прежде всего определим порт, в который будет подключена приставка и выведем его из моста локальной сети (если он туда включен), в нашем случае это будет порт ether4. Для этого перейдем в Bridge — Ports и удалим запись для нужного порта.

iptv-mikrotik-001-thumb-600xauto-9946.pngЗатем создадим новый мост и введем в него порт приставки и внешний порт, смотрящий в сторону провайдера:

iptv-mikrotik-002-thumb-600xauto-9949.png

Чтобы избежать возможных конфликтов с активным оборудованием провайдера отключим в свойствах моста протокол RSTP:

iptv-mikrotik-015.png

Если вы используете для подключения к интернету коммутируемое подключение, то в его свойствах вместо внешнего интерфейса (ether5 в нашем примере) следует указать интерфейс моста bridge2. В данном случае это будет PPPoE подключение провайдера Ростелеком.

iptv-mikrotik-003.png

При использовании иных методов доступа в интернет не забудьте изменить порт внешнего подключения с ether5 на bridge2, а также внести аналогичные изменения в правила файрволла, при коммутируемом подключении (PPPoE) делать этого не надо.

После чего достаточно перезагрузить приставку, и она самостоятельно «разберется» с настройками, после чего вы сможете полноценно пользоваться услугой IPTV вашего провайдера.

Настройка IGMP Proxy

Однако предложенный выше способ может быть не всегда приемлем, вместо приставки могут использоваться иные, более функциональные устройства: SmartTV, TV BOX на Android и т.д. и т.п., которым нужно обеспечить доступ к ресурсам локальной сети. Также приставка может быть подключена не напрямую к роутеру, а через дополнительный коммутатор, либо вы еще по какой-либо причине не хотите выводить устройство за пределы домашней сети. В этом случае потребуется настройка IGMP Proxy, который обеспечит перенаправление мультикастового потока IPTV в локальную сеть и прохождение IGMP-пакетов для управления этим потоком.

В базовой поставке RouterOS необходимая функциональность отсутствует и нам потребуется установить дополнительный пакет multicast. Для этого на официальном сайте следует скачать набор Extra packages для своей версии прошивки и архитектуры. Если у вас более старая версия RouterOS, то обновите ее.

iptv-mikrotik-004-thumb-600xauto-9953.png

Затем откройте Winbox, перейдите в раздел Files и загрузите на устройство пакет multicast, это можно сделать простым перетаскиванием, затем перезагрузите роутер.

iptv-mikrotik-005-thumb-600xauto-9956.pngЕсли вы настраиваете IPTV от Ростелеком, то на внешнем интерфейсе, смотрящем в сторону провайдера, у вас не будет IP-адреса, так как протокол PPPoE, через который осуществляется доступ в интернет, работает на канальном уровне и не требует IP-адресов. Для работы IPTV внешнему интерфейсу необходимо будет присвоить адрес. Поддержка Ростелекома предписывает использовать адрес 1.0.0.1/30, на наш взгляд использование данного адреса не совсем корректно (он не является приватным) и, как показывает практика, вы можете присвоить интерфейсу любой адрес, но официальные рекомендации стоит иметь ввиду, особенно если больше ничего не помогает.

iptv-mikrotik-006.png

Если вы предпочитаете работу в консоли, то выполните:

/ip addressadd address=1.0.0.1/30 interface=ether5 network=1.0.0.0

Теперь перейдем в раздел Routing — IGMP Proxy и добавим внешний интерфейс, на который приходит IPTV. В поле Interface укажите внешний интерфейс, в нашем случае ether5, в поле Alternative Subnets0.0.0.0/0 и установите флажок Upstream.

iptv-mikrotik-007.pngЧто касается Alternative Subnets, то данная настройка требует некоторых пояснений, в ней указывается подсеть, из которой осуществляется вещание, так как Ростелеком использует собственную изолированную сеть, то указание 0.0.0.0/0, т.е. принимать любые потоки, будет оправдано. Если же вы настраиваете IPTV на интерфейсе, смотрящем непосредственно в интернет, то желательно явно указать подсеть, уточнив ее в техподдержке провайдера.

Затем добавим внутренний интерфейс, куда следует перенаправить IPTV-поток, в этом качестве укажем мост локальной сети, никаких других настроек делать не нужно.

iptv-mikrotik-008.pngПосле чего нажмите кнопку Settings и установите флажок Quick Leave для быстрого переключения между каналами.

iptv-mikrotik-009.pngТакже можно быстро выполнить все приведенные выше настройки через терминал:

/routing igmp-proxyset quick-leave=yes/routing igmp-proxy interfaceadd alternative-subnets=0.0.0.0/0 interface=ether5 upstream=yesadd interface=bridge1

Теперь осталось настроить правила брандмауэра для прохождения IPTV-трафика. Для этого добавим следующие записи: Chain — input, Protocol — igmp, In. Interface — ether5, так как по умолчанию действие accept, то на закладку Action можно не переходить. Данное правило разрешить входящий IGMP-трафик на внешнем интерфейсе.

iptv-mikrotik-010.pngВторое правило разрешит транзитный IPTV-трафик: Chain — forward, Protocol — udp, Dst. Port — 5000, In. Interface — ether5. Отдельного пояснения требует номер порта, Ростелеком использует порт 5000, для других провайдеров следует уточнить это значение в поддержке.

iptv-mikrotik-011.pngТакже не забудьте перетащить данные разрешающие правила выше запрещающих в каждой из цепочек.

iptv-mikrotik-012-thumb-600xauto-9965.pngВ терминале эти же правила добавляются командами:

/ip firewall filteradd action=accept chain=input comment=IGMP in-interface=ether5 protocol=igmpadd action=accept chain=forward comment=IPTV dst-port=5000 in-interface=ether5 protocol=udp

После выполнения данных настроек перезагрузите IPTV-приставку и, если вы не допустили ошибок, все должно заработать.

IPTV через Wi-Fi

Скажем сразу, использовать беспроводную сеть, особенно в диапазоне 2,4 ГГц, для доставки IPTV — не самая удачная идея. Следует понимать, что Wi-Fi является разделяемой средой и вы делите доступную пропускную способность не только с клиентами вашей сети, но и с устройствами соседних сетей, работающих в том же частотном диапазоне. Проще говоря, даже если ваши собственные устройства не занимают Wi-Fi, то за стеной может оказаться ноутбук соседа, которые на этом же самом канале качает торренты, поэтому прием IPTV, особенно с HD-качеством в таких условиях может оказаться затруднительным.

Но если вы все-таки решили транслировать IPTV через Wi-Fi, то выполните следующие настройки: перейдите в свойства беспроводного интерфейса на закладку Wireless и перейдите в режим Advanced Mode.

iptv-mikrotik-013.pngЗатем установите значения опций: WMM Support — enabled и Multicast Helper — full.

Это включит Wi-Fi multimedia и позволит отправлять мультикаст-пакеты на mac-адреса беспроводных клиентов, но не забывайте, что вы делите полосу пропускания не только между своими устройствами, поэтому работа таких клиентов может не соответствовать ожиданиям, особенно в городских условиях.

Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор — официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.

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

Услуга 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 через приставку.

Для того чтобы не искать проблемы передачи своего IP телевидения там, где ее нет, проверьте, работает ли телевидение без роутера. Для этого подключите компьютер к кабелю провайдера напрямую. Если IPTV не подаст жизненных признаков, то скорее всего проблема у вашего провайдера. Обратитесь в техническую поддержку. А в положительном случае прямого подключения, следует выяснить у тех. поддержки, достаточно ли мультикаста для работы IP телевидения.

Пользователям, чьи модели роутеров не поддерживают функции 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.

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

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

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

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

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

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 соединения на остальных беспроводных клиентах при просмотре.

Протокол IGMP

Протокол IGMP (Internet Group Management Protocol — межсетевой протокол управления группами) версии 2, определенный в RFC 2236, работает между хостом и соединенным с ним напрямую маршрутизатором (этот маршрутизатор можно рассматривать как первый маршрутизатор на пути следования входящих дейтаграмм или последний маршрутизатор на пути следования исходящих дейтаграмм). На рис. 4.44 изображены три групповых маршрутизатора, каждый из которых соединен с парой хостов через локальный интерфейс. В данном примере локальный интерфейс связан с локальной сетью, и, как правило, несколько хостов локальной сети являются членами той или иной группы рассылки.

Протокол IGMP предоставляет хосту средство информирования соединенного с ним маршрутизатора о том, что работающее на хосте приложение желает присоединиться к определенной группе рассылки. Учитывая ограниченность сферы действия протокола IGMP хостом и соединенным с ним маршрутизатором, для координирования групповых маршрутизаторов (включая присоединенные маршрутизаторы) в Интернете, очевидно, необходимы другие протоколы. Задачу координирования групповых маршрутизаторов решают протоколы групповой маршрутизации сетевого уровня, такие как PIM, DVMRP и MOSPF, которые мы рассмотрим в подразделах «Общий случай групповой маршрутизации» и «Трупповая маршрутизация в Интернете» данного раздела. Таким образом, групповая рассылка на сетевом уровне в Интернете состоит из двух взаимодополняющих компонентов: протокола IGMP и протоколов групповой маршрутизации.

444.png

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

В протоколе IGMP версии 2 (RFC 2236) используются только три типа сообщений, приведенные в табл. 4.9. Общее сообщение membership_query (запрос о членстве) посылается маршрутизатором всем хостам, присоединенным к его интерфейсу (например, всем хостам локальной сети), чтобы узнать обо всех группах рассылки, членами которых стали хосты данного интерфейса. С помощью специального сообщения membership_query маршрутизатор может также определить, вступил ли какой-либо хост, присоединенный к одному из его интерфейсов, в определенную группу рассылки. Этот специальный запрос включает адрес группы, помещаемый в специально отведенное для него поле (см. далее).

Хосты отвечают на сообщение membership_query IGMP-сообщением membership jreport, как показано на рис. 4.45. Хост может также генерировать сообщения membership jreport, не ожидая сообщения membershipjquery от маршрутизатора, когда приложение впервые присоединяется к группе рассылки. Сообщения membership jreport получают маршрутизаторы, а также все хосты, присоединенные к тому же интерфейсу маршрутизатора (например, в случае локальной сети). Каждое сообщение membership jreport содержит групповой адрес той группы, в которую вступил отвечающий хост. Обратите внимание, что маршрутизатору все равно, который из хостов присоединился к данной группе рассылки или даже сколько хостов из данной локальной сети присоединилось к определенной группе. (В любом случае маршрутизатор выполняет ту же самую работу — он должен поддерживать протокол групповой маршрутизации вместе с другими маршрутизаторами, обеспечивая получение многоадресных дейтаграмм соответствующими группами рассылки.) Поскольку маршрутизатор беспокоится лишь о том, принадлежит ли любой из присоединенных к нему хостов к той или иной группе рассылки, в идеальном случае хотелось бы получать не более чем по одному уведомлению о принадлежности к группе (зачем тратить время на обработку идентичных сообщений от множества хостов?). Для этого в протоколе IGMP есть специальный механизм, предназначенный для снижения количества сообщений membershipjreport в том случае, когда несколько присоединенных хостов относятся к одной группе рассылки.

445.png

В частности, каждое посланное маршрутизатором сообщение membershipjquery также содержит поле максимального времени отклика (рис. 4.46). Получив сообщение membershipjquery, хост выжидает в течение случайного периода времени в диапазоне от нуля до максимального времени отклика, прежде чем ответить сообщением membership ^report. Если за время ожидания хост заметит, что сообщение membership jreport послал какой-либо другой хост, входящий в данную группу рассылки, он воздерживается от передачи, так как понимает, что маршрутизатор теперь знает о существовании среди его хостов членов данной группы. Такая форма подавления отклика представляет собой разновидность оптимизации производительности — она позволяет хостам избежать передачи излишних сообщений membershipj-eport. Аналогичные механизмы подавления отклика используются в ряде протоколов Интернета, включая надежные транспортные протоколы групповой рассылки.

446.png

Четвертый, и последний тип IGMP-сообщений — это сообщение leave_group. Интересно отметить, что это сообщение не является обязательным! Но как тогда маршрутизатор определяет, что в данной локальной сети не осталось хостов, входящих в определенную группу? Ответ на этот вопрос дает IGMP-сообщение membershipjquery. Маршрутизатор приходит к выводу, что в данную группу рассылки более не входят присоединенные к нему хосты, если ни один хост не отвечает на его сообщение membership jquery с конкретным групповым адресом.

Интернет-протоколы, в которых по истечении некоторого интервала времени информация об адресах удаляется, иногда называют протоколами с неустойчивым состоянием (soft state). Таким протоколом является протокол IGMP, в котором информация о наличии членов определенной группы рассылки среди хостов локальной сети удаляется по истечении заданного интервала времени (в данном случае этот интервал задает периодически посылаемое маршрутизатором сообщение membership jquery), если оно не обновляется явно (при помощи посылаемого хостом сообщения membershipj-eport). Утверждается, что протоколами с неустойчивым состоянием проще управлять, нежели протоколами с устойчивым состоянием. Для последних нужны не только механизмы явного добавления или удаления состояний (то есть информации о членстве в группах), но также какие-то средства восстановления в ситуации, когда один из этих механизмов преждевременно завершит работу или вообще выйдет из строя.

Подобно ICMP-сообщениям, сообщения протокола IGMP (см. рис. 4.46) переносятся (инкапсулируются) в IP-дейтаграммах.

Познакомившись с протоколом, предназначенным для присоединения к группам рассылки и для выхода из них, мы лучше можем представить себе применяемую сегодня в Интернете модель обслуживания, основанную на групповой рассылке. В данной модели любой хост может присоединиться к группе рассылки на сетевом уровне. Хост просто посылает соединенному с ним маршрутизатору IGMP-сообщение membership jreport. Этот маршрутизатор, работающий в Интернете совместно с другими маршрутизаторами, вскоре начинает доставлять групповые дейтаграммы пославшему уведомление хосту. Таким образом, присоединением к группе управляет получатель. Отправитель добавлением получателей к группе рассылки не занимается. Он даже не может контролировать состав группы получателей. Аналогично, получатель не может контролировать тех, кто посылает дейтаграммы в группу рассылки. Очередность прибытия посылаемых разными хостами дейтаграмм у разных получателей может быть разной. Отправитель-злоумышленник может легко вставлять свои дейтаграммы в поток дейтаграмм групповой рассылки. Даже законопослушные отправители могут случайно выбрать два одинаковых адреса при создании групп рассылки, поскольку координация на сетевом уровне отсутствует. С точки зрения приложения, использующего групповую рассылку, это приведет к тому, что оно «вперемешку» будет принимать дейтаграммы сразу из двух потоков вместо одного.

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

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

  • Метки: http, icmp, ip, маршрутизатор, протокол, сеть
  • Групповая маршрутизация

Используемые источники:

  • https://interface31.ru/tech_it/2019/08/nastroyka-iptv-v-routerah-mikrotik-na-primere-rostelekom.html
  • https://mediapure.ru/setevye-ustrojstva/wi-fi-oborudovanie/nastrojka-iptv-cherez-router-iptv-po-vozduxu-i-provodnoe-podklyuchenie/
  • https://conlex.kz/protokol-igmp/

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации