RU2722464C1 - Method of expanding a cdn network using a peer-to-peer network - Google Patents

Method of expanding a cdn network using a peer-to-peer network Download PDF

Info

Publication number
RU2722464C1
RU2722464C1 RU2019136790A RU2019136790A RU2722464C1 RU 2722464 C1 RU2722464 C1 RU 2722464C1 RU 2019136790 A RU2019136790 A RU 2019136790A RU 2019136790 A RU2019136790 A RU 2019136790A RU 2722464 C1 RU2722464 C1 RU 2722464C1
Authority
RU
Russia
Prior art keywords
peer
nodes
peer network
client
list
Prior art date
Application number
RU2019136790A
Other languages
Russian (ru)
Inventor
Сергей Владимирович Ивленков
Александр Владимирович Зырянов
Original Assignee
Общество с ограниченной ответственностью "СДН-видео" (ООО "СДН-видео")
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "СДН-видео" (ООО "СДН-видео") filed Critical Общество с ограниченной ответственностью "СДН-видео" (ООО "СДН-видео")
Priority to RU2019136790A priority Critical patent/RU2722464C1/en
Application granted granted Critical
Publication of RU2722464C1 publication Critical patent/RU2722464C1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

FIELD: information technology.
SUBSTANCE: invention is intended for combining CDN and peer-to-peer networks. In the method, the peer-to-peer network control subsystem generates a list of nodes of a peer-to-peer network of a given size, addresses of the CDN nodes and a list of nodes of the peer-to-peer network are sent to the client. Then the client sends to the nodes from the list a request to load the next segment of viewed Live content, to which they respond when there is a segment in their cache and free resources. After the response, resources are reserved, then the client sends a request for loading data to the random node from among the responders and increases the error counter for non-responding nodes; if necessary, data is re-requested at the CDN node, when the error counter reaches the threshold, the node is stopped to be used, and if the number of nodes in the list is less than a given threshold, the subsystem for controlling the peer-to-peer network requests the missing number of nodes, if the number of nodes in the list is greater than a given threshold, then the required number of nodes is selected randomly, without considering nodes whose error counter exceeds the predetermined threshold and nodes from the list transmitted by the client, if the node has insufficient resources for processing requests, priority is given to clients, which more often load data, from the overflowed cache removing the oldest by time addition of segments.
EFFECT: technical result consists in improvement of efficiency of processing data when combining said networks by reducing load on network CDN.
6 cl, 1 dwg

Description

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

Заявляемое техническое решение относится к области передачи цифровой информации и предназначено для объединения сети CDN и одноранговых сетей. The claimed technical solution relates to the field of digital information transmission and is intended for combining a CDN network and peer-to-peer networks.

Уровень техникиState of the art

Из уровня техники известен традиционный способ доставки контента в сетях CDN, состоящий в выборе для каждого пользователя оптимального с точки зрения той или иной метрики сервера сети CDN и отправке пользователю запрошенного им контента с выбранного сервера. Данный способ хорошо работает в условиях относительно равномерной нагрузки; например, когда большое количество пользователей запрашивает различный контент в различное время. Вместе с тем для Live-контента характерно большое количество запросов одного и того же контента в одни моменты времени (например, во время трансляции крупного спортивного мероприятия) и низкое количество запросов в другие моменты времени. Это приводит к тому, что часть времени сервера CDN будут простаивать, а часть времени они будут перегружены, что приведёт к снижению качества обслуживания пользователей.A conventional method for delivering content in CDNs is known from the prior art, which consists in selecting for each user the CDN server that is optimal from the point of view of a particular metric and sending the requested content from the selected server to the user. This method works well under relatively uniform load conditions; for example, when a large number of users request different content at different times. However, Live content is characterized by a large number of requests for the same content at certain points in time (for example, during the broadcast of a major sporting event) and a low number of requests at other points in time. This leads to the fact that part of the time the CDN server will be idle, and part of the time they will be overloaded, which will lead to a decrease in the quality of user service.

Одним из способов повышения качества обслуживания пользователей, не требующим закупки, установки и содержания большого количества дополнительных серверов, является использование одноранговых сетей в качестве дополнительного способа доставки контента конечным пользователям. Этот способ эффективен для доставки Live-контента, поскольку множество пользователей одновременно запрашивают один и тот же контент, а следовательно, от участников одноранговой сети не требуется использования большого хранилища для кеширования контента, что позволяет эффективно включать в одноранговую сеть практически любое конечное устройство пользователя, что, в свою очередь, позволяет доставлять Live-контент большому числу пользователей, не создавая дополнительной нагрузки на сеть CDN.One way to improve the quality of user service that does not require the purchase, installation and maintenance of a large number of additional servers is to use peer-to-peer networks as an additional way to deliver content to end users. This method is effective for delivering Live content, since many users simultaneously request the same content, and therefore, peer-to-peer network participants do not need to use large storage for caching content, which allows effectively connecting almost any end-user device to the peer-to-peer network, which , in turn, allows you to deliver Live content to a large number of users without creating additional load on the CDN network.

Аналогом заявленного изобретения является способ объединения одноранговой сети и сети CDN (патент США US20080155061A1 на изобретение, МПК G06F15/16; G06F15/173, опуб. 26.06.2008, [1]), в котором конечные устройства пользователей присоединяются к сети CDN и могут быть назначены системой балансирования нагрузки сети CDN в качестве источника контента для других пользователей.An analogue of the claimed invention is a method for combining a peer-to-peer network and a CDN network (US patent US20080155061A1 for an invention, IPC G06F15 / 16; G06F15 / 173, publ. 06/26/2008, [1]), in which the end devices of users are connected to a CDN network and can be Designated by the CDN network load balancer as a content source for other users.

Известен способ унифицированной доставки контента и планирования контента на основе CDN и P2P (патент Китая CN101267379 на изобретение, МПК H04L12/16, H04L29/08, опуб. 17.09.2008, [2]). Как и в заявляемом техническом решении способ [2] осуществляют с помощью унифицированной подсистемы управления и пользовательского клиента. Сервер управления потоковой передачей видео выполняет соответствующую обработку и планирование ресурсов, определяет конечную точку предоставления потокового мультимедиа CDN, которая предоставляет услугу клиенту. A known method of unified content delivery and content planning based on CDN and P2P (Chinese patent CN101267379 for invention, IPC H04L12 / 16, H04L29 / 08, publ. September 17, 2008, [2]). As in the claimed technical solution, the method [2] is carried out using a unified management subsystem and user client. The video streaming management server performs the corresponding processing and scheduling of resources, determines the CDN streaming media endpoint that provides the service to the client.

