Domain name resolution method, device and equipment, and storage medium

CN116743699BActive Publication Date: 2026-09-22TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210202539.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-03
Publication Date
2026-09-22
Estimated Expiration
2042-03-03

AI Technical Summary

Technical Problem

任务的获取需要在App运行时,单独启动一个线程调用任务指令服务器接口,额外多一次的HTTP资源请求,整个任务获取过程在App启动后的运行时进行,耗费额外的资源

Benefits of technology

[0021]本申请接收终端响应于应用程序启动指令,发送的域名解析请求;所述域名解析请求携带接口版本号、所述应用程序的应用标识信息以及域名列表;基于所述接口版本号确定所述域名列表的解析协议;根据所述解析协议对所述域名列表进行解析,得到域名解析结果;根据所述应用标识信息,确定目标任务;向所述终端发送请求处理结果,所述请求处理结果包括所述域名解析结果以及任务执行指令,所述任务执行指令携带所述目标任务;以使所述终端基于所述域名解析结果运行所述应用程序,以及基于所述任务执行指令执行所述目标任务。本申请在接收到域名解析请求之后,即对域名列表中域名进行解析,并根据应用标识信息确定对应的目标任务;实现了基于终端的一次请求,对域名列表中域名进行一次性解析,同时确定终端的目标任务;提高了域名的解析效率以及向终端发布目标任务的效率,并减少了任务发布过程中的接口调用。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116743699B_ABST
    Figure CN116743699B_ABST
Patent Text Reader

Abstract

The application discloses a domain name resolution method and device, equipment and a storage medium, which can be applied to various scenes such as cloud technology, artificial intelligence, intelligent transportation and Internet of Vehicles, and the method comprises the steps of receiving a domain name resolution request sent by a terminal in response to an application program starting instruction; determining a resolution protocol of a domain name list based on an interface version number; resolving the domain name list according to the resolution protocol to obtain a domain name resolution result; determining a target task according to application identification information; sending a request processing result to the terminal to enable the terminal to run the application program based on the domain name resolution result and execute the target task based on a task execution instruction. The application improves the resolution efficiency of the domain name and the efficiency of publishing the target task to the terminal, and reduces the interface call in the task publishing process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a domain name resolution method, apparatus, device, and storage medium. Background Technology

[0002] In related technologies, mobile app task instruction distribution solutions typically involve querying a separate task distribution service interface after the app launches and completes various initialization steps. This separate service is usually custom-developed and maintained by each business unit, resulting in a lack of universal application for the proprietary interaction flow. Task acquisition requires starting a separate thread to call the task instruction server interface during app runtime, adding an extra HTTP resource request. The entire task acquisition process occurs during app startup, consuming additional resources.

[0003] Therefore, it is necessary to provide a domain name resolution method, apparatus, device, and storage medium that can improve the efficiency of domain name resolution and the efficiency of delivering target tasks to terminals. Summary of the Invention

[0004] This application provides a domain name resolution method, apparatus, device, and storage medium that can improve the efficiency of domain name resolution and the efficiency of delivering target tasks to terminals.

[0005] On the one hand, this application provides a domain name resolution method, the method comprising:

[0006] The receiving terminal sends a domain name resolution request in response to the application launch command; the domain name resolution request carries the interface version number, the application identification information of the application, and a list of domain names;

[0007] The resolution protocol of the domain name list is determined based on the interface version number;

[0008] The domain name list is parsed according to the resolution protocol to obtain the domain name resolution result;

[0009] The target task is determined based on the application identification information;

[0010] A request processing result is sent to the terminal, the request processing result including the domain name resolution result and a task execution instruction, the task execution instruction carrying the target task; so that the terminal runs the application based on the domain name resolution result and executes the target task based on the task execution instruction.

[0011] On the other hand, a domain name resolution device is provided, the device comprising:

[0012] The request receiving module is used to receive a domain name resolution request sent by the terminal in response to the application launch command; the domain name resolution request carries the interface version number, the application identification information of the application, and a list of domain names;

[0013] A resolution protocol determination module is used to determine the resolution protocol of the domain name list based on the interface version number;

[0014] The domain name resolution module is used to resolve the domain name list according to the resolution protocol to obtain the domain name resolution result;

[0015] The target task determination module is used to determine the target task based on the application identification information;

[0016] The result sending module is used to send a request processing result to the terminal. The request processing result includes the domain name resolution result and a task execution instruction. The task execution instruction carries the target task, so that the terminal runs the application based on the domain name resolution result and executes the target task based on the task execution instruction.

[0017] On the other hand, a domain name resolution device is provided, the device including a processor and a memory, the memory storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the domain name resolution method as described above.

[0018] On the other hand, a computer storage medium is provided that stores at least one instruction or at least one program, which is loaded and executed by a processor to implement the domain name resolution method as described above.

[0019] On the other hand, a computer program product or computer program is provided, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, executes the computer instructions, and causes the computer device to perform the domain name resolution method as described above.

[0020] The domain name resolution method, apparatus, device, and storage medium provided in this application have the following technical effects:

[0021] This application receives a domain name resolution request sent by a terminal in response to an application launch command. The domain name resolution request carries an interface version number, the application's application identifier information, and a list of domain names. Based on the interface version number, a resolution protocol for the domain name list is determined. The domain name list is resolved according to the resolution protocol to obtain a domain name resolution result. A target task is determined based on the application identifier information. A request processing result is sent to the terminal, including the domain name resolution result and a task execution instruction, the task execution instruction carrying the target task. This enables the terminal to run the application based on the domain name resolution result and execute the target task based on the task execution instruction. Upon receiving a domain name resolution request, this application resolves the domain names in the domain name list and determines the corresponding target task based on the application identifier information. This achieves one-time resolution of the domain names in the domain name list based on a single request from the terminal, simultaneously determining the terminal's target task. This improves the efficiency of domain name resolution and the efficiency of publishing target tasks to the terminal, while reducing interface calls during task publishing. Attached Figure Description

