Управляющее устройство и способ управления передачей потока видеоданных по сети на сетевое пользовательское устройство

Изобретение относится к управлению передачей потока видеоданных по сети на сетевое пользовательское устройство. Техническим результатом является уменьшение нагрузки на транзитную сеть мобильного сегмента сети, а также повышение быстродействия сети. Устройство для управления передачей потока видеоданных в сети оператора мобильной связи, расположенное в пакетной сети передачи потока IP-пакетов, состоящей из транзитной сети и опорной сети и включающей в себя по меньшей мере одно пользовательское устройство, по меньшей мере одну базовую станцию, по меньшей мере один шлюз и по меньшей мере один контент-сервер, содержит по меньшей мере одно управляющее устройство, установленное в транзитной сети между базовой станции и шлюзом, которое выполнено с возможностью приема и отправки всех IP-пакетов, проходящих между базовой станцией и шлюзом, и содержащее связанные между собой проксирующий блок, кэширующий блок, планировщик, транскодирующий блок, и сетевые интерфейсы. 2 н. и 19 з.п. ф-лы, 7 ил.

 

ОБЛАСТЬ ТЕХНИКИ

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

УРОВЕНЬ ТЕХНИКИ

Значительную часть данных, передаваемых через мобильные сети, составляет видеотрафик, транслируемый в режиме потокового вещания. Наиболее современной технологией потокового вещания является технология динамического адаптивного потокового вещания по протоколу HTTP. По этой технологии, например, работают следующие протоколы: HTTP Live Streaming (Apple), Smooth Streaming (Microsoft), HTTP Dynamic Streaming (Adobe), стандарт DASH. Согласно данной технологии на сервере хранятся несколько копий видеофайла, каждая из которых закодирована с разными параметрами, например с разными разрешениями и битовыми скоростями. Чем выше битовая скорость, тем более быстрый радиоканал требуется для передачи такого видео и тем лучше качество отдельных кадров. Копии разбиты на синхронизированные по времени независимые сегменты. Это позволяет как осуществлять перемотку вперед, не загружая все сегменты, так и при необходимости переключаться между разными битовыми скоростями.

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

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

Из уровня техники известен также наиболее близкий аналог заявленного изобретения - система доставки медиаконтента с переменной битовой скоростью по сети на клиентские устройства (международная заявка WO 2010/108045 А1, опубл. 23.09.2010, G06F 15/16). В известной заявке описано сетевое управляющее устройство MFD, которое может эффективно доставлять видеоконтент и другие типы файлового контента различного размера по сети Интернет на разные клиентские устройства по протоколам HTTP, FTP, через стриминг и другим протоколам. Устройство MFD расположено в пакетной сети передачи потока IP-пакетов, состоящей из транзитной сети и опорной сети, которые включают в себя различные пользовательские устройства, по меньшей мере одну базовую станцию, по меньшей мере один шлюз и по меньшей мере одного контент-сервера. При этом исходное видео хранится в Интернете на самом видеосервере MFD или на другом OriginServer, с которого видеосервер может видео загрузить. Устройство MFD его адаптирует с помощью транскодирования под скорость канала пользователя, т.е. делает так, чтобы пользователь даже с медленным соединением мог это видео смотреть. Работа этого видеосервера регламентируется протоколами сети Интернет.

При доставке видео от MFD к клиенту оно передается через сеть ISP (провайдера Интернет услуг). Для того чтобы снизить нагрузку на сеть ISP, устройство MFD должно быть расположено «внутри» сети провайдера. Сеть обычного ISP работает по протоколам сети Интернет. Устройство MFD также работает по этим протоколам, поскольку одним из вариантов его размещения является сеть Интернет. Поэтому в случае обычного ISP устройство MFD может быть помещено на стороне владельца контента, в сети CDN, на стороне сборщика контента, или на стороне Интернет-провайдера. Возможна любая комбинация перечисленных расположений MFD, приводящая к более быстрой и надежной доставке контента клиенту.

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

Примером такой сети является транзитная сеть E-UTRAN. Если в качестве ISP выступает мобильный оператор сети 4-го поколения LTE, то внутри этой сети работают специальные протоколы. В частности, внутри транзитной сети E-UTRAN, которая является частью сети LTE, пакеты передаются по протоколу S1 (стандарты 3GPPLTE 36.410, 36.411, 36.412, 36.413, 36.414).

Эта сеть состоит из двух частей: транзитной сети E-UTRAN (в которую входят базовые станции eNodeB и транзитные каналы до опорной сети) и опорной сети ЕРС. В сети E-UTRAN используется четыре субъекта (клиент, сервер, базовая станция, шлюз) вместо двух (клиент и сервер). Это приводит к тому, что при передаче потока IP-пакетов применяется не один, а два протокола - один вложен в другой.

Особенностью протокола S1 является использование процедуры туннелирования (Таненбаум Э. «Компьютерные сети». 4-е изд. - СПб.: Питер, 2003. - 992 с. - С. 489), т.е. пакет, сформированный по правилам протоколов сети Интернет, помещается внутрь еще одного пакета по правилам протокола S1. Для выполнения функций кэширования и транскодирования необходимо данные из туннеля извлечь.

При просмотре видеоконтента через мобильную сеть может возникнуть несколько проблем. Может возникнуть ограничение частотно-временного ресурса радиоканала у базовой станции, к которой в данный момент подсоединен клиент. В этом случае исчерпание ресурса вызывается перегрузкой, обусловленной большим числом клиентов, подсоединенных к одной базовой станции. Кроме того, по причине большого числа клиентов на разных базовых станциях может возникнуть повышенная нагрузка на транзитные каналы и опорную сеть мобильного оператора.

