CN110798691A - Live content uploading and acquiring method and device - Google Patents

Live content uploading and acquiring method and device Download PDF

Info

Publication number
CN110798691A
CN110798691A CN201810863920.4A CN201810863920A CN110798691A CN 110798691 A CN110798691 A CN 110798691A CN 201810863920 A CN201810863920 A CN 201810863920A CN 110798691 A CN110798691 A CN 110798691A
Authority
CN
China
Prior art keywords
server
node
upper node
cdn
time period
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201810863920.4A
Other languages
Chinese (zh)
Other versions
CN110798691B (en
Inventor
孙曦
郭建军
浮怀铎
戚剑锋
刘项
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongchang (hangzhou) Information Technology Co Ltd
China Mobile Communications Group Co Ltd
Original Assignee
Zhongchang (hangzhou) Information Technology Co Ltd
China Mobile Communications Group Co Ltd
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 Zhongchang (hangzhou) Information Technology Co Ltd, China Mobile Communications Group Co Ltd filed Critical Zhongchang (hangzhou) Information Technology Co Ltd
Priority to CN201810863920.4A priority Critical patent/CN110798691B/en
Publication of CN110798691A publication Critical patent/CN110798691A/en
Application granted granted Critical
Publication of CN110798691B publication Critical patent/CN110798691B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/10Architectures or entities
    • H04L65/1013Network architectures, gateways, control or user entities
    • 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/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses a live broadcast content uploading and acquiring method and device, which are used for solving the problem that the transmission quality cannot be ensured because the transmission route of the existing live broadcast link is inflexible. The CDN node edge server of the content delivery network sends a link connection request to a data analysis server; receiving IP address information of an upper node server distributed for the CDN node edge server returned by the data analysis server; the upper node servers are selected from the upper node servers of the CDN node edge servers according to a preset rule for the data analysis server according to a comprehensive service index value stored in advance between each upper node server of the CDN node edge servers and the CDN node edge servers within a set time period; and establishing a link with an upper node server corresponding to the IP address, and uploading live broadcast content to the upper node server according to the established link.

Description

Live content uploading and acquiring method and device
Technical Field
The invention relates to the technical field of communication, in particular to a live content uploading and acquiring method and device.
Background
With the development of internet technology, live webcasting is more and more concerned by people, and a connection is established between an existing live webcasting system and a Content Delivery Network (CDN) system to transmit live webcasting Content.
As shown in fig. 1, which is a schematic view of an existing live link architecture, an anchor obtains an IP (Internet Protocol) address of a nearby CDN node edge server through DNS (Domain Name System) resolution, pushes live content to the CDN node edge server, and the CDN node edge server fixedly pushes the live content to a plurality of upper node servers, where an upper node server is a convergence core for content convergence, transfer, and distribution, two upper node servers are illustrated in fig. 1 as an example, a user watching live broadcast obtains the IP address of the nearby CDN node edge server through DNS resolution, connects the CDN node edge servers, sends a request for obtaining live content, and the CDN node edge server obtains live content from a specified upper node server according to a preset line, in the live broadcast process, when a certain upper node server cannot serve, a backup upper node server is started, and new stream pushing requests and stream pulling requests are directed to the backup upper node server.
Since the live link in the prior art is preset, it is impossible to accurately monitor the change of live transmission quality caused by network change and performance change between each CDN node edge server and an upper node server, and it is impossible to comprehensively consider complex conditions to flexibly switch, and it is difficult to ensure the live transmission quality by only determining whether the availability of the upper node server is available or not by being able to provide a service.
Disclosure of Invention
In order to solve the problem that the transmission route of the existing live link is inflexible and cannot ensure the transmission quality, the embodiment of the invention provides a live content uploading and acquiring method and a live content uploading and acquiring device.
In a first aspect, an embodiment of the present invention provides a live content uploading method, including:
a CDN node edge server of a content delivery network sends a link connection request to a data analysis server;
receiving IP address information of an upper node server distributed for the CDN node edge server returned by the data analysis server; the upper node servers are selected from the upper node servers of the CDN node edge servers according to a preset rule for the data analysis server according to comprehensive service index values between the upper node servers of the CDN node edge servers and the CDN node edge servers in a set time period, wherein the comprehensive service index values are used for representing comprehensive service performance of the upper node servers of the CDN node edge servers for serving the CDN node edge servers;
and establishing a link with an upper node server corresponding to the IP address, and uploading live broadcast content to the upper node server according to the established link.
By adopting the live content uploading method provided by the embodiment of the invention, the data analysis server prestores comprehensive service index values between each upper node server of the CDN node edge server and the CDN node edge server within a set time period, the comprehensive service index values are used for representing the comprehensive service performance of the upper node servers of the CDN node edge server for serving the CDN node edge server, when live content of the CDN node edge server needs to be uploaded, the CDN node edge server sends a link connection request to the data analysis server, the data analysis server selects an upper node server from each upper node server to distribute to the CDN node edge server according to the prestored comprehensive service index values between each upper node server of the CDN node edge server and the CDN node edge server within the set time period according to a preset rule, and returning the allocated IP address information of the upper node server to the CDN node edge server, where the CDN node edge server establishes a link with an upper node server corresponding to the IP address, and uploads live content to the upper node server according to the established link, according to the live content upload method provided by the embodiment of the present invention, the live link is no longer a fixed set line, the connection between the CDN node edge server and the upper node server can be dynamically changed, the change in the comprehensive service performance of the upper node server is determined by monitoring, in real time, the change in transmission quality caused by the transmission performance between each CDN node edge server and its upper node server in different time periods, and the upper server connected to each CDN node edge server can be updated in different set time periods, thereby realizing selection of an optimal live content upload link in different time periods, the stability of the live broadcast network is ensured, the conditions of pause and cutoff of the live broadcast are avoided, and the transmission quality is improved.
Preferably, the integrated service index value between each upper node server of the CDN node edge server and the CDN node edge server is determined by the data analysis server according to the received transmission index value between the CDN node edge server and each upper node server thereof sent by each upper node server of the CDN node edge server within the set time period and the service index value of each upper node server within the set time period, where the transmission index value is used to characterize the transmission performance between the CDN node edge server and each upper node server, and the service index value is used to characterize the service performance of each upper node server.
Preferably, the integrated server index value is determined by the following formula:
R=P*m%+Q*n%
wherein, R represents the comprehensive service index value of an upper node server of the CDN node edge server;
p represents a transmission index value between the CDN node edge server and an upper node server;
q represents the service index value of an upper node server of the CDN node edge server in the set time period,
Figure BDA0001750441320000031
Qja service index value representing a node server at an upper layer of a jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
m% and n% represent weights.
Preferably, the transmission index value between the CDN node edge server and the upper node server is calculated by the following formula:
wherein, P represents a transmission index value between the CDN node edge server and an upper node server;
tiindicating the time for establishing the link between the CDN node edge server and the upper node server for the ith time within the set time period, wherein i is 1,2,. l, and l is a preset number of times;
and C represents the transmission rate between the CDN node edge server and the upper layer node server in the set time period.
Preferably, the service index value of the upper node server at each time node in the set time period is calculated by the following formula:
Figure BDA0001750441320000042
wherein Q isjA service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
Bbandwidth_left,jrepresenting the residual bandwidth of the upper node server at the jth time node in the set time period;
Bmax_bandwidth_left,jthe maximum value of the residual bandwidth of all upper node servers of the CDN node edge server at the jth time node in the set time period is represented;
Scpu_idle,jindicating the CPU available rate of the upper node server at the jth time node in the set time period;
Mmemory_left,jthe memory availability of the upper node server at the jth time node in the set time period is represented;
Nio_left,jand the data throughput usability rate of the upper node server at the j-th time node in the set time period is represented.
In a second aspect, an embodiment of the present invention provides a live content uploading apparatus, including:
a sending unit, configured to send a link connection request to a data analysis server;
a receiving unit, configured to receive IP address information of an upper node server allocated to the CDN node edge server, where the IP address information is returned by the data analysis server; the upper node servers are selected from the upper node servers of the CDN node edge servers according to a preset rule for the data analysis server according to comprehensive service index values stored in advance between the upper node servers of the CDN node edge servers and the CDN node edge servers within a set time period, wherein the comprehensive service index values are used for representing comprehensive service performance of the upper node servers of the CDN node edge servers for serving the CDN node edge servers;
and the uploading unit is used for establishing a link with the upper node server corresponding to the IP address and uploading the live broadcast content to the upper node server according to the established link.
Preferably, the integrated service index value between each upper node server of the CDN node edge server and the CDN node edge server is determined by the data analysis server according to the received transmission index value between the CDN node edge server and each upper node server thereof sent by each upper node server of the CDN node edge server within the set time period and the service index value of each upper node server within the set time period, where the transmission index value is used to characterize the transmission performance between the CDN node edge server and each upper node server, and the service index value is used to characterize the service performance of each upper node server.
Preferably, the integrated server index value is determined by the following formula:
R=P*m%+Q*n%
wherein, R represents the comprehensive service index value of an upper node server of the CDN node edge server;
p represents a transmission index value between the CDN node edge server and an upper node server;
q represents the service index value of an upper node server of the CDN node edge server in the set time period,
Figure BDA0001750441320000051
Qja service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
m% and n% represent weights.
Preferably, the transmission index value between the CDN node edge server and the upper node server is calculated by the following formula:
Figure BDA0001750441320000061
wherein, P represents a transmission index value between the CDN node edge server and an upper node server;
tiindicating the time for establishing the link between the CDN node edge server and the upper node server for the ith time within the set time period, wherein i is 1,2,. l, and l is a preset number of times;
and C represents the transmission rate between the CDN node edge server and the upper layer node server in the set time period.
Preferably, the service index value of the upper node server at each time node in the set time period is calculated by the following formula:
Figure BDA0001750441320000062
wherein Q isjA service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
Bbandwidth_left,jrepresenting the residual bandwidth of the upper node server at the jth time node in the set time period;
Bmax_bandwidth_left,jthe maximum value of the residual bandwidth of all upper node servers of the CDN node edge server at the jth time node in the set time period is represented;
Scpu_idle,jindicating the CPU available rate of the upper node server at the jth time node in the set time period;
Mmemory_left,jthe memory availability of the upper node server at the jth time node in the set time period is represented;
Nio_left,jand the data throughput usability rate of the upper node server at the j-th time node in the set time period is represented.
The technical effects of the live content uploading apparatus provided by the present invention can be seen in the technical effects of the first aspect or the implementation manners of the first aspect, which are not described herein again.
In a third aspect, an embodiment of the present invention provides a live content obtaining method, including:
a CDN node edge server of a content delivery network sends a live content acquisition request to a data analysis server;
receiving first IP address information of an upper node server distributed for the CDN node edge server, which is returned by the data analysis server; when the upper node server is the CDN node edge server as a push streaming CDN node edge server, the live content upload method of the first aspect is used to distribute the upper node server to the CDN node edge server within a set time period;
and acquiring the live broadcast content from an upper node server corresponding to the first IP address.
By adopting the live broadcast content acquisition method provided by the embodiment of the invention, when a user sends a request for acquiring the live broadcast content to a CDN node edge server, namely the CDN node edge server is used as a pull-stream CDN node edge server, the CDN node edge server sends the live broadcast content acquisition request to a data analysis server, the data analysis server allocates an upper node server allocated to the CDN node edge server within a set time period by using the live broadcast content uploading method of the first aspect of the embodiment of the invention when the CDN node edge server is used as a push-stream CDN node edge server, and returns IP address information of the upper node server allocated to the CDN node edge server as first IP address information, and the CDN node edge server acquires the content from the upper node server corresponding to the first IP address, according to the process, when a user needs to obtain live broadcast content through a CDN node edge server, the CDN node edge server is used as a pull-stream CDN node edge server, a data analysis server is used, an upper node server is distributed for the live broadcast content uploading method in the first aspect of the embodiment of the invention, an optimal live broadcast content downloading link is selected in different time periods, the stability of a live broadcast network is guaranteed, live broadcast blocking and flow cutoff conditions are avoided, and transmission quality is improved.
Optionally, the method further comprises:
when the upper node server is determined not to contain the live broadcast content, sending a secondary live broadcast content acquisition request to the data analysis server, wherein the secondary live broadcast content acquisition request carries information of failure in acquiring the live broadcast content;
receiving second IP address information of a new upper node server distributed for the CDN node edge server, which is returned by the data analysis server; the new upper node server is distributed after the data analysis server inquires from upper node servers connected according to a preset architecture, and the upper node servers connected according to the preset architecture are the upper node servers with the index values of the comprehensive servers in a set time period being larger than or equal to a preset threshold value;
and re-acquiring the live broadcast content from the new upper node server corresponding to the second IP address.
The selectable mode is characterized in that when the upper node server does not contain the requested live content, a CDN node edge server sends a secondary live content acquisition request to the data analysis server, where the secondary live content acquisition request carries information indicating that live content acquisition has failed, so as to notify the data analysis server that live content acquisition has failed, the data analysis server allocates a new upper node server to the CDN node edge server, and returns IP address information of the new upper node server to the CDN node edge server, where the IP address information of the new upper node server is recorded as second IP address information, and the CDN node edge server reacquires the live content from a new upper node server corresponding to the second IP address, where the new upper node server is an upper node server from which the data analysis server connects according to a preset framework within a set time period In the live content uploading method provided by the first aspect of the present invention, the data analysis server establishes network connection with an upper node server of a CDN node edge server having a composite service index value greater than or equal to a preset threshold value within a set time period according to a preset architecture, which may be a star network architecture or a ring network architecture, and according to the live content acquisition method provided by an embodiment of the present invention, calculates whether the upper node server is lower than a threshold value that can provide external services through data analysis, and excludes the upper node server from an upper node server network connected with the preset architecture if the upper node server is lower than the threshold value, when the upper node server distributed by the data analysis server for the pull stream CDN node edge server does not contain the requested live broadcast content, the upper node server containing the requested live broadcast content can be selected from an upper node server network connected according to a preset framework to be connected with the pull stream CDN node edge server, the requested live broadcast content is provided for a user, the preset framework can stably provide service, and transmission time is effectively shortened while transmission quality is provided.
In a fourth aspect, an embodiment of the present invention provides a live content acquiring apparatus, including:
a sending unit, configured to send a live content acquisition request to a data analysis server;
the receiving unit is used for receiving first IP address information of an upper node server distributed for the CDN node edge server, which is returned by the data analysis server; when the upper node server is the CDN node edge server and serves as a push-stream CDN node edge server, the live content upload method provided by the first aspect is used to distribute the upper node server to the CDN node edge server within a set time period;
and the acquisition unit is used for acquiring the live broadcast content from an upper node server corresponding to the first IP address.
Preferably, the sending unit is further configured to send a secondary live broadcast content obtaining request to the data analysis server when it is determined that the upper node server does not include the live broadcast content, where the secondary live broadcast content obtaining request carries information of a failure in obtaining live broadcast content;
the receiving unit is further configured to receive second IP address information of a new upper node server allocated to the CDN node edge server, where the second IP address information is returned by the data analysis server; the new upper node server is distributed after the data analysis server inquires from upper node servers connected according to a preset architecture, and the upper node servers connected according to the preset architecture are the upper node servers with the comprehensive server index value being larger than or equal to a preset threshold value;
the obtaining unit is further configured to obtain the live content again from a new upper node server corresponding to the second IP address.
The technical effects of the live content obtaining apparatus provided by the present invention can be seen in the third aspect or the technical effects of the implementation manners of the third aspect, which are not described herein again.
In a fifth aspect, an embodiment of the present invention provides a communication device, including a memory, a processor, and a computer program that is stored in the memory and is executable on the processor, where the processor implements a live content uploading method or a live content obtaining method according to the present invention when executing the program.
In a sixth aspect, an embodiment of the present invention provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the computer program implements the steps in the live content uploading method or the live content obtaining method according to the present invention.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the invention and not to limit the invention. In the drawings:
fig. 1 is a schematic diagram of a live link architecture in the prior art;
fig. 2 is a schematic view of an application scenario of a live content uploading and acquiring method according to an embodiment of the present invention;
fig. 3 is a schematic flow chart of an implementation of a live content uploading method according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a live content uploading apparatus according to an embodiment of the present invention;
fig. 5 is a schematic view of an implementation flow of a live content obtaining method according to an embodiment of the present invention;
fig. 6 is a schematic view of an implementation flow of acquiring live broadcast content when a distributed upper node server does not contain requested live broadcast content in the live broadcast content acquisition method according to the embodiment of the present invention;
fig. 7 is a schematic structural diagram of a live content acquiring apparatus according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of a communication device according to an embodiment of the present invention.
Detailed Description
In order to solve the problem that the transmission route of the existing live link is inflexible and cannot ensure the transmission quality, the embodiment of the invention provides a live content uploading and acquiring method and a live content uploading and acquiring device.
The implementation principle of the live content uploading method provided by the embodiment of the invention is as follows: in the live content uploading method provided by the embodiment of the invention, a data analysis server prestores comprehensive service index values between upper node servers of CDN node edge servers and the CDN node edge servers within a set time period, the comprehensive service index values are used for representing comprehensive service performance of the upper node servers of the CDN node edge servers for serving the CDN node edge servers, when live content of the CDN node edge servers needs to be uploaded, the CDN node edge servers send link connection requests to the data analysis server, the data analysis server selects an upper node server from the upper node servers to allocate to the CDN node edge servers according to the prestored comprehensive service index values between the upper node servers of the CDN node edge servers and the CDN node edge servers within the set time period, and returning the allocated IP address information of the upper node server to the CDN node edge server, where the CDN node edge server establishes a link with an upper node server corresponding to the IP address, and uploads live content to the upper node server according to the established link, according to the live content upload method provided by the embodiment of the present invention, the live link is no longer a fixed set line, the connection between the CDN node edge server and the upper node server can be dynamically changed, the change in the comprehensive service performance of the upper node server is determined by monitoring, in real time, the change in transmission quality caused by the transmission performance between each CDN node edge server and its upper node server in different time periods, and the upper server connected to each CDN node edge server can be updated in different set time periods, thereby realizing selection of an optimal live content upload link in different time periods, the stability of the live broadcast network is ensured, the conditions of pause and cutoff of the live broadcast are avoided, and the transmission quality is improved.
The preferred embodiments of the present invention will be described below with reference to the accompanying drawings of the specification, it being understood that the preferred embodiments described herein are merely for illustrating and explaining the present invention, and are not intended to limit the present invention, and that the embodiments and features of the embodiments in the present invention may be combined with each other without conflict.
Fig. 2 is a schematic view of an application scenario of a live content uploading and acquiring method according to an embodiment of the present invention. For each CDN node edge server 11, the data analysis server 13 obtains a transmission index between the CDN node edge server 11 and an upper node server 12 of the CDN node edge server 11 within a set time period, and a service index value of each upper node server 12 of the CDN node edge server 11 within the set time period, where the set time period, i.e., a time period, may be set by itself as needed, which is not limited in the embodiment of the present invention. The data analysis server 13 calculates and stores a comprehensive service index value of each upper node server 12 of the CDN node edge server 11 by using a preset algorithm according to the obtained transmission index value between the CDN node edge server 11 and each upper node server 12 and the service index value of each upper node server 12, when the CDN node edge server 11 needs to upload live content, that is, when the CDN node edge server 11 serves as a push-stream CDN node edge server 11, sends a link connection request to the data analysis server 13, the data analysis server 13 may allocate the upper node server 12 having the highest comprehensive service index value of each upper node server 12 of the CDN node edge server 11 in a set time period to the CDN node edge server 11, and the CDN node edge server 11 establishes a link with the allocated upper node server 12, and uploading the live broadcast content to the upper node server, wherein the set time period can be the last time period of the current time period. As shown in fig. 2, in the current time period, a CDN node edge server 11 connected to a client 10 of an anchor is a push-streaming CDN node edge server, a CDN node edge server 11 connected to a client 14 of an watching user is a pull-streaming CDN node edge server, after the anchor pushes live content to the push-streaming CDN node edge server through the client 10, the push-streaming CDN node edge server uploads the live content to an upper node server 12 connected to the push-streaming CDN node edge server and allocated by a data analysis server 13 within the set time period, the watching user sends a request for acquiring the live stream to the pull-streaming CDN node edge server through the client 14, the pull-streaming CDN node edge server acquires the live stream from an upper node server 12 connected to the pull-streaming CDN node edge server and allocated by the data analysis server 13 within the set time period, if the upper node server 12 connected to the pull-streaming CDN node edge server contains the requested live streaming, that is, the upper node server connected to the pull-streaming CDN node edge server and allocated by the data analysis server 13 in the set time period is the same server as the upper node server connected to the pull-streaming CDN node edge server and the upper server connected to the push-streaming CDN node edge server and allocated by the data analysis server 13, returning the live content to the pull-streaming CDN node edge server from the upper node server, and the pull-streaming CDN node edge server sending the live content to the client 14 of the user; if the upper node server 12 connected with the pull-stream CDN node edge server does not contain the requested live content, that is, if the upper node server connected with the pull-stream CDN node edge server and the upper node server connected with the push-stream CDN node edge server, which are allocated by the data analysis server 13 within the set time period, are not the same server, the upper node server 12 allocated with the requested live content is connected with the pull-stream CDN node edge server, and then the live content is returned from the upper node server to the pull-stream CDN node edge server, and the pull-stream CDN node edge server sends the live content to the client 14 of the user.
A live content upload method according to an exemplary embodiment of the present invention is described below with reference to fig. 3 in conjunction with the application scenario of fig. 2. It should be noted that the above application scenarios are only presented to facilitate understanding of the spirit and principles of the present invention, and the embodiments of the present invention are not limited in any way herein. Rather, embodiments of the present invention may be applied to any scenario where applicable.
As shown in fig. 3, which is a schematic view of an implementation flow of a live content uploading method provided by an embodiment of the present invention, the method may include the following steps:
and S21, the CDN node edge server sends a link connection request to the data analysis server.
S22, receiving IP address information of an upper node server distributed for the CDN node edge server returned by the data analysis server; the upper node servers are selected from the upper node servers of the CDN node edge servers according to preset rules for the data analysis server according to comprehensive service index values between the upper node servers of the CDN node edge servers and the CDN node edge servers within a set time period.
In this step, the integrated service index value is used to represent the integrated service performance of an upper node server of the CDN node edge server for serving the CDN node edge server.
In specific implementation, the data analysis server prestores comprehensive service index values between each upper-layer node server of the CDN node edge servers and the CDN node edge servers within a set time period, wherein the comprehensive service index value between each upper node server of the CDN node edge server and the CDN node edge server is determined by the data analysis server according to the received transmission index value between the CDN node edge server and each upper node server of the CDN node edge server sent by each upper node server of the CDN node edge server within the set time period and the service index value of each upper node server within the set time period, the transmission index value is used for representing the transmission performance between the CDN node edge server and the upper node server, and the service index value is used for representing the service performance of the upper node server.
Specifically, the embodiment of the present invention may calculate the transmission index value between the CDN node edge server and the upper node server thereof by using the following formula:
wherein, P represents a transmission index value between the CDN node edge server and an upper node server;
tiindicating the time for establishing the link between the CDN node edge server and the upper node server for the ith time within the set time period, wherein i is 1,2,. l, and l is a preset number of times;
and C represents the transmission rate between the CDN node edge server and the upper layer node server in the set time period.
Wherein the preset times can be set according to the requirement, for example, if l is 10, then
Figure BDA0001750441320000142
The expression is to take the average value of the time of establishing the link between the CDN node edge server and the upper node server 10 times in the set time period.
Preferably, the time t may be obtained by ping. ping, also called Internet packet explorer, is a program for testing network connection, and sends an ICMP (Internet Control Messages Protocol), an echo request message to a destination, and reports whether a desired ICMP echo (ICMP echo response) is received. The method is used for checking whether the network is unobstructed or the network connection speed, sending a data packet to a target IP address by using the uniqueness of the IP address of a machine on the network, and returning a data packet with the same size to the opposite side to determine whether two network machines are communicated or not and the time delay, namely the time for establishing the link between the two network machines.
The service index value of the upper node server served by the CDN node edge in the set time period can be calculated by the following formula:
Figure BDA0001750441320000151
wherein Q represents a service index value of an upper node server within the set time period; qjAnd a service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period. The number of time nodes can be set according to needs, and the embodiment of the invention does not limit the number.
Preferably, the service index value of the upper node server at each time node in the set time period may be calculated by the following formula:
Figure BDA0001750441320000152
wherein, Bbandwidth_left,jRepresenting the residual bandwidth of the upper node server at the jth time node in the set time period;
Bmax_bandwidth_left,jthe maximum value of the residual bandwidth of all upper node servers of the CDN node edge server at the jth time node in the set time period is represented;
Scpu_idle,jindicating the CPU available rate of the upper node server at the jth time node in the set time period;
Mmemory_left,jthe memory availability of the upper node server at the jth time node in the set time period is represented;
Nio_left,jindicating the second within the set period of timejData throughput availability of the upper node server for each time node.
Preferably, the data analysis server may calculate a composite service index value for the upper node server by the following formula:
R=P*m%+Q*n%
wherein, R represents the comprehensive service index value of the upper node server;
m% and n% represent weights.
In specific implementation, the values of m% and n% may be set according to the transmission index value between the CDN node edge server and the upper node server and the importance degree of the service index value of the upper node server, which is not limited in the embodiment of the present invention.
Further, when the comprehensive service index value of an upper node server of the CDN node edge server is smaller than a preset threshold value, the data analysis server determines that the upper node server does not provide service; and connecting the upper node servers of the CDN node edge servers with the preset threshold value or more according to a preset framework.
The preset architecture may be, but is not limited to, a star network architecture or a ring network architecture.
S23, establishing a link with the upper node server corresponding to the IP address, and uploading the live broadcast content to the upper node server according to the established link.
In specific implementation, preferably, the data analysis server may allocate, to the CDN node edge server in the current time period, an upper node server with the largest integrated service index value in the last set time period to be connected to the CDN node edge server, and use the upper node server as a live content upload link in the current time period.
In the live content uploading method provided by the embodiment of the invention, a data analysis server prestores comprehensive service index values between upper node servers of CDN node edge servers and the CDN node edge servers within a set time period, the comprehensive service index values are used for representing comprehensive service performance of the upper node servers of the CDN node edge servers for serving the CDN node edge servers, when live content of the CDN node edge servers needs to be uploaded, the CDN node edge servers send link connection requests to the data analysis server, the data analysis server selects an upper node server from the upper node servers to allocate to the CDN node edge servers according to the prestored comprehensive service index values between the upper node servers of the CDN node edge servers and the CDN node edge servers within the set time period, and returning the allocated IP address information of the upper node server to the CDN node edge server, where the CDN node edge server establishes a link with an upper node server corresponding to the IP address, and uploads live content to the upper node server according to the established link, according to the live content upload method provided by the embodiment of the present invention, the live link is no longer a fixed set line, the connection between the CDN node edge server and the upper node server can be dynamically changed, the change in the comprehensive service performance of the upper node server is determined by monitoring, in real time, the change in transmission quality caused by the transmission performance between each CDN node edge server and its upper node server in different time periods, and the upper server connected to each CDN node edge server can be updated in different set time periods, thereby realizing selection of an optimal live content upload link in different time periods, the stability of the live broadcast network is ensured, the conditions of pause and cutoff of the live broadcast are avoided, and the transmission quality is improved.
Based on the same inventive concept, the embodiment of the invention also provides a live content uploading device, and as the principle of solving the problem of the live content uploading device is similar to the live content uploading method, the implementation of the device can refer to the implementation of the method, and repeated parts are not described again.
As shown in fig. 4, which is a schematic structural diagram of a live content uploading apparatus provided in an embodiment of the present invention, the live content uploading apparatus may include:
a transmitting unit 31 for transmitting a link connection request to the data analysis server;
a receiving unit 32, configured to receive the IP address information of the upper node server allocated to the CDN node edge server, where the IP address information is returned by the data analysis server; the upper node servers are selected from the upper node servers of the CDN node edge servers according to a preset rule for the data analysis server according to comprehensive service index values stored in advance between the upper node servers of the CDN node edge servers and the CDN node edge servers within a set time period, wherein the comprehensive service index values are used for representing comprehensive service performance of the upper node servers of the CDN node edge servers for serving the CDN node edge servers;
and an uploading unit 33, configured to establish a link with an upper node server corresponding to the IP address, and upload live content to the upper node server according to the established link.
Preferably, the integrated service index value between each upper node server of the CDN node edge server and the CDN node edge server is determined by the data analysis server according to the received transmission index value between the CDN node edge server and each upper node server thereof sent by each upper node server of the CDN node edge server within the set time period and the service index value of each upper node server within the set time period, where the transmission index value is used to characterize the transmission performance between the CDN node edge server and each upper node server, and the service index value is used to characterize the service performance of each upper node server.
Preferably, the integrated server index value is determined by the following formula:
R=P*m%+Q*n%
wherein, R represents the comprehensive service index value of an upper node server of the CDN node edge server;
p represents a transmission index value between the CDN node edge server and an upper node server;
q represents the service index value of an upper node server of the CDN node edge server in the set time period,
Figure BDA0001750441320000181
Qja service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
m% and n% represent weights.
Preferably, the transmission index value between the CDN node edge server and the upper node server is calculated by the following formula:
Figure BDA0001750441320000182
wherein, P represents a transmission index value between the CDN node edge server and an upper node server;
tiindicating the time for establishing the link between the CDN node edge server and the upper node server for the ith time within the set time period, wherein i is 1,2,. l, and l is a preset number of times;
and C represents the transmission rate between the CDN node edge server and the upper layer node server in the set time period.
Preferably, the service index value of the upper node server at each time node in the set time period is calculated by the following formula:
Figure BDA0001750441320000191
wherein Q isjA service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
Bbandwidth_left,jrepresenting the residual bandwidth of the upper node server at the jth time node in the set time period;
Bmax_bandwidth_left,jthe maximum value of the residual bandwidth of all upper node servers of the CDN node edge server at the jth time node in the set time period is represented;
Scpu_idle,jindicating the CPU available rate of the upper node server at the jth time node in the set time period;
Mmemory_left,jthe memory availability of the upper node server at the jth time node in the set time period is represented;
Nio_left,jand the data throughput usability rate of the upper node server at the j-th time node in the set time period is represented.
As shown in fig. 5, an implementation flow diagram of the live content obtaining method provided in the embodiment of the present invention may include the following steps:
and S41, the CDN node edge server sends a live content acquisition request to the data analysis server.
In specific implementation, a user sends a request for acquiring the live content to a CDN node edge server through a client, that is, the CDN node edge server serves as a pull-stream CDN node edge server, and the CDN node edge server sends the request for acquiring the live content to a data analysis server.
And S42, receiving first IP address information of an upper node server distributed for the CDN node edge server, which is returned by the data analysis server.
In specific implementation, when the upper node server is the CDN node edge server and serves as a push streaming CDN node edge server, the live content uploading method provided by the embodiment of the present invention is used to allocate the upper node server to the CDN node edge server within a set time period. Preferably, the set time period may be a time period previous to the current time period.
And S43, acquiring the live broadcast content from the upper node server corresponding to the first IP address.
In specific implementation, the CDN node edge server establishes a link with an upper node server corresponding to the first IP address according to the first IP address, and obtains requested live content from the upper node server.
However, when the requested live content is not contained in the upper node server, the live content may be obtained according to the implementation flow diagram shown in fig. 6, which may include the following steps:
and S51, sending a secondary live broadcast content acquisition request to the data analysis server, wherein the secondary live broadcast content acquisition request carries information of failure in acquiring live broadcast content.
In specific implementation, when the upper node server does not contain the requested live content, the CDN node edge server sends a secondary live content acquisition request to the data analysis server, where the secondary live content acquisition request carries information indicating that acquiring the live content fails, so as to notify the data analysis server that acquiring the live content fails.
And S52, receiving second IP address information of a new upper node server distributed for the CDN node edge server, which is returned by the data analysis server.
In this step, the new upper node server is allocated by the data analysis server after being queried from upper node servers connected according to a preset architecture, and the upper node server connected according to the preset architecture is an upper node server in which an index value of the integrated server within a set time period is greater than or equal to a preset threshold value.
Specifically, the data analysis server allocates a new upper node server to the CDN node edge server, and returns IP address information of the new upper node server to the CDN node edge server, where the IP address information of the new upper node server is recorded as second IP address information, where the new upper node server is allocated by the data analysis server after querying from upper node servers connected according to a preset architecture within the set time period, and the upper node server connected according to the preset architecture is an upper node server whose integrated server index value is greater than or equal to a preset threshold within the set time period, and in the live content uploading method provided by the first aspect of the present invention, the data analysis server establishes network connection according to the preset architecture with the upper node server whose integrated service index value is greater than or equal to the preset threshold within the set time period, the preset architecture may be a star network architecture or a ring network architecture, and the upper node servers lower than the preset threshold are determined as not providing services for the CDN node edge server, and are excluded from the network connection established according to the preset architecture. The new upper node server is the upper node server which is inquired by the data analysis server from the upper node server network connected according to the preset architecture and contains the requested live broadcast content.
And S53, retrieving the live broadcast content from the new upper node server corresponding to the second IP address.
In specific implementation, the CDN node edge server reacquires the live content from the new upper node server corresponding to the CDN node edge server according to the second IP address.
In the live content acquiring method provided by the embodiment of the present invention, a data analysis server calculates in advance, through data analysis, whether an integrated service index value of an upper node server within a set time period is lower than a threshold value capable of providing an external service, if the integrated service index value is lower than the threshold value, the upper node server is excluded from an upper node server network connected by a preset framework, the upper node server greater than or equal to the preset threshold value is connected according to the preset framework, and when the upper node server allocated by the data analysis server for a pull-streaming CDN node edge server does not contain requested live content, the upper node server containing the requested live content can be selected from the upper node server network connected by the preset framework to be connected to the pull-streaming CDN node edge server, so as to provide the requested content to a user, the preset architecture can stably provide services, and effectively shorten the transmission time while providing the transmission quality.
Based on the same inventive concept, the embodiment of the present invention further provides a live content obtaining apparatus, and as the principle of solving the problem of the live content obtaining apparatus is similar to that of the live content obtaining method, the implementation of the apparatus can refer to the implementation of the method, and repeated details are not repeated.
As shown in fig. 7, which is a schematic structural diagram of a live content acquiring apparatus according to an embodiment of the present invention, the live content acquiring apparatus may include:
a sending unit 61, configured to send a live content acquisition request to a data analysis server;
a receiving unit 62, configured to receive first IP address information of an upper node server allocated to the CDN node edge server, where the first IP address information is returned by the data analysis server; when the upper node server is the CDN node edge server and serves as a plug-flow CDN node edge server, the live broadcast content uploading method provided by the embodiment of the invention is utilized to distribute the upper node server for the CDN node edge server within a set time period;
an obtaining unit 63, configured to obtain the live content from an upper node server corresponding to the first IP address.
Preferably, the sending unit 61 is further configured to send a secondary live broadcast content obtaining request to the data analysis server when it is determined that the upper node server does not include the live broadcast content, where the secondary live broadcast content obtaining request carries information of a failure in obtaining live broadcast content;
the receiving unit 62 is further configured to receive second IP address information of a new upper node server allocated to the CDN node edge server, where the second IP address information is returned by the data analysis server; the new upper node server is distributed after the data analysis server inquires from upper node servers connected according to a preset architecture, and the upper node servers connected according to the preset architecture are the upper node servers with the comprehensive server index value being larger than or equal to a preset threshold value;
the obtaining unit 63 is further configured to obtain the live content again from a new upper node server corresponding to the second IP address.
Based on the same technical concept, an embodiment of the present invention further provides a communication device 700, and referring to fig. 8, the communication device 700 is configured to implement the live content uploading method or the live content obtaining method described in the foregoing method embodiment, where the communication device 700 of this embodiment may include: a memory 701, a processor 702, and a computer program, such as a live content upload program or a live content acquisition program, stored in the memory and executable on the processor. The processor, when executing the computer program, implements the steps in the above-described embodiments of the live content uploading method, for example, step S21 shown in fig. 3. Alternatively, the processor, when executing the computer program, implements the functions of the modules/units in the above-described device embodiments, for example, 31. Alternatively, the processor, when executing the computer program, implements the steps in each of the above embodiments of the live content acquiring method, for example, step S41 shown in fig. 5. Alternatively, the processor, when executing the computer program, implements the functions of the modules/units in the above-described device embodiments, for example 61.
The embodiment of the present invention does not limit the specific connection medium between the memory 701 and the processor 702. In the embodiment of the present application, the memory 701 and the processor 702 are connected by the bus 703 in fig. 8, the bus 703 is indicated by a thick line in fig. 8, and the connection manner between other components is merely schematically illustrated and is not limited thereto. The bus 703 may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 8, but this is not intended to represent only one bus or type of bus.
The memory 701 may be a volatile memory (volatile memory), such as a random-access memory (RAM); the memory 701 may also be a non-volatile memory (non-volatile) such as, but not limited to, a read-only memory (rom), a flash memory (flash memory), a Hard Disk Drive (HDD) or a solid-state drive (SSD), or the memory 401 may be any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Memory 701 may be a combination of the above.
A processor 702, configured to implement a live content uploading method shown in fig. 3, includes:
the processor 702 is configured to invoke the computer program stored in the memory 701 to execute step S21 shown in fig. 3, where the CDN node edge server sends a link connection request to the data analysis server, and step S22 receives IP address information of an upper node server allocated to the CDN node edge server and returned by the data analysis server; the upper node server establishes a link with the upper node server corresponding to the IP address in step S23, and uploads live broadcast content to the upper node server according to the established link, where the upper node server is selected by the data analysis server from each upper node server of the CDN node edge server according to a preset rule according to a comprehensive service index value between each upper node server of the CDN node edge server and the CDN node edge server within a set time period.
Or the processor 702, configured to implement a live content obtaining method shown in fig. 5, where the live content obtaining method includes:
the processor 702 is configured to call the computer program stored in the memory 701 to execute step S41 shown in fig. 5, where the CDN node edge server sends a request for obtaining live content to a data analysis server, and step S42 receives first IP address information of an upper node server allocated to the CDN node edge server and returned by the data analysis server, and step S43 obtains the live content from the upper node server corresponding to the first IP address.
The embodiment of the present application further provides a computer-readable storage medium, which stores computer-executable instructions required to be executed by the processor, and includes a program required to be executed by the processor.
In some possible embodiments, aspects of the live content upload method provided by the present invention may also be implemented in the form of a program product, which includes program code for causing a communication device to execute the steps in the live content upload method according to various exemplary embodiments of the present invention described above in this specification when the program product runs on the communication device, for example, the communication device may execute step S21 shown in fig. 3, where the CDN node edge server sends a link connection request to a data analysis server, and step S22 receives IP address information of an upper node server allocated to the CDN node edge server and returned by the data analysis server; the upper node server establishes a link with the upper node server corresponding to the IP address in step S23, and uploads live broadcast content to the upper node server according to the established link, where the upper node server is selected by the data analysis server from each upper node server of the CDN node edge server according to a preset rule according to a comprehensive service index value between each upper node server of the CDN node edge server and the CDN node edge server within a set time period. Alternatively, the program code is configured to enable the communication device to execute the steps in the live content obtaining method according to various exemplary embodiments of the present invention described above in this specification, for example, the communication device may execute step S41 shown in fig. 5, where the CDN node edge server sends a live content obtaining request to the data analysis server, step S42 receives the first IP address information of the upper node server allocated to the CDN node edge server and returned by the data analysis server, and step S43, obtains the live content from the upper node server corresponding to the first IP address.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
A program product for live content upload or live content acquisition of embodiments of the present invention may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be run on a computing device. However, the program product of the present invention is not limited in this regard and, in the present document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A readable signal medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device over any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., over the internet using an internet service provider).
It should be noted that although several units or sub-units of the apparatus are mentioned in the above detailed description, such division is merely exemplary and not mandatory. Indeed, the features and functions of two or more of the units described above may be embodied in one unit, according to embodiments of the invention. Conversely, the features and functions of one unit described above may be further divided into embodiments by a plurality of units.
Moreover, while the operations of the method of the invention are depicted in the drawings in a particular order, this does not require or imply that the operations must be performed in this particular order, or that all of the illustrated operations must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (devices), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (16)