[0022] To more clearly illustrate the technical solutions and advantages in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0023] Figure 1 This is a schematic diagram of a domain name resolution system provided in an embodiment of this application;

[0024] Figure 2 This is a flowchart illustrating a domain name resolution method provided in an embodiment of this application;

[0025] Figure 3 This is a flowchart illustrating a method for resolving a domain name list provided in an embodiment of this application;

[0026] Figure 4 This is a flowchart illustrating a method for updating a cache database according to an embodiment of this application;

[0027] Figure 5 This is a flowchart illustrating a method for determining a target task provided in an embodiment of this application;

[0028] Figure 6 This is a flowchart illustrating a method for generating task execution instructions provided in an embodiment of this application;

[0029] Figure 7This is the data protocol returned by the interface call result provided in the embodiments of this application;

[0030] Figure 8 This is a schematic diagram of another domain name resolution system provided in an embodiment of this application;

[0031] Figure 9 This is a flowchart illustrating another domain name resolution method provided in an embodiment of this application;

[0032] Figure 10 This is a schematic diagram of the structure of a domain name resolution device provided in an embodiment of this application;

[0033] Figure 11 This is a schematic diagram of the structure of a server provided in an embodiment of this application. Detailed Implementation

[0034] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.

[0035] In related technologies, domain name resolution typically uses the DNS protocol to request the LocalDNS to obtain the IP address of the domain name. However, the DNS protocol cannot support batch domain name resolution, so if the app has N domain names, it needs to make N requests. Task retrieval requires starting a separate thread to call the task instruction server interface while the app is running, resulting in an additional HTTP resource request. The entire task retrieval process occurs during app startup, consuming extra resources.

[0036] This application provides a domain name resolution method, apparatus, device, and storage medium, which can improve the efficiency of domain name resolution. During the domain name resolution process, the target task is determined, and the target task is simultaneously published to the terminal while returning the domain name resolution result, reducing the number of interface calls and terminal requests. Specifically, the domain name resolution method of this application can be executed by a computer device, which can be a terminal or a server, etc. This invention can be applied to various scenarios, including but not limited to cloud technology, artificial intelligence, smart transportation, and assisted driving.

[0037] First, some of the nouns or terms that appear in the description of the embodiments of this application are explained as follows:

[0038] HTTPDNS, a domain name resolution system, provides traditional DNS domain name resolution services based on the HTTP protocol. In principle, HTTPDNS replaces the DNS protocol with the HTTP protocol for domain name resolution. By bypassing the ISP's LocalDNS, user requests to resolve domain names are directly transmitted to the HTTPDNS server's IP address via the HTTP protocol. Users' domain name resolution requests on the client side will not encounter domain name resolution errors. Traditional HTTPDNS only provides the function of domain name resolution. DNS: The Domain Name System (DNS) is a service on the Internet. As a distributed database that maps domain names to IP addresses, it makes it easier for people to access the Internet. DNS uses UDP port 53. Currently, the length limit for each level of domain name is 63 characters, and the total length of a domain name cannot exceed 253 characters.

[0039] HTTP (Hypertext Transfer Protocol) is a simple request-response protocol that typically runs on top of TCP. It specifies what messages a client might send to a server and what responses it might receive. Request and response message headers are given in ASCII format, while the message content has a MIME-like format.

[0040] Intelligent transportation fully utilizes next-generation information technologies such as the Internet of Things, spatial sensing, cloud computing, and mobile internet across the entire transportation sector. It comprehensively applies theories and tools from transportation science, systems methods, artificial intelligence, and knowledge mining. With the goals of comprehensive perception, deep integration, proactive service, and scientific decision-making, it builds a real-time dynamic information service system, deeply mines transportation-related data, forms problem analysis models, and enhances the industry's ability to optimize resource allocation, improve public decision-making capabilities, enhance industry management capabilities, and improve public service capabilities. This promotes safer, more efficient, more convenient, more economical, more environmentally friendly, and more comfortable operation and development of transportation, and drives the transformation and upgrading of transportation-related industries.

[0041] Cloud storage is a new concept that extends and develops from cloud computing. A distributed cloud storage system (hereinafter referred to as a storage system) refers to a storage system that uses cluster applications, grid technology, and distributed storage file systems to aggregate a large number of storage devices of various types (storage devices are also called storage nodes) in a network to work together through application software or application interfaces to provide data storage and business access functions. Currently, the storage method of the storage system is as follows: create logical volumes. When creating a logical volume, physical storage space is allocated to each logical volume. This physical storage space may be composed of disks from one or several storage devices. When a client stores data on a logical volume, it stores the data on the file system. The file system divides the data into many parts, each part being an object. The object contains not only data but also additional information such as data identifiers (ID, IDentity). The file system writes each object to the physical storage space of the logical volume and records the storage location information of each object. Therefore, when a client requests access to data, the file system can allow the client to access the data based on the storage location information of each object. The process by which a storage system allocates physical storage space to a logical volume is as follows: the physical storage space is pre-divided into strips according to the capacity estimate of the objects stored in the logical volume (this estimate often has a large margin relative to the actual capacity of the objects to be stored) and the grouping of Redundant Array of Independent Disks (RAID). A logical volume can be understood as a strip, thus allocating physical storage space to the logical volume.

[0042] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or server that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or devices.

[0043] Please see Figure 1 , Figure 1 This is a schematic diagram of a domain name resolution system provided in an embodiment of this application, such as... Figure 1 As shown, the domain name resolution system may include at least server 01 and client 02.

[0044] Specifically, in this embodiment, server 01 may include a standalone server, a distributed server, or a server cluster composed of multiple servers. It may also be a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Server 01 may include network communication units, processors, and memory, etc. Specifically, server 01 can receive domain name resolution requests sent by client 02, resolve the domain name resolution results and task execution instructions, and send the request processing results to client 02.

[0045] Specifically, in this embodiment, the client 02 may include physical devices such as smartphones, desktop computers, tablets, laptops, digital assistants, smart wearable devices, smart speakers, in-vehicle terminals, and smart TVs. It may also include software running on the physical device, such as web pages provided to users by service providers, or applications provided to users by those service providers. Specifically, the client 02 can be used to run the application based on the domain name resolution result and to execute the target task based on the task execution instruction.