Однако существенного снижения нагрузки на транзитные каналы и опорную сеть благодаря работе известного управляющего устройства MFD не происходит. Это вызвано тем, что MFD расположен за пределами транзитной сети E-UTRAN. Поэтому все файлы, посылаемые MFD, все равно проходят через опорную сеть и транзитные каналы.

Таким образом, возникает необходимость в новом техническом решении, которое обеспечит оптимизацию нагрузки на опорную сеть провайдера мобильной сети и оптимизацию транзитных каналов.

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ

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

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

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

Устройство характеризуется тем, что оно содержит проксирующий блок, выполненный с возможностью: перехвата и анализа IP-пакетов, проходящих между базовой станцией и шлюзом; сохранения данных туннелей входящих IP-пакетов и связанных с ними адресов базовой станции и шлюза; выявления IP-пакетов, передаваемых по протоколу S1-U и выделения завернутых в него ТСР-пакетов, сохранения заголовков пакетов и извлечения из них данных; при выявлении данных, содержащих запрос на видеоданные от сетевого пользовательского устройства к контент-серверу или содержащих запрос на видеоданные для передачи от контент-сервера сетевому пользовательскому устройству, передачи этих данных планировщику; при получении ответа от планировщика о том, что запрашиваемые данные отсутствуют в хранилище данных кэширующего блока, создания IP-пакета передачи запроса сетевого пользовательского устройства к контент-серверу, адаптации заголовков пакетов для имитации запроса от сетевого пользовательского устройства и отправки IP-пакета с запросом сетевого пользовательского устройства на контент-сервер, а при получении от планировщика запрашиваемых сетевым пользовательским устройством видеоданных формирования из видеоданных IP-пакета, добавляя сохраненные ранее заголовки пакетов и адаптируя заголовки для имитации ответа контент-сервера, и отправки IP-пакета на сетевое пользовательское устройство.

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

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

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

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

Еще в одном варианте осуществления планировщик выполнен с возможностью выбора битовой скорости для передачи сегментов видеоданных на указанное пользовательское устройство в ответ на запрос по меньшей мере от одного пользовательского устройства на основании определенных текущих параметров сетевого пользовательского устройства.

В одном из вариантов осуществления сегменты видеоданных сохраняют в хранилище данных по приеме первого запроса на указанные видеоданные от сетевого пользовательского устройства.

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

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

Еще в одном предпочтительном варианте осуществления транскодирование сегментов сохраненных видеоданных представляет собой аппаратное транскодирование.

Еще в одном варианте осуществления транскодирование сегментов сохраненных видеоданных включает изменение разрешения сегментов видеоданных.

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

Еще в одном варианте осуществления выборка основана на частоте запросов на указанные видеоданные от сетевых пользовательских устройств. Такая выборка отдает предпочтение видеоданным, которые имеют максимальную частоту запросов.

Еще в одном варианте осуществления выборка основана на удалении видеоданных, последний принятый запрос на которые является самым давним.

Еще в одном варианте осуществления сегменты видеоданных дополнительно содержат аудиоданные и/или текстовые данные.

Еще в одном варианте осуществления проксирующий блок выполнен с возможностью работы на сетевом уровне.

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

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

Согласно указанному способу устанавливают в транзитной сети между базовой станцией и шлюзом управляющее устройство, содержащее связанные между собой проксирующий блок, кэширующий блок, планировщик, транскодирующий блок, и сетевые интерфейсы; сохраняют сегменты видеоданных, полученные от контент-сервера в хранилище данных кэширующего блока; перехватывают и анализируют в проксирующем блоке IP-пакеты, проходящие между базовой станцией и шлюзом, разворачивая туннельный уровень; сохраняют в проксирующем блоке данные туннелей входящих IP-пакетов и связанные с ними адреса базовой станции и шлюза; при выявлении в проксирующем блоке IP-пакетов, передаваемых по протоколу S1-U, выделяют завернутые в него TCP-пакеты, сохраняют заголовки TCP-пакетов и извлекают из них данные; при выявлении в проксирующем блоке данных, содержащих запрос на видеоданные от сетевого пользовательского устройства к контент-серверу или видеоданные для передачи от контент-сервера сетевому пользовательскому устройству, передают указанные данные планировщику; оценивают на планировщике текущую пропускную способность канала пользовательского устройства, требуемый ресурс канала, и рассчитывают битовую скорость для передачи сегментов видеоданных на по меньшей мере одно сетевое пользовательское устройство на основании определенных текущих параметров; направляют от планировщика в хранилище данных кэширующего блока запрос на видеоданные вместе с информацией о рассчитанной требуемой скорости передачи; сравнивают запрос с видеоданными, имеющимися в хранилище данных кэширующего блока, и передают ответ в планировщик; в планировщике анализируют полученный ответ, и если запрашиваемые видеоданные отсутствуют в хранилище данных кэширующего блока, то отправляют проксирующему блоку отказ, при наличии запрашиваемых видеоданных отправляют видеоданные на проксирующий блок вместе с информацией о требуемой скорости передачи с битовой скоростью, соответствующей текущей скорости радиоканала пользователя, и если скорость передачи для отправки запрашиваемых видеоданных ниже, чем минимальная доступная битовая скорость на контент-сервере, отправляют транскодирующему блоку задание на транскодирование видеоданных на основании определенных текущих параметров сетевого пользовательского устройства; транскодируют видеоданные в транскодирующем блоке на основании текущих параметров пользовательского устройства в соответствии с пропускной способностью канала пользовательского устройства и направляют транскодированные видеоданные через планировщик на проксирующий блок; формируют в проксирующем блоке из полученных видеоданных IP-пакет, добавляя к данным сохраненные ранее заголовки и адаптируя заголовки для имитации ответа контент-сервера, и отправляют пакет со скоростью, выбранной планировщиком, пользовательскому устройству; при получении отказа от планировщика в проксирующем блоке создают IP-пакет передачи запроса сетевого пользовательского устройства к контент-серверу, адаптируют заголовки пакетов для имитации запроса от сетевого пользовательского устройства и отправляют IP-пакет с запросом сетевого пользовательского устройства на контент-сервер.

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

