CN116248603A - Traffic scheduling method, device, equipment and storage medium - Google Patents

Traffic scheduling method, device, equipment and storage medium Download PDF

Info

Publication number
CN116248603A
CN116248603A CN202310255945.7A CN202310255945A CN116248603A CN 116248603 A CN116248603 A CN 116248603A CN 202310255945 A CN202310255945 A CN 202310255945A CN 116248603 A CN116248603 A CN 116248603A
Authority
CN
China
Prior art keywords
user
server
flow
data
traffic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310255945.7A
Other languages
Chinese (zh)
Inventor
王丹枫
尚鹂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202310255945.7A priority Critical patent/CN116248603A/en
Publication of CN116248603A publication Critical patent/CN116248603A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

The embodiment of the application relates to the technical field of data processing, in particular to a traffic scheduling method, a traffic scheduling device, traffic scheduling equipment and a traffic scheduling storage medium, and aims to optimally allocate network traffic resources. The method comprises the following steps: when receiving a flow request sent by a user terminal of a target user, acquiring user data and server data of the target user; acquiring a user flow portrait corresponding to the user according to the user data, and acquiring a server capacity portrait of each of a plurality of servers; inputting the user data, the server data, the user flow portraits and a plurality of server capacity portraits into a first flow matching model to obtain a target server corresponding to the target user; and dispatching the flow request to the target server.

Description