[0046] The following describes one domain name resolution method proposed in this application. Figure 2 This is a flowchart illustrating a domain name resolution method provided in an embodiment of this application. This specification provides the operational steps of the method described in the embodiments or flowcharts, but based on conventional or non-inventive methods, more or fewer operational steps may be included. The order of steps listed in the embodiments is merely one possible execution order among many and does not represent the only possible execution order. In actual system or server product execution, the method can be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment) as shown in the embodiments or accompanying drawings. Specifically, as... Figure 2 As shown, the method may include:

[0047] S201: The receiving terminal sends a domain name resolution request in response to the application launch command; the domain name resolution request carries the interface version number, the application identification information of the application, and a list of domain names.

[0048] In this embodiment, the interface version number is the application's interface identifier information, used to determine the resolution protocol of the domain name list; the interface can be an HTTPDNS interface, and the resolution protocol corresponding to this interface is the HTTP protocol. The application identifier information is used to characterize different categories of applications, and may include the application's name (full name or abbreviation), icon, etc. The domain name list may include multiple domain name identifiers; for example, the domain name identifiers may be www.a.com, wwwwwwb.com. In this embodiment, the terminal may include an HTTPDNS interface SDK (Software Development Kit) module. The SDK module is customized and embedded in the terminal. Every time the terminal needs to access the App's domain name resolution service, it accesses it through the interface method provided by this SDK module, similar to a proxy access mode. This includes an interaction protocol, based on which the resolution data and task instruction data are obtained. The interface protocol implements the interaction capability of domain name resolution data and instruction issuance data. The interface organizes data in JSON encoding, and the protocol mainly includes protocol parameter input triples:

[0049] [API version number, business type, list of domains]

[0050] The protocol parameter input triple defines the data format for the input parameters of the interface service, for example:

[0051] Example: [v1.1,XXGame_10001,www.a.com,wwwwwwb.com...]

[0052] The business type is the application identification information of the application, which can be obtained from the application's startup command.

[0053] S203: Determine the resolution protocol of the domain name list based on the interface version number.

[0054] In this embodiment, different interface version numbers correspond to different domain name resolution protocols. Preferably, the resolution protocol in this embodiment may include the HTTP protocol. This protocol allows for the batch acquisition of the IP address resolution results corresponding to all domain names in the domain name list that the App needs to resolve.

[0055] S205: The domain name list is resolved according to the resolution protocol to obtain the domain name resolution result.

[0056] In the embodiments of this application, such as Figure 3 As shown, the step of resolving the domain name list according to the resolution protocol to obtain the domain name resolution result includes:

[0057] S2051: Obtain the domain name identification information from the domain name list;

[0058] In this embodiment of the application, the domain name list may include domain name identification information of multiple domain names.

[0059] S2053: Determine the cache database storing the domain name identification information according to the resolution protocol;

[0060] In this embodiment, the cache database stores the mapping relationship between domain name identification information and IP addresses. The two are converted using a resolution protocol, which transforms the IP address into domain name identification information. The resolution protocol may include, but is not limited to, the DNS protocol and the HTTP protocol.

[0061] In some embodiments, the cache database can be a domain name resolution system based on the HTTPDNS protocol. HTTPDNS replaces the DNS protocol with the HTTP protocol for domain name resolution. Since it bypasses the operator's LocalDNS, the user's request to resolve a domain name is directly transmitted to the HTTPDNS server IP via the HTTP protocol. The user's domain name resolution request on the client will not be troubled by domain name resolution anomalies. Traditional HTTPDNS only provides the function of domain name resolution.

[0062] In some embodiments, the mapping relationship between domain name identification information and IP address can be stored in the cloud.

[0063] S2055: Obtain the time-to-live value corresponding to the domain name identification information in the cache database;

[0064] In this embodiment, the Time To Live (TTL) value specifies the maximum number of network segments an IP packet is allowed to pass through before being dropped by a router. Each domain name identifier in the cache database can have a corresponding TTL set, thereby improving the accuracy of domain name resolution results.

[0065] S2057: If the time-to-live value is within a preset time period, search the cache database for first domain name resolution data that matches the domain name identification information.

[0066] In this embodiment of the application, the preset time period range can be a valid time. By determining whether the TTL is within the valid time, it is determined whether to use the parsed data in the cache database as the parsing result of the domain name identification information.

[0067] In some embodiments, the method further includes:

[0068] S20507: If the survival time value is not within the preset time period, the original database set is determined according to the parsing protocol;

[0069] In some embodiments, if the time-to-live value exceeds the valid time, it indicates that the resolution result in the cache database has not been updated in a timely manner. In this case, it is necessary to obtain the corresponding resolution result from the original database. The original database set can be an authoritative DNS, which can correspond to multiple domain name servers, and the multiple domain name servers can exist in the form of a tree structure.

[0070] S20509: Based on the domain name identification information, recursively query the original database set to determine the target database;

[0071] In this embodiment of the application, the DNS system responds to user queries using a recursive query request method, and its general process is as follows:

[0072] (1) The client first queries the preferred domain name server.

[0073] (2) If the first choice is the domain name server to check local resource records, then query the root domain name server.

[0074] (3) The root name server returns the address of the authoritative name server of the corresponding top-level domain, and the preferred name server continues to query the authoritative name server of the top-level domain.

[0075] (4) The top-level authoritative name server returns the address of the authoritative name server for the secondary domain. The first name server is used to iterate in this way until an authoritative answer for the queried domain is obtained, which is then stored in the local cache and returned to the client, completing the query. Currently, most networks have open DNS services, and DNS packets are not blocked by firewalls or other network security protection devices. Therefore, a covert channel can be established based on the DNS protocol to successfully pass through firewalls and covertly transmit data between the terminal and the server.

[0076] S205011: Search the target database for second domain name resolution data that matches the domain name identification information.

