Traffic scheduling method and device and electronic equipment

By acquiring and verifying user configuration data and accelerating the scheduling of terminal traffic using the multi-cloud vendor domain name list, the problem of inability to take into account both multi-dimensional and fine-grained control in the existing technology is solved, and more efficient and accurate traffic management is achieved.

CN119835248APending Publication Date: 2025-04-15SHANGHAI SHIZHUANG INFORMATION TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510054438.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-14
Publication Date
2025-04-15

AI Technical Summary

Technical Problem

Existing traffic scheduling functions cannot take into account the needs of more dimensional control and finer granular precision control, especially when a single cloud service provider fails or fails to provide sufficient geographical coverage, which affects the availability and user experience of the system.

Method used

By obtaining the current user's configuration data and multi-cloud vendor domain name list, verifying and after passing, terminal traffic is accelerated to ensure that more dimensional control of business rules can be applied to each user traffic.

Benefits of technology

It realizes highly flexible and accurate traffic management, meets more complex multi-dimensional control needs and finer granular precise control needs, and improves the usability and user experience of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119835248A_ABST
    Figure CN119835248A_ABST
Patent Text Reader

Abstract

The invention provides a traffic scheduling method and device and electronic equipment. The method comprises the following steps: acquiring configuration data corresponding to a current user and a multi-cloud manufacturer domain name list; verifying the current user according to the configuration data to obtain a verification result; and if the verification result passes, carrying out accelerated scheduling on the terminal traffic of the current user according to the multi-cloud manufacturer domain name list. In the implementation process of the scheme, the current user is verified by introducing the configuration data, and the terminal traffic is scheduled in an accelerated manner according to the multi-cloud manufacturer domain name list after the verification result passes, so that the latest service rule can be timely applied to the traffic acceleration scheduling of each user through the configuration data, and the traffic acceleration scheduling efficiency is improved. Therefore, a personalized verification function based on the configuration data is realized, and the fine degree of flow control is effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of network traffic management and optimized traffic scheduling, and in particular, to a traffic scheduling method, device and electronic equipment. Background Art

[0002] Current traffic scheduling mainly relies on the DNS resolution mechanism, which implements traffic distribution by setting different DNS records (such as CNAME records and A records). When using a single cloud service provider, if the cloud service provider fails, it may affect the availability and stability of the entire system. In addition, a single cloud service provider cannot provide sufficient geographical coverage, especially in the international market, which affects the access experience of global users. Existing cloud traffic scheduling functions usually only support traffic distribution based on relatively simple rules such as region or operator. This traffic scheduling function cannot take into account the needs of more dimensional control and more fine-grained precision control. Summary of the invention

[0003] The purpose of the embodiments of the present application is to provide a traffic scheduling method, device and electronic device, which are used to improve the problem that the traffic scheduling function cannot take into account the needs of more dimensional control and finer-grained precise control.

[0004] The embodiment of the present application provides a traffic scheduling method, including: obtaining the configuration data and multi-cloud vendor domain name list corresponding to the current user; verifying the current user according to the configuration data to obtain the verification result; if the verification result passes, accelerating the scheduling of the terminal traffic of the current user according to the multi-cloud vendor domain name list. In the implementation process of the above scheme, the current user is verified by introducing the configuration data for multi-dimensional control, and after the verification result passes, the terminal traffic is accelerated according to the multi-cloud vendor domain name list, ensuring that the business rules of more dimensional control can be applied to each user's traffic acceleration scheduling in a timely manner, thereby meeting more complex multi-dimensional control requirements. This personalized verification mechanism based on configuration data allows real-time adjustment to respond to changing network conditions and user needs, and realizes highly flexible and accurate traffic management, thereby meeting more fine-grained precision control requirements. Therefore, it effectively ensures that the traffic of each user can be processed in the most appropriate way, thereby taking into account more dimensional control and more fine-grained precision control requirements.

[0005] Optionally, in an embodiment of the present application, before verifying the current user according to the configuration data, it also includes: receiving configuration data from a configuration center platform, the configuration data includes: multiple configuration items, and the multiple configuration items are used to verify the current user. In the implementation process of the above scheme, by receiving the latest configuration data from the configuration center platform in real time, the system can instantly apply new rules and policies without restarting or redeploying. This real-time update capability enables the traffic scheduling system to quickly respond to changes in business needs or emergencies, thereby enhancing the dynamic adaptability of the system. Furthermore, the configuration center platform, as a single source point, ensures that all relevant components use consistent configuration information, which not only simplifies configuration management, but also reduces problems caused by inconsistent configurations between different instances, thereby improving the reliability and stability of the system.

