Выступление Александра Грицука, директора по развитию бизнеса Haivision в России и СНГ, с докладом «Доставка профессионального видео через публичный интернет. Быстро, надежно и доступно» на Online круглом столе «Broadcasting 2021. Системы доставки, обработки и управления видеоматериалами».
Александр Грицук: Мы поставляем оборудование, которое кодирует и инкапсулирует видео, соответственно, осуществляет то же самое и в обратную сторону. Также мы занимаемся маршрутизацией видео в публичных сетях.
Сегодня я хочу рассказать про классический пример, когда вам нужно осуществить доставку вашего видео из локации А в локацию В. Видео может быть изначально в SDI-формате, чтобы мы нашими устройствами его закодировали и упаковали в IP. Либо оно может быть уже закодировано или упаковано кем-то другим – это непринципиально.
Известно, что варианты доставки видео ограничены спутниковой передачей со всеми ее минусами и стоимостью, выделенными каналами, которые также требуют определенных технических усилий и стоят денег. Если вы работаете с Haivision, то предполагается, что на большинстве локаций интернет уже присутствует либо может быть достаточно легко организован. Тогда вы можете осуществить профессиональную доставку, используя непрофессиональную среду – публичный интернет.
Для этого мы предлагаем использовать открытый протокол SRT. Он умеет компенсировать свойственные публичному интернету потери путем досылки недошедших изначально пакетов. В этом его основное преимущество.
Клиенты
Популярность Haivision растет во всем мире. В этом регионе за последний год нашими клиентами стали «Первый канал. Всемирная сеть», «Матч ТВ», ТТЦ «Останкино» и СТС, а также ряд других компаний.
Однако существует одна проблема. Профессионалы сразу скажут, что доверие к провайдерам публичного интернета пока еще не самое высокое. Вы рискуете потерять линк вашего провайдера на передающей стороне, то же самое может произойти на приемной стороне. Способы решения этой проблемы в разных технологиях известны – это резервирование. Помимо опыта наших существующих клиентов у нас появилось очень много практических историй с нашим партнером по аренде. Мы предоставляем оборудование и сервис под разные мероприятия, и я сейчас расскажу о практической реализации этих задач.
Как происходит резервирование?
Вы используете второй провайдер с двух сторон. Наше устройство позволяет отдавать второй поток в другую сеть прямо с одного устройства. То же самое можно сделать на приеме. Если у вас есть дублирующие линии SDI по входу и по выходу, вы можете завести их на наше устройство. У нас есть одно-, двух- и четырехканальные юниты, и приемные, и передающие. Стопроцентное резервирование — это когда вся линия у вас полностью в резерве, вы применяете дополнительные устройства, дополнительные провайдеры и дополнительный –SDI-вход и выход.
Сеть
Поскольку мы говорим про IP-передачу, то мы должны вспомнить про сетевые нюансы. Если вы знакомы с UDP-протоколом, то для успешной передачи существует единственная возможность – указать на передающей стороне порт и IP-адрес приемника. При этом в сетевом смысле они должны быть доступны, то есть сетевой экран должен пропускать этот поток. В SRT-протоколе это называется режим caller-listener. Caller – это тот, кто инициирует соединение, а listener – тот, кто ожидает соединение. Смысл заключается в том, что caller может это делать, находясь за сетевым экраном, а listener должен быть доступен.
Но в SRT есть нюанс, который наши клиенты иногда не сразу замечают. Он заключается в том, что, в отличие от UDP, SRT может инициировать соединение в противоположном направлении: в качестве caller может быть декодер, а в качестве listener – кодер. При этом видео пойдет в обратном направлении, но соединение будет инициироваться в противоположном. Это очень удобно, когда вы не знаете, с какой стороны у вас будет возможность открыть или пробросить порт с внешнего IP-адреса. Главное, что эта возможность позволяет вам принципиально поменять схему и задействовать в этой схеме дополнительные внешние устройства, например, Haivision SRT Gateway. Тогда вы можете настроить его так, что он будет listener, ожидающим соединения в обе стороны: в сторону источника и в сторону приемника. В такой ситуации все ваши устройства, находящиеся за файрволлами и сетевыми шлюзами, могут быть caller. Это значит, что они могут находиться за сетевым экраном, не нужно пробрасывать никакие порты, они могут перемещаться в любой локации мира, где есть публичный интернет без дополнительных сетевых настроек и совершенно спокойно отдать или забрать видео в SRT-протоколе через наш Gateway.
Если быть совсем придирчивым, можно сказать, что это точка потенциальной дополнительной поломки в нашей схеме. Это правда, поэтому на практике мы используем второй Gateway, который находится на другой локации, имеет других провайдеров и другой IP-адрес. Соответственно, у нас один стрим идет через один Gateway, второй – через другой, и это абсолютно независимые схемы. При этом ни с одной стороны этой системы, ни с другой вам не нужно ничего настраивать в системном смысле, все прекрасно и быстро запускается и работает.
Это то, что сейчас распространено при осуществлении интернет-передачи по SRT. Минус этой схемы заключается в том, что вам нужно каким-то образом осуществлять переключение между основным каналом и резервом в случае возникновения проблем. У нас есть встроенные решения внутри декодеров, которые позволяют это делать. Вы можете это делать по SDI-выходам так или иначе, но это грозит вам потерей некоторого количества кадров в случае возникновения проблем в одном из линков.
Пакеты
Мы помним, что SRT осуществляет передачи попакетно, контролирует их попакетно и досылает отсутствующие пакеты. Соответственно, напрашивается идея бесшовного попакетного резервирования. Такая функция появилась непосредственно в самом протоколе, и теперь это часть стандарта. В нашем оборудовании она реализована уже около четырех месяцев. Смысл ее очень простой. Вы на устройстве подключаете двух провайдеров с одной стороны и двух провайдеров с другой, а дальше у вас дублируются пакеты по двум или более маршрутам. Самое главное, что при работе в этом режиме приемное устройство разбирает эти пакеты абсолютно автоматизировано. Если, несмотря на компенсацию, которую осуществляет SRT в каждом из этих двух линков, этого не будет хватать для нормальной работы из-за проблем в каком-то операторе, вы этого абсолютно не заметите, и на выходе Gateway поток будет идти безразрывно.
Итог
Резюмируя все это, могу сказать, что мы можем помочь осуществить профессиональную передачу видео через непрофессиональные среды в публичном интернете, тем самым обеспечить большую экономию в операционных затратах. Функция Path Redundancy поднимает протокол SRT на совершенно новый уровень и делает его не только резервным вариантом, но и основным и единственным каналом для передачи. Сейчас эта функция доступна в наших решениях на Gateway, кодерах X4, X1, и в ближайшее время в новой прошивке это появится в декодере.
Тимур Кулгарин, технический директор «СТС Медиа»: я подтверждаю, что мы стали обладателями ваших SRT Gateway и доставляем нашим зарубежным партнерам международные версии программ, как раз используя эти устройства. Если совсем прервать коннект: перерезать провод, выдернуть разъем – что будет происходить?
Александр Грицук: если канал отключается, то никаких разрывов видео не происходит. Здесь есть замечательный нюанс: вы можете иметь двух провайдеров на центральной точке, где вы раздаете ваш контент множеству потребителей, а потребителям вы можете оставить это на их собственный откуп, хотят они иметь резервного оператора или нет. Это все равно будет работать, но, по крайней мере, вы зарезервируете со своей стороны как вещатель и будете надежно работать.
Тимур Кулгарин: это будут два физических интерфейса на устройстве или есть какая-то логика и можно создавать больше?
Александр Грицук: можно и так, и так, все зависит от устройств. Если говорить про X4, то, когда вставляется второй SFP-модуль, появляется второй физический Ethernet-интерфейс. Что касается Gateway, то в них по умолчанию четыре, а иногда делают шесть и более интерфейсов. В X1 один физический Ethernet-интерфейс, но вы можете сделать это с помощью дополнительного сетевого устройства, которое разведет потоки разных операторов.
Тимур Кулгарин: то есть можно отдавать одни и те же потоки более чем двумя путями и резервироваться, например, тремя провайдерами?
Александр Грицук: совершенно верно. На Gateway можно добавлять столько физических интерфейсов, сколько маршрутов будет обслуживаться.
Денис Выходцев: Если у меня задача передать из точки А в две точки В и С один и тот же сигнал, я должен буду использовать два комплекта оборудования или энкодер может быть один, а декодера два?
Александр Грицук: к сожалению, на приемной стороне придется иметь столько приемников, сколько этих сторон, физически находящихся в разных местах. На передающей стороне наши кодеры умеют передавать несколько сетевых потоков. Например, X4 может, в зависимости от протокола, суммарно выдавать от 200 до 400 Мбит/с трафика. То есть вы можете подать в один вход (на самом деле до четырех) и дальше раздать во все стороны, нарезать разными потоками с разными настройками. Еще лучший способ – использовать Gateway. Он может принять один поток на вход, а на выход отдать их столько, сколько вам нужно, и в каждом индивидуально будут компенсироваться потери. Вы можете один поток отдать в Казахстан, другой в Питер, третий в Нью-Йорк. И у каждого будет своя задержка, своя компенсация, а внутри будет один и тот же контент.
Денис Выходцев, генеральный директор VTV Broadcast & Production (Казахстан): если у меня на обеих сторонах динамическая IP-адресация, а не статические IP-адреса, найдет ли оборудование друг друга в сети?
Александр Грицук: если ваши абонентские устройства работают через Gateway, то совершенно это совершенно не важно. Как только они получили доступ к обычному интернету, они совершенно спокойно достучатся до Gateway, который имеет публичный адрес и открытые порты, и осуществят передачу. Режим DHCP в устройствах поддерживается без проблем.
Денис Выходцев: а если не через Gateway, а просто пара кодер/декодер?
Александр Грицук: если напрямую, то есть два варианта. Первый: один из них должен иметь проброшенный до него или, если он получил публичный адрес, доступный порт, а другому вообще ничего не надо. Еще есть режим «рандеву». Мы им редко пользуемся, но он подразумевает, что вы в моменте созвонились с противоположной точкой, узнали, какой внешний адрес по DHCP получило ваше устройство с двух сторон, договорились о каком-нибудь порте и настраиваете железки и кодеры/декодеры так, что они друг напротив друга стучатся по этому порту. Если ваши файрволлы настроены так, что на вход разрешают поступление пакетов по тому же порту, по которому вы стучитесь наружу, соединение устанавливается. Это, конечно, аварийный режим, когда вы заранее вообще ничего не знали о площадке, приехали и пытаетесь соединиться.
Илья Доронин, директор Diantis System House (Канада): какой будет общий транспортный поток на одну программу? Я сталкивался с тем, что если хотел передать UDP, я ставил даже 2 Мбит/с, и у меня транспортный поток был около 35-40 Мбит/с и просто не проходил через мой интернет.
Александр Грицук: это странно. По нашим наблюдениям, UDP довольно четко держит битрейт. Что касается SRT, то это транспортный поток и служебная информация в небольшом размере самого протокола, но есть нюанс. Когда у вас начинаются потери, то поверх основного трафика начинается досылка потерянных пакетов. Чем отличается профессиональное оборудование от непрофессиональных решений? В настройках у вас есть возможность лимитировать эту дополнительную полосу. По умолчанию она стоит как 25%. Если вы даете 10Мбит трафика на вход и упаковываете в SRT, то вы должны заложить для нормальной работы 25% сверху. Вы можете регулировать это, потому что, чем больше полосы вы дадите, тем быстрее он дошлет потерянные пакеты, но, с другой стороны, у вас могут быть ограничения по сети.