[0077] In this embodiment of the application, the target database stores the mapping relationship between domain name identification information and the corresponding second domain name resolution data, where the second domain name resolution data is the IP address.

[0078] In some embodiments, such as Figure 4 As shown, the method further includes:

[0079] S205013: Determine the target lifetime value for the second domain name resolution data;

[0080] S205015: Update the cache database based on the second domain name resolution data and the target time-to-live value.

[0081] In this embodiment, after resolving the second domain name resolution data, a corresponding target time-to-live (TTL) value can be set; a mapping relationship between domain name identification information and the second domain name resolution data can be constructed. This mapping relationship is used to replace the mapping relationship of domain name identification information that has exceeded its validity period in the cache database. Simultaneously, the updated target TTL value and update time are stored in the cache database. This facilitates directly obtaining the corresponding resolution result from the cache database during the next resolution.

[0082] S207: Determine the target task based on the application identification information.

[0083] In this embodiment of the application, different applications can correspond to different tasks, and the mapping relationship between application identification information and tasks can be preset; thereby facilitating the quick determination of the corresponding target task based on the application identification information.

[0084] In this application embodiment, the target task may include, but is not limited to, gray-scale testing, test command execution, and App control. Gray-scale testing involves selecting a specific group of users to try out a product or application before its official release, gradually expanding the number of testers to promptly identify and correct problems, transitioning from "gray" to "black." Gray-scale testing refers to having two different application versions existing simultaneously: a "black" version and a "white" version. The ratio of the black and white versions is adjusted by observing their performance. If everything goes smoothly, all users gradually transition from the black version to the white version. This process of testing through the coexistence of black and white versions is called gray-scale testing or gray-scale release. Test command execution, a telecommunications engineering term, refers to the testing function of call center, unified communications, and converged communications systems. App control refers to controlling an unreleased version of the App to only be accessible to specific users.

[0085] In some embodiments, such as Figure 5 As shown, determining the target task based on the application identifier information includes:

[0086] S2071: Determine the sampling object judgment result corresponding to the terminal based on the application identification information;

[0087] S2073: If the terminal is a sampling object, determine the target task that matches the application identification information.

[0088] In this embodiment, for a specific application, tasks can be distributed by sampling according to a certain ratio. For example, for a specific App, the sampling ratio of the target task is set to 1:100, and if the current terminal is the 100th to send a parsing request in the specific App, then the corresponding target task is assigned to the terminal. One application identifier can correspond to one or more target tasks. If the terminal is not a sampling target, for example, if the terminal is the 90th to send a parsing request, then no target task is assigned to the terminal.

[0089] In some embodiments, the execution name of the target task and the command that the App needs to execute can be determined; for example, to initiate a probe request command to a certain URL (Uniform Resource Locator) address, the number of times to execute, task data callback, etc.

[0090] In some embodiments, such as Figure 6 As shown, after determining the target task based on the application identifier information, the method further includes:

[0091] S2081: Determine the execution frequency and callback interface identifier of the target task; the interface corresponding to the callback interface identifier is used to receive the execution result of the target task;

[0092] S2083: Generate the task execution instruction based on the target task, the execution frequency, and the callback interface identifier.

[0093] In this embodiment, after determining the target task, the execution frequency and callback interface identifier corresponding to the target task can also be determined. The callback interface identifier facilitates the terminal to quickly return the task execution result to the server. The execution frequency can be used to determine the interval execution time of the target task.

[0094] In some embodiments, the number of times the target task can be executed, the execution time, etc. can also be set.

[0095] In some embodiments, it can also be determined whether to assign a target task to the terminal based on the account association data corresponding to the terminal, thereby enabling the assignment of target tasks to a specific user group.

[0096] The acquisition of the aforementioned account-linked data was done with the user's consent, and the corresponding use of the data complies with laws and regulations.

[0097] In some embodiments, the domain name resolution request also carries account association data, and the method further includes:

[0098] Based on the account association data, determine whether the terminal is the target terminal;

[0099] Accordingly, determining the target task based on the application identifier information includes:

[0100] If the terminal is the target terminal, the target task is determined based on the application identification information.

[0101] In this embodiment of the application, the target task can be a task targeting a specific account group, such as a group of teenagers or unmarried individuals; the target task can be assigned to the terminal based on the account association data corresponding to the terminal; thereby achieving targeted assignment of target tasks to a specific account group.

[0102] S209: Send a request processing result to the terminal, the request processing result including the domain name resolution result and a task execution instruction, the task execution instruction carrying the target task; so that the terminal runs the application based on the domain name resolution result and executes the target task based on the task execution instruction.

[0103] In this embodiment, after determining the domain name resolution result and the task execution instruction, a request processing result can be generated based on the domain name resolution result and the task execution instruction; and the request processing result can be sent to the terminal; thus, the target task can be published to the terminal at the same time as the domain name resolution result is sent to the terminal, avoiding the terminal from sending a task request to the server again, reducing the interface calls in the task publishing process, and improving the efficiency of publishing the target task to the terminal.

[0104] In some embodiments, the request processing result further includes encrypted identification information, and before sending the request processing result to the terminal, the method further includes:

[0105] The task execution instructions are encrypted using a preset encryption algorithm to obtain encrypted instructions.

[0106] The request processing result is generated based on the domain name resolution result, the encryption instruction, and the encryption identification information.

[0107] In this embodiment, the encryption identifier information represents the encryption status of the task execution instruction; it can indicate whether the returned task data has been encrypted, generally using symmetric encryption. If encryption has been performed, the corresponding encryption method is returned. The encryption instruction may carry a preset encryption algorithm.

[0108] In this embodiment of the application, an encryption algorithm can also be used to encrypt the domain name resolution result. The encryption method of the domain name resolution result and the encryption method of the task execution instruction can be the same or different.

[0109] In some embodiments, the server and terminal can use pre-set keys to encrypt and decrypt data, or transmit data in plaintext. Encrypting data using encryption algorithms can improve the security of data transmission.