У аналога [2] подсистема управления информирует подсистему P2P, что источник прямой трансляции является конкретным узлом в подсистеме CDN, и находится в подузле P2P. Подсистема управления устанавливает путь для распространения живого потока в подсистеме CDN. Пользовательский клиент запрашивает живой контент после получения точки публикации, и запрос импортируется в подсистему планирования контента в унифицированной системе переноса контента. In analogue [2], the control subsystem informs the P2P subsystem that the live broadcast source is a specific node in the CDN subsystem, and is located in the P2P subnode. The management subsystem sets the path for the distribution of the live stream in the CDN subsystem. The user client requests live content after receiving the publishing point, and the request is imported into the content planning subsystem in a unified content transfer system.

Указанный аналог [2] является по совокупности существенных признаков наиболее близким аналогом того же назначения к заявляемому техническому решению. Поэтому он принят в качестве прототипа.The specified analogue [2] is the set of essential features the closest analogue of the same purpose to the claimed technical solution. Therefore, it is adopted as a prototype.

Технической проблемой, решение которой обеспечивается при осуществлении или использовании технического решения является необходимость улучшения качества обслуживания.A technical problem, the solution of which is provided when implementing or using a technical solution, is the need to improve the quality of service.

Недостатком способа [1] является высокая нагрузка на систему балансирования нагрузки сети CDN связанная с необходимостью постоянного мониторинга состояния всех узлов одноранговой сети для осуществления корректной балансировки. Способы по патентам [1] и [2] не содержат механизмов предотвращения перегрузки узлов одноранговой сети большим количеством запросов других участников одноранговой сети. Кроме того, указанные способы [1] и [2] могут приводить к ухудшению качества обслуживания, если скорость передачи данных между узлами одноранговой сети окажется недостаточной для передачи следующего сегмента потоковой трансляции до завершения воспроизведения текущего сегмента.The disadvantage of the method [1] is the high load on the load balancing system of the CDN network associated with the need for continuous monitoring of the status of all nodes of the peer-to-peer network to ensure correct balancing. The methods of patents [1] and [2] do not contain mechanisms to prevent overload of peer-to-peer network nodes with a large number of requests from other peer-to-peer network participants. In addition, these methods [1] and [2] can lead to a deterioration in the quality of service if the data transfer rate between nodes of the peer-to-peer network is insufficient to transmit the next segment of the streaming broadcast before the playback of the current segment is completed.

Раскрытие заявляемого технического решения.Disclosure of the claimed technical solution.

Техническим результатом, обеспечиваемым заявляемым техническим решением, является уменьшение нагрузки на сеть CDN.The technical result provided by the claimed technical solution is to reduce the load on the CDN network.

Другим техническим результатом является предотвращение перегрузки узлов одноранговой сети с одновременным увеличением скорости передачи данных между двумя узлами одноранговой сети.Another technical result is the prevention of overload of peer-to-peer network nodes while increasing the data transfer rate between two peer-to-peer network nodes.

Сущность заявленного технического решения состоит в том, что способ расширения сети CDN осуществляют с помощью одноранговой сети, состоящей из подсистемы управления одноранговой сетью, выполняемой на одном или нескольких серверах, и подсистемы клиента одноранговой сети, выполняемой на устройствах клиентов. При подключении нового клиента и при получении запроса на обновление данных подсистема управления одноранговой сетью формирует список узлов одноранговой сети, просматривающих трансляцию с тем же идентификатором, параметры подключения которых соответствуют параметрам подключения нового клиента по критериям, которые выбирают так, чтобы сформировать список заданного размера. При этом набор критериев зависит от просматриваемого Live-контента. Далее клиенту передают адреса узлов CDN, предоставляющих доступ к запрошенному контенту, а также сформированный список узлов одноранговой сети. Затем клиент отправляет всем узлам из списка запрос о возможности загрузки следующего сегмента просматриваемого Live-контента, на который те отвечают в случае наличия в их локальном кэше запрошенного сегмента, а также наличия свободных вычислительных и сетевых ресурсов. Отличается тем, что:The essence of the claimed technical solution lies in the fact that the method of expanding the CDN network is carried out using a peer-to-peer network, consisting of a peer-to-peer network management subsystem that runs on one or more servers, and a peer-to-peer network client subsystem that runs on client devices. When a new client connects and upon receipt of a data update request, the ad-hoc control subsystem generates a list of ad-hoc network nodes viewing the broadcast with the same identifier, the connection parameters of which correspond to the new client’s connection parameters by the criteria that are selected so as to form a list of a given size. Moreover, the set of criteria depends on the Live content being viewed. Next, the client receives the addresses of the CDN nodes providing access to the requested content, as well as the generated list of peer-to-peer network nodes. Then the client sends a request to all nodes from the list about the possibility of downloading the next segment of the Live content being viewed, to which they respond if the requested segment is in their local cache, as well as if there are free computing and network resources. It differs in that:

- после ответа ресурсы резервируют на заданный промежуток времени, далее клиент направляет запрос на загрузку данных случайному узлу из числа ответивших, а также увеличивает счётчик ошибок для не ответивших узлов, причём в случае отсутствия ответов, ошибок передачи, или низкой скорости загрузки данные перезапрашиваются у одного из узлов CDN;- after the response, the resources are reserved for a specified period of time, then the client sends a request to download data to a random node from the number of responding, and also increases the error counter for unresponsive nodes, and in the case of no answers, transmission errors, or low download speed, the data is re-requested from one from CDN nodes;

- при достижении счётчиком ошибок определённого порога соответствующий узел одноранговой сети помечается данным клиентом как "плохой" и перестаёт использоваться, а информацию о нём передают подсистеме управления одноранговой сетью для исключения данного узла из формируемых в дальнейшем списков, причём если количество узлов в имеющемся у клиента списке оказывается меньше заданного порога, у подсистемы управления одноранговой сетью запрашивают недостающее количество узлов;- when the error counter reaches a certain threshold, the corresponding peer-to-peer network node is marked as “bad” by this client and ceases to be used, and information about it is transmitted to the peer-to-peer network management subsystem to exclude this node from future lists, moreover, if the number of nodes is in the client’s list it turns out to be less than a specified threshold, the missing peer network is requested from the peer-to-peer network management subsystem;