[0006] Optionally, in an embodiment of the present application, multiple configuration items include: user blacklist, user whitelist, device blacklist and / or device whitelist; verify the current user according to the configuration data, including: if the user identifier of the current user is in the user whitelist, or the terminal identifier of the current user is in the device whitelist, then the verification result is determined to be passed; if the user identifier of the current user is in the user blacklist, or the terminal identifier of the current user is in the device blacklist, then the verification result is determined to be failed. In the implementation process of the above scheme, through a clear black and white list mechanism, the system can accurately control which users or devices are allowed to access the service and which need to be denied. This fine-grained access control greatly enhances the security of the system and can effectively prevent attacks from malicious users or infected devices.

[0007] Optionally, in an embodiment of the present application, the terminal traffic of the current user is accelerated and scheduled according to the multi-cloud vendor domain name list, including: selecting an effective vendor domain name from the multi-cloud vendor domain name list; using the effective vendor domain name to accelerate the scheduling of the terminal traffic of the current user. In the implementation process of the above scheme, by selecting the most suitable domain name from multiple cloud vendors for traffic scheduling, the system can quickly switch to other healthy cloud service providers when a problem occurs in a certain cloud service provider, greatly improving the availability and stability of the service, and reducing the risk of a large number of users being unable to use the service normally due to the failure of a single service provider.

[0008] Optionally, in an embodiment of the present application, selecting an effective vendor domain name from the multi-cloud vendor domain name list includes: obtaining a weight parameter of the multi-cloud vendor domain name list; and selecting an effective vendor domain name from the multi-cloud vendor domain name list according to the weight parameter. In the implementation process of the above scheme, the weight parameter allows the system to dynamically adjust traffic distribution according to different standards (such as performance, cost, geographic location, etc.). In this way, intelligent load balancing can be achieved to ensure that the resources of each cloud service provider are optimally utilized and to avoid overloading of some nodes while other nodes are idle.

[0009] Optionally, in an embodiment of the present application, the effective manufacturer domain name is used to accelerate the scheduling of the terminal traffic of the current user, including: intercepting the domain name system DNS resolution request of the business application used by the current user; using the effective manufacturer domain name to perform DNS resolution to obtain a network protocol IP address list, the IP address list includes the IP address after content distribution network CDN acceleration; forwarding the IP address list to the business application, so that the business application determines the IP address list as the resolution result corresponding to the DNS resolution request.

[0010] In the implementation of the above solution, by using the IP address accelerated by the content distribution network (CDN), users can connect to the content node closest to them or with the best performance, which greatly reduces data transmission delays and improves page loading speed and application response time. Furthermore, intercepting DNS resolution requests and processing them in a controlled manner can prevent malicious DNS hijacking and man-in-the-middle attacks. Using CDN can also hide the real IP address of the source station, adding an additional security layer and improving the security of the traffic scheduling process.

[0011] The embodiment of the present application also provides a traffic scheduling device, including: a configuration list acquisition module, used to obtain configuration data and a multi-cloud vendor domain name list corresponding to the current user; a verification result acquisition module, used to verify the current user according to the configuration data and obtain a verification result; a traffic acceleration scheduling module, used to accelerate the terminal traffic of the current user according to the multi-cloud vendor domain name list if the verification result passes.

[0012] Optionally, in an embodiment of the present application, the traffic scheduling device further includes: a configuration data receiving module, used to receive configuration data from a configuration center platform, the configuration data including: multiple configuration items, and the multiple configuration items are used to verify the current user.

[0013] Optionally, in an embodiment of the present application, multiple configuration items include: a user blacklist, a user whitelist, a device blacklist and / or a device whitelist; a verification result acquisition module includes: a verification determination pass sub-module, which is used to determine the verification result as passed if the user identifier of the current user is in the user whitelist, or the terminal identifier of the current user is in the device whitelist; a verification determination fail sub-module, which is used to determine the verification result as failed if the user identifier of the current user is in the user blacklist, or the terminal identifier of the current user is in the device blacklist.

[0014] Optionally, in an embodiment of the present application, the traffic acceleration scheduling module includes: an effective domain name selection submodule, used to select an effective vendor domain name from a multi-cloud vendor domain name list; a traffic acceleration scheduling submodule, used to use the effective vendor domain name to accelerate the scheduling of the terminal traffic of the current user.

[0015] Optionally, in an embodiment of the present application, the effective domain name selection submodule includes: a weight parameter acquisition unit, used to obtain the weight parameters of the multi-cloud vendor domain name list; and an effective domain name selection unit, used to select an effective vendor domain name from the multi-cloud vendor domain name list according to the weight parameters.