1. A live content uploading method is characterized by comprising the following steps:
a CDN node edge server of a content delivery network sends a link connection request to a data analysis server;
receiving IP address information of an upper node server distributed for the CDN node edge server returned by the data analysis server; the upper node servers are selected from the upper node servers of the CDN node edge servers according to a preset rule for the data analysis server according to comprehensive service index values stored in advance between the upper node servers of the CDN node edge servers and the CDN node edge servers within a set time period, wherein the comprehensive service index values are used for representing comprehensive service performance of the upper node servers of the CDN node edge servers for serving the CDN node edge servers;
and establishing a link with an upper node server corresponding to the IP address, and uploading live broadcast content to the upper node server according to the established link.
2. The method of claim 1, wherein a comprehensive service index value between each upper node server of the CDN node edge servers and the CDN node edge server is determined by the data analysis server according to a received transmission index value between the CDN node edge server and each upper node server thereof sent by each upper node server of the CDN node edge servers within the set time period, and a received service index value of each upper node server within the set time period, wherein the transmission index value is used to characterize transmission performance between the CDN node edge server and each upper node server, and the service index value is used to characterize service performance of each upper node server.
3. The method of claim 1 or 2, wherein the composite server indicator value is determined by the formula:
R=P*m%+Q*n%
wherein, R represents the comprehensive service index value of an upper node server of the CDN node edge server;
p represents a transmission index value between the CDN node edge server and an upper node server;
q represents the service index value of an upper node server of the CDN node edge server in the set time period,Qja service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
m% and n% represent weights.
4. The method of claim 3, wherein the transmission index value between the CDN node edge server and its upper node servers is calculated by the following formula:
wherein, P represents a transmission index value between the CDN node edge server and an upper node server;
tiindicating the time for establishing the link between the CDN node edge server and the upper node server for the ith time within the set time period, wherein i is 1,2,. l, and l is a preset number of times;
and C represents the transmission rate between the CDN node edge server and the upper layer node server in the set time period.
5. The method of claim 3, wherein the service index value of the upper node server at each time node within the set time period is calculated by the following formula:
Figure FDA0001750441310000023
wherein Q isjA service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
Bbandwidth_left,jrepresenting the residual bandwidth of the upper node server at the jth time node in the set time period;
Bmax_bandwidth_left,jthe maximum value of the residual bandwidth of all upper node servers of the CDN node edge server at the jth time node in the set time period is represented;
Scpu_idle,jindicating the CPU available rate of the upper node server at the jth time node in the set time period;
Mmemory_left,jthe memory availability of the upper node server at the jth time node in the set time period is represented;
Nio_left,jand the data throughput usability rate of the upper node server at the j-th time node in the set time period is represented.
6. A live content uploading apparatus, comprising:
a sending unit, configured to send a link connection request to a data analysis server;
a receiving unit, configured to receive IP address information of an upper node server allocated to the CDN node edge server, where the IP address information is returned by the data analysis server; the upper node servers are selected from the upper node servers of the CDN node edge servers according to a preset rule for the data analysis server according to comprehensive service index values stored in advance between the upper node servers of the CDN node edge servers and the CDN node edge servers within a set time period, wherein the comprehensive service index values are used for representing comprehensive service performance of the upper node servers of the CDN node edge servers for serving the CDN node edge servers;
and the uploading unit is used for establishing a link with the upper node server corresponding to the IP address and uploading the live broadcast content to the upper node server according to the established link.
7. The apparatus of claim 6, wherein a comprehensive service index value between each upper node server of the CDN node edge servers and the CDN node edge server is determined by the data analysis server according to a received transmission index value between the CDN node edge server and each upper node server thereof sent by each upper node server of the CDN node edge servers within the set time period, and a received service index value of each upper node server within the set time period, wherein the transmission index value is used to characterize transmission performance between the CDN node edge server and each upper node server, and the service index value is used to characterize service performance of each upper node server.
8. The apparatus of claim 6 or 7, wherein the composite server indicator value is determined by the formula:
R=P*m%+Q*n%
wherein, R represents the comprehensive service index value of an upper node server of the CDN node edge server;
p represents a transmission index value between the CDN node edge server and an upper node server;
q represents CDN node edge service in the set time periodThe service index value of the upper node server of the device,
Figure FDA0001750441310000041
Qja service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
m% and n% represent weights.
9. The apparatus of claim 8, wherein the transmission index value between the CDN node edge server and its upper node servers is calculated by:
Figure FDA0001750441310000042
wherein, P represents a transmission index value between the CDN node edge server and an upper node server;
tiindicating the time for establishing the link between the CDN node edge server and the upper node server for the ith time within the set time period, wherein i is 1,2,. l, and l is a preset number of times;
and C represents the transmission rate between the CDN node edge server and the upper layer node server in the set time period.
10. The apparatus of claim 8, wherein the service index value of the upper node server at each time node within the set period of time is calculated by the following formula:
Figure FDA0001750441310000043
wherein Q isjA service index value representing the upper node server at the jth time node in the set time period, wherein j is 1,2.. q, and q is the number of the time nodes in the set time period;
Bbandwidth_left,jrepresenting the residual bandwidth of the upper node server at the jth time node in the set time period;
Bmax_bandwidth_left,jthe maximum value of the residual bandwidth of all upper node servers of the CDN node edge server at the jth time node in the set time period is represented;
Scpu_idle,jindicating the CPU available rate of the upper node server at the jth time node in the set time period;
Mmemory_left,jthe memory availability of the upper node server at the jth time node in the set time period is represented;
Nio_left,jand the data throughput usability rate of the upper node server at the j-th time node in the set time period is represented.
11. A live content acquisition method is characterized by comprising the following steps:
a CDN node edge server of a content delivery network sends a live content acquisition request to a data analysis server;
receiving first IP address information of an upper node server distributed for the CDN node edge server, which is returned by the data analysis server; when the upper node server is the CDN node edge server and serves as a plug-flow CDN node edge server, the upper node server is distributed for the CDN node edge server within a set time period by using the live broadcast content uploading method according to any one of claims 1 to 5;
and acquiring the live broadcast content from an upper node server corresponding to the first IP address.
12. The method of claim 11, further comprising:
when the upper node server is determined not to contain the live broadcast content, sending a secondary live broadcast content acquisition request to the data analysis server, wherein the secondary live broadcast content acquisition request carries information of failure in acquiring the live broadcast content;
receiving second IP address information of a new upper node server distributed for the CDN node edge server, which is returned by the data analysis server; the new upper node server is distributed after the data analysis server inquires from upper node servers connected according to a preset architecture, and the upper node servers connected according to the preset architecture are the upper node servers with the comprehensive server index value being larger than or equal to a preset threshold value;
and re-acquiring the live broadcast content from the new upper node server corresponding to the second IP address.
13. A live content acquisition apparatus, comprising:
a sending unit, configured to send a live content acquisition request to a data analysis server;
the receiving unit is used for receiving first IP address information of an upper node server distributed for the CDN node edge server, which is returned by the data analysis server; when the upper node server is the CDN node edge server and serves as a plug-flow CDN node edge server, the upper node server is distributed for the CDN node edge server within a set time period by using the live broadcast content uploading method according to any one of claims 1 to 5;
and the acquisition unit is used for acquiring the live broadcast content from an upper node server corresponding to the first IP address.
14. The apparatus of claim 13,
the sending unit is further configured to send a secondary live broadcast content obtaining request to the data analysis server when it is determined that the upper node server does not contain the live broadcast content, where the secondary live broadcast content obtaining request carries information of a failure in obtaining live broadcast content;
the receiving unit is further configured to receive second IP address information of a new upper node server allocated to the CDN node edge server, where the second IP address information is returned by the data analysis server; the new upper node server is distributed after the data analysis server inquires from upper node servers connected according to a preset architecture, and the upper node servers connected according to the preset architecture are the upper node servers with the comprehensive server index value being larger than or equal to a preset threshold value;
the obtaining unit is further configured to obtain the live content again from a new upper node server corresponding to the second IP address.
15. A communication device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements a live content upload method according to any one of claims 1 to 5 or a live content acquisition method according to any one of claims 11 to 12 when executing the program.
16. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, implements the steps in the live content uploading method of any one of claims 1 to 5 or the live content obtaining method of any one of claims 11 to 12.
CN201810863920.4A 2018-08-01 2018-08-01 Live content uploading and acquiring method and device Active CN110798691B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810863920.4A CN110798691B (en) 2018-08-01 2018-08-01 Live content uploading and acquiring method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810863920.4A CN110798691B (en) 2018-08-01 2018-08-01 Live content uploading and acquiring method and device