- если количество узлов в списке оказывается больше заданного порога, то из них выбирают необходимое количество узлов случайным образом, при этом не рассматривают узлы, чей счётчик ошибок превышает заданный порог, а также узлы, присутствующие в переданном клиентом списке, если таковой присутствует в запросе;- if the number of nodes in the list is greater than the specified threshold, then the required number of nodes is randomly selected from them, while the nodes whose error counter exceeds the specified threshold, as well as the nodes present in the list sent by the client, if any, are not considered;

- если у узла недостаточно ресурсов для обработки всех поступивших запросов, приоритет отдаётся клиентам, которые чаще загружают данные;- if the node does not have enough resources to process all incoming requests, priority is given to customers who often download data;

- в случае переполнения кэша удаляют самые старые по времени добавления сегменты.- in case of a cache overflow, the oldest segments are added in time of adding.

В частных случаях допустимо выполнять техническое решение следующим образом. In special cases, it is permissible to carry out the technical solution as follows.

При резервировании ресурсов на узле одноранговой сети предпочтительно учитывают соотношение числа запросов на загрузку данных к числу запросов о возможности загрузки данных за заданный промежуток времени.When reserving resources on a peer-to-peer network node, it is preferable to take into account the ratio of the number of data download requests to the number of requests about the possibility of downloading data for a given period of time.

Пользователь может перематывать видео назад для просмотра фрагмента трансляции. Если после этого пользователь возвращается в прямой эфир, то сегменты, соответствующие просмотренному фрагменту записи трансляции, не удаляют из кэша в течение заданного промежутка времени.The user can rewind the video to view the fragment of the broadcast. If after this the user returns to the live broadcast, then the segments corresponding to the viewed fragment of the broadcast record are not deleted from the cache for a specified period of time.

На случайно выбранную часть узлов одноранговой сети подсистема управления одноранговой сетью отправляет параметры конфигурации, часть значений которых изменена случайным образом в заданных пределах. При этом подсистема управления осуществляет мониторинг работы данных узлов, и если данные параметры конфигурации обеспечивают лучшее качество трансляции, или уменьшают нагрузку на устройство клиента, то они начинают использоваться для всех новых узлов одноранговой сети.To a randomly selected part of peer-to-peer network nodes, the peer-to-peer network control subsystem sends configuration parameters, some of which are randomly changed within specified limits. At the same time, the management subsystem monitors the operation of these nodes, and if these configuration parameters provide the best broadcast quality, or reduce the load on the client device, then they begin to be used for all new nodes of the peer-to-peer network.

Сервера, обеспечивающие работу подсистемы управления одноранговой сетью являются кэшем CDN для всех видов просматриваемого клиентами Live-контента. При этом узлы одноранговой сети, в случае невозможности загрузить данные с других узлов одноранговой сети сначала загружают данные из кэша CDN подсистемы управления, а в случае невозможности загрузки данных из кэша CDN перезапрашивают их у одного из узлов CDN. При этом ресурсы сервера, обеспечивающие работу подсистемы управления, приоритетно выделяются для работы подсистемы управления.Servers providing the operation of the peer-to-peer network management subsystem are the CDN cache for all types of Live content viewed by clients. In this case, peer-to-peer network nodes, in case of impossibility to download data from other peer-to-peer network nodes, first download data from the CDN cache of the management subsystem, and if it is not possible to load data from the CDN cache, they are re-requested from one of the CDN nodes. At the same time, server resources providing the operation of the management subsystem are priority allocated for the operation of the management subsystem.

На серверах, обеспечивающих работу подсистемы управления одноранговой сетью, дополнительно выполняют одну или более подсистем клиента одноранговой сети, причём ресурсы сервера приоритетно выделяют для работы подсистемы управления одноранговой сетью. При этом в случае нехватки ресурсов прекращается выполнение экземпляров подсистемы клиента одноранговой сети, которые осуществляют просмотр трансляции, имеющей наибольшее число зрителей среди участников одноранговой сети.On servers providing the operation of the peer-to-peer network management subsystem, one or more subsystems of the client of the peer-to-peer network are additionally executed, moreover, server resources are prioritized for the operation of the peer-to-peer network management subsystem. In this case, in the event of a lack of resources, the execution of peer-to-peer client subsystem instances is stopped, which view the broadcast that has the largest number of viewers among peer-to-peer network participants.

Вышеуказанная сущность является совокупностью существенных признаков заявленного технического решения, обеспечивающих достижение всех заявленных технических результатов.The above essence is a combination of essential features of the claimed technical solution, ensuring the achievement of all the claimed technical results.

Краткое описание чертежейBrief Description of the Drawings

На фигуре показана схема способа расширения сети CDN с помощью одноранговой сети.The figure shows a diagram of a method for expanding a CDN network using a peer-to-peer network.

Осуществление технического решения. Implementation of a technical solution.

Расширение сети CDN осуществляют с помощью следующих подсистем:The expansion of the CDN network is carried out using the following subsystems:

- подсистемы клиента одноранговой сети (1);- peer-to-peer client subsystems (1);

- подсистемы управления одноранговой сетью (2);- peer-to-peer network management subsystems (2);

- подсистемы (сети) CDN (3);- subsystems (networks) of CDN (3);

- подсистемы конфигурации одноранговой сети (4).- peer-to-peer network configuration subsystems (4).

Подсистема управления одноранговой сетью (2) предусматривает программный модуль, выполняемый на одном или нескольких либо выделенных серверах, либо серверах сети CDN (3), либо их комбинации. Данный модуль хранит в оперативной памяти сервера, на дисковом накопителе, или в ином хранилище данных необходимые для работы подсистемы объекты, включая список узлов одноранговой сети, их счётчики ошибок, идентификатор просматриваемого Live-контента для каждого узла и параметры подключения для каждого узла. Параметры подключения узла одноранговой сети могут содержать значения одной или более метрик, таких как номер автономной системы, гео-координаты, тип устройства, максимальный размер доступного кэша, тип и скорость подключения к интернету. Идентификатор просматриваемого Live-контента уникально идентифицирует Live-трансляцию, а также все её параметры, включая качество трансляции (разрешение, частота кадров, битрейт), выбранную звуковую дорожку, выбранный ракурс камеры и другие.A peer-to-peer network management subsystem (2) provides a software module that runs on one or more dedicated servers, or CDN network servers (3), or a combination thereof. This module stores the necessary objects for the subsystem to work in the server’s RAM, on a disk drive, or in another data storage, including a list of peer-to-peer network nodes, their error counters, the identifier of the Live content being viewed for each node, and connection parameters for each node. Connection parameters of a peer-to-peer network node may contain values of one or more metrics, such as the autonomous system number, geo-coordinates, device type, maximum cache size, type and speed of Internet connection. The identifier of the viewed Live content uniquely identifies the Live broadcast, as well as all its parameters, including broadcast quality (resolution, frame rate, bit rate), the selected audio track, the selected camera angle and others.