Traffic scheduling method, device, equipment and storage medium
Technical Field
The embodiment of the application relates to the technical field of data processing, in particular to a traffic scheduling method, a traffic scheduling device, traffic scheduling equipment and a storage medium.
Background
With the rapid development of the Internet, the network traffic is increased in an explosive manner, and when a user performs activities on the Internet, the server is required to allocate corresponding resources, so that the use experience of the user can be improved, the resources of the server are saved, and the pressure of the server is relieved by effectively and reasonably allocating the network resources. The existing scheduling and distributing of network resources are realized, and the network resources are distributed from the viewpoint of saving the cost of a server. The other is to allocate network resources from the viewpoint of improving user experience.
The existing network resource flow allocation and scheduling method lacks awareness on the overall network situation of operators, cannot reasonably allocate network resources, is easy to generate local network congestion, and often causes poor user network blocking experience.
Disclosure of Invention
The embodiment of the application provides a traffic scheduling method, a traffic scheduling device, traffic scheduling equipment and a storage medium, and aims to optimally allocate network traffic resources.
An embodiment of the present application provides a method for traffic scheduling, where the method includes:
when receiving a flow request sent by a user terminal of a target user, acquiring user data and server data of the target user;
acquiring a user flow portrait corresponding to the user according to the user data, and acquiring a server capacity portrait of each of a plurality of servers;
inputting the user data, the server data, the user flow portraits and a plurality of server capacity portraits into a first flow matching model to obtain a target server corresponding to the target user;
and dispatching the flow request to the target server.
A second aspect of an embodiment of the present application provides a traffic scheduling device, including:
The data receiving module is used for acquiring user data and server data of a target user when receiving a flow request sent by a user terminal of the target user;
the portrait acquisition module is used for acquiring a user flow portrait corresponding to the user according to the user data and acquiring server capacity portraits of a plurality of servers;
the flow matching module is used for inputting the user data, the server data, the user flow portraits and the server capacity portraits into a first flow matching model to obtain a target server corresponding to the target user;
and the flow scheduling module is used for scheduling the flow request to the target server.
A third aspect of the embodiments of the present application provides a readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the method as described in the first aspect of the present application.
A fourth aspect of the present application provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor implements the steps of the method described in the first aspect of the present application when the processor executes the computer program.
By adopting the traffic scheduling method provided by the application, when a traffic request sent by a user terminal of a target user is received, user data and server data of the target user are obtained;
acquiring a user flow portrait corresponding to the user according to the user data, and acquiring a server capacity portrait of each of a plurality of servers; inputting the user data, the server data, the user flow portraits and a plurality of server capacity portraits into a first flow matching model to obtain a target server corresponding to the target user; and dispatching the flow request to the target server. In the method, when user data and server data of a target user are received, user flow portraits corresponding to the target user are obtained, server capacity portraits of all current servers are obtained, corresponding target servers are matched for the target user according to the user flow portraits, the server capacity portraits, the user data and the server data through a first flow matching model, in the matching process, the flow conditions of the user and the capacity conditions of the servers are considered, the most suitable servers are matched for the user, server resources are reasonably allocated, and the method is beneficial to improving user experience and reducing flow cost of the servers.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the description of the embodiments of the present application will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of a real-time traffic matching dispatch system architecture in an embodiment of the present application;
FIG. 2 is a schematic diagram illustrating a first flow matching model training step according to an embodiment of the present application;
FIG. 3 is a schematic diagram illustrating a first flow matching model training step according to an embodiment of the present application;
FIG. 4 is a flow chart of traffic scheduling according to an embodiment of the present application;
FIG. 5 is a flow chart of traffic scheduling according to an embodiment of the present application;
FIG. 6 is a flow chart of traffic scheduling according to an embodiment of the present application;
FIG. 7 is a flow chart of traffic scheduling according to an embodiment of the present application;
FIG. 8 is a flow chart of traffic scheduling according to an embodiment of the present application;
FIG. 9 is a flow relationship diagram of a real-time flow matching scheduling system according to an embodiment of the present application;
Fig. 10 is a schematic diagram of a flow scheduling apparatus according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art based on the embodiments herein without undue burden, are within the scope of the present application.
Referring to fig. 1, fig. 1 is a schematic diagram of a real-time traffic matching scheduling system architecture according to an embodiment of the present application, where the traffic scheduling method according to the present application is implemented based on a real-time traffic matching scheduling system, where the system includes a real-time traffic matching system and a traffic scheduling system, the real-time traffic matching system includes a user data collection module, a server data collection module, a user traffic portrait generation module, a server capability portrait generation module, a first traffic matching model, and a first traffic matching model included in the real-time traffic matching system is used for matching user terminals with servers one by one, the traffic scheduling system is used for distributing traffic of the servers to the user terminals, inputting user data and server data into the first traffic matching model, and the first traffic matching model outputs a target server corresponding to a user.
The training step of the first flow matching model comprises the following steps:
s11: and collecting flow resource data, wherein the network resource data comprises historical flow resource data and real-time flow resource data.
In this embodiment, the traffic resource data includes historical traffic resource data and real-time traffic resource data, where the historical traffic resource data may also be referred to as historical learning data, and the historical traffic resource data includes: user traffic data, network resource data, network link data. The real-time traffic resource data includes: user traffic data, network resource data, network link data. The historical flow resource data and the real-time flow resource data are the same in data types, but different in timeliness, the historical flow resource data are more focused on the enrichment of data quantity, the extracted characteristics are enriched, further, the flow matching model applicable to various scenes is trained, the real-time flow resource data refer to real-time data of the current service scene collected in a certain time delay range, and the model parameters can be further updated on the basis of the online model by using the real-time flow resource data, so that the model is more accurate in processing the real-time data. The user flow data comprises flow data and related historical behavior data generated when a user accesses a website in a past period of time, and generally obtains data in one day or one week, wherein the data in one day is homonymous data, and the data in one week is girth data; the network resource data is the data of the network resource currently possessed by the website, and comprises data such as resource capacity data, resource unit price data, server performance and the like, wherein the resource capacity data refers to bandwidth data of a server and a user side, the resource unit price data refers to price data of traffic, and the server performance data refers to data such as transmission speed of the server, capacity of the server, response speed of the server and the like; network link data, which mainly includes resource links. The real-time traffic resource data is data collected in real time, and also comprises user traffic data, network resource data and network link data.
In this embodiment, the traffic resource data may be captured from the network, and the collection manner is not limited herein, so that the data with a wider range is collected as much as possible.
For example, for a video website, the collected user traffic data is historical data and real-time acquisition data of the video watched by the user; the collected network resource data are historical resource capacity data of the video, flow unit price of the video, performance indexes of a video playing website server, resource capacity data collected in real time, flow unit price data of the video and performance data of the video playing website server; the collected network link data are the resource link data of the historical video website and the resource link data collected in real time.
S12: obtaining the user flow portraits and the server capacity portraits according to the historical flow resource data:
in this embodiment, the user traffic portrayal is a set of user features obtained by analyzing related access behaviors of the user in the historical traffic resource data of the user, where each user feature represents a behavior habit of the user or a category of the user. The server capability portrayal is a feature set of the server obtained after analyzing the server data, wherein each feature represents indexes such as related performance of the server, cost of network resources and the like.
In this embodiment, after historical traffic resource data is collected, traffic usage conditions of each user and relevant information of a server are counted for the historical traffic resource data, and user characteristics and performance index characteristics of the server are mined from the counted data, so that a user traffic image and a server capacity image are obtained.
In this embodiment, the step S12 specifically includes the following steps:
s12-1: and carrying out statistical analysis on the historical flow resources to obtain a user data statistical result and a server data statistical result.
In this embodiment, the user data statistics result is statistics data obtained by counting historical traffic resource data of users, historical behavior rules of each user when accessing a server are counted, the server statistics result is statistics data obtained by counting historical traffic resource data of a server, and all data of all servers of a server provider when responding to a request of the user are counted.
In this embodiment, the historical traffic resources are respectively input into the user traffic figure generating module and the server capability figure generating module, statistical analysis is performed on the historical traffic resources, and the user traffic figure generating module and the server capability figure generating module respectively take each user and each server as a unit to obtain a user statistical result and a server data statistical result of each user. The statistics result of the user data can represent the ratio of the access behavior with larger consumption flow of the user in the past period in the whole access behavior, the flow speed when the user obtains the resource, and the like, and the statistics result of the server data can represent the average speed of responding to the request in the past period, the occupancy rate of the resource, the transmission time of the data, and the like.
For example, the historical traffic resources of a certain video website are counted to obtain that the time ratio of the user a to see the high-definition original video (with higher resolution and more traffic) in the past week is 80%, the time ratio of the user a to see the fluent video (with lower resolution and less traffic) is 20%, and the network bandwidth of the user a when watching the video is stabilized at about 100M. After statistics is carried out on the historical traffic resources of the website, the average speed of the server A responding to the received request is 0.01ms, and the average speed of the data transmission of the server A is 30M/s.
S12-2: and carrying out feature extraction on the user data statistical result and the server data statistical result to obtain a plurality of user features and a plurality of server capability features.
In this embodiment, the user features are characteristics of users mined from the user data statistics, and the server capability features are server features mined from the server data statistics.
In this embodiment, the user flow portrait generation module extracts the user data statistics, and the server capability portrait generation module extracts the features of the server data statistics to obtain a plurality of user features and a plurality of server capability features. The user flow portrait generation module performs feature extraction on user data from a plurality of different dimensions, types of user features of different dimensions are different, account information of the user can be obtained from account data of the user, statistics is performed on the account information, various data of the user when the user accesses a website in the past can be counted from historical behavior data of the user, and behavior feature information of the user is further mined. The behavior characteristics of the user during the website access and the characteristics of the user equipment can be mined from the user data statistics, the specific situation of the user using the flow in each time period can be reflected in the user data statistics, the ratio of the time of using the high-speed flow by the user during the use of the flow can be determined according to the specific situation of using the flow by the user, the average downloading speed of the user, the number of times of disconnection of the flow by the user and other data, the requirement characteristics of the user on the flow speed can be obtained in combination with the specific request of the user during the use of the flow, and when the average downloading speed of the user or the ratio of the time of using the high-speed flow during the use of the flow by the user is above a certain threshold value, the characteristics of higher requirements of the user on the transmission speed of the server can be determined when the user sends out the request according to the request of using the high-speed flow by the user. The server capability image generating module can mine the characteristics of the server, such as a high-speed server or a low-speed server, the service cost of the server, and the like from the server data statistics results, and can obtain the response speed conditions of the server to each request by extracting the characteristics of the service data statistics results, the load conditions of each time period, the occupation conditions of links in each time period, and further determine the specific values of each index of the server.
For example, according to the statistics result that the time ratio of the user a to watch the high-definition original video (with higher resolution and more flow) is 80% and the time ratio of the user a to watch the smooth video (with lower resolution and less flow) is 20% in the past week, the characteristic that the user a likes to watch the high-definition video can be mined, and further the characteristic that the user needs a high-performance server when requesting the high-definition video data is obtained. According to the average speed of the server A responding to the received request is 0.01ms, the speed of the data transmission of the server A is 30M/s, and the characteristics of high response speed and low transmission speed of the server A can be obtained.
S12-3, combining the plurality of user characteristics to obtain the user flow portrait.
In this embodiment, the user traffic portrait creation module combines the obtained user features with different dimensions to form a user feature set, so as to obtain a user traffic portrait, from which the network quality required by the user, the behavior habit of the user, and the like can be obtained.
Illustratively, in a video website, from the dimension of membership interests, features in a user traffic profile may be categorized into VIP users and non-VIP users; the dimension is selected from the code rate, the characteristics in the user flow portrait can be divided into a high code rate request, a low code rate request and the like, the generated user flow portrait characterizes the individual behaviors of the user when the user accesses the website from a plurality of dimensions, and the characteristics of the user in a plurality of different dimensions are combined together to obtain the user flow portrait.
And S12-4, combining the server capability features to obtain the server capability image.
In this embodiment, the server capability image generating module obtains a plurality of server capability features, and then performs the obtained server capability features to obtain the server capability image.
In another embodiment of the present application, after step S12-4, the method further comprises:
and S12-5, storing the user flow image and the server capability image.
In this embodiment, after obtaining the user traffic image and the server capability image through the historical traffic resource data, the user traffic image and the server capability image are stored, and when traffic matching is performed subsequently, the user traffic image corresponding to each user and the server capability images of all servers can be called at any time.
S13: and training an initial model by taking the historical flow resource data, the user flow portrait and the server capacity portrait as training data to obtain an initial flow matching model.
In this embodiment, the initial model is an optimization analysis model, and the optimization analysis model uses user data and server data as input variables under a certain constraint condition, and performs operation on a function set according to a target to be achieved by flow matching, so that an obtained optimal solution is a target server matched by a target user. The initial model obtains an initial flow matching model after training of the historical flow resources.
In this embodiment, an objective function is preset in the initial flow matching model, and the optimization objective of the objective function is: the user experience is improved to the maximum extent, the network traffic occupancy rate of each server is optimized, and the network traffic cost is minimized. In order to maximize the user experience, the network smoothness and the file downloading speed of the user during access need to be improved as much as possible. Optimizing the network traffic occupancy of each server requires ensuring that the occupancy of each server remains at a uniform level, preventing traffic overload for individual services or excessive idleness of individual servers. The network traffic cost is minimized, and the service condition of each server needs to be reasonably arranged according to the price of each server and the current traffic price.
In this embodiment, the initial model is trained by using historical traffic resource data, a user traffic portrait and a server capability portrait as training data, so as to obtain an initial traffic matching model. After the initial model receives the historical flow resource data, user data of each user and server data of each service are obtained from the historical flow resource data, corresponding constraint conditions are generated according to the received user flow portraits and server capacity portraits, the objective function is operated under the generated constraint conditions, repeated iterative operation is carried out for a plurality of times, parameters of the model are adjusted until the obtained function values are not changed, and the initial flow matching model is obtained after the parameters are adjusted.
S14: and training the initial flow matching model by taking the real-time flow resource data, the user flow portrait and the server capacity portrait as training data to obtain the first flow matching model.
In this embodiment, the first flow matching model is a flow matching model obtained after model parameters are adjusted by real-time flow resource data.
In this embodiment, real-time traffic resource data, a user traffic figure and a server capability figure are used as training data to be input into an initial traffic matching model, and the initial traffic matching model is trained to obtain a first traffic matching model. The user flow portrait generation module and the server capability portrait generation module update each stored user flow portrait and server capability portrait according to the real-time flow resource data after receiving the real-time flow resource data. When the initial flow matching model is trained by using the real-time flow resource data, parameters of the model can be further adjusted, and then the first flow matching model is obtained.
In the embodiment, through offline analysis and data mining on the collected flow resource data, more features are found, the dimension of the model is continuously enriched, and the flow image of the user and the capacity image of the server are more accurate. On the basis of data analysis, an offline model with extensible constraint conditions and adjustable optimization targets is formed, model fitting and optimization adjustment are carried out on the model, and through practical tests, the service availability of server matching can be improved from 99% to 99.5% by the offline model. The offline model is converted into the online model, the capability of the flow matching system for sensing the network situation in real time is improved, the parameters of the current model can be iterated, the flow matching scheduling is finally enabled to obtain higher timeliness and accuracy, and the availability of the flow matching scheduling server is improved from 99.9% to 99.99% through the online model by means of actual tests.
Referring to fig. 2, fig. 2 is a flow chart illustrating flow scheduling according to an embodiment of the present application. As shown in fig. 2, the method comprises the steps of:
s21: and when receiving a flow request sent by a user terminal of a target user, acquiring user data and server data of the target user.
In this embodiment, the target user is a user accessing the network through the user terminal, and the server is a server of a website accessed by the user, and the target user data includes real-time network data of the user, service quality data of the user, and historical behavior data of the user. The server data comprises the resource capacity of the server, the flow rate price of the server, the performance index data of the server, the resource link data of the server and the historical flow rate data of the server, and the flow rate request of the user is the flow rate request sent to the server by the user through the user terminal.
In this embodiment, when a user accesses a background server through a user terminal and sends a flow request to the server, a real-time flow matching scheduling system collects user data of the user and server data of all servers providing the server under the condition of user authorization, the collected user data and server data are input into a first flow matching model, and the first flow matching model receives the user data and the server data input by the system.
Illustratively, when a user accesses a video website, the traffic matching dispatch system gathers user data, including the user's real-time network, quality of service data, and the user's historical behavioral data. The server data comprises real-time resource capacity data of all servers of the video website, real-time flow unit price of the servers, real-time performance data of the servers, real-time link data of the servers and historical data of the servers.
S22: and acquiring a user flow portrait corresponding to the user according to the user data, and acquiring server capacity portraits of a plurality of servers.
In this embodiment, the user traffic portrayal is a set of user features obtained by analyzing related access behaviors of the user in the historical traffic resource data of the user, where each user feature represents a behavior habit of the user or a category of the user. The server capability portrayal is a feature set of the server obtained after analyzing the server data, wherein each feature represents indexes such as related performance of the server, cost of network resources and the like.
In this embodiment, after receiving user data of a target user and server data of a current plurality of servers, the real-time traffic matching and scheduling system obtains a user traffic portrait of the target user stored in advance and server capability portraits of the current plurality of servers, updates the user traffic portrait of the target user according to the newly received user data by the user traffic portrait generation module, and updates server capability portraits of the plurality of servers according to the newly received server data by the server capability portraits generation module.
In this embodiment, in step S22, obtaining, according to the user data, a user traffic image corresponding to the user specifically includes:
s22-1: and determining a user account of a target user corresponding to the user data according to the user data.
In this embodiment, the user account is account information registered by the user when accessing the server, and the identity of the user can be determined according to the user account.
In this embodiment, after the user data of the target user is acquired, the user account of the target user may be determined from the user data.
S22-2: and acquiring the user flow portrait corresponding to the target user from a plurality of user flow portraits stored in advance according to the user account.
In this embodiment, after determining the user account of the target user, the user traffic portraits corresponding to the target user are acquired from a plurality of user traffic portraits stored in advance.
In this embodiment, the account information of the user and the user traffic image corresponding to the user are stored in the server, and the user traffic image of the user can be called out from the server according to the account information of the user.
S23: and inputting the user data, the server data, the user flow portrait and the server capacity portraits into a first flow matching model to obtain a target server corresponding to the target user.
In this embodiment, the target server is a server matched for the target user according to a preset optimization target under the existing constraint condition by the first flow matching model. The first flow matching model is essentially an optimization model, and an optimal matching result is obtained according to the current constraint condition and a preset optimization target.
In this embodiment, after the first traffic matching model receives the user data, the server data, the user traffic image and the server capability image, corresponding constraint conditions are generated according to the user traffic image and the server capability image, a corresponding target server is matched for the target user according to the user data and the server data, and the server which is the most suitable for the user needs is matched for the target user according to the received user real-time network data, the server quality data of the user and the real-time data of the server by the first traffic matching model on the basis of the user traffic image and the server capability image.
For example, if the features in the user traffic portrayal have a request with higher server performance, such as a request with higher video playing code rate and a request with higher member interest, a high-performance server is matched for the user according to the server performance portrayal, so that the user obtains a better playing experience. The user traffic portrayal has a relatively lower request for server performance, such as offline download, etc., and then matches a lower cost server for the user based on the server performance portrayal, so as to reduce the playing cost of the target user.
In this embodiment, step S23 specifically includes:
s23-1: generating corresponding constraint conditions according to the user flow portraits and the server capacity portraits;
in this embodiment, the constraint is a constraint that the variable must satisfy when the optimization model calculates the extremum of the objective function.
In this embodiment, after obtaining a user traffic figure of a target user and server capability figures of a plurality of servers, corresponding constraint conditions are generated based on the user traffic figure and the server capability figures.
In this embodiment, the specific steps of step S23-1 include:
s23-1-1: and determining a related flow index threshold value of the target user and a capacity index threshold value of the server according to the user flow portrait and the server capacity portrait.
In this embodiment, the relevant flow index threshold of the target user is a range limit value of each index of the flow when the user accesses the server using the flow, and the capacity index threshold of the server is a range limit value of each index of the server.
In this embodiment, the first traffic matching model generates a corresponding constraint condition according to the user traffic image and the server capability image. For each user, when traffic matching is performed for the user, determining user characteristics, namely various related traffic index thresholds of the user and server characteristics, namely various capacity index thresholds of the server, according to the user traffic portrait and the server capacity portrait of the user. The user characteristics include the ratio of the time of using the high-speed flow by the user during the time of using the flow by the user, the average downloading speed of the user, the flow disconnection times of the user and the like, and according to the characteristics, the lowest flow speed threshold value of the user can be determined.
For example, when the characteristics in the flow portrait of the user include that the time of using the high-speed flow by the user is relatively high in the occupation of the time of using the flow by the user, the user is said to like to watch the high-definition video, and then the minimum flow speed threshold of the user is determined according to the average network speed of the user and the data transmission speed required by smoothly watching the high-definition video.
S23-1-2: and generating corresponding constraint conditions according to the related flow index threshold and the capacity index threshold of the server.
In this embodiment, the constraint is a constraint that the variable must satisfy when the optimization model calculates the extremum of the objective function.
In this embodiment, after the relevant traffic index threshold of the target user and the capacity index threshold of the server are obtained, corresponding constraint conditions are generated according to the relevant traffic index threshold of the user and the capacity index threshold of the server, where the corresponding constraint conditions include, but are not limited to, that the data transmission speed provided by the target server for the target user cannot be lower than the lowest traffic speed threshold of the user, that the response speed of the server cannot be lower than the response speed threshold of the server, and the like.
UFP (user traffic profile, user Flow Portrait) = [ X1, X2, … …, xn ], where X represents a user characteristic and SAP (service capability profile, server Ability Portrait) = [ Y1, Y2, … …, ym ], where Y represents a characteristic of a performance index of the server, and determining a relevant traffic index threshold of the user and a capacity index threshold of the server according to the user characteristic and the performance characteristic of the server, thereby generating a corresponding constraint condition.
S23-2: under the constraint condition, taking maximized user flow speed, optimized network flow occupation amount and minimized network flow cost as optimization targets of the first flow matching model, and carrying out matching operation on the user data and the server data through a flow matching matrix to obtain the target server corresponding to the target user.
In this embodiment, under the generated constraint condition, the first traffic matching model uses the user traffic portrait and the server capability portrait as constraint conditions of the first traffic matching model, uses the maximized user experience, the optimized network traffic occupation amount and the minimized network traffic cost as optimization targets of the first traffic matching model, and performs operation through the traffic matching matrix in the first traffic matching model to realize traffic matching, so as to obtain the target server corresponding to the target user.
Illustratively, the user traffic portrayal and the server capability portrayal are combined into a traffic matching matrix, the expression of which is:
Figure BDA0004129644160000131
the UFP (user traffic portraits, user Flow Portrait) = [ X1, X2, … …, xn ], and SAP (service capability portraits, server Ability Portrait) = [ Y1, Y2, … …, ym ] form a traffic matching matrix, and the optimization objective is Max (traffic cost+user experience+traffic occupancy).
When a user accesses a video website, the first traffic matching model generates corresponding constraint conditions according to the user traffic portraits of the user and a plurality of server capability portraits of a plurality of background servers of the video website. The method comprises the steps of taking network traffic occupation amount of a plurality of background services as optimization targets, optimizing network traffic occupation amounts of a plurality of servers and minimizing network traffic cost of the plurality of servers, matching a target server for the user, scheduling a request sent by the user to a high-performance server when the user traffic portrait of the target user represents that the user has higher requirements on the performance of the server through matching of a first traffic matching model, enabling the user to obtain better experience, scheduling the request sent by the user to the server with lower performance when the user traffic portrait of the target user represents that the user has lower requirements on the performance of the server, reducing the traffic cost of the user, realizing reasonable scheduling of traffic, balancing the load of the server while guaranteeing the user experience, reducing the use cost of the server and reducing the operation and maintenance cost of the server.
S24: and dispatching the flow request to the target server.
In this embodiment, after a target server is matched for a target user through a first traffic matching model, the real-time traffic matching scheduling system schedules a traffic request sent by the user to the matched target server through the traffic scheduling system under the condition of user authorization.
For example, when a user is watching video using video software, after an optimal server is matched for the user, the matched target server is arranged to receive a video traffic request sent by the user through a traffic scheduling system, and video data is sent to a target terminal of the user.
In the above embodiment, the real-time traffic matching scheduling system is used to match the target server for the target user according to the currently collected user data and server data, and the traffic scheduling system is used to schedule the traffic request sent by the user to the target server, so that the user experience is improved to the maximum extent, the network traffic occupation is optimized, the cost of the network traffic is minimized, and the access demands of different types of users are individually processed.
In this embodiment, step S24 specifically includes:
s24-1: transmitting a flow request transmitted by a user terminal of the target user to the target server, so that the target server responds to the flow request to determine corresponding data, and transmitting the data to the user terminal of the target user
In this embodiment, after the real-time traffic matching scheduling system determines the target server of the target user through the real-time traffic matching system, the traffic request sent by the user terminal of the target user is sent to the target server according to the obtained target server information.
In this embodiment, when receiving a traffic request forwarded by a traffic scheduling system, a target server determines data corresponding to the traffic request in response to the received traffic request, and sends the data corresponding to the traffic request to a terminal of a target user.
The user accesses the video website through the user terminal, sends the video playing request to the server, the real-time traffic matching scheduling system on the server matches the target server for the user by using the real-time traffic matching system, the video playing request is sent to the matched target server by the traffic scheduling system, the server sends the video data to the user terminal of the target user according to the received video playing request, and the user views the video by using the sent video data of the target server.
In another embodiment of the present application, after the target server is matched for the user, the traffic scheduling system may send notification information to the terminal of the user, for example, if the matched target server is server 3, the notification information sent to the user is "recommend to use server 3 to play video, is it agreed to be? ". After the user clicks the grant option, the traffic scheduling system continues to schedule the traffic of the server 3 to the user terminal of the user.
In this embodiment, the real-time traffic scheduling system schedules the request of the target user to the target server, so that overload of the server or too low utilization rate of the server is prevented under the condition of ensuring the user experience of the user.
In another embodiment of the present application, after step S23-2, the method further comprises:
s23-3: and extracting the characteristics of the user data and the server data to obtain the user characteristics and the server characteristics.
In this embodiment, when the real-time traffic matching and scheduling system receives a request sent by a target user, current user data and server data are acquired, feature extraction is performed on the current user data and server data, and user features and server features are obtained, where the user features and server features
S23-4: and updating the user flow portrait and the server capability portrait according to the user characteristics and the server characteristics to obtain updated user flow portrait and updated server capability portrait.
In this embodiment, after obtaining the user characteristics and the server characteristics according to the real-time user data and the server data, the user traffic portrait generation module updates the user traffic portrait of the target user according to the user characteristics, and the server capability portrait generation module updates the server capability portrait according to the server characteristics, so as to obtain the updated user traffic portrait and the updated server capability portrait.
In an example, in a video website, when a user opens a member, and enables a member downloading privilege to send a video downloading request, and the downloading speed is increased, a new feature with a larger downloading speed required by the user can be obtained, and the user flow portrait of the user is updated through the new feature. When the bandwidth of a certain server is increased, the transmission speed of the server becomes fast, and a new characteristic of the fast transmission speed of the server can be obtained, and the server capability image of the server is updated through the new characteristic.
S23-5: and storing the updated user traffic portraits and the updated server capability portraits, wherein the updated user traffic portraits and the updated server capability portraits are used for generating new constraint conditions when traffic scheduling is carried out on subsequent traffic requests.
In this embodiment, after the updated user traffic image and the updated server capability image are obtained, the obtained image is stored in a corresponding location. When the server subsequently receives the flow request of the user, new constraint conditions are generated according to the updated flow portraits of the user and the updated capacity portraits of the server.
In this embodiment, the user traffic portraits and the server capability portraits are updated according to the user data and the server data received in real time, so that new constraint conditions are generated through the updated user traffic portraits and the updated server capability portraits when traffic scheduling is performed subsequently, and further, the real-time updating of the parameters of the first traffic matching model is realized, and the accuracy of traffic scheduling is ensured.
Referring to fig. 8, fig. 8 is a flow relation diagram of a real-time flow matching scheduling system according to an embodiment of the present application, as shown in fig. 8, user data and server data are input into a first flow matching model, the first flow matching model inputs a matching result into a flow scheduling model, and the flow scheduling model is responsible for scheduling requests of users 1-N to corresponding servers 1-N.
In the above embodiment of the present application, a first traffic matching model is provided that uses a user traffic portrait in combination with a real-time network service capability portrait, and on the user traffic portrait side, the real-time server capability, network cost and network congestion state can be considered at the network service capability side according to the continuously enriched portrait features of the actual demand improvement. And a flow matching model capable of self-learning is established, the model can update own parameters in real time according to user data and server data, the matching effect is improved, and user experience, server capacity and network cost are unified into the model to be considered so as to adapt to the current continuously-changing network development.
Based on the same inventive concept, an embodiment of the present application provides a traffic scheduling device. Referring to fig. 10, fig. 10 is a schematic diagram of a flow scheduling apparatus 1000 according to an embodiment of the present application. As shown in fig. 10, the apparatus includes:
a data receiving module 1001, configured to obtain user data and server data of a target user when receiving a traffic request sent by a user terminal of the target user;
a portrayal acquisition module 1002, configured to acquire a user traffic portrayal corresponding to the user according to the user data, and acquire server capability portrayal of each of a plurality of servers;
the flow matching module 1003 is configured to input the user data, the server data, the user flow portraits, and the plurality of server capability portraits into a first flow matching model, so as to obtain a target server corresponding to the target user;
and a traffic scheduling module 1004, configured to schedule the traffic request to the target server.
Optionally, the training step of the first flow matching model includes:
collecting flow resource data, wherein the flow resource data comprises historical flow resource data and real-time flow resource data;
Obtaining the user flow portraits and the server capacity portraits according to the historical flow resource data;
training an initial model by taking the historical flow resource data, the user flow portrait and the server capacity portrait as training data to obtain an initial flow matching model;
and training the initial flow matching model by taking the real-time flow resource data, the user flow portrait and the server capacity portrait as training data to obtain the first flow matching model.
Optionally, the obtaining the user traffic portrait and the server capability portrait according to the historical traffic resource data includes:
carrying out statistical analysis on the historical flow resources to obtain a user data statistical result and a server data statistical result;
performing feature extraction on the user data statistics results and the server data statistics results to obtain a plurality of user features and a plurality of server capability features;
combining the plurality of user features to obtain the user flow portrait;
combining the server capability features to obtain the server capability image;
Optionally, the method further comprises:
and storing the user flow portrait and the server capability portrait.
Optionally, the portrait acquisition module includes:
a target user determining sub-module, configured to determine, according to the user data, a user account of a target user corresponding to the user data;
and the user flow portrait determining sub-module is used for acquiring the user flow portrait corresponding to the target user from a plurality of user flow portraits stored in advance according to the user account.
Optionally, the flow matching module includes:
the constraint condition generation sub-module is used for generating corresponding constraint conditions according to the user flow portraits and the server capacity portraits;
and the target server determining submodule is used for processing the user data and the server data through the first flow matching model under the constraint condition to obtain the target server corresponding to the target user.
Optionally, the constraint condition generation submodule includes:
a threshold value determining sub-module, configured to determine, according to the user traffic profile and the server capability profile, a related traffic index threshold value of the target user and a capability index threshold value of the server;
And the constraint condition determining submodule is used for generating corresponding constraint conditions according to the related flow index threshold and the capacity index threshold of the server.
Optionally, the traffic scheduling module includes:
a request forwarding sub-module, configured to send a flow request sent by a user terminal of the target user to the target server;
and the data return sub-module is used for sending the data corresponding to the flow request to the user terminal of the target user through the target server.
Optionally, the flow matching module further includes:
the feature extraction sub-module is used for carrying out feature extraction on the user data and the server data to obtain user features and server features;
the portrait updating sub-module is used for updating the user flow portrait and the server capability portrait according to the user characteristics and the server characteristics to obtain updated user flow portrait and updated server capability portrait;
and the portrait storage submodule is used for storing the updated user flow portrait and the updated server capability portrait, and the updated user flow portrait and the updated server capability portrait are used for generating new constraint conditions when flow scheduling is carried out on subsequent flow requests.
Based on the same inventive concept, another embodiment of the present application provides a readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps in traffic scheduling according to any of the above embodiments of the present application.
Based on the same inventive concept, another embodiment of the present application provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor executes the steps in the traffic scheduling described in any of the foregoing embodiments of the present application.
For the device embodiments, since they are substantially similar to the method embodiments, the description is relatively simple, and reference is made to the description of the method embodiments for relevant points.
In this specification, each embodiment is described in a progressive manner, and each embodiment is mainly described by differences from other embodiments, and identical and similar parts between the embodiments are all enough to be referred to each other.
It will be apparent to those skilled in the art that embodiments of the present application may be provided as a method, apparatus, or computer program product. Accordingly, the present embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present application may take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
Embodiments of the present application are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present embodiments have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. It is therefore intended that the following claims be interpreted as including the preferred embodiments and all such alterations and modifications as fall within the scope of the embodiments of the present application.
Finally, it is further noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or terminal device comprising the element.
The foregoing has described in detail the methods, apparatuses, devices and storage medium for traffic scheduling provided in the present application, and specific examples have been applied to illustrate the principles and embodiments of the present application, where the foregoing examples are only used to help understand the methods and core ideas of the present application; meanwhile, as those skilled in the art will have modifications in the specific embodiments and application scope in accordance with the ideas of the present application, the present description should not be construed as limiting the present application in view of the above.