Publications (2)

Publication Number Publication Date
CN110798691A true CN110798691A (en) 2020-02-14
CN110798691B CN110798691B (en) 2021-11-09

Family

ID=69425389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810863920.4A Active CN110798691B (en) 2018-08-01 2018-08-01 Live content uploading and acquiring method and device

Country Status (1)

Country Link
CN (1) CN110798691B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111263171A (en) * 2020-02-25 2020-06-09 北京达佳互联信息技术有限公司 Live streaming media data acquisition method and edge node area networking system
CN111479161A (en) * 2020-04-15 2020-07-31 广州虎牙科技有限公司 Live broadcast quality data reporting method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102231749A (en) * 2011-08-12 2011-11-02 乐视网信息技术(北京)股份有限公司 System and method for transmitting live stream by utilizing content delivery network (CDN)
CN105072506A (en) * 2015-08-20 2015-11-18 湖南亿谷科技发展股份有限公司 Method and system for transmitting teaching live video
CN105681387A (en) * 2015-11-26 2016-06-15 乐视云计算有限公司 Method, device and system for uploading live video
WO2017088381A1 (en) * 2015-11-26 2017-06-01 乐视控股(北京)有限公司 Method, apparatus and system for playing live video

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102231749A (en) * 2011-08-12 2011-11-02 乐视网信息技术(北京)股份有限公司 System and method for transmitting live stream by utilizing content delivery network (CDN)
CN105072506A (en) * 2015-08-20 2015-11-18 湖南亿谷科技发展股份有限公司 Method and system for transmitting teaching live video
CN105681387A (en) * 2015-11-26 2016-06-15 乐视云计算有限公司 Method, device and system for uploading live video
US20170155695A1 (en) * 2015-11-26 2017-06-01 Le Holdings (Beijing) Co., Ltd. Method, device and system for uploading live video
WO2017088381A1 (en) * 2015-11-26 2017-06-01 乐视控股(北京)有限公司 Method, apparatus and system for playing live video

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111263171A (en) * 2020-02-25 2020-06-09 北京达佳互联信息技术有限公司 Live streaming media data acquisition method and edge node area networking system
CN111479161A (en) * 2020-04-15 2020-07-31 广州虎牙科技有限公司 Live broadcast quality data reporting method and device