[0016] Optionally, in an embodiment of the present application, the traffic acceleration scheduling submodule includes: a DNS request interception unit, used to intercept the domain name system DNS resolution request of the business application used by the current user; an IP address acquisition unit, used to use the effective manufacturer domain name for DNS resolution to obtain a network protocol IP address list, the IP address list includes the IP address after content distribution network CDN acceleration; an IP address forwarding unit, used to forward the IP address list to the business application, so that the business application determines the IP address list as the resolution result corresponding to the DNS resolution request.

[0017] An embodiment of the present application further provides an electronic device, including: a processor and a memory, wherein the memory stores machine-readable instructions executable by the processor, and the machine-readable instructions execute the method described above when executed by the processor.

[0018] An embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the method described above is executed.

[0019] The embodiment of the present application also provides a computer program product, including: a computer program or a computer instruction, and the computer program or the computer instruction executes the method described above when executed by a processor. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments of the present application will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0021] Figure 1 A flow chart of a traffic scheduling method provided in an embodiment of the present application is shown;

[0022] Figure 2 A schematic diagram of a selection process of an effective manufacturer domain name provided by an embodiment of the present application is shown;

[0023] Figure 3 A schematic diagram of the structure of a flow scheduling device provided in an embodiment of the present application is shown;

[0024] Figure 4 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application is shown. DETAILED DESCRIPTION

[0025] To make the purpose, technical scheme and advantages of the embodiment of the present application clearer, the technical scheme in the embodiment of the present application will be clearly and completely described below in conjunction with the drawings in the embodiment of the present application. It should be understood that the drawings in the embodiment of the present application only serve the purpose of explanation and description, and are not used to limit the protection scope of the embodiment of the present application. In addition, it should be understood that the schematic drawings are not drawn in real proportion. The flowchart used in the embodiment of the present application shows the operation implemented according to some embodiments of the embodiment of the present application. It should be understood that the operation of the flowchart can be implemented out of order, and the steps without logical context can be reversed in order or implemented simultaneously. In addition, those skilled in the art can add one or more other operations to the flowchart under the guidance of the content of the embodiment of the present application, or remove one or more operations from the flowchart.

[0026] In addition, the described embodiments are only a part of the embodiments of the present application, rather than all embodiments. The components of the embodiments of the present application described and shown in the drawings generally here can be arranged and designed in various configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the embodiments of the present application claimed, but merely represents the selected embodiments of the embodiments of the present application.

[0027] It is understandable that the "first" and "second" in the embodiments of the present application are used to distinguish similar objects. Those skilled in the art will understand that the words "first" and "second" do not limit the quantity and execution order, and the words "first" and "second" do not necessarily limit the difference. In the description of the embodiments of the present application, the term "and / or" is merely a description of the association relationship of associated objects, indicating that there may be three relationships, such as A and / or B, which can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the related objects before and after are in an "or" relationship. The term "multiple" refers to more than two (including two), and similarly, "multiple groups" refers to more than two groups (including two groups).

[0028] It should be noted that the traffic scheduling method provided in the embodiment of the present application can be executed by an electronic device, where the electronic device refers to a device terminal having the function of executing a computer program or the above-mentioned server, and the device terminal is, for example, a smart phone, a personal computer, a tablet computer, a personal digital assistant, or a mobile Internet device, etc. A server refers to a device that provides computing services through a network, and the server is, for example, an x86 server and a non-x86 server, and the non-x86 server includes: a mainframe, a minicomputer, and a UNIX server.

[0029] In the related art, traffic scheduling mainly executes traffic scheduling judgment logic in the cloud, for example, traffic distribution is achieved by setting different domain name resolution (Domain Name System, DNS) records, such as CNAME records and A records; among them, A records are used to directly map domain names to one or more Internet Protocol (Internet Protocol, IP) addresses, and CNAME records are used to create an alias pointing to another domain name, and the actual IP address is ultimately determined by the A record of the target domain name. This traffic scheduling function based on the DNS resolution mechanism mainly relies on simple rules provided by domain name service providers, such as domain name weight (proportion), region, and operator traffic allocation. These records allow a certain degree of traffic dispersion, such as simple load balancing by configuring multiple A records, but cannot handle decision logic in more complex scenarios, such as precise traffic routing based on user geographic location, network conditions or device attributes. Because the original intention of the DNS system was not to achieve complex traffic management, but to convert human-readable domain names into IP addresses that computers can understand. In this process, the direction of traffic can be indirectly affected by setting different DNS records (such as CNAME and A records), but this influence is limited and coarse-grained. Therefore, this traffic scheduling function can only provide relatively rough traffic management.