Еще в одном предпочтительном варианте осуществления транскодирование сегментов сохраненных видеоданных представляет собой аппаратное транскодирование.

Еще в одном варианте осуществления транскодирование сегментов сохраненных видеоданных включает изменение разрешения сегментов видеоданных.

Еще в одном предпочтительном варианте осуществления при заполнении хранилища данных выполняют выборку из сохраненных в нем сегментов видеоданных на основании запросов на сохраненные видеоданные от сетевых пользовательских устройств.

Еще в одном варианте осуществления выборка основана на частоте запросов на указанные видеоданные от сетевых пользовательских устройств. Такая выборка отдает предпочтение видеоданным, которые имеют максимальную частоту запросов.

Еще в одном варианте осуществления выборка основана на удалении видеоданных, последний принятый запрос на которые является самым давним.

Еще в одном варианте осуществления сегменты видеоданных дополнительно содержат аудиоданные и/или текстовые данные.

В одном из вариантов осуществления сегменты видеоданных сохраняют в хранилище данных по приеме первого запроса на указанные видеоданные от сетевого пользовательского устройства.

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

Фиг. 1 иллюстрирует логическую структуру сети и расположение управляющего устройства по настоящему изобретению в этой сети.

Фиг. 2 иллюстрирует взаимодействие функциональных блоков устройства по настоящему изобретению.

Фиг. 3 иллюстрирует принцип работы проксирующего блока согласно изобретению.

Фиг. 4 иллюстрирует принцип работы кэширующего блока согласно изобретению.

Фиг. 5 иллюстрирует принцип работы планировщика согласно изобретению.

Фиг. 6 иллюстрирует пример реализации управляющего устройства передачи по сети потока видеоданных на сетевое пользовательское устройство согласно изобретению.

Фиг. 7 иллюстрирует примеры пакетов, с которыми работает устройство.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ

Фиг. 1 иллюстрирует логическую структуру сети, которая состоит из двух частей. Первая часть представляет собой транзитную сеть 1 (E-UTRAN), которая отвечает за радиодоступ и состоит из базовых станций 4 (eNodeB) и пользовательских устройств 3 (UE, user equipment). Вторая часть представляет собой опорную сеть 2 (ЕРС, Evolved Packet Core), которая отвечает за обеспечение требуемого качества обслуживания (QoS), управление мобильностью, аутентификацию, билинг и т.д. Между логическими узлами этих сетей существуют стандартизированные протоколы. Управляющее устройство 5 согласно настоящему изобретению расположено между первой частью и второй частью. Управляющее устройство 5 работает на так называемом интерфейсе S1.

Традиционное централизованное размещение прокси-сервера с кэшем в опорной сети позволяет уменьшить нагрузку только на выход в Интернет, однако разгрузка транзитной сети при этом невозможна. В разработанном решении использовано распределенное размещение прокси-сервера внутри транзитной сети, что делает возможным сокращение нагрузки на каналы транзитной сети. Управляющее устройство согласно настоящему изобретению расположено на краю транзитной сети, что позволяет уменьшить нагрузки на транзитные каналы. Такое расположение возможно благодаря использованию проксирующего блока. Кроме того, такое расположение в логической иерархии сети позволяет оператору располагать управляющее устройство 5 на разных уровнях физической сети - от базовой станции 4 до точек агрегации трафика от десятков базовых станций 4. В дополнение к этому программно-аппаратная платформа устройства 5 является масштабируемой по количеству процессорных модулей и систем хранения данных, что создает возможность для операторов связи применять настоящее изобретение в своих сетях наиболее оптимально с точки зрения максимизации эффективности и уменьшения стоимости.

Данные в мобильной сети передаются внутри туннеля. Пакеты, неограничительные примеры форматов которых представлены на фиг. 7, от пользовательского устройства 3 передаются на базовую станцию 4, откуда затем передаются по туннельному соединению до обслуживающего шлюза 6, на котором извлекаются из туннеля и передаются в опорную сеть 2. Туннелирование позволяет обеспечить требуемое качество обслуживания различных видов трафика от разных клиентов при передаче по транзитной сети. Управление туннелем ведется по протоколу SI-АР, а сама передача в туннеле - по протоколу S1-U. Проксирующий блок выполняет задачу прозрачного двойного прокси-сервера, т.е. функция проксирования реализуется как для самого туннеля, так и для соединения внутри него. Таким образом, оптимизация и кэширование видеотрафика в системе являются прозрачными как для пользовательского устройства 3 и контент-сервера 8 с видеоданными, так и для базовой станции 4 и обслуживающего шлюза 6, т.е. не вносят существенных изменений в заголовки передаваемых пакетов. Это позволяет упростить интеграцию управляющего устройства 5 в существующую сеть, поскольку внесения изменений в конфигурацию пользовательского устройства 3, базовой станции 4 и шлюза 6 не требуется.

Еще одним достоинством подобного размещения является уменьшение задержки канала при передаче благодаря использованию прокси-сервера. Передача видеоданных ведется по протоколу гарантированной доставки TCP. В рамках этого протокола контент-сервер выбирает скорость отправки данных клиенту, исходя из скорости составного логического канала, т.е. канала, состоящего из радиоподканала и подканала, включающего участки транзитной сети, опорной сети и сети Интернет. Характеристики этих двух подканалов являются различными, поэтому скорость составного логического канала определяется в основном скоростью канала с худшими характеристиками (т.е. радиоканалом), что сказывается на скорости TCP-соединения. Наличие прокси-сервера позволяет сделать два различных логических соединения для каждого из подканалов. При этом параметры TCP выбираются для каждого подканала отдельно. Это позволяет существенно уменьшить задержки при доставке видеоданных.