При подключении нового клиента к подсистеме клиента одноранговой сети (1), подсистема управления одноранговой сетью (2) получает от подсистемы клиента одноранговой сети (1) информацию о просматриваемом Live-контенте и параметрах подключения. После этого подсистема управления одноранговой сетью (2) формирует список узлов одноранговой сети, просматривающих Live-контент с тем же идентификатором, параметры подключения которых соответствуют параметрам подключения нового клиента к подсистеме клиента одноранговой сети (1). Один или более критериев соответствия, а также максимальный и минимальный размер формируемого списка узлов, соответствующие просматриваемому Live-контенту, запрашиваются у подсистемы конфигурации одноранговой сети (4).When a new client connects to the peer-to-peer network subsystem (1), the peer-to-peer network management subsystem (2) receives information from the peer-to-peer network subsystem (1) about the Live content being viewed and the connection parameters. After that, the peer-to-peer network management subsystem (2) generates a list of peer-to-peer network nodes viewing Live content with the same identifier, the connection parameters of which correspond to the parameters for connecting a new client to the peer-to-peer network client subsystem (1). One or more compliance criteria, as well as the maximum and minimum size of the generated list of nodes corresponding to the viewed Live content, are requested from the peer-to-peer network configuration subsystem (4).

Если в подсистеме конфигурации одноранговой сети (4) отсутствует конфигурация, соответствующая запрошенному Live-контенту, используется конфигурация по умолчанию. При этом если в сформированном списке оказывается недостаточное количество узлов, подсистема управления одноранговой сетью (2) может либо воспользоваться менее строгим критерием соответствия, либо прервать формирование списка узлов. Если в сформированном списке оказывается слишком много узлов подсистема управления одноранговой сетью (2) может либо воспользоваться более строгим критерием соответствия, либо выбрать необходимое количество узлов из сформированного списка случайным образом. После этого новому клиенту подсистемы клиента одноранговой сети (1) передаётся сформированный список узлов одноранговой сети (если он был сформирован), конфигурационные параметры, полученные от подсистемы конфигурации одноранговой сети (4), и один или несколько узлов CDN, предоставляющие доступ к запрошенному клиентом Live-контенту. Список узлов CDN запрашивают у подсистемы CDN (3).If the configuration subsystem of the peer-to-peer network (4) does not have a configuration corresponding to the requested Live content, the default configuration is used. Moreover, if an insufficient number of nodes appears in the generated list, the peer-to-peer network management subsystem (2) can either use the less stringent compliance criterion or interrupt the formation of the list of nodes. If there are too many nodes in the generated list, the peer-to-peer network management subsystem (2) can either use the more stringent matching criterion or select the required number of nodes from the generated list randomly. After that, the new client of the peer-to-peer network subsystem (1) is sent the generated list of peer-to-peer network nodes (if one has been generated), configuration parameters received from the peer-to-peer network configuration subsystem (4), and one or more CDN nodes providing access to the requested Live client content. A list of CDN nodes is requested from the CDN subsystem (3).

При получении запроса от подсистемы клиента одноранговой сети (1) на формирование списка узлов заданного размера производится формирование списка узлов, содержащего не более запрошенного числа элементов. При этом если в запросе клиента содержится список узлов, то узлы из этого списка не рассматриваются в качестве кандидатов при формировании нового списка.Upon receipt of a request from the client subsystem of the peer-to-peer network (1) for the formation of a list of nodes of a given size, a list of nodes is formed containing no more than the requested number of elements. Moreover, if the client’s request contains a list of nodes, then nodes from this list are not considered as candidates when creating a new list.

При получении информации от подсистемы клиента одноранговой сети (1) об изменении параметров подключения, или изменении идентификатора просматриваемого Live-контента, производится сохранение новых данных, а также сброс счётчика ошибок к первоначальному значению, которое запрашивается у подсистемы конфигурации одноранговой сети (4).Upon receipt of information from the client subsystem of the peer-to-peer network (1) about changing connection parameters or changing the identifier of the viewed Live content, the new data is saved and the error counter is reset to the initial value that is requested from the peer-to-peer network configuration subsystem (4).

При получении от подсистемы клиента одноранговой сети (1) списка «плохих» узлов одноранговой сети происходит увеличение их счётчика ошибок на величину, которая запрашивается у подсистемы конфигурации одноранговой сети (4). Если счётчик ошибок достигает порогового значения (запрашивается у подсистемы конфигурации одноранговой сети), соответствующий клиент перестаёт рассматриваться в качестве кандидата при формировании новых списков узлов одноранговой сети.Upon receipt from the client subsystem of the peer-to-peer network (1) a list of “bad” peers of the peer-to-peer network, their error counter increases by the amount requested from the peer-to-peer network configuration subsystem (4). If the error counter reaches the threshold value (requested from the peer-to-peer network configuration subsystem), the corresponding client ceases to be considered as a candidate when generating new lists of peer-to-peer network nodes.

При получении от подсистемы клиента одноранговой сети (1) запроса на обновление конфигурации производится запрос параметров конфигурации у подсистемы конфигурации одноранговой сети (4) и отправка полученного результата клиенту.Upon receipt of a request to update the configuration from the client subsystem of the peer-to-peer network (1), configuration parameters are requested from the peer-to-peer network configuration subsystem (4) and the result is sent to the client.

