VIDEOMOST — Сервер ВКС у Вас в кармане

ffe57bcd53844e7f8bf03af7bb746067.jpg Вычислительные мощности современного ПК и сервера начального уровня на сегодняшний день позволяют решать задачи, которые лет 10 назад решались специализированными кластерными системами. Но и разработка ПО не стоит на месте. В частности, в области видео-конференц-связи, программные решения зачастую используют различные технологии, позволяющие минимизировать нагрузку на сервер. Например, SVC (Scalable Video Coding), используемое в некоторых современных решениях ВКС, существенно снижает нагрузку на сеть, а нагрузку на сервер делает такой низкой, что подобные системы можно использовать на практически любой конфигурации ПК последнего поколения.
Понятное дело, что само понятие «сервер» накладывает особые требования к аппаратной части. Это и стоечное исполнение, и резервирование БП, и отказоустойчивая дисковая подсистема. Поэтому вряд ли кто-то захочет разместить какой-либо важный бизнес-процесс на десктопной платформе без должной отказоустойчивости со всеми вытекающими последствиями.
Заглавная картинка и само название статьи имеет в первую очередь психологический замысел. До сих пор аппаратные MCU для видео-конференц-связи строятся на базе специализированных плат DSP и стоят миллионы рублей, причём портовая ёмкость у них весьма ограничена. А решения отечественных разработчиков программных продуктов для ВКС, таких как TrueConf или VideoMost — могут реализовать аналогичный функционал хоть на карманном ПК Intel Stick с 4-ядерным Atom на борту.
Как раз о подобном программном решении ВКС от компании SPIRIT DSPи пойдёт речь в этой статье.

VIDEOMOST — это комплекс программного обеспечения на базе Linux (Debian, RHEL, CentOS или Ubuntu), позволяющий реализовать полноценный функционал: видео-конференц-связи, видео и голосовых звонков, чата и совместной работы с документами (демонстрация рабочего стола, презентация и обмен файлами)

Архитектура решения


a3168e71c5474cb6ae6b2cd51cfb451e.jpg

Решение ВКС Videomost имеет классическую для аналогичных продуктов архитектуру. Есть единый сервер (или несколько, в зависимости от задачи) который обеспечивает коммуникацию между пользователями локальной сети организации, удалёнными сотрудниками через VPN, и внешними участниками через интернет.
Преимущественно соединение происходит через браузер (через WebRTC или собственный плагин) или клиентское приложение под различные ОС, в том числе и мобильные.

Установка и настройка


Videomost можно установить вручную на любую из поддерживаемых ОС, либо развернуть уже готовый образ. Но, к сожалению, не все настройки производятся через веб-интерфейс, и придётся использовать настройку из под Linux.

Скачать образ возможно, пройдя регистрацию на сайте videomost.com

Скрины этапов установки
Выбираем язык
6651abca70384912b50670493654b6fa.png

Устанавливаем часовой пояс
2a46ff574a164c27a02a8c078c013a87.png

Размечаем диски
f4a87fbe86f542f890e9cc6143b9f94c.png

Заводим доменное имя сервера и кучу паролей от различных сервисов (MySQL, openfire, Videomost)
5500f2736f6d4a5dbbbf400df09758ed.png

Вводим данные о компании
eaa628e79f584521bdacdd2c3fa73b23.png

ff28c0733e524a1fae0da7aa536fc2c6.png

Переходим к активации (с помощью триального или платного ключа)
635d66dca3934836b6da2c05c9f91b33.png

В некоторых случаях в момент установки сервер может не достучаться до сервера активации, и результатом будет следующее сообщение об ошибке активации:
d25ff38716424066ba42c745e0ed316f.png

Но в этом нет ничего страшного — сервер на данном этапе уже установлен и можно перейти к активации через веб-интерфейс.

При первом входе в веб-интерфейс по IP-адресу сервера появляется сообщение следующего содержания:

Подключение к ВКС Видеомост осуществляется по доменному имени.
Если настройка службы DNS в сети для доменного имени videomost.local
(в нашем случае) невозможна, можно использовать локальное разыменывание доменов на каждом клиентском месте, для этого необходимо пользователю с правами администратора отредактировать файл hosts.

Далее идёт инструкция, какие строки необходимо добавить, но при массовой настройке проще использовать прилагаемый bat-ник, который внесёт все изменения автоматически.

Добравшись до веб-интерфейса необходимо залогиниться под админом:
47325ef9a49d402d93b05312f1dabe5a.png

У админа доступен расширенный функционал управления:
1f3679c7d6e249acad603e595dea32f4.png

В первую очередь необходимо произвести регистрацию лицензии:
8eac9b4978af4965a5ae922d8384c0ea.png

После установки и удачной активации сервиса, результат отображается в следующем виде:

