Request scheduling method and related system
By carrying the edge acceleration end identification of terminal attribution in service requests, accurate matching and scheduling is achieved, and the problem of difficulty in providing a low-latency access experience in the prior art is solved, and efficient and high-speed edge computing services are achieved.
Patent Information
- Application Number
- CN202311723686.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-09-25
- Filing Date
- 2023-12-14
- Publication Date
- 2025-03-25
AI Technical Summary
The prior art is difficult to provide a low-latency access experience stably when scheduling service requests, especially in identifying and matching the network location of the end user.
By carrying the identification of the edge acceleration end at the terminal's home in the service request, accurate matching is achieved, and service requests are scheduled to the edge computing service closest to the terminal, providing low-latency and high-speed data transmission.
It enables end users to access the nearest edge computing service to provide ultra-low latency and ultra-high rate access experience to meet business needs.
Smart Images

Figure CN119696945A_ABST
Abstract
Description
[0001] This application claims the priority of the Chinese patent application filed with the State Intellectual Property Office on September 25, 2023, with application number 202311243751.1 and invention name “A request scheduling method and related system”, the entire contents of which are incorporated by reference in this application. Technical Field
[0002] The present application relates to the field of computer technology, and in particular to a request scheduling method, a scheduling system, a computing device cluster, a computer-readable storage medium, and a computer program product. Background Art
[0003] With the continuous development of optical access technology, broadband access networks have entered the era of all-optical access networks. Network operators have gradually shifted from pursuing high-speed networks to pursuing high-quality networks. Traditional broadband access networks cannot actively and intelligently analyze network quality, and cannot identify users with poor quality, and cannot provide high-quality (such as high reliability, low latency, etc.) broadband access networks to users in need. How to provide high-quality broadband access networks to users in need has become the core demand of network operators in the field of broadband access.
[0004] In order to meet the above requirements, major operators have successively deployed intelligent edge computing platforms based on access network optical line terminals (OLTs), aiming to provide edge intelligent services nearby on a distributed open platform that integrates network, computing, storage, and application core capabilities, close to the network edge of objects or data sources, to meet the key needs of industry digitalization in terms of agile connection, real-time business, data optimization, application intelligence, security and privacy protection, etc.
[0005] By sinking cloud services to the edge computing platform within the access network, the distance between cloud services and users will be greatly shortened, which can effectively improve the user's access experience. However, when scheduling business requests, the relevant technology mainly randomly schedules business requests to various edge computing nodes under the same province and the same operator, which makes it difficult to provide a stable low-latency access experience. Summary of the invention
[0006] The present application provides a request scheduling method, which carries the identifier of the edge acceleration terminal to which the terminal belongs in the service request, and can achieve accurate matching based on the identifier. Based on the matching result, the terminal user can access the edge computing service deployed on the network device closest to him, thereby providing a stable low-latency access experience, and the method can access the nearest edge computing service through the intranet to achieve ultra-high-speed data transmission. The present application also provides a scheduling system, a computing device cluster, a computer-readable storage medium, and a computer program product corresponding to the above method.
[0007] In the first aspect, the present application provides a request scheduling method. The method can be performed by a scheduling system. The scheduling system is connected to an access network, and the access network includes at least one edge acceleration terminal, such as an edge computing node that is sunk to an optical line terminal (Optical Line Terminal, OLT), and the scheduling system is used to schedule service requests to the edge acceleration terminal for access acceleration. The scheduling system can be a software system, which can be deployed in a computing device cluster, and the computing device cluster executes the program code of the software system to execute the request scheduling method of the present application. In some examples, the scheduling system can also be a hardware system, which can be a computing device cluster with a request scheduling function. When the scheduling system is running, the request scheduling method of the present application is executed.
[0008] Specifically, the scheduling system may receive a service request sent by a terminal, the service request carries the identifier of the edge acceleration terminal to which the terminal belongs, and then the scheduling system queries the target edge acceleration terminal according to the identifier of the request content of the service request, wherein the target edge acceleration terminal stores the request content. When the identifier of the edge acceleration terminal to which the terminal belongs matches the identifier of the target edge acceleration terminal, the scheduling system schedules the service request to the edge acceleration terminal to which the terminal belongs.
[0009] This method carries the identifier of the edge acceleration terminal to which the terminal belongs in the service request, and can achieve accurate matching based on the identifier. Based on the matching result, the terminal user can access the edge computing service (such as the edge acceleration terminal) deployed on the network device (such as the access device) closest to him, achieving ultra-low latency. In addition, this method can access the nearest edge computing service through the intranet, achieving an ultra-high-speed transmission experience.
[0010] In some possible implementations, the scheduling system may query the device content mapping information according to the identifier of the request content of the service request to obtain the target edge acceleration end. The identifier of the request content (such as a resource identifier) may include an index of the request content, including but not limited to a uniform resource locator (URL) and a hash index of the request content. The device content mapping information includes a mapping relationship between the identifier of the edge acceleration end and the identifier of the cached content of the edge acceleration end.
[0011] By maintaining device content mapping information, the method can quickly query the edge acceleration end storing the requested content, thereby speeding up the request scheduling rate and improving the request scheduling efficiency.
[0012] In some possible implementations, the scheduling system may also detect the health status of at least one edge acceleration terminal. The scheduling system may push content to an edge acceleration terminal whose health status is normal. When the edge acceleration terminal successfully caches the content, the scheduling system updates the device content mapping information. Specifically, the scheduling system may add a mapping relationship between the identifier of the successfully cached content and the identifier of the edge acceleration terminal in the device content mapping information. Taking the device content mapping information as an example of a device content index mapping table, the device content index mapping table may store the mapping relationship between the identifier of the edge acceleration terminal and the identifier of the cached content of the edge acceleration terminal in the form of a key value (KV) pair, wherein the key may be a resource identifier, specifically an identifier of the cached content of the edge acceleration terminal, such as a URL, and the value may be an identifier of the edge acceleration terminal.
[0013] In this method, the scheduling system pushes content, such as popular content on the Internet, to an edge acceleration end in a normal health state, and updates device content mapping information, so that when a terminal accesses the content, access acceleration can be performed based on the edge acceleration end in a normal health state.
[0014] In some possible implementations, the scheduling system may also receive an intranet service status reported by at least one edge accelerator, and receive a public network address reported by at least one edge accelerator, and detect the public network service status of at least one edge accelerator according to the public network address. The scheduling system may determine the health status of at least one edge accelerator according to the public network service status and the intranet service status. When both the public network service status and the intranet service status are normal, the scheduling system may determine that the health status of the edge accelerator is normal.
[0015] In this method, the scheduling system can perform request scheduling based on the public network service status and intranet service status of the edge acceleration end. For example, the scheduling system can schedule the business request to the edge acceleration end where the intranet service status is normal and the requested content is stored, thereby realizing the transmission (such as downloading) of the requested content through the intranet. The transmission speed is not limited by the metropolitan area network, which is of great significance for edge computing applications with low latency and high speed.
[0016] In some possible implementations, the scheduling system schedules the service request to the edge acceleration end to which the terminal belongs. The scheduling system may return the intranet address of the edge acceleration end to which the terminal belongs to redirect the service request to the intranet address of the edge acceleration end to which the terminal belongs.
[0017] In this way, the requested content can be transmitted through the intranet, providing users with a high-speed access experience.
[0018] In some possible implementations, the identifier of the edge acceleration end to which the terminal belongs is detected by the terminal through the detection interface provided by the edge acceleration end to the terminal. Different from the matching and request scheduling based on the Internet Protocol address, this method can detect the edge acceleration end to which the terminal belongs through the detection interface provided by the edge acceleration end to the terminal, thereby providing a proximity matching scheduling technology based on the real network location perception of the terminal and the edge acceleration end, realizing accurate access matching between the terminal and the edge acceleration end in the access network (such as an optical line terminal), and realizing ultra-low latency and ultra-high rate edge computing.
[0019] In some possible implementations, when the identifier of the edge acceleration end to which the terminal belongs fails to match the identifier of the target edge acceleration end, the scheduling system can randomly schedule the service request to one or more edge acceleration ends among the target edge acceleration ends, so as to achieve load balancing of different edge acceleration ends.
[0020] In some possible implementations, the scheduling system may randomly select one or more edge acceleration terminals from the target edge acceleration terminals, and return the public network addresses of the selected one or more edge acceleration terminals to redirect the service request to the public network addresses of the selected one or more edge acceleration terminals. Accordingly, the terminal and the edge acceleration terminal may transmit data through the public network.
[0021] This method ensures the overall access experience by scheduling service requests to other edge acceleration ends when the edge acceleration end to which the terminal belongs is unavailable or does not cache the requested content.
[0022] In a second aspect, the present application provides a scheduling system. The scheduling system is connected to an access network, the access network includes at least one edge acceleration terminal, the scheduling system is used to schedule service requests to the edge acceleration terminal for access acceleration, and the system includes:
[0023] A communication module, configured to receive the service request sent by the terminal, wherein the service request carries an identifier of the edge acceleration terminal to which the terminal belongs;
[0024] A query module, configured to query a target edge acceleration end according to an identifier of a request content of the service request, wherein the target edge acceleration end stores the request content;
[0025] The scheduling module is used to schedule the service request to the edge acceleration end to which the terminal belongs when the identifier of the edge acceleration end to which the terminal belongs matches the identifier of the target edge acceleration end successfully.
[0026] In some possible implementations, the query module is specifically used to:
[0027] According to the identifier of the request content of the service request, device content mapping information is queried to obtain a target edge acceleration end, wherein the device content mapping information includes a mapping relationship between the identifier of the edge acceleration end and the identifier of the cached content of the edge acceleration end.
[0028] In some possible implementations, the system further includes:
[0029] A status detection module, used to detect the health status of at least one edge acceleration end;
[0030] A content management module, used to push content to the edge acceleration end whose health status is normal;
[0031] The mapping management module is used to update the device content mapping information when the edge acceleration end successfully caches the content.
[0032] In some possible implementations, the status detection module is specifically used to:
[0033] receiving an intranet service status reported by the at least one edge accelerator, and receiving a public network address reported by the at least one edge accelerator, and detecting the public network service status of the at least one edge accelerator according to the public network address;
[0034] Determine a health status of the at least one edge acceleration terminal according to the public network service status and the intranet service status.
[0035] In some possible implementations, the scheduling module is specifically used to:
[0036] The intranet address of the edge acceleration terminal to which the terminal belongs is returned to redirect the service request to the intranet address of the edge acceleration terminal to which the terminal belongs.
[0037] In some possible implementations, the identifier of the edge acceleration terminal to which the terminal belongs is detected by the terminal through a detection interface provided by the edge acceleration terminal to the terminal.
[0038] In some possible implementations, the scheduling module is further configured to:
[0039] When the identifier of the edge acceleration end to which the terminal belongs fails to match the identifier of the target edge acceleration end, the service request is randomly dispatched to one or more edge acceleration ends among the target edge acceleration ends.
[0040] In some possible implementations, the scheduling module is specifically used to:
[0041] One or more edge acceleration ends are randomly selected from the target edge acceleration end, and the public network addresses of the selected one or more edge acceleration ends are returned to redirect the service request to the public network addresses of the selected one or more edge acceleration ends.
[0042] In a third aspect, the present application provides a computing device cluster. The computing device cluster includes at least one computing device, and the at least one computing device includes at least one processor and at least one memory. The at least one processor and the at least one memory communicate with each other. The at least one processor is used to execute instructions stored in the at least one memory, so that the computing device or the computing device cluster executes the request scheduling method described in the first aspect or any implementation of the first aspect.
[0043] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores instructions, wherein the instructions instruct a computing device or a computing device cluster to execute the request scheduling method described in the first aspect or any one of the implementations of the first aspect.
[0044] In a fifth aspect, the present application provides a computer program product comprising instructions, which, when executed on a computing device or a computing device cluster, enables the computing device or the computing device cluster to execute the request scheduling method described in the first aspect or any one of the implementations of the first aspect.
[0045] Based on the implementations provided in the above aspects, this application can also be further combined to provide more implementations. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] In order to more clearly illustrate the technical method of the embodiments of the present application, the drawings required for use in the embodiments are briefly introduced below.
[0047] Figure 1 A flowchart of network access provided by an access network for this application;
[0048] Figure 2 A schematic diagram of a service request scheduling provided for this application;
[0049] Figure 3 A schematic diagram of the architecture of a scheduling system provided for this application;
[0050] Figure 4 A flowchart of a request scheduling method provided for this application;
[0051] Figure 5 A flow chart of an edge acceleration terminal for detecting terminal ownership provided by the present application;
[0052] Figure 6A flow chart for detecting the health status of an edge acceleration terminal provided in this application;
[0053] Figure 7 A schematic diagram of the structure of a computing device provided for this application;
[0054] Figure 8 A schematic diagram of the structure of a computing device cluster provided for this application;
[0055] Fig. 9 A schematic diagram of the structure of another computing device cluster provided for this application;
[0056] Fig.10 A schematic diagram of the structure of another computing device cluster provided in this application. DETAILED DESCRIPTION
[0057] The terms "first" and "second" in the embodiments of the present application are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features.
[0058] First, some technical terms involved in the embodiments of the present application are introduced.
[0059] The access network (AN) is a system consisting of a series of transmission entities (line facilities and transmission facilities) between the service node interface (SNI) and the user network interface (UNI) to provide the required carrying capacity for telecommunications services. Figure 1 As shown, the access network is usually located between the user network (such as a home network) and the aggregation layer and core layer of the metropolitan area network, providing access services from the user side to the network side to achieve access to the data center.
[0060] Access networks can be divided into broadband access networks and narrowband access networks according to their speed. Among them, the speed of broadband access networks usually exceeds 1 megabit per second (Mbps). Figure 1As shown, broadband access networks can also be divided into different types according to the transmission medium. Broadband access networks can include copper access networks, hybrid fiber coaxial networks (Hybrid Fiber Coaxial, HFC), and optical access networks (also called fiber access networks, optical access networks). Among them, copper access networks can use digital subscriber lines (Digital Subscriber Line, DSL) to transmit data through twisted pairs, HFC can use cable modems (Cable Modem, CM) to transmit data through coaxial cables, and optical access networks can use optical network terminals (Optical Network Terminal, ONT) to transmit data through optical fibers. ONT, commonly known as optical modem, is a device in the access network that provides network for home users. It can provide services such as high-speed Internet access, Internet Protocol TV (Internet Protocol TV, IPTV), voice, and wireless network (Wi-Fi).
[0061] In actual network construction, an area can be divided into multiple grids according to streets and users. One grid corresponds to an access unit, which is covered by a central office (CO). The above optical fiber, twisted pair or coaxial cable is connected to the household cable junction box in the access network, and then connected to the central office CO. The central office CO includes a distribution frame, equipment cables and access equipment, wherein the access equipment may include a Multi-Service Access Network (MSAN) or an Optical Line Terminal (OLT). Among them, OLT is the core equipment for realizing optical fiber transmission services in the optical fiber transmission system, which can convert the optical fiber signal used by the user into an electrical signal and transmit it to the core network, or convert the electrical signal in the core network into an optical signal for transmission.
[0062] As broadband access networks develop towards all-optical access networks, more and more operators choose to deploy intelligent edge computing platforms in access networks, thereby integrating distributed open platforms with core network, computing, storage, and application capabilities at the edge of the network to provide edge intelligent services nearby, thereby meeting key requirements in agile connectivity, real-time services, data optimization, application intelligence, security, and privacy protection.
[0063] For example, content delivery network (CDN) operators can deploy CDN edge nodes (CDN nodes for short) in access networks. Taking the example of an all-optical access network, CDN operators can build-in CDN boards or CDN edge servers (such as blade servers) in the OLT. In this way, cloud services can be sunk to the edge computing platform within the access network, greatly shortening the distance between cloud services and end users, and effectively improving the access experience of end users. It is also becoming increasingly important to more accurately perceive the network location of end users and dispatch service requests to the sinking service nodes closest to the users (for example, service nodes of the edge computing platform sunk to the access network).
[0064] Currently, the industry matches geographic locations based on the client Internet Protocol address (IP address) and the edge computing node IP. However, the IP-based matching results can usually only accurately identify the province and operator to which the IP belongs. Accordingly, when scheduling service requests, service requests are usually randomly scheduled to edge computing nodes in the same province and under the same operator, making it difficult to use the edge computing node closest to the terminal for service. Figure 2 For example, the OLT closest to personal computer (PC) A is the left OLT. There are many OLTs, and the probability that PC A's service request is randomly scheduled to the left OLT is small. It is more likely to be scheduled to the Internet Data Center (IDC) room farther away from PC A or the OLT on the right, resulting in a longer delay.
[0065] Since the above solution cannot accurately identify the network location of the terminal and edge computing nodes, it cannot accurately match them, which leads to the inability to stably provide the best low-latency access experience.
[0066] In view of this, the present application provides a request scheduling method. The method can be performed by a scheduling system. The scheduling system is connected to the access network, and the access network includes at least one edge acceleration terminal (for example, the edge computing node sunk to the OLT as mentioned above), and the scheduling system is used to schedule service requests to the edge acceleration terminal for access acceleration. The scheduling system can be a software system, which can be deployed in a computing device cluster, and the computing device cluster executes the program code of the software system to execute the request scheduling method of the present application. In some examples, the scheduling system can also be a hardware system, which can be a computing device cluster with a request scheduling function. When the scheduling system is running, the request scheduling method of the present application is executed.
[0067] Specifically, the scheduling system may receive a service request sent by a terminal, the service request carries the identifier of the edge acceleration terminal to which the terminal belongs, and then the scheduling system queries the target edge acceleration terminal according to the identifier of the request content of the service request, wherein the target edge acceleration terminal stores the request content. When the identifier of the edge acceleration terminal to which the terminal belongs matches the identifier of the target edge acceleration terminal, the scheduling system schedules the service request to the edge acceleration terminal to which the terminal belongs.
[0068] This method carries the identifier of the edge acceleration terminal to which the terminal belongs in the service request, and can achieve accurate matching based on the identifier. Based on the matching result, the terminal user can access the edge computing service (such as the edge acceleration terminal) deployed on the network device (such as the access device) closest to him, achieving ultra-low latency. In addition, this method supports access to the nearest edge computing service through the intranet, achieving ultra-high-speed transmission (such as ultra-high-speed download) experience.
[0069] In order to make the technical solution of the present application clearer and easier to understand, the system architecture of the scheduling system is first introduced below.
[0070] See also Figure 3 The schematic diagram of the architecture of a scheduling system is shown in the figure. The scheduling system 30 is connected to the access network 20. The access network 20 includes at least one edge accelerator. The edge accelerator can be an edge computing node deployed in the access device, which can provide edge computing services to the user terminal nearby in the access network. The access device is a device that provides access services for the application (APP) deployed on the terminal, including but not limited to OLT, MSAN, Figure 3 The following uses OLT as an example.
[0071] like Figure 3 As shown, the scheduling system 30 may include a communication module 302, a query module 304, and a scheduling module 306. The communication module 302 is used to receive a service request sent by a terminal, and the service request carries an identifier of an edge acceleration terminal to which the terminal belongs. The query module 304 is used to query a target edge acceleration terminal according to an identifier of a request content of the service request, wherein the target edge acceleration terminal stores the request content. The scheduling module 306 is used to schedule the service request to the edge acceleration terminal to which the terminal belongs when the identifier of the edge acceleration terminal to which the terminal belongs matches the identifier of the target edge acceleration terminal.
[0072] The above-mentioned service request may be a service request of an application deployed on the terminal. Specifically, the application may integrate a terminal software development kit (SDK), which is responsible for detecting the nearest edge acceleration end to which it belongs. Among them, when the terminal accesses the network, the terminal SDK may periodically detect the identifier of the edge acceleration end on the OLT in its access network through a detection interface (fixed interface). The detection interface may be an internal detection interface provided by the edge acceleration end to the terminal SDK. The terminal SDK may send a detection request through the detection interface. When the edge acceleration end receives the detection request from the terminal SDK, it may carry its own identifier in the detection response to inform the terminal SDK. If the terminal SDK integrated with the application successfully detects the identifier, the identifier of the edge acceleration end to which the terminal belongs may be carried in the service request.
[0073] The edge accelerator can also exchange control information with the scheduling system 30 so that the scheduling system 30 can maintain the edge accelerator information in the area, such as maintaining the terminals belonging to the edge accelerator, and then dispatching the service requests of the terminals to the nearest edge accelerator for service.
[0074] It should be noted that Figure 3 This is only a schematic division method of the scheduling system 30. In other possible implementation methods of the embodiment of the present application, the scheduling system 30 may include other functional modules for implementing the request scheduling method of the present application.
[0075] Based on the aforementioned scheduling system 30, the present application further provides a request scheduling method. The scheduling method of the present application is introduced below in conjunction with an embodiment.
[0076] See also Figure 4 A flowchart of a request scheduling method is shown, the method comprising the following steps:
[0077] S402: The scheduling system 30 receives a service request sent by a terminal.
[0078] The service request carries the identifier of the edge acceleration end to which the terminal belongs. The identifier of the edge acceleration end to which the terminal belongs is detected by the terminal through the detection interface provided by the edge acceleration end to the terminal. When the terminal accesses the network, it can detect the identifier of the edge acceleration end to which the terminal belongs through the detection interface. When the detection is successful, the application on the terminal can carry the identifier of the edge acceleration end to which the terminal belongs in the service request when triggering the service request (also called the service content request). Among them, the identifier of the edge acceleration end is unique, for example, it can be the device identifier of the device (such as OLT) where the edge acceleration end is located.
[0079] S404: The scheduling system 30 queries the target edge acceleration end according to the identifier of the request content of the service request.
[0080] The target edge acceleration end stores the request content of the service request. The scheduling system 30 can query the target edge acceleration end according to the identifier of the request content of the service request, such as the index of the request content, and the index of the cache content of at least one edge acceleration end. The target edge acceleration end may include one or more edge acceleration ends.
[0081] Considering the query efficiency, the scheduling system 30 can maintain device content mapping information, wherein the device content mapping information includes a mapping relationship between the identifier of the edge acceleration end and the identifier of the cache content of the edge acceleration end. For example, the device content mapping information can be a device content index mapping table. Accordingly, the scheduling system 30 can query the device content mapping information according to the identifier of the request content of the service request to obtain the target edge acceleration end.
[0082] Furthermore, the target edge acceleration end may be an edge acceleration end that stores the request content of the business request and is in a normal health state. The scheduling system 30 may also detect the health state of at least one edge acceleration end, and then the scheduling system 30 pushes content (such as hot content or popular content) to the edge acceleration end that is in a normal health state. When the edge acceleration end successfully caches the content, the scheduling system updates the device content mapping information. In this way, the scheduling system 30 queries the device content mapping information according to the identifier of the request content, and may obtain an edge acceleration end that stores the business request content and is in a normal health state. For example, the scheduling system 30 may obtain a list of available edge acceleration ends by querying the above-mentioned device content mapping information, and the identifiers of the available edge acceleration ends are recorded in the list.
[0083] S406: The scheduling system 30 determines whether the identifier of the edge acceleration terminal to which the terminal belongs matches the identifier of the target edge acceleration terminal. If yes, execute S408; if not, execute S410 and S412.
[0084] Specifically, the scheduling system 30 can compare the identifier of the edge acceleration end to which the terminal belongs and the identifier of the target edge acceleration end. Among them, the identifiers of the target edge acceleration end can form a set. When the identifier of the edge acceleration end to which the terminal belongs hits in the set of identifiers of the target edge acceleration end, it means that the identifier of the edge acceleration end to which the terminal belongs and the identifier of the target edge acceleration end match successfully, and S408 can be executed to schedule the service request to the edge acceleration end to which the terminal belongs (for example, the edge acceleration end closest to the user in the access network). When the identifier of the edge acceleration end to which the terminal belongs does not hit in the identifier set of the target edge acceleration end, that is, the identifier of the edge acceleration end to which the terminal belongs and the identifier of the target edge acceleration end do not match successfully, the service request can be randomly scheduled to one or more edge acceleration ends in the target edge acceleration end.
[0085] S408: The scheduling system 30 returns the intranet address of the edge acceleration terminal to which the terminal belongs, so as to redirect the service request to the intranet address of the edge acceleration terminal to which the terminal belongs.
[0086] The edge acceleration end can include an intranet address and a public network address. Among them, the intranet address can also be called a private network address, which is usually an IP address used within a local area network, and therefore, is also called a local area network IP address. The public network address is also called a globally unique IP address, which refers to an IP address that can be directly accessed on the Internet. The public network address is allocated by the Internet registration agency, has global uniqueness and global accessibility, and can be used to directly access other devices on the Internet and communicate and transmit data through the Internet.
[0087] The scheduling system 30 can redirect the service request to the intranet address of the edge acceleration end to which the terminal belongs by returning a redirection instruction to the terminal, the redirection instruction including the redirection address, and the redirection address including the intranet address of the edge acceleration end to which the terminal belongs. In this way, the terminal can access the edge acceleration end to which the terminal belongs to obtain the request content according to the intranet address of the edge acceleration end to which the terminal belongs. The delay between the terminal and the edge computing end can be greatly reduced (the traditional access delay is generally greater than 20 milliseconds, and the request scheduling method of the present application can reduce the access delay to less than 2 milliseconds), and the terminal and the edge computing end to which the terminal belongs transmit data through the intranet, and the transmission speed is not limited by the metropolitan area network, which is of great significance for edge computing applications with low latency and high speed, such as ultra-high-definition live broadcast, virtual reality (VR), etc., which can promote the development of related industries.
[0088] The above S408 is an illustrative implementation method of the scheduling system 30 in the embodiment of the present application scheduling the service request to the edge acceleration end to which the terminal belongs. In other possible implementation methods of the embodiment of the present application, the scheduling system 30 may also schedule the service request to the edge acceleration end to which the terminal belongs in other ways. For example, the scheduling system 30 may also modify the destination address of the service request and then forward the service request to the edge acceleration end to which the terminal belongs.
[0089] S410: The scheduling system 30 randomly selects one or more edge acceleration ends from the target edge acceleration ends.
[0090] The identifier of the edge acceleration end to which the terminal belongs fails to match the identifier of the target edge acceleration end, indicating that the target edge acceleration end does not include the edge acceleration end to which the terminal belongs. For example, the edge acceleration end to which the terminal belongs does not cache the requested content (or the edge acceleration end to which the terminal belongs is unavailable). Accordingly, the scheduling system 30 can randomly select one or more edge acceleration ends from the target edge acceleration end for scheduling the service request.
[0091] S412: The scheduling system 30 returns the public network addresses of the selected one or more edge acceleration terminals to redirect the service request to the public network addresses of the selected one or more edge acceleration terminals.
[0092] The scheduling system 30 may redirect the service request to the public network addresses of the selected one or more edge acceleration terminals by returning a redirection instruction to the terminal, the redirection instruction including the redirection address, and the redirection address may include the public network addresses of the selected one or more edge acceleration terminals. In this way, the terminal may access the selected edge acceleration terminal to obtain the request content according to the public network addresses of the selected one or more edge acceleration terminals.
[0093] Wherein, when the selected edge acceleration end is not the edge acceleration end to which the terminal belongs, the terminal can transmit through a cross-Broadband Remote Access Server (BRAS) metropolitan area network.
[0094] Similar to S408, S410 and S412 are schematic implementation methods of the scheduling system 30 in the embodiment of the present application randomly scheduling the service request to one or more edge acceleration ends in the target edge acceleration end. In other possible implementation methods of the embodiment of the present application, the scheduling system 30 may also randomly schedule the service request to one or more edge acceleration ends in the target edge acceleration end in other ways.
[0095] It should be noted that the above S406 is an optional step of the embodiment of the present application, and the request scheduling method of the embodiment of the present application may not execute S406. For example, the scheduling system 30 may schedule the service request to the edge acceleration end to which the terminal belongs. If the identifier of the edge acceleration end to which the terminal belongs does not match the identifier of the target edge acceleration end, the service request may be scheduled to one or more edge acceleration ends in the target edge acceleration end. Furthermore, the above S410 and S412 are optional steps of the embodiment of the present application, and the request scheduling method of the present application may not execute S410 and S412.
[0096] Based on the above description, the request scheduling method provided in this application realizes accurate access matching between the terminal and the edge acceleration end in the access device (such as OLT) through the proximity matching scheduling technology based on the real network location perception of the terminal and the edge acceleration end, thereby realizing ultra-low latency and ultra-high-speed edge computing, which can meet business needs.
[0097] Figure 4 The illustrated embodiment describes the service request scheduling process in detail. The following describes in detail the process in which the terminal side (such as an application or a terminal SDK integrated with the application) detects the edge acceleration end to which the terminal belongs and the scheduling system 30 detects the health status of the edge acceleration end.
[0098] First, see Figure 5 The flowchart of an edge acceleration end for detecting a terminal to which a terminal belongs specifically includes the following steps:
[0099] S502: The terminal sends an intranet detection domain name resolution request to a local domain name resolution server.
[0100] The local domain name resolution server refers to a server that deploys the domain name system (DNS) locally in the access network, which is used to provide domain name resolution services for terminals connected to the access network. After accessing the fixed network, the terminal can start a scheduled task to detect whether there is an available edge acceleration terminal in the access network. Among them, the terminal (or the APP deployed on the terminal) can resolve the IP address corresponding to the detection domain name through the domain name resolution service, and the IP address includes the intranet IP address (also called the intranet address).
[0101] S504: The local domain name resolution server returns the intranet address to the terminal.
[0102] The intranet address returned by the local domain name resolution server may be a pre-configured, fixed intranet address. For example, the intranet address may be 172.18.18.18. The intranet address may be configured for monitoring by edge acceleration terminals in all OLTs, and the intranet address may be used to provide intranet services.
[0103] It should be noted that the above S502 and S504 are optional steps of the embodiment of the present application, and the method of the embodiment of the present application may not be performed. For example, when the terminal stores or caches an intranet address, the above domain name resolution process may not be performed.
[0104] S506: The terminal initiates a detection request to the edge acceleration end based on the detection interface provided by the edge acceleration end.
[0105] Specifically, the terminal can initiate a detection request to the edge acceleration end by calling the detection interface provided by the edge acceleration end. The detection interface may include a path. For example, the detection interface may include edge.cdn.dialtest.com / healthcheck / olt. The domain name in the path can be resolved to the above-mentioned intranet address. Alternatively, the terminal can also directly initiate a detection request to the edge acceleration end based on the above-mentioned intranet address.
[0106] S508: The terminal receives a detection response returned by the edge acceleration end.
[0107] If there is an edge acceleration terminal that belongs to and is available in the access network corresponding to the terminal, the terminal can receive a detection response including the identifier of the edge acceleration terminal. The identifier of the edge acceleration terminal is globally unique and can usually be allocated when the edge acceleration terminal or the OLT where the edge acceleration terminal is located is deployed online.
[0108] S510: The terminal saves the identifier of the edge acceleration terminal to which the terminal belongs.
[0109] The terminal may save the identifier of the edge acceleration terminal to which the terminal belongs, so that the application on the terminal can use it when triggering a service request later.
[0110] In some possible implementations, when the detection response indicates that the detection fails, for example, the attributed edge acceleration end does not exist or is unavailable, the terminal may also clear the identifier of the edge acceleration end to which the terminal belongs.
[0111] It should be noted that the process of detecting the edge acceleration end to which the terminal belongs can be performed periodically. For example, a scheduled task can be set to regularly perform the process of detecting the edge acceleration end to which the terminal belongs, thereby ensuring that the scheduling system 30 can schedule service requests based on accurate device content mapping information.
[0112] Secondly, see Figure 6 The flowchart of detecting the health status of the edge acceleration end shown in the figure specifically includes the following steps:
[0113] S602: The edge acceleration terminal monitors the configured public network address and intranet address.
[0114] S604 : The edge acceleration terminal reports device status information to the scheduling system 30 .
[0115] The device status information includes a public network address, which is used to detect the public network service status. The device status information may also include an intranet address or an intranet service status. Furthermore, the device status information may also include a device identifier, such as an identifier of an edge acceleration terminal.
[0116] The edge accelerator can report the device status information to the scheduling system 30 through a heartbeat message. The heartbeat message can usually be timed, in other words, the edge accelerator can report the device status information to the scheduling system 30 at a regular time.
[0117] S605: The scheduling system 30 returns the reporting result to the edge acceleration end.
[0118] Specifically, the scheduling system 30 may return the reporting result to the edge acceleration end by means of a heartbeat message (such as a heartbeat response message). The reporting result may be a successful report.
[0119] S606. The scheduling system 30 records the device status information.
[0120] Specifically, after receiving the device status information, the scheduling system 30 may establish and maintain a device information table, in which an identifier, a public network address, or an intranet address may be stored.
[0121] The above S605 and S606 are optional steps of the embodiment of the present application, and the method of the embodiment of the present application may not execute the above S605 and S606.
[0122] S608: The scheduling system 30 detects the health status of the edge accelerator according to the public network address reported by the edge accelerator.
[0123] S610: The scheduling system 30 receives the health status returned by the edge acceleration end.
[0124] Specifically, the scheduling system 30 initiates a detection to the edge acceleration end through the public network address, thereby detecting the public network service status of the edge acceleration end. The edge acceleration end can also detect the intranet service status based on the intranet address. The edge acceleration end can obtain the health status of the edge acceleration end based on the intranet service status and the public network service status. In some examples, when the intranet service status and the public network service status are both normal, the health status of the edge acceleration end can be determined as normal (healthy).
[0125] It should be noted that the health status returned by the edge accelerator includes not only the public network service status, but also the intranet service status.
[0126] S612: The scheduling system 30 records the health status of the edge acceleration end.
[0127] Among them, S612 is an optional step in the embodiment of the present application, and the process of detecting the health status of the edge acceleration end may also not execute the above S612.
[0128] S614: The scheduling system 30 pushes content to the edge acceleration end.
[0129] Specifically, the scheduling system 30 can collect hot content (such as content with a popularity higher than a set value) and regularly push the hot content to the edge acceleration end with a normal health status.
[0130] S615: The edge acceleration end returns a cache result notification.
[0131] The cache result notification is used to notify the scheduling system 30 of the cache result of the pushed content, and the cache result may be a cache success or a cache failure.
[0132] It should be noted that S615 is an optional step in the embodiment of the present application, and the scheduling system 30 may not execute S615 when detecting the health status of at least one edge acceleration end.
[0133] S616: When the scheduling system 30 successfully caches the content at the edge acceleration end, the device content mapping information is updated.
[0134] Specifically, the scheduling system 30 may receive a cache result notification from the edge acceleration end, and when the cache result notification indicates that the cache is successful, the scheduling system 30 may update the device content mapping information. For example, when the content identifier is an index, the scheduling system 30 may update the device content index mapping table.
[0135] It should be noted that Figure 6 S608 and S610 are an implementation method for the scheduling system 30 to detect the health status of at least one edge accelerator. The scheduling system 30 may also receive the intranet service status reported by at least one edge accelerator, and receive the public network address reported by at least one edge accelerator, and detect the public network service status of at least one edge accelerator according to the public network address. Then, the scheduling system 30 determines the health status of at least one edge accelerator according to the public network service status and the intranet service status. The edge accelerator may report the intranet service status and the edge accelerator may report the public network address at the same time, for example, by a message / packet, or may be performed in sequence according to a set order.
[0136] Based on the aforementioned request scheduling method, the present application also provides a scheduling system. Figure 3 As shown, the scheduling system 30 includes:
[0137] The communication module 302 is configured to receive the service request sent by the terminal, where the service request carries an identifier of the edge acceleration terminal to which the terminal belongs;
[0138] A query module 304, configured to query a target edge acceleration end according to an identifier of a request content of the service request, wherein the target edge acceleration end stores the request content;
[0139] The scheduling module 306 is configured to schedule the service request to the edge acceleration terminal to which the terminal belongs when the identifier of the edge acceleration terminal to which the terminal belongs matches the identifier of the target edge acceleration terminal successfully.
[0140] Exemplarily, the communication module 302 , query module 304 , and scheduling module 306 may be implemented by hardware or software.
[0141] When implemented by software, the communication module 302, the query module 304, and the scheduling module 306 can be applications running on a computing device, such as a computing engine. The application can be provided in the form of a virtualization service. Virtualization services may include virtual machine (VM) services, bare metal server (BMS) services, or container services. Among them, the VM service can be a service that virtualizes a virtual machine resource pool on multiple physical hosts through virtualization technology to provide VMs for users to use on demand. The BMS service is a service that virtualizes a BMS resource pool on multiple physical hosts to provide BMS for users to use on demand. The container service is a service that virtualizes a container resource pool on multiple physical hosts to provide containers for users to use on demand. VM is a simulated virtual computer, that is, a logical computer. BMS is a high-performance computing service that can be elastically scalable, and its computing performance is no different from that of a traditional physical machine, and it has the characteristics of secure physical isolation. Containers are a kernel virtualization technology that can provide lightweight virtualization to achieve the purpose of isolating user space, processes, and resources. It should be understood that the VM service, BMS service and container service in the above-mentioned virtualization services are only specific examples. In actual applications, virtualization services can also be other lightweight or heavyweight virtualization services, which are not specifically limited here.
[0142] When implemented by hardware, the communication module 302 can be implemented by a communication interface, and the communication interface uses a transceiver module such as, but not limited to, a network interface card or a transceiver. The query module 304 and the scheduling module 306 may include at least one computing device, such as a server. Alternatively, the query module 304 and the scheduling module 306 may also be implemented by an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL) or any combination thereof.
[0143] In some possible implementations, the query module 304 is specifically used to:
[0144] According to the identifier of the request content of the service request, device content mapping information is queried to obtain a target edge acceleration end, wherein the device content mapping information includes a mapping relationship between the identifier of the edge acceleration end and the identifier of the cached content of the edge acceleration end.
[0145] In some possible implementations, the system 30 further includes:
[0146] Status detection module ( Figure 3 ), for detecting the health status of at least one edge acceleration end;
[0147] Content Management Module ( Figure 3 (not shown) for pushing content to the edge acceleration end in a normal health state;
[0148] Mapping Management Module ( Figure 3 ), which is used to update the device content mapping information when the edge acceleration end successfully caches the content.
[0149] Similar to the query module 304, the status detection module, the content management module, and the mapping management module may be implemented by software or by hardware.
[0150] When implemented by software, the status detection module, content management module, and mapping management module may be applications running on a computing device, such as a computing engine, etc. The application may be provided in the form of a virtualized service. The virtualized service may include a VM service, a BMS service, or a container service.
[0151] When implemented by hardware, the state detection module, content management module, and mapping management module may include at least one computing device, such as a server, etc. Alternatively, the state detection module, content management module, and mapping management module may also be implemented by a dedicated integrated circuit ASIC, or a device implemented by a programmable logic device PLD, etc.
[0152] In some possible implementations, the status detection module is specifically used to:
[0153] receiving an intranet service status reported by the at least one edge accelerator, and receiving a public network address reported by the at least one edge accelerator, and detecting the public network service status of the at least one edge accelerator according to the public network address;
[0154] Determine a health status of the at least one edge acceleration terminal according to the public network service status and the intranet service status.
[0155] In some possible implementations, the scheduling module 306 is specifically configured to:
[0156] The intranet address of the edge acceleration terminal to which the terminal belongs is returned to redirect the service request to the intranet address of the edge acceleration terminal to which the terminal belongs.
[0157] In some possible implementations, the identifier of the edge acceleration terminal to which the terminal belongs is detected by the terminal through a detection interface provided by the edge acceleration terminal to the terminal.
[0158] In some possible implementations, the scheduling module 306 is further configured to:
[0159] When the identifier of the edge acceleration end to which the terminal belongs fails to match the identifier of the target edge acceleration end, the service request is randomly dispatched to one or more edge acceleration ends among the target edge acceleration ends.
[0160] In some possible implementations, the scheduling module 306 is specifically configured to:
[0161] One or more edge acceleration ends are randomly selected from the target edge acceleration end, and the public network addresses of the selected one or more edge acceleration ends are returned to redirect the service request to the public network addresses of the selected one or more edge acceleration ends.
[0162] The present application also provides a computing device 700. Figure 7 As shown, computing device 700 includes: bus 702, processor 704, memory 706 and communication interface 708. Processor 704, memory 706 and communication interface 708 communicate through bus 702. Computing device 700 can be a server or a terminal device. It should be understood that the present application does not limit the number of processors and memories in computing device 700.
[0163] The bus 702 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 7 The bus 702 may include a path for transmitting information between various components of the computing device 700 (eg, the memory 706, the processor 704, and the communication interface 708).
[0164] The processor 704 may include any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
[0165] The memory 706 may include a volatile memory, such as a random access memory (RAM). The memory 706 may also include a non-volatile memory, such as a read-only memory (ROM), a flash memory, a hard disk drive (HDD) or a solid state drive (SSD). The memory 706 stores executable program code, and the processor 704 executes the executable program code to implement the aforementioned request scheduling method. Specifically, the memory 706 stores instructions for the scheduling system 30 to execute the request scheduling method.
[0166] The communication interface 708 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the computing device 700 and other devices or communication networks.
[0167] The embodiment of the present application also provides a computing device cluster. The computing device cluster includes at least one computing device. The computing device can be a server, such as a central server, an edge server, or a local server in a local data center. In some embodiments, the computing device can also be a terminal device such as a desktop computer, a laptop computer, or a smart phone.
[0168] like Figure 8 As shown, the computing device cluster includes at least one computing device 700. The memory 706 in one or more computing devices 700 in the computing device cluster may store the same scheduling system 30 for executing instructions of the request scheduling method.
[0169] In some possible implementations, one or more computing devices 700 in the computing device cluster may also be used to execute some instructions of the scheduling system 30 for executing the request scheduling method. In other words, a combination of one or more computing devices 700 may jointly execute instructions of the scheduling system 30 for executing the request scheduling method.
[0170] It should be noted that the memory 706 in different computing devices 700 in the computing device cluster can store different instructions for executing part of the functions of the scheduling system 30 .
[0171] Fig. 9 A possible implementation is shown. Fig. 9 As shown, two computing devices 700A and 700B are connected via a communication interface 708. The memory in the computing device 700A stores instructions for executing the functions of the communication module 302 and the query module 304. The memory in the computing device 700B stores instructions for executing the functions of the scheduling module 306. In other words, the memory 706 of the computing devices 700A and 700B jointly stores instructions for the scheduling system 30 to execute the request scheduling method. In some possible implementations, the memory of the computing device 700A or the computing device 700B may also store instructions for executing the functions of the status detection module, the content management module, and the mapping management module.
[0172] Fig. 9 The connection mode between the computing device clusters shown may be considered to be that the request scheduling method provided in the present application needs to provide request scheduling services for a large number of terminals. Therefore, it is considered to hand over the functions implemented by the scheduling module 306 to the computing device 700B for execution.
[0173] It should be understood that Fig. 9 The functions of the computing device 700A shown in FIG. 7 may also be completed by multiple computing devices 700. Similarly, the functions of the computing device 700B may also be completed by multiple computing devices 700.
[0174] In some possible implementations, one or more computing devices in the computing device cluster may be connected via a network, which may be a wide area network or a local area network. Fig.10 A possible implementation is shown, such as Fig.10 As shown, two computing devices 700C and 700D are connected via a network. Specifically, they are connected to the network via the communication interface in each computing device. In this type of possible implementation, the memory 706 in the computing device 700C stores instructions for executing the functions of the communication module 302 and the query module 304. At the same time, the memory 706 in the computing device 700D stores instructions for executing the functions of the scheduling module 306. In some possible implementations, the memory of the computing device 700C or the computing device 700D may also store instructions for executing the functions of the status detection module, the content management module, and the mapping management module.
[0175] Fig.10The connection mode between the computing device clusters shown may be that considering that the request scheduling method provided in the present application needs to provide request scheduling services for a large number of terminals, it is considered to hand over the functions implemented by the scheduling module 306 to the computing device 700D for execution.
[0176] It should be understood that Fig.10 The functions of the computing device 700C shown in FIG. 700A may also be completed by multiple computing devices 700. Similarly, the functions of the computing device 700D may also be completed by multiple computing devices 700.
[0177] The embodiment of the present application also provides a computer-readable storage medium. The computer-readable storage medium can be any available medium that can be stored by the computing device or a data storage device such as a data center containing one or more available media. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk). The computer-readable storage medium includes instructions that instruct the computing device to execute the above-mentioned method for executing the request scheduling method applied to the scheduling system 30.
[0178] The embodiment of the present application also provides a computer program product including instructions. The computer program product may be software or a program product including instructions that can be run on a computing device or stored in any available medium. When the computer program product is run on at least one computing device, the at least one computing device executes the above-mentioned request scheduling method.
[0179] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the protection scope of the technical solutions of the embodiments of the present invention.
Claims
1. A request scheduling method, characterized in that: The method is performed by a scheduling system, the scheduling system is connected to an access network, the access network includes at least one edge acceleration end, the scheduling system is used to schedule a service request to the edge acceleration end for access acceleration, and the method includes: The scheduling system receives the service request sent by the terminal, where the service request carries an identifier of the edge acceleration terminal to which the terminal belongs; The scheduling system queries a target edge acceleration end according to an identifier of the request content of the service request, and the target edge acceleration end stores the request content; When the identifier of the edge acceleration terminal to which the terminal belongs matches the identifier of the target edge acceleration terminal successfully, the scheduling system schedules the service request to the edge acceleration terminal to which the terminal belongs.
2. The method according to claim 1, characterized in that The scheduling system queries the target edge acceleration end according to the identifier of the request content of the service request, including: The scheduling system queries device content mapping information according to the identifier of the request content of the service request to obtain a target edge acceleration end, wherein the device content mapping information includes a mapping relationship between the identifier of the edge acceleration end and the identifier of the cached content of the edge acceleration end.
3. The method according to claim 2, characterized in that The method further comprises: The scheduling system detects the health status of the at least one edge acceleration terminal; The scheduling system pushes the content to the edge acceleration end in a normal health state, and when the edge acceleration end successfully caches the content, the scheduling system updates the device content mapping information.
4. The method according to claim 3, characterized in that The scheduling system detects the health status of at least one edge acceleration terminal, including: The scheduling system receives the intranet service status reported by the at least one edge accelerator, and receives the public network address reported by the at least one edge accelerator, and detects the public network service status of the at least one edge accelerator according to the public network address; The scheduling system determines a health status of the at least one edge acceleration terminal according to the public network service status and the intranet service status.
5. The method according to any one of claims 1 to 4, characterized in that: The scheduling system schedules the service request to the edge acceleration terminal to which the terminal belongs, including: The scheduling system returns the intranet address of the edge acceleration terminal to which the terminal belongs, so as to redirect the service request to the intranet address of the edge acceleration terminal to which the terminal belongs.
6. The method according to any one of claims 1 to 5, characterized in that: The identifier of the edge acceleration terminal to which the terminal belongs is detected by the terminal through a detection interface provided by the edge acceleration terminal to the terminal.
7. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: When the identifier of the edge acceleration end to which the terminal belongs fails to match the identifier of the target edge acceleration end, the scheduling system randomly schedules the service request to one or more edge acceleration ends among the target edge acceleration ends.
8. The method according to claim 7, characterized in that The scheduling system randomly schedules the service request to one or more edge acceleration ends among the target edge acceleration ends, including: The scheduling system randomly selects one or more edge acceleration ends from the target edge acceleration end, and returns the public network addresses of the selected one or more edge acceleration ends to redirect the service request to the public network addresses of the selected one or more edge acceleration ends.
9. A scheduling system, characterized in that: The scheduling system is connected to an access network, the access network includes at least one edge acceleration terminal, the scheduling system is used to schedule service requests to the edge acceleration terminal for access acceleration, and the system includes: A communication module, configured to receive the service request sent by the terminal, wherein the service request carries an identifier of the edge acceleration terminal to which the terminal belongs; A query module, configured to query a target edge acceleration end according to an identifier of a request content of the service request, wherein the target edge acceleration end stores the request content; The scheduling module is used to schedule the service request to the edge acceleration end to which the terminal belongs when the identifier of the edge acceleration end to which the terminal belongs matches the identifier of the target edge acceleration end successfully.
10. The system according to claim 9, characterized in that The query module is specifically used for: According to the identifier of the request content of the service request, device content mapping information is queried to obtain a target edge acceleration end, wherein the device content mapping information includes a mapping relationship between the identifier of the edge acceleration end and the identifier of the cached content of the edge acceleration end.
11. The system according to claim 10, characterized in that The system further comprises: A status detection module, used to detect the health status of at least one edge acceleration end; A content management module, used to push content to the edge acceleration end whose health status is normal; The mapping management module is used to update the device content mapping information when the edge acceleration end successfully caches the content.
12. The system according to claim 11, characterized in that The status detection module is specifically used for: receiving an intranet service status reported by the at least one edge accelerator, and receiving a public network address reported by the at least one edge accelerator, and detecting the public network service status of the at least one edge accelerator according to the public network address; The health status of the at least one edge acceleration terminal is determined according to the public network service status and the intranet service status.
13. The system according to any one of claims 9 to 12, characterized in that: The scheduling module is specifically used for: The intranet address of the edge acceleration terminal to which the terminal belongs is returned to redirect the service request to the intranet address of the edge acceleration terminal to which the terminal belongs.
14. The system according to any one of claims 9 to 13, characterized in that: The identifier of the edge acceleration terminal to which the terminal belongs is detected by the terminal through a detection interface provided by the edge acceleration terminal to the terminal.
15. The system according to any one of claims 9 to 14, characterized in that The scheduling module is also used for: When the identifier of the edge acceleration end to which the terminal belongs fails to match the identifier of the target edge acceleration end, the service request is randomly dispatched to one or more edge acceleration ends among the target edge acceleration ends.
16. The system according to claim 15, characterized in that The scheduling module is specifically used for: One or more edge acceleration ends are randomly selected from the target edge acceleration end, and the public network addresses of the selected one or more edge acceleration ends are returned to redirect the service request to the public network addresses of the selected one or more edge acceleration ends.
17. A computing device cluster, characterized in that: The computing device cluster includes at least one computing device, and the at least one computing device includes at least one processor and at least one memory, wherein the at least one memory stores computer-readable instructions; the at least one processor executes the computer-readable instructions so that the computing device cluster executes the request scheduling method as described in any one of claims 1 to 8.
18. A computer-readable storage medium, characterized in that: Comprising computer-readable instructions; the computer-readable instructions are used to implement the request scheduling method described in any one of claims 1 to 8.
19. A computer program product, characterized in that Comprising computer-readable instructions; the computer-readable instructions are used to implement the request scheduling method described in any one of claims 1 to 8.
Citation Information
Cited By
Rail transit cross-line operation scheduling communication system and method
CN122137870A