Как работает проксирование потокового видео в роутерах?
Предисловие
Не так давно занимался вопросами проксирования IPTV для домашней сети (стоял домосервер, который цеплялся к инету, а к серверу цеплялись домашние компы). Для linux использовал 2 тулзы-UDPXY и IGMPProxy.
При работе выявил «для себя» следующее:
1. Для работы UDPXY требуется прописать в плейлисте адрес самой UDPXY, а после — адрес потока. Тогда вещание идет только на один порт (на тот, «с которого смотрят»).
2. Для работы IGMPProxy не требуется модификация плейлиста, но она разбрасывает поток сразу на все разрешенные интерфейсы, независимо от того, смотрят с них ТВ или нет. Также нет возможности смотреть несколько каналов одновременно, хотя при настройке UDPXY все в порядке.
Вопрос
Сейчас куплен самый обычный SOHO роутер tl mr3220. В нем заявлена поддержка IPTV. Действительно, ТВ можно смотреть без модификации плейлиста, и что интересно-при просмотре поток идет только на тот порт, куда он реально требуется, т.е. откуда смотрят. Каким образом это реализовано?
P.S: на случай, если таки накосячил с терминами.
Речь идет о Открытом ТВ Ростелекома, для передачи потока используется протокол UDP. Адреса каналов выглядят следующим образом: udp://@233.3.2.1:5000
Простите за некропостинг, но не могли бы вы написать, если тогда что-то нашли? Тоже заинтересовался таким вопросом. Роутеры TL-WR841ND и TL-WR741ND, IPTV отлично работает "из коробки". При этом мост только на eth0 (LAN-порты). И в прошивке я не нашел никаких следов igmpproxy. В списке процессов тоже не вижу. Допустил бы, что это что-то аппаратное, но в OpenWRT на этих роутерах IPTV работать перестает.
в управляемых свичах это называется igmp snooping
когда мультикаст раздается только на те порты, которые его запросили.
думаю, что в роутере такая же технология используется.
А как она там реализована? Ни для кого не секрет, что большинство роутеров в основе своей имеют линуксовое ядро. Производители железок пишут своё собственное?
Кажется, разобрался.
IGMP Snooping — опция в ядрах начиная с 2.6.34, при включении которой IGMP трафик начинает бегать между сетевыми интерфейсами, объединенными в бридж.
Думаю, в роутерах как раз все порты и WiFi объединены в бридж. Только вот в этом случае получается, что домашняя сеть отлично доступна «извне», через WAN интерфейс.