Claims (12)

1. A method for traffic scheduling, the method comprising:
when receiving a flow request sent by a user terminal of a target user, acquiring user data and server data of the target user;
acquiring a user flow portrait corresponding to the user according to the user data, and acquiring a server capacity portrait of each of a plurality of servers;
inputting the user data, the server data, the user flow portraits and a plurality of server capacity portraits into a first flow matching model to obtain a target server corresponding to the target user;
and dispatching the flow request to the target server.
2. The method of claim 1, wherein the training of the first flow matching model comprises:
collecting flow resource data, wherein the flow resource data comprises historical flow resource data and real-time flow resource data;
obtaining the user flow portraits and the server capacity portraits according to the historical flow resource data;
training an initial model by taking the historical flow resource data, the user flow portrait and the server capacity portrait as training data to obtain an initial flow matching model;
and training the initial flow matching model by taking the real-time flow resource data, the user flow portrait and the server capacity portrait as training data to obtain the first flow matching model.
3. The method of claim 2, wherein the obtaining the user traffic profile and the server capability profile from the historical traffic resource data comprises:
carrying out statistical analysis on the historical flow resources to obtain a user data statistical result and a server data statistical result;
performing feature extraction on the user data statistics results and the server data statistics results to obtain a plurality of user features and a plurality of server capability features;
Combining the plurality of user features to obtain the user flow portrait;
and combining the server capability features to obtain the server capability image.
4. A method according to claim 3, characterized in that the method further comprises:
and storing the user flow portrait and the server capability portrait.
5. The method of claim 4, wherein the obtaining the user traffic image corresponding to the target user according to the user data comprises:
determining a user account of a target user corresponding to the user data according to the user data;
and acquiring the user flow portrait corresponding to the target user from a plurality of user flow portraits stored in advance according to the user account.
6. The method of claim 1, wherein inputting the user data, the server data, the user traffic portraits, and the plurality of server capability portraits into a first traffic matching model to obtain a target server corresponding to the target user, comprises:
generating corresponding constraint conditions according to the user flow portraits and the server capacity portraits;
Under the constraint condition, taking maximized user flow speed, optimized network flow occupation amount and minimized network flow cost as optimization targets of the first flow matching model, and carrying out matching operation on the user data and the server data through a flow matching matrix to obtain the target server corresponding to the target user.
7. The method of claim 6, wherein generating the corresponding constraint based on the user traffic profile and the server capability profile comprises:
determining a related flow index threshold value of the target user and a capacity index threshold value of the server according to the user flow portrait and the server capacity portrait;
and generating corresponding constraint conditions according to the related flow index threshold and the capacity index threshold of the server.
8. The method of claim 1, wherein the scheduling the traffic request into the target server comprises:
and sending the flow request sent by the user terminal of the target user to the target server, so that the target server responds to the flow request, determines corresponding data and sends the data to the user terminal of the target user.
9. The method of claim 6, wherein the method further comprises:
extracting features of the user data and the server data to obtain user features and server features;
updating the user flow portrait and the server capability portrait according to the user characteristics and the server characteristics to obtain updated user flow portrait and updated server capability portrait;
and storing the updated user traffic portraits and the updated server capability portraits, wherein the updated user traffic portraits and the updated server capability portraits are used for generating new constraint conditions when traffic scheduling is carried out on subsequent traffic requests.
10. A traffic scheduling device, the device comprising:
the data receiving module is used for receiving user data of the target user and server data;
the portrait generation module is used for obtaining a user flow portrait according to the user data and obtaining a server capacity portrait according to the server data;
the flow matching module is used for inputting the user portrait and the server capability image into a first flow matching model so as to perform optimization analysis on the first flow matching model according to the user flow portrait and the server capability image, and obtain a target server corresponding to the target user;
And the flow scheduling module schedules the flow request sent by the user terminal of the target user to the target server.
11. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method according to any one of claims 1 to 9.
12. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the method according to any one of claims 1 to 9 when executing the computer program.
CN202310255945.7A 2023-03-10 2023-03-10 Traffic scheduling method, device, equipment and storage medium Pending CN116248603A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310255945.7A CN116248603A (en) 2023-03-10 2023-03-10 Traffic scheduling method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310255945.7A CN116248603A (en) 2023-03-10 2023-03-10 Traffic scheduling method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN116248603A true CN116248603A (en) 2023-06-09

Family

ID=86624128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310255945.7A Pending CN116248603A (en) 2023-03-10 2023-03-10 Traffic scheduling method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN116248603A (en)

Similar Documents

Publication Publication Date Title
CN108924221B (en) Method and device for allocating resources
CN102651033B (en) A kind of recommend method of online resource and device
CN110557287B (en) Resource allocation method and device based on Lyapunov optimization
CN105007287A (en) public cloud resource dynamic configuration method and system
CN109787915B (en) Flow control method and device for network access, electronic equipment and storage medium
CN112152995B (en) SVC video transmission method based on intelligent edge and intelligent edge
CN112055235B (en) Method and device for pushing display object, electronic equipment and storage medium
Wang et al. Deepcast: Towards personalized qoe for edge-assisted crowdcast with deep reinforcement learning
CN109348264B (en) Video resource sharing method and device, storage medium and electronic equipment
CN105578211A (en) Live broadcast acceleration network stagnation optimization method and system based on infinite service node
CN113230658A (en) Resource allocation method and device, computer readable medium and electronic equipment
CN111432246A (en) Method, device and storage medium for pushing video data
Xu et al. Modeling buffer starvations of video streaming in cellular networks with large-scale measurement of user behavior
CN113079045B (en) Bandwidth allocation method, device, server and storage medium
CN110099292B (en) Data center node determination method and device and electronic equipment
CN109257244A (en) Transfer control method, the apparatus and system of user behavior data
CN111569412B (en) Cloud game resource scheduling method and device
CN116248603A (en) Traffic scheduling method, device, equipment and storage medium
CN116074256A (en) Content distribution network node bandwidth optimization method and device, electronic equipment and medium
CN111278039B (en) User perception suppression identification method, device, equipment and medium
CN110535853B (en) Video request scheduling method, device, server and storage medium
CN113645228A (en) Code rate self-adaptive video distribution method and system
CN108243348A (en) A kind of stream process asks distribution server
CN112689166A (en) Method and system for flexibly increasing and decreasing CDN hot content in real time
CN113055721B (en) Video content distribution method and device, storage medium and computer equipment

Legal Events

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