В пакетной сети данные пользователей передаются посредством каналов для передачи потока IP-пакетов с определенным качеством обслуживания. Соединение от пользовательского устройства 3 до внешнего сервера 8 в интернет называют сквозным каналом (end-to-end bearer), который состоит из нескольких каналов, устанавливаемых между логическими узлами в транзитной сети 1 (E-UTRAN) и опорной сети 2 (ЕРС) по протоколам, таким как S1-U, TCP, HTTP и другим.

Набор протоколов S1 состоит из двух частей: S1-U и S1-АР. Протокол S1-U обеспечивает непосредственно передачу потока туннеля S1- по IP-сети, а протокол S1-AP обеспечивает установление канала E-RAB между пользовательским устройством 3 и обслуживающим шлюзом 6 и, в частности, установление туннеля S1, являющегося составной частью канала E-RAB, между базовой станцией 4 и обслуживающим шлюзом 6. Поток туннеля S1 представляет собой поток IP-пакетов между базовой станцией 4 и обслуживающим шлюзом 6, в котором туннелируются IP-пакеты пользовательского устройства 3.

IP-туннель протокола S1-U реализуется с помощью протокола GTP-U, а также транспортного протокола UDP. Точками входа-выхода туннеля являются базовая станция 4 и обслуживающий шлюз 6 (т.е. добавляемый IP-заголовок содержит IP-адреса базовой станции 4 и обслуживающего шлюза 6).

На Фиг. 2 изображена схема взаимодействия блоков управляющего устройства 5. Согласно настоящему изобретению управляющее устройство 5 содержит проксирующий блок 11, планировщик 13, транскодирующий блок 14, кэширующий блок 12 и сетевые интерфейсы 23, выполненные с возможностью передачи видеоданных на пользовательское устройство 3.

Проксирующий блок 11, принцип работы которого изображен на Фиг. 3, работает на сетевом уровне, перехватывая и анализируя все проходящие через него пакеты, т.е. последовательно разворачивает туннельный уровень (IP1) между базовой станцией 4 и обслуживающим шлюзом 6, а затем анализирует вложенный пакет с целью определения его типа (TCP, UDP). Таким образом, работа на сетевом уровне позволяет проксирующему блоку 11 получать доступ к пакетам, не адресованным ему, при этом контент-сервер 8, пользовательское устройство 3, базовая станция 4 и обслуживающий шлюз 6 не получают информации о его вмешательстве и/или наличии, так как проксирующий блок 11 после обработки заголовков пакетов адаптирует их таким образом, чтобы имитировать отправку от лица контент-сервера 8 на адрес пользовательского устройства 3. При этом UDP- пакеты пересылаются без изменения, а TCP-пакеты обрабатываются следующим образом. При приеме запроса по меньшей мере от одного сетевого пользовательского устройства 3 проксирующий блок 11 определяет текущие параметры этого пользовательского устройства 3. При установлении соединения между пользовательским устройством 3 и контент-сервером 8 проксирующий блок разрывает туннель между базовой станцией 4 и обслуживающим шлюзом 6. Для этого проксирующий блок просматривает все проходящие через него пакеты и определяет типы пакетов. Для UDP пакетов, содержащих завернутые в них TCP пакеты, заголовки записывают в память, для чего сохраняют таблицы соответствия: IP адрес+порт пользовательского устройства и все данные туннелей от базовой станции 4 к обслуживающему шлюзу 6 и обратно, такие как IP+порт базовой станции 4, IP+порт обслуживающего шлюза 6, номера туннелей teID, IP+порт контент-сервера 8 и другие. Номера туннелей перехватываются из анализа SCTP-трафика между базовой станцией 4 и узлом 9 управления мобильностью перед установлением туннеля. Для анализа этого трафика используется дополнительный синтаксический анализатор пакетов. После сохранения заголовков из пакетов извлекают данные. Если в данных содержится запрос на видеоданные от пользователя 3 к контент-серверу 8, этот запрос передается для обслуживания планировщику 13. Если в ответ от планировщик получен отказ, запрос передается контент-серверу 8 от лица пользователя 3. Если планировщик возвращает требуемый видеоролик и рассчитанные битовые скорости для его передачи, то проксирующий блок 11 формирует из видеоданных пакеты, адаптируя заголовки на основе сохраненных таблиц таким образом, чтобы имитировать передачу от контент-сервера 8 пользователю 3.

Если в данных содержится файл для передачи пользователю 3, он передается планировщику 13 для передачи кэширующему блоку и транскодирования в случае необходимости. От планировщика в ответ поступает информация о битовой скорости передачи и транскодированное видео. После это проксирующий блок 11 формирует из видеоданных пакеты, адаптируя заголовки на основании сохраненных таблиц таким образом, чтобы имитировать передачу от контент-сервера 8 пользователю 3.

Кэширующий блок 12, принцип работы которого изображен на Фиг. 4, включает в себя хранилище данных (например, твердотельный накопитель, накопитель на жестких магнитных дисках, их возможные комбинации и другие) и хранит информацию о популярности, получаемую от прокси-сервера, и самые популярные видеоролики в высоком и низком разрешении. При поступлении информации о новых закачанных видеоданных кэширующий блок 12 принимает решение об их сохранении, в частности кэшировании, опираясь на составленную им статистику популярности видеороликов, мета-данные, полученные с контент-сервера 8, возраст видеоролика, его популярность в сети, наличие ссылок на него на HTML-страницах. После получения запроса от планировщика 13 кэширующий блок 12 обновляет статистику популярности и проверяет наличие такого видеоролика в кэше. В случае если наличие видеоролика в кэше установлено, кэширующий блок 12 передает видеоролик в очередь на передачу планировщику 13. Если при первом запросе на этот видеоролик его наличие не установлено, то кэширующий блок 12 возвращает планировщику 13 отказ. В случае получения от планировщика 13 видеоролика, кэширующий блок анализирует статистику популярности этого видеоролика и принимает решение о его сохранении.