[0030] After a long period of practice, it is found that when using a single cloud service provider, all traffic depends on the service quality of the service provider. If the service provider fails or performance degrades, it may affect the availability and stability of the entire system. Different cloud service providers have different node distributions around the world, and a single service provider may not be able to provide sufficient geographical coverage, which will limit the access speed and service quality of these regions. Especially in the international market, a single service provider may not be able to provide sufficient geographical coverage, thus affecting the access experience of global users. In this case, the above rough traffic management and traffic scheduling functions cannot meet the more complex multi-dimensional control and finer-grained precision control requirements.

[0031] To meet the requirements found in the above practice, please refer to Figure 1 A flow chart of the traffic scheduling method provided by an embodiment of the present application is shown; the main idea of ​​the traffic scheduling method is to verify the current user by introducing configuration data for multi-dimensional control, and after the verification result passes, accelerate the terminal traffic according to the multi-cloud vendor domain name list to ensure that more dimensional control business rules can be applied to each user's traffic acceleration scheduling in a timely manner, thereby meeting more complex multi-dimensional control needs. This personalized verification mechanism based on configuration data allows real-time adjustment to respond to changing network conditions and user needs, achieving highly flexible and accurate traffic management, thereby meeting more fine-grained precision control needs. The above-mentioned implementation methods of the traffic scheduling method may include:

[0032] Step S110: Obtain configuration data corresponding to the current user and a multi-cloud vendor domain name list.

[0033] The configuration data corresponding to the above-mentioned current user includes multiple configuration items for multi-dimensional control. The multiple configuration items here can be divided into several categories: user information category, terminal information category, and function information category, etc.; among them, the user information category specifically includes user blacklist and user whitelist, the terminal information category includes: city list, province list, country list, operator list, device system type (Android, iOS, etc.), device manufacturer, device system version, device ROM version, network type (such as WIFI, 5G, 4G, 3G or 2G, etc.), device blacklist or device whitelist, etc., the function information category includes: volume switch, expiration time, business interface path blacklist, etc.

[0034] It is understandable that the domain name list of the above-mentioned multiple cloud service providers (multi-cloud vendors) can ensure that even if a problem occurs with a cloud service provider, it can be quickly switched to other available service providers. For example, when a problem occurs with the main service provider A, it can immediately switch to the backup service provider B, thereby ensuring the continuity and stability of the service and improving the system's fault tolerance and geographical coverage.

[0035] Step S120: verify the current user according to the configuration data to obtain a verification result.

[0036] It can be understood that the above process of verifying the current user according to the configuration data is different according to different configuration data. Therefore, there are many ways to verify the configuration data and the multi-dimensional information of the current user. The obtained verification result is used to determine whether the current user meets the conditions for enabling the full-site traffic acceleration scheduling, thereby realizing the function of accurately controlling whether to enable the full-site acceleration.

[0037] Step S130: If the verification result passes, the terminal traffic of the current user is accelerated and scheduled according to the multi-cloud vendor domain name list.

[0038] The multi-cloud vendor domain name list refers to a list of domain names provided by multiple cloud vendors. The multi-cloud vendor domain name list here can be a configuration item set in the configuration data, which can be represented as hostConfigs. Of course, it can also be sent to the electronic device separately from the configuration data.

[0039] Each domain name in the above domain name list can obtain an accelerated IP address after DNS resolution. The acceleration method varies according to the full-site acceleration products and technical services of each cloud vendor. For example, some cloud vendors can provide content delivery network (Content Delivery Network, CDN) products, dynamic content delivery network (Dynamicute for CDN, DCDN) products or whole site acceleration (WSA) products to accelerate each domain name, so that the IP address after the domain name resolution selects the server closest to or closer to the user to serve, thereby achieving the acceleration effect. Furthermore, by distributing the workload on multiple cloud platforms, the dependence on a single cloud service provider can be reduced. Since different cloud service providers have different node layouts around the world, precise traffic scheduling can select the nearest or best-performing service node based on the user's geographic location, reducing latency and improving response speed.

[0040] In the implementation process of the above solution, the current user is verified by introducing configuration data for multi-dimensional control, and after the verification result is passed, the terminal traffic is accelerated and scheduled according to the multi-cloud vendor domain name list, ensuring that the business rules of more dimensional control can be applied to each user's traffic acceleration scheduling in a timely manner, thereby meeting more complex multi-dimensional control needs. This personalized verification mechanism based on configuration data allows real-time adjustment to respond to changing network conditions and user needs, achieving highly flexible and accurate traffic management, thereby meeting more fine-grained precise control needs, such as multi-dimensional control and more fine-grained precise traffic management based on different operating system types, operating system versions, user behavior patterns and other factors. Therefore, it effectively ensures that each user's traffic can be handled in the most appropriate way, thereby taking into account more dimensional control and more fine-grained precise control needs.