[0110] In this application embodiment, the preset encryption algorithm may include, but is not limited to, DES (Data Encryption Standard) and AES (Advanced Encryption Standard);

[0111] The DES algorithm is a data encryption algorithm. The DES algorithm has three input parameters: Key, Data, and Mode. Key is 8 bytes (64 bits) and is the working key for the DES algorithm; Data is also 8 bytes (64 bits) and is the data to be encrypted or decrypted; Mode indicates the two working modes of DES: encryption or decryption. The DES algorithm transforms a 64-bit plaintext input block into a 64-bit ciphertext output block. It uses a 64-bit key and its algorithm mainly consists of two steps:

[0112] (1) Initial permutation

[0113] Its function is to recombine the input 64-bit data block bit by bit and divide the output into two parts, L0 and R0, each 32 bits long. The permutation rule is to move the 58th bit of the input to the first bit, the 50th bit to the second bit, and so on, with the last bit being the original 7th bit. L0 and R0 are the two parts of the output after permutation. L0 is the left 32 bits of the output, and R0 is the right 32 bits. For example, if the input value before permutation is set to D1D2D3...D64, then the result after the initial permutation is: L0 = D58D50...D8; R0 = D57D49...D7.

[0114] (2) Inverse displacement

[0115] After 16 iterations, we obtain L16 and R16. Using these as input, we perform the inverse permutation, which is exactly the inverse operation of the initial permutation, thus obtaining the ciphertext output.

[0116] AES, or Advanced Encryption Standard, also known as Rijndael encryption, is a block cipher standard adopted by the US federal government. Rijndael is the specific algorithm under this standard, satisfying the following conditions: faster than Triple DES, at least as secure as Triple DES, with a data block length of 128 bits and a key length of 128 / 192 / 256 bits. Rijndael has three layers: a linear mixing layer, a non-linear layer, and a key addition layer. Rijndael is an iterative block cipher with variable block and key lengths. The Rijndael round function consists of four different computational components: byte substitution, row shifting, column mixing, and key addition. The S-box in AES utilizes the mathematical foundation of GF(2^8), while the S-box in DES is primarily used to ensure non-linearity.

[0117] In some embodiments, the request processing result further includes status identification information, which includes a first status identifier and a second status identifier; the domain name resolution result includes a domain name resolution success result and a domain name resolution error result; the method further includes:

[0118] Based on the successful domain name resolution result, a first status identifier is generated;

[0119] Based on the domain name resolution anomaly result, a second status identifier is generated.

[0120] In this embodiment of the application, the status identification information represents the processing result of the local server on the domain name resolution request; for example, the status identification information may include 0, 1, 2, etc., where 0 indicates that the server's resolution result is normal, and non-zero indicates that the server's resolution is abnormal, such as the server being unable to recognize the syntax of the domain name resolution request, or the server being able to parse only part of the domain name resolution request.

[0121] In this embodiment of the application, the protocol for returning the interface call result can include four parts:

[0122] [Status identification information, encryption identifier, domain name resolution result, task execution instructions];

[0123] In a specific embodiment, such as Figure 7 As shown, 1 is the status identifier (0 indicates that the resolution result is normal), 2 is the encryption identifier (no indicates that the processing result is not encrypted), 3 is the domain name resolution result, and 4 is the task execution instruction.

[0124] In a specific embodiment, such as Figure 8 As shown, Figure 8This is a domain name resolution system, comprising a client and a server. The client includes an SDK interface module for obtaining domain name resolution results and task execution instructions; an existing system module for running the application; and a task execution module for executing the target task. The server includes an HTTPDNS interface service module, a server-side domain name resolution data module, a task instruction generation module, and a task instruction management and configuration module.

[0125] The HTTPDNS interface service module's main function is to parse the triplet protocol information input by the interface, call the corresponding domain name resolution data from the downstream domain name resolution module, obtain the corresponding task instruction data from the downstream task instruction generation module, combine the data according to the data protocol returned by the interface call result, and return it to the terminal. This interface service module includes a domain name resolution module, a task execution instruction generation module, and a task execution instruction management module.

[0126] The domain name resolution module primarily encapsulates traditional DNS protocol domain name resolution data using the HTTP protocol. For domain name resolution requests received from upstream:

[0127] (1) Cache retrieval: First, it will determine whether the cache has been hit. It will check whether the TTL is within the valid time in the local cache database. If it is still within the valid time of TTL, it means that the domain name has hit the cache resolution, and the corresponding domain name IP will be returned directly.

[0128] (2) Authoritative service recursive query: For domain name cache data that has exceeded TTL, an authoritative DNS service recursive query is required for the domain name to obtain the latest resolution IP returned by the authoritative server of the domain name, return it to the upstream calling service, and cache the domain name resolution information such as IP and TTL in the local database.

[0129] The task instruction generation module primarily generates corresponding instruction data information based on the task instruction management module.

[0130] (1) Whether to encrypt: Determine whether to encrypt the instruction data according to the encryption status flag configured in the instruction. If encryption is required, the corresponding encryption method is described in the data protocol.

[0131] (2) Task instruction data: Specific task instruction data acquisition, such as the proportional sampling task issuance according to the task instruction configuration module, can generate corresponding task instructions according to the proportion, add corresponding instructions for the hit proportion, and return empty instructions for the non-hit proportion, etc.; it can also define the callback CGI, execution frequency and other information of instruction result data.

[0132] The task instruction management module mainly provides configuration management functions for task instructions. It allows configuration of task instructions according to the actual application scenario of the business, including the task instruction command, the execution sampling ratio of the instruction task, the number of times the instruction is executed, and the CGI callback address for the callback feedback of the instruction data results.

[0133] In some embodiments, such as Figure 9 As shown, Figure 9 A flowchart illustrating a domain name resolution method, including:

[0134] S901: The client responds to the operation command triggered based on the application identification information, starts the App corresponding to the application identification information, loads the configuration information, and obtains the list of domain names to be called;

[0135] S903: The client calls HTTPDNS to resolve the domain name, sending a domain name resolution request (HTTP request) to the server;