Планировщик 13, принцип работы которого изображен на Фиг. 5, оценивает текущую пропускную способность канала пользовательского устройства 3, в частности состояние сети, буферов обслуживаемых пользовательских устройств 3, их тарифов, а также требуемый ресурс для следующей передачи, загруженность транскодирующего блока 14, и принимает соответствующее решение о скорости передачи для данного пользователя. В частности, если есть свободный ресурс канала и транскодирующего блока 14, планировщик 13 принимает решение передавать видеоданные в режиме, запрошенном пользователем. Если не хватает ресурсов канала и транскодирующего блока 14, то они распределяются согласно приоритету пользовательского устройства. При этом пользовательским устройствам 3 с низким приоритетом ресурс канала выделяется по остаточному принципу и согласно вычисленному ресурсу канала транскодирующим блоком 14 транскодируются видеоданные. После выбора скорости передачи, в зависимости от полученного от проксирующего блока 11 запроса на поиск данных или на передачу, планировщик может запросить видеоданные у кэширующего блока 12 с требуемыми параметрами, если пришел запрос от конечного пользователя 3. Если данные найдены они будут переданы проксируещему блоку 11 после транскодирования, если это необходимо. Если видеоролик не найден, планировщик вернет отказ. Если получен видеоролик от контент-сервера 8, то, после транскодирования в случае необходимости, он будет передан проксирующему блоку вместе с информацией о требуемой скорости передачи для отправки пользователю 3. Транскодирующий блок 14 изменяет битовую скорость или разрешение потока сегментов видеоданных, сохраненных в кэширующем блоке 12 или полученных по сети, путем транскодирования каждого сегмента видеоданных в реальном времени по требованию планировщика 13 на основании текущих параметров пользовательского устройства 3. В случае наличия у транскодирующего блока 14 свободных мощностей он осуществляет предварительное транскодирование наиболее популярных роликов в низкие битовые скорости, чтобы в случае возникновения перегрузки в сети часть своей нагрузки перенести на кэширующий блок 12.

Согласно настоящему изобретению планировщик 13 в состоянии перегрузки начинает приоритизировать пересылаемые на пользовательские устройства 3 потоки видеоданных согласно тарифам пользователей (например, Gold, Silver и Bronze). Благодаря приоритезации происходит перераспределение частотно-временного ресурса между пользователями, т.е. скорость каналов у одних пользователей увеличивается, а у других уменьшается. Согласно протоколам динамического адаптивного потокового вещания пользователи начинают запрашивать очередные сегменты видео в соответствии со скоростями каналов своих пользовательских устройств 3, полученных в результате работы планировщика 13. При этом у некоторых пользователей скорость канала может оказаться ниже, чем минимальная доступная битовая скорость видео на контент-сервере 8. В этом случае для таких пользователей транскодирующий блок 14 начинает транскодировать в реальном времени запрашиваемые видеоданные в качество, соответствующее текущим скоростям каналов. Этим достигается минимизация общего числа опустошений буфера у пользовательских устройств 3 вне зависимости от их тарифа.

Подобная оперативность возможна только при использовании аппаратного транскодирования, наличие которого является уникальной особенностью настоящего изобретения и которое также позволяет добиться значительно большей производительности при меньшей потребляемой мощности, чем решения, использующие программные реализации транскодирования. Использование аппаратного транскодирования при отсутствии перегрузок позволяет также быстро перекодировать видеоданные в кэширующем блоке 12 в более низкие битовые скорости, чтобы подготовить кэширующий блок 12 к перегрузке базовой станции 4. В этом случае уже при наступлении перегрузки и недостатке пропускной способности радиоканала видеоданные на пользовательские устройства будут переданы из кэширующего блока 12.

Транскодирующий блок 14 построен на базе многопроцессорной аппаратной реализации видеокодека, что позволяет в режиме реального времени выполнять транскодирование нескольких потоков видеоданных. По запросу пранировщика 13 транскодирующий блок 14 начинает транскодирование каждого сегмента видеоданных из кэширующего блока 12, последовательно передавая закодированные фрагменты на проксирующий блок 11 для запаковки в пакеты и передачи конечному пользовательскому устройству 3. В случае, если видеоданные не были найдены в кэширующем блоке 12, транскодирование возможно выполнять, минуя процедуру кэширования, например если запрошенный видеоролик не является популярным. Конкретно, планировщик 13 направляет видеоданные, полученные с проксирующего блока 11, на транскодирующий блок 14, который выполняет их посегментное транскодирование в реальном времени и возвращает транскодированные сегменты обратно на планировщик 13, что не вносит существенной задержки в процесс передачи. Для успешного выполнения своих функций транскодирующий блок 14 выполнен с возможностью поддержки таких потоковых форматов данных, как MP2-TS, МР4, WebM и других.

Внесение задержек в процесс передачи возможно, если планировщик 13, перераспределяя ресурсы между пользовательскими устройствами 3 на этапе планирования, примет решение о задержке трафика для конечного получателя видеоданных. В таком случае поведение транскодирующего блока 14 определяется следующим образом: транскодированные сегменты могут временно, до отправки, накапливаться в кэширующем блоке 12, или транскодирование может запускаться каждый раз перед отправкой следующего пакета видеоданных, а время задержки может быть потрачено на транскодирование сегментов видеоданных для других пользовательских устройств 3 с более высоким приоритетом или более низким состоянием удовлетворенности.