[0041] It is understandable that the above traffic scheduling method can be applied to the client, that is, when it is run by the client, the client can accelerate the scheduling of the terminal traffic of the current user according to the multi-cloud vendor domain name list instead of waiting for the DNS cache to be updated, thereby reducing the cache impact of multi-layer DNS services (such as LocalDNS, operator DNS) and improving the real-time effectiveness of the domain name in the traffic scheduling process. Since the process of immediately accelerating the user's terminal traffic according to the multi-cloud vendor domain name list occurs in the application layer or higher-level network protocol, it is not affected by the DNS cache, so it can respond quickly to changes, such as a failure of a cloud vendor's service. At this time, it can be switched to other available cloud service providers immediately, avoiding the long delay caused by DNS cache. Furthermore, the traditional DNS resolution mechanism is limited by the TTL value, which may cause the configuration change to take effect for a long time, especially in the presence of multi-layer DNS cache (such as LocalDNS, operator DNS). However, the above traffic scheduling method can directly use the latest configuration data for traffic scheduling, reducing the dependence on DNS TTL, so that traffic scheduling can adapt to changes more flexibly and quickly.

[0042]

[0043] As an optional implementation of the above step S110, before verifying the current user according to the configuration data, the following may also be included:

[0044] Step S101: receiving configuration data from a configuration center platform, the configuration data including a plurality of configuration items, and the plurality of configuration items are used to verify the current user.

[0045] It is understandable that the configuration data on the above-mentioned configuration center platform can be manually configured and uploaded, that is, the configuration center platform can manage the configuration data used by all clients, and can also manage the multi-cloud vendor domain name list, so that the configuration data and the multi-cloud vendor domain name list can be added, modified, queried, deleted and other maintenance operations on the same configuration center platform, thereby improving the maintenance efficiency of the configuration data and the multi-cloud vendor domain name list.

[0046] The above-mentioned configuration data includes multiple configuration items. The existence of multiple configuration items here allows for more detailed and complex verification of users. For example, based on multi-dimensional attributes such as device type, operating system version, geographic location, etc., the system can provide personalized traffic scheduling and service experience based on richer user characteristics to meet the needs of different user groups.

[0047] An optional implementation of the above step S110 is, for example: the client on the electronic device can send a pull request for configuration data to the configuration center platform through the application programming interface (API) when starting or switching between the foreground and background. After receiving the pull request, the configuration center platform as a server can send the configuration data corresponding to the pull request to the electronic device. After receiving the configuration data sent by the configuration center platform, the electronic device can store or update the configuration data in the cache data of the local disk, parse multiple configuration items from the configuration data, and then use the multiple configuration items to verify the current user and / or the current user's terminal device to obtain the verification result. The client on the electronic device can first check whether the configuration item in the cache data of the local disk is invalid when requesting a configuration item next time. If it is not invalid, the configuration item can be directly obtained from the cache data of the local disk. If the configuration item in the cache data of the local disk is invalid, a pull request is sent to the configuration center platform in this case.

[0048] Optionally, when a cloud vendor's full-site acceleration service fails, the configuration items in the configuration data are immediately modified in the configuration center platform, and then the configuration data is quickly synchronized to all clients, so that the clients can adjust the traffic to other healthy service nodes. This not only improves the risk of multi-layer DNS services (such as LocalDNS, operator DNS) caching affecting the domain name to take effect too long, resulting in a large number of users being unable to use the APP normally, but also improves the system's disaster recovery capabilities and overall stability, thereby significantly improving the user experience.

[0049] As an optional implementation of the above step S120, the above multiple configuration items may include: a user blacklist, a user whitelist, a device blacklist and / or a device whitelist; the above implementation of verifying the current user according to the configuration data may include:

[0050] Step S121: If the user identification of the current user is in the user whitelist, or the terminal identification of the current user is in the device whitelist, the verification result is determined to be passed.

[0051] Optionally, for users or devices included in the whitelist, the system can directly give priority or provide special service experience, such as faster response time or higher quality of service (QoS). This personalized service strategy helps to improve the satisfaction of key user groups.

[0052] Step S122: If the user identifier of the current user is in the user blacklist, or the terminal identifier of the current user is in the device blacklist, the verification result is determined to be failed.

[0053] The implementation method of the above steps S121 to S122 is, for example: determine whether the user ID (userId) of the current user is in the user whitelist, or the terminal ID of the current user is in the device whitelist; if the user ID of the current user is in the user whitelist, or the terminal ID of the current user is in the device whitelist, then the verification result is determined to be passed. Determine whether the user ID of the current user is in the user blacklist, or the terminal ID of the current user is in the device blacklist; if the user ID of the current user is in the user blacklist, or the terminal ID of the current user is in the device blacklist, then the verification result is determined to be failed. Through a clear black and white list mechanism, the system can accurately control which users or devices are allowed to access the service and which need to be denied. This fine-grained access control greatly enhances the security of the system and can effectively prevent attacks from malicious users or infected devices. Optionally, operation and maintenance personnel can quickly adjust access rules by centrally managing black and white lists without modifying application logic or code one by one, thereby simplifying the operation and maintenance process and reducing the possibility of human error.

