Domain name resolution scheduling method, system and intelligent resolution device
By introducing proxy forwarding module, intelligent resolution module and service dialing module into the intelligent resolution device, recursive query and service dialing module of multi-egress network interface for target domain names is solved, and the problem of inability to customize polling and scheduling in the existing technology is improved, and resource utilization efficiency and scheduling precision are improved.
Patent Information
- Application Number
- CN202211048554.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-29
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2042-08-29
AI Technical Summary
The prior art cannot perform custom polling scheduling for specific domain names, resulting in insufficient resource utilization and inability to perform refined scheduling.
By introducing proxy forwarding module, intelligent resolution module and service dialing module into the intelligent resolution device, recursive query of the target domain name is realized, multiple analysis results are cached, and target analysis results are determined through the service dialing module.
It solves the problem of insufficient scheduling resources, realizes custom polling scheduling for specific domain names, and improves resource utilization efficiency and scheduling precision.
Smart Images

Figure CN115426366B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of domain name resolution, and in particular to a domain name resolution scheduling method, system and intelligent resolution device. Background Art
[0002] Usually, the resources for intelligent scheduling are on the authorization server side. The authorization server returns the domain name resolution result to the recursive server, and the recursive server responds to the domain name query request for a specific domain name. A specific domain name can only cache the response result resources of one recursive server. Due to insufficient cache result resources, it is impossible to use the resources on the specific domain name side for refined scheduling, and it is impossible to customize polling scheduling for a specific domain name.
[0003] To address the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention
[0004] The embodiments of the present application provide a domain name resolution scheduling method, system and intelligent resolution device to at least solve the technical problem in the related art that custom polling scheduling cannot be performed for a specific domain name.
[0005] According to one aspect of an embodiment of the present application, a domain name resolution scheduling method is provided, which is applied to an intelligent resolution device, and is characterized in that the intelligent resolution device includes: a proxy forwarding module, an intelligent resolution module and a service dialing module, including: in response to a service request sent by a client requesting resolution of a target domain name, forwarding the service request to the intelligent resolution module through the proxy forwarding module; recursively querying the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results fed back by the multiple egress network interfaces, wherein the resolution results at least include an IP address obtained by resolving the target domain name; performing dialing processing on the multiple resolution results through the service dialing module to obtain a service dialing result; determining a target resolution result from the multiple resolution results based on the service dialing result, and returning the target resolution result to the client.
[0006] Optionally, the lifetime of the domain name resolution record in the proxy forwarding module is set to 0.
[0007] Optionally, a target domain name is recursively queried through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results fed back by the multiple egress network interfaces, including: determining multiple authoritative servers for resolving the target domain name through the intelligent resolution module; for each egress network interface, determining the authoritative server corresponding to the egress network interface using a smoothed round-trip time algorithm, and recursively querying the target domain name through the egress network interface to obtain the resolution result obtained by the authoritative server resolving the target domain name; and caching the obtained multiple resolution results in the intelligent resolution module.
[0008] Optionally, multiple analysis results are dialed and processed by the business dialing module to obtain business dialing results, including: multiple analysis results are dialed and processed in a preset manner by the business dialing module to obtain business dialing results corresponding to each analysis result, wherein the type of business dialing result includes one of the following: a first business dialing result for reflecting network quality, a second business dialing result for reflecting the priority of a recursive server, and a third business dialing result for reflecting the distance between a source IP address and a target object.
[0009] Optionally, a target resolution result is determined from multiple resolution results based on the service dialing result, including: polling multiple resolution results, and determining the target resolution result from the multiple resolution results based on the service dialing results corresponding to each resolution result, wherein the target resolution result has the best network quality, or the recursive server priority of the target resolution result is the highest, or the source IP address of the target resolution result is closest to the target object.
[0010] Optionally, determining a target parsing result from multiple parsing results based on the business dialing result includes: determining that a parsing result whose corresponding business dialing result among the multiple parsing results does not meet preset requirements is an unexpected parsing result; determining a target parsing result from a first parsing result set based on the business dialing result, wherein the first parsing result set includes the remaining parsing results among the multiple parsing results except the unexpected parsing results.
[0011] Optionally, before polling multiple resolution results based on the business dialing results, it also includes: obtaining a preset IP address blacklist; determining that the resolution result that matches the IP address blacklist among the multiple resolution results is an unexpected resolution result; determining the target resolution result from the first resolution result set based on the business dialing results, wherein the first resolution result set includes the remaining resolution results among the multiple resolution results except the unexpected resolution result.
[0012] According to another aspect of an embodiment of the present application, an intelligent resolution device is also provided, including: a proxy forwarding module, an intelligent resolution module and a service dialing module, wherein the proxy forwarding module is used to respond to a service request sent by a client to resolve a target domain name, and forward the service request to the intelligent resolution module; the intelligent resolution module is used to use multiple egress network interfaces to perform recursive queries on the target domain name, and obtain multiple resolution results fed back by the multiple egress network interfaces; the service dialing module is used to perform dialing processing on the multiple resolution results to obtain a service dialing result; the intelligent resolution module is also used to determine a target resolution result from the multiple resolution results based on the service dialing result, and return the target resolution result to the client.
[0013] According to another aspect of an embodiment of the present application, a domain name resolution scheduling system is also provided, including: a client, an intelligent resolution device and multiple authoritative servers, wherein the client is used to send a service request for requesting resolution of a target domain name; the intelligent resolution device is used to execute the above-mentioned domain name resolution scheduling method; and multiple authoritative servers are respectively used to resolve the target domain name to obtain multiple resolution results.
[0014] According to another aspect of an embodiment of the present application, a non-volatile storage medium is further provided, which includes a stored program, wherein when the program is running, the device where the non-volatile storage medium is located is controlled to execute the above-mentioned domain name resolution scheduling method.
[0015] In an embodiment of the present application, in response to a service request sent by a client requesting resolution of a target domain name, the service request is forwarded to an intelligent resolution module through a proxy forwarding module; a recursive query is performed on the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results fed back by multiple egress network interfaces, and the resolution results at least include an IP address obtained by resolving the target domain name; a dialing test is performed on multiple resolution results through a service dialing test module to obtain a service dialing test result; a target resolution result is determined from multiple resolution results based on the service dialing test result, and the target resolution result is returned to the client. Among them, recursive queries are performed on the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results, which solves the problem of insufficient scheduling resources, thereby solving the technical problem in related technologies that custom polling scheduling cannot be performed for specific domain names. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0017] Figure 1 It is a flowchart of an optional domain name resolution scheduling method according to an embodiment of the present application;
[0018] Figure 2 It is a flowchart of a domain name resolution scheduling method according to an embodiment of the present application;
[0019] Figure 3 It is a flowchart of an optional domain name resolution scheduling method according to an embodiment of the present application;
[0020] Figure 4a , 4b is a schematic diagram of an optional domain name polling process according to an embodiment of the present application;
[0021] Figure 5is a structural schematic diagram of an intelligent analysis device according to an embodiment of the present application;
[0022] Figure 6 It is a structural diagram of a domain name resolution scheduling system according to an embodiment of the present application. DETAILED DESCRIPTION
[0023] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.
[0024] It should be noted that the terms "first", "second", etc. in the specification, claims and drawings of the present application are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0025] In order to better understand the embodiments of the present application, some nouns or terms that appear in the description of the embodiments of the present application are first translated and explained as follows:
[0026] TTL (Time To Live): refers to the retention time of a domain name resolution record in the domain name server. It can be understood that when the domain name server in each region receives a resolution request, it will send a resolution request to the authoritative domain name server to obtain the resolution record; after obtaining the resolution record, the resolution record will be saved for a period of time in the cache server (i.e., recursive domain name server) in each region. During this period of time, if the resolution request for this domain name is received again, the domain name server will no longer send a resolution request to the authoritative domain name server, but directly return the resolution record just obtained. The time this resolution record is retained on the cache server (i.e., recursive domain name server) in each region is the survival time value.
[0027] DNS resolution: refers to the process of translating a domain name into an IP address. Generally, DNS resolution uses a recursive resolution method, which requires the use of a recursive server and an authoritative server to complete the entire process of resolving a specific domain name.
[0028] Recursive server: When the client initiates an Internet access request, if it still does not obtain the corresponding resolution record after querying various cache records on the local machine, it will initiate a query request to the local domain name server. The local domain name server will first query the local cache. If there is a corresponding resolution record, it will be directly returned to the client. If not, it will perform recursive queries on behalf of the client to the root domain name server, top-level domain name server, second-level domain name server, etc., and finally find the authoritative server corresponding to the domain name to obtain the corresponding resolution record and return it to the client, and save the record to the local cache. When the client initiates a query request again within the lifetime value, the local domain name server will directly send the result of the resolution record to the client, and the local domain name server does not need to initiate a query request to the authoritative domain name server again. During the entire domain name query process, except for the initial Internet access request to the local domain name server, the rest of the time is recursive query by the local domain name server. The local domain name server here is the recursive server.
[0029] Therefore, recursive resolution servers are usually set up by operators to help network users respond to authoritative server query resolution results. Recursive servers are responsible for domain name queries of network access terminals. It can be generally understood as the IP address of the domain name server configured on a computer or mobile phone.
[0030] Authoritative server: For a specific domain name, the domain name must be submitted to the domain name server for resolution in order to point the domain name to the corresponding IP address, so that users can access the corresponding site through the domain name. The server responsible for the final resolution of the domain name in this process is the authoritative server. Unlike the recursive server, the authoritative server is not responsible for helping the client to perform recursive queries and return resolution records. It is mainly responsible for resolving domain names. The authoritative server may not be the same for different specific domain names, and the authoritative server only resolves the specific domain names it owns, and cannot resolve domain names it is not responsible for. Usually, some larger companies may build authoritative servers by themselves. For general companies, the domain names will be delivered to more well-known authoritative service providers.
[0031] Therefore, authoritative resolution servers are usually built by enterprises themselves or by domain name service providers and are provided to enterprises and individuals who purchase domain names to facilitate their resolution and management of domain names.
[0032] Dial test: refers to the test function of the call center unified communications converged communications professional information network system. This process simulates the user's business operation and obtains the performance data and operation result data of the business operation process.
[0033] SRTT (Smoothed Round Trip Time): The smoothed RTT (Round-Trip Time) value, where RTT represents the time from when the sender sends data to when the sender receives confirmation from the receiver. RTT is mainly determined by three parts: link propagation time, receiving system processing time, and cache queuing time and processing time. Changes in RTT values reflect changes in network congestion to a certain extent.
[0034] Example 1
[0035] Intelligent scheduling mainly balances the load between multiple nodes. Specifically, Figure 1 A flowchart of an optional domain name resolution scheduling method is shown, including: first, a client initiates a domain name resolution request; then the recursive server performs a recursive query to determine the authoritative server and the authoritative server domain name, the authoritative server returns the resolution result to the recursive server, the recursive server responds to the domain name query request of the specific domain name, and returns the resolution result, wherein different recursive servers receive different resolution result response times, the response time for recursive server 1 to receive the resolution result is 10ms, the response time for recursive server 2 to receive the resolution result is 20ms, and the response time for recursive server 3 to receive the resolution result is 30ms; then the specific domain name only caches the resolution result result1 of recursive server 1 according to the order of the returned results; finally, the resolution result result1 is fed back to the responding user.
[0036] The above process has the following problems: (1) Due to the small number of cached resolution result resources, it is impossible to use the relevant resources of a specific domain name for fine-grained scheduling; (2) The domain name scheduling granularity is generally not fine enough, and it is impossible to cache more scheduling resources on a dedicated intelligent resolution device for a specific domain name; (3) Domain name polling scheduling lacks business health checks. If a server goes down, the domain name server cannot perceive it, causing users to continue to access the faulty server.
[0037] In summary, the related domain name resolution scheduling method cannot perform customized polling scheduling for a specific domain name.
[0038] In order to solve the above problems, the embodiments of the present application are Figure 1Based on the domain name resolution scheduling method shown, domain name polling is optimized and improved, and a domain name resolution scheduling method is provided. The method can be applied to an intelligent resolution device, wherein the intelligent resolution device includes: an agent forwarding module, an intelligent resolution module, and a service dialing module. Specifically, the domain name resolution scheduling method proposed in the embodiment of the present application can recursively query the domain name through multiple egress network interfaces of the intelligent resolution module, cache multiple resolution results of multiple egress network interfaces, and determine the target resolution result from the multiple resolution results through the service dialing module.
[0039] It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and that, although a logical order is shown in the flowcharts, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0040] Figure 2 is a flow chart of an optional domain name resolution scheduling method according to an embodiment of the present application, such as Figure 2 As shown, the method at least includes steps S202-S208, wherein:
[0041] Step S202, in response to a service request sent by the client to resolve a target domain name, the service request is forwarded to the intelligent resolution module through the proxy forwarding module.
[0042] The client may be any electronic product that can interact with the user through a keyboard, touchpad, or handwriting, such as a PC, PDA, smart phone, wearable device, PPC or tablet computer.
[0043] Optionally, the lifetime of the domain name resolution record in the proxy forwarding module is set to 0.
[0044] Figure 3 A flowchart of another optional domain name resolution scheduling method is shown. In order to ensure that the intelligent resolution module can perform recursive queries on the specific domain name www.test.com in real time, after obtaining the service request for the specific domain name www.test.com, the TTL (Time To Live) value of the resolution record for the specific domain name www.test.com by the proxy forwarding module is first set to 0, and then the service request is forwarded to the intelligent resolution module through the proxy forwarding module for real-time resolution.
[0045] Step S204, recursively query the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results fed back by the multiple egress network interfaces, wherein the resolution results at least include an IP address obtained by resolving the target domain name.
[0046] Among them, the multiple network interfaces can be telecommunications network interfaces, mobile network interfaces or Unicom network interfaces.
[0047] Optionally, multiple authoritative servers for resolving the target domain name are determined through an intelligent resolution module; for each egress network interface, the authoritative server corresponding to the egress network interface is determined using a smoothed round-trip time algorithm, and a recursive query is performed on the target domain name through the egress network interface to obtain a resolution result obtained by the authoritative server for resolving the target domain name; the multiple resolution results obtained are cached in the intelligent resolution module.
[0048] Combination Figure 3 The above process is explained. Specifically, the export network interface includes: export network interface 1, export network interface 2 and export network interface 3. First, the authoritative server used to resolve the specific domain name www.test.com is determined by the intelligent resolution module, and the authoritative servers include: authoritative server A, authoritative server B, authoritative server C and authoritative server D; then the SRTT algorithm (i.e., smooth round-trip time algorithm) is used to determine the authoritative server B corresponding to the export network interface 1, and the response time of receiving the resolution record is 10ms, the authoritative server C corresponding to the export network interface 2, and the response time of receiving the resolution record is 20ms, and the authoritative server D corresponding to the export network interface 3, and the response time of receiving the resolution record is 30ms, and recursive query is performed on the specific domain name www.test.com through the export network interfaces 1-3, then the authoritative server B resolves the specific domain name www.test.com to obtain the resolution result result1, the authoritative server C resolves the specific domain name www.test.com to obtain the resolution result result2, and the authoritative server D resolves the specific domain name www.test.com to obtain the resolution result result3, and the three resolution results are cached in the intelligent resolution module.
[0049] Step S206: Perform dialing test processing on the multiple analysis results through the service dialing test module to obtain a service dialing test result.
[0050] Optionally, a plurality of parsing results are dialed in a preset manner by a service dialing module to obtain service dialing results corresponding to each parsing result, wherein the type of service dialing result includes one of the following: a first service dialing result for reflecting network quality, a second service dialing result for reflecting the priority of a recursive server, and a third service dialing result for reflecting the distance between a source IP address and a target object.
[0051] Among them, the service dialing test results obtained by using the service dialing test module can be used as an auxiliary strategy for intelligent polling. The above service dialing test results can be dialing test results reflecting network quality, dialing test results reflecting recursive servers, or dialing test results reflecting the distance between the source IP address and the target user.
[0052] Among them, the network quality dialing test result is obtained through the network quality dialing test method. The network quality dialing test method is to configure the dialing test strategy to check whether the corresponding service port of the host and the specific domain name server can resolve the domain name normally, so as to determine the availability of devices, links, services, etc. on the network; the recursive sorting dialing test result is obtained through the recursive sorting dialing test method. The recursive sorting dialing test method is to customize the priority of the recursive server and determine the sorting of the dialing test results of the recursive server according to the priority relationship; the user proximity dialing test result, that is, the dialing test result of the distance between the source IP address and the target user, is to use the system recursive source IP address function to feed back the cached multiple resolution results to the target user according to the distance of the source IP address.
[0053] Step S208, determining a target analysis result from the multiple analysis results according to the service dialing result, and returning the target analysis result to the client.
[0054] Optionally, multiple resolution results are polled, and a target resolution result is determined from the multiple resolution results based on the service dialing results corresponding to each resolution result, wherein the target resolution result has the best network quality, or the recursive server priority of the target resolution result is the highest, or the source IP address of the target resolution result is closest to the target object.
[0055] Specifically, based on the service dialing results corresponding to each resolution result, the resolution result with the highest availability of equipment, links, services, etc. on the network can be prioritized as the target resolution result from multiple resolution results; the resolution result returned by the recursive server with the highest priority can be prioritized as the target resolution result from multiple resolution results; and the resolution result with the closest source IP address among multiple cached resolution results can be prioritized as the target resolution result.
[0056] As an optional implementation, before polling multiple resolution results based on the service dialing results, a preset IP address blacklist can be obtained; the resolution results that match the IP address blacklist among the multiple resolution results are determined to be unexpected resolution results; and the target resolution results are determined from the first resolution result set based on the service dialing results, wherein the first resolution result set includes the remaining resolution results among the multiple resolution results except the unexpected resolution results.
[0057] Optionally, determine that the corresponding business dialing result among multiple analysis results does not meet the preset requirements as an unexpected analysis result; determine the target analysis result from the first analysis result set based on the business dialing result, wherein the first analysis result set includes the remaining analysis results among the multiple analysis results except the unexpected analysis result.
[0058] For example, Figure 4a ,4b A schematic diagram of an optional domain name polling process is shown, wherein: Figure 4a If there is more than one resolution result record in the response result, the first resolution result will be recorded in these multiple resolution results for polling. If a server goes down, the domain name server cannot perceive the failure, so that users continue to access the server, resulting in multiple resolution results containing unexpected resolution results. Figure 4b When there is more than one resolution result record in the response result, firstly, according to the preset IP address blacklist library, the resolution result matching the IP address blacklist 1.1.1.2 is determined as an unexpected resolution result, so that when a custom poll is performed on the resolution result of a specific domain name, the unexpected resolution result is not placed in the first place.
[0059] In an embodiment of the present application, in response to a service request sent by a client requesting resolution of a target domain name, the service request is forwarded to an intelligent resolution module through a proxy forwarding module; a recursive query is performed on the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results fed back by multiple egress network interfaces, and the resolution results at least include an IP address obtained by resolving the target domain name; a dialing test is performed on multiple resolution results through a service dialing test module to obtain a service dialing test result; a target resolution result is determined from multiple resolution results based on the service dialing test result, and the target resolution result is returned to the client. Among them, recursive queries are performed on the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results, which solves the problem of insufficient scheduling resources, thereby solving the technical problem in related technologies that custom polling scheduling cannot be performed for specific domain names.
[0060] Example 2
[0061] According to an embodiment of the present application, an intelligent resolution device for implementing the above-mentioned domain name resolution scheduling method is also provided, such as Figure 5 As shown, the intelligent analysis device 50 at least includes a proxy forwarding module 51, an intelligent analysis module 52 and a service dialing module 53, wherein:
[0062] The proxy forwarding module 51 is used to respond to the service request for resolving the target domain name sent by the client and forward the service request to the intelligent resolution module.
[0063] Optionally, the lifetime of the domain name resolution record in the proxy forwarding module 51 is set to 0.
[0064] In order to ensure that the intelligent resolution module 50 can perform recursive queries on the specific domain name in real time, after obtaining the service request for the specific domain name, the TTL value (i.e., lifetime) of the resolution record for the specific domain name www.test.com by the proxy forwarding module 51 is first set to 0, and then the service request is forwarded to the intelligent resolution module 52 through the proxy forwarding module 51 for real-time resolution.
[0065] The intelligent resolution module 52 is used to perform recursive query on the target domain name using multiple egress network interfaces to obtain multiple resolution results fed back by the multiple egress network interfaces.
[0066] Among them, the multiple network interfaces can be telecommunications network interfaces, mobile network interfaces or Unicom network interfaces.
[0067] Optionally, multiple authoritative servers for resolving the target domain name are determined through the intelligent resolution module 52; for each egress network interface, the authoritative server corresponding to the egress network interface is determined using a smoothed round-trip time algorithm, and a recursive query is performed on the target domain name through the egress network interface to obtain a resolution result obtained by the authoritative server for resolving the target domain name; the multiple resolution results obtained are cached in the intelligent resolution module.
[0068] The service dialing test module 53 is used to perform dialing test processing on the multiple analysis results to obtain the service dialing test result.
[0069] Optionally, the business dialing module 53 performs dialing processing on multiple analysis results in a preset manner to obtain business dialing results corresponding to each analysis result, wherein the type of business dialing result includes one of the following: a first business dialing result for reflecting network quality, a second business dialing result for reflecting the priority of a recursive server, and a third business dialing result for reflecting the distance between a source IP address and a target object.
[0070] The service dialing test result obtained by the service dialing test module 53 can be used as an auxiliary strategy for intelligent polling. The service dialing test result can be a dialing test result reflecting network quality, a dialing test result reflecting a recursive server, or a dialing test result reflecting the distance between the source IP address and the target user.
[0071] Among them, the network quality dialing test result is obtained through the network quality dialing test method. The network quality dialing test method is to configure the dialing test strategy to check whether the corresponding service port of the host and the specific domain name server can resolve the domain name normally, so as to determine the availability of devices, links, services, etc. on the network; the recursive sorting dialing test result is obtained through the recursive sorting dialing test method. The recursive sorting dialing test method is to customize the priority of the recursive server and determine the sorting of the dialing test results of the recursive server according to the priority relationship; the user proximity dialing test result, that is, the dialing test result of the distance between the source IP address and the target user, is to use the system recursive source IP address function to feed back the cached multiple resolution results to the target user according to the distance of the source IP address.
[0072] The intelligent analysis module 52 is used to determine a target analysis result from multiple analysis results according to the service dialing result, and return the target analysis result to the client.
[0073] Among them, the network quality dialing test result is obtained through the network quality dialing test method. The network quality dialing test method is to configure the dialing test strategy to check whether the corresponding service port of the host and the specific domain name server can resolve the domain name normally, so as to determine the availability of the equipment, links, services, etc. on the network; the recursive sorting dialing test result is obtained through the recursive sorting dialing test method. The recursive sorting dialing test method is to customize the priority of the recursive server and determine the sorting of the dialing test results of the recursive server according to the priority relationship; the user proximity dialing test result, that is, the dialing test result of the distance between the source IP address and the target user, is to use the system's recursive source IP address function to feed back the cached multiple resolution results to the target user according to the distance of the source IP address.
[0074] Optionally, multiple resolution results are polled, and a target resolution result is determined from the multiple resolution results based on the service dialing results corresponding to each resolution result, wherein the target resolution result has the best network quality, or the recursive server priority of the target resolution result is the highest, or the source IP address of the target resolution result is closest to the target object.
[0075] Specifically, based on the service dialing results corresponding to each resolution result, the resolution result with the highest availability of equipment, links, services, etc. on the network can be prioritized as the target resolution result from multiple resolution results; the resolution result returned by the recursive server with the highest priority can be prioritized as the target resolution result from multiple resolution results; and the resolution result with the closest source IP address among multiple cached resolution results can be prioritized as the target resolution result.
[0076] As an optional implementation, before polling multiple resolution results based on the service dialing results, a preset IP address blacklist can be obtained; the resolution results that match the IP address blacklist among the multiple resolution results are determined to be unexpected resolution results; and the target resolution results are determined from the first resolution result set based on the service dialing results, wherein the first resolution result set includes the remaining resolution results among the multiple resolution results except the unexpected resolution results.
[0077] Optionally, determine that the corresponding business dialing result among multiple analysis results does not meet the preset requirements as an unexpected analysis result; determine the target analysis result from the first analysis result set based on the business dialing result, wherein the first analysis result set includes the remaining analysis results among the multiple analysis results except the unexpected analysis result.
[0078] It should be noted that each module in the intelligent resolution device in the embodiment of the present application corresponds one by one to each implementation step of the domain name resolution scheduling method in Example 1. Since a detailed description has been given in Example 1, some details not reflected in this embodiment can be referred to Example 1 and will not be repeated here.
[0079] Example 3
[0080] According to an embodiment of the present application, a domain name resolution scheduling system is also provided. Figure 6 As shown, the domain name resolution scheduling system includes: a client 61, multiple authoritative servers 62 and an intelligent resolution device 63, wherein:
[0081] Client 61, used to send a service request for resolving a target domain name;
[0082] The client 61 may be any electronic product that can interact with the user via a keyboard, touchpad, or handwriting, such as a PC, PDA, smart phone, wearable device, PPC, or tablet computer.
[0083] Multiple authoritative servers 62 are used to resolve the target domain name and obtain multiple resolution results;
[0084] The intelligent resolution device 63 is used to execute the domain name resolution scheduling method of Example 1.
[0085] It should be noted that each module in the intelligent resolution device in the embodiment of the present application corresponds one by one to each implementation step of the domain name resolution scheduling method in Example 1. Since a detailed description has been given in Example 1, some details not reflected in this embodiment can be referred to Example 1 and will not be repeated here.
[0086] Example 4
[0087] According to an embodiment of the present application, a non-volatile storage medium is also provided, which includes a stored program, wherein when the program is running, the device where the non-volatile storage medium is located is controlled to execute the domain name resolution scheduling method in Example 1.
[0088] Optionally, the following steps are executed when the program is running: in response to a service request sent by a client requesting resolution of a target domain name, the service request is forwarded to an intelligent resolution module through a proxy forwarding module; a recursive query is performed on the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results fed back by multiple egress network interfaces, wherein the resolution results at least include an IP address obtained by resolving the target domain name; a dialing test is performed on the multiple resolution results through a business dialing test module to obtain a business dialing test result; a target resolution result is determined from the multiple resolution results based on the business dialing test result, and the target resolution result is returned to the client.
[0089] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.
[0090] In the above embodiments of the present application, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.
[0091] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.
[0092] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed over multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0093] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0094] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or all or part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, server or network device, etc.) to perform all or part of the steps of each embodiment method of the present application. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk, etc. Various media that can store program codes.
[0095] The above are only preferred implementations of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.
Claims
1. A domain name resolution scheduling method, applied to an intelligent resolution device, characterized in that: The intelligent analysis device includes: an agent forwarding module, an intelligent analysis module and a service dialing module, and the method includes: In response to a service request sent by a client requesting resolution of a target domain name, forwarding the service request to the intelligent resolution module through the proxy forwarding module; Recursively query the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results fed back by the multiple egress network interfaces, wherein the resolution results at least include an IP address obtained by resolving the target domain name; Performing dialing test processing on the multiple parsing results by the service dialing test module to obtain a service dialing test result; Determine a target parsing result from the multiple parsing results according to the service dialing result, and return the target parsing result to the client; Among them, determining a target parsing result from the multiple parsing results based on the business dialing result includes: determining that a parsing result corresponding to the business dialing result in the multiple parsing results that does not meet the preset requirements is an unexpected parsing result, or obtaining a preset IP address blacklist, and determining that a parsing result in the multiple parsing results that matches the IP address blacklist is an unexpected parsing result; determining a first parsing result set including the remaining parsing results in the multiple parsing results except the unexpected parsing result, and determining the target parsing result from the first parsing result set based on the business dialing result.
2. The method according to claim 1, characterized in that The lifetime of the domain name resolution record in the proxy forwarding module is set to 0.
3. The method according to claim 1, characterized in that Recursively querying the target domain name through multiple egress network interfaces of the intelligent resolution module to obtain multiple resolution results fed back by the multiple egress network interfaces, including: Determining multiple authoritative servers for resolving the target domain name through the intelligent resolution module; For each of the egress network interfaces, determine the authoritative server corresponding to the egress network interface using a smoothed round trip time algorithm, perform a recursive query on the target domain name through the egress network interface, and obtain a resolution result obtained by the authoritative server resolving the target domain name; The obtained multiple parsing results are cached in the intelligent parsing module.
4. The method according to claim 1, characterized in that: The service dialing test module performs dialing test processing on the multiple parsing results to obtain service dialing test results, including: The service dialing module performs dialing processing on the multiple analysis results in a preset manner to obtain the service dialing results corresponding to each of the analysis results, wherein the type of the service dialing result includes one of the following: a first service dialing result for reflecting network quality, a second service dialing result for reflecting the priority of a recursive server, and a third service dialing result for reflecting the distance between a source IP address and a target object.
5. The method according to claim 4, characterized in that Determining a target parsing result from the multiple parsing results according to the service dialing result includes: Poll the multiple resolution results, and determine the target resolution result from the multiple resolution results according to the service dialing results corresponding to each of the resolution results, wherein the target resolution result has the best network quality, or the recursive server priority of the target resolution result is the highest, or the source IP address of the target resolution result is closest to the target object.
6. An intelligent analysis device, characterized in that: include: Proxy forwarding module, intelligent analysis module and business dialing module, among which, The proxy forwarding module is used to respond to the service request sent by the client requesting to resolve the target domain name, and forward the service request to the intelligent resolution module; The intelligent resolution module is used to perform a recursive query on the target domain name using multiple egress network interfaces to obtain multiple resolution results fed back by the multiple egress network interfaces; A service dialing test module, used for performing dialing test processing on the multiple analysis results to obtain a service dialing test result; The intelligent analysis module is further used to determine a target analysis result from the multiple analysis results according to the service dialing result, and return the target analysis result to the client; Among them, determining a target parsing result from the multiple parsing results based on the business dialing result includes: determining that a parsing result corresponding to the business dialing result in the multiple parsing results that does not meet the preset requirements is an unexpected parsing result, or obtaining a preset IP address blacklist, and determining that a parsing result in the multiple parsing results that matches the IP address blacklist is an unexpected parsing result; determining a first parsing result set including the remaining parsing results in the multiple parsing results except the unexpected parsing result, and determining the target parsing result from the first parsing result set based on the business dialing result.
7. A domain name resolution scheduling system, characterized in that: include: Client, intelligent parsing device and multiple authoritative servers, among which, The client is used to send a service request for resolving a target domain name; The intelligent resolution device is used to execute the domain name resolution scheduling method according to any one of claims 1 to 5; The multiple authoritative servers are respectively used to resolve the target domain name to obtain multiple resolution results.
8. A non-volatile storage medium, characterized in that: The non-volatile storage medium includes a stored program, wherein when the program is running, the device where the non-volatile storage medium is located is controlled to execute the domain name resolution scheduling method described in any one of claims 1 to 5.
Citation Information
Patent Citations
Intelligent analysis method of domain name system (DNS) and poking measurement device and system
CN103167044A
System and method for achieving optimal outlet route selection based on service quality dial testing
CN104320335A
Domain name resolution caching method, DNS server and computer readable storage medium
CN113905017A