Способ, система и устройство для передачи видеоданных

Иллюстрации

Показать все

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

Реферат

Область техники

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

Уровень техники

С развитием технологий сетевой связи видеоданные стали одним из видов важных ресурсов в области современной сетевой связи. Благодаря таким характеристикам, как видимость и реальность, видеоданные широко используются пользователями, в частности, в сетевых играх, при Мгновенном Обмене Сообщениями МОС (IМ) и прочее.

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

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

Для передачи видеоданных можно также использовать технологии одноранговых сетей (Р2Р-технологии). В одноранговой сети для просмотра и загрузки файлов пользователь может напрямую подключаться к компьютеру другого пользователя, вместо того, чтобы соединяться с сервером. Благодаря этому видеоданные можно использовать совместно и обмениваться ими напрямую. Различие между Р2Р-технологиями и обычным режимом "клиент-сервер" состоит в том, что в одноранговой сети отсутствует центральный сервер, либо предусмотрен маломощный центральный сервер.

При этом объем памяти, Центральный Процессор ЦП (CPU) и ресурсы полосы пропускания пользователя могут использоваться полностью. Эксплуатационные расходы и затраты на техническое обслуживание снижаются.

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

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

Раскрытие изобретения

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

Предлагаемый способ передачи видеоданных включает в себя следующие этапы:

первый клиент отправляет на сервер ретрансляции и Р2Р-сервер запрос на установление первого соединения;

второй клиент отправляет на сервер ретрансляции и Р2Р-сервер запрос на установление второго соединения;

после успешного установления первого соединения ретрансляции между первым клиентом и сервером ретрансляции и второго соединения ретрансляции между вторым клиентом и сервером ретрансляции, первый и второй клиенты направляют и передают видеоданные через сервер ретрансляции;

после успешного установления первого Р2Р-соединения между первым клиентом и Р2Р-сервером и второго Р2Р-соединения между вторым клиентом и Р2Р-сервером, первый и второй клиенты временно приостанавливают направление и передачу видеоданных через сервер ретрансляции;

первый и второй клиенты передают видеоданные в режиме Р2Р.

Этап, на котором первый и второй клиенты приостанавливают направление и передачу видеоданных через сервер ретрансляции после успешного установления первого Р2Р-соединения между первым клиентом и Р2Р-сервером и второго Р2Р-соединения между вторым клиентом и Р2Р-сервером, выполняют после завершения передачи первого кадра данных между первым и вторым клиентами в режиме Р2Р.

Данный способ также предусматривает выполнение следующих действий:

если во время передачи видеоданных первым и вторым клиентами в режиме Р2Р происходит разрыв соединения между указанными клиентами, или коэффициент потери пакетов видеоданных, передаваемых между указанными клиентами, превышает предварительно заданное значение, или время буферизации видеоданных, передаваемых между указанными клиентами, превышает предварительно заданное значение, то первый клиент определяет, следует ли поддерживать первое соединение ретрансляции с сервером ретрансляции, а второй клиент определяет, следует ли поддерживать второе соединение ретрансляции с сервером ретрансляции;

если первое соединение ретрансляции между первым клиентом и сервером ретрансляции и второе соединение ретрансляции между вторым клиентом и сервером ретрансляции сохраняется, то видеоданные непрерывно передаются через сервер ретрансляции;

если первое соединение ретрансляции между первым клиентом и сервером ретрансляции прервано, а второе соединение ретрансляции между вторым клиентом и сервером ретрансляции успешно установлено, то первый клиент отправляет на сервер ретрансляции запрос на установление первого соединения, причем после успешного установления первого соединения ретрансляции между первым клиентом и сервером ретрансляции первый и второй клиенты направляют и передают видеоданные через сервер ретрансляции;

если второе соединение ретрансляции между вторым клиентом и сервером ретрансляции прервано, а первое соединение ретрансляции между первым клиентом и сервером ретрансляции успешно установлено, то второй клиент отправляет на сервер ретрансляции запрос на установление второго соединения, причем после установления второго соединения ретрансляции между вторым клиентом и сервером ретрансляции первый и второй клиенты направляют и передают видеоданные через сервер ретрансляции;