В настоящем изобретении при транскодировании используются аппаратные кодеки, например аппаратный кодек формата h.264 (технология QuickSync), используемый в современных архитектурах процессоров, например процессоров фирмы Intel (Sandy Bridge, Ivy Bridge, например Intel Xeon Е3-1275) и других. Библиотека Media SDK, использующая технологию QuickSync, способна на одном вычислительном модуле одновременно транскодировать до 8 видеопотоков в формате HD или до 16 видеопотоков из формата HD в формат SD. Управляющее устройство 5 может включать в себя несколько вычислительных модулей, работу между которыми распределяет балансировщик нагрузки. Это позволяет линейно масштабировать производительность транскодирующего блока 14, добавляя новые вычислительные модули.

Высокая скорость транскодирования позволяет увеличивать эффективность кэширования. Появляется возможность оперативно получать из одного закэшированного видеоролика несколько его вариантов с разными битовыми скоростями и разрешениями.

Кроме того, быстрое транскодирование позволяет быстро реагировать на перегрузку базовых станций 4, преобразуя в реальном времени видеоданные, направляемые на пользовательские устройства 3, у которых скорость радиоканала оказалась ниже, чем минимальная битовая скорость видео на контент-сервере 8.

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

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

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

При заполнении свободного пространства хранилища данных сохраненными видеоданными появляется необходимость его освобождения. На основе анализа статистики запросов кэширующий блок 12 способен выделять из пересылаемых данных и запоминать наиболее популярные видеофайлы и осуществлять выборку для освобождения хранилища данных от наименее популярных видеороликов. Настоящее изобретение обеспечивает осуществление таких политик кэширования, как LFU и LRU, которые можно использовать как совместно, так и по отдельности. В других вариантах реализации настоящее изобретение обеспечивает совместное или отдельное осуществление и других политик кэширования. Политика LFU отдает предпочтения видео, которые имеют максимальную частоту запросов. Политика LRU отдает предпочтение видео, которые были запрошены недавно, т.е. политика LRU основана на удалении видеоданных, последний запрос на которые является самым давним. Таким образом, настоящее изобретение предполагает частую смену подмножества популярных видеоданных, при этом использует гибридное решение, совмещающее обе политики.

Для обеспечения высокой производительности кэширующий блок 12 поддерживает как параллельные запросы от нескольких процессов проксирующего блока 11, так и запросы от нескольких проксирующих блоков 11, расположенных на нескольких вычислительных модулях, т.е. один кэширующий блок 12, вынесенный на отдельное аппаратное устройство, может поддерживать несколько проксирующих блоков 11, работающих с разными базовыми станциями 4. В одном из вариантов реализации проксирующий блок, транскодирующий блок и планировщик могут быть объединены в управляющий блок 21 (фиг. 6). На Фиг. 6 изображена структурная схема управляющего устройства 5 согласно настоящему изобретению, которое содержит по меньшей мере один управляющий блок 21, по меньшей мере одно хранилище данных 22, выполненное с возможностью хранения сегментов видеоданных, и сетевые интерфейсы 23 для связи управляющего устройства 5 с транзитной сетью 1 и опорной сетью 2 и передачи сегментов видеоданных на пользовательское устройство 3.

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

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

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

3. Устройство по п. 1, в котором кэширующий блок выполнен с возможностью сохранения сегментов видеоданных по приеме указанным проксирующим блоком первого запроса на указанные видеоданные от сетевого пользовательского устройства.

4. Устройство по п. 1, в котором сохраненные в кэширующем блоке сегменты видеоданных представляют собой кэшированнные сегменты видеоданных.

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

6. Устройство по п. 1, в котором транскодирование сохраненных сегментов видеоданных представляет собой аппаратное транскодирование.

7. Устройство по п. 1, в котором указанный транскодирующий блок выполнен с возможностью изменения разрешения сохраненных сегментов видеоданных путем их транскодирования.

8. Устройство по п. 1, в котором указанный кэширующий блок при заполнении хранилища данных выполнен с возможностью осуществления выборки из сохраненных сегментов видеоданных на основании запросов на указанные сохраненные видеоданные от сетевых пользовательских устройств.

9. Устройство по п. 8, в котором указанная выборка основана на частоте запросов на указанные видеоданные от сетевых пользовательских устройств.

10. Устройство по п. 8, в котором указанная выборка основана на удалении видеоданных, последний запрос на которые, принятый указанным проксирующим блоком, является самым давним.

11. Устройство по п. 1, в котором сегменты видеоданных дополнительно содержат аудиоданные и/или текстовые данные.

12. Устройство по п. 1, в котором проксирующий блок выполнен с возможностью работы на сетевом уровне.

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