[0054] Optionally, the above only provides an implementation method for verifying the current user through the configuration data of the user blacklist, user whitelist, device blacklist and / or device whitelist. In fact, the configuration data may also include: volume switch, expiration time, city list, province list, country list, operator list, device system type, device manufacturer, device system version, device ROM version, network type, service interface path blacklist, etc. In the specific practice, the current user may also be verified based on these configuration data. Therefore, the control multi-dimensionality and precision of the verification may be set according to the specific situation. The implementation method here should not be understood as limiting the scope and usage of the configuration data.

[0055] As an optional implementation of the above step S130, the above implementation of accelerating the terminal traffic of the current user according to the multi-cloud vendor domain name list may include:

[0056] Step S131: Select a valid vendor domain name from the multi-cloud vendor domain name list.

[0057] The effective manufacturer domain name refers to the manufacturer domain name that you want to use. For example, after the electronic device obtains the multi-cloud manufacturer domain name list and the weight parameters of the multi-cloud manufacturer domain name list, it can calculate the effective range of each manufacturer domain name according to the list order and weight parameters, and use the random number generated by the client (generated when the client starts, cached to the local disk, and no need to be regenerated later) to hit the range, and select a manufacturer domain name as the effective manufacturer domain name of the current user according to the range hit by the random number.

[0058] Step S132: Use the valid manufacturer domain name to accelerate the scheduling of the terminal traffic of the current user.

[0059] As an optional implementation of the above step S131, the above implementation of selecting a valid vendor domain name from the multi-cloud vendor domain name list may include:

[0060] Step S131a: Obtain weight parameters of the multi-cloud vendor domain name list.

[0061] The weight parameter of the multi-cloud vendor domain name list can be in XML format or JSON format. Here, the JSON format is as follows: "hostConfigs":

[0062] [{"host":"app.dcdnA.com", / / Manufacturer A

[0063] "rate":98, / / weight parameter of manufacturer A},

[0064] {"host":"app.dcdnB.com", / / Manufacturer B

[0065] "rate":1, / / weight parameter of manufacturer B},

[0066] {"host":"app.dcdnC.com", / / Manufacturer C

[0067] "rate":1, / / weight parameter of manufacturer C}].

[0068] Optionally, the system can adjust the weights based on factors such as real-time network conditions and user geographic location, and select the service node that is closest to the user or has the best current performance, which helps to significantly reduce latency and improve service response speed, thereby optimizing user experience. Furthermore, enterprises can set weight parameters based on the pricing strategies of each cloud service provider and give priority to more cost-effective service providers. This flexibility allows enterprises to effectively control and optimize operating costs while ensuring service quality.

[0069] Step S131b: Select a valid vendor domain name from the multi-cloud vendor domain name list according to the weight parameter.

[0070] See also Figure 2 The schematic diagram of the selection process of the effective manufacturer domain name provided by the embodiment of the present application is shown; the implementation method of the above steps S131a to S131b is, for example: assuming that the weight parameters for obtaining the domain name list of each cloud manufacturer include: the weight parameter of manufacturer A is 98, the weight parameter of manufacturer B is 1, and the weight parameter of manufacturer C is 1. First, the weight is converted to a 0-1 ratio range: sum of manufacturer weights: 98+1+1=100, the hit range of manufacturer A: [0, 0.98), 98 / 100=0.98, the hit range of manufacturer B: [0.98, 0.99), 0.98+1 / 100=0.99, the hit range of manufacturer C: [0.99, 1), 0.99+1 / 100=1. When the random number (expressed as dcdnRandom) is 0.5, the range of manufacturer A is hit. In this case, the domain name of manufacturer A can be used as the effective manufacturer domain name of the current user. Similarly, when the random number is 0.985, it hits the range of manufacturer B. In this case, the domain name of manufacturer B can be used as the effective manufacturer domain name of the current user.

[0071] Optionally, as an optional implementation of the above-mentioned step S131, the implementation method of selecting an effective vendor domain name from the multi-cloud vendor domain name list can be to dynamically select the optimal cloud vendor domain name from the multi-cloud vendor domain name list according to real-time network conditions, geographical location and other factors to ensure that users obtain the service experience with the lowest latency and the best performance. For example, selecting the service node that is closest to the user or has the smallest current load from the multi-cloud vendor domain name list can significantly improve the access speed and service response time.