[0136] S905: The server determines whether to assign a task to the client based on the parsing request;

[0137] S907: If it is determined that the client has no task, obtain the list of IP addresses corresponding to the list of domain names and send it to the client; so that the client can run the App according to the list of IP addresses.

[0138] If it is determined that the client has a task, proceed to step S909;

[0139] S909: Get the list of IP addresses corresponding to the list of domain names;

[0140] S9011: Obtain the corresponding task instructions from the client and send the IP address list and task execution instructions to the client;

[0141] S9013: The client runs the App based on the list of IP addresses and executes task instructions during the App's operation.

[0142] This embodiment replaces the traditional DNS domain name resolution process in the initial stage of the App with an HTTP DNS HTTP protocol resolution service. This achieves domain name resolution while also obtaining App tasks, reducing the need for a dedicated task distribution interface service call after App startup, and still obtaining the tasks to be executed.

[0143] By embedding the SDK in the terminal, the terminal App can complete the domain name resolution and data acquisition of App command tasks with only one call to the HTTPDNS interface domain name resolution service during the initial process. It innovatively introduces the command task distribution function in the domain name resolution process, realizes the reuse of basic domain name resolution and command task distribution, and is more efficient than the traditional solution.

[0144] This embodiment elevates the task instruction issuance cycle to the initial domain name resolution stage of the App. Compared to running the App, it also offers more flexible business customization capabilities. Furthermore, it eliminates the need for additional threads to execute the task instruction acquisition process during App runtime, making the implementation more fundamental and universal. This reduces resource consumption on mobile devices and enables functions such as canary testing, test command execution, and App control, thereby reducing App performance consumption while improving user experience.

[0145] As can be seen from the technical solutions provided by the embodiments of this application above, the embodiments of this application receive a domain name resolution request sent by a terminal in response to an application launch command; the domain name resolution request carries an interface version number, the application identification information of the application, and a list of domain names; the resolution protocol of the domain name list is determined based on the interface version number; the domain name list is resolved according to the resolution protocol to obtain a domain name resolution result; a target task is determined according to the application identification information; a request processing result is sent to the terminal, the request processing result including the domain name resolution result and a task execution instruction, the task execution instruction carrying the target task; so that the terminal runs the application based on the domain name resolution result and executes the target task based on the task execution instruction. After receiving the domain name resolution request, this application resolves the domain names in the domain name list and determines the corresponding target task according to the application identification information; it realizes that based on a single request from the terminal, the domain names in the domain name list are resolved at once, and the target task of the terminal is determined simultaneously; it improves the efficiency of domain name resolution and the efficiency of publishing target tasks to the terminal, and reduces the interface calls during the task publishing process.

[0146] This application also provides a domain name resolution device, such as... Figure 10 As shown, the device includes:

[0147] The request receiving module 1010 is used to receive a domain name resolution request sent by the terminal in response to the application startup command; the domain name resolution request carries the interface version number, the application identification information of the application, and a list of domain names;

[0148] The resolution protocol determination module 1020 is used to determine the resolution protocol of the domain name list based on the interface version number;

[0149] Domain name resolution module 1030 is used to resolve the domain name list according to the resolution protocol to obtain the domain name resolution result;

[0150] The target task determination module 1040 is used to determine the target task based on the application identification information;

[0151] The result sending module 1050 is used to send a request processing result to the terminal. The request processing result includes the domain name resolution result and a task execution instruction. The task execution instruction carries the target task, so that the terminal runs the application based on the domain name resolution result and executes the target task based on the task execution instruction.

[0152] In some embodiments, the domain name resolution module may include:

[0153] A domain name identification information acquisition unit is used to acquire domain name identification information from the domain name list;

[0154] A cache database determination unit is used to determine, according to the resolution protocol, the cache database storing the domain name identification information;

[0155] The time-to-live value acquisition unit is used to acquire the time-to-live value corresponding to the cache database;

[0156] The first domain name resolution data lookup unit is used to search for first domain name resolution data that matches the domain name identification information from the cache database if the time-to-live value is within a preset time period.

[0157] In some embodiments, the apparatus may further include:

[0158] The original database set determination unit is used to determine the original database set according to the parsing protocol if the survival time value is not within the preset time period.

[0159] The target database determination unit is used to recursively query the original database set based on the domain name identification information to determine the target database;

[0160] The second domain name resolution data lookup unit is used to search for second domain name resolution data that matches the domain name identification information from the target database.

[0161] In some embodiments, the apparatus may further include:

[0162] The target lifetime value determination module is used to determine the target lifetime value of the second domain name resolution data;

[0163] The database update module is used to update the cache database based on the second domain name resolution data and the target time-to-live value.

[0164] In some embodiments, the request processing result further includes encrypted identification information, and the apparatus may further include:

[0165] The encryption instruction determination module is used to encrypt the task execution instruction based on a preset encryption algorithm to obtain the encrypted instruction;

[0166] The result generation module is used to generate the request processing result based on the domain name resolution result, the encryption instruction, and the encryption identification information.

[0167] In some embodiments, the request processing result further includes status identification information, which includes a first status identifier and a second status identifier; the domain name resolution result includes a domain name resolution success result and a domain name resolution error result; the apparatus may further include:

[0168] The first identifier generation module is used to generate a first status identifier based on the successful domain name resolution result;

[0169] The second identifier generation module is used to generate a second status identifier based on the domain name resolution anomaly result.

[0170] In some embodiments, the target task determination module may include:

[0171] The result judgment unit is used to determine the judgment result of the sampling object corresponding to the terminal based on the application identification information.

[0172] The target task determination unit is used to determine the target task that matches the application identification information if the terminal is a sampling object.

[0173] In some embodiments, the apparatus may further include:

[0174] The data determination module is used to determine the execution frequency of the target task and the callback interface identifier; the interface corresponding to the callback interface identifier is used to receive the execution result of the target task.

[0175] The instruction generation module is used to generate the task execution instruction based on the target task, the execution frequency, and the callback interface identifier.