a103d20d210148a1a2c81e1458d1b9f1.png

В закладке «Настройки» производится управление качеством конференций, авторизацией LDAP, битрейтом и прочими параметрами.
Но интерфейс, к сожалению, не интуитивно понятный всем, и возможно придется обращаться к руководству администратора.

Закладка Настройки
833a50e31c794a1c976e909eaf505f54.jpg

В закладке «Видео профиль» размещаются json-файлы параметров качества видеоконференций. Эти профили можно скачивать для резервирования и подгружать в систему в случае необходимости.
Закладка Видео профиль
d6c2e9608b934d7ba95778cb776aef76.png

В закладке «Почтовые сообщения» настраиваются шаблоны писем для уведомления пользователей при определённых сценариях.

«Настройки пользователя» позволяют управлять активными пользователями и устанавливать ограничения на битрейт канала для конкретной конференции.

«Масштабирование» позволяет добавлять в систему серверы Videomost.

Закладка «Сервисы» показывает статус Сервера конференций Jconfsrv и сервиса сигнализации Openfire. Из управления — запустить, остановить, перезапустить.

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

9ae76778c3a74c12a9d74ff444d5e8c3.png

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

Ну и после того, как проведены основные настройки и созданы тарифы — можно переходить к созданию групп и пользователей (если не используется интеграция с AD).

6af5b6ce532b426a800e5c2b48d45728.jpg

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

Пользовательский интерфейс


В пользовательском веб-интерфейсе есть закладка «Загрузка ПО»

32ce5c9b5b7b465c937b3ca7c7385c87.jpg

По умолчанию доступны плагины для различных браузеров под различные ОС и облегчённая версия клиента Videomost Lite для Windows, которая идентична интерфейсу браузера.
Эти средства подключения позволяют организовывать мероприятия и подключаться, используя web-интерфейс браузера.

6baabdabf7c14d36ae7fdab650a1bc30.jpg

При входе в мероприятие система предлагает войти через браузер либо через приложение Videomost Lite. Функционал ограничен относительно полной версии приложения VideoMost Space и не позволяет создавать многопользовательские конференции с использованием адресной книги.
А в целом, интерфейс Videomost Lite выглядит следующим образом:

45737c08bb204dc48a2c1bbb8f36974b.jpg

Вверху основного окна есть несколько закладок:

Видео — основное окно видеоконференции, в котором отображаются видеопотоки от всех участников.

Документы — обеспечивает совместный просмотр документов, позволяет выбрать для демонстрации либо рабочий стол целиком, либо отдельное открытое окно из списка.

Материалы — эта опция позволяет загружать различные документы и файлы, и передавать их в общий доступ всем участникам. Загруженные файлы отображаются в общем чате и в закладке «Материалы», и могут быть скачаны любым участником.

Электронная доска — классический вариант электронного флип-чарта, наделённый стандартным функционалом графического редактора.

711d380f192e4bf0a8f394a142cfbe14.jpg

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

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

Справа от основного окна интерфейса располагаются закладки, в которых производится управление правами участников, работа в чате (приватном и коллективном), настройка аудио и видео устройств, и прочий функционал администрирования конференции.

Функционал Videomost Lite примерно соответствует браузерному интерфейсу. Если же пользователю требуется более расширенный функционал и возможность создавать и управлять конференциями через приложение, тогда потребуется установка клиента VideoMost Space.

VideoMost Space — это полноценный ВКС-клиент с адресной книгой и возможностью организовывать многоточечные видеоконференции.

Для того, чтобы открыть VideoMost Space для скачивания с закладке «Загрузка ПО» пользовательского интерфейса, необходимо его скачать и залить на сервер Videomost. Для удобства можно использовать WinSCP и PuTTY.
Далее устанавливаем дополнительный пакет p7zip:

# apt-get install p7zip-full - для Debian/Ubuntu Linux
# yum install p7zip - для CentOS/RHEL Linux

Переходим в каталог с инсталляционным пакетом VideoMost Space и производим распаковку:

# dpkg -i videomost-space*.deb - для Debian/Ubuntu Linux
# rpm -ihv videomost-space*.rpm - для CentOS/ RHEL Linux

После перезагрузки сервиса приложение VideoMost Space появится в закладке «Загрузка ПО»:

c0c4d2d6ba0a4d9e87e85abc5ffb6bbf.png

После установки приложения, запуска и авторизации открывается рабочее окно VideoMost Space

a11df9ed35df47a1bcb56c42a6d2c1a4.jpg

Здесь можно управлять адресной книгой, смотреть историю конференций и звонков. Также можно, кликнув на онлайн-пользователя из списка, активировать с ним чат или мгновенную конференцию (видео звонок точка-точка).
Если же необходимо создать многостороннюю видеоконференцию, необходимо нажать кнопку «Создать конференцию»