14. Способ управления передачей потока видеоданных в сети оператора мобильной связи на сетевое пользовательское устройство, согласно которому:
принимают запрос на видеоданные, по меньшей мере, от одного сетевого пользовательского устройства, расположенного в пакетной сети передачи потока IP-пакетов, состоящей из транзитной сети и опорной сети и включающей в себя по меньшей мере одно пользовательское устройство, по меньшей мере одну базовую станцию, по меньшей мере один шлюз и по меньшей мере один контент-сервер,
отличающийся тем, что
устанавливают в транзитной сети между базовой станцией и шлюзом управляющее устройство, содержащее связанные между собой проксирующий блок, кэширующий блок, планировщик, транскодирующий блок, и сетевые интерфейсы;
сохраняют сегменты видеоданных, полученные от контент-сервера в хранилище данных кэширующего блока;
перехватывают и анализируют в проксирующем блоке IP-пакеты, проходящие между базовой станцией и шлюзом, разворачивая туннельный уровень;
сохраняют в проксирующем блоке данные туннелей входящих IP-пакетов и связанные с ними адреса базовой станции и шлюза;
при выявлении в проксирующем блоке IP-пакетов, передаваемых по протоколу S1-U, выделяют завернутые в него TCP-пакеты, сохраняют заголовки TCP-пакетов и извлекают из них данные;
при выявлении в проксирующем блоке данных, содержащих запрос на видеоданные от сетевого пользовательского устройства к контент-серверу или видеоданные для передачи от контент-сервера сетевому пользовательскому устройству, передают указанные данные планировщику;
оценивают на планировщике текущую пропускную способность канала пользовательского устройства, требуемый ресурс канала, и рассчитывают битовую скорость для передачи сегментов видеоданных на по меньшей мере одно сетевое пользовательское устройство на основании определенных текущих параметров;
направляют от планировщика в хранилище данных кэширующего блока запрос на видеоданные вместе с информацией о рассчитанной требуемой скорости передачи;
сравнивают запрос с видеоданными, имеющимися в хранилище данных кэширующего блока, и передают ответ в планировщик;
в планировщике анализируют полученный ответ, и если запрашиваемые видеоданные отсутствуют в хранилище данных кэширующего блока, то отправляют проксирующему блоку отказ, при наличии запрашиваемых видеоданных отправляют видеоданные на проксирующий блок вместе с информацией о требуемой скорости передачи с битовой скоростью, соответствующей текущей скорости радиоканала пользователя, и если скорость передачи для отправки запрашиваемых видеоданных ниже, чем минимальная доступная битовая скорость на контент-сервере, отправляют транскодирующему блоку задание на транскодирование видеоданных на основании определенных текущих параметров сетевого пользовательского устройства;
транскодируют видеоданные в транскодирующем блоке на основании текущих параметров пользовательского устройства в соответствии с пропускной способностью канала пользовательского устройства и направляют транскодированные видеоданные через планировщик на проксирующий блок;
формируют в проксирующем блоке из полученных видеоданных IP-пакет, добавляя к данным сохраненные ранее заголовки и адаптируя заголовки для имитации ответа контент-сервера, и отправляют пакет со скоростью, выбранной планировщиком, пользовательскому устройству;
при получении отказа от планировщика в проксирующем блоке создают IP-пакет передачи запроса сетевого пользовательского устройства к контент-серверу, адаптируют заголовки пакетов для имитации запроса от сетевого пользовательского устройства и отправляют IP-пакет с запросом сетевого пользовательского устройства на контент-сервер.

15. Способ по п. 14, в котором текущие параметры сетевого пользовательского устройства включают текущую пропускную способность канала сетевого пользовательского устройства, состояние пользовательского буфера, тариф.

16. Способ по п. 14, в котором указанное транскодирование сохраненных сегментов видеоданных представляет собой аппаратное транскодирование.

17. Способ по п. 14, в котором транскодирование включает изменение разрешения сегментов видеоданных.

18. Способ по п. 14, согласно которому при заполнении хранилища данных выполняют выборку из сохраненных в нем сегментов видеоданных на основании запросов на сохраненные видеоданные от сетевых пользовательских устройств.

19. Способ по п. 18, согласно которому указанная выборка основана на частоте запросов на сохраненные видеоданные от сетевых пользовательских устройств.

20. Способ по п. 18, согласно которому указанная выборка основана на удалении видеоданных, последний принятый запрос на которые является самым давним.

21. Способ по п. 14, в котором указанные сегменты видеоданных дополнительно содержат аудиоданные и/или текстовые данные.



 

Похожие патенты:

Изобретение относится к вычислительной технике. Технический результат заключается в повышении разрешающей способности значения яркости, получаемого в аппаратно-независимом цветовом пространстве.

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

Изобретение относится к области сетей связи. Технический результат - обеспечение повышения возможности изменения сообществ посредством регистрации новых устройств.

Изобретение относится к технологиям обработки видеоданных. Техническим результатом является сокращение объема памяти за счет отображения векторов движения на один дополнительный опорный кадр.

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

Изобретение относится к системам кодирования и декодирования видеоданных. Техническим результатом является уменьшение сложности пространственного прогнозирования за счет обнаружения целочисленного наклона края для текущего блока на основе вертикального и горизонтального градиента.

Изобретение относится к средствам кодирования движущегося изображения. Техническим результатом является повышение эффективности кодирования.

Изобретение относится к средствам кодирования и декодирования изображения. Технический результат заключается в улучшении качества декодированных данных изображения.

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

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

Изобретение относится к устройству/способу управления отображением, где реализована функция принудительного отображения субтитров на основе синхронизированного по времени языка разметки текста (TTML). Техническим результатом является собственно создание способа отображения с функцией принудительного отображения субтитров на основе TTML. Указанный технический результат достигается тем, что используются данные TTML, в которых описана заданная информация атрибута, имеющая отношение к принудительному отображению субтитров, в тэге, определяющем элемент текста. На стороне воспроизведения содержания управление выполняют на основе заданной информации атрибута в данных TTML, таким способом, в соответствии с которым знаки, основанные на текстовых данных, обозначенные тэгом, в котором записана информация атрибута, отображают в модуле дисплея, независимо от того, ВКЛЮЧЕНО или ВЫКЛЮЧЕНО отображение субтитров. Благодаря такой конфигурации, текстовые данные, используемые заданным текстовым элементом среди текстовых элементов (текстовые данные, используемые, как субтитры) в пределах данных TTML, могут быть отображены, независимо от того, ВКЛЮЧЕНО или ВЫКЛЮЧЕНО отображение субтитров. 3 н. и 9 з.п. ф-лы, 8 ил.

Изобретение относится к передающему устройству, способу передачи таблицы информации приложений (AIT) и приемному устройству, используемым системой широкодиапазонного телевещания гибридного типа (HbbTV). Техническим результатом является увеличение емкости представления профиля платформы для описания дополнительной функции для приложения в HbbTV. Указанный технический результат достигается тем, что передающее устройство включает: секцию передачи данных приложения с возможностью передавать данные приложения для HbbTV и секцию передачи AIT, выполненную с возможностью передавать AIT, включающую в себя прикладной профиль, который представляет одну или несколько дополнительных функций приложения и скомпонован из первого битового поля старшего разряда n битов и второго битового поля младшего разряда (16-n) битов, который представляет собой присутствие или отсутствие функций, выделенных на битовых позициях структуры битовой карты, и в котором в первом битовом поле установлены значения для переключения функций, выделенных на битовых позициях во втором битовом поле. 3 н. и 11 з.п. ф-лы, 5 ил.

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

Изобретение относится к технологиям обработки видеоданных. Техническим результатом является обеспечение эффективного декодирования видео с высоким разрешением за счет использования иерархического блока кодирования, имеющего различный размер. Предложен способ декодирования видео посредством декодера видео. Способ включает в себя этап, на котором осуществляют извлечение, посредством декодера видео, из потока битов информации о размере блока кодирования для определения размера блока кодирования и определения множества максимальных блоков кодирования, используя максимальный размер блока кодирования, который определен согласно информации о размере блока кодирования. Также способ включает в себя этап, на котором осуществляют извлечение, посредством декодера видео, из потока битов информации разделения, указывающей, разделен ли блок кодирования текущей глубины на блоки кодирования более низкой глубины, и максимальной глубины, указывающей общее количество раз, сколько возможно разделить блок кодирования. 2 н. и 2 з.п. ф-лы, 15 ил., 1 табл.

Изобретение относится к средствам кодирования видео. Техническим результатом является повышение эффективности кодирования. В способе определяют для текущего изображения младшие биты значения счета порядка изображений, идентифицирующего долговременное опорное изображение, подлежащее использованию при кодировании части текущего изображения, определяют старшие биты значения счета порядка изображений. В способе число младших битов в несжатой форме, при суммировании с числом старших битов в несжатой форме, дает в результате сумму, которая меньше общего числа битов для задания значения счета порядка изображений в несжатой форме, задают младшие биты и старшие биты значения счета порядка изображений в потоке битов, представляющем закодированную версию видеоданных, кодируют часть текущего изображения с использованием долговременного опорного изображения. 8 н. и 70 з.п. ф-лы, 7 ил., 4 табл.

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

Изобретение относится к области обработки цифровых сигналов, в частности к сжатию данных и улучшению энтропийного кодирования видеопоследовательностей. Техническим результатом является повышение эффективности и снижение вычислительной сложности энтропийного кодирования. Способ обработки потока данных, состоящего из множества синтаксических элементов, основан на замене синтаксических элементов, значения которых имеют высокую вероятность появления, синтаксическими элементами, значения которых имеют низкую вероятность. Определяют для синтаксического элемента контекст и вычисляют вероятность появления значений тех синтаксических элементов в модели потока данных, которые имеют определенный контекст. Заменяют синтаксические элементы потока данных, имеющие определенный контекст, если вычисленная вероятность появления значения синтаксического элемента выше заданного порога, на синтаксические элементы, значения которых имеют низкую вероятность. 3 н. и 10 з.п. ф-лы, 4 ил., 2 табл.

Изобретение относится к области кодирования нескольких видеопоследовательностей с различных планов сцены. Технический результат - обеспечение улучшения эффективности кодирования. Реализуемый компьютером способ межпланового кодирования содержит этапы, на которых в видеокодере: определяют режим межпланового кодирования для по меньшей мере части кадра изображения; конкретизируют соответствующее значение для индикатора режима межпланового кодирования; и встраивают индикатор режима в двоичный поток, при этом двоичный поток включает в себя кодированный вектор, связанный с частью кадра изображения; причем первое значение индикатора режима соответствует первому режиму межпланового кодирования, в котором кодированный вектор движения включает в себя составляющие во многих измерениях, а второе значение индикатора режима соответствует второму режиму межпланового кодирования, в котором составляющие кодированного вектора движения включают в себя составляющие только в одном измерении. 5 н. и 25 з.п. ф-лы, 9 ил.

Изобретение относится к вычислительной технике. Технический результат заключается в предотвращении ухудшения субъективного качества изображения для декодированного изображения. Устройство обработки изображений содержит схему, выполненную с возможностью декодирования закодированных данных в элементы кодирования ,сформированные посредством рекурсивного разделения наибольшего элемента кодирования на меньшие элементы кодирования в качестве разделения элемента, для генерирования квантованных данных; установки с использованием значения, указывающего минимальный размер элемента кодирования, для которого установлен разностный параметр квантования, и с использованием указанного разностного параметра квантованию, текущего параметра квантования для текущего элемента кодирования; и обратного квантования, с использованием установленного параметра квантования, сгенерированных квантованных данных. 2 н. и 10 з.п. ф-лы, 43 ил.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности декодирования за счет адаптивного переключения между размерами блоков преобразования. Устройство декодирования изображений содержит модуль декодирования переменной длины для декодирования информации о размере макроблоков и режима кодирования и для декодирования параметров предсказания, соответствующих режиму кодирования, информации, указывающей размер блока преобразования, выбранный из множества возможных вариантов; модуль внутреннего предсказания для формирования предсказанного изображения посредством использования режима внутреннего предсказания и сигнала декодированного изображения в кадре; модуль преобразования для выполнения процесса обратного квантования и обратного преобразования для сжатых данных, чтобы формировать декодированный сигнал разности предсказания; и модуль суммирования предсказанного изображения, выведенного из модуля внутреннего предсказания, с декодированным сигналом разности предсказания, чтобы выводить сигнал декодированного изображения, при этом модуль преобразования определяет размер блока преобразования и выполняет процесс обратного квантования и обратного преобразования для сжатых данных в единице одного блока, имеющего упомянутый размер блока преобразования. 17 ил.
Наверх