Web-конференции: эволюция протоколов

18 Июня 2014

До недавнего времени протокол RTMP, разработанный Adobe, был стандартом де-факто при проведении web-конференций. Он обладал неоспоримыми преимуществами, главное из – его распространенность (Adobe Flash так или иначе установлен на 90% компьютеров). Тем не менее, этот протокол существенно проигрывал своим конкурентам при работе на нестабильных каналах, по качеству передачи аудио и видео. Рынку требовался новый герой.

Наибольших успехов на этом поприще добилась компания Global IP Solutions (GIPS), которая понимала, что технологии передачи голоса исторически развивались от коммутации каналов и не принимают во внимание реалии Web (пакетной коммутации) – задержки, джиттер и потери пакетов. Их наработки в результате были куплены Google и были представлены общественности в виде проекта WebRTC. Основная идея новой разработки состояла в отходе от наследия телекоммуникационных технологий и попытке приведения сложности передачи аудио и видео по сети к простоте Web.

На сегодняшний день WebRTC является технологией передачи данных, представленной в виде W3C-стандартов для HTML5. Это платформа web-коммуникаций в реальном времени, которая позволяет обмениваться данными между браузерами без установки дополнительного программного обеспечения. В результате проведенной формализации стандарта пользователи и разработчики получили набор API, с помощью которых процесс коммуникации может быть встроен в web-приложение, при этом для его работы не требуется никакого клиента, а только совместимый web-браузер. На основе технологии WebRTC сторонние web-разработчики смогут создавать собственные приложения для голосовой и видеосвязи.

Помимо того, что технология WebRTC является бесплатной и не требует лицензирования, у нее есть масса других плюсов. Разработчики высоко ценят ее простоту. На ее основе реализуется простой и стабильный клиентский продукт, который достаточно легко интегрируется с подавляющим большинством имеющихся ВКС-решений и покрывает достаточно широкий спектр функциональных возможностей, необходимых для реализации ВКС-приложений. К тому же им не нужно думать о взаимодействии VoIP-приложения с операционными системами. Так как весь функционал обеспечивается браузером, то количество точек взаимодействия сильно уменьшается, что дает бОльшую независимость к платформе и операционной системе. На данный момент, этот стандарт нативно работает в Opera, Chrome (включая Chrome для Android) и Mozilla Firefox, которые занимают более 70% мирового рынка браузеров.

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

Для обеспечения безопасности передачи информации трафик аудио и видео защищается протоколом SRTP (Secure Real-time Transport Protocol) – более «продвинутой» версией протокола RTP, которая использует шифрование с помощью алгоритма AES и существенно минимизирует риски, связанные с утечкой данных.

Безусловно, что, как и у всякого новfго стандарта, у WebRTC есть и свои минусы, главным из которых является его «сырость»: на сегодняшний день стандарт пока еще сложно назвать устоявшимся, а, значит, вполне ожидаемы различные «фокусы» и его доработка в ближайшем будущем.

В качестве существенного недостатка специалисты называют повышенные требования к ресурсам сервера и наличие в них современных процессоров, а также ограниченные возможности поддерживающих браузеров и устройств (например, WebRTC не может использоваться в браузерах на iOS). Однако это не мешает WebRTC набирать популярность. Уже сейчас очевидно, что эта платформа обладает большой гибкостью для встраивания функционала видеоконференций в web-приложения, значительно упрощая этот процесс. Также в ближайшее время Google планирует внедрить кодек VP9, который революционным образом изменит ситуацию с нагрузкой на каналы связи в два раза.

Благодаря открытости платформы, интерес бизнеса к WebRTC растет в геометрической прогрессии. Этому способствует широкое распространение смартфонов и планшетов, высокая доступность Интернета, мобильность и географическая распределенность современного бизнеса, а также поддержка со стороны гигантов индустрии: сейчас развитием API занимается рабочая группа в составе консорциума W3C, в которую входят представители Google, Mozilla, Cisco, Ericsson, Skype и целого ряда других заинтересованных компаний.

Разработчики видеосервисов тоже не остаются в стороне, они принимают активное участие в доработке и расширении функционала платформы. Так, например, в исходном состоянии WebRTC реализует только самый простой сценарий p2p-связи (точка-точка). Специалистам Mind удалось создать свой собственный программный сервер многоточечной конференции (MCU:Multipoint Control Unit) для поддержки протокола WebRTC, чтобы дать пользователям возможность проводить видеосовещания с участием более двух человек. Передача медиа осуществляется либо в режиме «мозаики» (единого потока нескольких видео и аудио потоков), либо в виде многоточечного режима передачи данных (совокупность отдельных потоков). В последнем случае клиент получает преимущество в виде значительного снижения нагрузки на свои аппаратные мощности, так как отпадает необходимость в кодировании и декодировании транслируемого и получаемого медиа-потока при сохранении высокого качества картинки и возможности управлять изображениями (включить или отключить участника/участников по своему желанию). Более того, решение позволяет общаться одновременно нескольким участникам через видео в сверхвысоком разрешении 4К Ultra HD и не требует для этого установки специального программного обеспечения.

Сегодня WebRTC как медиа-площадке дан хороший старт. Безусловно, пока рано говорить о том, что технология предоставляет ярко выраженные преимущества по сравнению с проверенными временем Flash плагином и медиа серверами других производителей. Adobe Flash сегодня установлен на большинстве компьютеров и не будет «списан со счетов» еще долгое время. При этом очевидно, что пока ни одна из существующих на сегодняшний день технологий не может удовлетворить имеющиеся к решениям требования на 100%. Поэтому объединение Flash и WebRTC в рамках одного – гибридного решения является, на наш взгляд, наиболее разумной альтернативой развития видеотехнологий на сегодняшний день.

Ознакомиться с полным текстом статьи можно на сайте GlobalCIO: http://www.globalcio.ru/experts/392/.

Кирилл Ларин, ведущий системный архитектор компании Mind

Создание сайта — ADV
Яндекс.Метрика Google+