WO2014048241A1 - 一种浏览器及其进行域名解析的方法 - Google Patents

一种浏览器及其进行域名解析的方法 Download PDF

Info

Publication number
WO2014048241A1
WO2014048241A1 PCT/CN2013/083082 CN2013083082W WO2014048241A1 WO 2014048241 A1 WO2014048241 A1 WO 2014048241A1 CN 2013083082 W CN2013083082 W CN 2013083082W WO 2014048241 A1 WO2014048241 A1 WO 2014048241A1
Authority
WO
WIPO (PCT)
Prior art keywords
domain name
url
acceleration data
data information
dns
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2013/083082
Other languages
English (en)
French (fr)
Inventor
董斌雁
任寰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to US14/431,981 priority Critical patent/US9729499B2/en
Publication of WO2014048241A1 publication Critical patent/WO2014048241A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • the present invention relates to the field of Internet technologies, and in particular to a browser and a method for performing domain name resolution. Background technique
  • the existing solution is to parse the user input URL, and after downloading the root URL, analyze the HTML (Hypertext Markup Language) data content, and then download according to the object to be rendered.
  • the DNS needs to be parsed before downloading the object to be rendered.
  • the DNS resolution time may be from a few milliseconds to 100 seconds. Therefore, when an existing solution is used to access a URL, it takes a long time.
  • the present invention has been made in order to provide a browser and a method and a program for performing domain name resolution that overcome the above problems or at least partially solve or alleviate the above problems.
  • a method for performing domain name resolution by a browser including: starting a browser, and invoking a DNS acceleration data information, where the DNS acceleration data information includes a plurality of domain names acquired in advance and corresponding to each domain name. IP address information; receiving user The access request for a certain URL is parsed, and the domain name corresponding to the URL is extracted; and the domain name corresponding to the URL is included in the DNS acceleration data information, and if yes, the IP corresponding to the domain name is obtained. Address information, and use the IP address information for access processing.
  • the present invention further provides a browser, including: a calling module, configured to start a browser, and invoke DNS acceleration data information, where the DNS acceleration data information includes a plurality of domain names acquired in advance and an IP address corresponding to each domain name.
  • An acceleration triggering module configured to receive a user-initiated access request for a URL, parse the access request, and extract a domain name corresponding to the URL, triggering an acceleration execution module; and an acceleration execution module, configured to detect the DNS acceleration Whether the domain name corresponding to the URL is included in the data information, and if yes, the IP address information corresponding to the domain name is obtained, and the IP address information is used for access processing.
  • a computer program comprising computer readable code, when said computer readable code is run on a user terminal, causing said user terminal to perform any of claims 1 to 10 A method for domain name resolution by a browser as described.
  • a computer readable medium storing the computer program according to claim 21 is provided.
  • the technical solution of the present invention forms DNS acceleration data information by performing statistics on some primary domain names in advance, and when the DNS acceleration data information is invoked by the user side browser, the webpage browsing acceleration can be realized.
  • the acceleration processing process is short in time, and the efficiency of the DNS acceleration is improved.
  • the technical solution of the present invention can also accelerate the processing of the URL of the mouse hovering area, and has a wide application range.
  • FIG. 1 is a flow chart of a method for a domain name resolution performed by a browser according to Embodiment 1 of the present invention
  • FIG. 2 is a flow chart of a method for performing domain name resolution by a browser according to Embodiment 2 of the present invention
  • FIG. 3 is a mapping diagram of a map table established in Embodiment 3 of the present invention.
  • FIG. 4 is a schematic diagram of a mouse hovering according to a third embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of a browser according to Embodiment 4 of the present invention.
  • FIG. 6 is a schematic structural diagram of a browser according to Embodiment 5 of the present invention.
  • FIG. 7 is a schematic structural diagram of a server according to Embodiment 6 of the present invention.
  • FIG. 8 is a structural medical diagram of a system for performing domain name resolution by a browser according to Embodiment 7 of the present invention.
  • Figure 9 is a schematic block diagram showing a user terminal for performing the method according to the present invention.
  • Fig. 10 schematically shows a storage unit for holding or carrying a program code implementing a method according to the invention.
  • an embodiment of the present invention provides a browser and a method for performing domain name resolution.
  • the invention performs DNS query request statistics for some websites in advance, and forms DNS acceleration data information.
  • the DNS acceleration data information is used to accelerate the webpage browsing, and the DNS acceleration efficiency is improved. as follows:
  • an embodiment of the present invention provides a method for performing domain name resolution by a browser, which specifically includes the following steps:
  • step S101 the browser is started, and the DNS acceleration data information is invoked.
  • the DNS acceleration data information includes a plurality of pre-acquired domain names and IP address information corresponding to each domain name.
  • the pre-acquired domain names include a plurality of primary domain names. And a subdomain corresponding to each primary domain name (preferably a secondary subdomain).
  • the DNS acceleration data information invoked is information generated on the server side, and/or is information generated on the browser side.
  • the invoked DNS acceleration data information is on the server side.
  • the method for generating DNS acceleration data information on the server side includes:
  • the manner of obtaining the sub-domain name corresponding to the primary domain name and the IP address information corresponding to the primary domain name and each sub-domain name includes:
  • the manner of storing each of the primary domain names and their corresponding subdomains includes: establishing a map table of the mapping relationship between the primary domain name and the corresponding subdomains.
  • the DNS acceleration data information is DNS acceleration data information acquired by the browser to count the URL accessed by the user.
  • the manner in which the browser obtains the DNS acceleration data information includes:
  • system function getaddrinfo() Obtaining the address information function of the browser side computer system (system function getaddrinfo()), obtaining the subdomain name corresponding to the primary domain name, and the socket address structure corresponding to the primary domain name and each subdomain name;
  • the primary domain name, the subdomains corresponding to the primary domain name, and the IP address information corresponding to each domain name are stored in the DNS acceleration data information.
  • Step S102 Receive a user-initiated access request for a URL, parse the access request, and extract a domain name corresponding to the URL.
  • the method before extracting the domain name corresponding to the URL, the method further includes: determining whether the URL is locally slowed, and if not, extracting the domain name corresponding to the URL, performing step S103; , no DNS acceleration processing.
  • Step S103 Detect whether the DNS acceleration data information includes a domain name corresponding to the URL, and if yes, obtain the IP address information corresponding to the domain name, and use the IP address information to perform access processing.
  • detecting whether the domain name corresponding to the URL is included in the DNS acceleration data information, specifically: determining whether the domain name corresponding to the URL is a primary domain name or a sub-domain name, and if the domain name is the primary domain name, directly searching the domain name in the map table. If the sub-domain name is used, the sub-domain name is divided to obtain the primary domain name corresponding to the sub-domain name, and the primary domain name is used as a search index, and the corresponding domain name is searched in the map table.
  • the manner of extracting the IP address information corresponding to the domain name includes:
  • the queue daemon thread creates a semaphore, and retrieves the IP address information of the URL corresponding domain name in the DN S acceleration data information, Implementing the resolution of the domain name.
  • the queue daemon thread is used to notify the pre-created thread pool to allocate threads for each request task for obtaining the IP address information, and
  • the allocated IP addresses are used to retrieve the IP address information in the DN S acceleration data information, so as to implement parsing of each domain name.
  • Embodiment 2 the technical solution in the embodiment of the present invention accelerates web browsing acceleration by calling pre-generated DNS acceleration data information, thereby improving DNS acceleration efficiency.
  • an embodiment of the present invention provides a method for performing domain name resolution by a browser.
  • the method is an extension of the DNS pre-reading method according to the first embodiment, that is, the extension increases the mouse hovering scheme.
  • the same processing manners as in the first embodiment are not described herein.
  • the method specifically includes:
  • step S201 the browser is started, and the DNS acceleration data information is invoked, where the DNS acceleration data information includes a plurality of pre-acquired domain names and IP address information corresponding to each domain name.
  • step S202 Receive a user-initiated access request for a URL. Parsing the access request and extracting the domain name corresponding to the URL;
  • Step S203 Detect whether the DNS acceleration data information includes a domain name corresponding to the URL, and if yes, obtain the IP address information corresponding to the domain name, and use the IP address information to perform the access processing;
  • Step S204 when the user browses the webpage corresponding to the accessed URL, detecting whether the user's mouse hovering on the webpage, and if so, acquiring the webpage partition DIV element corresponding to the mouseover position; step S205, performing each URL in the DIV element Splitting, obtaining the domain name corresponding to each URL, and performing deduplication processing on the obtained domain name;
  • Step S206 detecting whether the domain name corresponding to each URL is included in the DNS acceleration data information, and if so, extracting IP address information corresponding to each domain name;
  • Step S207 When the user accesses the URL in the DIV element, the access processing is directly performed by using the extracted IP address information.
  • the technical solution of the present invention forms DNS acceleration data information by performing statistics on some primary domain names in advance, and when the DNS acceleration data information is invoked by the user side browser, the webpage browsing acceleration can be implemented, and the acceleration processing is implemented.
  • the process takes a short time and improves the efficiency of the DNS force rate;
  • Embodiment 3 the technical solution of the present invention can also speed up the processing of the URL of the mouse hovering area, and has a wide application range.
  • An embodiment of the present invention provides a method for performing domain name resolution by a browser.
  • the method is further elaborated in the method of the first embodiment and the second embodiment, and specifically includes:
  • the method for collecting the primary domain name of the primary domain name includes, but is not limited to, receiving the primary domain name reported by the user side, and/or obtaining the hotspot domain name information of the entire network, and configuring the primary domain name by using the first N primary domain name of the access volume. Pool; the N is a positive integer.
  • the intercepted system function is the getaddrinfo( const char *nodename, const char * service, const struct addrinfo * hints, struct addrinfo **result ) function.
  • nodename the domain name to be resolved (ASCII format); service : ANSI string containing the service name or port; hints : network socket prompt data structure, indicating network protocol family, socket type, protocol, etc.; result : parsing return data structure , used to save the data parsed by the system.
  • the service specified by the service parameter supports multiple socket types. Then each socket type may return a corresponding structure, depending on the ai-socktype member of the hints structure.
  • each socket type may return a corresponding structure, depending on the ai-socktype member of the hints structure.
  • the getaddrinfo function before intercepting the getaddrinfo function, first allocate a hints structure, clear it, fill in the required fields, and then intercept the getaddrinfo ( ) function to obtain the second-level subdomain corresponding to the primary domain name, and the primary domain name.
  • the socket address structure corresponding to each second-level sub-domain name is obtained according to the socket address structure, and the IP address information corresponding to the primary domain name and each second-level sub-domain name is obtained.
  • the embodiment of the present invention can use the getaddrinfo ( ) function to convert the host name and the service name into the technical characteristics of the socket address structure, and obtain the second-level sub-domain name corresponding to each primary domain name in the primary domain name pool, and the IP address information corresponding to each domain name.
  • the DNS acceleration data information is DNS acceleration data information obtained by the browser to count the URL accessed by the user.
  • the manner in which the browser obtains the DNS acceleration data information includes:
  • IP address information corresponding to the primary domain name and each secondary subdomain name according to the socket address structure Obtaining IP address information corresponding to the primary domain name and each secondary subdomain name according to the socket address structure
  • the primary domain name, the second-level sub-domains corresponding to the primary domain name, and the IP address information corresponding to each domain name are stored in the DNS acceleration data information.
  • the mapping table between the primary domain name and the corresponding secondary sub-domain name is established when the primary domain name and its corresponding secondary sub-domain name are saved. The specific mapping relationship continues as shown in FIG. 3 .
  • the invoked DNS acceleration data information is DNS acceleration data information downloaded on the server side, or the DNS acceleration data information actively pushed by the received server side, and/or the invoked DNS acceleration data information is a browser statistical user. DNS acceleration data information obtained by accessing the URL.
  • the change of the address bar refers to the URL that the user inputs in the address bar or is automatically recommended by the address bar. 3. Determine whether the URL to be accessed is a URL that has been cached by the system. If yes, the object corresponding to the URL is not expired, and the information cached by the local system can be directly used, and no DNS acceleration processing is performed at this time; if not, execution is performed. Step 4;
  • the user clicks on the connection of the second-level domain name under the primary domain name, and then the second-level domain name is obtained and the URL is segmented, and the map is segmented according to the map table in the DNS acceleration data information.
  • the search for the mapping relationship between the primary domain name and the secondary domain name is the search for the mapping relationship between the primary domain name and the secondary domain name.
  • the DnsAccelemte() function calls the Windows system function QueueUserWorkItem(), which tells the queue daemon that the domain name is to be accelerated.
  • the queue daemon thread calls the ParallelGetAddrnfoProcO function, doing the following: Calling the CreateSemaphore function to create a semaphore;
  • the calling process of the function is the process of searching the DNS acceleration data information for the IP address corresponding to the domain name to be accelerated;
  • the IP address information corresponding to the to-be-accessed URL is obtained, and the IP address information is used for access processing;
  • the URL corresponding to which point is hovered here is the URL in ⁇ (1 ⁇ .. > ... ⁇ /div> to re-collect, mouth: news.sina.com.cn; mil.news.sina.com .cn; finance.sina.com.cn; tech.sina.com.cn; mobile.sina.com.cn; digi.sina.com.cn.
  • an embodiment of the present invention provides a browser, including: a calling module 510, an acceleration triggering module 520, and an acceleration executing module 530;
  • the calling module 510 is configured to start a browser, and invoke the DNS acceleration data information, where the DNS acceleration data information includes a plurality of pre-acquired domain names and IP address information of each domain name;
  • the pre-acquired domain names saved in the DNS acceleration data information invoked by the calling module 510 include a plurality of primary domain names, and a subdomain corresponding to each primary domain name.
  • the DNS acceleration data information invoked by the calling module 510 is configured with a map table, where the map table includes a mapping relationship between the primary domain name and the corresponding subdomains.
  • the calling module 510 invokes the DNS acceleration data information to download the DNS acceleration data information on the server side; or, the DNS acceleration data information that is actively pushed by the received server side; and/or collects the user access information for the browser. DNS acceleration data information obtained by URL.
  • the browser implements DNS acceleration data information through the following modules:
  • An obtaining module configured to obtain a URL accessed by the user, and extract a primary domain name corresponding to the URL
  • a function calling module configured to intercept a function of acquiring an address information of the browser side computer system, obtaining a subdomain name corresponding to the primary domain name, and the The socket address structure corresponding to the primary domain name and each subdomain name;
  • An information obtaining module configured to obtain, according to the socket address structure, an IP address information corresponding to the primary domain name and each sub-domain name;
  • the information storage module is configured to store the primary domain name, each sub-domain corresponding to the primary domain name, and IP address information corresponding to each domain name in the DNS acceleration data information.
  • the acceleration triggering module 520 is configured to receive a user-initiated access request for a certain URL, parse the access request, and extract the domain name corresponding to the URL, and trigger the acceleration execution module 530. Further, the acceleration triggering module 520 is further configured to extract Before the domain name corresponding to the URL, it is determined whether the URL is locally slowed first. If not, the domain name corresponding to the URL is extracted.
  • the acceleration execution module 530 is configured to detect whether the DNS acceleration data information includes a domain name corresponding to the URL, and if yes, obtain the IP address information corresponding to the domain name, and use the IP address information to perform access processing.
  • acceleration execution module 530 specifically includes:
  • the domain name detection sub-module 531 is configured to determine whether the domain name corresponding to the URL is a primary domain name or a sub-domain name, and if the domain name is a primary domain name, triggering a search sub-module, and if the domain name is a sub-domain name, triggering the domain name processing sub-module;
  • the domain name processing sub-module 532 is configured to split the obtained sub-domain name, obtain a primary domain name corresponding to the sub-domain name, and use the primary domain name as a search index to trigger a search sub-module;
  • the lookup submodule 533 is configured to search for a corresponding domain name in the map table.
  • the acceleration execution module 530 is specifically configured to insert the domain name corresponding to the URL into the to-be-accelerated list, and notify the queue daemon thread, create a semaphore through the queue daemon thread, and retrieve the DNS acceleration data information.
  • the IP address corresponding to the domain name is used to implement parsing of the domain name.
  • the acceleration execution module 530 is further configured to: when the IP address information corresponding to the plurality of domain names is acquired concurrently, use the queue daemon thread to notify the pre-created thread pool to allocate threads for each request task for obtaining IP address information, and utilize the thread Each of the allocated threads retrieves the IP address information in the DNS acceleration data information to implement parsing of each domain name.
  • the browser in the embodiment of the present invention generates DNS acceleration data information by performing statistics on some primary domain names in advance, and when the DNS acceleration data information is invoked by the user side browser, the webpage browsing acceleration can be implemented. Accelerated processing takes less time and improves the efficiency of DNS acceleration.
  • Embodiment 5 Embodiment 5
  • the embodiment of the present invention provides a browser, which is an extension of the browser of the fourth embodiment, that is, the extension adds a mouse hovering scheme.
  • the browser specifically includes: a calling module 610, an acceleration triggering module 620, an acceleration executing module 630, a hovering information obtaining module 640, and a domain name.
  • Obtain module 650 wherein:
  • the calling module 610 is configured to start a browser, and invoke the DNS acceleration data information, where the DNS acceleration data information includes a plurality of pre-acquired domain names and IP address information of each domain name;
  • the acceleration triggering module 620 is configured to receive a user-initiated access request for a URL, parse the access request, and extract a domain name corresponding to the URL, and trigger an acceleration execution module 630.
  • the acceleration execution module 630 is configured to detect the DNS acceleration. Whether the domain name corresponding to the URL is included in the data information, and if yes, obtaining the IP address information corresponding to the domain name, and using the domain name
  • the IP address information is accessed.
  • the hovering information obtaining module 640 is configured to detect, when the user browses the webpage corresponding to the accessed URL, whether the user's mouse hoveres on the browser webpage, and if so, obtain the webpage partition DIV element corresponding to the mouseover position;
  • the domain name obtaining module 650 is configured to divide each URL in the DIV element to obtain a domain name corresponding to each URL, and perform deduplication processing on the obtained domain name, and trigger the acceleration execution module 630 to extract IP address information corresponding to each domain name, for The user subsequently accesses each URL within the DIV element.
  • the browser of the present invention forms DNS acceleration data information by performing statistics on some primary domain names in advance, and when the DNS acceleration data information is invoked by the user side browser, the webpage browsing acceleration can be implemented, and the acceleration processing is performed.
  • the process takes a short time and improves the efficiency of the DNS force rate;
  • the browser of the present invention can also speed up the processing of the URL of the mouse hover, and has a wide application range.
  • the embodiment of the present invention further provides a server, including: a configuration module 710, Traversing module 720, information generating module 730, and calling interface module 740; wherein:
  • the configuration module 710 is configured to collect the primary domain name, and configure the primary domain name pool by using the collected primary domain name;
  • the configuration module 710 is specifically configured to receive the primary domain names reported by the user-side browser, configure the primary domain name pool based on each primary domain name, and/or obtain the hotspot domain name information of the entire network, and use the first N-bits of the access volume.
  • the domain name configures the primary domain name pool; the N is a positive integer.
  • the configuration module 710 is further configured to: when a new primary domain name is entered into the pool, and/or when the primary domain name is changed in the primary domain name pool, triggering the information acquiring module to acquire the new primary domain name and the change The sub-domain name corresponding to the subsequent primary domain name, and the IP address information corresponding to the primary domain name and each sub-domain name, and triggering the information generating module 730 to update the DNS acceleration data information.
  • the traversing module 720 is configured to select the primary domain name one by one in the primary domain name pool, obtain the subdomain name corresponding to the primary domain name, and the IP address information corresponding to the primary domain name and each subdomain name;
  • the traversing module 720 specifically includes:
  • a domain name traversal sub-module 721 configured to select a primary domain name one by one in the primary domain name pool
  • a statistics sub-module 722 configured to intercept a browser address-side computer system acquiring address information function (for example: system function getaddrinfo()), obtaining each a sub-domain name corresponding to the primary domain name, and a socket address structure corresponding to the primary domain name and each sub-domain name;
  • the address obtaining sub-module 723 is configured to obtain, according to the socket address structure, the IP address information corresponding to the primary domain name and each sub-domain name.
  • the information generating module 730 is configured to save each of the primary domain name and its corresponding sub-domain name, and IP address information of each domain name, to generate DNS acceleration data information.
  • the information generating module 730 when generating the DNS acceleration data information, also establishes a m ap table of the mapping relationship between the primary domain name and the corresponding secondary sub-domain names.
  • the interface module 740 is called to send the DNS acceleration data information to the user side browser.
  • the interface module 740 is specifically configured to: when the user-side browser is started, actively push the DNS acceleration data information to the user-side browser; or, when receiving the download request of the user-side browser, Sending the DNS acceleration data information to the user side browser.
  • the server in the embodiment of the present invention is configured to generate DNS acceleration data information, and the DNS acceleration data information is used by the user side browser to implement DNS acceleration processing of the user side browser.
  • Example 7
  • the embodiment of the present invention further provides a system for pre-reading the DNS of the domain name system, including: the browser described in Embodiment 4 or 5, and the server described in Embodiment 6.
  • the system of the present invention performs statistics on some primary domain names in advance on the server side to form DNS acceleration data information.
  • DNS acceleration data information is invoked by the user side browser, the webpage browsing acceleration can be implemented.
  • the processing time is short, which improves the efficiency of the DNS force speed;
  • system of the present invention can also speed up the processing of the URL of the mouse hovering area, and has a wide application range.
  • the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.
  • the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof.
  • a microprocessor or digital signal processor may be used in practice to implement some or all of the functionality of some or all of the components of the browser device for performing domain name resolution in accordance with embodiments of the present invention.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • Such a program implementing the present invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • FIG. 9 illustrates a user terminal that can implement a method of domain name resolution by a browser in accordance with the present invention.
  • the user terminal conventionally includes a processor 910 and a computer program product or computer readable medium in the form of a memory 920.
  • the memory 920 can be, for example, a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM. Class of electronic memory.
  • Memory 920 has a memory space 930 for program code 931 for performing any of the method steps described above.
  • storage space 930 for program code may include various program code 931 for implementing various steps in the above methods, respectively.
  • the program code can be read from or written to one or more computer program products.
  • Such computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
  • Such a computer program product is typically a portable or fixed storage unit as described with reference to FIG.
  • the storage unit may have a storage section, a storage space, and the like arranged similarly to the storage 920 in the user terminal of FIG.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit includes computer readable code 931, i.e., code readable by a processor, such as 910, that when executed by a user terminal causes the user terminal to perform each of the methods described above step.
  • an embodiment or “an embodiment,” or “one or more embodiments” as used herein means that the particular features, structures, or characteristics described in connection with the embodiments are included in at least one embodiment of the invention.
  • the phrase “in one embodiment” herein does not necessarily refer to the same embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

一种浏览器及其进行域名解析的方法 技术领域
本发明涉及互联网技术领域 具体涉及一种浏览器及其进行域名解 析的方法。 背景技术
目前, 浏览器在访问指定的 URL ( Uniform Resource Locator, 统一 资源定位符) 时, 获得该 URL的根内容, 解析该根内容, 建立相应的网 络请求。 可见, 现有方案是等用户输入网址才解析, 且下载根 URL后, 分析 HTML (超文本标记语言, Hypertext Markup Language) 数据内容, 然后才根据需要渲染的对象进行下载。 其中, 在下载需要渲染的对象之 前需要进行解析 DNS, 然而, DNS解析的时间可能从几个毫秒到 100秒 之间, 所以, 当采用现有方案访问一个 URL, 消耗的时间比较长。
为了解决 DNS解析耗时的问题, 目前存在几种 DNS预取技术, 具 体为:
1)通过 meta信息告知浏览器需要做 DNS预取。 如: <meta
http-equiv="x-dns-prefetch-control" content="on"/>;
2)使用 Link标签强制做 DNS预取。 如: <link rel="dns-prefetch" href="http:〃 some-web-site. com" I > ;
3)在地址栏发生变化时, 猜测相关后缀, 如当用户输入 www.sina时, 就猜测输入 www.sina.com, www. sina. org, www. sina. gov等域名。
然而, 上述 DNS预取技术中, 需要指定 Link标签, 对于目前大量现 存的网页, 不能解决 DNS加速问题。 另外, 若仅为了 DNS加速而升级 网页, 也不划算, 并且对于不需要的连接进行预读取, 浪费了网络资源, 增加了网络流量费用。 发明内容
鉴于上述问题, 提出了本发明以便提供能够克服上述问题或者至少 部分地解决或者减緩上述问题的一种浏览器及其进行域名解析的方法以 及程序。
根据本发明的一方面, 提供了一种浏览器进行域名解析的方法, 包 括: 启动浏览器, 并调用 DNS加速数据信息, 其中所述 DNS加速数据 信息包括预先获取的若干域名及各域名对应的 IP地址信息; 接收用户发 起的对某 URL的访问请求, 解析该访问请求, 并提取所述 URL对应的 域名; 检测所述 DNS加速数据信息中是否包含所述 URL对应的域名, 若包含, 则获取该域名对应的 IP地址信息, 并利用该 IP地址信息进行访 问处理。
相应地, 本发明还提供了一种浏览器, 包括: 调用模块, 用于启动 浏览器, 并调用 DNS加速数据信息, 其中所述 DNS加速数据信息包括 预先获取的若干域名及各域名对应的 IP地址信息; 加速触发模块, 用于 接收用户发起的对某 URL的访问请求,解析该访问请求,并提取所述 URL 对应的域名, 触发加速执行模块; 加速执行模块, 用于检测所述 DNS加 速数据信息中是否包含所述 URL对应的域名, 若包含, 则获取该域名对 应 IP地址信息, 并利用该 IP地址信息进行访问处理。
根据本发明的另一个方面, 提供了一种计算机程序, 其包括计算机 可读代码, 当所述计算机可读代码在用户终端上运行时, 导致所述用户 终端执行根据权利要求 1~10的任一个所述的浏览器进行域名解析的方 法。
根据本发明的再一个方面, 提供了一种计算机可读介质, 其中存储 了如权利要求 21所述的计算机程序。
本发明的有益效果为: 首先, 本发明所述技术方案, 通过预先对于 一些主域名进行统计, 形成 DNS加速数据信息, 当该 DNS加速数据信 息被用户侧浏览器调用后, 可以实现网页浏览加速, 该加速处理过程耗 时短, 提高了 DNS加速的效率; 其次, 本发明所述技术方案, 还可以对 鼠标悬停处的 URL进行加速处理, 适用范围广。
上述说明仅是本发明技术方案的概述, 为了能够更清楚了解本发明 的技术手段, 而可依照说明书的内容予以实施, 并且为了让本发明的上 述和其它目的、 特征和优点能够更明显易懂, 下文中特举例揭示本发明 的具体实施方式。 附图说明
通过阅读下文优选实施方式的详细描述, 各种其他的优点和益处对 于本领域普通技术人员将变得清楚明了。 附图仅用于示出优选实施方式 的目的, 而并不认为是对本发明的限制。 而且在整个附图中, 用相同的 参考符号表示相同的部件。 其中:
图 1 为本发明实施例一提供的一种浏览器进行域名解析的方法的流 程图;
图 2 为本发明实施例二提供的一种浏览器进行域名解析的方法的流 程图;
图 3为本发明实施例三中建立的 map表的映射关系图;
图 4为本发明实施例三中鼠标悬停示意图;
图 5为本发明实施例四提供的一种浏览器的结构示意图;
图 6为本发明实施例五提供的一种浏览器的结构示意图;
图 7为本发明实施例六提供的一种服务器的结构示意图;
图 8 为本发明实施例七提供的一种浏览器进行域名解析的系统的结 构 医图;
图 9示意性地示出了用于执行根据本发明的方法的用户终端的框图; 以及
图 10示意性地示出了用于保持或者携带实现根据本发明的方法的程 序代码的存储单元。 具体实施例
下面将参照附图更详细地描述本公开的示例性实施例。 虽然附图中 显示了本公开的示例性实施例, 然而应当理解, 可以以各种形式实现本 公开而不应被这里阐述的实施例所限制。 相反, 提供这些实施例是为了 能够更透彻地理解本公开, 并且能够将本公开的范围完整的传达给本领 域的技术人员。
为了解决现有技术中存在的技术问题, 本发明实施例提供一种浏览 器及其进行域名解析的方法。 本发明通过预先对于一些网站进行 DNS查 询请求统计, 形成 DNS加速数据信息, 当用户输入网站地址时, 通过调 用 DNS加速数据信息, 实现网页浏览加速, 提高了 DNS加速效率。 如下:
实施例一
如图 1 所示, 本发明实施例提供一种浏览器进行域名解析的方法, 具体包括以下步骤:
步骤 S101 , 启动浏览器, 并调用 DNS 加速数据信息; 其中, DNS 加速数据信息中包括预先获取的若干域名及各域名对应的 IP地址信息; 该步骤中, 预先获取的若干域名包括若干主域名, 以及每个主域名 对应的子域名 (优选为二级子域名) 。
该步骤中,调用的所述 DNS加速数据信息为在服务器侧生成的信息, 和 /或, 为在浏览器侧生成的信息。
当在服务器侧生成时, 所述调用的 DNS加速数据信息为在服务器侧 下载的 DNS加速数据信息, 或者, 为接收到的服务器侧主动推送的 DNS 加速数据信息。 其中, 服务器侧生成 DNS加速数据信息的方式包括:
( I ) 在预先配置的主域名池内逐一选取主域名, 获取选取的主域名 对应的子域名、 以及主域名与各子域名对应的 IP地址信息;
(2)保存各所述主域名及其对应的子域名、 以及各域名的 IP地址信 息, 生成 DNS加速数据信息。
优选地, 步骤 (1 ) 中, 获取主域名对应的子域名、 以及主域名与各 子域名对应的 IP地址信息的方式包括:
( I I ) 在主域名池内逐一选取主域名;
( 12 ) 拦截浏览器侧计算机系统的获取地址信息函数 (例如: 系统 函数 getaddrinfoO) , 获取每个所述主域名对应的子域名、 以及所述主域 名与各子域名对应的套接口地址结构;
( 13 ) 根据套接口地址结构, 得到主域名和各子域名对应的 IP地址 信息。
优选地, 步骤 (2) 中, 保存各所述主域名及其对应的子域名的方式 包括: 建立所述主域名与对应的各子域名间映射关系的 map表。
当在浏览器侧生成时, 所述 DNS加速数据信息为浏览器统计用户访 问的 URL而获取的 DNS加速数据信息。
其中, 所述浏览器获取 DNS加速数据信息的方式包括:
获取用户访问的 URL, 提取该 URL对应的主域名;
拦截浏览器侧计算机系 统的获取地址信息函数 ( 系 统函数 getaddrinfo()) , 获取所述主域名对应的子域名、 以及所述主域名与各子 域名对应的套接口地址结构;
根据所述套接口地址结构, 得到主域名和各子域名对应的 IP地址信 息;
将所述主域名、 所述主域名对应的各子域名、 以及各域名对应的 IP 地址信息存入 DNS加速数据信息中。
步骤 S102,接收用户发起的对某 URL的访问请求,解析该访问请求, 并提取所述 URL对应的域名;
优选地, 该步骤中, 在提取所述 URL对应的域名之前, 还包括: 判断所述 URL是否本地已先緩, 若未緩存, 则提取所述 URL对应 的域名, 执行步骤 S103 ; 若已緩存, 不进行 DNS加速处理。
步骤 S103, 检测 DNS加速数据信息中是否包含 URL对应的域名, 若包含, 则获取该域名对应的 IP地址信息, 并利用该 IP地址信息进行访 问处理。 该步骤中, 检测 DNS加速数据信息中是否包含所述 URL对应的域 名, 具体包括: 判断所述 URL对应的域名为主域名还是子域名, 若为主 域名, 则直接在 map 表中查找该域名; 若为子域名, 则对该子域名进行 分割, 得到该子域名对应的主域名, 并以该主域名为搜索索引, 在 map 表中查找对应域名。
该步骤中, 当检测到 DNS加速数据信息中包含 URL对应的域名时, 提取域名对应的 IP地址信息的方式, 包括:
将所述 URL对应的域名插入到待加速列表中,并通知队列守护线程; 所述队列守护线程创建信号量, 并调取所述 DN S加速数据信息中所 述 URL对应域名的 IP地址信息, 实现对所述域名的解析。
进一步地, 本发明实施例所述方法中, 在并发获取多个域名对应的 IP地址信息时, 利用所述队列守护线程通知预先创建的线程池为获取 IP 地址信息的各请求任务分配线程, 并利用分配的各线程调取所述 DN S加 速数据信息中的 IP地址信息, 实现对各域名的解析。
综上所述, 本发明实施例所述技术方案, 通过调用预先生成的 DNS 加速数据信息, 实现网页浏览加速, 提高了 DNS加速效率。 实施例二
如图 2 所示, 本发明实施例提供一种浏览器进行域名解析的方法, 该方法是实施例一所述的 DNS预读取方法的扩展方案, 即扩展增加了鼠 标悬停方案。 在下述阐述过程中, 对于与实施例一相同的处理方式在此 不做赘述, 所述方法具体包括:
步骤 S201 , 启动浏览器, 并调用 DNS加速数据信息, 其中所述 DNS 加速数据信息中包括预先获取的若干域名及各域名对应的 IP地址信息; 步骤 S202,接收用户发起的对某 URL的访问请求,解析该访问请求, 并提取所述 URL对应的域名;
步骤 S203, 检测 DNS加速数据信息中是否包含 URL对应的域名, 若包含, 则获取该域名对应的 IP地址信息, 并利用该 IP地址信息进行访 问处理;
步骤 S204, 当用户浏览访问的 URL对应的网页时, 检测用户鼠标是 否在网页上悬停, 若是, 获取鼠标悬停位置对应的网页分区 DIV元素; 步骤 S205 , 将所述 DIV元素内各 URL进行分割, 得到各 URL对应 的域名, 并对得到的域名进行去重处理;
步骤 S206, 检测 DNS加速数据信息中是否包含各所述 URL对应的 域名, 若包含, 则提取各域名对应的 IP地址信息; 步骤 S207, 当用户访问所述 DIV元素内的 URL时, 直接利用提取 的 IP地址信息进行访问处理。
综上所述, 本发明所述技术方案, 通过预先对于一些主域名进行统 计, 形成 DNS 加速数据信息, 当该 DNS 加速数据信息被用户侧浏览器 调用后, 可以实现网页浏览加速, 该加速处理过程耗时短, 提高了 DNS 力口速的效率;
另外, 本发明所述技术方案, 还可以对鼠标悬停处的 URL进行加速 处理, 适用范围广。 实施例三
本发明实施例提供一种浏览器进行域名解析的方法, 该方法是对实 施例一和实施例二所述方法的进一步详细阐述, 具体包括:
一, DNS加速数据信息生成步骤;
当在在服务器侧生成时, 包括:
1 ) 搜集主域名, 并利用搜集到的主域名配置主域名池;
其中, 搜集主域名配置主域名池的方式包括但不限于为: 接收用户 侧上报的各主域名, 和 /或, 获取全网热点域名信息, 利用访问量前 N位 主域名配置所述主域名池; 所述 N为正整数。
2 ) 在主域名池内逐一选取各主域名, 拦截系统函数 getaddrinfo(), 获取对应主域名对应的二级子域名, 以及主域名与各二级子域名的 IP地 址信息。
该步骤中, 拄截的系统函数为 getaddrinfo( const char *nodename, const char * service, const struct addrinfo * hints, struct addrinfo **result )函 数。
其中, nodename : 待解析的域名(ASCII 格式) ; service : 包含服务 名称或端口的 ANSI 字符串; hints : 网络 socket提示数据结构, 指明网 络协议族、 socket 类型、 协议等; result : 解析返回数据结构, 用来保存 系统解析的数据。
如果 getaddrinfo 函数返回成功, 那么由 result参数指向的变量已被 填入一个指针, 它指向的是由其中的 ai— next成员串联起来的 addrinfo结 构链表。 可以导致返回多个 addrinfo结构的情形有以下两个:
1、 与 nodename 参数关联的地址有多个, 那么适用于所请求地址簇 的每个地址都返回一个对应的结构。
2、 service参数指定的服务支持多个套接口类型, 那么每个套接口类 型都可能返回一个对应的结构,具体取决于 hints结构的 ai— socktype成员。 本发明实施例, 在拦截 getaddrinfo函数前, 先分配一个 hints结构, 把它清零后填写需要的字段, 再拦截 getaddrinfo ( ) 函数, 获取相应主域 名对应的二级子域名、 以及所述主域名与各二级子域名对应的套接口地 址结构, 再根据套接口地址结构, 得到主域名和各二级子域名对应的 IP 地址信息。
本发明实施例利用 getaddrinfo ( )函数可以将主机名和服务名转换成 套接口地址结构的技术特性, 获取了主域名池内各主域名对应的二级子 域名, 以及各域名对应的 IP地址信息。
3 ) 将获取的各主域名及其对应的二级子域名, 以及主域名与各二级 子域名的 IP地址信息保存到 DNS加速数据信息中。
该步骤中, 在保存主域名及其对应的二级子域名时, 建立主域名与 对应的各二级子域名间映射关系的 map表, 具体映射关系如图 3所示。
当在在浏览器侧生成时: 所述 DNS加速数据信息为浏览器统计用户 访问的 URL而获取的 DNS加速数据信息。
其中, 所述浏览器获取 DNS加速数据信息的方式包括:
获取用户访问的 URL, 提取该 URL对应的主域名;
拦截系统函数 getaddrinfo(), 获取所述主域名对应的二级子域名、 以 及所述主域名与各二级子域名对应的套接口地址结构;
根据所述套接口地址结构, 得到主域名和各二级子域名对应的 IP地 址信息;
将所述主域名、 所述主域名对应的各二级子域名、 以及各域名对应 的 IP地址信息存入 DNS加速数据信息中。 其中, 在保存主域名及其对应 的二级子域名时, 建立主域名与对应的各二级子域名间映射关系的 map 表, 具体映射关系继续如图 3所示。 二, DNS加速步骤;
1、 启动浏览器, 调用 DNS加速数据信息;
其中, 调用的 DNS加速数据信息为在服务器侧下载的 DNS加速数 据信息, 或者, 为接收到的服务器侧主动推送的 DNS加速数据信息, 和 /或, 调用的 DNS加速数据信息为浏览器统计用户访问的 URL而获取的 DNS加速数据信息。
2、 当浏览器地址栏发生变化时, 即用户发起了对某 URL 的访问请 求, 解析该访问请求, 获取待访问的 URL ;
其中, 地址栏发生变化是指用户在地址栏输入或由地址栏自动推荐 的 URL。 3、 判断待访问的 URL是否为系统已经緩存过的 URL, 若是, 说明 URL 对应的对象未过期, 可以直接使用本地系统緩存的信息, 此时就不 用进行 DNS加速处理了; 若否, 则执行步骤 4 ;
4、 分割 URL, 得到该 URL对应的域名, 并在 DNS加速数据信息中 搜索该域名, 当搜索到时, 执行步骤 5 ; 若未搜索到, 按正常访问流程处 理。
例如, 当用户在浏览网页时, 会点击主域名下的二级域名的连接, 这时会获取到该二级域名并进行 URL 的分割, 根据上述 DNS加速数据 信息内的 map表, 进行分割后的主域名、 二级域名的映射关系的查找。
5、 调用 DnsAccelerate()函数, 将待加速域名插入到加速列表中。 该步骤具体为:
DnsAccelemte()函数调用 Windows系统函数 QueueUserWorkItem(), 通知队列守护线程有域名待加速。
队列守护线程调用 ParallelGetAddrlnfoProcO函数, 执行如下操作: 调用 CreateSemaphore函数, 创建信号量;
调用:: QueueUserWorkltem (; GetAddrlnfoSysProc,
&pParseDataArray [index], 0), 解析域名; 该函数的调用过程即为在 DNS 加速数据信息中搜索待加速域名对应的 IP地址的过程;
等待所有队列中的任务完成。
6、 当域名加速完成后, 获取到待访问 URL对应的 IP地址信息, 利 用该 IP地址信息进行访问处理;
7、 当用户浏览所述 URL 对应的网页时, 检测用户鼠标是否在当前 浏览的网页上悬停, 若是, 获取鼠标悬停位置对应的网页分区 DIV元素; 其中, 鼠标悬停示意图如图 4所示;
8、 ^!夺所述 DIV元素内各 URL进行分割, 得到各 URL对应的域名, 并对得到的域名进行去重处理;
9、 检测 DNS加速数据信息中是否包含各所述 URL对应的域名, 若 包含, 则提取各域名对应的 IP地址信息, 并在用户访问所述 DIV元素内 的 URL时, 直接利用所述提取的 IP地址信息进行访问处理。
对于鼠标悬停方案举例说明如下:
检测鼠标的当前位置, 以及鼠标所覆盖在网页元素中的子元素的 URL链接。 例如鼠标当前处在<(1^ class="nav_2">
<ul>
<li><a href="http://news.sina.com.cn/"><b> r闻 </b></a></li>
<li><a href="http:〃 mil. news. sina.com. cn">军事 </a></li> <li><a href: http:〃 news. sina. com.cn/society/">社会 </a></li>
</ul>
<ul>
<li><a href: http:〃 finance . sina.com.cn/" ><b>财经 </b></ a></li> <li><a href: http:〃 finance . sina. com. cn/stock/">月殳票 </a></li>
<li><a href: http:〃 finance . sina. com. cn/fund/">基金 </a></li>
</ul>
<ul>
<li><a href: 'http://tech.sina.com.cn/";
<li><a
Figure imgf000011_0001
<li><a href: 'http:〃 digi.sina.com. cn/">数码 </a></li>
</ul>
</div>。
当 鼠 标 悬 停 于 上 述 DIV 元 素 中 的 <a href="http:〃 mobile. sina.com.cn/">上时, 会对在该 DIV的 URL进行 DNS 的加速处理。
悬停在哪个点对应的 URL, 这里是指<(1^ .. > ... </div>里的 URL去 重集合, 口: news.sina.com.cn ; mil.news.sina.com.cn; finance.sina.com.cn ; tech.sina.com.cn ; mobile.sina.com.cn; digi.sina.com.cn。 实施例四
如图 5所示, 本发明实施例提供一种浏览器, 包括: 调用模块 510、 加速触发模块 520和加速执行模块 530 ; 其中:
调用模块 510, 用于启动浏览器, 并调用 DNS加速数据信息, 其中 所述 DNS加速数据信息中包括预先获取的若干域名及各域名的 IP地址信 息;
进一步地, 调用模块 510调用的 DNS加速数据信息中保存的预先获 取的若干域名包括若干主域名, 以及每个主域名对应的子域名。
进一步地,调用模块 510调用的 DNS加速数据信息中建立有 map表, 所述 map表中包含有主域名与对应的各子域名间的映射关系。
进一步地, 调用模块 510, 调用的 DNS加速数据信息为在服务器侧 下载 DNS 加速数据信息; 或者, 为接收到的服务器侧主动推送的 DNS 加速数据信息; 和 /或, 为浏览器统计用户访问的 URL而获取的 DNS加 速数据信息。
当 DNS加速数据信息为浏览器统计用户访问的 URL而获取的 DNS 加速数据信息时, 浏览器具体通过如下模块实现 DNS加速数据信息的生 成:
获取模块, 用于获取用户访问的 URL, 提取该 URL对应的主域名; 函数调用模块, 用于拦截浏览器侧计算机系统的获取地址信息函数, 获取所述主域名对应的子域名、 以及所述主域名与各子域名对应的套接 口地址结构;
信息获取模块, 用于根据所述套接口地址结构, 得到主域名和各子 域名对应的 IP地址信息;
信息存储模块, 用于将所述主域名、 所述主域名对应的各子域名、 以及各域名对应的 IP地址信息存入 DNS加速数据信息中。 加速触发模块 520, 用于接收用户发起的对某 URL的访问请求, 解 析该访问请求, 并提取所述 URL对应的域名, 触发加速执行模块 530; 进一步地, 加速触发模块 520, 还用于提取所述 URL对应的域名前, 判断所述 URL是否本地已先緩, 若未緩存, 则提取所述 URL对应的域 名。 加速执行模块 530, 用于检测所述 DNS加速数据信息中是否包含所 述 URL对应的域名, 若包含, 则获取该域名对应 IP地址信息, 并利用该 IP地址信息进行访问处理。
进一步地, 加速执行模块 530, 具体包括:
域名检测子模块 531, 用于判断所述 URL对应的域名为主域名还是 子域名, 若为主域名, 触发查找子模块, 若为子域名, 触发域名处理子 模块;
域名处理子模块 532, 用于对获取的子域名进行分割, 得到该子域名 对应的主域名, 并以该主域名为搜索索引, 触发查找子模块;
查找子模块 533, 用于在所述 map表中查找对应域名。
进一步地, 加速执行模块 530, 具体用于将所述 URL对应的域名插 入到待加速列表中, 并通知队列守护线程, 通过所述队列守护线程创建 信号量, 并调取所述 DNS加速数据信息中所述域名对应的 IP地址, 实现 对所述域名的解析。
进一步地, 加速执行模块 530, 进一步用于在并发获取多个域名对应 的 IP地址信息时, 利用所述队列守护线程通知预先创建的线程池为获取 IP地址信息的各请求任务分配线程, 并利用分配的各线程调取所述 DNS 加速数据信息中的 IP地址信息, 实现对各域名的解析。 综上所述, 本发明实施例所述浏览器, 通过预先对于一些主域名进 行统计, 形成 DNS 加速数据信息, 当该 DNS 加速数据信息被用户侧浏 览器调用后, 可以实现网页浏览加速, 该加速处理过程耗时短, 提高了 DNS加速的效率。 实施例五
如图 6 所示, 本发明实施例提供一种浏览器, 该浏览器是对实施例 四所述浏览器的方案扩展, 即扩展增加了鼠标悬停方案。 在下述阐述过 程中, 对于与实施例四相同的处理方式在此不做赘述, 所述浏览器具体 包括: 调用模块 610、 加速触发模块 620、 加速执行模块 630、 悬停信息 获取模块 640和域名获取模块 650 ; 其中:
调用模块 610, 用于启动浏览器, 并调用 DNS加速数据信息, 其中 所述 DNS加速数据信息中包括预先获取的若干域名及各域名的 IP地址信 息;
加速触发模块 620, 用于接收用户发起的对某 URL的访问请求, 解 析该访问请求, 并提取所述 URL对应的域名, 触发加速执行模块 630; 加速执行模块 630, 用于检测所述 DNS加速数据信息中是否包含所 述 URL对应的域名, 若包含, 则获取该域名对应 IP地址信息, 并利用该
IP地址信息进行访问处理。
悬停信息获取模块 640, 用于当用户浏览访问的 URL对应的网页时, 检测用户鼠标是否在浏览器网页上悬停, 若是, 获取鼠标悬停位置对应 的网页分区 DIV元素;
域名获取模块 650, 用于将所述 DIV元素内各 URL进行分割, 得到 各 URL对应的域名, 并对得到的域名进行去重处理, 触发加速执行模块 630提取各域名对应的 IP地址信息, 供用户后续访问 DIV元素内各 URL 使用。
综上所述, 本 发明所述浏览器, 通过预先对于一些主域名进行统 计, 形成 DNS 加速数据信息, 当该 DNS 加速数据信息被用户侧浏览器 调用后, 可以实现网页浏览加速, 该加速处理过程耗时短, 提高了 DNS 力口速的效率;
另外, 本发明所述浏览器, 还可以对鼠标悬停处的 URL进行加速处 理, 适用范围广。 实施例六
如图 7所示, 本发明实施例还提供一种服务器, 包括: 配置模块 710、 遍历模块 720、 信息生成模块 730和调用接口模块 740 ; 其中:
配置模块 710, 用于搜集主域名, 并利用搜集到的主域名配置主域名 池;
进一步地, 配置模块 710, 具体用于接收用户侧浏览器上报的各主域 名, 基于各主域名配置所述主域名池; 和 /或, 获取全网热点域名信息, 利用访问量前 N位主域名配置所述主域名池; 所述 N为正整数。
进一步地, 配置模块 710, 还用于当有新主域名入池时, 和 /或, 当 所述主域名池内有主域名发生变更时, 触发所述信息获取模块获取所述 新主域名和变更后的主域名对应的子域名、 以及主域名与各子域名对应 的 IP地址信息,并触发所述信息生成模块 730对所述 DNS加速数据信息 进行更新。 遍历模块 720, 用于在所述主域名池内逐一选取主域名, 获取所述主 域名对应的子域名、 以及主域名与各子域名对应的 IP地址信息;
进一步地, 遍历模块 720, 具体包括:
域名遍历子模块 721, 用于在所述主域名池内逐一选取主域名; 统计子模块 722, 用于拦截浏览器侧计算机系统的获取地址信息函数 (例如: 系统函数 getaddrinfo()) , 获取每个所述主域名对应的子域名、 以及所述主域名与各子域名对应的套接口地址结构;
地址获取子模块 723, 用于根据所述套接口地址结构, 得到主域名和 各子域名对应的 IP地址信息。 信息生成模块 730, 用于保存各所述主域名及其对应的子域名、 以及 各域名的 IP地址信息, 生成 DNS加速数据信息;
进一步地, 信息生成模块 730, 在生成 DNS加速数据信息时, 还建 立所述主域名与对应的各二级子域名间映射关系的 m ap表。
调用接口模块 740, 用于将所述 DNS加速数据信息发送至用户侧浏 览器。
进一步地, 调用接口模块 740, 具体用于在用户侧浏览器启动时, 主 动将所述 DNS加速数据信息推送至所述用户侧浏览器; 或者, 在接收到 用户侧浏览器的下载请求时, 将所述 DNS加速数据信息发送至所述用户 侧浏览器。
综上所述, 本发明实施例所述服务器用以生成 DNS加速数据信息, 该 DNS 加速数据信息供用户侧浏览器的调用, 实现了用户侧浏览器的 DNS加速处理。 实施例七
如图 8所示, 本发明实施例还提供一种对域名系统 DNS进行预读取 的系统, 包括: 实施例四或五所述的浏览器, 以及实施例六所述的服务 器。
综上所述, 本发明所述系统, 在服务器侧预先对于一些主域名进行 统计, 形成 DNS 加速数据信息, 当该 DNS 加速数据信息被用户侧浏览 器调用后, 可以实现网页浏览加速, 该加速处理过程耗时短, 提高了 DNS 力口速的效率;
另外, 本发明所述系统,还可以对鼠标悬停处的 URL进行加速处理, 适用范围广。
在此提供的算法和显示不与任何特定计算机、 虚拟系统或者其它设 备固有相关。 各种通用系统也可以与基于在此的示教一起使用。 根据上 面的描述, 构造这类系统所要求的结构是显而易见的。 此外, 本发明也 不针对任何特定编程语言。 应当明白, 可以利用各种编程语言实现在此 描述的本发明的内容, 并且上面对特定语言所做的描述是为了披露本发 明的最佳实施方式。
对于装置实施例而言, 由于其与方法实施例基本相似, 所以描述的 比较简单, 相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述, 每个实施例重点 说明的都是与其他实施例的不同之处, 各个实施例之间相同相似的部分 互相参见即可。
本发明的各个部件实施例可以以硬件实现, 或者以在一个或者多个 处理器上运行的软件模块实现, 或者以它们的组合实现。 本领域的技术 人员应当理解, 可以在实践中使用微处理器或者数字信号处理器 (DSP) 来实现根据本发明实施例的进行域名解析的浏览器装置中的一些或者全 部部件的一些或者全部功能。 本发明还可以实现为用于执行这里所描述 的方法的一部分或者全部的设备或者装置程序 (例如, 计算机程序和计 算机程序产品) 。 这样的实现本发明的程序可以存储在计算机可读介质 上, 或者可以具有一个或者多个信号的形式。 这样的信号可以从因特网 网站上下载得到, 或者在载体信号上提供, 或者以任何其他形式提供。
例如, 图 9 示出了可以实现根据本发明的浏览器进行域名解析的方 法的用户终端。 该用户终端传统上包括处理器 910和以存储器 920 形式 的计算机程序产品或者计算机可读介质。 存储器 920 可以是诸如闪存、 EEPROM (电可擦除可编程只读存储器) 、 EPROM、 硬盘或者 ROM之 类的电子存储器。 存储器 920 具有用于执行上述方法中的任何方法步骤 的程序代码 931的存储空间 930。 例如, 用于程序代码的存储空间 930可 以包括分別用于实现上面的方法中的各种步骤的各个程序代码 931。这些 程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个 或者多个计算机程序产品中。 这些计算机程序产品包括诸如硬盘, 紧致 盘 (CD) 、 存储卡或者软盘之类的程序代码载体。 这样的计算机程序产 品通常为如参考图 10所述的便携式或者固定存储单元。 该存储单元可以 具有与图 9的用户终端中的存储器 920类似布置的存储段、 存储空间等。 程序代码可以例如以适当形式进行压缩。 通常, 存储单元包括计算机可 读代码 931, , 即可以由例如诸如 910之类的处理器读取的代码, 这些代 码当由用户终端运行时, 导致该用户终端执行上面所描述的方法中的各 个步骤。
本文中所称的 "一个实施例" 、 "实施例" 或者 "一个或者多个实 施例" 意味着, 结合实施例描述的特定特征、 结构或者特性包括在本发 明的至少一个实施例中。 此外, 请注意, 这里 "在一个实施例中" 的词 语例子不一定全指同一个实施例。
在此处所提供的说明书中, 说明了大量具体细节。 然而, 能够理解, 本发明的实施例可以在没有这些具体细节的情况下被实践。 在一些实例 中, 并未详细示出公知的方法、 结构和技术, 以便不模糊对本说明书的 理解。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限 制, 并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计 出替换实施例。 在权利要求中, 不应将位于括号之间的任何参考符号构 造成对权利要求的限制。 单词 "包含" 不排除存在未列在权利要求中的 元件或步骤。 位于元件之前的单词 "一" 或 "一个" 不排除存在多个这 样的元件。 本发明可以借助于包括有若干不同元件的硬件以及借助于适 当编程的计算机来实现。 在列举了若干装置的单元权利要求中, 这些装 置中的若干个可以是通过同一个硬件项来具体体现。 单词第一、 第二、 以及第三等的使用不表示任何顺序。 可将这些单词解释为名称。
此外, 还应当注意, 本说明书中使用的语言主要是为了可读性和教 导的目的而选择的, 而不是为了解释或者限定本发明的主题而选择的。 因此, 在不偏离所附权利要求书的范围和精神的情况下, 对于本技术领 域的普通技术人员来说许多修改和变更都是显而易见的。 对于本发明的 范围, 对本发明所做的公开是说明性的, 而非限制性的, 本发明的范围 由所附权利要求书限定。

Claims

权 利 要 求
1、 一种浏览器进行域名解析的方法, 包括:
启动浏览器, 并调用 DNS 加速数据信息, 其中所述 DNS 加速数据 信息包括预先获取的若干域名及各域名对应的 IP地址信息;
接收用户发起的对某 URL的访问请求, 解析该访问请求, 并提取所 述 URL对应的域名;
检测所述 DNS 加速数据信息中是否包含所述 URL对应的域名, 若 包含, 则获取该域名对应的 IP地址信息, 并利用该 IP地址信息进行访问 处理。
2、 如权利要求 1 所述的方法, 其中所述 DNS加速数据信息中预先 获取的若干域名包括若干主域名, 以及每个主域名对应的子域名。
3、 如权利要求 2所述的方法, 其中所述 DNS加速数据信息中各信 息以 map表的方式存储, 所述 map表中包含有主域名与对应的各子域名 间的映射关系。
4、 如权利要求 3 所述的方法, 其中所述检测 DNS加速数据信息中 是否包含所述 URL对应的域名, 进一步包括:
判断所述 URL对应的域名为主域名还是子域名, 若为主域名, 则直 接在所述 map表中查找该域名; 若为子域名, 则对该子域名进行分割, 得到该子域名对应的主域名后, 以该主域名为搜索索引, 在所述 map 表 中查找对应域名。
5、 如权利要求 1 至 4 任一项所述的方法, 其中所述提取所述 URL 对应的域名之前, 还包括: 判断所述 URL是否本地已先緩, 若未緩存, 则提取所述 URL对应的域名。
6、 如权利要求 1所述的方法, 其中所述方法还包括:
当用户浏览访问的 URL对应的网页时, 检测用户鼠标是否在网页上 悬停, 若是, 获取鼠标悬停位置对应的网页分区 DIV元素;
将所述 DIV元素内各 URL进行分割, 得到各 URL对应的域名, 并 对得到的域名进行去重处理;
检测所述 DNS 加速数据信息中是否包含各所述 URL对应的域名, 若包含, 则提取各域名对应的 IP地址信息, 并在用户访问所述 DIV元素 内的 URL时, 直接利用所述提取的 IP地址信息进行访问处理。
7、 如权利要求 1 或 6所述的方法, 其中当检测到 DNS加速数据信 息中包含 URL对应的域名时,提取域名对应的 IP地址信息的方式,包括: 将所述 URL对应的域名插入到待加速列表中,并通知队列守护线程; 所述队列守护线程创建信号量, 并调取所述 DN S加速数据信息中所 述 URL对应域名的 IP地址信息, 实现对所述域名的解析。
8、 如权利要求 7所述的方法, 其中所述方法进一步包括:
所述方法中, 在并发获取多个域名对应的 IP地址信息时, 利用所述 队列守护线程通知预先创建的线程池为获取 IP地址信息的各请求任务分 配线程,并利用分配的各线程调取所述 DNS加速数据信息中的 IP地址信 息, 实现对各域名的解析。
9、 如权利要求 1 至 4任一项所述的方法, 其中所述调用的 DNS加 速数据信息为在服务器侧下载的 DNS加速数据信息;
或者, 所述调用的 DNS加速数据信息为接收到的服务器侧主动推送 的 DNS加速数据信息;
和 /或,所述调用的 DNS加速数据信息为所述浏览器统计用户访问的 URL而获取的 DNS加速数据信息。
10、 如权利要求 9所述的方法, 其中所述浏览器获取 DNS加速数据 信息的方式包括:
获取用户访问的 URL, 提取该 URL对应的主域名;
拦截浏览器侧计算机系统的获取地址信息函数, 获取所述主域名对 应的子域名、 以及所述主域名与各子域名对应的套接口地址结构;
根据所述套接口地址结构, 得到主域名和各子域名对应的 IP地址信 息;
将所述主域名、 所述主域名对应的各子域名、 以及各域名对应的 IP 地址信息存入 DNS加速数据信息中。
11、 一种浏览器, 包括:
调用模块, 用于启动浏览器, 并调用 DNS加速数据信息, 其中所述 DNS 加速数据信息包括预先获取的若干域名及各域名对应的 IP 地址信 息;
加速触发模块, 用于接收用户发起的对某 URL的访问请求, 解析该 访问请求, 并提取所述 URL对应的域名, 触发加速执行模块;
加速执行模块, 用于检测所述 DNS 加速数据信息中是否包含所述 URL对应的域名, 若包含, 则获取该域名对应 IP地址信息, 并利用该 IP 地址信息进行访问处理。
12、 如权利要求 11 所述的浏览器, 其中所述调用模块调用的 DNS 加速数据信息中预先获取的若干域名包括若干主域名, 以及每个主域名 对应的子域名。
13、 如权利要求 12 所述的浏览器, 其中所述调用模块调用的 DNS 加速数据信息中各信息以 map表的方式存储, 所述 map表中包含有主域 名与对应的各子域名间的映射关系。
14、 如权利要求 13所述的浏览器, 其中所述加速执行模块, 进一步 包括:
域名检测子模块, 用于判断所述 URL对应的域名为主域名还是二级 子域名, 若为主域名, 触发查找子模块, 若为子域名, 触发域名处理子 模块;
域名处理子模块, 用于对子域名进行分割, 得到该子域名对应的主 域名后, 并以该主域名为搜索索引, 触发查找子模块;
查找子模块, 用于在所述 map表中查找对应域名。
15、 如权利要求 11 至 14任一项所述的浏览器, 其中所述加速触发 模块, 还用于提取所述 URL对应的域名前, 判断所述 URL是否本地已 先緩, 若未緩存, 则提取所述 URL对应的域名。
16、 如权利要求 11所述的浏览器, 其中所述浏览器还包括: 悬停信息获取模块, 用于当用户浏览访问的 URL对应的网页时, 检 测用户鼠标是否在网页上悬停, 若是, 获取鼠标悬停位置对应的网页分 区 DIV元素;
域名获取模块, 用于将所述 DIV 元素内各 URL 进行分割, 得到各 URL 对应的域名, 并对得到的域名进行去重处理, 触发所述加速执行模 块提取各域名对应的 IP地址信息。
17、 如权利要求 11 或 16 所述的浏览器, 其中所述加速执行模块, 具体用于将所述 URL对应的域名插入到待加速列表中, 并通知队列守护 线程, 通过所述队列守护线程创建信号量, 并调取所述 DNS加速数据信 息中所述 URL对应域名对应的 IP地址信息, 实现对所述域名的解析。
18、 如权利要求 17所述的浏览器, 其中所述加速执行模块, 进一步 用于在并发获取多个域名对应的 IP地址信息时, 利用所述队列守护线程 通知预先创建的线程池为获取 IP地址信息的各请求任务分配线程, 并利 用分配的各线程调取所述 DNS加速数据信息中的 IP地址信息,实现对各 域名的解析。
19、 如权利要求 11至 14任一项所述的浏览器, 其中所述调用模块, 调用的 DNS 加速数据信息为在服务器侧下载 DNS 加速数据信息; 或者 为接收到的服务器侧主动推送的 DNS加速数据信息; 和 /或, 为所述浏览 器统计用户访问的 URL而获取的 DNS加速数据信息。
20、 如权利要求 19所述的浏览器, 其中所述浏览器进一步包括: 获取模块, 用于获取用户访问的 URL, 提取该 URL对应的主域名; 函数调用模块, 用于拦截浏览器侧计算机系统的获取地址信息函数, 获取所述主域名对应的子域名、 以及所述主域名与各子域名对应的套接 口地址结构;
信息获取模块, 用于根据所述套接口地址结构, 得到主域名和各子 域名对应的 IP地址信息;
信息存储模块, 用于将所述主域名、 所述主域名对应的各子域名、 以及各域名对应的 IP地址信息存入 DNS加速数据信息中。
21、 一种计算机程序, 包括计算机可读代码, 当所述计算机可读代 码在用户终端上运行时, 导致所述用户终端执行根据权利要求 1~10中的 任一个所述的浏览器进行域名解析的方法。
22、 一种计算机可读介质, 其中存储了如权利要求 21所述的计算机 程序。
PCT/CN2013/083082 2012-09-29 2013-09-06 一种浏览器及其进行域名解析的方法 Ceased WO2014048241A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/431,981 US9729499B2 (en) 2012-09-29 2013-09-06 Browser and method for domain name resolution by the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210379513.9A CN102882991B (zh) 2012-09-29 2012-09-29 一种浏览器及其进行域名解析的方法
CN201210379513.9 2012-09-29

Publications (1)

Publication Number Publication Date
WO2014048241A1 true WO2014048241A1 (zh) 2014-04-03

Family

ID=47484133

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/083082 Ceased WO2014048241A1 (zh) 2012-09-29 2013-09-06 一种浏览器及其进行域名解析的方法

Country Status (3)

Country Link
US (1) US9729499B2 (zh)
CN (1) CN102882991B (zh)
WO (1) WO2014048241A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108694184A (zh) * 2017-04-06 2018-10-23 北京国双科技有限公司 曝光url处理方法及装置
CN113065078A (zh) * 2021-03-16 2021-07-02 赛尔新技术(北京)有限公司 模拟用户行为拨测web网站多级域名的统计分析方法
CN113157997A (zh) * 2020-01-23 2021-07-23 华为技术有限公司 域名特征的提取方法和特征提取装置

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102882991B (zh) * 2012-09-29 2016-03-30 北京奇虎科技有限公司 一种浏览器及其进行域名解析的方法
CN103078968B (zh) * 2013-01-22 2015-12-02 华为技术有限公司 域名查询方法、ip分族方法、装置和设备
CN104125308B (zh) * 2013-04-25 2018-04-10 阿里巴巴集团控股有限公司 针对多用户的域名解析的方法和域名解析系统
CN103399871B (zh) * 2013-07-09 2018-06-12 北京奇安信科技有限公司 获取一个主域名相关联的二级域名信息的设备和方法
CN103595827B (zh) * 2013-11-29 2017-06-06 北京奇安信科技有限公司 一种cdn源站的ip地址识别方法及装置
US9444681B2 (en) * 2014-01-31 2016-09-13 Dell Products L.P. Systems and methods for resolution of uniform resource locators in a local network
CN104092787B (zh) * 2014-06-24 2016-04-13 腾讯科技(深圳)有限公司 基于dns的网络访问方法和系统
CN104168337B (zh) * 2014-09-10 2018-03-27 北京浩瀚深度信息技术股份有限公司 一种网络访问的加速方法
CN104298780B (zh) * 2014-11-05 2018-01-12 百纳(武汉)信息技术有限公司 一种浏览器网页信息的预获取方法及系统
CN104361067B (zh) * 2014-11-05 2018-07-20 百纳(武汉)信息技术有限公司 一种浏览器网页信息的智能加载方法及系统
CN104683330A (zh) * 2015-02-06 2015-06-03 广州酷狗计算机科技有限公司 反域名劫持方法和装置
CN105468412B (zh) * 2015-11-26 2020-09-08 金蝶软件(中国)有限公司 动态打包方法和装置
CN107632990B (zh) * 2016-07-19 2021-06-29 北京京东尚科信息技术有限公司 一种信息的展示方法和装置
CN106302850B (zh) * 2016-08-04 2019-07-26 北京迅达云成科技有限公司 一种权威dns配置优化方法与装置
CN106294848A (zh) * 2016-08-22 2017-01-04 深圳市茁壮网络股份有限公司 一种网页解析、获取方法及装置
CN106534141A (zh) * 2016-11-22 2017-03-22 汉柏科技有限公司 一种防止域名服务器被攻击的方法、系统及防火墙
CN108268508A (zh) * 2016-12-30 2018-07-10 北京国双科技有限公司 Url去重方法及装置
CN106790762B (zh) * 2017-01-11 2022-05-24 腾讯科技(深圳)有限公司 域名解析方法和装置
CN107197058B (zh) * 2017-07-21 2019-09-17 北京亚鸿世纪科技发展有限公司 一种高覆盖度且准确的域名ip对应关系获取方法及装置
CN107798061A (zh) * 2017-09-18 2018-03-13 维沃移动通信有限公司 一种网页加载方法及移动终端
CN108282455A (zh) * 2017-09-28 2018-07-13 广州市动景计算机科技有限公司 网页请求方法、装置及域名信息解析结果处理方法、装置
US11025589B1 (en) * 2018-08-31 2021-06-01 Cisco Technology, Inc Location-independent data-object name mapping
CN109286691B (zh) * 2018-09-30 2021-11-05 网宿科技股份有限公司 信息引流、请求发送、通信加速方法、引流及节点服务器
CN109582473A (zh) * 2018-10-26 2019-04-05 阿里巴巴集团控股有限公司 基于区块链的跨链数据访问方法和装置
KR102905776B1 (ko) 2019-04-12 2025-12-31 삼성전자 주식회사 도메인 네임 서버(dns) 레졸루션을 통해 에지 서버 또는 에지 서비스를 탐색하기 위한 방법 및 시스템
CN112235231B (zh) * 2019-07-15 2022-08-19 腾讯科技(深圳)有限公司 网络加速器的禁用ip地址的确定方法、装置及存储介质
CN111030988B (zh) * 2019-11-01 2022-01-04 烽火通信科技股份有限公司 一种自反馈调度导流方法及系统
CN110798545B (zh) * 2019-11-05 2020-08-18 中国人民解放军国防科技大学 一种基于Web的域名数据获取方法
CN113691489A (zh) * 2020-05-19 2021-11-23 北京观成科技有限公司 一种恶意域名检测特征处理方法、装置和电子设备
CN112115348B (zh) * 2020-08-05 2024-04-12 互联网域名系统北京市工程研究中心有限公司 品牌域名注册的推荐方法及系统
CN113992627B (zh) * 2021-10-26 2024-08-06 北京字节跳动网络技术有限公司 一种域名解析方法、装置、设备及介质
CN114357997B (zh) * 2021-12-23 2025-08-15 山东伏羲智库互联网研究院 域名识别方法及系统
CN114866611B (zh) * 2022-03-23 2024-09-27 Oppo广东移动通信有限公司 消息回调方法、装置、存储介质以及计算机设备
CN115378905B (zh) * 2022-07-22 2023-11-14 北京华顺信安科技有限公司 一种域名收集方法、装置、设备及计算机可读存储介质
US12443369B2 (en) * 2022-09-23 2025-10-14 SanDisk Technologies, Inc. Automated fast path processing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102340554A (zh) * 2011-09-29 2012-02-01 奇智软件(北京)有限公司 一种域名系统dns的最优应用服务器选取方法和装置
CN102546854A (zh) * 2012-01-10 2012-07-04 上海西默通信技术有限公司 一种域名和服务器建立http连接的域名解析方法
CN102882991A (zh) * 2012-09-29 2013-01-16 北京奇虎科技有限公司 一种浏览器及其进行域名解析的方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116444A1 (en) * 2000-02-29 2002-08-22 Imran Chaudhri Method and system for providing intelligent network content delivery
US7219346B2 (en) * 2000-12-05 2007-05-15 Microsoft Corporation System and method for implementing a client side HTTP stack
US9197486B2 (en) * 2008-08-29 2015-11-24 Google Inc. Adaptive accelerated application startup
US7970940B1 (en) * 2009-12-22 2011-06-28 Intel Corporation Domain name system lookup latency reduction
US8214691B1 (en) * 2011-09-30 2012-07-03 Google Inc. System and method for testing internet functionality of a computing device in a simulated internet environment
US9319377B2 (en) * 2011-10-26 2016-04-19 Hewlett-Packard Development Company, L.P. Auto-split DNS
CN102663012B (zh) * 2012-03-20 2017-07-04 北京搜狗信息服务有限公司 一种网页预加载方法及系统
CN102843445B (zh) * 2012-09-29 2016-01-13 北京奇虎科技有限公司 一种浏览器及其进行域名解析的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102340554A (zh) * 2011-09-29 2012-02-01 奇智软件(北京)有限公司 一种域名系统dns的最优应用服务器选取方法和装置
CN102546854A (zh) * 2012-01-10 2012-07-04 上海西默通信技术有限公司 一种域名和服务器建立http连接的域名解析方法
CN102882991A (zh) * 2012-09-29 2013-01-16 北京奇虎科技有限公司 一种浏览器及其进行域名解析的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108694184A (zh) * 2017-04-06 2018-10-23 北京国双科技有限公司 曝光url处理方法及装置
CN108694184B (zh) * 2017-04-06 2022-03-11 北京国双科技有限公司 曝光url处理方法及装置
CN113157997A (zh) * 2020-01-23 2021-07-23 华为技术有限公司 域名特征的提取方法和特征提取装置
CN113065078A (zh) * 2021-03-16 2021-07-02 赛尔新技术(北京)有限公司 模拟用户行为拨测web网站多级域名的统计分析方法
CN113065078B (zh) * 2021-03-16 2022-11-11 赛尔新技术(北京)有限公司 模拟用户行为拨测web网站多级域名的统计分析方法

Also Published As

Publication number Publication date
US9729499B2 (en) 2017-08-08
US20150244670A1 (en) 2015-08-27
CN102882991B (zh) 2016-03-30
CN102882991A (zh) 2013-01-16

Similar Documents

Publication Publication Date Title
CN102882991B (zh) 一种浏览器及其进行域名解析的方法
CN102843445B (zh) 一种浏览器及其进行域名解析的方法
CN102855334B (zh) 一种浏览器及其获取dns解析数据的方法
CN106489145B (zh) web网站的访问方法、装置及Web网站系统
CN104063460B (zh) 一种在浏览器中加载网页的方法和装置
CN102647482B (zh) 一种访问网站的方法和系统
CN105100294B (zh) 获取网页的方法、系统、网络服务器、浏览器和gslb
CN106161669A (zh) 一种快速域名解析方法和系统、及其终端和服务器
CN106126693B (zh) 一种网页的相关数据的发送方法及装置
CN103365695A (zh) 加快子资源加载速度的方法和装置
CN102929944B (zh) Ie内核浏览器进行网页渲染的方法及装置
CN105930528A (zh) 一种网页缓存的方法及服务器
US8484373B2 (en) System and method for redirecting a request for a non-canonical web page
CN104572777A (zh) 基于UIWebView组件的网页加载方法及装置
CN109634753B (zh) 切换浏览器内核的数据处理方法、装置、终端和存储介质
CN106209486B (zh) 域名解析生效的检测方法、浏览器、服务端和系统
WO2011140784A1 (zh) 屏蔽移动终端访问无线网络信息的方法、移动终端和系统
CN102761628B (zh) 泛域名识别、处理装置及方法
CN102323935A (zh) 中间服务器、移动浏览方法及系统
WO2020088170A1 (zh) 域名系统配置方法及相关装置
CN103618742B (zh) 网站管理员权限验证方法
CN103793495A (zh) 应用信息检索方法及系统和应用信息获取方法及系统
CN102333123B (zh) 文件存储方法、设备、查找方法、设备和网络设备
CN104980464B (zh) 一种网络请求处理方法、网络服务器和网络系统
CN104283920A (zh) 一种网络应用路由的方法、服务器、终端和系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13842255

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14431981

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13842255

Country of ref document: EP

Kind code of ref document: A1