[0176] The apparatus and method embodiments described herein are based on the same inventive concept.

[0177] This application provides a domain name resolution device, which includes a processor and a memory. The memory stores at least one instruction or at least one program, which is loaded and executed by the processor to implement the domain name resolution method provided in the above method embodiments.

[0178] The embodiments of this application also provide a computer storage medium, which can be disposed in a terminal to store at least one instruction or at least one program related to implementing a domain name resolution method in the method embodiments. The at least one instruction or at least one program is loaded and executed by the processor to implement the domain name resolution method provided in the above method embodiments.

[0179] Embodiments of this application also provide a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the domain name resolution method provided in the above-described method embodiments.

[0180] Optionally, in this embodiment, the storage medium may be located at at least one of the multiple network servers in a computer network. Optionally, in this embodiment, the storage medium may include, but is not limited to, various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0181] The memory described in this application embodiment can be used to store software programs and modules. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory. The memory may mainly include a program storage area and a data storage area. The program storage area may store the operating system, applications required for the functions, etc.; the data storage area may store data created according to the use of the device, etc. In addition, the memory may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device. Accordingly, the memory may also include a memory controller to provide the processor with access to the memory.

[0182] The domain name resolution method embodiments provided in this application can be executed on mobile terminals, computer terminals, servers, or similar computing devices. Taking running on a server as an example, Figure 11 This is a hardware structure block diagram of a server for a domain name resolution method provided in an embodiment of this application. For example... Figure 11As shown, the server 1100 can vary significantly due to different configurations or performance. It may include one or more Central Processing Units (CPUs) 1110 (CPUs 1110 may include, but are not limited to, microprocessors (MCUs) or programmable logic devices (FPGAs), a memory 1130 for storing data, and one or more storage media 1120 (e.g., one or more mass storage devices) for storing application programs 1123 or data 1122. The memory 1130 and storage media 1120 may be temporary or persistent storage. The program stored in the storage media 1120 may include one or more modules, each module including a series of instruction operations on the server. Furthermore, the CPU 1110 may be configured to communicate with the storage media 1120 and execute the series of instruction operations stored in the storage media 1120 on the server 1100. Server 1100 may also include one or more power supplies 1160, one or more wired or wireless network interfaces 1150, one or more input / output interfaces 1140, and / or one or more operating systems 1121, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, etc.

[0183] The input / output interface 1140 can be used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the communication provider of server 1100. In one example, the input / output interface 1140 includes a network interface controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the input / output interface 1140 may be a radio frequency (RF) module for wireless communication with the Internet.

[0184] Those skilled in the art will understand that Figure 11 The structure shown is for illustrative purposes only and does not limit the structure of the aforementioned electronic device. For example, server 1100 may also include... Figure 11 The more or fewer components shown, or having the same Figure 11 The different configurations shown.

[0185] As can be seen from the embodiments of the domain name resolution method, apparatus, device, or storage medium provided in this application, this application receives a domain name resolution request sent by a terminal in response to an application launch command; the domain name resolution request carries an interface version number, the application identification information of the application, and a list of domain names; the resolution protocol of the domain name list is determined based on the interface version number; the domain name list is resolved according to the resolution protocol to obtain a domain name resolution result; a target task is determined according to the application identification information; a request processing result is sent to the terminal, the request processing result including the domain name resolution result and a task execution instruction, the task execution instruction carrying the target task; so that the terminal runs the application based on the domain name resolution result and executes the target task based on the task execution instruction. After receiving the domain name resolution request, this application resolves the domain names in the domain name list and determines the corresponding target task based on the application identification information; it achieves one-time resolution of the domain names in the domain name list based on a single request from the terminal, while simultaneously determining the target task of the terminal; it improves the efficiency of domain name resolution and the efficiency of publishing target tasks to the terminal, and reduces interface calls during the task publishing process.

[0186] It should be noted that the order of the embodiments described above is merely for descriptive purposes and does not represent the superiority or inferiority of the embodiments. Furthermore, specific embodiments have been described above. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps described in the claims can be performed in a different order than that shown in the embodiments and still achieve the desired result. Additionally, the processes depicted in the drawings do not necessarily require a specific or sequential order to achieve the desired result. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0187] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the embodiments of apparatus, devices, and storage media are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0188] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer storage medium, such as a read-only memory, a disk, or an optical disk.

[0189] The above description is only a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A domain name resolution method, characterized in that, The method includes: The receiving terminal sends a domain name resolution request in response to the application launch command; the domain name resolution request carries the interface version number, the application identification information of the application, account association data, and a list of domain names; The resolution protocol of the domain name list is determined based on the interface version number; Obtain the domain identification information from the domain list; According to the resolution protocol, determine the cache database that stores the domain name identification information; Obtain the time-to-live value corresponding to the domain name identifier information in the cache database; If the time-to-live value is within a preset time period, search the cache database for first domain name resolution data that matches the domain name identification information; If the time-to-live value is not within the preset time period, the original database set is determined according to the resolution protocol; the original database set is recursively queried according to the domain name identification information to determine the target database; the second domain name resolution data matching the domain name identification information is searched from the target database; the recursive query includes: the terminal first sends a query request to the preferred domain name server, the preferred domain name server checks local resource records and sends a query request to the root domain name server; the root domain name server returns the address of the authoritative domain name server of the corresponding top-level domain, the preferred domain name server continues to send a query request to the authoritative domain name server of the top-level domain, the authoritative domain name server of the top-level domain returns the address of the authoritative domain name server of the secondary domain, the preferred domain name server iterates in this way until an authoritative answer to the queried domain name is obtained, the authoritative answer is saved in the local cache and returned to the terminal; If the terminal is determined to be the target terminal based on the account association data, the target task is determined based on the application identification information; the target task includes gray-scale testing, dial-up test command execution tasks, and app control tasks that control the unreleased version of the App to be enabled only for specific users; The execution frequency and callback interface identifier of the target task are determined; the interface corresponding to the callback interface identifier is used to receive the execution result of the target task; the execution frequency is used to determine the interval execution time of the target task. Based on the target task, the execution frequency, and the callback interface identifier, a task execution instruction is generated; a request processing result is sent to the terminal, the request processing result including the domain name resolution result and the task execution instruction, the domain name resolution result being either the first domain name resolution data or the second domain name resolution data; the task execution instruction carries the target task; so that the terminal runs the application based on the domain name resolution result and executes the target task based on the task execution instruction.