Also Published As

Publication number Publication date
CN110798691B (en) 2021-11-09

Similar Documents

Publication Publication Date Title
KR102514250B1 (en) Method, Apparatus and System for Selecting a Mobile Edge Computing Node
US9826016B2 (en) Fair adaptive streaming
WO2017088384A1 (en) Method, apparatus and system for uploading live video
CN102281190B (en) Networking method for load balancing apparatus, server and client access method
US8990429B2 (en) HTTP-based synchronization method and apparatus
US10924533B2 (en) System, apparatus and method for load balancing
US11463505B2 (en) Server-side prediction of media client steady state
US20180091631A1 (en) Systems and methods for writing prioritized http/2 data to a socket buffer
CN110798691B (en) Live content uploading and acquiring method and device
CN110958279B (en) Data processing method and device
US11190430B2 (en) Determining the bandwidth of a communication link
US10764402B2 (en) Leveraging time-windows generated by web browser pre-connections
US11546408B2 (en) Client-side measurement of computer network conditions
CN105554116A (en) Remote interconnection method and system for UPnP (Universal Plug and Play) equipment
JP6200870B2 (en) Data transfer control device, method and program
US10951501B1 (en) Monitoring availability of content delivery networks
JP2017038297A (en) Communication device, communication method and communication system
Mekuria et al. Kpi mapping for virtual infrastructure scaling for a realistic video streaming service deployment
KR101627796B1 (en) Device Indicator Data Transmitting Method for Network based AV System
KR101074465B1 (en) Method and apparatus for controlling traffic by cooperating with peer
JP6348377B2 (en) Communication device and program for content distribution network
RU2021106353A (en) USER GROUP SESSION MANAGEMENT METHOD AND DEVICE
CN105704194A (en) Remote control method, customer service terminal, user terminal and system
Rahman et al. Evaluating the Implementation of NFD, MW-NFD, and YaNFD in NDN-Base Video Streaming System
EP3499835A1 (en) Data processing apparatus, method, and program, for handling data streams in a data communications network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant