Methods of routing CDN user requests, CDN systems, and computing devices

By classifying CDN users and routing them to independent service devices, the problem of service interruption caused by CDN control software failures was solved, user request isolation and rapid recovery were achieved, and service reliability and continuity were improved.

CN116527773BActive Publication Date: 2026-11-06ALIBABA (CHINA) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310505366.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-05-06
Publication Date
2026-11-06
Estimated Expiration
2043-05-06

AI Technical Summary

Technical Problem

When the CDN control software malfunctions, it affects all users' management of accelerated domain names, leading to service interruption.

Method used

Based on the user information or domain name information in the CDN user request, the user category is determined, and the request is routed to the independent CDN user service device corresponding to that category for processing, ensuring that user requests of different categories are isolated and can be quickly recovered in the event of a failure.

Benefits of technology

By classifying users and routing them independently, the impact of service equipment failures on all users is reduced, enabling rapid recovery and efficient service continuity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116527773B_ABST
    Figure CN116527773B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a method for routing CDN user requests, a CDN system, a computing device, and the like. According to user information or domain name information in the CDN user request, a user category is determined; and according to the user category, the CDN user request is routed to a CDN user service device corresponding to the user category. With this method, requests of users belonging to different categories can be routed to different CDN user service devices for processing, thereby reducing the impact of service device failures.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of Content Delivery Network (CDN), and particularly to the processing of CDN user requests. Background Technology

[0002] A CDN is a large-scale distributed system that provides acceleration services for domain names. A CDN system can offer various related services to its users. For example, CDN users can manage their accelerated domain names through a CDN console. However, when, for example, the CDN control software (i.e., the corresponding CDN console) malfunctions, it will affect all users' management of their accelerated domain names.

[0003] This necessitates an improved way of providing services to CDN users to reduce the impact of service failures. Summary of the Invention

[0004] One technical problem this disclosure aims to solve is to provide an improved solution for providing services to CDN users.

[0005] According to a first aspect of this disclosure, a method for routing user requests from a content delivery network (CDN) is provided, comprising: determining a user category based on user information or domain name information in the CDN user request; and routing the CDN user request to a CDN user service device corresponding to the user category based on the user category.

[0006] Optionally, the CDN user service device corresponding to the user category is one or more of a plurality of CDN user service devices that operate independently of each other. The plurality of CDN user service devices that operate independently of each other correspond to one or more of the plurality of user categories and provide services to CDN users of the corresponding user categories.

[0007] Optionally, the plurality of CDN user service devices that operate independently of each other include multiple independent clusters, each of which has a corresponding service application deployed, and each of the multiple independent clusters has its own different IP address and domain name.

[0008] Optionally, if the CDN user service device corresponding to the user category is unavailable, the method further includes: routing the CDN user request to another CDN user service device.

[0009] Optionally, before determining the user category, the method further includes: classifying CDN users to obtain user categories; and adding the user categories to the user information of the CDN user, or to the domain information related to the accelerated domain set by the CDN user.

[0010] Optionally, the CDN users can be categorized based on their region, industry, and / or other personalized information.

[0011] Optionally, the CDN users include registered users of the CDN system.

[0012] Optionally, the CDN user request may include a query request or management request for the CDN user or for the services enjoyed by the CDN user.

[0013] Optionally, the CDN user request may originate from input to the CDN console, a call to the OpenAPI, or a call within the CDN system.

[0014] According to a second aspect of this disclosure, a Content Delivery Network (CDN) system is provided, comprising: a plurality of CDN user service devices that operate independently of each other, configured to correspond to one or more user categories of CDN users respectively, and to provide services to CDN users of the corresponding user categories; and a routing component configured to perform the method described in the first aspect above.

[0015] According to a third aspect of this disclosure, a computing device is provided, comprising: a processor; and a memory having executable code stored thereon, which, when executed by the processor, causes the processor to perform the method described in the first aspect above.

[0016] According to a fourth aspect of this disclosure, a computer program product is provided, including executable code that, when executed by a processor of an electronic device, causes the processor to perform the method described in the first aspect above.

[0017] According to a fifth aspect of this disclosure, a non-transitory machine-readable storage medium is provided, on which executable code is stored, which, when executed by a processor of an electronic device, causes the processor to perform the method described in the first aspect above.

[0018] Therefore, by using the method according to this disclosure, requests from users belonging to different categories can be routed to different CDN user service devices for processing, thereby reducing the impact of service device failures. Attached Figure Description

[0019] The above and other objects, features and advantages of this disclosure will become more apparent from the more detailed description of exemplary embodiments thereof taken in conjunction with the accompanying drawings, wherein like reference numerals generally denote like parts.

[0020] Figure 1A schematic flowchart of a method for routing CDN user requests according to an embodiment of the present disclosure is shown.

[0021] Figure 2 A schematic flowchart of a method for classifying CDN users according to an embodiment of the present disclosure is shown.

[0022] Figure 3 A schematic block diagram of a CDN system according to an embodiment of the present disclosure is shown.

[0023] Figure 4 A schematic diagram of the structure of a computing device according to an embodiment of the present disclosure is shown. Detailed Implementation

[0024] Exemplary embodiments of the present disclosure will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that the present disclosure will be thorough and complete, and will fully convey the scope of the present disclosure to those skilled in the art.

[0025] As previously stated, this disclosure proposes an improved method for routing CDN user requests, which can route requests from users belonging to different categories to different CDN user service devices for processing, thereby reducing the impact of service device failures.

[0026] If a unified service is provided to all users without user categorization, all users will be affected if the service system fails (e.g., data center failure, software bug). Therefore, some embodiments of this disclosure propose classifying users and deploying services independently, routing requests according to user category. This effectively solves the problem of all users being unavailable due to system failure. Furthermore, in some implementations, if some service categories fail, requests from those categories can be easily routed to other service categories, achieving rapid recovery.

[0027] The following will combine Figures 1 to 3 The present disclosure will now describe in detail at least some embodiments of the solutions.

[0028] Figure 1 A schematic flowchart of a method for routing CDN user requests according to an embodiment of the present disclosure is shown.

[0029] like Figure 1 As shown, in step S110, the user category is determined based on the user information or domain name information in the CDN user request.

[0030] Those skilled in the art should understand that in the scheme disclosed herein, "user" includes registered users / customers of the CDN system (such as various website operators), who typically purchase various services provided by the CDN system, such as acceleration services for the websites they own / operate; "CDN user request" typically includes various query, management, and other requests for users or for services enjoyed / purchased by users.

[0031] In some embodiments, CDN user requests can originate from input on the CDN console, calls to the OpenAPI, or calls within the CDN system. For example, a user can access the CDN console and initiate corresponding requests by operating the CDN console. Additionally, CDN user requests can include north-south requests such as those via the OpenAPI, or east-west requests from various internal devices within the CDN system or from other devices deployed in the same device system (e.g., a data center) as the CDN system.

[0032] For example, when a user accesses the CDN console or OpenAPI through their own account, or when the access object of the called interface is user-related information (such as the user viewing account-level data), the CDN user request can contain user information, such as the user ID, or other information that can identify the user ID; in some cases, the CDN user request can also contain domain information related to the user, such as the accelerated domain name.

[0033] In addition, in some implementations, when the access object of the interface is domain-related information (such as accelerated domain name), the CDN user request may include domain name information, such as accelerated domain name, or other information that enables the identification of the accelerated domain name; in some cases, the CDN user request may also include user information, such as the ID of the user to whom the accelerated domain name belongs.

[0034] Furthermore, in some implementations, for east-west requests, depending on the interface, the caller needs to pass in a user ID or an accelerated domain name, etc. Therefore, CDN user requests include user information such as a user ID or domain information such as an accelerated domain name.

[0035] In some embodiments, user information or domain information can be directly extracted from CDN user requests, thereby determining the user category based on this information. However, in some cases, user information or domain information may not be available from CDN user requests, or the user's category may not be accurately determined based on the user information or domain information. In such cases, the user category can be set as the default category. Additionally, for example, in the case of new user registration, user information and domain information have not yet been created, so the user can be considered as the default user category, and services will be provided by the default CDN user service device.

[0036] For example, in some implementations, the user's region, industry, importance, service priority, and / or security level can be determined based on the user information or domain name information, thereby determining the user category, such as categories divided by region, industry, service priority, or security level.

[0037] In other implementations, the user category can be determined, for example, before initiating a CDN user request (e.g., when the user registers with the CDN system), and the user category information can be added to the user information or domain information. Therefore, when obtaining the user information or domain information in the CDN user request, the user category can be directly obtained. The following will combine... Figure 2 Here are some examples to describe this implementation.

[0038] Figure 2 A schematic flowchart of a method for classifying CDN users according to an embodiment of the present disclosure is shown.

[0039] In some embodiments, it is possible to Figure 1 Before step S110 shown, using Figure 2 The method is to pre-classify CDN users.

[0040] like Figure 2 As shown, in step S210, CDN users are classified to obtain user categories.

[0041] In some implementations, users can choose their category during or after registration, or they can be categorized based on their region, industry, service priority, importance, security level, and / or other personalized information.

[0042] Users can be categorized based on one or more dimensions as needed. The dimensions for categorization can depend on customer needs, the level of customization in customer service, and so on.

[0043] For example, users can be categorized by their geographical location, such as domestic users and overseas users. They can also be categorized by their industry, such as internet users, industrial users, and government / enterprise users. Furthermore, they can be categorized by user importance, such as top users and ordinary users.

[0044] In some cases, additional targeted or customized services can be provided for different user categories. For example, stronger security measures can be offered to government and enterprise clients. Alternatively, customized services and critical protection services can be provided to top-tier users.

[0045] After obtaining the user category, such as Figure 2 As shown, in step S220, the user category is added to the user information of the CDN user or the domain information related to the accelerated domain set by the CDN user.

[0046] In some implementations, all CDN users can be tagged based on user category, and this tagging also applies to the user's accelerated domain name. This is because, in many cases, CDN systems may only focus on the domain name. For example, an entry can be added to the data describing user attributes (such as user ID) or accelerated domain names to represent the "user category." For instance, a field in the user ID can be set to indicate its user category.

[0047] Then, return to Figure 1 After determining the user category, in step S120, based on the user category determined in step S110, the CDN user request is routed to the CDN user service device corresponding to that user category. This allows requests from different user categories to be routed to their respective service devices, achieving user request isolation.

[0048] In some implementations, a corresponding CDN user service device can be provided for each user category to provide services, and the CDN user service devices corresponding to different user categories operate independently of each other. That is, for N user categories of CDN users, N independently operating CDN user service devices can be deployed to provide services for users in their respective categories.

[0049] In other implementations, the relationship between user categories and CDN user service devices may not be one-to-one. For example, one of multiple independently operating CDN user service devices may correspond to one or more user categories and provide services to CDN users within that category, while a user category may also correspond to one or more CDN user service devices. This allows for more flexible service provision to CDN users. For instance, CDN user requests can be allocated based on the load and other operational conditions of the CDN user service devices, thereby achieving additional benefits such as improved efficiency.

[0050] As described above, this disclosure allows for the deployment of independent services for different types of users, with no interference between services, thus enabling control over the failure explosion surface.

[0051] In some implementations, the aforementioned multiple independently operating CDN user service devices may include multiple independent clusters, each deploying a corresponding service application, with each cluster having its own unique IP address and domain name. For example, these multiple CDN user service devices may be multiple independent clusters deployed on a central cloud serving as the central layer of the CDN system, with each cluster exposing a different VIP (Virtual IP) and domain name. In the scheme of this disclosure, the multiple independent clusters may include clusters of various physical hardware (e.g., computer clusters, server clusters, etc.) and / or clusters of virtualized hardware (e.g., virtual machine clusters, container clusters, etc.).

[0052] In some implementations, the solution disclosed herein can also quickly restore service to the corresponding users when one or more CDN user service devices are unavailable (e.g., due to malfunction). For example, if the CDN user service device corresponding to a certain user category is unavailable, CDN user requests for that user category can be routed to other CDN user service devices, such as CDN user service devices corresponding to other user categories, thereby achieving a rapid recovery effect.

[0053] The foregoing has described in detail some examples of methods for routing CDN user requests according to the present disclosure with reference to the accompanying drawings. Using these methods, requests from users belonging to different categories can be routed to different CDN user service devices for processing, thereby reducing the impact of service device failures. Furthermore, in some embodiments, if some categories of services fail, requests from these categories can be easily routed to other categories of service devices, thus achieving a rapid recovery effect.

[0054] The following will combine Figure 3 Examples of CDN systems that can implement the methods of this disclosure described above are given.

[0055] Figure 3 A schematic block diagram of a CDN system according to an embodiment of the present disclosure is shown.

[0056] like Figure 3 As shown, the CDN system 300 may include: N CDN user service devices 311-31N that operate independently of each other, routing components 320, interfaces 330, and other internal devices 340.

[0057] In some implementations, CDN user service devices 311-31N are configured to correspond to one or more user categories among a plurality of CDN user categories, and to provide services to CDN users of the corresponding user category. As described above, in other implementations, these N CDN user service devices 311-31N may be configured to correspond one-to-one with N user categories, and to provide services to CDN users of the corresponding user category.

[0058] As described above, in some embodiments, the aforementioned N independently operating CDN user service devices 311-31N may include multiple independent clusters, each with its own deployed service applications, and each of these independent clusters has its own unique IP address and domain name. For example, the N CDN user service devices may be multiple independent clusters deployed on a central cloud, which serves as the central layer of the CDN system, with each cluster exposing a different VIP (Virtual IP) and domain name.

[0059] In some implementations, interface 330 may receive CDN user requests (e.g., input from a CDN console, OpenAPI calls, etc.) from users or external devices, and / or may receive CDN user requests (e.g., calls from within the CDN system) from other internal devices 340 within the CDN system. These CDN user requests may include requests from CDN users to CDN user service devices for various services (e.g., queries, management, etc.). CDN user requests received by interface 330 may be distributed to various CDN user service devices via routing component 320.

[0060] In some implementations, routing component 320 is configured to perform as described above (e.g., in conjunction with...). Figure 1 and / or Figure 2 The method for routing CDN user requests according to this disclosure.

[0061] For example, routing component 320 can be configured to: determine a user category based on user information or domain name information in a CDN user request; and route the CDN user request to the CDN user service device corresponding to the user category. In some embodiments, if the CDN user service device corresponding to the user category is unavailable, routing component 320 can also be configured to route the CDN user request to another CDN user service device.

[0062] The aforementioned Figure 2 The user classification method shown can be performed by the routing component 320, or by one or more of the CDN user service devices 311-31N, or by other components within the CDN system; this disclosure does not limit this.

[0063] In some implementations... Figure 3 The routing component 320 in the application can be implemented by a gateway application.

[0064] In some implementations... Figure 3 The illustrated CDN system 300 structure is located at the central layer of the CDN system 300. However, those skilled in the art will understand that the invention is not limited thereto, and that some or all of the illustrated components may be deployed at the edge layer of the CDN system 300 as needed.

[0065] Figure 4 A schematic diagram of a computing device is shown, which can be used to implement the above-described method for routing CDN user requests according to an embodiment of the present disclosure.

[0066] See Figure 4 The computing device 400 includes a memory 410 and a processor 420.

[0067] Processor 420 may be a multi-core processor or may contain multiple processors. In some embodiments, processor 420 may include a general-purpose main processor and one or more special-purpose coprocessors, such as a graphics processing unit (GPU), a digital signal processor (DSP), etc. In some embodiments, processor 420 may be implemented using custom circuitry, such as an application-specific integrated circuit (ASIC) or a field-programmable gate array (FPGA).

[0068] Memory 410 may include various types of storage units, such as system memory, read-only memory (ROM), and permanent storage devices. ROM may store static data or instructions required by processor 420 or other modules of the computer. Permanent storage devices may be read-write storage devices. Permanent storage devices may be non-volatile storage devices that retain stored instructions and data even when the computer is powered off. In some embodiments, permanent storage devices use mass storage devices (e.g., magnetic or optical disks, flash memory) as permanent storage devices. In other embodiments, permanent storage devices may be removable storage devices (e.g., floppy disks, optical drives). System memory may be a read-write storage device or a volatile read-write storage device, such as dynamic random access memory. System memory may store some or all of the instructions and data required by the processor during operation. Furthermore, memory 410 may include any combination of computer-readable storage media, including various types of semiconductor memory chips (DRAM, SRAM, SDRAM, flash memory, programmable read-only memory), and disks and / or optical disks may also be used. In some embodiments, memory 410 may include a removable storage device that is readable and / or writable, such as a laser disc (CD), a read-only digital multifunction optical disc (e.g., DVD-ROM, dual-layer DVD-ROM), a read-only Blu-ray disc, an ultra-high density optical disc, a flash memory card (e.g., SD card, mini SD card, Micro-SD card, etc.), a magnetic floppy disk, etc. Computer-readable storage media do not contain carrier waves or transient electronic signals transmitted wirelessly or via wired connections.