В том случае, если подсистема управления одноранговой сетью (2), либо её часть выполняется на выделенных серверах, на этих серверах также может выполняться один или более экземпляр подсистемы клиента одноранговой сети (1). При этом ресурсы сервера приоритетно выделяются для работы подсистемы управления одноранговой сетью (2), причём при уменьшении количества свободных ресурсов происходит уменьшение количества выполняемых экземпляров подсистемы клиента одноранговой сети (1), причём в первую очередь перестают выполняться те экземпляры подсистемы клиента, которые осуществляют просмотр трансляции, имеющей наибольшее число зрителей среди участников одноранговой сети. In the event that the peer-to-peer network management subsystem (2), or part of it is performed on dedicated servers, one or more peer-to-peer network client subsystem (1) instance can also be executed on these servers. At the same time, server resources are primarily allocated for the operation of the peer-to-peer network management subsystem (2), and when the number of free resources decreases, the number of executable instances of the peer-to-peer network subsystem is reduced (1), and those instances of the client subsystem that view the broadcast first stop running having the largest number of viewers among peer-to-peer network participants.

Примеры конкретного выполнения.Examples of specific performance.

Пример 1. Среди всех узлов одноранговой сети подсистема управления одноранговой сетью (2) случайно выбирает заданную в конфигурации долю узлов, и каждому выбранному узлу передаёт конфигурационные параметры, часть значений которых изменена случайным образом в заданных пределах. При этом подсистема управления (2) осуществляет мониторинг работы данных узлов, и если данные конфигурационные параметры обеспечивают лучшее качество трансляции, или уменьшают нагрузку на устройство клиента, то подсистема управления (2) сохраняет данную конфигурацию в подсистеме конфигурации одноранговой сети (4) и начинает использовать её для всех новых узлов одноранговой сети.Example 1. Among all peer-to-peer network nodes, the peer-to-peer network control subsystem (2) randomly selects a fraction of nodes specified in the configuration, and passes configuration parameters to each selected node, some of which are randomly changed within specified limits. In this case, the control subsystem (2) monitors the operation of these nodes, and if these configuration parameters provide better broadcast quality, or reduce the load on the client device, then the control subsystem (2) saves this configuration in the configuration subsystem of the peer-to-peer network (4) and starts using it for all new peer-to-peer nodes.

Подсистема клиента одноранговой сети (1) предусматривает программный модуль, выполняемый на устройстве клиента, участвующего в одноранговой сети, который запрашивает возможность загрузки следующей порции данных Live-контента (следующего сегмента видео) у всех узлов одноранговой сети из имеющегося у него списка узлов (при наличии). Далее подсистема клиента одноранговой сети (1) ожидает получение ответов в течение заданного в конфигурации промежутка времени, после чего запрашивает следующий сегмент видео у случайного узла из числа ответивших, а также увеличивает счётчик ошибок на заданную в конфигурации величину для каждого не ответившего узла. Если в заданный промежуток времени ответ не был получен ни от одного узла, а также при отсутствии списка узлов одноранговой сети следующий сегмент видео запрашивается из сети CDN (3). Если сегмент видео был запрошен у узла одноранговой сети, но его загрузка происходит слишком медленно для обеспечения непрерывности воспроизведения Live-контента, либо если загрузка прервалась, либо если получено сообщение о невозможности передать запрошенные данные, этот сегмент перезапрашивается из сети CDN (3), а для данного узла одноранговой сети происходит увеличение счётчика ошибок на заданную в конфигурации величину. Полученный сегмент сохраняется в локальном кэше, размещённом в оперативной памяти, на дисковом накопителе, или в ином хранилище данных. При этом если в локальном кэше недостаточно свободного места для сохранения полученного сегмента, производится последовательное удаление самых старых по времени получения сегментов до тех пор, пока в кэше не освободится достаточно места для сохранения нового сегмента.The peer-to-peer network client subsystem (1) provides a software module running on the device of a client participating in the peer-to-peer network, which requests the ability to download the next portion of Live-content data (the next video segment) from all nodes of the peer-to-peer network from its list of nodes (if any ) Further, the peer-to-peer network client subsystem (1) expects to receive responses within the time interval specified in the configuration, after which it requests the next video segment from a random node from the number of respondents, and also increases the error counter by the value specified in the configuration for each non-responding node. If no response was received from any node in a specified period of time, or if there is no list of peer-to-peer network nodes, the next video segment is requested from the CDN network (3). If a video segment was requested from a peer-to-peer network node, but its download is too slow to ensure continuous playback of Live content, or if the download was interrupted, or if a message was received that it was not possible to transmit the requested data, this segment is re-requested from the CDN network (3), and for this peer-to-peer network node, the error counter increases by the value specified in the configuration. The resulting segment is stored in a local cache located in RAM, on a disk drive, or in another data storage. At the same time, if there is not enough free space in the local cache to save the received segment, the oldest segments in time of receiving segments are sequentially deleted until enough space is freed up in the cache to save the new segment.

Пример 2. Если Live-трансляция поддерживает перемотку, и пользователь перемотал видео назад для просмотра какого-то фрагмента трансляции, после чего вернулся в прямой эфир, то сегменты, соответствующие просмотренному фрагменту записи трансляции, не будут удаляться из кэша в течение заданного в конфигурации промежутка времени.Example 2. If a Live broadcast supports rewinding, and the user rewound the video to view some fragment of the broadcast, and then went back to live, then the segments corresponding to the viewed fragment of the broadcast record will not be deleted from the cache during the interval specified in the configuration time.

При достижении счётчиком ошибок заданного в конфигурации порога, соответствующий узел помечается как «плохой» и исключается из списка узлов одноранговой сети. Если после этого в списке узлов одноранговой сети оказывается меньше узлов, чем заданное в конфигурации пороговое значение, производится запрос у подсистемы управления одноранговой сетью (2) дополнительного списка размера, равного разнице между заданным в конфигурации значением и текущим размером списка. При этом в запросе могут быть также переданы текущий список узлов и список «плохих» узлов. Узлы из полученного от подсистемы управления одноранговой сетью (2) списка добавляются в текущий список узлов. В случае неполучения списка от подсистемы управления одноранговой сетью (2), либо если после добавления полученных узлов размер списка, по-прежнему меньше заданного в конфигурации порогового значения производится повторный запрос через заданный в конфигурации промежуток времени.When the error counter reaches the threshold specified in the configuration, the corresponding node is marked as “bad” and excluded from the list of peer-to-peer network nodes. If after this there are fewer nodes in the list of peer-to-peer network nodes than the threshold value specified in the configuration, a request is made from the peer-to-peer network control subsystem (2) for an additional list of size equal to the difference between the value specified in the configuration and the current size of the list. At the same time, the current list of nodes and the list of "bad" nodes can also be transmitted in the request. The nodes from the list received from the peer-to-peer network management subsystem (2) are added to the current list of nodes. If the list is not received from the peer-to-peer network management subsystem (2), or if, after adding the received nodes, the size of the list is still less than the threshold value specified in the configuration, a second request is made after the time interval specified in the configuration.

