Access scheduling method and device
By receiving access requests and obtaining bandwidth information of the service nodes, and automatically switching the service nodes, the load problem caused by excessive bandwidth in the live broadcast system is solved, and efficient resource utilization and cost reduction are achieved.
Patent Information
- Application Number
- CN202211654917.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-22
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2042-12-22
AI Technical Summary
In the prior art, the bandwidth of the service nodes in the live broadcast system is too high, which may cause service crashes, and the standing resources and human adjustment methods are costly, inefficient and resource utilization are low.
By receiving access requests, the real-time bandwidth and billing point bandwidth of the service node are obtained, the traffic billing information is counted, and the service node is automatically switched when the preset overload threshold is reached, automatic scheduling is achieved, avoiding the demand of backup physical machines and improving the Resource utilization and cost reduction.
It realizes that while ensuring the quality of access scheduling, it automatically switches service nodes, reduces costs, improves resource utilization, and avoids the increase in bandwidth costs caused by burst traffic.
Smart Images

Figure CN116032673B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to an access scheduling method, an access scheduling device, a computing device, and a computer-readable storage medium. Background Art
[0002] With the continuous development of computer technology, online social platforms are becoming more and more popular, and live broadcasts on online social platforms have gradually become a popular form of real-time interaction. In the live broadcast system, the content distribution network (CDN, Content Delivery Network) is usually responsible for users to watch live broadcasts, such as commercial CDN or self-built CDN. The service nodes in the CDN that are responsible for users to watch live broadcasts will generate bandwidth.
[0003] Too high bandwidth leads to high load on service nodes, and there is a risk that the bandwidth will exceed the upper limit of the service node bandwidth, causing service crashes and affecting service quality. If you want to ensure that the service node can serve users normally and provide live video for users, there are generally two common solutions: one is to always have more sufficient resource coverage; the other is to manually adjust the service nodes in the low-load area to cover the high-load area when the maintenance personnel find that the service node corresponding to a certain area has a high load.
[0004] However, the first method requires a physical machine that is always available. Whether the spare physical machine is used or not will incur costs. During the non-emergency time of live broadcast, the physical machine is idle, and the resource utilization rate is low, which will cause waste. The second method has a high degree of human involvement. After discovering the high-load service node, it is necessary to adjust the low-load service node in time. After the load is reduced, it needs to be adjusted again for recovery. The process is complicated and inefficient. Summary of the invention
[0005] In view of this, an embodiment of the present application provides an access scheduling method. The present application also relates to an access scheduling device, a computing device, and a computer-readable storage medium to solve the technical defects of high cost and low efficiency in the prior art.
[0006] According to a first aspect of an embodiment of the present application, there is provided an access scheduling method, which is applied to a management platform, and the method includes:
[0007] receiving an access request, and determining a first service node corresponding to the access request;
[0008] Obtaining a first real-time bandwidth and a first billing point bandwidth of the first service node;
[0009] Based on the first real-time bandwidth and the first billing point bandwidth, collecting first traffic billing information of the first service node;
[0010] When the first traffic charging information reaches a first preset excess threshold, the second service node is switched as the service node corresponding to the access request.
[0011] Optionally, the first traffic billing information includes the first real-time bandwidth and a target statistical duration, where the target statistical duration is a specified duration corresponding to the first service node counted when the first real-time bandwidth exceeds the first billing point bandwidth;
[0012] Before switching the second service node as the service node corresponding to the access request when the first traffic accounting information reaches a first preset excess threshold, the method further includes:
[0013] It is determined whether the first real-time bandwidth is lower than a preset bandwidth threshold corresponding to the first service node, and it is determined whether the target statistical duration is lower than a preset duration threshold corresponding to the first service node.
[0014] Optionally, the target statistical duration includes a service statistical duration of a service provided by the first service node and a scheduling statistical duration of a scheduling of the first service node by the management platform based on an access request;
[0015] The determining whether the target statistical duration is lower than a preset duration threshold corresponding to the first service node includes at least one of the following:
[0016] Determine whether the service statistical duration is lower than a preset service duration threshold corresponding to the first service node;
[0017] It is determined whether the scheduling statistical duration is lower than a preset scheduling duration threshold corresponding to the first service node.
[0018] Optionally, before determining whether the scheduling statistical duration is lower than a preset scheduling duration threshold corresponding to the first service node, the method further includes:
[0019] Determining whether a first real-time bandwidth of the first service node has reached a preset bandwidth threshold corresponding to the first service node;
[0020] If not, obtaining a target total service duration corresponding to the first service node, wherein the target total service duration is a total duration for which the first service node is allowed to provide services when the first real-time bandwidth exceeds the first billing point bandwidth;
[0021] Calculate the remaining service duration corresponding to the first service node according to the target total service duration and the service statistical duration;
[0022] A preset scheduling duration threshold corresponding to the first service node is determined according to the remaining service duration.
[0023] Optionally, after determining whether the first real-time bandwidth of the first service node has reached a preset bandwidth threshold corresponding to the first service node, the method further includes:
[0024] If so, the time duration for the real-time bandwidth of the first service node to reach the preset bandwidth threshold from the first charging point bandwidth is used as the preset scheduling time duration threshold corresponding to the first service node.
[0025] Optionally, before switching the second service node as the service node corresponding to the access request, the method further includes:
[0026] Determine a second service node corresponding to the access request, and obtain a second real-time bandwidth and a second billing point bandwidth corresponding to the second service node;
[0027] Based on the second real-time bandwidth and the second billing point bandwidth, collecting statistics on second traffic billing information of the second service node;
[0028] The switching the second service node as the service node corresponding to the access request includes:
[0029] When the second traffic charging information does not reach a second preset excess threshold, the second service node is switched as the service node corresponding to the access request.
[0030] Optionally, the counting of first traffic billing information of the first service node based on the first real-time bandwidth and the first billing point bandwidth includes:
[0031] When the first real-time bandwidth reaches the first billing point bandwidth, first traffic billing information of the first service node is collected according to the first real-time bandwidth and the first billing point bandwidth.
[0032] Optionally, when the first real-time bandwidth reaches the first billing point bandwidth, counting first traffic billing information of the first service node according to the first real-time bandwidth and the first billing point bandwidth includes:
[0033] When the first real-time bandwidth reaches the first billing point bandwidth, acquiring a second real-time bandwidth and a second billing point bandwidth of a second service node;
[0034] When the second real-time bandwidth reaches the second billing point bandwidth, first traffic billing information of the first service node is collected according to the first real-time bandwidth and the first billing point bandwidth.
[0035] Optionally, before acquiring the second real-time bandwidth and the second billing point bandwidth of the second service node, the method further includes:
[0036] Identifying whether there is a second service node corresponding to the access request;
[0037] If not, the step of collecting first traffic billing information of the first service node according to the first real-time bandwidth and the first billing point bandwidth is executed.
[0038] Optionally, before determining whether the first real-time bandwidth is lower than a preset bandwidth threshold corresponding to the first service node, the method further includes:
[0039] A preset bandwidth threshold corresponding to the first service node is calculated according to the first charging point bandwidth and a set value.
[0040] According to a second aspect of an embodiment of the present application, there is provided an access scheduling device, which is applied to a management platform, and the device includes:
[0041] A receiving module, configured to receive an access request and determine a first service node corresponding to the access request;
[0042] An acquisition module, configured to acquire a first real-time bandwidth and a first billing point bandwidth of the first service node;
[0043] A first statistics module is configured to collect statistics on first traffic billing information of the first service node based on the first real-time bandwidth and the first billing point bandwidth;
[0044] The switching module is configured to switch the second service node as the service node corresponding to the access request when the first traffic billing information reaches a first preset excess threshold.
[0045] According to a third aspect of an embodiment of the present application, a computing device is provided, comprising a memory, a processor, and computer instructions stored in the memory and executable on the processor, wherein the processor implements the steps of the access scheduling method when executing the computer instructions.
[0046] According to a fourth aspect of an embodiment of the present application, a computer-readable storage medium is provided, which stores computer instructions, and when the computer instructions are executed by a processor, the steps of the access scheduling method are implemented.
[0047] The access scheduling method provided by the present application receives an access request and determines the first service node corresponding to the access request; obtains the first real-time bandwidth and the first billing point bandwidth of the first service node; based on the first real-time bandwidth and the first billing point bandwidth, counts the first flow billing information of the first service node; when the first flow billing information reaches the first preset excess threshold, switches the second service node as the service node corresponding to the access request. The accuracy of the first flow billing information can be improved by the first real-time bandwidth and the first billing point bandwidth, and the first preset excess threshold is used to accurately determine whether the first service node can provide services for the access request, thereby realizing automatic switching of service nodes, ensuring the quality of access scheduling while allowing the service node to carry more bandwidth, and at the same time, there is no need to set up a spare physical machine, which can reduce costs and improve resource utilization. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] Figure 1A This is a bandwidth diagram provided by the prior art that is charged based on the monthly average of the daily 95 value;
[0049] Figure 1B This is a bandwidth diagram of normal traffic and burst traffic provided by existing technology.
[0050] Figure 2 is a flow chart of an access scheduling method provided by an embodiment of the present application;
[0051] Figure 3A This is a bandwidth diagram of normal traffic and burst traffic provided by this application;
[0052] Figure 3B This is a schematic diagram of switching service nodes in an access scheduling method provided by the present application;
[0053] Figure 3C It is a schematic diagram of the arrangement process of an access scheduling method provided by this application;
[0054] Figure 3D It is a processing flow diagram of an access scheduling method provided by this application;
[0055] Figure 4 It is a processing flow chart of an access scheduling method applied to a live broadcast scenario provided by an embodiment of the present application;
[0056] Figure 5 It is a structural diagram of an access scheduling device provided by an embodiment of the present application;
[0057] Figure 6 It is a structural block diagram of a computing device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0058] Many specific details are described in the following description to facilitate a full understanding of the present application. However, the present application can be implemented in many other ways than those described herein, and those skilled in the art can make similar generalizations without violating the connotation of the present application, so the present application is not limited by the specific implementation disclosed below.
[0059] The terms used in one or more embodiments of the present application are only for the purpose of describing specific embodiments, and are not intended to limit one or more embodiments of the present application. The singular forms of "a", "said" and "the" used in one or more embodiments of the present application and the appended claims are also intended to include plural forms, unless the context clearly indicates other meanings. It should also be understood that the term "and / or" used in one or more embodiments of the present application refers to and includes any or all possible combinations of one or more associated listed items.
[0060] It should be understood that, although the terms first, second, etc. may be used to describe various information in one or more embodiments of the present application, these information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of one or more embodiments of the present application, the first may also be referred to as the second, and similarly, the second may also be referred to as the first. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".
[0061] First, the terms involved in one or more embodiments of the present application are explained.
[0062] Live streaming: The transmission of live audio and video data can be transmitted over the network as a stable and continuous stream for viewers to watch.
[0063] Then, a brief description of the access scheduling method provided by the application is given.
[0064] With the continuous development of computer technology, online social platforms are becoming more and more popular, and live broadcasts on online social platforms have gradually become a popular form of real-time interaction. In the live broadcast system, the content distribution network (CDN) is usually responsible for users to watch live broadcasts, such as commercial CDN or self-built CDN. The service nodes in the CDN that are responsible for users to watch live broadcasts will generate bandwidth. Correspondingly, bandwidth costs will also follow.
[0065] Bandwidth is usually charged based on the monthly average of 95% of the daily value. Figure 1A , Figure 1AThe figure shows a bandwidth diagram provided by the prior art that is charged based on the monthly average of the daily 95 value: the daily 95 value refers to sampling points at fixed time intervals, for example, 5 minutes is a charging point, and the daily 95 value means that there are 60*24 / 5=288 points in a day, and the 288*95%=273rd point from low to high bandwidth is the 95 charging point. The average cost of the bandwidth corresponding to the 95 charging points every day in a month is the monthly average of the daily 95 value, that is, the bandwidth cost.
[0066] For service nodes with the same unit cost: Assume that in a month (30 days), a hot event on a certain day causes burst traffic, which drives up the bandwidth of the 95 billing point on that day, and the rest are normal traffic. The bandwidth of the 95 billing point on the day of the hot event is 30G, and the bandwidth of the 95 billing point on the other 29 days is 10G. The bandwidth of the 95 billing point for that month is (29*10+30) / 30=10.667G, and the bandwidth cost for the whole month is 10.667*30*N, where N is the unit cost of 1G bandwidth. If there is no burst traffic, the bandwidth cost for a month is 10*30*N, and the burst traffic causes the bandwidth cost of a service node to increase by 0.667*30*N=20G*N.
[0067] Due to the geographical coverage of service nodes, for example, the service node in area A only serves users in area A, and generally does not serve users in area B. If the service node in area A is used to serve users in area B, such cross-regional services will result in long network transmission distance and poor service quality.
[0068] For example, in a live broadcast event, if the bandwidth generated is relatively large, it is easy to cause the bandwidth of the service node in the user-concentrated area to be very high, which will exceed the 95 billing point. If this lasts for a long time, the 95 billing point bandwidth of the service node on that day will be increased (relative to the previous month), thereby increasing the monthly bandwidth cost of the service node. However, in some areas where users are not concentrated, the bandwidth of the service node did not reach the 95 billing point at that time, and it is still billed according to the 95 billing point bandwidth for the entire month, resulting in a waste of resources. In fact, the 95 billing point bandwidth of the service node itself does not vary much from month to month, because the number of users does not change much and the flow of personnel is not large, so it can be simply understood that the 95 billing point is fixed. See Figure 1B , Figure 1B A bandwidth diagram of normal traffic and burst traffic provided by the prior art is shown: the arc corresponding to the dotted line above represents the bandwidth of normal traffic, the horizontal line corresponding to the dotted line is the 95% billing point of normal traffic, the arc corresponding to the solid line represents the bandwidth of burst traffic, the horizontal line corresponding to the solid line is the 95% billing point of burst traffic, and the 95% billing point corresponding to burst traffic is higher than that of normal traffic.
[0069] Too high bandwidth leads to high load on service nodes, and there is a risk that the bandwidth will exceed the upper limit of the service node bandwidth, causing service crashes and affecting service quality. If you want to ensure that the service node can serve users normally and provide live video for users, there are generally two common solutions: one is to always have more sufficient resource coverage; the other is to manually adjust the service nodes in the low-load area to cover the high-load area when the maintenance personnel find that the service node corresponding to a certain area has a high load.
[0070] However, the first method requires a physical machine that is always available. Whether the spare physical machine is used or not will incur costs. During the non-emergency time of live broadcast, the physical machine is idle, and the resource utilization rate is low, which will cause waste. The second method has a high degree of human involvement. After discovering the high-load service node, it is necessary to adjust the low-load service node in time. After the load is reduced, it needs to be adjusted again for recovery. The process is complicated and inefficient.
[0071] Therefore, the present application provides an access scheduling method, receiving an access request, and determining the first service node corresponding to the access request; obtaining the first real-time bandwidth and the first billing point bandwidth of the first service node; based on the first real-time bandwidth and the first billing point bandwidth, counting the first flow billing information of the first service node; when the first flow billing information reaches the first preset excess threshold, switching the second service node as the service node corresponding to the access request. The accuracy of the first flow billing information can be improved by the first real-time bandwidth and the first billing point bandwidth, and the first preset excess threshold can be used to accurately determine whether the first service node can provide services for the access request, thereby realizing automatic switching of service nodes, ensuring the quality of access scheduling while allowing the service node to carry more bandwidth, and at the same time, there is no need to set up a spare physical machine, which can reduce costs and improve resource utilization.
[0072] The access scheduling method provided in one or more embodiments of the present application can be applied to scenes such as watching live broadcasts, online meetings, listening to broadcasts, video chats, etc., and the specific selection is made according to the actual situation. The present application does not impose any limitation on this.
[0073] In the present application, an access scheduling method is provided. The present application also relates to an access scheduling device, a computing device, and a computer-readable storage medium, which are described in detail one by one in the following embodiments.
[0074] Figure 2 A flowchart of an access scheduling method provided according to an embodiment of the present application is shown, which is applied to a management platform. The method specifically includes the following steps:
[0075] Step 202: Receive an access request, and determine a first service node corresponding to the access request.
[0076] Specifically, an access request refers to a user's request to access a multimedia stream, such as a request initiated by a user to enter a live broadcast room to watch a live broadcast. A service node refers to a node that feeds back multimedia streams to users, and refers to a node on the CDN. The first service node, also known as the primary service node, refers to the service node in the area where the user corresponding to the access request is located.
[0077] In actual applications, when a user accesses a multimedia stream through a client, such as entering a live broadcast room, joining a video conference, listening to a real-time broadcast, etc., the client will generate an access request for the multimedia stream, and then transmit it to the management platform through the network. Accordingly, after receiving the access request, the management platform determines the first service node corresponding to the access request.
[0078] Preferably, the access request carries location information, and the management platform determines the first service node corresponding to the location information from multiple service nodes. For example, if the location information points to location A, the management platform determines the service node serving location A as the first service node, thereby improving the efficiency and accuracy of determining the first service node.
[0079] Step 204: Obtain a first real-time bandwidth and a first charging point bandwidth of the first service node.
[0080] Specifically, real-time bandwidth refers to the bandwidth currently occupied by the service node for providing services to users. The first real-time bandwidth refers to the real-time bandwidth of the first service node. The billing point refers to the point used to calculate the bandwidth cost, such as the 95 billing point. The billing point bandwidth refers to the bandwidth corresponding to the billing point, such as the daily 95 value (95 billing point bandwidth). The first billing point bandwidth refers to the billing point bandwidth of the first service node.
[0081] In actual applications, after the first service node is determined, the first real-time bandwidth and the first charging point bandwidth of the first service node may be obtained.
[0082] There are multiple methods for obtaining the first real-time bandwidth of the first service node: the bandwidth generated by each multimedia stream fed back by the first service node to the user can be obtained, and then the bandwidth generated by each multimedia stream can be added to obtain the first real-time bandwidth; the real-time bandwidth corresponding to the identifier of the first service node can be obtained from a monitoring device used to monitor the real-time bandwidth of each service node according to the identifier of the first service node, that is, the first real-time bandwidth of the first service node, and other methods can also be used. This application does not limit this.
[0083] It should be noted that the bandwidth of the first charging point may be pre-configured for the first service node, or the bandwidth may be obtained by obtaining the historical bandwidth cost of the first service node and calculating the bandwidth according to the historical bandwidth cost.
[0084] Step 206: Based on the first real-time bandwidth and the first billing point bandwidth, first traffic billing information of the first service node is collected.
[0085] Specifically, the traffic billing information refers to information related to the billing bandwidth in the process of the service node providing services through traffic, such as service duration, bandwidth, etc.
[0086] In actual applications, after obtaining the first real-time bandwidth and the first billing point bandwidth, the first traffic billing information of the first service node within a set time can be counted. For example, if the billing method is daily 95 value monthly average, the set time is one day.
[0087] Optionally, after obtaining the first real-time bandwidth and the first billing point bandwidth, the first traffic billing information of the first service node can be directly counted based on the first real-time bandwidth and the first billing point bandwidth, so that the process can be simplified and the efficiency of access scheduling can be improved.
[0088] Optionally, after the first real-time bandwidth and the first charging point bandwidth are acquired, the first real-time bandwidth and the first charging point bandwidth may be compared first, and then a corresponding scheduling strategy may be selected based on the comparison result.
[0089] In one or more optional embodiments of the present specification, when the comparison result is that the first real-time bandwidth reaches the first billing point bandwidth, the first traffic billing information is counted, that is, based on the first real-time bandwidth and the first billing point bandwidth, the first traffic billing information of the first service node is counted, and the specific implementation process may be as follows:
[0090] When the first real-time bandwidth reaches the first billing point bandwidth, first traffic billing information of the first service node is collected according to the first real-time bandwidth and the first billing point bandwidth.
[0091] In actual applications, if the first real-time bandwidth reaches the first billing point bandwidth, it means that there may be burst traffic on the first service node, causing the first real-time bandwidth to reach the first billing point bandwidth. At this time, the first traffic billing information of the first service node can be counted based on the first real-time bandwidth and the first billing point bandwidth.
[0092] In one or more optional embodiments of the present specification, when the comparison result is that the first real-time bandwidth does not reach the first billing point bandwidth, it means that the first service node still has sufficient bandwidth to serve the user corresponding to the access request, and the first service node is used to respond to the access request.
[0093] In this way, by comparing the first real-time bandwidth and the first billing point bandwidth, it is possible to quickly determine whether the bandwidth of the first service node is sufficient. If sufficient, directly using the first service node to respond to the access request can improve response efficiency, reduce user access time, and provide user stickiness; if insufficient, further determine whether the first service node can continue to respond to the access request. Double judgment improves the accuracy of determination, thereby improving the reliability and accuracy of access scheduling.
[0094] It should be noted that no matter which service node responds to the access request, the response process is the same: after the management platform determines the service node that responds to the access request, the service node pulls the target multimedia stream corresponding to the access request, and the management platform feeds back the playback address of the target multimedia stream on the service node to the client. The client establishes a communication connection with the service node through the playback address, and the service node feeds back the target multimedia stream to the client through the communication connection for the user to watch.
[0095] In an achievable embodiment of the present specification, when the first real-time bandwidth reaches the first billing point bandwidth, the first traffic billing information of the first service node can be directly counted based on the first real-time bandwidth and the first billing point bandwidth, and it can be further determined whether the first service node can continue to respond to the access request. The double judgment improves the accuracy of the determination, thereby improving the reliability and accuracy of the access scheduling.
[0096] In another achievable embodiment of the present specification, when the first real-time bandwidth reaches the first billing point bandwidth, it is also possible to determine whether the bandwidth of other service nodes corresponding to the access request is sufficient, and select a corresponding scheduling strategy according to the determination result. That is, when the first real-time bandwidth reaches the first billing point bandwidth, the first flow billing information of the first service node is counted according to the first real-time bandwidth and the first billing point bandwidth. The specific implementation process can be as follows:
[0097] When the first real-time bandwidth reaches the first billing point bandwidth, acquiring a second real-time bandwidth and a second billing point bandwidth of a second service node;
[0098] When the second real-time bandwidth reaches the second billing point bandwidth, first traffic billing information of the first service node is collected according to the first real-time bandwidth and the first billing point bandwidth.
[0099] Specifically, the second service node can be a main service node, such as multiple service nodes are set for an area, the first service node is one of them, and the second service node is any service node among the multiple service nodes except the first service node; it can also be a backup service node or a temporary service node, that is, the second service node refers to a service node outside the area where the user corresponding to the access request is located. For example, the area where the user corresponding to the access request is located is A, and the area served by the second service node is B. Since the bandwidth generated by B is relatively low, the second service node is temporarily called to provide services for A. The second real-time bandwidth refers to the real-time bandwidth of the second service node. The second billing point bandwidth refers to the billing point bandwidth of the second service node, wherein the second billing point bandwidth can be the same as the second billing point bandwidth in value, or it can be different.
[0100] In actual applications, in order to balance the bandwidth of each service node, when the first real-time bandwidth reaches the bandwidth of the first billing point, that is, the available bandwidth on the first service node is insufficient, the second real-time bandwidth and the second billing point bandwidth of the second service node are obtained; and it is determined whether the second real-time bandwidth reaches the bandwidth of the second billing point. If it reaches, it means that the available bandwidth on the second service node is also insufficient. At this time, the first flow billing information of the first service node is counted based on the first real-time bandwidth and the first billing point bandwidth. In this way, the real-time bandwidth of the first service node and the second service node can be balanced to a certain extent, thereby avoiding the increase of the billing point caused by burst traffic, and then reducing bandwidth costs.
[0101] In addition, when the second real-time bandwidth reaches the second billing point bandwidth, it means that the second service node still has sufficient bandwidth to serve the user corresponding to the access request, and the second service node is used to respond to the access request, that is, when the second real-time bandwidth reaches the second billing point bandwidth, the second service node is switched as the service node corresponding to the access request. In this way, the bandwidth can be shared for the first service node, so that the real-time bandwidth of each service node is balanced, and the billing point bandwidth of a certain service node is prevented from increasing due to burst traffic, thereby reducing bandwidth costs.
[0102] It should be noted that the second real-time bandwidth and the second billing point bandwidth of the second service node will be obtained only when there is a corresponding second service node for the access request. If not, the first traffic billing information of the first service node is directly calculated based on the first real-time bandwidth and the first billing point bandwidth. That is, before obtaining the second real-time bandwidth and the second billing point bandwidth of the second service node, it also includes:
[0103] Identifying whether there is a second service node corresponding to the access request;
[0104] If not, executing the step of collecting first traffic billing information of the first service node according to the first real-time bandwidth and the first billing point bandwidth;
[0105] If so, execute the step of obtaining the second real-time bandwidth and the second billing point bandwidth of the second service node.
[0106] In actual applications, when the first real-time bandwidth reaches the bandwidth of the first billing point, first determine whether the access request has a corresponding second service node. If so, obtain the second real-time bandwidth and the second billing point bandwidth of the second service node, and then determine whether the second service node has sufficient bandwidth to respond to the access request. If not, it is necessary to further determine whether the first service node can continue to respond to the access request, that is, based on the first real-time bandwidth and the first billing point bandwidth, count the first traffic billing information of the first service node. In this way, in the presence of a second service node, the second service node can be used to share bandwidth for the first service node, thereby avoiding the increase in billing points caused by burst traffic, thereby reducing bandwidth costs. In the absence of a second service node, through simple judgment, the access scheduling accuracy is improved without increasing too much data volume, thereby improving the reliability and accuracy of access scheduling.
[0107] Step 208: When the first traffic billing information reaches a first preset excess threshold, switch the second service node as the service node corresponding to the access request.
[0108] Specifically, the preset excess threshold is used to measure whether the traffic billing information has reached a peak value, that is, to measure whether the service node can provide feedback for the current access request. The second service node can be a primary service node, a backup service node, or a temporary service node.
[0109] In actual applications, if the first traffic billing information reaches the first preset excess threshold, it means that the first service node can no longer respond to the current access request for feedback. If the first service node continues to be used to respond to the current access request, the bandwidth of the billing point of the first service node may increase, thereby increasing the bandwidth cost. Therefore, the second service node is switched as the service node corresponding to the access request. That is, the second service node is used to respond to the current access request.
[0110] It should be noted that, if there is a second service node corresponding to the access request, the second service node can be switched as the service node corresponding to the access request; if there is no second service node, a service node other than the first target service node is used as the second service node, and then the second service node is switched as the service node corresponding to the access request.
[0111] In one or more optional embodiments of the present specification, the first traffic billing information may be compared with the first preset excess threshold, and then the corresponding scheduling strategy may be selected based on the comparison result. That is, the first traffic billing information includes the first real-time bandwidth and the target statistical duration, the target statistical duration being the designated duration corresponding to the first service node counted when the first real-time bandwidth exceeds the first billing point bandwidth; before switching the second service node as the service node corresponding to the access request when the first traffic billing information reaches the first preset excess threshold, it also includes:
[0112] It is determined whether the first real-time bandwidth is lower than a preset bandwidth threshold corresponding to the first service node, and it is determined whether the target statistical duration is lower than a preset duration threshold corresponding to the first service node.
[0113] Specifically, the target statistical duration refers to the specified duration corresponding to the first service node counted when the first real-time bandwidth exceeds the bandwidth of the first billing point, such as service duration, scheduling duration, etc. The preset bandwidth threshold refers to the bandwidth peak value corresponding to the first service node set in the first preset excess threshold. The preset duration threshold refers to the statistical duration peak value corresponding to the first service node set in the first preset excess threshold.
[0114] In actual applications, the first traffic billing information is divided into the first real-time bandwidth and the target statistical duration, and the first preset excess threshold is divided into the preset bandwidth threshold and the preset duration threshold. After obtaining the first traffic billing information, it can be determined whether the first traffic billing information is lower than the first preset excess threshold, that is, whether the first real-time bandwidth is lower than the preset bandwidth threshold, and whether the target statistical duration is lower than the preset duration threshold. If the first real-time bandwidth is lower than the preset bandwidth threshold and the target statistical duration is lower than the preset duration threshold, that is, the first traffic billing information is lower than the first preset excess threshold, it means that the first service node can continue to respond to the access request and use the first service node as the service node for the access request. If the first real-time bandwidth is lower than the preset bandwidth threshold and / or the target statistical duration is lower than the preset duration threshold, that is, the first traffic billing information reaches the first preset excess threshold, it means that the first service node can no longer respond to the access request and switches to the second service node as the service node corresponding to the access request.
[0115] In this way, whether the first service node can continue to respond to the access request is judged by two conditions, thereby improving the accuracy of the judgment and further improving the reliability and accuracy of the access scheduling.
[0116] In addition, the preset bandwidth threshold may be a bandwidth threshold set according to human experience, or may be calculated based on the bandwidth of the first billing point. That is, before determining whether the first real-time bandwidth is lower than the preset bandwidth threshold corresponding to the first service node, it also includes:
[0117] A preset bandwidth threshold corresponding to the first service node is calculated according to the first charging point bandwidth and a set value.
[0118] In practical applications, the set value may be a set burst bandwidth, that is, the difference between the real-time bandwidth of the first service node and the bandwidth of the first billing point when the bandwidth exceeds the bandwidth of the first billing point, that is, the burst volume. At this time, the bandwidth of the first billing point may be added to the set value to obtain the preset bandwidth threshold corresponding to the first service node.
[0119] The set value can be a multiple of the set bandwidth of the first billing point, that is, the real-time bandwidth of the first service node is a multiple of the bandwidth of the first billing point. At this time, when the multiple is greater than 1, the bandwidth of the first billing point can be multiplied by the set value to obtain the preset bandwidth threshold corresponding to the first service node. For example, if the bandwidth of the first billing point is 20G and the set value is 1.25, then the preset bandwidth threshold is 25G=20G*1.25G. When the multiple is less than 1, the bandwidth of the first billing point can be multiplied by the set value, and then the bandwidth of the first billing point can be added to obtain the preset bandwidth threshold corresponding to the first service node. For example, if the bandwidth of the first billing point is 20G and the set value is 0.25, where 0.25 represents that the burst amount of bandwidth is 25% of the bandwidth of 95 billing points, then the preset bandwidth threshold is 25G=20G*0.25+20G.
[0120] In this way, the preset bandwidth threshold corresponding to the first service node is determined based on the bandwidth of the first charging point, and the time when the bandwidth increases and decreases is taken into consideration, so that the preset bandwidth threshold can be more reasonable, thereby improving the reliability of access scheduling.
[0121] In one or more optional embodiments of the present specification, the target statistical duration includes a service statistical duration of a service provided by the first service node and a scheduling statistical duration of a scheduling of the first service node by the management platform based on an access request; and the determining whether the target statistical duration is lower than a preset duration threshold corresponding to the first service node includes at least one of the following:
[0122] Determine whether the service statistical duration is lower than a preset service duration threshold corresponding to the first service node;
[0123] It is determined whether the scheduling statistical duration is lower than a preset scheduling duration threshold corresponding to the first service node.
[0124] Specifically, the service statistics duration refers to the duration of service provided by the first service node when the first real-time bandwidth exceeds the bandwidth of the first billing point. The scheduling statistics duration refers to the duration of the management platform scheduling the first service node when the first real-time bandwidth exceeds the bandwidth of the first billing point. The preset service duration threshold refers to the peak value of the service duration corresponding to the first service node set in the preset bandwidth threshold. The preset scheduling duration threshold refers to the peak value of the scheduling duration corresponding to the scheduling of the first service node by the management platform set in the preset bandwidth threshold.
[0125] In practical applications, to determine whether the target statistical duration is lower than the preset duration threshold corresponding to the first service node: it can be used to determine whether the service statistical duration is lower than the preset service duration threshold corresponding to the first service node; it can be used to determine whether the scheduling statistical duration is lower than the preset scheduling duration threshold corresponding to the first service node; it can also be used to determine whether the service statistical duration is lower than the preset service duration threshold corresponding to the first service node, and whether the scheduling statistical duration is lower than the preset scheduling duration threshold corresponding to the first service node. In this way, by using the service statistical duration and / or scheduling statistical duration, it is possible to determine whether the target statistical duration is lower than the preset duration threshold in a more fine-grained manner, thereby improving the accuracy of the judgment, and thereby improving the reliability and accuracy of the access scheduling.
[0126] In addition, before determining whether the scheduling statistical duration is lower than the preset scheduling duration threshold corresponding to the first service node, it is also necessary to determine the preset scheduling duration threshold. The preset scheduling duration threshold may be a bandwidth threshold set based on human experience, or may be determined based on the service information of the first service node.
[0127] In an implementable method of the present specification, before determining whether the scheduling statistical duration is lower than a preset scheduling duration threshold corresponding to the first service node, the method further includes:
[0128] Determining whether a first real-time bandwidth of the first service node has reached a preset bandwidth threshold corresponding to the first service node;
[0129] If not, obtaining a target total service duration corresponding to the first service node, wherein the target total service duration is a total duration for which the first service node is allowed to provide services when the first real-time bandwidth exceeds the first billing point bandwidth;
[0130] Calculate the remaining service duration corresponding to the first service node according to the target total service duration and the service statistical duration;
[0131] A preset scheduling duration threshold corresponding to the first service node is determined according to the remaining service duration.
[0132] Specifically, the target total service duration is the total duration of service provided by the first service node when the first real-time bandwidth exceeds the bandwidth of the first billing point. For example, according to the billing method of daily 95 values and monthly average, the target total service duration of the first service node per day is 75 minutes. The remaining service duration refers to the remaining duration of service provided by the first service node when the first real-time bandwidth exceeds the bandwidth of the first billing point.
[0133] In actual application, first determine whether the first real-time bandwidth has reached the preset bandwidth threshold within the set time. If not, obtain the target service total duration corresponding to the first service node according to the billing method of the first service node, or directly obtain the target service total duration set for the first service node. Then subtract the target service total duration from the service statistics duration to obtain the remaining service duration corresponding to the first service node.
[0134] Furthermore, the preset scheduling duration threshold corresponding to the first service node is determined based on the remaining service time. The remaining service time can be subtracted from the set time to obtain the preset scheduling duration threshold corresponding to the first service node, or the remaining service time can be multiplied by the set percentage to obtain the preset scheduling duration threshold corresponding to the first service node. For example, the remaining service time is 30 minutes, and the set percentage is 50%, then the preset scheduling duration threshold corresponding to the first service node is 15 minutes = 30 minutes * 50%.
[0135] In another achievable method of the present specification, after determining whether the first real-time bandwidth of the first service node has reached a preset bandwidth threshold corresponding to the first service node, the method further includes:
[0136] If so, the time duration for the real-time bandwidth of the first service node to reach the preset bandwidth threshold from the first charging point bandwidth is used as the preset scheduling time duration threshold corresponding to the first service node.
[0137] In actual application, it is first determined whether the first real-time bandwidth has reached the preset bandwidth threshold within the set time. If yes, the time taken for the real-time bandwidth of the first service node to reach the preset bandwidth threshold from the bandwidth of the first billing point is used as the preset scheduling time threshold corresponding to the first service node.
[0138] Thus, by judging whether the first real-time bandwidth has reached the preset bandwidth threshold within the set time and selecting different preset scheduling duration thresholds, it can be ensured to a certain extent that the service node can serve more access requests without increasing the bandwidth cost.
[0139] It should be noted that, in order to ensure the success rate of switching the second service node as the service node corresponding to the access request when the first traffic billing information reaches the first preset excess threshold, before switching the second service node as the service node corresponding to the access request, it is also necessary to determine whether the second service node can continue to respond to the access request. That is, before switching the second service node as the service node corresponding to the access request, it also includes:
[0140] Determine a second service node corresponding to the access request, and obtain a second real-time bandwidth and a second billing point bandwidth corresponding to the second service node;
[0141] Based on the second real-time bandwidth and the second billing point bandwidth, collecting statistics on second traffic billing information of the second service node;
[0142] The switching the second service node as the service node corresponding to the access request includes:
[0143] When the second traffic charging information does not reach a second preset excess threshold, the second service node is switched as the service node corresponding to the access request.
[0144] The process of obtaining the second real-time bandwidth and the second billing point bandwidth and counting the second traffic billing information is the same as the process of obtaining the first real-time bandwidth and the first billing point bandwidth and counting the first traffic billing information. To avoid repetition, it will not be repeated here.
[0145] In addition, when the second traffic billing information does not reach a second preset excess threshold, a third service node is switched as the service node corresponding to the access request, wherein the third service node is any service node whose real-time bandwidth is smaller than the billing bandwidth.
[0146] Combination Figure 3A-3D , the request scheduling method provided in this application is described.
[0147] Assuming that the bandwidth billing method is the monthly average of 95 points per day, 273 points need to be taken every day. If 288-273 (15*5=75 minutes) points are very high, and the 273rd point is small, then the previous high bandwidth is equivalent to free. Figure 3A , Figure 3AA bandwidth diagram of normal traffic and burst traffic provided by the present application is shown: the horizontal line is the 95 billing point, the arc corresponding to the dotted line and the arc corresponding to the solid line are both two trends of bandwidth, but the billing point is the same, and the arc corresponding to the solid line can obviously use more bandwidth, and the bandwidth cost is the same as the arc corresponding to the dotted line. Therefore, on a service node, under the rule of not running out of the service node's carrying bandwidth, the higher the bandwidth used at the 95 billing point, the more burst traffic can be spread out, and the less likely the overall billing point will be raised, the more overall cost savings will be.
[0148] Assume that there are 3 service nodes: A, B, and C, and the bandwidths of 95 billing points are 20G, 20G, and 20G respectively. Service node A covers location a, B covers location b, and C covers location c. In the case of no control, in a live broadcast, the bandwidth of service node A has been above 30G for 75 minutes. If it is still above 30G at the next 5-minute billing point, the bandwidth of 95 billing point will become 30G, and service nodes B and C will only use 15G bandwidth. If in the next 5 minutes, the 10G bandwidth on service node A is all switched to service node B, the bandwidth of service node B can continue to be 25G for 75 minutes, and then in the 80th minute, the 10G bandwidth of service node B is switched to service node C, and service node C can also serve 25G bandwidth for 75 minutes. On the whole, the bandwidth of the entire process does not exceed 95 billing points, but it actually takes on 30+15+15=60G of bandwidth. The bandwidth cost saved is 10G*75min*3*N, where N is the unit cost of 1G bandwidth.
[0149] But in reality, it is impossible to do so extreme, because for users, it is a continuous viewing process, and the viewing traffic of users who have just entered the live broadcast room can only be allocated to service node B or C, and the viewing link on A cannot be directly disconnected. Therefore, in order to make the arc corresponding to the solid line as high as possible, the continuous viewing process must also be considered.
[0150] See also Figure 3B , Figure 3B A schematic diagram of switching service nodes in an access scheduling method provided by the present application is shown: the left side is service node A, the middle is the bandwidth of service node B, and the right side is the bandwidth of service node C. Starting from 10 o'clock, after the bandwidth of service node A increases from 20G to 25G, service node A will no longer be scheduled, and the bandwidth of service node A will be automatically decreased (because people will enter and exit the live broadcast room, and the total number of people is almost constant). At this time, service node B will be scheduled, and it will slowly increase from 15G. After it can be taken over to 25G, service node B will no longer be scheduled, and service node C will be scheduled.
[0151] The upper limit that can be scheduled (preset bandwidth threshold) is 25G=20G*25%+20G. The burst volume can only be 25% of the 95 billing points. Because the time for traffic to drop must be considered, the burst volume cannot be too large.
[0152] The burst time that can be scheduled (preset scheduling time threshold) is: min (XG->25G time, 75min / 2). If the time from X->25G is too long, such as 80 minutes, only 38 minutes can be scheduled by default, otherwise it will exceed the billing point. If the burst is too fast and reaches 25G in 20 minutes, scheduling will not continue.
[0153] The time for carrying burst traffic is: scheduling time + 25G->20G
[0154] In summary, the upper limit of the scheduling bandwidth is changed from the configured bandwidth to 95 billing point bandwidth*1.25, and the time exceeding 95 bandwidth must not exceed 75 minutes. Based on this, the process of sorting out the access scheduling method is sorted out.
[0155] See also Figure 3C , Figure 3C A schematic diagram of the arrangement process of an access scheduling method provided by the present application is shown: the user requests scheduling and brings his own IP; the scheduling system (management platform) selects a service node from a list of service nodes that meet the scheduling to provide services to the user; after the user obtains the playback address, a link is established with the service node, and the user can watch normally; the collection service regularly collects real-time bandwidth from the service node and determines whether the bandwidth exceeds 95 billing points. If so, the service node status is updated.
[0156] See also Figure 3C and Figure 3D ,in Figure 3D A schematic diagram of a processing flow of an access scheduling method provided by the present application is shown:
[0157] ① The user sends an access request with the user IP, and the user IP is resolved to determine the location information as region a.
[0158] ②The dispatching system selects service nodes that can cover area a.
[0159] ③ If there is a service node covering area a, for example, A, determine whether the real-time bandwidth of service node A is less than the bandwidth of the billing point. If the real-time bandwidth of service node A is less than the bandwidth of the billing point, it means that the current bandwidth traffic is normal, and it is directly dispatched to the user. At this point, the process ends. Otherwise, go to the next step.
[0160] ④ Then judge "temporary service node list! = empty && real-time bandwidth < 95 billing point bandwidth", if the temporary covered temporary service node list is not empty, for example, there is a B service node, and B's real-time bandwidth is less than 95 billing point bandwidth, then return to service node B for service, and the process ends. At this time, because the bandwidth of service node A is still sufficient, the temporary covered service node list is empty, and go directly to the next step.
[0161] ⑤ As the number of viewers increases, ③④ are no longer satisfied. At this time, the real-time bandwidth of the service node is less than the preset bandwidth threshold (95 billing point bandwidth * 1.25), and the service node exceeds the billing point bandwidth for that day (service statistics duration) < 75 minutes (total target service duration), because there may be many time periods that exceed the billing point bandwidth, but the time is relatively short. For example, if the billing point bandwidth is exceeded for 30 minutes in the morning, 45 minutes can be used in the afternoon and evening (remaining service duration). It is also necessary to meet the scheduling statistics duration lower than the preset scheduling duration threshold, that is, min (billing point bandwidth->preset bandwidth threshold, remaining service duration / 2), which is 45 / 2 here, which is the condition for this scheduling. At the beginning, A meets the conditions, then A is output and the process ends.
[0162] ⑥ As the number of users increases, ③④⑤ are no longer satisfied, and there is no service node in a region that can serve users. Then select service nodes covered by other regions. If a service node with real-time bandwidth < 95 billing point bandwidth is selected, it means that it can bear more traffic. Assume that this is service node B in region B.
[0163] ⑦ Increase the area covered by service node B by area a, i.e., modify the coverage, and continue with the process of ②.
[0164] ⑧At this time, condition ② is not met, so enter condition ③. Because there is service node B in the temporary service node list, and B's real-time bandwidth is less than 95 billing point bandwidth, service node B is dispatched to the user, and the process ends.
[0165] ⑨ As the number of users increases, the real-time bandwidth of service node B is no longer satisfied with less than 95 billing point bandwidth, so the logic of ⑤ begins. The rest of the process is the same.
[0166] ⑩Finally, as the user on service node A leaves, condition ② will be met again, and the coverage of service node B will be modified back, that is, the coverage modification is restored. This step ensures quality, and the above steps ensure quality and carry more bandwidth.
[0167] The access scheduling method provided by the present application receives an access request and determines the first service node corresponding to the access request; obtains the first real-time bandwidth and the first billing point bandwidth of the first service node; based on the first real-time bandwidth and the first billing point bandwidth, counts the first flow billing information of the first service node; when the first flow billing information reaches the first preset excess threshold, switches the second service node as the service node corresponding to the access request. The accuracy of the first flow billing information can be improved by the first real-time bandwidth and the first billing point bandwidth, and the first preset excess threshold is used to accurately determine whether the first service node can provide services for the access request, thereby realizing automatic switching of service nodes, ensuring the quality of access scheduling while allowing the service node to carry more bandwidth, and at the same time, there is no need to set up a spare physical machine, which can reduce costs and improve resource utilization.
[0168] In addition, by maximizing the use of the bandwidth at the billing point, accurately calculating the time that can exceed the bandwidth usage at the billing point, and automatically modifying the regional configuration, the machine can carry more traffic while ensuring the quality of the live broadcast and reducing costs.
[0169] The following combination Figure 4 , taking the application of the access scheduling method provided by this application in a live broadcast scenario as an example, the access scheduling method is further described. Figure 4 A processing flow chart of an access scheduling method applied to a live broadcast scenario provided by an embodiment of the present application is shown, which specifically includes the following steps:
[0170] Step 402: Receive an access request for a target live broadcast, determine a first service node corresponding to the access request, and obtain a first real-time bandwidth and a first billing point bandwidth of the first service node.
[0171] Step 404: Determine whether the first real-time bandwidth reaches the first billing point bandwidth.
[0172] If yes, execute step 406 , if no, execute step 428 .
[0173] Step 406: Identify whether there is a second service node corresponding to the access request.
[0174] If yes, execute step 408 , if no, execute step 410 .
[0175] Step 408: Acquire the second real-time bandwidth and the second billing point bandwidth of the second service node, and determine whether the second real-time bandwidth reaches the second billing point bandwidth.
[0176] If yes, execute step 410 , if no, execute step 424 .
[0177] Step 410: According to the first real-time bandwidth and the first charging point bandwidth, statistics of the first real-time bandwidth, the service statistics duration, and the scheduling statistics duration corresponding to the first service node are counted.
[0178] Step 412: Determine whether the first real-time bandwidth of the first service node has reached a preset bandwidth threshold corresponding to the first service node.
[0179] If not, execute step 414 , if not, execute step 416 .
[0180] Step 414: Obtain the target total service duration corresponding to the first service node, calculate the remaining service duration corresponding to the first service node based on the target total service duration and the service statistical duration; determine the preset scheduling duration threshold corresponding to the first service node based on the remaining service duration.
[0181] The target total service duration is the total duration during which the first service node is allowed to provide services when the first real-time bandwidth exceeds the bandwidth of the first billing point.
[0182] Step 416: The time duration for the real-time bandwidth of the first service node to reach the preset bandwidth threshold from the first charging point bandwidth is used as the preset scheduling time duration threshold corresponding to the first service node.
[0183] Step 418: Determine whether the first real-time bandwidth is lower than the preset bandwidth threshold corresponding to the first service node, whether the service statistics duration is lower than the preset service duration threshold corresponding to the first service node, and whether the scheduling statistics duration is lower than the preset scheduling duration threshold corresponding to the first service node.
[0184] If yes, execute step 428, if no, execute step 420.
[0185] Step 420: determine the second service node corresponding to the access request, and obtain the second real-time bandwidth and the second billing point bandwidth corresponding to the second service node; based on the second real-time bandwidth and the second billing point bandwidth, collect statistics on the second traffic billing information of the second service node.
[0186] Step 422: Determine whether the second traffic billing information reaches a second preset excess threshold.
[0187] If not, execute step 424, and if so, execute step 426.
[0188] Step 424: Switch the second service node as the service node corresponding to the access request.
[0189] Step 426: Switch the third service node as the service node corresponding to the access request.
[0190] Step 428: Use the first service node as the service node corresponding to the access request.
[0191] The access scheduling method provided by the present application can improve the accuracy of the first traffic billing information through the first real-time bandwidth and the first billing point bandwidth, and use the first preset excess threshold to accurately determine whether the first service node can provide services for the access request, thereby realizing automatic switching of service nodes, allowing the service node to carry more bandwidth while ensuring the access scheduling quality. At the same time, there is no need to set up a spare physical machine, which can reduce costs and improve resource utilization.
[0192] Corresponding to the above method embodiment, the present application also provides an access scheduling device embodiment, Figure 5 FIG. 1 shows a schematic diagram of the structure of an access scheduling device provided by an embodiment of the present application. Figure 5 As shown, the device is applied to a management platform and includes:
[0193] The receiving module 502 is configured to receive an access request and determine a first service node corresponding to the access request;
[0194] An acquisition module 504 is configured to acquire a first real-time bandwidth and a first billing point bandwidth of the first service node;
[0195] A first statistics module 506 is configured to collect statistics on first traffic billing information of the first service node based on the first real-time bandwidth and the first billing point bandwidth;
[0196] The switching module 508 is configured to switch the second service node as the service node corresponding to the access request when the first traffic accounting information reaches a first preset excess threshold.
[0197] Optionally, the first traffic billing information includes the first real-time bandwidth and a target statistical duration, where the target statistical duration is a specified duration corresponding to the first service node counted when the first real-time bandwidth exceeds the first billing point bandwidth;
[0198] The device also includes a judgment module, which is configured to:
[0199] It is determined whether the first real-time bandwidth is lower than a preset bandwidth threshold corresponding to the first service node, and it is determined whether the target statistical duration is lower than a preset duration threshold corresponding to the first service node.
[0200] Optionally, the target statistical duration includes a service statistical duration of a service provided by the first service node and a scheduling statistical duration of a scheduling of the first service node by the management platform based on an access request;
[0201] The determination module is further configured to perform at least one of the following:
[0202] Determine whether the service statistical duration is lower than a preset service duration threshold corresponding to the first service node;
[0203] It is determined whether the scheduling statistical duration is lower than a preset scheduling duration threshold corresponding to the first service node.
[0204] Optionally, the device further includes a first determining module configured to:
[0205] Determining whether a first real-time bandwidth of the first service node has reached a preset bandwidth threshold corresponding to the first service node;
[0206] If not, obtaining a target total service duration corresponding to the first service node, wherein the target total service duration is a total duration for which the first service node is allowed to provide services when the first real-time bandwidth exceeds the first billing point bandwidth;
[0207] Calculate the remaining service duration corresponding to the first service node according to the target total service duration and the service statistical duration;
[0208] A preset scheduling duration threshold corresponding to the first service node is determined according to the remaining service duration.
[0209] Optionally, the device further includes a second determining module configured to:
[0210] If so, the time duration for the real-time bandwidth of the first service node to reach the preset bandwidth threshold from the first charging point bandwidth is used as the preset scheduling time duration threshold corresponding to the first service node.
[0211] Optionally, the device further includes a second statistical module configured to:
[0212] Determine a second service node corresponding to the access request, and obtain a second real-time bandwidth and a second billing point bandwidth corresponding to the second service node;
[0213] Based on the second real-time bandwidth and the second billing point bandwidth, collecting statistics on second traffic billing information of the second service node;
[0214] The switching module 508 is further configured to:
[0215] When the second traffic charging information does not reach a second preset excess threshold, the second service node is switched as the service node corresponding to the access request.
[0216] Optionally, the first statistics module 506 is further configured to:
[0217] When the first real-time bandwidth reaches the first billing point bandwidth, first traffic billing information of the first service node is collected according to the first real-time bandwidth and the first billing point bandwidth.
[0218] Optionally, the first statistics module 506 is further configured to:
[0219] When the first real-time bandwidth reaches the first billing point bandwidth, acquiring a second real-time bandwidth and a second billing point bandwidth of a second service node;
[0220] When the second real-time bandwidth reaches the second billing point bandwidth, first traffic billing information of the first service node is collected according to the first real-time bandwidth and the first billing point bandwidth.
[0221] Optionally, the device further includes an identification module configured to:
[0222] Identifying whether there is a second service node corresponding to the access request;
[0223] If not, the step of collecting first traffic billing information of the first service node according to the first real-time bandwidth and the first billing point bandwidth is executed.
[0224] Optionally, the device further comprises a computing module configured to:
[0225] A preset bandwidth threshold corresponding to the first service node is calculated according to the first charging point bandwidth and a set value.
[0226] The access scheduling device provided in the present application can improve the accuracy of the first traffic billing information through the first real-time bandwidth and the first billing point bandwidth, and use the first preset excess threshold to accurately determine whether the first service node can provide services for the access request, thereby realizing automatic switching of service nodes, allowing the service node to carry more bandwidth while ensuring the access scheduling quality. At the same time, there is no need to set up a spare physical machine, which can reduce costs and improve resource utilization.
[0227] The above is a schematic scheme of an access scheduling device of this embodiment. It should be noted that the technical scheme of the access scheduling device and the technical scheme of the access scheduling method described above are of the same concept, and the details not described in detail in the technical scheme of the access scheduling device can be found in the description of the technical scheme of the access scheduling method described above.
[0228] Figure 6The block diagram of a computing device according to an embodiment of the present application is shown. The components of the computing device 600 include but are not limited to a memory 610 and a processor 620. The processor 620 is connected to the memory 610 via a bus 630, and the database 650 is used to store data.
[0229] The computing device 600 also includes an access device 640, which enables the computing device 600 to communicate via one or more networks 660. Examples of these networks include a public switched telephone network (PSTN), a local area network (LAN), a wide area network (WAN), a personal area network (PAN), or a combination of communication networks such as the Internet. The access device 640 may include one or more of any type of network interface (e.g., a network interface card (NIC)) of wired or wireless, such as an IEEE 802.11 wireless local area network (WLAN) wireless interface, a global microwave interconnection access (Wi-MAX) interface, an Ethernet interface, a universal serial bus (USB) interface, a cellular network interface, a Bluetooth interface, a near field communication (NFC) interface, and the like.
[0230] In one embodiment of the present application, the above components of the computing device 600 and Figure 6 Other components not shown in the figure may also be connected to each other, for example, via a bus. It should be understood that Figure 6 The computing device structure block diagram shown is only for the purpose of illustration, and is not intended to limit the scope of the present application. Those skilled in the art may add or replace other components as needed.
[0231] The computing device 600 may be any type of stationary or mobile computing device, including a mobile computer or mobile computing device (e.g., a tablet computer, a personal digital assistant, a laptop computer, a notebook computer, a netbook, etc.), a mobile phone (e.g., a smart phone), a wearable computing device (e.g., a smart watch, smart glasses, etc.), or other types of mobile devices, or a stationary computing device such as a desktop computer or PC. The computing device 600 may also be a mobile or stationary server.
[0232] When the processor 620 executes the computer instructions, the steps of the access scheduling method are implemented.
[0233] The above is a schematic scheme of a computing device of this embodiment. It should be noted that the technical scheme of the computing device and the technical scheme of the access scheduling method described above are of the same concept, and the details not described in detail in the technical scheme of the computing device can be found in the description of the technical scheme of the access scheduling method described above.
[0234] An embodiment of the present application further provides a computer-readable storage medium storing computer instructions, which, when executed by a processor, implement the steps of the access scheduling method as described above.
[0235] The above is a schematic scheme of a computer-readable storage medium of this embodiment. It should be noted that the technical scheme of the storage medium and the technical scheme of the access scheduling method described above are of the same concept, and the details not described in detail in the technical scheme of the storage medium can be found in the description of the technical scheme of the access scheduling method described above.
[0236] The above describes specific embodiments of the present application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0237] The computer instructions include computer program codes, which may be in source code form, object code form, executable files or some intermediate forms, etc. The computer readable medium may include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal and software distribution medium, etc.
[0238] It should be noted that, for the above-mentioned method embodiments, for the sake of simplicity of description, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described action sequence, because according to the present application, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.
[0239] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0240] The preferred embodiments of the present application disclosed above are only used to help explain the present application. The optional embodiments do not describe all the details in detail, nor do they limit the invention to the specific implementation methods described. Obviously, many modifications and changes can be made according to the content of the present application. The present application selects and specifically describes these embodiments in order to better explain the principles and practical applications of the present application, so that those skilled in the art can understand and use the present application well. The present application is only limited by the claims and their full scope and equivalents.
Claims
1. An access scheduling method, characterized in that: Applied to a management platform, the method comprises: receiving an access request, and determining a first service node corresponding to the access request; Obtaining a first real-time bandwidth and a first billing point bandwidth of the first service node; Based on the first real-time bandwidth and the first billing point bandwidth, collecting first traffic billing information of the first service node; When the first traffic billing information reaches a first preset excess threshold, switching the second service node as the service node corresponding to the access request; wherein: The first traffic billing information includes the first real-time bandwidth and a target statistical duration, where the target statistical duration is a specified duration corresponding to the first service node counted when the first real-time bandwidth exceeds the first billing point bandwidth; Before switching the second service node as the service node corresponding to the access request when the first traffic accounting information reaches a first preset excess threshold, the method further includes: Determine whether the target statistical duration is lower than a preset duration threshold corresponding to the first service node; The target statistical duration includes a service statistical duration for the first service node to provide services and a scheduling statistical duration for the management platform to schedule the first service node based on an access request; The determining whether the target statistical duration is lower than a preset duration threshold corresponding to the first service node includes at least one of the following: Determine whether the service statistical duration is lower than a preset service duration threshold corresponding to the first service node; It is determined whether the scheduling statistical duration is lower than a preset scheduling duration threshold corresponding to the first service node.
2. The method according to claim 1, characterized in that Before switching the second service node as the service node corresponding to the access request when the first traffic accounting information reaches a first preset excess threshold, the method further includes: It is determined whether the first real-time bandwidth is lower than a preset bandwidth threshold corresponding to the first service node.
3. The method according to claim 1, characterized in that: Before determining whether the scheduling statistical duration is lower than a preset scheduling duration threshold corresponding to the first service node, the method further includes: Determining whether a first real-time bandwidth of the first service node has reached a preset bandwidth threshold corresponding to the first service node; If not, obtaining a target total service duration corresponding to the first service node, wherein the target total service duration is a total duration for which the first service node is allowed to provide services when the first real-time bandwidth exceeds the first billing point bandwidth; Calculate the remaining service duration corresponding to the first service node according to the target total service duration and the service statistical duration; A preset scheduling duration threshold corresponding to the first service node is determined according to the remaining service duration.
4. The method according to claim 3, characterized in that After determining whether the first real-time bandwidth of the first service node has reached a preset bandwidth threshold corresponding to the first service node, the method further includes: If so, the time duration for the real-time bandwidth of the first service node to reach the preset bandwidth threshold from the first charging point bandwidth is used as the preset scheduling time duration threshold corresponding to the first service node.
5. The method according to claim 1, characterized in that Before switching the second service node as the service node corresponding to the access request, the method further includes: Determine a second service node corresponding to the access request, and obtain a second real-time bandwidth and a second billing point bandwidth corresponding to the second service node; Based on the second real-time bandwidth and the second billing point bandwidth, collecting statistics on second traffic billing information of the second service node; The switching the second service node as the service node corresponding to the access request includes: When the second traffic charging information does not reach a second preset excess threshold, the second service node is switched as the service node corresponding to the access request.
6. The method according to claim 1, characterized in that The counting of first traffic billing information of the first service node based on the first real-time bandwidth and the first billing point bandwidth includes: When the first real-time bandwidth reaches the first billing point bandwidth, first traffic billing information of the first service node is collected according to the first real-time bandwidth and the first billing point bandwidth.
7. The method according to claim 6, characterized in that When the first real-time bandwidth reaches the first billing point bandwidth, counting first traffic billing information of the first service node according to the first real-time bandwidth and the first billing point bandwidth includes: When the first real-time bandwidth reaches the first billing point bandwidth, acquiring a second real-time bandwidth and a second billing point bandwidth of a second service node; When the second real-time bandwidth reaches the second billing point bandwidth, first traffic billing information of the first service node is collected according to the first real-time bandwidth and the first billing point bandwidth.
8. The method according to claim 7, characterized in that Before acquiring the second real-time bandwidth and the second billing point bandwidth of the second service node, the method further includes: Identifying whether there is a second service node corresponding to the access request; If not, the step of collecting first traffic billing information of the first service node according to the first real-time bandwidth and the first billing point bandwidth is executed.
9. The method according to claim 2, characterized in that: Before determining whether the first real-time bandwidth is lower than a preset bandwidth threshold corresponding to the first service node, the method further includes: A preset bandwidth threshold corresponding to the first service node is calculated according to the first charging point bandwidth and a set value.
10. An access scheduling device, characterized in that: Applied to a management platform, the device comprises: A receiving module, configured to receive an access request and determine a first service node corresponding to the access request; An acquisition module, configured to acquire a first real-time bandwidth and a first billing point bandwidth of the first service node; A first statistics module is configured to collect statistics on first traffic billing information of the first service node based on the first real-time bandwidth and the first billing point bandwidth; A switching module is configured to switch the second service node as the service node corresponding to the access request when the first traffic billing information reaches a first preset excess threshold; wherein: The first traffic billing information includes the first real-time bandwidth and a target statistical duration, where the target statistical duration is a specified duration corresponding to the first service node counted when the first real-time bandwidth exceeds the first billing point bandwidth; The device also includes: A determination module is configured to determine whether the target statistical duration is lower than a preset duration threshold corresponding to the first service node; The target statistical duration includes a service statistical duration for the first service node to provide services and a scheduling statistical duration for the management platform to schedule the first service node based on an access request; The determination module is further configured to perform at least one of the following: Determine whether the service statistical duration is lower than a preset service duration threshold corresponding to the first service node; It is determined whether the scheduling statistical duration is lower than a preset scheduling duration threshold corresponding to the first service node.
11. A computing device comprising a memory, a processor, and computer instructions stored in the memory and executable on the processor, characterized in that: When the processor executes the computer instructions, the steps of the method according to any one of claims 1 to 9 are implemented.
12. A computer-readable storage medium storing computer instructions, characterized in that: When the computer instructions are executed by a processor, the steps of the method described in any one of claims 1 to 9 are implemented.
13. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.
Citation Information
Patent Citations
Flow distribution method and device
CN108337190A
Resource scheduling method and system
CN110198344A
