Edge computing node scheduling method, device, equipment and medium
By implementing the edge computing node scheduling method in the cloud server, the problem of insufficient resources when multiple user terminals start cloud games at the same time is solved, and the accuracy of node scheduling and the operation efficiency of cloud games are improved.
Patent Information
- Application Number
- CN202110551239.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-05-20
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2041-05-20
AI Technical Summary
When the existing edge computing node scheduling scheme starts cloud games at the same time by multiple user terminals, it leads to insufficient resources and queues, reducing the accuracy of node scheduling and the operation efficiency of cloud games.
By implementing an edge computing node scheduling method in a cloud server, the method includes obtaining the node scheduling request of the user terminal, generating a list of candidate edge computing nodes based on auxiliary scheduling parameters, receiving network quality evaluation parameters of the user terminal, and obtaining the candidate edge computing node's Auxiliary scheduling parameters determine the target edge computing node based on network quality and auxiliary scheduling parameters, and return the target Internet protocol address to the user terminal.
It improves the accuracy of node scheduling, reduces the queueing of user terminals, improves the operating efficiency of cloud games, and optimizes the resource utilization and operation costs of edge computing nodes.
Smart Images

Figure CN113181658B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to an edge computing node scheduling method, device, equipment and medium. Background Art
[0002] In the existing edge computing node scheduling scheme, in order to reduce the network delay between the user terminal and the cloud game server deployed in the cloud, the cloud game server is mainly deployed on the edge computing node (for example, node J) closest to a user (for example, user Y) so as to provide the corresponding cloud game service to user Y.
[0003] However, since the existing edge computing node scheduling scheme only considers the distance between the user terminal and the edge computing node, when multiple user terminals in a certain area start cloud games at the same time, the same edge computing node (for example, the aforementioned node J) will be configured for these user terminals indiscriminately, so that some user terminals in the area have difficulty directly accessing the node J with limited resources, thereby reducing the accuracy of node scheduling. In addition, when the resources of the node J are insufficient to run the cloud game in the user terminal corresponding to the user Y, a waiting queue will occur, making it difficult to provide cloud game services to the user Y in the first place, thereby reducing the operating efficiency of the cloud game in the user terminal. Summary of the invention
[0004] The embodiments of the present application provide an edge computing node scheduling method, apparatus, device, and medium, which can improve the accuracy of node scheduling and improve the operating efficiency of cloud games.
[0005] On the one hand, an embodiment of the present application provides an edge computing node scheduling method, which is executed by a cloud server and includes:
[0006] Obtaining a node scheduling request sent by a user terminal for a target cloud game, obtaining a first address list based on a first auxiliary scheduling parameter in the node scheduling request, and returning the first address list to the user terminal; the first auxiliary scheduling parameter includes but is not limited to a terminal location area of the user terminal and an access network of the user terminal; an Internet Protocol address in the first address list is determined by the terminal location area and the access network;
[0007] Receive a second address list sent by a user terminal; the network quality evaluation parameters in the second address list are obtained after the user terminal performs network quality detection on the candidate edge computing nodes associated with the first address list;
[0008] Obtain a second auxiliary scheduling parameter associated with the candidate edge computing node, and determine a target edge computing node among the candidate edge computing nodes based on the network quality assessment parameter and the second auxiliary scheduling parameter; the target edge computing node is a candidate edge computing node that matches the network delay parameter, the node capacity parameter, and the node cost parameter in the second auxiliary scheduling parameter;
[0009] In the second address list, the Internet Protocol address corresponding to the target edge computing node is used as the target Internet Protocol address, and the target Internet Protocol address is returned to the user terminal; the target Internet Protocol address is used to instruct the user terminal to connect to the target edge computing node when running the target cloud game.
[0010] On the one hand, an embodiment of the present application provides an edge computing node scheduling device, which runs on a cloud server and includes:
[0011] A request acquisition module, used to acquire a node scheduling request sent by a user terminal for a target cloud game, acquire a first address list based on a first auxiliary scheduling parameter in the node scheduling request, and return the first address list to the user terminal; the first auxiliary scheduling parameter includes but is not limited to a terminal location area of the user terminal and an access network of the user terminal; the Internet Protocol address in the first address list is determined by the terminal location area and the access network;
[0012] A list receiving module, configured to receive a second address list sent by a user terminal; the network quality evaluation parameters in the second address list are obtained by the user terminal after performing network quality detection on the candidate edge computing nodes associated with the first address list;
[0013] A node determination module is used to obtain a second auxiliary scheduling parameter associated with a candidate edge computing node, and determine a target edge computing node among the candidate edge computing nodes based on the network quality evaluation parameter and the second auxiliary scheduling parameter; the target edge computing node is a candidate edge computing node that matches the network delay parameter, the node capacity parameter, and the node cost parameter in the second auxiliary scheduling parameter;
[0014] The address return module is used to use the Internet Protocol address corresponding to the target edge computing node as the target Internet Protocol address in the second address list, and return the target Internet Protocol address to the user terminal; the target Internet Protocol address is used to instruct the user terminal to connect to the target edge computing node when running the target cloud game.
[0015] The request acquisition module includes:
[0016] A parameter analysis unit, configured to obtain a node scheduling request sent by a user terminal for a target cloud game, determine a geographical location area where the user terminal is located based on a first auxiliary scheduling parameter in the node scheduling request, and determine a target operator corresponding to an access network of the user terminal; the terminal location area is an area in the geographical location area;
[0017] A node acquisition unit is used to acquire, from the M edge computing nodes in the geographical location area, an edge computing node having the same operator as the user terminal in the terminal positioning area, and use the acquired edge computing node as a candidate edge computing node; M is a positive integer;
[0018] The list generating unit is used to generate a first address list corresponding to the node scheduling request according to the Internet Protocol address of the candidate edge computing node, and return the first address list to the user terminal.
[0019] The node acquisition unit includes:
[0020] A first determining subunit is configured to select an edge computing node corresponding to a target operator as a first candidate edge computing node among N edge computing nodes in a terminal positioning area, where N is a positive integer less than M;
[0021] The second determination subunit is used to determine, in the geographical location area, a neighboring location area associated with the terminal location area, and search for an edge computing node that is the same as the target operator among K edge computing nodes in the neighboring location area, and use the edge computing node found in the neighboring location area as a second candidate edge computing node; K is a positive integer less than M;
[0022] The node determination subunit is used to select the first candidate edge computing node and the second candidate edge computing node as candidate edge computing nodes.
[0023] The network quality evaluation parameter includes an average network delay; the average network delay is used to characterize the network delay of the candidate edge computing node corresponding to each Internet Protocol address in the second address list;
[0024] The node determination module includes:
[0025] A parameter acquisition unit, used to acquire network delay parameters, node capacity parameters and node cost parameters associated with the candidate edge computing nodes; the network delay parameter is used to characterize the minimum delay threshold for running the target cloud game; the node capacity parameter is used to characterize the number of idle instances reported in real time by each candidate edge computing node in the candidate edge computing nodes; the node cost parameter is used to characterize the user cost of each candidate edge computing node;
[0026] A first screening unit is configured to screen, based on the average network delay in the network quality assessment parameter, candidate edge computing nodes whose network delay is less than or equal to the minimum delay threshold among the candidate edge computing nodes associated with the second address list, use the screened candidate edge computing nodes as first transition nodes that match the delay condition of the network delay parameter, and generate a third address list based on the Internet Protocol address of the first transition node;
[0027] A second screening unit is used to screen the first transition nodes corresponding to the number of idle instances that can run the target cloud game from the first transition nodes associated with the third address list, use the screened first transition nodes as second transition nodes that match the capacity condition of the node capacity parameter, and generate a fourth address list based on the Internet Protocol address of the second transition node;
[0028] The third screening unit is used to screen the second transition node with the smallest user cost amount among the second transition nodes associated with the fourth address list, and determine the second transition node with the smallest user cost amount as the target edge computing node that matches the cost condition of the node cost parameter.
[0029] wherein the order of the second transition nodes associated with the fourth address list is determined by a network delay amount of each second transition node;
[0030] The third screening unit includes:
[0031] A first screening subunit is used to screen the second transition nodes with the minimum user cost from the second transition nodes associated with the fourth address list, and if there are multiple screened second transition nodes, add the multiple screened second transition nodes to the set of nodes to be processed;
[0032] The second screening subunit is used to obtain a second transition node with a minimum network delay from the set of nodes to be processed as a target edge computing node that matches the cost condition of the node cost parameter.
[0033] The node determination module further includes:
[0034] The first prompt unit is used to determine that there is no candidate edge computing node matching the delay condition of the network delay parameter among the candidate edge computing nodes if, based on the average network delay in the network quality assessment parameter, no candidate edge computing node whose network delay is less than or equal to the minimum delay threshold is screened out from among the candidate edge computing nodes associated with the second address list, and generate first prompt information for returning to the user terminal.
[0035] The node determination module further includes:
[0036] The second prompt unit is used to determine that there is no first transition node matching the capacity condition of the node capacity parameter in the first transition nodes if the first transition node corresponding to the number of idle instances that can run the target cloud game is not screened out in the first transition nodes associated with the third address list, and generate a second prompt information for returning to the user terminal.
[0037] The node determination module further includes:
[0038] The instance receiving unit is used to receive the number of occupied instances reported in real time by each candidate edge computing node when receiving the number of idle instances reported in real time by each candidate edge computing node in the candidate edge computing node.
[0039] Among them, the user cost of a candidate edge computing node is determined based on the computer room construction cost of a candidate edge computing node and the number of instances that a candidate edge computing node can carry; among them, the computer room construction cost of a candidate edge computing node is determined by rack cost, electricity cost, server cost, board cost, broadband cost and consumables cost.
[0040] Among them, the first auxiliary scheduling parameter includes historical behavior data of the user terminal within a historical duration; the historical behavior data is used to characterize the operator to which the user terminal was historically connected when running the target cloud game and the historical edge computing nodes corresponding to the historically connected operator; the historical edge computing nodes are used to determine the target location area of the user terminal within a target duration; the target duration is the next duration of the historical duration; the edge computing nodes in the target location area are used to update the Internet Protocol address in the first address list.
[0041] On the one hand, an embodiment of the present application provides an edge computing node scheduling method, which is executed by a user terminal and includes:
[0042] In response to a trigger operation for a target cloud game, sending a node scheduling request to a cloud server based on a first auxiliary scheduling parameter associated with the target cloud game, and receiving a first address list returned by the cloud server based on the node scheduling request;
[0043] Performing network quality detection on the candidate edge computing nodes associated with the first address list to obtain network quality assessment parameters corresponding to the candidate edge computing nodes;
[0044] The first address list carrying the network quality evaluation parameter is determined as the second address list, and the second address list is sent to the cloud server; the second address list is used to instruct the cloud server to determine the target edge computing node among the candidate edge computing nodes based on the network delay parameter, the node capacity parameter, and the node cost parameter in the network quality evaluation parameter and the second auxiliary scheduling parameter after obtaining the second auxiliary scheduling parameter associated with the candidate edge computing node;
[0045] Receive the target Internet Protocol address of the target edge computing node returned by the cloud server, and when running the target cloud game, connect to the target edge computing node based on the target Internet Protocol address.
[0046] On the one hand, an embodiment of the present application provides an edge computing node scheduling device, which runs on a user terminal and includes:
[0047] A request sending module, configured to send a node scheduling request to a cloud server based on a first auxiliary scheduling parameter associated with the target cloud game in response to a trigger operation for the target cloud game, and receive a first address list returned by the cloud server based on the node scheduling request;
[0048] A network detection module, configured to perform network quality detection on the candidate edge computing nodes associated with the first address list to obtain network quality assessment parameters corresponding to the candidate edge computing nodes;
[0049] A list sending module, used to determine the first address list carrying the network quality evaluation parameter as the second address list, and send the second address list to the cloud server; the second address list is used to instruct the cloud server to determine the target edge computing node among the candidate edge computing nodes based on the network delay parameter, node capacity parameter and node cost parameter in the network quality evaluation parameter and the second auxiliary scheduling parameter after obtaining the second auxiliary scheduling parameter associated with the candidate edge computing node;
[0050] The address receiving module is used to receive the target Internet Protocol address of the target edge computing node returned by the cloud server, and connect to the target edge computing node based on the target Internet Protocol address when running the target cloud game.
[0051] The candidate edge computing nodes associated with the first address list include candidate edge computing nodes S j , j is less than or equal to the number of candidate edge computing nodes;
[0052] The network detection module includes:
[0053] The data packet sending unit is used to send data packets based on the user terminal and the candidate edge computing node S j The network detection protocol between the candidate edge computing nodes S j P1 request packets for network quality detection, based on candidate edge computing nodes S j The corresponding Internet Protocol address sends P1 request packets to the candidate edge computing node S respectively j , record the P1 first timestamps of sending P1 request packets; P1 is a positive integer;
[0054] Data packet receiving unit, used to receive candidate edge computing nodes S j Through the candidate edge computing node S j P2 response data packets returned by the corresponding Internet Protocol address, recording P2 second timestamps of receiving the P2 response data packets; P2 is a non-negative integer less than or equal to P1;
[0055] A delay determination unit is used to determine the P2 first timestamps corresponding to the P2 response data packets from the P1 first timestamps, and obtain the candidate edge computing node S based on the time difference between the P2 first timestamps and the P2 second timestamps. j P2 network delay;
[0056] The average processing unit is used to average the P2 network delays to obtain the candidate edge computing node S j The corresponding average network delay;
[0057] A parameter determination unit is used to determine the candidate edge computing node S according to the average network delay. j Corresponding network quality assessment parameters.
[0058] An embodiment of the present application provides a computer device, including: a processor and a memory;
[0059] The processor is connected to the memory, wherein the memory is used to store a computer program. When the computer program is executed by the processor, the computer device executes the method provided in the embodiment of the present application.
[0060] On the one hand, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. The computer program is suitable for being loaded and executed by a processor so that a computer device having the processor executes the method provided by the embodiment of the present application.
[0061] In one aspect, the present application provides a computer program product or a computer program, which includes a computer instruction stored in a computer-readable storage medium. A processor of a computer device reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the computer device executes the method provided in the present application.
[0062] In an embodiment of the present application, when the cloud server obtains the node scheduling request sent by the user terminal for the target cloud game, it can obtain the first address list based on the first auxiliary scheduling parameter in the node scheduling request, and return the first address list to the user terminal. Wherein, the first auxiliary scheduling parameter includes but is not limited to the terminal location area of the user terminal and the access network of the user terminal, and the Internet Protocol address in the first address list is determined by the terminal location area and the access network. Further, the cloud server can receive a second address list sent by the user terminal. Wherein, the second address list includes the candidate edge computing nodes associated with the first address list and the network quality assessment parameters corresponding to the candidate edge computing nodes, where the network quality assessment parameters are obtained by the user terminal after performing network quality detection on the candidate edge computing nodes. Further, the cloud server can obtain the second auxiliary scheduling parameters associated with the candidate edge computing nodes, and determine the target edge computing node in the candidate edge computing nodes based on the network quality assessment parameters and the second auxiliary scheduling parameters. Wherein, the target edge computing node is a candidate edge computing node that matches the network delay parameter, node capacity parameter, and node cost parameter in the second auxiliary scheduling parameter. Further, the cloud server can use the Internet Protocol address corresponding to the target edge computing node as the target Internet Protocol address in the second address list, and return the target Internet Protocol address to the user terminal. Wherein, the target Internet Protocol address is used to indicate that the user terminal connects to the target edge computing node when running the target cloud game. It can be seen that the embodiment of the present application can quickly determine the target edge computing node among multiple candidate edge computing nodes based on the network quality evaluation parameters between the user terminal and the candidate edge computing node, and the network delay parameters, node capacity parameters and node cost parameters in the second auxiliary scheduling parameters in the cloud game scenario, which means that the embodiment of the present application can obtain a target edge computing node with better network quality and lower resource usage and operating costs in multiple candidate edge computing nodes by simultaneously considering network quality (i.e., network delay parameters), capacity (i.e., node capacity parameters) and computer room costs (i.e., node cost parameters). Based on this, the embodiment of the present application can improve the accuracy of node scheduling when implementing the scheduling of target edge computing nodes for user terminals, and can improve the operating efficiency of cloud games. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0064] Figure 1It is a structural diagram of a network architecture provided by an embodiment of the present application;
[0065] Figure 2 This is a schematic diagram of a scenario for data interaction provided by an embodiment of the present application;
[0066] Figure 3 It is a flow chart of an edge computing node scheduling method provided in an embodiment of the present application;
[0067] Figure 4a This is a schematic diagram of a scenario for directly determining a candidate edge computing node provided by an embodiment of the present application;
[0068] Figure 4b This is a schematic diagram of a scenario for indirectly determining a candidate edge computing node provided by an embodiment of the present application;
[0069] Figure 5 This is a schematic diagram of a scenario for determining a target edge computing node provided by an embodiment of the present application;
[0070] Figure 6 It is a flow chart of an edge computing node scheduling method provided in an embodiment of the present application;
[0071] Figure 7 This is a schematic diagram of a scenario of sending a node scheduling request provided in an embodiment of the present application;
[0072] Figure 8 It is a flow chart of an edge computing node scheduling method provided in an embodiment of the present application;
[0073] Figure 9a is a schematic diagram of a scenario for generating first prompt information provided by an embodiment of the present application;
[0074] Figure 9b is a schematic diagram of a scenario for generating second prompt information provided by an embodiment of the present application;
[0075] Fig.10 This is a schematic diagram of a data interaction process provided by an embodiment of the present application;
[0076] Fig.11 It is a schematic diagram of a scenario of scheduling a target edge computing node provided by an embodiment of the present application;
[0077] Fig.12 It is a structural diagram of an edge computing node scheduling device provided in an embodiment of the present application;
[0078] Fig.13 It is a structural diagram of an edge computing node scheduling device provided in an embodiment of the present application;
[0079] Fig.14 is a structural schematic diagram of a computer device provided in an embodiment of the present application;
[0080] Fig.15 It is a structural diagram of an edge computing node scheduling system provided in an embodiment of the present application. DETAILED DESCRIPTION
[0081] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0082] The embodiments of the present application relate to cloud technology, cloud computing and cloud gaming. Among them, cloud technology refers to a hosting technology that unifies a series of resources such as hardware, software, and network in a wide area network or a local area network to realize the calculation, storage, processing and sharing of data. Cloud technology is a general term for network technology, information technology, integration technology, management platform technology, application technology, etc. based on the application of cloud computing business model. It can form a resource pool, which is used on demand and is flexible and convenient. Cloud computing technology will become an important support. The background services of the technical network system require a large amount of computing and storage resources, such as video websites, picture websites and more portal websites. With the high development and application of the Internet industry, in the future, each item may have its own identification mark, and all need to be transmitted to the background system for logical processing. Data of different levels will be processed separately. All kinds of industry data require strong system backing support, which can only be achieved through cloud computing.
[0083] Cloud computing is a computing model that distributes computing tasks on a resource pool composed of a large number of computers, so that various application systems can obtain computing power, storage space and information services as needed. The network that provides resources is called the "cloud". From the user's point of view, the resources in the "cloud" can be infinitely expanded, and can be obtained at any time, used on demand, expanded at any time, and paid for by use. As a basic capability provider for cloud computing, a cloud computing resource pool (referred to as a cloud platform, generally referred to as an IaaS (Infrastructure as a Service) platform) will be established, and various types of virtual resources will be deployed in the resource pool for external customers to choose to use. The cloud computing resource pool mainly includes: computing devices (virtualized machines, including operating systems), storage devices, and network devices.
[0084] Cloud gaming, also known as gaming on demand, is an online gaming technology based on cloud computing technology. Cloud gaming technology enables thin clients with relatively limited graphics processing and data computing capabilities to run high-quality games. In a cloud gaming scenario, the game is not played on the player's game terminal, but on a cloud server, which renders the game scene into an audio and video stream and transmits it to the player's game terminal over the network. The player's game terminal does not need to have powerful graphics computing and data processing capabilities, but only needs to have basic streaming media playback capabilities and the ability to obtain player input commands and send them to the cloud server.
[0085] Smart terminals (i.e. mobile smart terminals) refer to a type of device that has rich human-computer interaction methods, has the ability to access the Internet, is usually equipped with various operating systems, and has strong processing capabilities. It is understandable that the player's gaming terminal in the cloud gaming scenario is a smart terminal.
[0086] Edge nodes (i.e. edge computing nodes) are logical abstractions of the basic common capabilities of various edge-side product forms such as edge gateways, edge controllers, and edge servers. These product forms have common capabilities such as real-time data analysis, local data storage, and real-time network connection. It is understandable that cloud gaming servers in cloud gaming scenarios can be deployed on edge computing nodes.
[0087] Network delay (Round-Trip Time, RTT for short) refers to the total delay from the start of sending data to the sender receiving confirmation from the receiver (the receiver sends confirmation immediately after receiving the data), that is, the time it takes for a data packet to go back and forth between two points on the network. Network delay is an important parameter that affects the performance of TCP (Transmission Control Protocol) and characterizes the operation status of the network. Real-time and accurate measurement of RTT parameters (i.e. network delay parameters) in the network is one of the important links in network management.
[0088] For details, see Figure 1 , Figure 1 Schematic diagram of a network architecture provided by an embodiment of the present application. Figure 1 As shown, the network architecture may include a cloud server 2000, a user terminal cluster, and an edge computing node cluster. The user terminal cluster may specifically include one or more user terminals, and the number of user terminals in the user terminal cluster is not limited here. Figure 1As shown, the multiple user terminals may specifically include user terminal 3000a, user terminal 3000b, user terminal 3000c, ..., user terminal 3000n. User terminal 3000a, user terminal 3000b, user terminal 3000c, ..., user terminal 3000n may respectively be directly or indirectly connected to the cloud server 2000 through wired or wireless communication, so that each user terminal may exchange data with the cloud server 2000 through the network connection.
[0089] The edge computing node cluster may specifically include one or more edge computing nodes, and the number of edge computing nodes in the edge computing node cluster is not limited here. Figure 1 As shown, the multiple edge computing nodes may specifically include edge computing node 4000a, edge computing node 4000b, ..., edge computing node 4000m, and edge computing node 4000a, edge computing node 4000b, ..., edge computing node 4000m may respectively be directly or indirectly connected to the cloud server 2000 through wired or wireless communication, so that each edge computing node may exchange data with the cloud server 2000 through the network connection.
[0090] Among them, Figure 1 The cloud server 2000 shown can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, as well as big data and artificial intelligence platforms.
[0091] Among them, Figure 1 The edge computing nodes in the edge computing node cluster shown can be independent physical servers, or they can be server clusters or distributed systems composed of multiple physical servers. They can also be servers that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, as well as big data and artificial intelligence platforms.
[0092] For ease of understanding, the embodiments of the present application can be Figure 1 A user terminal is selected from the multiple user terminals shown as the target user terminal. The target user terminal here may include: smart phones, tablet computers, laptops, desktop computers, smart homes, wearable devices, vehicle terminals and other smart terminals with data processing functions. For example, the embodiment of the present application may Figure 1The user terminal 3000a shown is used as the target user terminal. At this time, the target user terminal can realize data interaction with the cloud server 2000.
[0093] It should be understood that the target user terminal may be a player game terminal corresponding to a player user in a cloud game (e.g., a target cloud game), where the player user may refer to a user who has experienced a cloud game or requests to experience a cloud game; the cloud server 2000 may be a cloud server corresponding to the target user terminal (i.e., a cloud game backend), where the cloud server may implement the scheduling of an edge computing node (e.g., a target edge computing node on which a cloud game server corresponding to the target cloud game is deployed) for the target user terminal. For example, the embodiment of the present application may Figure 1 The edge computing node 4000a shown is used as the target edge computing node. Therefore, the target user terminal and the target edge computing node can be connected to implement the processing flow of the target cloud game.
[0094] The target cloud games here may include but are not limited to competitive games, parkour games, shooting games, and board games, etc. For ease of understanding, in the embodiment of the present application, the cloud games that a player user (for example, user Y) selects in the target user terminal and that fit his or her interests may be collectively referred to as target cloud games.
[0095] It is understandable that the processing flow of cloud games may include: (1) The processing flow of cloud games executed on the target user terminal side. On the one hand, the target user terminal obtains various pages related to cloud games by interacting with the target edge computing node, and the pages here include, for example, cloud service pages, cloud game video pages, cloud game game pages, and cloud editing pages, etc.; and displays these pages to the player user. On the other hand, the target user terminal can respond to various operations of the player user in these pages, such as operations including requests to experience cloud games, cloud trial operations performed on cloud games, cloud editing operations, etc.; and send the business requests corresponding to these operations to the target edge computing node. For example, the business requests here may include page acquisition requests, operation requests, etc. (2) The processing flow of cloud games executed on the target edge computing node side. The target edge computing node interacts with the target user terminal, receives various business requests from the target user terminal, and provides corresponding cloud services to the player user. For example, the cloud services provided by the target edge computing node may include providing the target user terminal with various cloud game-related pages, cloud editing services, management services for cloud trial videos, cloud comment services, etc.
[0096] It is understandable that there may be multiple player users corresponding to the target cloud game. When multiple player users (for example, user Y1 and user Y2) participate in the target cloud game together, multiple player users can connect to different edge computing nodes through their respective player game terminals, and different edge computing nodes can exchange data through the cloud server. For example, user Y1 can connect to edge computing node J1 through player game terminal Z1, and user Y2 can connect to edge computing node J2 through player game terminal Z2. Here, edge computing node J1 and edge computing node J2 can exchange data through cloud server 2000. Among them, player game terminal Z1 can be Figure 1 In the corresponding embodiment, the user terminal 3000a and the player game terminal Z2 can be Figure 1 The user terminal 3000b in the corresponding embodiment; the edge computing node J1 can be Figure 1 The edge computing node 4000a in the corresponding embodiment, the edge computing node J2 can be Figure 1 The edge computing node 4000b in the corresponding embodiment.
[0097] It should be understood that the embodiments of the present application can migrate resource computing from the traditional cloud server to the user side (i.e., the resource computing of user Y1 is implemented by the edge computing node J1, and the resource computing of user Y2 is implemented by the edge computing node J2), shortening the physical distance between the user and the computing resources, achieving lower data interaction latency, and reducing the computing pressure of the cloud server, thereby providing users with a low-latency, high-stability solution. It is understandable that in the 5G (5th generation mobile networks, the fifth generation of mobile communication technology) era, the computing power of the user side will gradually move up, and the computing power of the cloud server will gradually sink. By introducing edge computing technology in the transmission network architecture, the latency and bandwidth transmission costs can be reduced, and the content distribution efficiency and user experience can be improved.
[0098] It can be understood that the edge computing node scheduling method involved in the embodiment of the present application can be applied to the blockchain system. Figure 1The cloud server 2000 shown can be a blockchain node in a blockchain system. It should be understood that when the player game terminal of the player user needs to write the edge computing node (i.e., the historical edge computing node) that the player game terminal has accessed to into the blockchain, the operator to which the player game terminal is historically connected when running the target cloud game and the historical edge computing node corresponding to the operator connected to the history can be used to constitute the historical behavior data of the player game terminal, and then the historical behavior data is sent to the packaging node in the blockchain network, so that the packaging node can broadcast the block containing the historical behavior data to the consensus node in the blockchain network for block consensus, and then when these consensus nodes reach a block consensus, the packaging node is allowed to write the aforementioned block containing the historical behavior data into the blockchain. It should be understood that the embodiment of the present application writes the historical behavior data of the user terminal within the historical duration into the blockchain, and when the cloud server 2000 receives the node scheduling request sent by the player game terminal, it can quickly configure the first address list for the player game terminal.
[0099] For further understanding, please refer to Figure 2 , Figure 2 Schematic diagram of a scenario for data interaction provided by an embodiment of the present application. Figure 2 The cloud server 20b can be the above Figure 1 The cloud server 2000 in the corresponding embodiment is as follows: Figure 2 The game terminal 20a shown may be the above-mentioned Figure 1 For ease of understanding, any user terminal in the user terminal cluster of the corresponding embodiment is described in the embodiment of the present application. Figure 1 The user terminal 3000a shown is taken as the game terminal 20a as an example to illustrate Figure 2 The specific process of data interaction between the cloud server 20b and the game terminal 20a is shown.
[0100] It is understandable that when the player user corresponding to the game terminal 20a (for example, the above-mentioned user Y) needs to start the target cloud game in the game terminal 20a, a trigger operation can be performed on the target cloud game. In this way, the game terminal 20a can send a node scheduling request to the cloud server 20b in response to the trigger operation performed by user Y on the target cloud game, and then receive the first address list returned by the cloud server 20b based on the node scheduling request. Among them, the first address list contains the Internet Protocol address of the candidate edge computing node configured by the cloud server 20b for the game terminal 20a. Furthermore, the user terminal can perform network quality detection on the candidate edge computing node corresponding to the Internet Protocol address based on the Internet Protocol address in the first address list, and obtain the network quality assessment parameters corresponding to the candidate edge computing node. Among them, one candidate edge computing node corresponds to one network quality assessment parameter.
[0101] like Figure 2 As shown, when the game terminal 20a sends a node scheduling request to the cloud server 20b, the first display interface 20c can be displayed. When the game terminal 20a performs network quality detection on the candidate edge computing node, a sub-interface (i.e., a speed measurement prompt interface 20d) independent of the first display interface 20c can be output on the first display interface 20c. The speed measurement prompt interface 20d can include the speed measurement prompt information of the game terminal 20a and the completion progress of the network quality detection. For example, the speed measurement prompt information can be "Speed measurement, please wait", and the completion progress of the network quality detection can be 90%. Further, after the game terminal 20a performs network quality detection on the candidate edge computing nodes associated with the first address list (i.e., when the completion progress of the network quality detection reaches 100%), the first address list carrying the network quality evaluation parameter can be determined as the second address list, and the second address list is sent to the cloud server 20b.
[0102] like Figure 2 As shown, when the cloud server 20b receives the second address list sent by the game terminal 20a, it can obtain the network delay parameter associated with the candidate edge computing node, and based on the network quality evaluation parameter and the network delay parameter in the second address list, screen the Internet Protocol address of the candidate edge computing node (i.e., the first transition node) that matches the delay condition of the network delay parameter in the second address list, and generate a third address list based on the Internet Protocol address of the screened first transition node. Further, the cloud server 20b can obtain the node capacity parameter associated with the candidate edge computing node, obtain the node capacity parameter associated with the first transition node from the node capacity parameter associated with the candidate edge computing node, and based on the node capacity parameter associated with the first transition node, screen the Internet Protocol address of the first transition node (i.e., the second transition node) that matches the capacity condition of the node capacity parameter in the third address list, and generate a fourth address list based on the Internet Protocol address of the screened second transition node. Further, the cloud server 20b may obtain the node cost parameter associated with the candidate edge computing node, obtain the node cost parameter associated with the second transition node from the node cost parameter associated with the candidate edge computing node, and screen the Internet protocol address of the second transition node (i.e., the target edge computing node) that matches the cost condition of the node cost parameter in the fourth address list based on the node cost parameter associated with the second transition node. The network delay parameter, node capacity parameter, and node cost parameter here may be collectively referred to as the second auxiliary scheduling parameter.
[0103] It can be understood that the Internet Protocol addresses of the second transition nodes associated with the fourth address list are sorted from small to large according to the network delay parameter. When the number of Internet Protocol addresses of the second transition nodes screened out in the fourth address list is multiple, the cloud server 20b can obtain the second transition node with the smallest network delay parameter from the multiple second transition nodes, and determine the second transition node with the smallest network delay parameter as the target edge computing node. Optionally, when the number of the second transition nodes screened out in the fourth address list is one, the cloud server 20b can determine the second transition node as the target edge computing node.
[0104] like Figure 2 As shown, after the cloud server 20b determines the target edge computing node among the candidate edge computing nodes associated with the second address list, it can return the target Internet Protocol address of the target edge computing node to the game terminal 20a. In this way, after receiving the target Internet Protocol address, the game terminal 20a can connect to the target edge computing node based on the target Internet Protocol address. Therefore, the game terminal 20a can use the game instance of the target edge computing node to play the game when running the target cloud game. Among them, the cloud game server corresponding to the target cloud game is deployed in the target edge computing node.
[0105] It is understandable that when the game terminal 20a establishes a connection with the target edge computing node, it can display Figure 2 The second display interface 20e shown in the figure can be used to display the connection progress between the game terminal 20a and the target edge computing node. For example, the connection progress can be Figure 2 The 25% shown in the figure, when the connection progress reaches 100%, it indicates that the game terminal 20a is successfully connected to the target edge computing node. At this time, the target cloud game can be run on the game terminal 20a, and the cloud game homepage corresponding to the target cloud game can be displayed on the game terminal 20a.
[0106] It can be seen that the embodiment of the present application can comprehensively consider the three-level linkage verification of network quality (i.e., network delay parameters), server capacity (i.e., target edge computing node capacity, node capacity parameters), and computer room construction cost (i.e., node cost parameters), and realize the scheduling of user terminals (i.e., the above-mentioned game terminal 20a) to the optimal edge computing node (i.e., target edge computing node). Based on this, when the scheduling of the target edge computing node is realized for the user terminal, the queuing waiting of the user terminal can be reduced through the network quality, the resource utilization of the target edge computing node can be improved through the server capacity, and the operating cost can be reduced through the computer room construction cost. Therefore, the embodiment of the present application can improve the accuracy of node scheduling and can improve the operating efficiency of cloud games.
[0107] The specific implementation method of data interaction between the game terminal 20a and the cloud server 20b can be found in the following Figure 3-Figure 11 Description of data interaction between the user terminal and the cloud server in the corresponding embodiment.
[0108] For further information, see Figure 3 , Figure 3 This is a flow chart of an edge computing node scheduling method provided by an embodiment of the present application. The method can be executed by a user terminal, or by a cloud server, or by both a user terminal and a cloud server. The user terminal can be the above Figure 1 The corresponding user terminal 3000a in the embodiment, the cloud server can be the above Figure 1 The cloud server 2000 in the corresponding embodiment. For ease of understanding, this embodiment is described by taking the method executed by the cloud server as an example. Among them, the edge computing node scheduling method can at least include the following steps S101-step S104:
[0109] Step S101, obtaining a node scheduling request sent by a user terminal for a target cloud game, obtaining a first address list based on a first auxiliary scheduling parameter in the node scheduling request, and returning the first address list to the user terminal;
[0110] Specifically, the cloud server can obtain the node scheduling request sent by the user terminal for the target cloud game, determine the geographical location area where the user terminal is located based on the first auxiliary scheduling parameter in the node scheduling request, and determine the target operator corresponding to the access network of the user terminal. Among them, the first auxiliary scheduling parameter includes but is not limited to the terminal positioning area of the user terminal and the access network of the user terminal, where the terminal positioning area is an area in the geographical location area. Further, the cloud server can obtain the edge computing node with the same operator as the user terminal in the terminal positioning area from the M edge computing nodes in the geographical location area, and use the obtained edge computing node as a candidate edge computing node. Among them, M here can be a positive integer. Further, the cloud server can generate a first address list corresponding to the node scheduling request based on the Internet Protocol address (i.e., IP address, Internet Protocol Address) of the candidate edge computing node, and return the first address list to the user terminal.
[0111] It can be understood that, according to the terminal positioning area of the user terminal in the first auxiliary scheduling parameter, the geographical location area where the user terminal is located can be determined, and the regional range of the geographical location area here is greater than the regional range of the terminal positioning area. Among them, the geographical location area can represent the area where the user terminal is located, for example, the South China region, the East China region, the North China region, the Northwest region, etc. Among them, optionally, the geographical location area can represent the province where the user terminal is located, for example, Guangdong Province, Hunan Province, Sichuan Province, etc. It should be understood that the embodiment of the present application does not limit the regional range of the terminal positioning area and the geographical location area. For example, when the terminal positioning area of the user terminal is "Shenzhen City", the geographical location area where the user terminal is located can be "Guangdong Province". For another example, when the terminal positioning area of the user terminal is "Shenzhen City", the geographical location area where the user terminal is located can be "South China Region". For another example, when the terminal positioning area of the user terminal is "Bao'an District, Shenzhen City", the geographical location area where the user terminal is located can be "Shenzhen City".
[0112] It is understandable that the geographical location area where the user terminal is located may include one or more edge computing nodes, and the one or more edge computing nodes here may specifically include M edge computing nodes. Among them, each edge computing node in the M edge computing nodes may have multiple Internet Protocol addresses, and each edge computing node provides different Internet Protocol addresses to enable different operators to access. The Internet Protocol address of the edge computing node in the embodiment of the present application may be an Internet Protocol address associated with the target operator among the multiple Internet Protocol addresses of the edge computing node. Among them, the operator here may include Unicom operators, mobile operators, telecom operators, etc. For example, the edge computing node J can provide services for Unicom user terminals (i.e., user terminals using the network provided by Unicom operators) through the Internet Protocol address IP1, the edge computing node J can provide services for mobile user terminals (i.e., user terminals using the network provided by mobile operators) through the Internet Protocol address IP2, and the edge computing node J can provide services for telecom user terminals (i.e., user terminals using the network provided by telecom operators) through the Internet Protocol address IP3. For example, when the target operator corresponding to the access network of the user terminal is a mobile operator, the Internet Protocol address of the edge computing node J can be the Internet Protocol address IP2.
[0113] Optionally, there may be an edge computing node among the M edge computing nodes that supports one operator, that is, there may be an edge computing node among the M edge computing nodes that directly provides services to a user terminal corresponding to an operator through an Internet Protocol address. For example, edge computing node J may support the Unicom operator, and the edge computing node J may provide services to the Unicom user terminal (i.e., the user terminal using the network provided by the Unicom operator) through the Internet Protocol address IP.
[0114] Among them, the access network of the user terminal can be a wired network or a wireless network, which is not limited in the embodiment of the present application.
[0115] It should be understood that the cloud server can directly obtain the edge computing node corresponding to the target operator (i.e., the same edge computing node as the target operator) from the M edge computing nodes in the geographical location area. It is understood that the cloud server can obtain L edge computing nodes that support access to the target operator from the M edge computing nodes, and use the obtained L edge computing nodes as candidate edge computing nodes. Wherein, L here can be a positive integer less than or equal to M.
[0116] Optionally, it should be understood that the cloud server can also use the edge computing node corresponding to the target operator as the first candidate edge computing node among the N edge computing nodes in the terminal positioning area. Wherein, N here can be a positive integer less than M. Further, the cloud server can determine the adjacent location area associated with the terminal positioning area in the geographic location area, and find the edge computing node that is the same as the target operator (that is, the edge computing node corresponding to the target operator) among the K edge computing nodes in the adjacent location area, and use the edge computing node found in the adjacent location area as the second candidate edge computing node. Wherein, K here can be a positive integer less than M. Further, the cloud server can use the first candidate edge computing node and the second candidate edge computing node as candidate edge computing nodes. Wherein, the sum of N and K here is less than or equal to M, the number of candidate edge computing nodes here can be L, and L here can be a positive integer less than or equal to M.
[0117] Optionally, it should be understood that the cloud server can also use the edge computing node corresponding to the target operator as the first candidate edge computing node among the N edge computing nodes in the terminal positioning area. Wherein, N here can be a positive integer less than M. Further, the cloud server can determine the adjacent location area associated with the terminal positioning area, and search for the edge computing node that is the same as the target operator among the K edge computing nodes in the adjacent location area, and use the edge computing node found in the adjacent location area as the second candidate edge computing node. Wherein, K here can be a positive integer. Further, the cloud server can use the first candidate edge computing node and the second candidate edge computing node as candidate edge computing nodes. Wherein, it can be understood that the adjacent location area can completely belong to the geographical location area, and the adjacent location area can also partially belong to the geographical location area.
[0118] Among them, optionally, the terminal positioning area may include N edge computing nodes. Since each edge computing node is a distributed cluster composed of multiple computer devices, when N is a positive integer greater than 1, the N edge computing nodes here can also be collectively referred to as an edge computing node in the terminal positioning area. For example, when the terminal positioning area is Shanghai, the Shanghai cluster can be included in the terminal positioning area; when the terminal positioning area is Shenzhen, the Shenzhen cluster can be included in the terminal positioning area. It should be understood that the embodiment of the present application does not limit the number of edge computing nodes in the terminal positioning area, the adjacent location area, and the geographical location area.
[0119] For easier understanding, see Figure 4a , Figure 4a Schematic diagram of a scenario for directly determining a candidate edge computing node provided by an embodiment of the present application. Figure 4a As shown, the cloud server can determine the geographical location area where the user terminal is located according to the terminal positioning area in the first auxiliary scheduling parameter, and then obtain multiple edge computing nodes in the geographical location area. The number of the multiple edge computing nodes here can be M, where M can be a positive integer. The M edge computing nodes can specifically include: node J1, node J2, node J3, ..., node J M , the value of M will not be limited here.
[0120] like Figure 4a As shown, the cloud server can obtain candidate edge computing nodes from M edge computing nodes according to the target operator corresponding to the access network of the user terminal. The number of candidate edge computing nodes here can be (M-1), and the (M-1) candidate edge computing nodes here can specifically include: node J2, node J3, ..., node J M , where nodes J2, J3, ..., J M They may be collectively referred to as candidate edge computing nodes 40a, and a first address list may be generated based on the Internet Protocol addresses of the candidate edge computing nodes 40a. It should be understood that the embodiment of the present application does not limit the number of candidate edge computing nodes.
[0121] It can be understood that node J1 among the M edge computing nodes does not belong to the candidate edge computing node, and the node J1 and the access network of the user terminal correspond to different operators, that is, the node J1 does not support the access of the target operator corresponding to the access network of the user terminal.
[0122] For easier understanding, see Figure 4b , Figure 4b Schematic diagram of a scenario for indirectly determining a candidate edge computing node provided by an embodiment of the present application. Figure 4bAs shown, the cloud server can determine the geographical location area where the user terminal is located according to the terminal location area in the first auxiliary scheduling parameter, and then determine the adjacent location area associated with the terminal location area in the geographical location area. The terminal location area and the adjacent location area here belong to two non-overlapping areas in the geographical location area.
[0123] like Figure 4b As shown, the cloud server can obtain multiple edge computing nodes in the terminal positioning area, where the number of the multiple edge computing nodes can be N, where N can be a positive integer less than the above M, and the N edge computing nodes can specifically include: node J1, ..., node J N , the value of N is not limited here; the cloud server can obtain multiple edge computing nodes in the adjacent location area, the number of the multiple edge computing nodes here can be K, where K can be a positive integer less than the above M, and the K edge computing nodes can specifically include: node J V ,…,Node J (V+K-1) , the value of K will not be limited here.
[0124] It can be understood that, in the geographical location area, except for the terminal location area and the adjacent location area, (MNK) edge computing nodes may be included, where the (MNK) edge nodes may specifically include: Node J (N+1) ,…,Node J (V-1) , Node J (V+K) ,…,Node J M . Optionally, when the geographic location area does not include other areas except the terminal location area and the neighboring location area, N+K equals M, so N can be equal to V-1, and V+K-1 can be equal to M.
[0125] like Figure 4b As shown, the cloud server can obtain a first candidate edge computing node from the N edge computing nodes in the terminal positioning area and a second candidate edge computing node from the K edge computing nodes in the adjacent location area according to the target operator corresponding to the access network of the user terminal, and then use the obtained first candidate edge computing node and the second candidate edge computing node as candidate edge computing nodes 40b, and a first address list can be generated based on the Internet Protocol address of the candidate edge computing node 40b. It should be understood that the embodiments of the present application do not limit the number of first candidate edge computing nodes and second candidate edge computing nodes. For example, the cloud server can use node J1 obtained from N edge computing nodes as the first candidate edge computing node; the cloud server can use node J2 obtained from K edge computing nodes as the first candidate edge computing node. (V+1) ,…,Node J (V+K-1)As the second candidate edge computing node.
[0126] Step S102, receiving a second address list sent by a user terminal;
[0127] The second address list may include the Internet Protocol address of the candidate edge computing node and the network quality assessment parameter corresponding to the candidate edge computing node. The network quality assessment parameter in the second address list is obtained by the user terminal after performing network quality detection on the candidate edge computing node associated with the first address list.
[0128] Step S103, obtaining a second auxiliary scheduling parameter associated with the candidate edge computing node, and determining a target edge computing node from the candidate edge computing nodes based on the network quality evaluation parameter and the second auxiliary scheduling parameter;
[0129] Specifically, the cloud server can obtain the network delay parameter, node capacity parameter and node cost parameter associated with the candidate edge computing node. Among them, the network delay parameter is used to characterize the minimum delay threshold for running the target cloud game; the node capacity parameter is used to characterize the number of idle instances reported in real time by each candidate edge computing node in the candidate edge computing node; the node cost parameter is used to characterize the user cost of each candidate edge computing node. Among them, the second auxiliary scheduling parameter includes but is not limited to the above network delay parameter, node capacity parameter and node cost parameter. Further, the cloud server can screen the candidate edge computing nodes whose network delay is less than or equal to the minimum delay threshold among the candidate edge computing nodes associated with the second address list based on the average network delay in the network quality evaluation parameter, and use the screened candidate edge computing nodes as the first transition node that matches the delay condition of the network delay parameter, and generate a third address list based on the Internet Protocol address of the first transition node. Among them, the network quality evaluation parameter includes the average network delay; the average network delay is used to characterize the network delay of the candidate edge computing node corresponding to each Internet Protocol address in the second address list. Among them, the edge computing nodes associated with the third address list (i.e., the first transition nodes associated with the third address list) are candidate edge computing nodes that match the network delay parameters. In other words, the first transition nodes associated with the third address list are all candidate edge computing nodes whose network delay is less than or equal to the minimum delay threshold. It can be understood that the third address list is used to store the Internet Protocol addresses of the first transition nodes. Furthermore, the cloud server can filter the first transition nodes corresponding to the number of idle instances that can run the target cloud game from the first transition nodes associated with the third address list, use the filtered first transition nodes as the second transition nodes that match the capacity conditions of the node capacity parameters, and generate a fourth address list based on the Internet Protocol address of the second transition node. Among them, the edge computing nodes associated with the fourth address list (i.e., the second transition nodes associated with the fourth address list) are candidate edge computing nodes that match the network delay parameters and node capacity parameters. In other words, the second transition nodes associated with the fourth address list are all first transition nodes corresponding to the number of idle instances that can run the target cloud game (i.e., the network delay is less than or equal to the minimum delay threshold, and the candidate edge computing nodes corresponding to the number of idle instances that can run the target cloud game). It can be understood that the fourth address list is used to store the Internet Protocol addresses of the second transition nodes. Furthermore, the cloud server can screen the second transition node with the smallest user cost amount among the second transition nodes associated with the fourth address list, and determine the second transition node with the smallest user cost amount as the target edge computing node that matches the cost condition of the node cost parameter.Among them, the target edge computing node is a candidate edge computing node that matches the network delay parameter, node capacity parameter and node cost parameter in the second auxiliary scheduling parameter. In other words, the target edge computing node is the second transition node with the minimum user cost (that is, the network delay is less than or equal to the minimum delay threshold, the number of idle instances that can run the target cloud game, and the candidate edge computing node with the minimum user cost).
[0130] Optionally, it is understandable that the second auxiliary scheduling parameter may also include a node distance parameter, which is used to characterize the minimum distance threshold of each candidate edge computing node. For example, the cloud server can screen candidate edge computing nodes whose distance values are less than or equal to the minimum distance threshold from the candidate edge computing nodes associated with the second address list, and use the screened candidate edge computing nodes as the first transition nodes that match the distance conditions of the node distance parameter, wherein the distance value here is used to represent the distance between the user terminal and the candidate edge computing node.
[0131] It should be understood that the cloud server can obtain the network delay parameters, node capacity parameters and node cost parameters associated with all edge computing nodes, and then obtain the network delay parameters, node capacity parameters and node cost parameters associated with the candidate edge computing nodes from the network delay parameters, node capacity parameters and node cost parameters associated with all edge computing nodes. Among them, all edge computing nodes represent all edge computing nodes associated with the cloud server. Among them, the cloud server can obtain the node capacity parameters associated with the first transition node from the node capacity parameters associated with the candidate edge computing nodes; the cloud server can obtain the node cost parameters associated with the second transition node from the node cost parameters associated with the candidate edge computing nodes; in other words, the cloud server can obtain the node cost parameters associated with the second transition node from the node cost parameters associated with the first transition node.
[0132] It is understandable that the cloud server defines the minimum delay threshold (i.e., the minimum delay) required for the operation of different types of cloud games. After obtaining the target cloud game requested by the user terminal, the cloud server can determine the game type to which the target cloud game belongs, and then use the minimum delay threshold of the game type as the network delay parameter. For example, the minimum delay of the MOBA (Multiplayer Online Battle Arena) type is 60ms (i.e., 60 milliseconds), and the minimum delay of the MMORPG (Massive Multiplayer Online Role-Playing Game) type is 80ms (i.e., 80 milliseconds). Optionally, the cloud server can also define the minimum delay threshold required for the operation of different cloud games. It should be understood that the embodiment of the present application does not limit the minimum delay threshold of the target cloud game.
[0133] It is understandable that when the cloud server receives the number of idle instances (i.e., remaining allocatable resources, remaining number of allocatable instances) reported in real time by each candidate edge computing node in the candidate edge computing node, it receives the number of occupied instances (i.e., game instance allocation, game instance allocation) reported in real time by each candidate edge computing node. The number of idle instances and the number of occupied instances here can be collectively referred to as instance allocation. It is understandable that when the number of occupied instances or the number of idle instances of a candidate edge computing node changes, the candidate edge computing node can report the number of occupied instances or the number of idle instances in real time. Optionally, the candidate edge computing node can also report the number of occupied instances or the number of idle instances in real time at specified time intervals.
[0134] It should be understood that the cloud server can receive instance allocation situations reported in real time by all edge computing nodes, and obtain instance allocation situations reported in real time by candidate edge computing nodes from the instance allocation situations reported in real time by all edge computing nodes.
[0135] Among them, the number of idle instances reported in real time by each candidate edge computing node may include the target number of idle instances corresponding to the target cloud game; the number of occupied instances reported in real time by each candidate edge computing node may include the target number of occupied instances corresponding to the target cloud game. It can be understood that when the cloud game server corresponding to the target cloud game is deployed on the candidate edge computing node, the target number of idle instances can be a non-negative integer. At this time, the target number of idle instances is zero, indicating that all game instances are in an occupied state, and the target number of idle instances is a positive integer, indicating that there are game instances in an unoccupied state. Optionally, when the cloud game server corresponding to the target cloud game is not deployed on the candidate edge computing node, the target number of idle instances can be zero. For example, when the number of candidate edge computing nodes is 100, 60 of the 100 candidate edge computing nodes may have deployed cloud game servers corresponding to the target cloud game. For another example, the cloud game server of cloud game E1 is deployed in the candidate edge computing node J. The number of game instances corresponding to cloud game E1 (i.e., instance allocation) is 20, of which 8 are occupied and 12 are idle. The cloud game server of cloud game E2 is not deployed in the candidate edge computing node, and the number of game instances corresponding to cloud game E2 is 0.
[0136] It is understandable that the user cost amount (i.e., the cost per user) of a candidate edge computing node is determined based on the computer room construction cost of a candidate edge computing node and the number of instances that can be carried by a candidate edge computing node (i.e., the number of game instances that can be carried); wherein the computer room construction cost of a candidate edge computing node is determined by the rack cost, power cost, server cost, board cost, broadband cost, and consumables cost of the candidate edge computing node. Among them, the number of instances that can be carried by a candidate edge computing node may include the number of idle instances and the number of occupied instances of the candidate edge computing node. Among them, the cost per user = (rack cost + power cost + server cost + board cost + broadband cost + consumables cost) / number of game instances that can be carried, and the cost per user here is static data.
[0137] It can be understood that the computer room construction cost of a candidate edge computing node may include but is not limited to the above-mentioned rack cost, electricity cost, server cost, board cost, broadband cost and consumables cost.
[0138] It is understandable that if the network delay of the candidate edge computing node is less than or equal to the minimum delay threshold, the candidate edge computing node matches the delay condition of the network delay parameter. Optionally, if the network delay of the candidate edge computing node is greater than the minimum delay threshold, the candidate edge computing node does not match the delay condition of the network delay parameter.
[0139] It is understandable that if the first transition node has a number of idle instances that can run the target cloud game, the first transition node matches the capacity condition of the node capacity parameter. Optionally, if the first transition node does not have a number of idle instances that can run the target cloud game, the first transition node does not match the capacity condition of the node capacity parameter.
[0140] Among them, the cloud server can sort the first transition nodes in the first transition nodes associated with the third address list based on the network delay of each first transition node, use the sorted first transition nodes as nodes to be processed, and generate a sorted address list based on the Internet Protocol addresses of the nodes to be processed. Further, the cloud server can filter out the nodes to be processed corresponding to the number of idle instances that can run the target cloud game in the nodes to be processed associated with the sorted address list. Furthermore, if the number of the filtered nodes to be processed is multiple, the cloud server can use the filtered nodes to be processed as the second transition nodes that match the capacity conditions of the node capacity parameters, and generate a fourth address list based on the Internet Protocol addresses of the second transition nodes.
[0141] Among them, optionally, the cloud server can also sort the candidate edge computing nodes associated with the second address list based on the network delay of each candidate edge computing node, use the sorted candidate edge computing nodes as nodes to be processed, and generate a sorted address list based on the Internet Protocol addresses of the nodes to be processed. Further, the cloud server can screen out nodes to be processed whose network delay is less than or equal to the minimum delay threshold among the nodes to be processed associated with the sorted address list, use the screened nodes to be processed as the first transition nodes that match the delay condition of the network delay parameter, and generate a third address list based on the Internet Protocol address of the first transition node.
[0142] It is understandable that the order of the second transition nodes associated with the fourth address list is determined by the network delay of each second transition node. It should be understood that the specific process of the cloud server determining the target edge computing node in the second transition node can be described as: the cloud server can screen the second transition node with the minimum user cost in the second transition node associated with the fourth address list, and if there are multiple screened second transition nodes, the multiple screened second transition nodes are added to the set of nodes to be processed. Further, the cloud server can obtain the second transition node with the minimum network delay from the set of nodes to be processed as the target edge computing node that matches the cost condition of the node cost parameter. Optionally, if there is one screened second transition node, the one screened second transition node is used as the target edge computing node that matches the cost condition of the node cost parameter.
[0143] Optionally, the cloud server may sort the second transition nodes in the second transition nodes associated with the fourth address list based on the user cost of each second transition node, use the sorted second transition nodes as the first nodes to be processed, and generate a first sorted address list based on the Internet Protocol addresses of the first nodes to be processed. Further, the cloud server may screen the first nodes to be processed with the minimum user cost in the first nodes to be processed associated with the first sorted address list, use the screened first nodes to be processed as the second nodes to be processed, and generate a second sorted address list based on the Internet Protocol addresses of the second nodes to be processed. Further, the cloud server may sort the second nodes to be processed in the second nodes to be processed associated with the second sorted address list based on the network delay of each second node to be processed, use the sorted second nodes to be processed as the second transition node, and obtain the second transition node with the minimum network delay from the second transition nodes as the target edge computing node that matches the cost condition of the node cost parameter.
[0144] For easier understanding, see Figure 5 , Figure 5 Schematic diagram of a scenario for determining a target edge computing node provided by an embodiment of the present application. Figure 5 The second address list 50a shown may include L Internet Protocol addresses, and the L Internet Protocol addresses may specifically include: Internet Protocol address 1, Internet Protocol address 2, Internet Protocol address 3, Internet Protocol address 4, ..., Internet Protocol address L. The L Internet Protocol addresses here correspond to L candidate edge computing nodes. For example, Internet Protocol address 1 corresponds to candidate edge computing node J1 (the candidate edge computing node J1 here can be the above-mentioned Figure 4a The node J2 in the corresponding embodiment), the Internet Protocol address 2 corresponds to the candidate edge computing node J2 (the candidate edge computing node J2 here can be the above Figure 4a The node J3 in the corresponding embodiment), ..., the Internet Protocol address L corresponds to the candidate edge computing node J L (The candidate edge computing node J here L Can be the above Figure 4a Node J in the corresponding embodiment M ).
[0145] like Figure 5As shown, the cloud server can filter out the Internet Protocol addresses whose network delay is less than or equal to the minimum delay threshold in the second address list 50a, and generate a third address list 50b based on the filtered Internet Protocol addresses. The third address list 50b may include: Internet Protocol address 1, Internet Protocol address 3, Internet Protocol address 4, ..., Internet Protocol address L. Among them, the candidate edge computing nodes J1, candidate edge computing nodes J3, ..., candidate edge computing nodes J associated with the third address list 50b are: L , which can meet the minimum delay threshold for running the target cloud game; the candidate edge computing node J2 associated with the second address list 50a does not meet the minimum delay threshold for running the target cloud game.
[0146] Further, the cloud server can filter the Internet Protocol addresses corresponding to the number of idle instances that can run the target cloud game in the third address list 50b, and generate a fourth address list 50c based on the filtered Internet Protocol addresses. The fourth address list 50c may include: Internet Protocol address 1, Internet Protocol address 3, and Internet Protocol address 4. Among them, the candidate edge computing nodes J1, candidate edge computing nodes J3, and candidate edge computing nodes J4 associated with the fourth address list 50c have the number of idle instances to allocate game instances to the target cloud game; the candidate edge computing nodes J5, ..., candidate edge computing nodes J6, ..., and candidate edge computing nodes J7, ..., and candidate edge computing nodes J8, ..., and candidate edge computing nodes J9, ..., and candidate edge computing nodes J10, ..., and candidate edge computing nodes J11, ..., and candidate edge computing nodes J12, ..., and candidate edge computing nodes J13, ..., and candidate edge computing nodes J14, ..., and candidate edge computing nodes J15, ..., and candidate edge computing nodes J16, ..., and candidate edge computing nodes J17, ..., and candidate edge computing nodes J18, ..., and candidate edge computing nodes J19, ..., and candidate edge computing nodes J20, ..., and candidate edge computing nodes J31, ..., and candidate edge computing nodes J41, ..., and candidate edge computing nodes J21, ..., and candidate edge computing nodes J23, ..., and candidate edge computing nodes J34, ..., and candidate edge computing nodes J42, ..., and candidate edge computing nodes J53, ..., and candidate edge computing nodes J64, ..., and candidate edge computing nodes J75, ..., and candidate edge computing nodes J36, ..., and candidate edge computing nodes J43, ..., and candidate edge computing nodes J54, ..., and candidate edge computing nodes J65, ..., and candidate edge computing nodes J66, ..., and candidate edge computing nodes J76, ..., and candidate edge computing nodes J77, ..., and candidate edge computing nodes J78, ..., and candidate edge computing nodes J86, ..., and candidate edge computing nodes J87, L , there are no idle instances to allocate game instances to the target cloud game.
[0147] Further, the cloud server may filter the Internet Protocol address with the minimum user cost in the fourth address list 50c, and when the Internet Protocol address 4 in the fourth address list 50c has the minimum user cost, the cloud server may determine the Internet Protocol address 4 as the target edge computing node 50d. Optionally, when the Internet Protocol address 3 and the Internet Protocol address 4 in the fourth address list 50c have the same minimum user cost, the cloud server may filter the Internet Protocol address 3 and the Internet Protocol address 4 with the minimum user cost in the fourth address list 50c, thereby adding the Internet Protocol address 3 and the Internet Protocol address 4 to the set of nodes to be processed, and filter the edge computing node with the minimum network delay in the set of nodes to be processed. For example, when the Internet Protocol address 4 in the set of nodes to be processed has the minimum network delay, the cloud server may determine the Internet Protocol address 4 in the set of nodes to be processed as the target edge computing node 50d.
[0148] Step S104: Use the Internet Protocol address corresponding to the target edge computing node in the second address list as the target Internet Protocol address, and return the target Internet Protocol address to the user terminal.
[0149] Among them, the target Internet Protocol address is used to instruct the user terminal to connect to the target edge computing node when running the target cloud game.
[0150] It can be seen that when a user starts a cloud game in a user terminal, the cloud server can receive a node scheduling request sent by the user terminal, and then based on the network quality evaluation parameters obtained by the user terminal through network quality detection, the network quality (i.e., network delay parameters), the cost of computer room construction (i.e., node cost parameters) and capacity (i.e., node capacity parameters) are comprehensively considered, and the optimal edge computing node (the optimal edge computing node is a target edge computing node with both usage resources and lower operating costs) is accurately screened out from multiple edge computing nodes, thereby improving the accuracy of node scheduling and the operating efficiency of cloud games. In addition, the embodiment of the present application provides cloud gaming services for user terminals through target edge computing nodes, which can improve the resource utilization of target edge computing nodes while alleviating the network delay between the user terminal and the target edge computing node, and can also reduce operating costs, thereby improving user experience.
[0151] For further information, see Figure 6 , Figure 6 This is a flow chart of an edge computing node scheduling method provided by an embodiment of the present application. The method can be executed by a user terminal, or by a cloud server, or by both a user terminal and a cloud server. The user terminal can be the above Figure 1 The corresponding user terminal 3000a in the embodiment, the cloud server can be the above Figure 1 The cloud server 2000 in the corresponding embodiment. For ease of understanding, this embodiment is described by taking the method executed by a user terminal as an example. Among them, the edge computing node scheduling method can at least include the following steps S201-S204:
[0152] Step S201, in response to a trigger operation for a target cloud game, sending a node scheduling request to a cloud server based on a first auxiliary scheduling parameter associated with the target cloud game, and receiving a first address list returned by the cloud server based on the node scheduling request;
[0153] The first auxiliary scheduling parameter includes but is not limited to the terminal location area of the user terminal and the access network of the user terminal, and the terminal location area and the access network are used to instruct the cloud server to determine the Internet Protocol address in the first address list. The terminal location area and the access network can be determined by the Internet Protocol address of the user terminal.
[0154] For easier understanding, see Figure 7 , Figure 7 Schematic diagram of a scenario of sending a node scheduling request provided by an embodiment of the present application. Figure 7The user Y shown (i.e., the player user corresponding to the user terminal) can perform a trigger operation on the user terminal to display a cloud game recommendation interface 700a in the user terminal. The cloud game recommendation interface 700a may include multiple cloud games. The multiple cloud games here may specifically include: cloud game 70a, cloud game 70b, cloud game 70c and cloud game 70d. The specific number of multiple cloud games will not be limited here.
[0155] like Figure 7 As shown, when user Y needs to start a cloud game (for example, cloud game 70d), a trigger operation can be performed on the game startup control 700b corresponding to the cloud game 70d, and the user terminal can respond to the trigger operation performed by user Y on the game startup control 700b, determine the first auxiliary scheduling parameter associated with the user terminal, and send a node scheduling request to the cloud server 700c corresponding to the user terminal based on the first auxiliary scheduling parameter. At this time, the user terminal can refer to the cloud game 70d selected by user Y in the cloud game recommendation interface 700a as the target cloud game. In this way, the cloud server 700c can obtain the first auxiliary scheduling parameter from the node scheduling request, search the database for the candidate edge computing node configured for the user terminal based on the first auxiliary scheduling parameter, and then generate a first address list based on the Internet Protocol address of the candidate edge computing node, and return the first address list to the user terminal.
[0156] Step S202: Perform network quality detection on the candidate edge computing nodes associated with the first address list to obtain network quality evaluation parameters corresponding to the candidate edge computing nodes;
[0157] Specifically, the user terminal can be based on the user terminal and the candidate edge computing node S j The network detection protocol between the candidate edge computing nodes S j P1 request packets for network quality detection, based on candidate edge computing nodes S j The corresponding Internet Protocol address sends P1 request packets to the candidate edge computing node S respectively j , records the P1 first timestamps of sending the P1 request packets. The candidate edge computing nodes associated with the first address list include the candidate edge computing nodes S j , where j can be less than or equal to the number of candidate edge computing nodes; where P1 can be a positive integer. Further, the user terminal can receive the candidate edge computing node S j Through the candidate edge computing node S jThe P2 response packets returned by the corresponding Internet Protocol address record the P2 second timestamps of receiving the P2 response packets. Wherein, P2 here can be a non-negative integer less than or equal to P1. Further, the user terminal can determine the P2 first timestamps corresponding to the P2 response packets from the P1 first timestamps, and obtain the candidate edge computing node S based on the time difference between the P2 first timestamps and the P2 second timestamps. j Further, the user terminal can average the P2 network delays to obtain the candidate edge computing node S j The corresponding average network delay. Further, the user terminal can determine the candidate edge computing node S according to the average network delay. j The corresponding network quality evaluation parameters. Among them, the user terminal can use the average network delay as the candidate edge computing node S j Corresponding network quality assessment parameters.
[0158] Among them, when P2 is equal to 0, the user terminal does not receive the candidate edge computing node S j The response data packet returned, at this time, the user terminal cannot determine the candidate edge computing node S j The corresponding average network delay makes it impossible to determine the candidate edge computing node S j Corresponding network quality evaluation parameters. Optionally, when P2 is equal to 1, the user terminal can directly use this 1 network delay as the average network delay.
[0159] It can be understood that the network detection protocol is used to determine the user terminal and the candidate edge computing node S j The network quality assessment parameters between the network detection protocol can be the ICMP protocol (Internet Control Message Protocol), where the ICMP protocol can determine the network quality assessment parameters corresponding to the candidate edge computing node through the PING command. Among them, the ICMP protocol is used to transmit control messages between the user terminal and the candidate edge computing node. It should be understood that the network detection protocol can also be the TCP protocol (Transmission Control Protocol) and the UDP protocol (User Datagram Protocol), and the embodiment of the present application does not limit the specific type of the network detection protocol.
[0160] Optionally, the user terminal can also obtain the candidate edge computing node S based on P1 request data packets and P2 response data packets. j The corresponding network packet loss rate. Furthermore, the user terminal can determine the candidate edge computing node S according to the network packet loss rate.j The corresponding network quality evaluation parameters. Among them, the user terminal can use the network packet loss rate as the candidate edge computing node S j Corresponding network quality assessment parameters.
[0161] Among them, when P2 is equal to 0, the user terminal does not receive the candidate edge computing node S j The response data packet returned, at this time, the candidate edge computing node S j The corresponding network packet loss rate is 100%. Optionally, when P2 is greater than 0, the candidate edge computing node S j The corresponding network packet loss rate can be expressed as: (P1-P2) / P1.
[0162] Optionally, the user terminal can also be in the candidate edge computing node S j Determine the maximum network delay and the minimum network delay from the P2 network delays, and obtain the candidate edge computing node S based on the difference between the maximum network delay and the minimum network delay. j Corresponding network jitter. Further, the user terminal can determine the candidate edge computing node S according to the network jitter. j The corresponding network quality evaluation parameters. Among them, the user terminal can use the network jitter as a candidate edge computing node S j The corresponding network quality evaluation parameters. Optionally, the user terminal can also select the candidate edge computing node S j The standard deviation of P2 network delays is used to obtain the candidate edge computing node S j Corresponding network jitter.
[0163] Among them, when P2 is less than 2, the user terminal receives the candidate edge computing node S j 1 or 0 response packets are returned. At this time, the user terminal cannot determine the maximum network delay and the minimum network delay. Therefore, the user terminal cannot determine the candidate edge computing node S j The corresponding network jitter makes it impossible to determine the candidate edge computing node S j Corresponding network quality assessment parameters.
[0164] Optionally, the user terminal determines a candidate edge computing node S j The corresponding network quality evaluation parameter includes, but is not limited to, the above average network delay, network packet loss rate and network jitter. Optionally, the user terminal can also determine the network quality evaluation parameter by any combination of two or more of the above parameters.
[0165] Step S203, determining the first address list carrying the network quality assessment parameter as the second address list, and sending the second address list to the cloud server;
[0166] Among them, the second address list is used to instruct the cloud server to determine the target edge computing node among the candidate edge computing nodes based on the network quality evaluation parameters and the network delay parameters, node capacity parameters and node cost parameters in the second auxiliary scheduling parameters after obtaining the second auxiliary scheduling parameters associated with the candidate edge computing nodes.
[0167] Step S204, receiving the target Internet Protocol address of the target edge computing node returned by the cloud server, and connecting to the target edge computing node based on the target Internet Protocol address when running the target cloud game.
[0168] When the user terminal receives the target Internet Protocol address returned by the cloud server, it can send a node connection request to the target edge computing node based on the target Internet Protocol address, and then connect to the target edge computing node.
[0169] It can be seen that when a user starts a cloud game, the user terminal corresponding to the user can send a node scheduling request to the cloud server, and then perform network quality detection on multiple edge computing nodes (i.e., candidate edge computing nodes) returned by the cloud server, and obtain network quality assessment parameters corresponding to multiple edge computing nodes, so that the cloud server can determine the target edge computing node among multiple edge computing nodes based on the network quality assessment parameters and the second auxiliary scheduling parameters. Based on this, the user terminal can receive the target Internet Protocol address of the target edge computing node returned by the cloud server, and use the target edge computing node as the edge computing node corresponding to the user terminal running the target cloud game. The embodiment of the present application can improve the accuracy of node scheduling and improve the operating efficiency of cloud games.
[0170] For further information, see Figure 8 , Figure 8 This is a flow chart of an edge computing node scheduling method provided by an embodiment of the present application. The method can be executed by a user terminal, or by a cloud server, or by both a user terminal and a cloud server. The user terminal can be the above Figure 1 The corresponding user terminal 3000a in the embodiment, the cloud server can be the above Figure 1 The cloud server 2000 in the corresponding embodiment. For ease of understanding, this embodiment is described by taking the method being performed by the user terminal and the cloud server as an example. Among them, the edge computing node scheduling method may include the following steps:
[0171] Step S301: In response to a trigger operation for a target cloud game, the user terminal sends a node scheduling request to a cloud server based on a first auxiliary scheduling parameter associated with the target cloud game;
[0172] Step S302: The cloud server obtains a node scheduling request sent by the user terminal for the target cloud game, obtains a first address list based on a first auxiliary scheduling parameter in the node scheduling request, and returns the first address list to the user terminal;
[0173] The Internet Protocol addresses in the first address list are determined by the terminal location area and the access network.
[0174] Optionally, it is understood that the first auxiliary scheduling parameter may include historical behavior data of the user terminal within a historical duration, and the historical behavior data is used to characterize the operator to which the user terminal was historically connected when running the target cloud game and the historical edge computing node corresponding to the operator connected historically. Among them, the historical edge computing node is used to determine the target location area of the user terminal within the target duration; the target duration is the next duration of the historical duration; the edge computing node in the target location area is used to update the Internet Protocol address in the first address list.
[0175] The first auxiliary scheduling parameter includes but is not limited to the terminal positioning area of the user terminal and the access network of the user terminal, or the historical behavior data of the user terminal within a historical period.
[0176] Among them, the historical geographical location area of the user terminal can be determined through the operator historically connected to the user terminal (i.e., the historical operator corresponding to the historical access network of the user terminal) and the historical edge computing node. It is understandable that the cloud server can determine the first address list corresponding to the node scheduling request of the user terminal when the user terminal starts the target cloud game within the target duration based on the historical operator, the historical address location area and the historical edge computing node.
[0177] Optionally, the cloud server may also filter candidate edge computing nodes associated with the target cloud game from the candidate edge computing nodes associated with the first address list, that is, filter candidate edge computing nodes of the cloud game server corresponding to the target cloud game deployed, and update the Internet Protocol address in the first address list based on the Internet Protocol address of the filtered candidate edge computing node.
[0178] Step S303: The user terminal receives the first address list returned by the cloud server based on the node scheduling request, performs network quality detection on the candidate edge computing nodes associated with the first address list, and obtains network quality evaluation parameters corresponding to the candidate edge computing nodes;
[0179] The network quality evaluation parameters may include average network delay. Optionally, the network quality evaluation parameters may also include network packet loss rate and network jitter. The average network delay represents the average value of multiple network delays, the network packet loss rate represents the ratio of lost data packets to sent data packets, and the network jitter represents the degree of change of packet delay.
[0180] Optionally, it is understood that the user terminal or cloud server can perform deep modeling of the average network delay, network packet loss rate, and network jitter through a deep model to determine the network quality assessment parameters of the deep representation corresponding to the candidate edge computing node. Among them, the deep model can be used to determine the target edge computing node corresponding to the user terminal. It should be understood that the embodiment of the present application does not limit the specific model type of the deep model.
[0181] It is understandable that when the user terminal switches networks, the access network of the user terminal may change, and accordingly, the first auxiliary scheduling parameter may change. Therefore, when the user terminal switches networks, it is necessary to re-detect the network quality of the candidate edge computing nodes associated with the first address list.
[0182] Step S304: the user terminal determines the first address list carrying the network quality assessment parameter as the second address list, and sends the second address list to the cloud server;
[0183] Step S305, the cloud server receives the second address list sent by the user terminal;
[0184] Step S306, the cloud server obtains a second auxiliary scheduling parameter associated with the candidate edge computing node, and determines a target edge computing node from the candidate edge computing nodes based on the network quality evaluation parameter and the second auxiliary scheduling parameter;
[0185] The target edge computing node is a candidate edge computing node that matches the network delay parameter, node capacity parameter, and node cost parameter in the second auxiliary scheduling parameter.
[0186] Optionally, if the cloud server does not screen out a candidate edge computing node whose network delay is less than or equal to the minimum delay threshold value among the candidate edge computing nodes associated with the second address list based on the average network delay in the network quality assessment parameter (i.e., indicating that the network quality of the user terminal's access network does not meet the operating conditions of the target cloud game), it is determined that there is no candidate edge computing node that matches the delay condition of the network delay parameter among the candidate edge computing nodes, and a first prompt message is generated for returning to the user terminal. In this way, after receiving the first prompt message returned by the cloud server, the user terminal can display a first prompt interface, in which the first prompt message is output.
[0187] Among them, it can be understood that when the cloud server determines that there is no candidate edge computing node that matches the delay condition among the candidate edge computing nodes, it is not necessary to determine the target edge computing node. In this way, the user terminal cannot obtain the target Internet Protocol address returned by the cloud server, and therefore, the user terminal cannot run the target cloud game.
[0188] Among them, optionally, when the cloud server determines that there is no candidate edge computing node matching the delay condition among the candidate edge computing nodes, it can obtain a candidate edge computing node with the smallest network delay from the candidate edge computing nodes, use the screened candidate edge computing node with the smallest network delay as the target edge computing node, use the Internet Protocol address of the target edge computing node as the target Internet Protocol address, and return the target Internet Protocol address to the user terminal.
[0189] Optionally, when the cloud server determines that there is no candidate edge computing node that matches the delay condition among the candidate edge computing nodes, the user terminal can be put into a queue waiting state, and when it is determined that there is a candidate edge computing node that matches the delay condition among the candidate edge computing nodes, the candidate edge computing node that matches the delay condition is used as the first transition node. When the user terminal enters the queue waiting state, it can re-detect the network quality of the candidate edge computing node to obtain the updated network quality evaluation parameters corresponding to the candidate edge computing node, so that the cloud server can screen the candidate edge computing nodes that match the delay condition based on the average network delay in the updated network quality evaluation parameters.
[0190] For easier understanding, see Figure 9a , Figure 9a is a schematic diagram of a scenario for generating a first prompt message provided by an embodiment of the present application. Figure 9a The cloud server 900a shown can filter the Internet Protocol address corresponding to the first transition node that matches the delay condition in the second address list. When the cloud server 900a fails to filter out a candidate edge computing node whose network delay is less than or equal to the minimum delay threshold among the candidate edge computing nodes associated with the second address list (that is, no edge computing node is filtered out in the second address list), it can generate and return a first prompt information 90a to the user terminal.
[0191] like Figure 9aAs shown, after receiving the first prompt information 90a, the user terminal may output the first prompt information 90a in the first prompt interface, where the first prompt information 90a may be "The current network is not suitable for playing cloud games. If you continue, the gaming experience will be affected." Therefore, the user terminal cannot receive the target Internet Protocol address returned by the cloud server 900a, and thus cannot connect to the target edge computing node, and cannot run the target cloud game.
[0192] Optionally, if the first transition node corresponding to the number of idle instances that can run the target cloud game is not screened out in the first transition nodes associated with the third address list, it is determined that there is no first transition node matching the capacity condition of the node capacity parameter in the first transition nodes, and a second prompt message is generated for returning to the user terminal. In this way, after receiving the second prompt message returned by the cloud server, the user terminal can display a second prompt interface in which the second prompt message is output.
[0193] It can be understood that when it is determined that there is no first transition node matching the capacity condition in the first transition node, the user terminal can be made to enter a queue waiting state, and when it is determined that there is a first transition node matching the capacity condition in the first transition node, the first transition node matching the capacity condition is used as the second transition node. When the user terminal enters the queue waiting state, the cloud server can obtain the number of updated idle instances reported by the candidate edge computing node in real time, update the number of idle instances using the updated number of idle instances, and then screen the first transition node corresponding to the number of updated idle instances that can run the target cloud game based on the updated number of idle instances.
[0194] For easier understanding, see Figure 9b , Figure 9b Schematic diagram of a scenario for generating a second prompt message provided by an embodiment of the present application. Figure 9b The cloud server 900b shown can filter the Internet Protocol address corresponding to the second transition node that matches the capacity condition in the third address list. When the cloud server 900b fails to filter out the first transition node corresponding to the number of idle instances that can run the target cloud game in the first transition node associated with the third address list (that is, the edge computing node is not filtered out in the third address list), it can generate and return a second prompt message 90b to the user terminal.
[0195] like Figure 9bAs shown, after receiving the second prompt information 90b, the user terminal may output the second prompt information 90b in the second prompt interface, where the second prompt information 90b may be "There is currently no edge computing node that can be assigned, please wait..." Therefore, the user terminal may not be able to receive the target Internet Protocol address returned by the cloud server 900b, and thus enters a queue waiting state based on the second prompt information 90b. When the cloud server 900b screens out the first transition node corresponding to the number of updated idle instances that can run the target cloud game, the subsequent screening work can be performed.
[0196] The number of idle instances may be obtained by the cloud server 900b at time T1, and the number of updated idle instances may be obtained by the cloud server 900b at time T2, where time T2 may be the next time after time T1.
[0197] Optionally, it is understandable that the cloud service can also extract network delay characteristics corresponding to network delay parameters, node capacity characteristics corresponding to node capacity parameters, and node cost characteristics corresponding to node cost parameters through a deep model, and then perform feature fusion on the network delay characteristics, node capacity characteristics, and node cost characteristics to obtain a fused feature vector, and then determine the target edge computing node among the candidate edge computing nodes based on the fused feature vector.
[0198] Step S307, the cloud server uses the Internet Protocol address corresponding to the target edge computing node in the second address list as the target Internet Protocol address, and returns the target Internet Protocol address to the user terminal;
[0199] For easier understanding, see Fig.10 , Fig.10 Schematic diagram of a data interaction process provided by an embodiment of the present application. Fig.10 The user 100a shown may be a player user corresponding to the user terminal, such as Fig.10 The cloud game backend shown may be a cloud server corresponding to the user terminal. When the user terminal responds to the trigger operation of the user 100a for the target cloud game, it may execute step S41 to send a node scheduling request to the cloud game backend. The node scheduling request is used to request the cloud game backend to obtain the edge computing nodes (i.e., candidate edge computing nodes) of the same operator. In this way, the cloud game backend may generate a list A (i.e., IP list A, Internet protocol address list A, first address list) based on the Internet protocol addresses of the candidate edge computing nodes. Each candidate edge computing node corresponds to an Internet protocol address in list A.
[0200] like Fig.10As shown, after user 100a receives List A of edge computing nodes of the same operator returned by the cloud game background in step S42, step S43 can be executed to perform network quality detection on the Internet Protocol addresses in List A in parallel to obtain the average network delay of each Internet Protocol address in List A. Among them, the network quality detection here can be an RTT speed measurement, and the RTT speed measurement here can be used to determine the network quality evaluation parameters between the user terminal and each Internet Protocol address, and the network quality evaluation parameters here can include the average network delay. Further, after executing step S43, user 100a can execute step S44 to transmit List B with the speed measurement results (i.e., IP list B, Internet Protocol address list B, and second address list) back to the cloud game background (i.e., the background), and the speed measurement results here can be the above-mentioned average network delay.
[0201] like Fig.10 As shown, by executing step S45, the cloud game backend can obtain the game instance allocation reported in real time by the edge computing node, that is, the cloud game backend has mastered the capacity of the edge computing node. The embodiment of the present application does not limit the execution order of step S45. Fig.10 As shown, the cloud game backend defines the minimum delay threshold (i.e., RTT delay threshold) required for different game types in step S46. Based on the minimum delay threshold, list C (i.e., IP list C, Internet Protocol address list C, and third address list) that meets the minimum delay threshold corresponding to the target cloud game can be screened out from list B. Further, the cloud game backend can execute step S47 based on the capacity of the edge computing node obtained in step S45, sort the Internet Protocol addresses in list C from small to large according to the average network delay, and then screen out list D (i.e., IP list D, Internet Protocol address list D, and fourth address list) in list C that has the capacity to allocate the game instance.
[0202] like Fig.10 As shown, after executing step S47, the cloud game backend can execute step S48 to obtain the Internet Protocol address corresponding to the edge computing node with the minimum user cost (i.e., the minimum computer room construction cost) in list D. The Internet Protocol address corresponding to the edge computing node with the minimum user cost here is the target Internet Protocol address, and the cloud game backend can return the target Internet Protocol address to user 100a.
[0203] Step S308: The user terminal receives the target Internet Protocol address of the target edge computing node returned by the cloud server, and connects to the target edge computing node based on the target Internet Protocol address when running the target cloud game.
[0204] It can be understood that when the user terminal is running the target cloud game, it can interact with the target edge computing node for data. When the user terminal exits the target cloud game, the connection with the target edge computing node will be disconnected. Therefore, when the user terminal restarts the target cloud game, it can resend a node scheduling request to the cloud server to obtain a new target edge computing node and interact with the new target edge computing node for data.
[0205] For easier understanding, see Fig.11 , Fig.11 Schematic diagram of a scenario of scheduling a target edge computing node provided by an embodiment of the present application. Fig.11 As shown, the cloud server may include multiple business modules, and the multiple business modules may specifically include the following five business modules. These five business modules may be Fig.11 The five business modules shown in the figure can be used to jointly implement the scheduling service of the edge computing nodes of the cloud server, so as to find the edge computing nodes that can be used as accurately as possible. Fig.11 The user terminal shown provides the target edge computing node for cloud gaming services.
[0206] like Fig.11 As shown, when executing step S51, the user terminal can request the Internet Protocol address list module to obtain List A, and then based on the Internet Protocol address in List A, perform network quality detection of the edge computing node associated with List A using the network detection protocol (e.g., ICMP protocol). Among them, the Internet Protocol address list module can return the Internet Protocol address list (i.e., IP list) of the edge computing nodes of the same operator to the user terminal, and the IP list here can be IP List A (i.e., List A). Among them, the operation background corresponding to the cloud server can configure the IP list to return different lists to user terminals in different regions (i.e., geographical location regions). In this way, the user terminal only needs to perform network quality detection on the edge computing nodes in several nearby provinces to obtain speed test results, which can reduce invalid network detection of the user terminal, and then determine the IP list with speed test results, and the IP list here can be IP List B (i.e., List B).
[0207] like Fig.11As shown, when executing step S52, the user terminal can return list B with the speed test results to the scheduling service module. The cloud server can execute step S53, and schedule the game delay configuration module through the scheduling service module. The game delay configuration module defines the RTT delay threshold required for different game types. According to list B with the speed test results fed back by the user terminal, an IP list with a delay threshold less than the RTT delay threshold corresponding to the game type can be screened out. The IP list here can be IP list C (i.e., list C). Further, the cloud server can execute step S54, and schedule the capacity calculation module through the scheduling service module. The capacity calculation module has the game instance allocation and remaining allocatable resources reported in real time by all edge computing nodes. It can determine whether the edge computing node corresponding to the Internet Protocol address in list C has an allocatable game instance, and screen out the IP list with allocatable game instances. The IP list here can be IP list D (i.e., list D). Further, the cloud server can execute step S55, and schedule the edge computing node cost module through the scheduling service module. The edge computing node cost module has the single-user cost data of each edge computing node, and can screen the edge computing nodes (i.e., the target edge computing nodes) with low computer room construction costs in list D on the premise of meeting the RTT delay threshold and capacity requirements.
[0208] The number of edge computing nodes (i.e., all the above-mentioned edge computing nodes) corresponding to the cloud server may be multiple, and the multiple edge computing nodes may specifically include Fig.10 The Q edge computing nodes shown, where Q can be a positive integer, one edge computing node can be represented as a cluster, and the Q edge computing nodes can be represented as Q clusters respectively, and the Q clusters can specifically include: cluster 1, cluster 2, cluster 3, ..., cluster Q. Among them, cluster 1 can be an edge computing node with low computer room construction cost selected by the cloud server.
[0209] like Fig.11 As shown, the cloud server can execute step S56 to return the Internet Protocol address of cluster 1 (ie, the target Internet Protocol address) to the user terminal. In this way, the user terminal can execute step S57 to directly connect to the game instance of cluster 1 to play the game according to the target Internet Protocol address.
[0210] It can be seen that the embodiment of the present application can, in a cloud gaming scenario, based on the network quality evaluation parameters between the user terminal and the candidate edge computing nodes, and the network delay parameters, node capacity parameters and node cost parameters in the second auxiliary scheduling parameters, quickly determine the target edge computing node among multiple candidate edge computing nodes, so that the user terminal can schedule the target edge computing node according to the target Internet Protocol address of the target edge computing node. This means that the embodiment of the present application can simultaneously consider the network quality (i.e., network delay parameters), capacity (i.e., node capacity parameters) and computer room costs (i.e., node cost parameters) to obtain a target edge computing node with better network quality and lower resource usage and operating costs among multiple candidate edge computing nodes. Based on this, the embodiment of the present application can improve the accuracy of node scheduling and improve the operating efficiency of cloud games when scheduling the target edge computing node for the user terminal.
[0211] For further information, see Fig.12 , Fig.12 It is a structural diagram of an edge computing node scheduling device provided in an embodiment of the present application. The edge computing node scheduling device 1 may include: a request acquisition module 11, a list receiving module 12, a node determination module 13, and an address return module 14;
[0212] The request acquisition module 11 is used to acquire a node scheduling request sent by a user terminal for a target cloud game, acquire a first address list based on a first auxiliary scheduling parameter in the node scheduling request, and return the first address list to the user terminal; the first auxiliary scheduling parameter includes but is not limited to a terminal location area of the user terminal and an access network of the user terminal; the Internet Protocol address in the first address list is determined by the terminal location area and the access network;
[0213] The request acquisition module 11 includes: a parameter analysis unit 111, a node acquisition unit 112, and a list generation unit 113;
[0214] The parameter analysis unit 111 is used to obtain a node scheduling request sent by the user terminal for the target cloud game, determine the geographical location area where the user terminal is located based on the first auxiliary scheduling parameter in the node scheduling request, and determine the target operator corresponding to the access network of the user terminal; the terminal positioning area is an area in the geographical location area;
[0215] The node acquisition unit 112 is used to acquire, from the M edge computing nodes in the geographical location area, an edge computing node having the same operator as the user terminal in the terminal location area, and use the acquired edge computing node as a candidate edge computing node; M is a positive integer;
[0216] The node acquisition unit 112 includes: a first determination subunit 1121, a second determination subunit 1122, and a node determination subunit 1123;
[0217] The first determining subunit 1121 is configured to select an edge computing node corresponding to a target operator as a first candidate edge computing node among N edge computing nodes in a terminal location area; N is a positive integer less than M;
[0218] The second determining subunit 1122 is configured to determine, in the geographic location area, a neighboring location area associated with the terminal location area, and search for an edge computing node with the same operator as the target operator among K edge computing nodes in the neighboring location area, and use the edge computing node found in the neighboring location area as a second candidate edge computing node; K is a positive integer less than M;
[0219] The node determination subunit 1123 is configured to select the first candidate edge computing node and the second candidate edge computing node as candidate edge computing nodes.
[0220] The specific implementation of the first determination subunit 1121, the second determination subunit 1122 and the node determination subunit 1123 can be found in the above Figure 3 The description of step S101 in the corresponding embodiment will not be repeated here.
[0221] The list generating unit 113 is used to generate a first address list corresponding to the node scheduling request according to the Internet Protocol address of the candidate edge computing node, and return the first address list to the user terminal.
[0222] The specific implementation of the parameter analysis unit 111, the node acquisition unit 112 and the list generation unit 113 can be found in the above Figure 3 The description of step S101 in the corresponding embodiment will not be repeated here.
[0223] Among them, the first auxiliary scheduling parameter includes historical behavior data of the user terminal within a historical duration; the historical behavior data is used to characterize the operator to which the user terminal was historically connected when running the target cloud game and the historical edge computing nodes corresponding to the historically connected operator; the historical edge computing nodes are used to determine the target location area of the user terminal within a target duration; the target duration is the next duration of the historical duration; the edge computing nodes in the target location area are used to update the Internet Protocol address in the first address list.
[0224] The list receiving module 12 is used to receive a second address list sent by a user terminal; the network quality evaluation parameters in the second address list are obtained by the user terminal after performing network quality detection on the candidate edge computing nodes associated with the first address list;
[0225] The node determination module 13 is used to obtain a second auxiliary scheduling parameter associated with the candidate edge computing node, and determine a target edge computing node among the candidate edge computing nodes based on the network quality evaluation parameter and the second auxiliary scheduling parameter; the target edge computing node is a candidate edge computing node that matches the network delay parameter, the node capacity parameter, and the node cost parameter in the second auxiliary scheduling parameter;
[0226] The network quality evaluation parameter includes an average network delay; the average network delay is used to characterize the network delay of the candidate edge computing node corresponding to each Internet Protocol address in the second address list;
[0227] The node determination module 13 includes: a parameter acquisition unit 131, a first screening unit 132, a second screening unit 133, and a third screening unit 134; optionally, the node determination module 13 may further include: a first prompting unit 135, a second prompting unit 136, and an instance receiving unit 137;
[0228] The parameter acquisition unit 131 is used to acquire the network delay parameter, node capacity parameter and node cost parameter associated with the candidate edge computing node; the network delay parameter is used to characterize the minimum delay threshold for running the target cloud game; the node capacity parameter is used to characterize the number of idle instances reported in real time by each candidate edge computing node in the candidate edge computing node; the node cost parameter is used to characterize the user cost of each candidate edge computing node;
[0229] Among them, the user cost of a candidate edge computing node is determined based on the computer room construction cost of a candidate edge computing node and the number of instances that a candidate edge computing node can carry; among them, the computer room construction cost of a candidate edge computing node is determined by rack cost, electricity cost, server cost, board cost, broadband cost and consumables cost.
[0230] A first screening unit 132 is configured to screen, from the candidate edge computing nodes associated with the second address list, candidate edge computing nodes whose network delay is less than or equal to the minimum delay threshold based on the average network delay in the network quality assessment parameter, use the screened candidate edge computing nodes as first transition nodes that match the delay condition of the network delay parameter, and generate a third address list based on the Internet Protocol address of the first transition node;
[0231] The second screening unit 133 is used to screen the first transition nodes corresponding to the number of idle instances that can run the target cloud game from the first transition nodes associated with the third address list, use the screened first transition nodes as second transition nodes that match the capacity condition of the node capacity parameter, and generate a fourth address list based on the Internet Protocol address of the second transition node;
[0232] The third screening unit 134 is used to screen the second transition node with the smallest user cost amount among the second transition nodes associated with the fourth address list, and determine the second transition node with the smallest user cost amount as the target edge computing node that matches the cost condition of the node cost parameter.
[0233] wherein the order of the second transition nodes associated with the fourth address list is determined by a network delay amount of each second transition node;
[0234] The third screening unit 134 includes: a first screening subunit 1341 and a second screening subunit 1342;
[0235] The first screening subunit 1341 is used to screen the second transition nodes with the minimum user cost in the second transition nodes associated with the fourth address list, and if there are multiple screened second transition nodes, add the multiple screened second transition nodes to the set of nodes to be processed;
[0236] The second screening subunit 1342 is used to obtain a second transition node with a minimum network delay from the set of nodes to be processed as a target edge computing node that matches the cost condition of the node cost parameter.
[0237] The specific implementation of the first screening subunit 1341 and the second screening subunit 1342 can be found in the above Figure 3 The description of step S103 in the corresponding embodiment will not be repeated here.
[0238] Optionally, the first prompt unit 135 is used to determine that there is no candidate edge computing node matching the delay condition of the network delay parameter among the candidate edge computing nodes if, based on the average network delay in the network quality assessment parameter, no candidate edge computing node with a network delay less than or equal to the minimum delay threshold is screened out among the candidate edge computing nodes associated with the second address list, and generate a first prompt message for returning to the user terminal.
[0239] The second prompt unit 136 is used to determine that there is no first transition node matching the capacity condition of the node capacity parameter in the first transition nodes if the first transition node corresponding to the number of idle instances that can run the target cloud game is not screened out in the first transition nodes associated with the third address list, and generate a second prompt information for returning to the user terminal.
[0240] The instance receiving unit 137 is used to receive the number of occupied instances reported in real time by each candidate edge computing node when receiving the number of idle instances reported in real time by each candidate edge computing node.
[0241] The specific implementation of the parameter acquisition unit 131, the first screening unit 132, the second screening unit 133, the third screening unit 134 and the instance receiving unit 137 can be found in the above Figure 3 The description of step S103 in the corresponding embodiment will not be repeated here. Figure 8 The description of step S306 in the corresponding embodiment will not be repeated here.
[0242] The address return module 14 is used to use the Internet Protocol address corresponding to the target edge computing node in the second address list as the target Internet Protocol address, and return the target Internet Protocol address to the user terminal; the target Internet Protocol address is used to instruct the user terminal to connect to the target edge computing node when running the target cloud game.
[0243] The specific implementation of the request acquisition module 11, the list receiving module 12, the node determination module 13 and the address return module 14 can be found in the above Figure 3 In the corresponding embodiment, steps S101 to S104 and the above Figure 8 The description of steps S301 to S308 in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of the same method will not be repeated here either.
[0244] For further information, see Fig.13 , Fig.13 It is a structural diagram of an edge computing node scheduling device provided in an embodiment of the present application. The edge computing node scheduling device 2 may include: a request sending module 21, a network detection module 22, a list sending module 23, and an address receiving module 24;
[0245] A request sending module 21, configured to send a node scheduling request to a cloud server based on a first auxiliary scheduling parameter associated with the target cloud game in response to a trigger operation for the target cloud game, and receive a first address list returned by the cloud server based on the node scheduling request;
[0246] A network detection module 22, configured to perform network quality detection on the candidate edge computing nodes associated with the first address list to obtain network quality evaluation parameters corresponding to the candidate edge computing nodes;
[0247] The candidate edge computing nodes associated with the first address list include candidate edge computing nodes S j , j is less than or equal to the number of candidate edge computing nodes;
[0248] The network detection module 22 includes: a data packet sending unit 221, a data packet receiving unit 222, a delay determination unit 223, an average processing unit 224, and a parameter determination unit 225;
[0249] The data packet sending unit 221 is used to send data packets based on the user terminal and the candidate edge computing node S j The network detection protocol between the candidate edge computing nodes S j P1 request packets for network quality detection, based on candidate edge computing nodes S j The corresponding Internet Protocol address sends P1 request packets to the candidate edge computing node S respectively j , record the P1 first timestamps of sending P1 request packets; P1 is a positive integer;
[0250] The data packet receiving unit 222 is used to receive the candidate edge computing node S j Through the candidate edge computing node S j P2 response data packets returned by the corresponding Internet Protocol address, recording P2 second timestamps of receiving the P2 response data packets; P2 is a non-negative integer less than or equal to P1;
[0251] The delay determination unit 223 is used to determine the P2 first timestamps corresponding to the P2 response data packets from the P1 first timestamps, and obtain the candidate edge computing node S based on the time difference between the P2 first timestamps and the P2 second timestamps. j P2 network delay;
[0252] The average processing unit 224 is used to average the P2 network delays to obtain the candidate edge computing node S j The corresponding average network delay;
[0253] The parameter determination unit 225 is used to determine the candidate edge computing node S according to the average network delay. j Corresponding network quality assessment parameters.
[0254] The specific implementation of the data packet sending unit 221, the data packet receiving unit 222, the delay determination unit 223, the average processing unit 224 and the parameter determination unit 225 can be referred to above. Figure 6 The description of step S202 in the corresponding embodiment will not be repeated here.
[0255] A list sending module 23 is used to determine the first address list carrying the network quality evaluation parameter as the second address list, and send the second address list to the cloud server; the second address list is used to instruct the cloud server to determine the target edge computing node among the candidate edge computing nodes based on the network delay parameter, node capacity parameter, and node cost parameter in the network quality evaluation parameter and the second auxiliary scheduling parameter after obtaining the second auxiliary scheduling parameter associated with the candidate edge computing node;
[0256] The address receiving module 24 is used to receive the target Internet Protocol address of the target edge computing node returned by the cloud server, and connect to the target edge computing node based on the target Internet Protocol address when running the target cloud game.
[0257] The specific implementation of the request sending module 21, the network detection module 22, the list sending module 23 and the address receiving module 24 can be found in the above Figure 6 In the corresponding embodiment, steps S201 to S204 and the above Figure 8 The description of steps S301 to S308 in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of the same method will not be repeated here either.
[0258] For further information, see Fig.14 , Fig.14 Schematic diagram of the structure of a computer device provided in an embodiment of the present application. Fig.14 As shown, the computer device 1000 may include: a processor 1001, a network interface 1004 and a memory 1005. In addition, the above-mentioned computer device 1000 may also include: a user interface 1003, and at least one communication bus 1002. Among them, the communication bus 1002 is used to realize the connection and communication between these components. Among them, the user interface 1003 may include a display screen (Display), a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface. Optionally, the network interface 1004 may include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 may be a high-speed RAM memory, or it may be a non-volatile memory (non-volatile memory), such as at least one disk storage. Optionally, the memory 1005 may also be at least one storage device located away from the aforementioned processor 1001. As Fig.14 As shown, the memory 1005 as a computer-readable storage medium may include an operating system, a network communication module, a user interface module, and a device control application program.
[0259] In such Fig.14In the computer device 1000 shown, the network interface 1004 can provide a network communication function; the user interface 1003 is mainly used to provide an input interface for the user; and the processor 1001 can be used to call the device control application stored in the memory 1005.
[0260] It should be understood that the computer device 1000 described in the embodiment of the present application can execute the above Figure 3 , Figure 6 or Figure 8 The description of the edge computing node scheduling method in the corresponding embodiment can also be performed as described above. Fig.12 or Fig.13 The description of the edge computing node scheduling device in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of adopting the same method will not be repeated here.
[0261] In addition, it should be pointed out here that: the embodiment of the present application also provides a computer-readable storage medium, and the computer-readable storage medium stores the computer program executed by the edge computing node scheduling device 1 and the edge computing node scheduling device 2 mentioned above, and the computer program includes program instructions. When the processor executes the program instructions, it can execute the above Figure 3 , Figure 6 or Figure 8 The description of the edge computing node scheduling method in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of the same method will not be repeated. For technical details not disclosed in the computer-readable storage medium embodiment involved in this application, please refer to the description of the method embodiment of this application.
[0262] In addition, it should be noted that: the embodiment of the present application also provides a computer program product or a computer program, which may include computer instructions, and the computer instructions may be stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor may execute the computer instructions, so that the computer device executes the above Figure 3 , Figure 6 or Figure 8 The description of the edge computing node scheduling method in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of the same method will not be repeated. For technical details not disclosed in the computer program product or computer program embodiment involved in this application, please refer to the description of the method embodiment of this application.
[0263] For further information, see Fig.15 , Fig.15The present application also provides a schematic diagram of the structure of an edge computing node scheduling system. The edge computing node scheduling system 3 may include a cloud server 3a and a user terminal 3b. The cloud server 3a may be the above-mentioned Fig.12 In the corresponding embodiment, the edge computing node scheduling device 1, the user terminal 3b can be the above Fig.13 The edge computing node scheduling device 2 in the corresponding embodiment. In addition, the description of the beneficial effects of the same method will not be repeated. For technical details not disclosed in the video data processing system embodiment involved in this application, please refer to the description of the method embodiment of this application.
[0264] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing related hardware through a computer program, and the computer program can be stored in a computer-readable storage medium, and when the program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, the storage medium can be a disk, an optical disk, a read-only memory (ROM) or a random access memory (RAM), etc.
[0265] The above disclosure is only the preferred embodiment of the present application, which certainly cannot be used to limit the scope of rights of the present application. Therefore, equivalent changes made according to the claims of the present application are still within the scope covered by the present application.
Claims
1. A method for scheduling edge computing nodes, characterized in that: The method is performed by a cloud server and includes: Obtaining a node scheduling request sent by a user terminal for a target cloud game, obtaining a first address list based on a first auxiliary scheduling parameter in the node scheduling request, and returning the first address list to the user terminal; the first auxiliary scheduling parameter includes a terminal location area of the user terminal and an access network of the user terminal; an Internet Protocol address in the first address list is determined by the terminal location area and the access network; Receive a second address list sent by the user terminal; the network quality evaluation parameters in the second address list are obtained by the user terminal after performing network quality detection on the candidate edge computing nodes associated with the first address list; the network quality evaluation parameters include an average network delay; the average network delay is used to characterize the network delay amount of the candidate edge computing node corresponding to each Internet Protocol address in the second address list; Obtaining a network delay parameter, a node capacity parameter, and a node cost parameter associated with the candidate edge computing node; the network delay parameter is used to characterize a minimum delay threshold for running the target cloud game; the node capacity parameter is used to characterize the number of idle instances reported in real time by each of the candidate edge computing nodes; the node cost parameter is used to characterize a user cost amount of each candidate edge computing node; Based on the average network delay in the network quality assessment parameter, among the candidate edge computing nodes associated with the second address list, screen the candidate edge computing nodes whose network delay is less than or equal to the minimum delay threshold, use the screened candidate edge computing nodes as first transition nodes that match the delay condition of the network delay parameter, and generate a third address list based on the Internet Protocol address of the first transition node; In the first transition nodes associated with the third address list, first transition nodes corresponding to the number of idle instances that can run the target cloud game are screened, the screened first transition nodes are used as second transition nodes that match the capacity condition of the node capacity parameter, and a fourth address list is generated based on the Internet Protocol address of the second transition node; Among the second transition nodes associated with the fourth address list, screening the second transition node with the minimum user cost amount, and determining the second transition node with the minimum user cost amount as the target edge computing node that matches the cost condition of the node cost parameter; In the second address list, the Internet Protocol address corresponding to the target edge computing node is used as the target Internet Protocol address, and the target Internet Protocol address is returned to the user terminal; the target Internet Protocol address is used to instruct the user terminal to connect to the target edge computing node when running the target cloud game.
2. The method according to claim 1, characterized in that The obtaining a node scheduling request sent by a user terminal for a target cloud game, obtaining a first address list based on a first auxiliary scheduling parameter in the node scheduling request, and returning the first address list to the user terminal includes: Obtaining a node scheduling request sent by a user terminal for a target cloud game, determining a geographical location area where the user terminal is located based on a first auxiliary scheduling parameter in the node scheduling request, and determining a target operator corresponding to an access network of the user terminal; the terminal location area is an area in the geographical location area; From the M edge computing nodes in the geographical location area, obtain an edge computing node having the same operator as the user terminal in the terminal location area, and use the obtained edge computing node as a candidate edge computing node; M is a positive integer; A first address list corresponding to the node scheduling request is generated according to the Internet Protocol address of the candidate edge computing node, and the first address list is returned to the user terminal.
3. The method according to claim 2, characterized in that The step of acquiring, from the M edge computing nodes in the geographical location area, an edge computing node having the same operator as the user terminal in the terminal location area, and using the acquired edge computing node as a candidate edge computing node includes: Among the N edge computing nodes in the terminal location area, the edge computing node corresponding to the target operator is used as a first candidate edge computing node; N is a positive integer less than M; In the geographic location area, determine a neighboring location area associated with the terminal location area, search for an edge computing node that is the same as the target operator among K edge computing nodes in the neighboring location area, and use the edge computing node found in the neighboring location area as a second candidate edge computing node; K is a positive integer less than M; The first candidate edge computing node and the second candidate edge computing node are used as candidate edge computing nodes.
4. The method according to claim 1, characterized in that: The order of the second transition nodes associated with the fourth address list is determined by an amount of network delay of each second transition node; The step of screening, among the second transition nodes associated with the fourth address list, a second transition node with a minimum user cost, and determining the second transition node with the minimum user cost as a target edge computing node that matches a cost condition of the node cost parameter comprises: Among the second transition nodes associated with the fourth address list, a second transition node with a minimum user cost is screened, and if there are multiple screened second transition nodes, the multiple screened second transition nodes are added to the set of nodes to be processed; A second transition node with a minimum network delay is obtained from the set of nodes to be processed as a target edge computing node that matches a cost condition of the node cost parameter.
5. The method according to claim 1, characterized in that The method further comprises: If, based on the average network delay in the network quality assessment parameter, no candidate edge computing node whose network delay is less than or equal to the minimum delay threshold is screened out from the candidate edge computing nodes associated with the second address list, it is determined that there is no candidate edge computing node among the candidate edge computing nodes that matches the delay condition of the network delay parameter, and a first prompt information is generated for returning to the user terminal.
6. The method according to claim 1, characterized in that The method further comprises: If the first transition node corresponding to the number of idle instances that can run the target cloud game is not screened out among the first transition nodes associated with the third address list, it is determined that there is no first transition node matching the capacity condition of the node capacity parameter among the first transition nodes, and a second prompt information is generated for returning to the user terminal.
7. The method according to claim 1, characterized in that The method further comprises: When receiving the number of idle instances reported in real time by each of the candidate edge computing nodes, receiving the number of occupied instances reported in real time by each of the candidate edge computing nodes.
8. The method according to claim 1, characterized in that The user cost of a candidate edge computing node is determined based on the computer room construction cost of the candidate edge computing node and the number of instances that the candidate edge computing node can carry; wherein the computer room construction cost of a candidate edge computing node is determined by rack cost, electricity cost, server cost, board cost, broadband cost and consumables cost.
9. The method according to claim 1, characterized in that: The first auxiliary scheduling parameter includes historical behavior data of the user terminal within a historical duration; the historical behavior data is used to characterize the operator to which the user terminal is historically connected when running the target cloud game and the historical edge computing node corresponding to the operator connected historically; the historical edge computing node is used to determine the target location area of the user terminal within a target duration; the target duration is the next duration of the historical duration; The edge computing node in the target location area is used to update the Internet Protocol address in the first address list.
10. A method for scheduling edge computing nodes, characterized in that: The method is executed by a user terminal and includes: In response to a trigger operation for a target cloud game, a node scheduling request is sent to a cloud server based on a first auxiliary scheduling parameter associated with the target cloud game, and a first address list returned by the cloud server based on the node scheduling request is received; the candidate edge computing nodes associated with the first address list include candidate edge computing nodes S j , the j is less than or equal to the number of the candidate edge computing nodes; Based on the user terminal and the selected edge computing node S j The network detection protocol between the candidate edge computing nodes S is obtained j P1 request packets for network quality detection, based on the candidate edge computing node S j The corresponding Internet Protocol address sends the P1 request data packets to the candidate edge computing node S respectively. j , record the P1 first timestamps of sending the P1 request data packets; the P1 is a positive integer; Receive the candidate edge computing node S j Through the candidate edge computing node S j P2 response data packets returned by the corresponding Internet Protocol address, recording P2 second timestamps of receiving the P2 response data packets; the P2 is a non-negative integer less than or equal to the P1; Determine the P2 first timestamps corresponding to the P2 response data packets from the P1 first timestamps, and obtain the candidate edge computing node S based on the time difference between the P2 first timestamps and the P2 second timestamps. j P2 network delay; The P2 network delays are averaged to obtain the candidate edge computing node S j The corresponding average network delay; Determine the candidate edge computing node S according to the average network delay j Corresponding network quality assessment parameters; Determine the first address list carrying the network quality evaluation parameter as the second address list, and send the second address list to the cloud server; the second address list is used to instruct the cloud server to determine the target edge computing node among the candidate edge computing nodes based on the network quality evaluation parameter and the network delay parameter, node capacity parameter, and node cost parameter in the second auxiliary scheduling parameter after obtaining the second auxiliary scheduling parameter associated with the candidate edge computing node; Receive a target Internet Protocol address of a target edge computing node returned by the cloud server, and when running the target cloud game, connect to the target edge computing node based on the target Internet Protocol address.
11. An edge computing node scheduling device, characterized in that: The device runs on a cloud server and includes: A request acquisition module, used to acquire a node scheduling request sent by a user terminal for a target cloud game, acquire a first address list based on a first auxiliary scheduling parameter in the node scheduling request, and return the first address list to the user terminal; the first auxiliary scheduling parameter includes a terminal location area of the user terminal and an access network of the user terminal; the Internet Protocol address in the first address list is determined by the terminal location area and the access network; A list receiving module, configured to receive a second address list sent by the user terminal; the network quality evaluation parameters in the second address list are obtained by the user terminal after performing network quality detection on the candidate edge computing nodes associated with the first address list; the network quality evaluation parameters include an average network delay; the average network delay is used to characterize the network delay amount of the candidate edge computing node corresponding to each Internet Protocol address in the second address list; A node determination module, used to obtain a network delay parameter, a node capacity parameter and a node cost parameter associated with the candidate edge computing node; the network delay parameter is used to characterize a minimum delay threshold for running the target cloud game; the node capacity parameter is used to characterize the number of idle instances reported in real time by each of the candidate edge computing nodes; the node cost parameter is used to characterize the user cost of each candidate edge computing node; The node determination module is further configured to screen, from among the candidate edge computing nodes associated with the second address list, candidate edge computing nodes whose network delay is less than or equal to the minimum delay threshold based on the average network delay in the network quality assessment parameter, use the screened candidate edge computing nodes as first transition nodes that match the delay condition of the network delay parameter, and generate a third address list based on the Internet Protocol address of the first transition node; The node determination module is further configured to screen, from among the first transition nodes associated with the third address list, first transition nodes corresponding to the number of idle instances that can run the target cloud game, use the screened first transition nodes as second transition nodes that match the capacity condition of the node capacity parameter, and generate a fourth address list based on the Internet Protocol address of the second transition node; The node determination module is further configured to screen a second transition node with a minimum user cost amount among the second transition nodes associated with the fourth address list, and determine the second transition node with the minimum user cost amount as a target edge computing node that matches a cost condition of the node cost parameter; An address returning module is used to use the Internet Protocol address corresponding to the target edge computing node as the target Internet Protocol address in the second address list, and return the target Internet Protocol address to the user terminal; the target Internet Protocol address is used to instruct the user terminal to connect to the target edge computing node when running the target cloud game.
12. An edge computing node scheduling device, characterized in that: The device runs on a user terminal and includes: a request sending module, configured to send a node scheduling request to a cloud server based on a first auxiliary scheduling parameter associated with the target cloud game in response to a trigger operation for the target cloud game, and receive a first address list returned by the cloud server based on the node scheduling request; the candidate edge computing nodes associated with the first address list include candidate edge computing nodes S j , the j is less than or equal to the number of the candidate edge computing nodes; A network detection module is used to detect the edge computing node S based on the user terminal and the selected edge computing node S. j The network detection protocol between the candidate edge computing nodes S is obtained j P1 request packets for network quality detection, based on the candidate edge computing node S j The corresponding Internet Protocol address sends the P1 request data packets to the candidate edge computing node S respectively. j , record the P1 first timestamps of sending the P1 request data packets; the P1 is a positive integer; The network detection module is also used to receive the candidate edge computing node S j Through the candidate edge computing node S j P2 response data packets returned by the corresponding Internet Protocol address, recording P2 second timestamps of receiving the P2 response data packets; the P2 is a non-negative integer less than or equal to the P1; The network detection module is further used to determine the P2 first timestamps corresponding to the P2 response data packets from the P1 first timestamps, and obtain the candidate edge computing node S based on the time difference between the P2 first timestamps and the P2 second timestamps. j P2 network delay; The network detection module is also used to average the P2 network delays to obtain the candidate edge computing node S j The corresponding average network delay; The network detection module is further used to determine the candidate edge computing node S according to the average network delay. j Corresponding network quality assessment parameters; a list sending module, configured to determine the first address list carrying the network quality evaluation parameter as the second address list, and send the second address list to the cloud server; the second address list is used to instruct the cloud server to determine the target edge computing node among the candidate edge computing nodes based on the network quality evaluation parameter and the network delay parameter, node capacity parameter, and node cost parameter in the second auxiliary scheduling parameter after acquiring the second auxiliary scheduling parameter associated with the candidate edge computing node; The address receiving module is used to receive the target Internet Protocol address of the target edge computing node returned by the cloud server, and connect to the target edge computing node based on the target Internet Protocol address when running the target cloud game.
13. A computer device, characterized in that: include: Processor and memory; The processor is connected to a memory, wherein the memory is used to store a computer program, and the processor is used to call the computer program so that the computer device executes the method according to any one of claims 1 to 10.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, which is suitable for being loaded and executed by a processor, so that a computer device having the processor executes the method according to any one of claims 1 to 10.
15. A computer program product, characterized in that The computer program product comprises computer instructions, which are stored in a computer-readable storage medium. The computer instructions are suitable for being read and executed by a processor, so that a computer device having the processor executes the method according to any one of claims 1 to 10.
Citation Information
Patent Citations
Position-based edge cloud resource scheduling method and system
CN110266744A
Edge node allocation method and device, scheduling server and storage medium
CN110336885A