При получении запроса о возможности загрузки определённых данных от другого узла одноранговой сети, подсистема клиента одноранговой сети (1) проверяет наличие запрошенных данных в локальном кэше. При наличии данных происходит проверка доступности свободных вычислительных и сетевых ресурсов для обеспечения передачи запрошенных данных без влияния на качество воспроизведения контента на данном устройстве, а также без влияния на качество передачи данных другим участникам одноранговой сети. Если ресурсов недостаточно для обслуживания всех поступающих запросов, приоритет отдаётся тем узлам одноранговой сети, у которых больше доля числа запросов на загрузку данных к числу запросов о возможности загрузки данных за заданный в конфигурации промежуток времени. При наличии данных в кэше и доступности ресурсов на поступивший запрос отправляется ответ, подтверждающий возможность загрузки данных, а также производится резервирование вычислительных и сетевых ресурсов на заданный в конфигурации промежуток времени. Во всех остальных случаях ответ не отправляется и резервирование ресурсов не производится.Upon receipt of a request about the possibility of downloading certain data from another peer-to-peer network node, the peer-to-peer client subsystem (1) checks for the requested data in the local cache. If there is data, the availability of free computing and network resources is checked to ensure the transfer of requested data without affecting the quality of playback of content on this device, as well as without affecting the quality of data transfer to other participants of the peer-to-peer network. If there are not enough resources to service all incoming requests, priority is given to those peer-to-peer network nodes that have a higher proportion of the number of data download requests to the number of requests about the possibility of downloading data for a specified period of time in the configuration. If there is data in the cache and the availability of resources, a response is sent to the incoming request, confirming the ability to download data, and backups of computing and network resources for a specified period of time in the configuration. In all other cases, the response is not sent and the reservation of resources is not made.

Пример 3. При резервировании ресурсов учитывается доля числа запросов на загрузку данных к числу запросов о возможности загрузки данных за заданный в конфигурации промежуток времени.Example 3. When reserving resources, the proportion of the number of data loading requests to the number of requests for the possibility of downloading data for a specified period of time is taken into account.

При получении запроса о загрузке данных от другого узла одноранговой сети производится повторная проверка наличия данных в кэше и доступности свободных вычислительных и сетевых ресурсов. Если проверка пройдена, производится отправка запрошенных данных, в противном случае производится отправка сообщения о невозможности передать запрошенные данные. В случае возникновения ошибок при передаче повторная отправка не производится.Upon receipt of a request to download data from another peer-to-peer network node, a repeated check is made of the availability of data in the cache and the availability of free computing and network resources. If the check is passed, the requested data is sent; otherwise, a message is sent indicating the impossibility to transmit the requested data. In case of transmission errors, retransmission is not performed.

При изменении параметров подключения, а также при изменении идентификатора просматриваемого Live-контента отправляется соответствующий запрос к подсистеме управления одноранговой сетью (2). Кроме того, через заданный в конфигурации промежуток времени к подсистеме управления одноранговой сетью (2) отправляется запрос на обновление конфигурации.When changing the connection parameters, as well as when changing the identifier of the viewed Live content, a corresponding request is sent to the peer-to-peer network management subsystem (2). In addition, after a period of time specified in the configuration, a request to update the configuration is sent to the peer-to-peer network management subsystem (2).

Пример 4. Выделенные сервера, обеспечивающие работу подсистемы управления (2), также выполняют роль кэша CDN для всех видов просматриваемого клиентами Live-контента. В этом варианте узлы одноранговой сети, в случае невозможности загрузить данные с других узлов одноранговой сети сначала пытаются загрузить данные из кэша CDN подсистемы управления (2). В случае если данные не были получены в течение заданного в конфигурации промежутка времени, либо если кэш CDN сообщил о невозможности предоставить запрошенные данные, данные перезапрашиваются у одного из узлов CDN. При этом ресурсы сервера, обеспечивающего работу подсистемы управления (2), приоритетно выделяются для работы подсистемы управления (2). Данные в кэш CDN загружаются из CDN (3).Example 4. Dedicated servers that provide the management subsystem (2) also play the role of a CDN cache for all types of Live content viewed by clients. In this embodiment, peer-to-peer network nodes, in case of impossibility to download data from other peer-to-peer network nodes, first try to load data from the CDN cache of the control subsystem (2). If the data was not received within the specified period of time in the configuration, or if the CDN cache reported that it was not possible to provide the requested data, the data is re-requested from one of the CDN nodes. At the same time, the resources of the server providing the operation of the management subsystem (2) are allocated priority for the operation of the management subsystem (2). Data is loaded into the CDN cache from the CDN (3).

Подсистема CDN (3) представляет собой ту или иную сеть CDN, способную предоставить пользователям запрашиваемый Live-контент.The CDN subsystem (3) is a particular CDN network that can provide users with the requested Live content.

Подсистема конфигурации одноранговой сети (4) представляет собой набор конфигурационных профилей, хранящихся в конфигурационном файле, базе данных, или ином хранилище информации.A peer-to-peer network configuration subsystem (4) is a set of configuration profiles stored in a configuration file, database, or other information storage.

Из изложенного выше специалисту будет понятно, что заявленное изобретение обеспечивает уменьшение нагрузки на сеть CDN (3), не требует постоянного мониторинга состояния всех узлов одноранговой сети, не допускает перегрузки узлов одноранговой сети, а также не допускает ухудшения качества обслуживания за счёт недостаточной скорости передачи данных между двумя узлами одноранговой сети. From the foregoing, it will be clear to a specialist that the claimed invention reduces the load on the CDN network (3), does not require constant monitoring of the status of all peer-to-peer network nodes, does not allow overloading of peer-to-peer network nodes, and also does not allow deterioration in the quality of service due to insufficient data transfer speed between two peer-to-peer nodes.