[0069] The memory 410 stores executable code, which, when processed by the processor 420, enables the processor 420 to execute the method for routing CDN user requests described above.

[0070] The method for routing CDN user requests according to this disclosure, as well as the corresponding system or device, has been described in detail above with reference to the accompanying drawings.

[0071] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or refuse.

[0072] Furthermore, the method according to this disclosure can also be implemented as a computer program or computer program product, which includes computer program code instructions for performing the steps defined in the above-described method of this disclosure.

[0073] Alternatively, this disclosure may be implemented as a non-transitory machine-readable storage medium (or computer-readable storage medium, or machine-readable storage medium) storing executable code (or computer program, or computer instruction code) that, when executed by a processor of an electronic device (or computing device, server, etc.), causes the processor to perform the steps of the method described above according to this disclosure.

[0074] Those skilled in the art will also understand that the various exemplary logic blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein can be implemented as electronic hardware, computer software, or a combination of both.

[0075] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems and methods according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0076] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A method for routing user requests from a Content Delivery Network (CDN), wherein the CDN user request is a management or query request initiated by a CDN user to a CDN system, targeting the CDN user itself or its CDN services, the method comprising: Based on user information or domain name information in CDN user requests, user categories are determined. Different user categories correspond to independently operating CDN user service devices. These independently operating CDN user service devices include multiple independent clusters, each deploying a corresponding service application. Each of these independent clusters has its own unique IP address and domain name. Based on the user category, the CDN user requests are routed to the CDN user service device corresponding to the user category, so that if any CDN user service device fails, the CDN user requests corresponding to the user category will be affected.

2. The method according to claim 1, wherein, The CDN user service device corresponding to the user category is one or more of a plurality of CDN user service devices that operate independently of each other. The plurality of CDN user service devices that operate independently of each other correspond to one or more user categories and provide services to CDN users of the corresponding user categories.

3. The method according to claim 1, wherein, If the CDN user service device corresponding to the user category is unavailable, the method further includes: The CDN user requests are routed to other CDN user service devices.

4. The method according to claim 1, wherein, Prior to the step of determining the user category, the method further includes: Classify CDN users to obtain user categories; and Add the user category to the user information of the CDN user, or to the domain information related to the accelerated domain set by the CDN user.

5. The method according to claim 4, wherein, The CDN users are categorized based on their region, industry, and / or other personalized information.

6. The method according to claim 1, wherein, The CDN users include registered users of the CDN system; and / or The CDN user request includes a query request or management request for the CDN user or for the services enjoyed by the CDN user; And / or The CDN user requests come from input to the CDN console, calls to the OpenAPI, or calls within the CDN system.

7. A Content Delivery Network (CDN) system, comprising: Multiple CDN user service devices that operate independently are configured to correspond to one or more user categories of CDN users and provide services to CDN users of the corresponding user categories. The CDN user service devices that operate independently include multiple independent clusters that are deployed with corresponding service applications. Each of the multiple independent clusters has its own different IP address and domain name. as well as The routing component is configured to perform the method as described in any one of claims 1 to 6.

8. A computing device, comprising: processor; as well as A memory having executable code stored thereon, which, when executed by the processor, causes the processor to perform the method as described in any one of claims 1 to 6.

9. A computer program product comprising executable code that, when executed by a processor of an electronic device, causes the processor to perform the method as claimed in any one of claims 1 to 6.

10. A non-transitory machine-readable storage medium having executable code stored thereon, which, when executed by a processor of an electronic device, causes the processor to perform the method as claimed in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Scheduling method and device of CDN servers

    CN103763209A

  • Distributed architecture financial system and service calling method

    CN116016094A