Control method, device, and apparatus for content distribution node, and storage medium
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BYTEDANCE TECHNOLOGY CO LTD
- Filing Date
- 2025-03-13
- Publication Date
- 2026-06-16
AI Technical Summary
How to accurately control network traffic at each content delivery node in a content delivery network to balance quality of experience (QoE) and return on investment (ROI), especially to reduce operating costs during peak network traffic periods.
By predicting the network traffic of content distribution nodes within a predetermined time period, the content distribution mode is determined, and during peak traffic periods, the content items to be transmitted in advance are restricted, while the content items currently accessed are prioritized for transmission, thereby reducing peak network traffic.
It effectively reduces peak network traffic, ensures user experience quality, reduces operating costs, and improves return on investment.
Smart Images

Figure CN122228653A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Example embodiments of the present disclosure generally relate to the field of computers, and in particular, to a control method, apparatus, device, computer-readable storage medium, and computer-executable instruction product of a content distribution node. BACKGROUND
[0002] With the development of Internet information technology, network content has become an important carrier for information dissemination, entertainment and leisure, and commercial activities. In order to improve the loading speed of network content and shorten the loading time, some providers of network content choose to use a content distribution network (CDN) system for content distribution. The CDN system is usually charged according to the network traffic (e.g., downlink network traffic) generated by the provider. In this case, it is necessary to control the network traffic to balance the quality of experience (QoE) and return on investment (ROI). SUMMARY
[0003] In a first aspect of the present disclosure, a control method of a content distribution node is provided. The method comprises: determining a predicted network traffic of the content distribution node within a predetermined time period; determining a content distribution mode of the content distribution node within the predetermined time period based on the predicted network traffic, wherein the content distribution mode comprises at least a first mode; based on determining that the content distribution mode of the content distribution node is the first mode and receiving a content access request from a terminal device, transmitting, by the content distribution node, a first content item corresponding to the content access request to the terminal device, and limiting the content distribution node from transmitting at least one second content item to be presented after the first content item to the terminal device.
[0004] In a second aspect of the present disclosure, an apparatus for content distribution node control is provided. The apparatus comprises: a prediction module configured to determine a predicted network traffic of the content distribution node within a predetermined time period; a determination module configured to determine a content distribution mode of the content distribution node within the predetermined time period based on the predicted network traffic, wherein the content distribution mode comprises at least a first mode; a control module configured to, based on determining that the content distribution mode of the content distribution node is the first mode and receiving a content access request from a terminal device, transmit, by the content distribution node, a first content item corresponding to the content access request to the terminal device, and limit the content distribution node from transmitting at least one second content item to be presented after the first content item to the terminal device.
[0005] In a third aspect of the present disclosure, an electronic device is provided. The device comprises at least one processor; and at least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor. The instructions, when executed by the at least one processor, cause the device to perform the method of the first aspect.
[0006] In a fourth aspect of this disclosure, a computer-readable storage medium is provided. The computer-readable storage medium stores computer-executable instructions that can be executed by a processor to implement the method of the first aspect.
[0007] In a fifth aspect of this disclosure, a computer program product is provided, including computer-executable instructions, wherein when executed by a processor, the computer-executable instructions implement the method according to a first aspect of this disclosure.
[0008] It should be understood that the content described in this content section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0009] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein: Figure 1 A schematic diagram is shown of an example environment in which embodiments of the present disclosure may be implemented; Figure 2 A flowchart illustrating the control process of a content distribution node according to some embodiments of the present disclosure is shown; Figure 3 A schematic structural block diagram of an example apparatus for content distribution node control according to some embodiments of the present disclosure is shown; and Figure 4 A block diagram of an electronic device capable of implementing several embodiments of the present disclosure is shown. Detailed Implementation
[0010] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0011] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below.
[0012] In this document, unless explicitly stated otherwise, performing a step in response to A does not mean that the step is performed immediately after A, but may include one or more intermediate steps.
[0013] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0014] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure through appropriate means in accordance with relevant laws and regulations, and user authorization should be obtained.
[0015] For example, in response to receiving a user's active request, a prompt message is sent to the user to clearly inform the user that the requested operation will require the acquisition and use of the user's personal information, thereby enabling the user to choose whether to provide personal information to the software or hardware such as electronic devices, applications, servers or storage media that perform the operation of the technical solution disclosed herein, based on the prompt message.
[0016] As an optional but non-restrictive implementation, in response to a user's active request, a prompt message can be sent to the user, such as a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0017] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.
[0018] As used in this paper, the term "model" refers to a model that learns the relationship between inputs and outputs from training data, enabling it to generate corresponding outputs for a given input after training. Model generation can be based on machine learning techniques. Deep learning is a machine learning algorithm that processes inputs and provides corresponding outputs using multiple layers of processing units. A neural network model is an example of a deep learning-based model. In this paper, "model" may also be referred to as a "machine learning model," "learning model," "machine learning network," or "learning network," and these terms are used interchangeably.
[0019] A neural network is a machine learning network based on deep learning. A neural network processes input and provides a corresponding output, typically consisting of an input layer, an output layer, and one or more hidden layers between the input and output layers. Neural networks used in deep learning applications often include many hidden layers, thus increasing the network's depth. The layers of a neural network are connected sequentially, so that the output of the previous layer is provided as the input to the next layer. The input layer receives the input to the neural network, while the output layer's output serves as the final output. Each layer of a neural network includes one or more nodes (also called processing nodes or neurons), each node processing the input from the layer above.
[0020] As mentioned above, with the development of internet information technology, online content has become an important carrier for information dissemination, entertainment, and commercial activities. To improve the loading speed and shorten loading time of online content, some online content providers choose to utilize Content Delivery Network (CDN) systems for content distribution. CDN systems typically charge based on the network traffic generated by the provider (e.g., downlink network traffic).
[0021] Peak bandwidth (P95) billing is a mainstream billing method for CDN systems. It operates on a monthly cycle, collecting the provider's downlink network traffic every 5 minutes, resulting in 288 sampling points per day and 288 * (the number of billing days in the month) sampling points per month. All sampling points are sorted from highest to lowest downlink network traffic, and the top 5% are removed. The highest downlink network traffic value among the remaining sampling points is the base billing value for the month. In this scenario, reducing the peak network traffic will help lower the cost of using the CDN system. However, the peak network traffic of each content delivery node in a CDN system is easily affected by various factors such as country, region, season, holidays, events, and weather. Therefore, accurately controlling the network traffic of each content delivery node to balance Quality of Experience (QoE) and Return on Investment (ROI) is essential.
[0022] In view of this, embodiments of the present disclosure propose an improved scheme for text processing. In this scheme, predicted network traffic for a content distribution node within a predetermined time period is determined. Based on the predicted network traffic, a content distribution mode for the content distribution node within the predetermined time period is determined, wherein the content distribution mode includes at least a first mode. Based on determining that the content distribution mode of the content distribution node is the first mode, and receiving a content access request from a terminal device, a first content item corresponding to the content access request is transmitted to the terminal device through the content distribution node, and the content distribution node is restricted from transmitting at least one second content item to the terminal device that will be presented after the first content item.
[0023] In the embodiments of this disclosure, the content distribution mode of the content distribution node is controlled based on the predicted network traffic of the content distribution node. When the predicted network traffic is high, the content distribution mode of the content distribution node can be determined as a first mode. While the content distribution node transmits the first content item to the terminal device, the content distribution node is restricted from pre-transmitting the second content item. This helps to reduce the peak network traffic and, while ensuring QoE, also helps to consider ROI.
[0024] The following section provides a detailed description of various example implementations of this scheme, with reference to the accompanying drawings.
[0025] Example Environment Figure 1 A schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. In this example environment 100, an application 120 is installed on a terminal device 110. A user 140 can interact with the application 120 via the terminal device 110 and / or an attached device of the terminal device 110.
[0026] In some embodiments of this disclosure, application 120 can be any suitable application capable of presenting content to a user. In some examples, if application 120 is active, terminal device 110 can present the user interface 150 of application 120. User interface 150 can present, for example, live content, video content, image content, page content, text content, etc.
[0027] In some embodiments of this disclosure, environment 100 includes one or more content distribution nodes 170 (also referred to as CDN nodes), such as content distribution node 170-1, content distribution node 170-2, ..., content distribution node 170-N, etc., where N is a positive integer. For ease of description, the one or more content distribution nodes are collectively referred to as content distribution nodes 170 herein. Content distribution nodes 170 may store content items provided by the provider, such as live content, video content, image content, page content, text content, etc. In some embodiments, content distribution nodes 170 may obtain content items from the provider's origin server (e.g., a server-side device) and cache the obtained content on content distribution nodes 170. In some embodiments, content distribution nodes 170 may include one or more server-side devices, and content distribution nodes 170 may cache the obtained content on the server-side devices. In some embodiments, the one or more content distribution nodes 170 may be distributed across different countries or regions. The one or more content distribution nodes 170 may include one or more content distribution nodes in a CDN system. These content distribution nodes are configured to distribute the provider's content items.
[0028] In some embodiments of this disclosure, terminal device 110 may send a content access request to server device 130 to request access to one or more content items. Server device 130 may determine a content distribution node 170 that matches terminal device 110 from among the one or more content distribution nodes 170, based on information related to terminal device 110 (e.g., configuration information, geographical location, network conditions, etc.). This content distribution node may be located closer to terminal device 110 or have a relatively low load. The determined content distribution node responds to the content access request by providing the corresponding content item to terminal device 110, which can then present the received content item through user interface 150.
[0029] In some embodiments, server device 130 may utilize machine learning model 160 to support the provisioning of services to application 120. In some embodiments, machine learning model 160 may include a Transformer model, a Long Short-Term Memory (LSTM) network model, a Recurrent Neural Network (RNN) model, or any other suitable model architecture. In some embodiments, machine learning model 160 may include a language model (LM). A language model-based machine learning model is capable of receiving text-modal model input (e.g., natural language and / or machine language) and / or non-text-modal model input (e.g., images, speech, video, etc.), and is capable of generating a desired output based on the model input and prompt words. The prompt words here are used to guide the machine learning model to generate outputs that address the needs indicated by the model input.
[0030] In some embodiments, terminal device 110 may be any type of mobile terminal, fixed terminal, or portable terminal, including mobile phones, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, media computers, multimedia tablets, personal communication system (PCS) devices, personal navigation devices, personal digital assistants (PDAs), audio / video players, digital cameras / camcorders, positioning devices, television receivers, radio receivers, e-book devices, gaming devices, or any combination thereof, including accessories and peripherals of these devices or any combination thereof. In some embodiments, terminal device 110 may also support any type of user-facing interface (such as "wearable" circuitry).
[0031] In some embodiments, server device 130 may be independent of the CDN system and content delivery node 170. For example, server device 130 may be a server device associated with a provider. In some embodiments, server device 130 may belong to a CDN system, or server device 130 may belong to a content delivery node 170. Server device 130 may include, but is not limited to, mainframes, edge computing nodes, computing devices in a cloud environment, etc. It may be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks, and big data and artificial intelligence platforms. Servers may include, for example, computing systems / servers, such as mainframes, edge computing nodes, computing devices in a cloud environment, etc.
[0032] It should be understood that the structure and function of the various elements in environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of this disclosure.
[0033] Example Process The following description will continue with reference to the accompanying drawings, which will provide some exemplary embodiments of this disclosure. Figure 2 A flowchart of a control process 200 for a content distribution node according to some embodiments of the present disclosure is shown. Some or all of the process 200 may be implemented by the server device 130, or it may be implemented by the server device 130 in cooperation with other devices, for example, by the server device 130 in cooperation with the content distribution node 170. In the following discussion, for ease of discussion, the execution of the process 200 is described from the perspective of the server device 130, but this is merely exemplary.
[0034] In box 210, server device 130 determines the predicted network traffic of content distribution node 170 within a predetermined time period. In some embodiments, the predetermined time period can be a time period determined based on natural time such as a calendar day or calendar hour. As an example, each calendar day can be divided into 288 time periods of 5 minutes each. The predetermined time period can be any one of these 288 time periods. In some embodiments, the predetermined time period can also be a time period formed by a predetermined duration after the current time, such as a time period formed by 5 minutes after the current time. Of course, the above-mentioned predetermined time period is only an example, and other methods can be used to configure the predetermined time period according to actual needs. The embodiments of this disclosure do not limit this.
[0035] In some embodiments, the predetermined network traffic may include all or part of the network traffic that the content delivery node 170 may generate during a predetermined time period. In some examples, the predicted network traffic may include the predicted downlink network traffic generated by content items associated with one or more predetermined providers within the content delivery node 170 during the predetermined time period. As an example, the content delivery node 170 may cache content items from the origin server of application 120. The predetermined network traffic may be the predicted downlink network traffic generated by the content delivery node 170 transmitting these content items to one or more clients of application 120 during the predetermined time period. In some embodiments, the predicted network traffic may also indicate the difference between the network traffic that the content delivery node 170 may generate during the predetermined time period and the network bandwidth (or network traffic limit) (also referred to as remaining network traffic).
[0036] In some embodiments, the server device 130 can determine the historical network traffic of the content delivery node 170 in at least one historical time period corresponding to a predetermined time period, and can determine the predicted network traffic of the content delivery node 170 within the predetermined time period based on the historical network traffic of the at least one historical time period. In some examples, the predetermined time period may be the Nth 5-minute time period of the current calendar day. The at least one historical time period may include the Nth historical time period of each of the M historical calendar days adjacent to the current calendar day.
[0037] As an example, the at least one historical time period may include the Nth historical time period of each of the seven historical days preceding the current calendar day. The server device 130 can determine the historical network traffic of the content delivery node 170 within these seven historical time periods. Then, based on these seven historical network traffic periods, the predicted network traffic for a predetermined time period within the current calendar day of the content is determined. Obviously, the historical network traffic for the aforementioned historical time periods is merely exemplary, and the historical network traffic of the content delivery node 170 in any appropriate historical time period can be selected according to actual needs to determine the predicted network traffic for the predetermined time period.
[0038] In some embodiments, server device 130 may determine the historical network traffic of content delivery node 170 in at least one historical time period corresponding to a predetermined time period. Based on the historical network traffic of at least one historical time period and reference information corresponding to content delivery node 170, model input for a trained machine learning model 160 is determined. Then, based on the model input, the machine learning model 160 is used to determine predicted network traffic. Here, machine learning model 160 may be trained to predict the predicted network traffic generated by content items associated with a predetermined provider in content delivery node 170 within the predetermined time period.
[0039] In some examples, server device 130 can use machine learning model 160 to directly predict the predicted network traffic of content delivery node 170 over a predetermined time period. In other examples, server device 130 can use machine learning model 160 to predict the remaining network traffic of content delivery node 170 over a predetermined time period, which indicates the difference between the network traffic that content delivery node 170 may generate during the predetermined time period and the network bandwidth (or network traffic limit). Server device 130 can then determine the predicted network traffic based on the remaining network traffic.
[0040] As an example, a machine learning model 160 based on a Transformer model or an LSTM model can be pre-trained to determine predicted network traffic. The trained machine learning model 160 can accurately determine predicted network traffic, thereby improving the accuracy of control over the content distribution node 170. It should be noted that the machine learning model 160 is not limited to the model architecture described above, and can be trained based on any other suitable model architecture. The embodiments of this disclosure do not limit the type of machine learning model 160.
[0041] In some embodiments, server device 130 may determine at least one first label corresponding to the at least one historical time period based on the historical network traffic of the at least one historical time period. Each first label indicates that the historical network traffic of the corresponding historical time period falls into a first range or a second range, where the first range is higher than the second range. Furthermore, server device 130 may also determine an indicator indicating the central tendency of the historical network traffic of the at least one historical time period. Then, based on the at least one first label, the central tendency indicator, and reference information, model inputs for machine learning model 160 are determined.
[0042] In some examples, server device 130 may predetermine a first range and a second range of network traffic, the first range being higher than the second range. The first range may indicate the range of network traffic for content items associated with a predetermined provider within content delivery node 170 during peak time periods. The second range may indicate the range of network traffic for content items associated with a predetermined provider within content delivery node 170 during off-peak time periods.
[0043] As an example, assuming each billing cycle (e.g., a calendar month) comprises K time periods, the CDN system samples the downlink network traffic generated by the content items of the predefined provider at the content distribution node 170 in each time period (also called a sampling period), obtaining sampled values of the downlink network traffic. Server device 130 can obtain K sampled values of downlink network traffic from one or more historical billing cycles (e.g., the previous calendar month). These K sampled values are sorted from highest to lowest, and the time periods corresponding to the top X% (e.g., 5%) of the sampled values are determined as peak time periods, while the time periods corresponding to the bottom (1-X)% (e.g., 95%) of the sampled values are determined as off-peak time periods. Server device 130 can determine a first range based on the sampled values of the peak time periods. The server device can also determine a second range based on the sampled values of the off-peak time periods. For example, server device 130 can determine the network traffic range covered by the 5% sampled values as the first range, and the network traffic range covered by the 95% sampled values as the second range. Based on this, the first range actually indicates the network traffic level during peak periods, and can also be called the peak range. The second range actually indicates the network traffic level during off-peak periods, and can also be called the off-peak range. It should also be noted that since the network traffic levels during peak and off-peak periods may change dynamically, the first and second ranges may be updated periodically in practical applications to ensure their accuracy.
[0044] The server device 130 can compare the historical network traffic for each historical time period with a first range and a second range. If the historical network traffic falls into the first range, it means that the historical network traffic for that historical time period may be peak network traffic, and a first label indicating that the historical network traffic falls into the first range can be generated accordingly. If the historical network traffic falls into the second range, it means that the historical network traffic for that historical time period may be off-peak network traffic, and a first label indicating that the historical network traffic falls into the second range can be generated accordingly.
[0045] In some examples, the central tendency of historical network traffic for at least one historical time period can characterize the central location or average level of historical network traffic for that at least one historical time period. Based on this, the indicator of central tendency may include, but is not limited to, the arithmetic mean, geometric mean, harmonic mean, median, etc., of historical network traffic for the at least one historical time period. As an example, server device 130 can determine the historical network traffic of content delivery node 170 for each Nth time period across seven historical calendar days, and determine the average of these seven historical network traffic values. This average value is then determined as an indicator of the central tendency of these seven historical network traffic values.
[0046] In some examples, the reference information may include configuration information of the content distribution node 170. As an example, this configuration information may include, but is not limited to, at least one of location information and identification information of the content distribution node 170. The location information may indicate the country and / or region where the content distribution node 170 is located. The identification information may include, for example, the name, number, etc., of the content distribution node 170. Obviously, the configuration information is not limited to including location information and identification information; it may also include other relevant information about the content distribution node 170, and the embodiments of this disclosure do not limit this.
[0047] Alternatively or additionally, the reference information may also include a second label indicating whether the scheduled time period falls within a specific time period. This specific time period may include periods that correlate with changes in network traffic at the content delivery node 170, such as holidays, public holidays, anniversaries, event days, etc. As an example, the reference information may include a second label indicating whether the scheduled time, Sunday, falls within a public holiday.
[0048] See Figure 2 As shown in block 220, server device 130 determines the content distribution pattern of content distribution node 170 for a predetermined time period based on predicted network traffic. In some embodiments, the content distribution pattern may be a distribution pattern for all or part of the content items in content distribution node 170. In some examples, the content distribution pattern may be a distribution pattern for content items in content distribution node 170 related to a predetermined provider. For example, the content distribution pattern may be a distribution pattern for content items in content distribution node 170 related to application 120. In some examples, the content distribution pattern may be a distribution pattern for specific content items in content distribution node 170. As an example, the content distribution pattern may be a distribution pattern for live content items in content distribution node 170 related to application 120. Content distribution node 170 may be configured to transmit live content items to clients of application 120 based on the content distribution pattern.
[0049] In some embodiments, the content distribution mode may include a first mode, which may be a content distribution mode for peak time periods of network traffic. Server device 130 may determine whether the predicted network traffic falls within a first range (i.e., a peak range). If it is determined that the predicted network traffic falls within the first range, it indicates that the predetermined time period is likely the peak time period of the current billing cycle (e.g., the current month). Server device 130 may determine that the content distribution mode of content distribution node 170 is the first mode.
[0050] In some embodiments, the content distribution mode may further include a second mode, which may be a content distribution mode for off-peak time periods. Server device 130 may determine whether the predicted network traffic falls within the second range (i.e., the off-peak range). If it is determined that the predicted network traffic falls within the second range, it indicates that the predetermined time period may be an off-peak time period of the current billing cycle. Server device 130 may determine that the content distribution mode of content distribution node 170 is the second mode.
[0051] In some embodiments, server device 130 can determine a content delivery mode based on the difference between predicted network traffic and the network traffic limit of content delivery node 170 (also referred to as remaining network traffic). In some examples, the network traffic limit may include the network bandwidth of content delivery node 170. In other examples, server device 130 can determine the network traffic limit based on network traffic peaks over multiple historical billing periods, upper or lower limits of network traffic during peak periods, or upper limits of network traffic during off-peak periods. As an example, server device 130 can determine the network traffic limit based on upper limits of multiple off-peak periods in multiple historical billing periods. This can limit the peak network traffic of content delivery node 170 to some extent, which helps reduce operating costs.
[0052] In some examples, server device 130 may pre-determine a third range corresponding to peak time periods and a fourth range corresponding to off-peak time periods. Server device 130 may determine whether the remaining network traffic falls within the third or fourth range. If it is determined that the remaining network traffic falls within the third range, server device 130 determines that the content distribution node 170's content distribution mode for the predetermined time period is a first mode. If it is determined that the remaining network traffic falls within the fourth range, server device 130 determines that the content distribution node 170's content distribution mode for the predetermined time period is a second mode.
[0053] In some embodiments, server device 130 can correct the predicted network traffic based on a correction coefficient corresponding to a predetermined time period to obtain corrected predicted network traffic. Server device 130 can then determine the content distribution pattern of content distribution node 170 within the predetermined time period based on the corrected predicted network traffic. In some examples, the correction coefficient can be configured to correct the predicted network traffic to reduce the difference between the predicted network traffic and the actual network traffic, thereby improving the accuracy of determining the content distribution pattern. In other examples, the correction coefficient can also be configured to correct the predicted network traffic to increase the value of the predicted network traffic, thereby reserving a certain network traffic margin and limiting the peak height of network traffic.
[0054] In some examples, server device 130 can determine historical network traffic for multiple historical time periods corresponding to a predetermined time period. Then, based on the ratio between the number of historical time periods in which the historical network traffic falls within a first range and the total number of historical time periods, a correction coefficient corresponding to the predetermined time period is determined. As an example, server device 130 can determine historical network traffic for K historical time periods within a historical billing cycle. The number of these K historical network traffic periods falling within the first range is determined, for example, this number can be represented as L. Server device 130 can determine the ratio between L and K, and then determine a correction coefficient a based on this ratio, for example, this ratio can be used as the correction coefficient a. Server device 130 can obtain the corrected predicted network traffic based on the predicted network traffic * (1 + a). It should be understood that the above methods of determining the correction coefficient and correcting the predicted network traffic are merely exemplary; other methods can be used to determine the correction coefficient and to correct the predicted network traffic. The embodiments of this disclosure do not specifically limit this in this regard.
[0055] Continue to combine Figure 2 As shown in box 230, server device 130, based on determining that the content distribution mode of content distribution node 170 is a first mode, and receiving a content access request from terminal device 110, transmits a first content item corresponding to the content access request to terminal device 110 through content distribution node 170, and restricts content distribution node 170 from transmitting at least one second content item to terminal device 110 that will be presented after the first content item. The first content item can be understood as the content item currently accessed by terminal device 110. The at least one second content item can be understood as the content item that terminal device 110 will present in the future. For example, if terminal device 110 receives a switching operation on the content item (e.g., swiping, clicking, etc.) while presenting the first content item, terminal device 110 will present one of the at least one second content items.
[0056] The transmission of the second content item simultaneously with the transmission of the first content item to the terminal device 110 can also be referred to as parallel transmission or pre-transmission. The purpose of transmitting the first and second content items in parallel to the terminal device 110 via the content distribution node 170 is to improve the smoothness of content presentation, but this increases the network traffic of the content distribution node 170. If it is determined that a predetermined time period may be the peak time period of the current billing cycle, the transmission of the second content item in parallel with the first content item is limited by setting the content distribution node 170 to a first mode. This helps reduce the network traffic of the content distribution node 170 during the predetermined time period, thereby reducing the peak network traffic height of the current billing cycle and ultimately lowering operating costs.
[0057] In some embodiments, when the content distribution mode of content distribution node 170 is determined, server device 130 can modify the configuration information of content distribution node 170 to set the content distribution mode of content distribution node 170 to a first mode. For example, server device 130 can add a first tag indicating the first mode to the configuration information of content distribution node 170. If a content access request is received from terminal device 110, a first content item and at least one second content item corresponding to the content access request are determined. If it is determined that content distribution node 170 is in the first mode based on the first tag, the first content item is transmitted to terminal device 110 through content distribution node 170, and the second content item is transmitted without parallel transmission of the first content item. In some examples, restricting content distribution node 170 from transmitting the second content item to terminal device 110 may mean restricting content distribution node 170 from transmitting all or part of the second content item to terminal device 110.
[0058] In some embodiments, the content distribution mode can be a distribution mode for content items related to a predetermined provider in a content distribution node. In this case, the server device 130 restricts the content distribution node 170 from transmitting a second content item related to the predetermined provider to the terminal device 110. As an example, the content distribution mode can be a distribution mode for application 120. When it is determined that the content distribution node 110 is in a first mode, the first content item is sent to the terminal device 110 through the content distribution node 170 for application 120 to be presented in the current user interface 150, and the content distribution node 170 is restricted from sending a second content item to the terminal device 110 for application 130 to be presented in the future.
[0059] In some embodiments, the content distribution mode can be a distribution mode for specific content items in the content distribution node 170, where the specific content item can be a content item requiring relatively large network traffic. If it is determined that the content distribution node 170 is in a first mode, one or more specific content items from the at least one second content item and the remaining second content items are identified, and the first content item and the remaining second content items are transmitted to the terminal device 110 through the content distribution node 170, thus limiting the transmission of the one or more specific content items from the content distribution node 170 to the terminal device 110. In this way, QoE and ROI can be balanced to a certain extent.
[0060] As an example, in some display modes, application 120 can present short video and live content through a mixed arrangement of content containers. If a content access request is received from terminal device 110, and it is determined that the content distribution node 170 corresponding to terminal device 110 is in a first mode, the application 120 transmits the short video or live content (i.e., the first content item) corresponding to the access request to terminal device 110, and restricts the content distribution node 170 from transmitting the live content in the at least one second content item to terminal device 110 to reduce network traffic consumption.
[0061] In some embodiments, if the content distribution node 170 is determined to be in the second mode, and a content access request is received from the terminal device 110, a first content item and at least one second content item are transmitted to the terminal device through the content distribution node 170. Specifically, if it is determined that the predetermined time period may be a non-peak time period, the server device 130 can set the content distribution mode of the content distribution node 170 to the second mode. For example, the server device 130 can add a second tag indicating the second mode to the configuration information of the content distribution node 170. If a content access request is received from the terminal device 110, and it is determined that the content distribution node 170 is in the second mode, it indicates that the remaining network traffic of the content distribution node 170 is relatively abundant, and the first content item and the at least one second content item can be transmitted in parallel, thus prioritizing QoE.
[0062] In this manner, in the embodiments of this disclosure, the content distribution mode of the content distribution node is controlled based on the predicted network traffic of the content distribution node. When the predicted network traffic is high, the content distribution mode of the content distribution node can be determined as a first mode. While the content distribution node transmits the first content item to the terminal device, it is restricted from pre-transmitting the second content item. This helps to reduce the peak network traffic and, while ensuring QoE, also helps to consider ROI.
[0063] Example Apparatus and Device Embodiments of this disclosure also provide corresponding apparatus for implementing the above methods or processes.Figure 3 A schematic structural block diagram of an example apparatus 300 for content distribution node control according to certain embodiments of the present disclosure is shown. Apparatus 300 may be implemented as or included in server device 130. Various modules / components in apparatus 300 may be implemented by hardware, software, firmware, or any combination thereof.
[0064] like Figure 3 As shown, the device 300 includes: a prediction module 310 configured to determine predicted network traffic of a content distribution node within a predetermined time period; a determination module 320 configured to determine, based on the predicted network traffic, a content distribution mode of the content distribution node within the predetermined time period, wherein the content distribution mode includes at least a first mode; and a control module 330 configured to, based on determining that the content distribution mode of the content distribution node is the first mode and receiving a content access request from a terminal device, transmit a first content item corresponding to the content access request to the terminal device through the content distribution node, and restrict the content distribution node from transmitting at least one second content item to the terminal device that will be presented after the first content item.
[0065] In some embodiments, the prediction module 310 is further configured to: determine the historical network traffic of the content distribution node in at least one historical time period corresponding to the predetermined time period; determine the model input for a machine learning model based on the historical network traffic of the at least one historical time period and reference information corresponding to the content distribution node; and determine the predicted network traffic based on the model input and using the machine learning model.
[0066] In some embodiments, the prediction module 310 is further configured to: determine at least one first label corresponding to the at least one historical time period based on the historical network traffic of the at least one historical time period, each first label indicating that the historical network traffic of the corresponding historical time period falls into a first range or a second range, the first range being higher than the second range; determine an indicator indicating the central tendency of the historical network traffic of the at least one historical time period; and determine the model input based on the at least one first label, the indicator, and the reference information.
[0067] In some embodiments, the reference information includes at least one of the following: configuration information of the content distribution node, or a second tag indicating whether the predetermined time period falls within a specific time period.
[0068] In some embodiments, the determining module 320 is further configured to: correct the predicted network traffic based on a correction coefficient corresponding to the predetermined time period to obtain the corrected predicted network traffic; and determine the content distribution mode of the content distribution node in the predetermined time period based on the corrected predicted network traffic.
[0069] In some embodiments, the determining module 320 is further configured to: determine historical network traffic for a plurality of historical time periods corresponding to the predetermined time period; and determine the correction coefficient corresponding to the predetermined time period based on the ratio between the number of historical time periods in which the historical network traffic falls within a first range and the total number of the plurality of historical time periods.
[0070] In some embodiments, the content distribution mode further includes a second mode, and the control module 330 is further configured to: based on determining that the content distribution mode of the content distribution node is the second mode, and receiving a content access request from the terminal device, transmit the first content item and the at least one second content item to the terminal device through the content distribution node.
[0071] In some embodiments, the determining module 320 is further configured to: determine the content distribution mode of the content distribution node in the predetermined time period as the first mode in response to the predicted network traffic falling into a first range, or determine the content distribution mode of the content distribution node in the predetermined time period as the second mode in response to the predicted network traffic falling into a second range below the first range.
[0072] In some embodiments, the determining module 320 is further configured to determine the content distribution mode based on the difference between the predicted network traffic and the network traffic limit of the content distribution node.
[0073] The units and / or modules included in device 300 can be implemented in various ways, including software, hardware, firmware, or any combination thereof. In some embodiments, one or more units and / or modules can be implemented using software and / or firmware, such as machine-executable instructions stored on a storage medium. In addition to or as an alternative to machine-executable instructions, some or all of the units and / or modules in device 300 can be implemented at least partially by one or more hardware logic components. By way of example and not limitation, exemplary types of hardware logic components that can be used include field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-chips (SoCs), complex programmable logic devices (CPLDs), and so on.
[0074] Figure 4A block diagram of an electronic device 400 in which one or more embodiments of the present disclosure may be implemented is shown. It should be understood that... Figure 4 The electronic device 400 shown is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. Figure 4 The illustrated electronic device 400 may include or be implemented as Figure 1 Server-side equipment 130, Figure 3 Device 300.
[0075] like Figure 4 As shown, electronic device 400 is in the form of a general-purpose electronic device. Components of electronic device 400 may include, but are not limited to, one or more processors 410, memory 420, storage device 430, one or more communication units 440, one or more input devices 450, and one or more output devices 460. Processor 410 may be a physical or virtual processor and is capable of performing various processes according to executable instructions stored in memory 420. In a multiprocessor system, multiple processors execute computer-executable instructions in parallel to improve the parallel processing capability of electronic device 400.
[0076] Electronic device 400 typically includes multiple computer storage media. Such media can be any accessible media that is accessible to electronic device 400, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 420 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. Storage device 430 can be removable or non-removable media and can include machine-readable media, such as flash drives, disks, or any other media that can be used to store information and / or data and can be accessed within electronic device 400.
[0077] Electronic device 400 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 4 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 420 may include computer program product 425 having one or more executable instruction modules configured to perform various methods or actions of various embodiments of this disclosure.
[0078] The communication unit 440 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 400 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 400 can operate in a networked environment using logical connections to one or more other servers, networked personal computers (PCs), or another network node.
[0079] Input device 450 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 460 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 400 can also communicate with one or more external devices (not shown) via communication unit 440 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device 400, or with any device that enables electronic device 400 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).
[0080] According to an exemplary implementation of this disclosure, a computer-readable storage medium is provided that stores computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the methods described above. According to an exemplary implementation of this disclosure, a computer-executable instruction product is also provided, which is tangibly stored on a non-transient computer-readable medium and includes computer-executable instructions that are executed by a processor to implement the methods described above.
[0081] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, devices, and computer-executable instruction products implemented according to this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable and executable instructions.
[0082] These computer-executable instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-executable instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0083] Computer-executable instructions can be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0084] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer-executable instruction products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, executable instruction, or portion of instructions, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0085] Various implementations of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is chosen to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the various implementations disclosed herein.
Claims
1. A method for controlling a content distribution node, comprising: Determine the predicted network traffic of content distribution nodes within a predetermined time period; Based on the predicted network traffic, the content distribution mode of the content distribution node is determined in the predetermined time period, wherein the content distribution mode includes at least a first mode; Based on the determination that the content distribution node's content distribution mode is the first mode, and the receipt of a content access request from the terminal device, The content distribution node transmits the first content item corresponding to the content access request to the terminal device, and The content distribution node is restricted from transmitting to the terminal device at least one second content item that will be presented after the first content item.
2. The method of claim 1, wherein determining the predicted network traffic comprises: Determine the historical network traffic of the content distribution node in at least one historical time period corresponding to the predetermined time period; Based on historical network traffic for at least one historical time period and reference information corresponding to the content distribution node, the model input for the machine learning model is determined; and Based on the model input, the predicted network traffic is determined using the machine learning model.
3. The method according to claim 2, wherein determining the model input comprises: Based on the historical network traffic of the at least one historical time period, at least one first label is determined corresponding to the at least one historical time period. Each first label indicates that the historical network traffic of the corresponding historical time period falls into a first range or a second range, wherein the first range is higher than the second range. Determine an indicator that shows the central tendency of historical network traffic for the at least one historical time period; as well as The model input is determined based on the at least one first label, the indicator, and the reference information.
4. The method of claim 2, wherein the reference information includes at least one of the following: The configuration information of the content distribution node, or A second label indicating whether the predetermined time period falls within a specific time period.
5. The method of claim 1, wherein determining the content distribution mode comprises: Based on the correction coefficient corresponding to the predetermined time period, the predicted network traffic is corrected to obtain the corrected predicted network traffic. as well as Based on the corrected predicted network traffic, the content distribution mode of the content distribution node is determined during the predetermined time period.
6. The method of claim 5, further comprising: Determine the historical network traffic for multiple historical time periods corresponding to the predetermined time period; as well as The correction coefficient corresponding to the predetermined time period is determined based on the ratio between the number of historical time periods in which the historical network traffic falls within the first range and the total number of the multiple historical time periods.
7. The method of claim 1, wherein the content distribution mode further includes a second mode, and the method further includes: Based on the determination that the content distribution mode of the content distribution node is the second mode, and the receipt of a content access request from the terminal device, the first content item and the at least one second content item are transmitted to the terminal device through the content distribution node.
8. The method of claim 7, wherein determining the content distribution mode comprises: In response to the predicted network traffic falling within a first range, the content distribution node is determined to use the first mode for content distribution during the predetermined time period, or In response to the predicted network traffic falling into a second range below the first range, the content distribution node is determined to use the second mode for content distribution during the predetermined time period.
9. The method of claim 1, wherein determining the content distribution mode comprises: The content distribution mode is determined based on the difference between the predicted network traffic and the network traffic limit of the content distribution node.
10. An apparatus for controlling a content distribution node, comprising: The prediction module is configured to determine the predicted network traffic of content distribution nodes within a predetermined time period; The determination module is configured to determine the content distribution mode of the content distribution node in the predetermined time period based on the predicted network traffic, wherein the content distribution mode includes at least a first mode. The control module is configured to determine that the content distribution mode of the content distribution node is the first mode, and to receive a content access request from the terminal device. The content distribution node transmits the first content item corresponding to the content access request to the terminal device, and The content distribution node is restricted from transmitting to the terminal device at least one second content item that will be presented after the first content item.
11. An electronic device, comprising: At least one processor; as well as At least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor, the instructions causing the electronic device to perform the method according to any one of claims 1 to 9 when executed by the at least one processor.
12. A computer-readable storage medium having stored thereon computer-executable instructions that can be executed by a processor to implement the method according to any one of claims 1 to 9.
13. A computer program product comprising computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the method according to any one of claims 1 to 9.