если первое соединение ретрансляции между первым клиентом и сервером ретрансляции и второе соединение ретрансляции между вторым клиентом и сервером ретрансляции прерваны, то первый клиент отправляет серверу ретрансляции запрос на установление первого соединения, а второй клиент отправляет на сервер ретрансляции запрос на установление второго соединения; причем

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

Данный способ предусматривает также выполнение следующих действий:

если после отправки на сервер ретрансляции и на Р2Р-сервер первым клиентом запроса на установление первого соединения и вторым клиентом запроса на установление второго соединения

первое соединение ретрансляции между первым клиентом и сервером ретрансляции успешно установлено, а второе соединение ретрансляции между вторым клиентом и сервером ретрансляции не установлено, при этом первое Р2Р-соединение между первым клиентом и Р2Р-сервером и второе Р2Р-соединение между вторым клиентом и Р2Р-сервером успешно установлены, то

первый и второй клиенты передают видеоданные в режиме Р2Р, причем первое соединение ретрансляции между первым клиентом и сервером ретрансляции и второе соединение ретрансляции между вторым клиентом и сервером ретрансляции разрываются.

Если после отправки на сервер ретрансляции и на Р2Р-сервер первым клиентом запроса на установление первого соединения и вторым клиентом запроса на установление второго соединения

первое соединение ретрансляции между первым клиентом и сервером ретрансляции успешно установлено, а второе соединение ретрансляции между вторым клиентом и сервером ретрансляции не установлено, то выполняют следующие действия:

сервер ретрансляции принимает от первого клиента запрос на установление первого соединения, а от второго клиента запрос на установление второго соединения;

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

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

Если после отправки на сервер ретрансляции и на Р2Р-сервер первым клиентом запроса на установление первого соединения и вторым клиентом запроса на установление второго соединения

первое Р2Р-соединение между первым клиентом и Р2Р-сервером успешно установлено, а второе Р2Р-соединение между вторым клиентом и Р2Р-сервером не установлено, то выполняют следующие действия:

Р2Р-сервер принимает запросы на установление первого и второго соединений от первого и второго клиентов соответственно;

Р2Р-сервер проверяет подлинность первого и второго пользователей, соответственно, по идентификационным и аутентификационным данным первого пользователя, содержащимся в запросе на установление первого соединения, и идентификационным и аутентификационным данным второго пользователя, содержащимся в запросе на установление второго соединения, причем

при успешной проверке подлинности первого и второго пользователей Р2Р-сервер устанавливает первое и второе Р2Р-соединения с первым и вторым клиентом соответственно и отправляет им ответы об успешном установлении указанных соединений.

Предлагаемая системы передачи видеоданных содержит первый клиент, второй клиент, сервер ретрансляции и Р2Р-сервер, причем

первый клиент сконфигурирован таким образом, чтобы отправлять на сервер ретрансляции и Р2Р-сервер запросы на установление первого соединения, устанавливать первое соединение ретрансляции с сервером ретрансляции, направлять и передавать видеоданные второму клиенту через сервер ретрансляции, устанавливать первое Р2Р-соединение с Р2Р-сервером, временно приостанавливать направление и передачу видеоданных второму клиенту через сервер ретрансляции и передавать видеоданные второму клиенту в режиме Р2Р;

второй клиент сконфигурирован таким образом, чтобы отправлять на сервер ретрансляции и на Р2Р-сервер запросы на установление второго соединения, устанавливать второе соединение ретрансляции с сервером ретрансляции,

направлять и передавать видеоданные первому клиенту через сервер ретрансляции, устанавливать второе Р2Р-соединение с Р2Р-сервером, временно приостанавливать направление и передачу видеоданных первому клиенту через сервер ретрансляции и передавать видеоданные первому клиенту в режиме Р2Р;

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

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

После успешного установления первого Р2Р-соединения между первым клиентом и Р2Р-сервером и второго Р2Р-соединения между вторым клиентом и Р2Р-сервером и завершения передачи первого кадра данных между первым и вторым клиентами в режиме Р2Р, первый клиент временно приостанавливает направление и передачу видеоданных второму клиенту через сервер ретрансляции, причем

после успешного установления второго Р2Р-соединения между вторым клиентом и Р2Р-сервером и первого Р2Р-соединения между первым клиентом и Р2Р-сервером и завершения передачи первого кадра данных между первым и вторым клиентами в режиме Р2Р, второй клиент временно приостанавливает направление и передачу видеоданных первому клиенту через сервер ретрансляции.

Сервер ретрансляции обеспечивает непрерывное направление и передачу видеоданных для первого и второго клиентов в том случае, если во время передачи видеоданных между первым и вторым клиентами в режиме Р2Р происходит разрыв соединения между указанными клиентами, или коэффициент потери пакетов видеоданных, передаваемых между указанными клиентами, превышает предварительно заданное значение, или время буферизации видеоданных, передаваемых между указанными клиентами, превышает предварительно заданное значение, при этом первый клиент определяет, что необходимо сохранить первое соединение ретрансляции с сервером ретрансляции и второй клиент определяет, что необходимо сохранить второе соединение ретрансляции с сервером ретрансляции;

если первое соединение ретрансляции между первым клиентом и сервером ретрансляции прервано, а второе соединение ретрансляции между вторым клиентом и сервером ретрансляции установлено, то сервер ретрансляции принимает от первого клиента запрос на установление первого соединения, причем после успешного установления первого соединения ретрансляции между первым клиентом и сервером ретрансляции сервер ретрансляции непрерывно направляет и передает видеоданные для первого и второго клиентов;

если второе соединение ретрансляции между вторым клиентом и сервером ретрансляции прервано, а первое соединение ретрансляции между первым клиентом и сервером ретрансляции успешно установлено, то сервер ретрансляции принимает от второго клиента запрос на установление второго соединения, причем после успешного установления второго соединения ретрансляции между сервером ретрансляции и вторым клиентом сервер ретрансляции непрерывно направляет и передает видеоданные для первого и второго клиентов;

если первое соединение ретрансляции между первым клиентом и сервером ретрансляции и второе соединение ретрансляции между вторым клиентом и сервером ретрансляции прерваны, то сервер ретрансляции принимает от первого и второго клиентов запросы на установление первого и второго соединений соответственно, причем после успешного установления первого соединения ретрансляции между первым клиентом и сервером ретрансляции и второго соединения ретрансляции между вторым клиентом и сервером ретрансляции сервер ретрансляции непрерывно направляет и передает видеоданные для первого и второго клиентов.

Р2Р-сервер также обеспечивает режим Р2Р для передачи видеоданных первым и вторым клиентами, временно приостанавливает соединение между первым клиентом и сервером ретрансляции и соединение между вторым клиентом и сервером ретрансляции, когда первое соединение ретрансляции между первым клиентом и сервером ретрансляции успешно установлено, а второе соединение ретрансляции между вторым клиентом и сервером ретрансляции не установлено, при этом первое Р2Р-соединение между первым клиентом и Р2Р-сервером и второе Р2Р-соединение между вторым клиентом и Р2Р-сервером успешно установлены.

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

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

Предлагаемое устройство передачи видеоданных установлено на первом клиенте и содержит:

модуль отправки, сконфигурированный для отправки на сервер ретрансляции и на Р2Р-сервер запроса на установление первого соединения; модуль передачи с ретрансляцией, сконфигурированный для установления первого соединения ретрансляции с сервером ретрансляции после отправки первым клиентом запроса на установление первого соединения на сервер ретрансляции через модуль отправки, причем после успешного установления первого соединения ретрансляции первый и другой клиенты направляют и передают видеоданные через сервер ретрансляции;

модуль приостановки передачи с ретрансляцией, сконфигурированный для установления первого Р2Р-соединения с Р2Р-сервером по запросу на установление первого соединения, отправленному модулем отправки на Р2Р-сервер, после направления и передачи видеоданных первым клиентом через модуль передачи с ретрансляцией другому клиенту с использованием сервера ретрансляции, причем после успешного установления первого Р2Р-соединения первый клиент разрывает первое соединение ретрансляции с сервером ретрансляции;

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

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

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

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

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

Краткое описание чертежей

На фиг.1 представлена блок-схема, иллюстрирующая последовательность этапов предлагаемого способа в соответствии с первым вариантом осуществления изобретения.

На фиг.2 показана блок-схема, иллюстрирующая последовательность этапов предлагаемого способа согласно второму варианту осуществления изобретения.

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

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

Осуществление настоящего изобретения

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

В соответствии с настоящим изобретением изначально для передачи видеоданных используют сервер ретрансляции. После того, как одноранговое соединение (Р2Р-соединение) успешно установлено, для непосредственной передачи видеоданных используют режим Р2Р. Благодаря этому удается решить такие проблемы пользователей, как низкая скорость входа в систему и низкая скорость соединений. Пользователь получает возможность быстрой передачи видео, в результате чего его впечатление улучшается. Сохраняется полоса пропускания сети. Если при работе в режиме Р2Р возникают какие-либо проблемы, и этот режим использовать невозможно, выполняется своевременное переключение на сервер ретрансляции. При использовании для передачи видеоданных сервера ретрансляции пользователю предоставляется возможность непрерывной передачи видеоданных.

Вариант 1

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

Этап 101, на котором первый клиент отправляет на сервер ретрансляции и Р2Р-сервер запрос на установление первого соединения. Второй клиент отправляет на сервер ретрансляции и Р2Р-сервер запрос на установление второго соединения.

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

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

Этап 103, на котором после успешного установления первого Р2Р-соединения между первым клиентом и Р2Р-сервером и второго Р2Р-соединения между вторым клиентом и Р2Р-сервером первый и второй клиенты временно приостанавливают направление и передачу видеоданных через сервер ретрансляции.

Этап 104, на котором первый и второй клиенты используют режим Р2Р для непосредственной передачи видеоданных.

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

После установления первого Р2Р-соединения между первым клиентом и Р2Р-сервером и второго Р2Р-соединения между вторым клиентом и Р2Р-сервером, после завершения передачи первого кадра данных в режиме Р2Р, первый и второй клиенты временно приостанавливают направление и передачу видеоданных через сервер ретрансляции.

После начала непосредственной передачи видеоданных первым и вторым клиентами в режиме Р2Р способ предусматривает выполнение также следующих действий.

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

Предварительно заданное значение коэффициента потери пакетов и предварительно заданное время буферизации можно выбирать в зависимости от фактических условий. Например, предварительно заданное значение коэффициента потери пакетов может составлять 10%, а предварительно заданное время буферизации может составлять 10 секунд (указанные значения не ограничиваются приведенными здесь величинами).

Если первое соединение ретрансляции между первым клиентом и сервером ретрансляции и второе соединение ретрансляции между вторым клиентом и сервером ретрансляции сохраняется, то видеоданные непрерывно передаются через сервер ретрансляции.

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

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

Если первое соединение ретрансляции между первым клиентом и сервером ретрансляции и второе соединение ретрансляции между вторым клиентом и сервером ретрансляции прерваны, то первый клиент отправляет на сервер ретрансляции запрос на установление первого соединения, а второй клиент направляет на сервер ретрансляции запрос на установление второго соединения.

После успешного установления первого соединения ретрансляции между первым клиентом и сервером ретрансляции, а также второго соединения ретрансляции между вторым клиентом и сервером ретрансляции первый и второй клиенты направляют и передают видеоданные через сервер ретрансляции.

Способ также предусматривает выполнение следующих действий.

Если до установления первого и второго соединений ретрансляции (а именно, первого - между первым клиентом и сервером ретрансляции, второго - между вторым клиентом и сервером ретрансляции) уже установлены первое Р2Р-соединение между первым клиентом и Р2Р-сервером и второе Р2Р-соединение между вторым клиентом и Р2Р-сервером, первый и второй клиенты могут непосредственно передавать видеоданные в режиме Р2Р. При этом, указанные клиенты могут, соответственно, разорвать соединения с сервером ретрансляции.

До установления первого и второго соединений ретрансляции (а именно, первого - между первым клиентом и сервером ретрансляции, второго - между вторым клиентом и сервером ретрансляции) способ предусматривает выполнение следующих действий.

Сервер ретрансляции принимает от первого и второго клиентов запросы на установление первого и второго соединений соответственно.

Сервер ретрансляции проверяет подлинность первого и второго пользователей, соответственно, по идентификационным и аутентификационным данным первого пользователя, содержащимся в запросе на установление первого соединения, и по идентификационным и аутентификационным данным второго пользователя, содержащимся в запросе на установление второго соединения.

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

До установления первого и второго Р2Р-соединений (а именно, первого - между первым клиентом и Р2Р-сервером, второго - между вторым клиентом и Р2Р-сервером) способ предусматривает выполнение следующих действий.

Р2Р-сервер принимает от первого и второго клиентов запросы на установление первого и второго соединения соответственно.

Р2Р-сервер проверяет подлинность первого и второго пользователей, соответственно, по идентификационным и аутентификационным данным первого пользователя, содержащимся в запросе на установление первого соединения, и по идентификационным и аутентификационным данным второго пользователя в запросе на установление второго соединения.

При успешной проверке подлинности первого и второго пользователей Р2Р-сервер устанавливает первое и второе Р2Р-соединения с первым и вторым клиентом соответственно и отправляет им ответы об успешном установлении указанных соединений.

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

Вариант 2

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

На этапе 201 пользователи А и В входят в систему сетевой видеоигры, используя игровые клиенты А и В, соответственно.

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

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

На этапе 202, в случае возникновения необходимости установления соединения для передачи видеоданных в сетевой видеоигре, игровые клиенты А и В отправляют на сервер ретрансляции и на Р2Р-сервер одновременно запрос на вход в систему и на установление соединения.

Когда игровым клиентам А и В требуется установить соединение в сетевой видеоигре для интерактивной передачи видеоданных, игровой клиент А отправляет одновременно на сервер ретрансляции и на Р2Р-сервер запрос на вход в систему и на установление соединения. Игровой клиент В также отправляет одновременно на сервер ретрансляции и Р2Р-сервер запрос на вход в систему и на установление соединения.

Запрос на вход в систему и на установление соединения отправляется игровым клиентом на сервер ретрансляции и на Р2Р-сервер одновременно. На практике скорость входа и соединения с сервером ретрансляции, как правило, выше, чем скорость входа и соединения с Р2Р-сервером. Поэтому запрос на вход в систему и на установление соединения сначала может быть отправлен на сервер ретрансляции, чтобы пользователь смог подключиться и начать передавать видеоданные как можно быстрее. Затем запрос на вход в систему и на установление соединения может быть отправлен на Р2Р-сервер. Сервер ретрансляции предусмотрен в системе сетевой видеоигры для передачи видеоданных. Он предназначен для ретрансляции видеоданных между пользователями. Р2Р-сервер предусмотрен в системе сетевой видеоигры для непосредственной передачи видеоданных между пользователями.

На этапе 203 сервер ретрансляции принимает запросы на вход в систему и установление соединения от игровых клиентов А и В, устанавливает соответственно для каждого из них соединение ретрансляции и отправляет им ответы об успешном установлении соединения ретрансляции.

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

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

Установив соединения ретрансляции с игровыми клиентами А и В, сервер ретрансляции отправляет им ответы об успешном установлении соединения ретрансляции.

На этапе 204 игровые клиенты А и В получают от сервера ретрансляции ответы об успешном установлении соединения ретрансляции и передают видеоданные через указанный сервер.

Игровой клиент А посылает видеоданные игровому клиенту В через сервер ретрансляции и принимает видеоданные от игрового клиента В через указанный сервер. Игровой клиент В посылает видеоданные игровому клиенту А через сервер ретрансляции и принимает видеоданные от игрового клиента А через указанный сервер.

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