2. The method according to claim 1, characterized in that, The method further includes: Determine the target time-to-live value for the second domain name resolution data; The cache database is updated based on the second domain name resolution data and the target time-to-live value.

3. The method according to any one of claims 1-2, characterized in that, The request processing result also includes encrypted identification information. Before sending the request processing result to the terminal, the method further includes: The task execution instructions are encrypted using a preset encryption algorithm to obtain encrypted instructions. The request processing result is generated based on the domain name resolution result, the encryption instruction, and the encryption identification information.

4. The method according to any one of claims 1-2, characterized in that, The request processing result also includes status identification information, which includes a first status identifier and a second status identifier. The domain name resolution result includes a domain name resolution success result and a domain name resolution error result. The method further includes: Based on the successful domain name resolution result, a first status identifier is generated; Based on the domain name resolution anomaly result, a second status identifier is generated.

5. The method according to any one of claims 1-2, characterized in that, The step of determining the target task based on the application identifier information includes: Based on the application identification information, determine the sampling object judgment result corresponding to the terminal; If the terminal is a sampling object, determine the target task that matches the application identification information.

6. A domain name resolution device, characterized in that, The device includes: The request receiving module is used to receive a domain name resolution request sent by the terminal in response to the application launch command; the domain name resolution request carries the interface version number, the application identification information of the application, account association data, and a list of domain names; A resolution protocol determination module is used to determine the resolution protocol of the domain name list based on the interface version number; A domain name resolution module is used to resolve the domain name list according to the resolution protocol to obtain domain name resolution results. The domain name resolution module includes: a domain name identification information acquisition unit, used to acquire domain name identification information from the domain name list; a cache database determination unit, used to determine a cache database storing the domain name identification information according to the resolution protocol; a time-to-live (TTL) value acquisition unit, used to acquire the TTL value corresponding to the cache database; and a first domain name resolution data lookup unit, used to search for first domain name resolution data matching the domain name identification information from the cache database if the TTL value is within a preset time period. The domain name resolution module is also used to determine the original database set according to the resolution protocol if the TTL value is not within the preset time period. The domain name identification information is used to recursively query the original database set to determine the target database; the second domain name resolution data matching the domain name identification information is searched in the target database; the recursive query includes: the terminal first sends a query request to the preferred domain name server, the preferred domain name server checks local resource records and sends a query request to the root domain name server; the root domain name server returns the address of the authoritative domain name server of the corresponding top-level domain, the preferred domain name server continues to send query requests to the authoritative domain name server of the top-level domain, the authoritative domain name server of the top-level domain returns the address of the authoritative domain name server of the subdomain, the preferred domain name server iterates in this way until an authoritative answer to the queried domain name is obtained, the authoritative answer is stored in the local cache and returned to the terminal; The target task determination module is used to determine the target task based on the application identification information when the terminal is determined to be the target terminal based on the account association data; the target task includes gray-scale testing, dial-up test command execution task, and app control task that controls the unreleased version of the App to be enabled only for specific users; The data determination module is used to determine the execution frequency and callback interface identifier of the target task; the interface corresponding to the callback interface identifier is used to receive the execution result of the target task; the execution frequency is used to determine the interval execution time of the target task. The instruction generation module is used to generate task execution instructions based on the target task, the execution frequency, and the callback interface identifier; The result sending module is used to send a request processing result to the terminal. The request processing result includes the domain name resolution result and a task execution instruction. The task execution instruction carries the target task, so that the terminal runs the application based on the domain name resolution result and executes the target task based on the task execution instruction.

7. The apparatus according to claim 6, characterized in that, The device further includes: The target lifetime value determination module is used to determine the target lifetime value of the second domain name resolution data; The database update module is used to update the cache database based on the second domain name resolution data and the target time-to-live value.

8. The apparatus according to any one of claims 6-7, characterized in that, The request processing result also includes encrypted identification information, and the device further includes: The encryption instruction determination module is used to encrypt the task execution instruction based on a preset encryption algorithm to obtain the encrypted instruction; The result generation module is used to generate the request processing result based on the domain name resolution result, the encryption instruction, and the encryption identification information.

9. The apparatus according to any one of claims 6-7, characterized in that, The request processing result also includes status identification information, which includes a first status identifier and a second status identifier. The domain name resolution result includes a domain name resolution success result and a domain name resolution error result. The device further includes: The first identifier generation module is used to generate a first status identifier based on the successful domain name resolution result; The second identifier generation module is used to generate a second status identifier based on the domain name resolution anomaly result.

10. The apparatus according to any one of claims 6-7, characterized in that, The target task determination module includes: The result judgment unit is used to determine the judgment result of the sampling object corresponding to the terminal based on the application identification information. The target task determination unit is used to determine the target task that matches the application identification information if the terminal is a sampling object.

11. A domain name resolution device, characterized in that, The device includes a processor and a memory, the memory storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the domain name resolution method as described in any one of claims 1-6.

12. A computer storage medium, characterized in that, The computer storage medium stores at least one instruction or at least one program, which is loaded and executed by a processor to implement the domain name resolution method as described in any one of claims 1-6.

13. A computer program product comprising computer instructions, characterized in that, When the computer instructions are executed by the processor, they implement the domain name resolution method as described in any one of claims 1-6.

Citation Information

Patent Citations

  • Systems & methods for proxy resolution of domain name service (DNS) requests

    CN101404646A

  • Webpage request method and apparatus, and domain name information parsing result processing method and apparatus

    CN108282455A

  • Task processing method and device based on node cluster, equipment and storage medium

    CN111930482A