Хотя выше был описаны предпочтительные примеры осуществления настоящего изобретения, специалисту будет понятно, что настоящее изобретение не ограничено этими примерами. Более того, различные изменения и модификации могут быть выполнены в пределах сущности и объёма настоящего изобретения. Although preferred embodiments of the present invention have been described above, one skilled in the art will appreciate that the present invention is not limited to these examples. Moreover, various changes and modifications can be made within the essence and scope of the present invention.

Промышленная применимостьIndustrial applicability

Заявляемый способ уменьшения нагрузки на сеть CDN реализован с использованием промышленно выпускаемых устройств и материалов, и найдет широкое применение в области распространения цифрового контента.The inventive method of reducing the load on the CDN network is implemented using industrially produced devices and materials, and will find wide application in the field of digital content distribution.

Claims (8)

1. Способ расширения сети CDN с помощью одноранговой сети, состоящей из подсистемы управления одноранговой сетью, выполняемой на одном или нескольких серверах, и подсистемы клиента одноранговой сети, выполняемой на устройствах клиентов, заключающийся в том, что при подключении нового клиента и при получении запроса на обновление данных подсистема управления одноранговой сетью формирует список узлов одноранговой сети, просматривающих трансляцию с тем же идентификатором, параметры подключения которых соответствуют параметрам подключения нового клиента по критериям, которые выбирают так, чтобы сформировать список заданного размера, причём набор критериев зависит от просматриваемого Live-контента, далее клиенту передают адреса узлов CDN, предоставляющих доступ к запрошенному контенту, а также сформированный список узлов одноранговой сети, затем клиент отправляет всем узлам из списка запрос о возможности загрузки следующего сегмента просматриваемого Live-контента, на который те отвечают в случае наличия в их локальном кэше запрошенного сегмента, а также наличия свободных вычислительных и сетевых ресурсов, отличающийся тем, что после ответа ресурсы резервируют на заданный промежуток времени, далее клиент направляет запрос на загрузку данных случайному узлу из числа ответивших, а также увеличивает счётчик ошибок для не ответивших узлов, причём в случае отсутствия ответов, ошибок передачи, или низкой скорости загрузки данные перезапрашиваются у одного из узлов CDN; при достижении счётчиком ошибок определённого порога соответствующий узел одноранговой сети помечается данным клиентом как плохой" и перестаёт использоваться, а информацию о нём передают подсистеме управления одноранговой сетью для исключения данного узла из формируемых в дальнейшем списков, причём если количество узлов в имеющемся у клиента списке оказывается меньше заданного порога, у подсистемы управления одноранговой сетью запрашивают недостающее количество узлов;1. A method of expanding a CDN network using a peer-to-peer network, consisting of a peer-to-peer network management subsystem running on one or more servers, and a peer-to-peer network client subsystem running on client devices, which, when connecting to a new client and receiving a request for data updating, the peer-to-peer network management subsystem generates a list of peer-to-peer network nodes viewing the broadcast with the same identifier, the connection parameters of which correspond to the new client’s connection parameters according to the criteria that are selected so as to form a list of a given size, and the set of criteria depends on the Live content being viewed, Next, the client receives the addresses of the CDN nodes providing access to the requested content, as well as the generated list of peer-to-peer network nodes, then the client sends a request to all nodes from the list about the possibility of downloading the next segment of the viewed Live content, to which they respond with the presence of the requested segment in their local cache, as well as the availability of free computing and network resources, characterized in that after the answer the resources are reserved for a specified period of time, then the client sends a request to load data to a random node from the number of respondents, and also increases the error counter for Unanswered nodes, moreover, in the absence of answers, transmission errors, or low download speed, data is re-requested from one of the CDN nodes; when the error counter reaches a certain threshold, the corresponding peer-to-peer network node is marked by this client as "bad" and is no longer used, and information about it is transmitted to the peer-to-peer network management subsystem to exclude this node from future lists, moreover, if the number of nodes in the client’s list is less given threshold, the peer network management subsystem is requested the missing number of nodes; если количество узлов в списке оказывается больше заданного порога, то из них выбирают необходимое количество узлов случайным образом, при этом не рассматривают узлы, чей счётчик ошибок превышает заданный порог, а также узлы, присутствующие в переданном клиентом списке, если таковой присутствует в запросе;if the number of nodes in the list is greater than the specified threshold, then the required number of nodes is randomly selected from them, while the nodes whose error counter exceeds the specified threshold, as well as nodes present in the list sent by the client, if any, are not considered; если у узла недостаточно ресурсов для обработки всех поступивших запросов, приоритет отдаётся клиентам, которые чаще загружают данные;if the node does not have enough resources to process all incoming requests, priority is given to clients who download data more often; в случае переполнения кэша удаляют самые старые по времени добавления сегменты.in case of a cache overflow, the oldest added segments are deleted. 2. Способ по п.1, отличающийся тем, что при резервировании ресурсов на узле одноранговой сети учитывают соотношение числа запросов на загрузку данных к числу запросов о возможности загрузки данных за заданный промежуток времени.2. The method according to claim 1, characterized in that when reserving resources on a peer-to-peer network node, the ratio of the number of requests for downloading data to the number of requests for the possibility of downloading data for a given period of time is taken into account. 3. Способ по п.1, отличающийся тем, что при перемотке пользователем видео назад для просмотра фрагмента трансляции с последующим возвратом в прямой эфир, сегменты, соответствующие просмотренному фрагменту записи трансляции, не удаляют из кэша в течение заданного промежутка времени.3. The method according to claim 1, characterized in that when the user rewinds the video back to view the broadcast fragment and then returns to the live broadcast, the segments corresponding to the viewed fragment of the broadcast record are not deleted from the cache for a specified period of time. 4. Способ по п.1, отличающийся тем, что на случайно выбранную часть узлов одноранговой сети подсистема управления одноранговой сетью отправляет параметры конфигурации, часть значений которых изменена случайным образом в заданных пределах, при этом подсистема управления осуществляет мониторинг работы данных узлов, и если данные параметры конфигурации обеспечивают лучшее качество трансляции, или уменьшают нагрузку на устройство клиента, то они начинают использоваться для всех новых узлов одноранговой сети.
5. Способ по п.1, отличающийся тем, что сервера, обеспечивающие работу подсистемы управления одноранговой сетью являются кэшем CDN для всех видов просматриваемого клиентами Live-контента, причём узлы одноранговой сети, в случае невозможности загрузить данные с других узлов одноранговой сети сначала загружают данные из кэша CDN подсистемы управления, а в случае невозможности загрузки данных из кэша CDN перезапрашивают их у одного из узлов CDN, при этом ресурсы сервера, обеспечивающие работу подсистемы управления, приоритетно выделяются для работы подсистемы управления.
4. The method according to claim 1, characterized in that to the randomly selected part of the peer-to-peer network nodes, the peer-to-peer network control subsystem sends configuration parameters, part of the values of which are randomly changed within the specified limits, while the control subsystem monitors the operation of these nodes, and if the data configuration parameters provide better broadcast quality, or reduce the load on the client device, then they begin to be used for all new peer-to-peer network nodes.
5. The method according to claim 1, characterized in that the servers providing the operation of the peer-to-peer network management subsystem are the CDN cache for all types of Live content viewed by clients, and peer-to-peer nodes, in case of impossibility to download data from other peer-to-peer network nodes, first download data from the CDN cache of the management subsystem, and if it is not possible to download data from the CDN cache, they are re-requested from one of the CDN nodes, while the server resources providing the operation of the management subsystem are priority allocated for the operation of the management subsystem.
6.     Способ по п.1, отличающийся тем, что на серверах, обеспечивающих работу подсистемы управления одноранговой сетью, дополнительно выполняют одну или более подсистем клиента одноранговой сети, причём ресурсы сервера приоритетно выделяют для работы подсистемы управления одноранговой сетью, причём в случае нехватки ресурсов прекращается выполнение экземпляров подсистемы клиента одноранговой сети, которые осуществляют просмотр трансляции, имеющей наибольшее число зрителей среди участников одноранговой сети.6. The method according to claim 1, characterized in that the servers providing the operation of the peer-to-peer network management subsystem additionally execute one or more peer-to-peer network client subsystems, moreover, server resources are prioritized for the operation of the peer-to-peer network management subsystem, and in case of insufficient resources execution of peer-to-peer client subsystem instances that view the broadcast with the largest number of viewers among peer-to-peer network participants.
RU2019136790A 2019-11-15 2019-11-15 Method of expanding a cdn network using a peer-to-peer network RU2722464C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2019136790A RU2722464C1 (en) 2019-11-15 2019-11-15 Method of expanding a cdn network using a peer-to-peer network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019136790A RU2722464C1 (en) 2019-11-15 2019-11-15 Method of expanding a cdn network using a peer-to-peer network