[0072] As an optional implementation of the above step S131, the above implementation of using the effective manufacturer domain name to accelerate the scheduling of the terminal traffic of the current user may include:

[0073] Step S132a: intercepting the domain name system DNS resolution request of the business application used by the current user.

[0074] An implementation example of the above step S132a is as follows: the electronic device may intercept the domain name system DNS resolution request of the business application used by the current user by adding an interceptor or performing dynamic injection (such as injection using a constructor hook) through the underlying network library.

[0075] Step S132b: Use the valid manufacturer domain name to perform DNS resolution to obtain a network protocol IP address list, where the IP address list includes the IP address after content delivery network CDN acceleration.

[0076] Since the content distribution network CDN has many nodes distributed around the world, it can intelligently select the optimal service node based on the user's geographic location. This geographic redundancy not only improves the availability and stability of the service, but also ensures that high-quality service levels can be maintained even under high load conditions.

[0077] Step S132c: forwarding the IP address list to the business application, so that the business application determines the IP address list as the resolution result corresponding to the DNS resolution request.

[0078] An example of an implementation of the above steps S132b to S132c is: after the electronic device intercepts the domain name system DNS resolution request of the business application used by the current user, it can use the effective manufacturer domain name for DNS resolution. Assuming that the network protocol IP address list returned by the resolution is represented as ipListA, ipListA can be forwarded to the business application at this time, so that the business application determines ipListA as the resolution result corresponding to the DNS resolution request. After the business application determines ipListA as the resolution result corresponding to the DNS resolution request, it establishes a Transmission Control Protocol (TCP) connection according to the IP address in ipListA.

[0079] It is understandable that since most static resources can be provided by CDN edge nodes, if the current user turns on terminal traffic for accelerated scheduling, it can reduce the burden on the original site server, reduce bandwidth costs, and allow the original site to focus more on processing dynamic requests and core business logic.

[0080] See also Figure 3The structural diagram of the flow scheduling device provided in the embodiment of the present application is shown; the embodiment of the present application provides a flow scheduling device 200, including:

[0081] The configuration list acquisition module 210 is used to obtain the configuration data and multi-cloud vendor domain name list corresponding to the current user.

[0082] The verification result obtaining module 220 is used to verify the current user according to the configuration data and obtain the verification result.

[0083] The traffic acceleration scheduling module 230 is used to accelerate the terminal traffic of the current user according to the multi-cloud vendor domain name list if the verification result passes.

[0084] As an optional implementation manner of the above device, the flow scheduling device further includes:

[0085] The configuration data receiving module is used to receive configuration data from the configuration center platform. The configuration data includes: multiple configuration items, and the multiple configuration items are used to verify the current user.

[0086] As an optional implementation of the above device, multiple configuration items include: a user blacklist, a user whitelist, a device blacklist and / or a device whitelist; a verification result obtaining module includes:

[0087] The verification determination pass submodule is used to determine the verification result as passed if the user identification of the current user is in the user whitelist, or the terminal identification of the current user is in the device whitelist.

[0088] The verification determination failure submodule is used to determine the verification result as failure if the user identification of the current user is in the user blacklist, or the terminal identification of the current user is in the device blacklist.

[0089] As an optional implementation of the above device, the traffic acceleration scheduling module includes:

[0090] The effective domain name selection submodule is used to select an effective vendor domain name from the multi-cloud vendor domain name list.

[0091] The traffic acceleration scheduling submodule is used to accelerate the terminal traffic of the current user using the effective manufacturer domain name.

[0092] As an optional implementation of the above device, the effective domain name selection submodule includes:

[0093] The weight parameter acquisition unit is used to obtain the weight parameters of the multi-cloud vendor domain name list.

[0094] The effective domain name selection unit is used to select an effective vendor domain name from the multi-cloud vendor domain name list according to a weight parameter.

[0095] As an optional implementation of the above device, the traffic acceleration scheduling submodule includes:

[0096] The DNS request interception unit is used to intercept the domain name system DNS resolution request of the business application used by the current user.

[0097] The IP address obtaining unit is used to perform DNS resolution using the valid manufacturer domain name to obtain a network protocol IP address list, wherein the IP address list includes IP addresses accelerated by the content distribution network CDN.

[0098] The IP address forwarding unit is used to forward the IP address list to the business application program, so that the business application program determines the IP address list as a resolution result corresponding to the DNS resolution request.

[0099] It should be understood that the device corresponds to the above-mentioned traffic scheduling method embodiment and can execute the various steps involved in the above-mentioned method embodiment. The specific functions of the device can be found in the description above, and the detailed description is appropriately omitted here. The device includes at least one software function module that can be stored in a memory in the form of software or firmware or solidified in the operating system (OS) of the device.