623117990fca41a5a60982c5f77e8604.jpg

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

Окно активной конференции в VideoMost Space выглядит следующим образом:
a4ff3ae83db045b38e15df83f9487728.jpg

Здесь можно менять раскладки окон участников. Остальной функционал вынесен в боковую панель управления, в которой реализован чат, управление файлами и пользователями, а так же настройка оборудования.

Лицензирование


Для работы сервера Videomost существуют три вида базовых лицензий:

1. Серверные порты (максимальное количество одновременных участников всех конференций)
Любые участники, в т.ч. не имеющие учётной записи, способные участвовать в конференциях на сервере.

2. Вебинарные порты — лицензия для слушателей вебинара (без обратной видео связи)

3. Учетные записи РС-пользователей (VideoMost Space и\или организатор web-конференций)
Участники, имеющие регистрацию на сервере и способные создавать и управлять конференциями.

Такой подход к лицензированию может снизить суммарную стоимость лицензий.
Например, если необходимо на сервере реализовать 50 портов (пользователей), а функционал создания и управления многоточечными мероприятиями нужен только 5 сотрудникам, то достаточно обеспечить всех лицензиями на подключение, и дополнительно приобрести 5 лицензий на учётную запись. Либо часть участников могут быть только зрителями — вебинарные порты стоят значительно дешевле.
Возможность участия через мобильный клиент или SIP-устройство лицензируются дополнительно, так же как и flash-трансляция мероприятий.

Нагрузка на сервер и каналы


Так как Videomost использует технологию SVC, нагрузка на канал рассчитывается следующим образом:

Каждый клиент отправляет поток с тем разрешением, которое выдаёт его камера, а получает потоки с суммарным разрешением равным тому, которое может отобразить его дисплей.
Таким образом, если мы имеем FullHD камеру и панель с таким же разрешением, канал в одну и другую сторону загрузится на 2–4 Мбит/с.
Нагрузка на вычислительную подсистему клиента в данном случае будет эквивалентна просмотру пары FullHD-роликов. Поэтому при выборе процессора для FullHD ВКС-терминала, лучше воздержаться от использования Atom, Pentium или Celeron, а отдать предпочтение неурезанным вариантам — i3, i5 или i7.

Сервер, если в конференциях участвуют только Videomost-клиенты, не занимается кодированием видео, а лишь грамотно коммутирует потоки между клиентами, в зависимости от их параметров и каналов связи. Таким образом, канал до сервера должен обеспечивать пропускную способность равную нагрузке одного клиента, умноженную на количество клиентов. Также стоит отметить, что система отслеживает качество канала до клиента, и сервер будет выдавать клиенту потоки, учитывая пропускную способность сети.
Нагрузка на вычислительную подсистему сервера в данном случае будет минимальна, и с ней справится практически любой современный процессор.
Но если в конференцию добавляется SIP/H.323-клиент, то серверу понадобятся дополнительные ресурсы для транскодирования SIP-потоков и микширования общей картинки для всех участников. И здесь уже важно учитывать количество сессий с участием SIP/H.323-устройств, которые будут требовать увеличение количества ядер центрального процессора сервера.

Типовые модели и конфигуратор решения


Для того, чтобы упростить расчет решения под типовые задачи, мы разработали две модели с удобным конфигуратором лицензий Videomost и вычислительной подсистемы сервера, с учётом всех требований и особенностей ПО.

VideoMost113.5–004LH — модель начального уровня.
Поддерживает работу до 100 подключений через клиентское приложение VideoMost.
Эта модель актуальна, когда нет необходимости подключать к системе SIP-устройства или производить Flash-трансляции видеоконференций.

VideoMost217.4–004LH — мощный сервер, который обеспечивает работу до 500 подключений через клиентское приложение VideoMost, и плюс ко всему ещё до 40 SIP/H.323-сессий.

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

В лицензировании VideoMost есть одна особенность, и это важно учитывать при работе с конфигуратором. Опции: мобильный клиент, SIP и трансляция не имеют фиксированной стоимости, но увеличивают стоимость всех базовых лицензий. Поэтому, при выборе базовых лицензий, необходимо проследить, чтобы они были с одним и тем же набором опций.
Например, мне необходимы лицензии на серверные порты и на учётные записи, но в системе будет использоваться подключение через мобильные устройства. Значит в конфигураторе я выбираю необходимое количество лицензий на «Серверный порт + Мобильный клиент, бессрочная + 1 год Тех.поддержки» и нужное количество лицензий на «Учётная запись + Мобильный клиент, бессрочная + 1 год Тех.поддержки». И так далее — главное чтобы в базовых лицензиях совпадал набор опционала.

Если у Вас возникнут вопросы по этому решению — буду рад ответить в комментариях.

Спасибо за внимание!

Комментарии (0)

© Habrahabr.ru