Publications (1)

Publication Number Publication Date
RU2722464C1 true RU2722464C1 (en) 2020-06-01

Family

ID=71067606

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019136790A RU2722464C1 (en) 2019-11-15 2019-11-15 Method of expanding a cdn network using a peer-to-peer network

Country Status (1)

Country Link
RU (1) RU2722464C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116916048A (en) * 2023-09-07 2023-10-20 典基网络科技(上海)有限公司 Hybrid architecture, method, device and medium for streaming media transmission optimization

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101146021A (en) * 2006-09-11 2008-03-19 思华科技(上海)有限公司 Routing system and method of content distribution network
US20160037215A1 (en) * 2014-07-31 2016-02-04 Diego Cardona Live streaming-tv content, acquisition, transformation, encryption, and distribution system, and method for its use
US20170366595A1 (en) * 2014-11-18 2017-12-21 International Business Machines Corporation Software defined content delivery network for flexible, real-time management of large-scale data transfers
RU2656794C2 (en) * 2012-12-14 2018-06-06 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Content-acquisition source selection and management

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101146021A (en) * 2006-09-11 2008-03-19 思华科技(上海)有限公司 Routing system and method of content distribution network
RU2656794C2 (en) * 2012-12-14 2018-06-06 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Content-acquisition source selection and management
US20160037215A1 (en) * 2014-07-31 2016-02-04 Diego Cardona Live streaming-tv content, acquisition, transformation, encryption, and distribution system, and method for its use
US20170366595A1 (en) * 2014-11-18 2017-12-21 International Business Machines Corporation Software defined content delivery network for flexible, real-time management of large-scale data transfers

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116916048A (en) * 2023-09-07 2023-10-20 典基网络科技(上海)有限公司 Hybrid architecture, method, device and medium for streaming media transmission optimization
CN116916048B (en) * 2023-09-07 2023-11-17 典基网络科技(上海)有限公司 Hybrid architecture, method, device and medium for streaming media transmission optimization

Similar Documents

Publication Publication Date Title
US11539768B2 (en) System and method of minimizing network bandwidth retrieved from an external network
US8726327B2 (en) System and method for peer-to-peer live streaming
US9712408B2 (en) Bandwidth management in a content distribution network
JP5181031B2 (en) Resilient service quality within a managed multimedia distribution network
US10033548B2 (en) Method, system, service selection entity, and service management entity for selecting service provision entity
US20070083617A1 (en) Video on demand system and methods thereof
US11916743B2 (en) Profile generation for bandwidth management
US10284678B2 (en) Bandwidth management based on profiles
JP6523447B2 (en) Adaptive bit rate during broadcast transmission in distributed content delivery networks
Bentaleb et al. DQ-DASH: A queuing theory approach to distributed adaptive video streaming
Bruneau-Queyreix et al. Adding a new dimension to HTTP Adaptive Streaming through multiple-source capabilities
e Oliveira et al. Can peer-to-peer live streaming systems coexist with free riders?
US11805172B1 (en) File access service
RU2722464C1 (en) Method of expanding a cdn network using a peer-to-peer network
US8407280B2 (en) Asynchronous multi-source streaming
US11843649B2 (en) System and method of minimizing network bandwidth retrieved from an external network
Liang et al. ipass: Incentivized peer-assisted system for asynchronous streaming
CN113676739B (en) Video playing method, device, equipment and storage medium
JP2008085826A (en) Information transmitting apparatus, communication terminal device, information transmission program and information communication program
Garg et al. Improving QoS by enhancing media streaming algorithm in content delivery network
CN109688201B (en) Method, device, equipment and storage medium for replacing resource data acquisition object
Fouda et al. On supporting P2P-based VoD services over mesh overlay networks
US10158923B2 (en) Method of broadcasting contents by streaming in a peer-to-peer network
US20240179200A1 (en) System and method of minimizing network bandwidth retrieved from an external network
CN111416830A (en) Self-adaptive P2P streaming media data scheduling algorithm