[0100] See also Figure 4 The electronic device 300 provided in the embodiment of the present application includes: a processor 310 and a memory 320, wherein the memory 320 stores machine-readable instructions executable by the processor 310, and when the machine-readable instructions are executed by the processor 310, the above method is executed.

[0101] The embodiment of the present application also provides a computer-readable storage medium 330, on which a computer program is stored, and the computer program is executed by the processor 310 to execute the above method. The computer-readable storage medium 330 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, disk or optical disk.

[0102] The embodiment of the present application also provides a computer program product, including: a computer program or a computer instruction, and the computer program or the computer instruction executes the method described above when executed by a processor.

[0103] It should be noted that each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments, and the same or similar parts between the embodiments can be referred to each other. For the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0104] In several embodiments provided by the embodiments of the present application, it should be understood that the disclosed device and method can also be implemented in other ways. The device embodiments described above are only schematic, for example, the flowcharts and block diagrams in the accompanying drawings show the possible implementation architecture, functions and operations of the devices, methods and computer program products according to the multiple embodiments of the embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a part of a module, a program segment or a code, and a part of a module, a program segment or a code includes 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 box can also be different from the order of occurrence marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, which is mainly determined by the functions involved.

[0105] In addition, each functional module of each embodiment in the embodiment of the present application can be integrated together to form an independent part, or each module can exist separately, or two or more modules can be integrated to form an independent part. In addition, in the description of this specification, the description of reference terms "one embodiment", "some embodiments", "example", "specific example", "some examples", etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the embodiment of the present application. In this specification, the schematic representation of the above terms does not necessarily target the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described can be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art can combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples without contradiction.

[0106] The above description is only an optional implementation manner of the embodiments of the present application, but the protection scope of the embodiments of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or replacements within the technical scope disclosed in the embodiments of the present application, which should be covered within the protection scope of the embodiments of the present application.

Claims

1. A traffic scheduling method, characterized in that: include: Get the configuration data and multi-cloud vendor domain name list corresponding to the current user; Verify the current user according to the configuration data to obtain a verification result; If the verification result passes, the terminal traffic of the current user is accelerated and scheduled according to the multi-cloud vendor domain name list.

2. The method according to claim 1, characterized in that Before verifying the current user according to the configuration data, the method further includes: The configuration data is received, wherein the configuration data includes: a plurality of configuration items, and the plurality of configuration items are used to verify the current user.

3. The method according to claim 2, characterized in that The multiple configuration items include: a user blacklist, a user whitelist, a device blacklist and / or a device whitelist; and the verifying the current user according to the configuration data includes: If the user identifier of the current user is in the user whitelist, or the terminal identifier of the current user is in the device whitelist, determining the verification result as passed; If the user identifier of the current user is in the user blacklist, or the terminal identifier of the current user is in the device blacklist, the verification result is determined to be failed.

4. The method according to claim 2, characterized in that: The accelerating scheduling of the terminal traffic of the current user according to the multi-cloud vendor domain name list includes: Select a valid vendor domain name from the multi-cloud vendor domain name list; The effective manufacturer domain name is used to accelerate the scheduling of the terminal traffic of the current user.

5. The method according to claim 4, characterized in that The selecting a valid vendor domain name from the multi-cloud vendor domain name list includes: Obtaining weight parameters of the multi-cloud vendor domain name list; The valid vendor domain name is selected from the multi-cloud vendor domain name list according to the weight parameter.

6. The method according to claim 4, characterized in that The using the effective manufacturer domain name to accelerate the scheduling of the terminal traffic of the current user includes: Intercepting a domain name system DNS resolution request of a business application used by the current user; Perform DNS resolution using the valid manufacturer domain name to obtain a network protocol IP address list, wherein the IP address list includes IP addresses accelerated by a content delivery network (CDN); The IP address list is forwarded to the business application so that the business application determines the IP address list as a resolution result corresponding to the DNS resolution request.

7. A flow scheduling device, characterized in that: include: The configuration list acquisition module is used to obtain the configuration data corresponding to the current user and the multi-cloud vendor domain name list; A verification result obtaining module, used to verify the current user according to the configuration data and obtain a verification result; The traffic acceleration scheduling module is used to accelerate the terminal traffic of the current user according to the multi-cloud vendor domain name list if the verification result passes.

8. An electronic device, characterized in that: include: A processor and a memory, wherein the memory stores machine-readable instructions executable by the processor, and the machine-readable instructions are executed by the processor to perform any method according to claims 1 to 6.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 6 is executed.

10. A computer program product, characterized in that include: A computer program or a computer instruction, wherein when the computer program or the computer instruction is executed by a processor, the method according to any one of claims 1 to 6 is executed.