技术领域technical field
本发明涉及互联网技术领域,具体涉及一种浏览器及其进行域名解析的方法。The invention relates to the technical field of the Internet, in particular to a browser and a domain name resolution method thereof.
背景技术Background technique
目前,浏览器在访问指定的URL(UniformResourceLocator,统一资源定位符)时,获得该URL的根内容,解析该根内容,建立相应的网络请求。可见,现有方案是等用户输入网址才解析,且下载根URL后,分析HTML(超文本标记语言,HypertextMarkupLanguage)数据内容,然后才根据需要渲染的对象进行下载。其中,在下载需要渲染的对象之前需要进行解析DNS,然而,DNS解析的时间可能从几个毫秒到100秒之间,所以,当采用现有方案访问一个URL,消耗的时间比较长。Currently, when a browser accesses a specified URL (UniformResourceLocator, Uniform Resource Locator), it obtains the root content of the URL, parses the root content, and establishes a corresponding network request. It can be seen that the existing solution is to wait for the user to input the URL before parsing, and after downloading the root URL, analyze the HTML (Hypertext Markup Language, HypertextMarkupLanguage) data content, and then download according to the object to be rendered. Among them, DNS needs to be resolved before downloading the object to be rendered. However, the DNS resolution time may range from a few milliseconds to 100 seconds. Therefore, when using the existing solution to access a URL, it takes a relatively long time.
为了解决DNS解析耗时的问题,目前存在几种DNS预取技术,具体为:In order to solve the time-consuming problem of DNS resolution, there are currently several DNS prefetching technologies, specifically:
1)通过meta信息告知浏览器需要做DNS预取。如:<metahttp-equiv=″x-dns-prefetch-control″content=″on″/>;1) Inform the browser that DNS prefetching needs to be done through meta information. Such as: <metahttp-equiv=″x-dns-prefetch-control″content=″on″/>;
2)使用Link标签强制做DNS预取。如:<linkrel=″dns-prefetch″href=″http://some-web-site.com″/>;2) Use the Link tag to force DNS prefetching. Such as: <linkrel=″dns-prefetch″href=″http://some-web-site.com″/>;
3)在地址栏发生变化时,猜测相关后缀,如当用户输入www.sina时,就猜测输入www.sina.com,www.sina.org,www.sina.gov等域名。3) When the address bar changes, guess the relevant suffix, such as when the user inputs www.sina, guess and input www.sina.com, www.sina.org, www.sina.gov and other domain names.
然而,上述DNS预取技术中,需要指定Link标签,对于目前大量现存的网页,不能解决DNS加速问题。另外,若仅为了DNS加速而升级网页,也不划算,并且对于不需要的连接进行预读取,浪费了网络资源,增加了网络流量费用。However, in the above-mentioned DNS prefetching technology, it is necessary to specify a Link tag, which cannot solve the problem of DNS acceleration for a large number of existing web pages. In addition, it is not cost-effective to upgrade webpages only for DNS acceleration, and pre-reading unnecessary connections wastes network resources and increases network traffic costs.
发明内容Contents of the invention
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的浏览器及其进行域名解析的方法。In view of the above problems, the present invention is proposed to provide a browser that overcomes the above problems or at least partially solves the above problems and a method for performing domain name resolution.
依据本发明的一个方面,提供了一种浏览器进行域名解析的方法,包括:According to one aspect of the present invention, a method for domain name resolution by a browser is provided, including:
启动浏览器,并调用DNS加速数据信息,其中所述DNS加速数据信息包括预先获取的若干域名及各域名对应的IP地址信息;Start the browser, and call the DNS acceleration data information, wherein the DNS acceleration data information includes pre-acquired domain names and IP address information corresponding to each domain name;
接收用户发起的对某URL的访问请求,解析该访问请求,并提取所述URL对应的域名;Receiving an access request to a URL initiated by a user, parsing the access request, and extracting the domain name corresponding to the URL;
检测所述DNS加速数据信息中是否包含所述URL对应的域名,若包含,则获取该域名对应的IP地址信息,并利用该IP地址信息进行访问处理。Detecting whether the domain name corresponding to the URL is included in the DNS acceleration data information, and if yes, obtaining the IP address information corresponding to the domain name, and using the IP address information to perform access processing.
可选地,本发明所述方法中,所述DNS加速数据信息中预先获取的若干域名包括若干主域名,以及每个主域名对应的子域名。Optionally, in the method of the present invention, the pre-acquired several domain names in the DNS acceleration data information include several main domain names and sub-domain names corresponding to each main domain name.
可选地,本发明所述方法中,所述DNS加速数据信息中各信息以map表的方式存储,所述map表中包含有主域名与对应的各子域名间的映射关系。Optionally, in the method of the present invention, each information in the DNS acceleration data information is stored in the form of a map table, and the map table includes the mapping relationship between the main domain name and the corresponding sub-domain names.
可选地,本发明所述方法中,所述检测DNS加速数据信息中是否包含所述URL对应的域名,进一步包括:Optionally, in the method of the present invention, the detecting whether the DNS acceleration data information contains the domain name corresponding to the URL further includes:
判断所述URL对应的域名为主域名还是子域名,若为主域名,则直接在所述map表中查找该域名;若为子域名,则对该子域名进行分割,得到该子域名对应的主域名后,以该主域名为搜索索引,在所述map表中查找对应域名。Judging whether the domain name corresponding to the URL is a main domain name or a sub-domain name, if the main domain name is the main domain name, then directly look up the domain name in the map table; if it is a sub-domain name, then divide the sub-domain name to obtain the corresponding After the main domain name, use the main domain name as a search index to search the corresponding domain name in the map table.
可选地,本发明所述方法中,所述提取所述URL对应的域名之前,还包括:判断所述URL是否本地已先缓,若未缓存,则提取所述URL对应的域名。Optionally, in the method of the present invention, before extracting the domain name corresponding to the URL, the method further includes: judging whether the URL has been cached locally, and if not, extracting the domain name corresponding to the URL.
可选地,本发明所述方法还包括:Optionally, the method of the present invention also includes:
当用户浏览访问的URL对应的网页时,检测用户鼠标是否在网页上悬停,若是,获取鼠标悬停位置对应的网页分区DIV元素;When the user browses the web page corresponding to the accessed URL, detect whether the user mouse hovers over the web page, and if so, obtain the web page partition DIV element corresponding to the mouse hover position;
将所述DIV元素内各URL进行分割,得到各URL对应的域名,并对得到的域名进行去重处理;Segmenting each URL in the DIV element to obtain the domain name corresponding to each URL, and deduplicating the obtained domain name;
检测所述DNS加速数据信息中是否包含各所述URL对应的域名,若包含,则提取各域名对应的IP地址信息,并在用户访问所述DIV元素内的URL时,直接利用所述提取的IP地址信息进行访问处理。Detect whether the domain name corresponding to each of the URLs is included in the DNS acceleration data information, and if so, extract the IP address information corresponding to each domain name, and directly use the extracted IP address information when the user accesses the URL in the DIV element. IP address information for access processing.
可选地,本发明所述方法中,当检测到DNS加速数据信息中包含URL对应的域名时,提取域名对应的IP地址信息的方式,包括:Optionally, in the method of the present invention, when it is detected that the DNS acceleration data information contains the domain name corresponding to the URL, the method of extracting the IP address information corresponding to the domain name includes:
将所述URL对应的域名插入到待加速列表中,并通知队列守护线程;Insert the domain name corresponding to the URL into the list to be accelerated, and notify the queue daemon thread;
所述队列守护线程创建信号量,并调取所述DNS加速数据信息中所述URL对应域名的IP地址信息,实现对所述域名的解析。The queue daemon thread creates a semaphore, and calls the IP address information of the domain name corresponding to the URL in the DNS acceleration data information, so as to realize the resolution of the domain name.
可选地,本发明所述方法中,在并发获取多个域名对应的IP地址信息时,利用所述队列守护线程通知预先创建的线程池为获取IP地址信息的各请求任务分配线程,并利用分配的各线程调取所述DNS加速数据信息中的IP地址信息,实现对各域名的解析。Optionally, in the method of the present invention, when obtaining IP address information corresponding to multiple domain names concurrently, the queue daemon thread is used to notify the pre-created thread pool to assign threads to each request task for obtaining IP address information, and use Each assigned thread retrieves the IP address information in the DNS acceleration data information to realize the resolution of each domain name.
可选地,本发明所述方法中,所述调用的DNS加速数据信息为在服务器侧下载的DNS加速数据信息;或者,所述调用的DNS加速数据信息为接收到的服务器侧主动推送的DNS加速数据信息;和/或,所述调用的DNS加速数据信息为所述浏览器统计用户访问的URL而获取的DNS加速数据信息。Optionally, in the method of the present invention, the invoked DNS acceleration data information is DNS acceleration data information downloaded on the server side; or, the invoked DNS acceleration data information is the received DNS acceleration data information actively pushed by the server side Acceleration data information; and/or, the invoked DNS acceleration data information is DNS acceleration data information acquired by the browser to collect statistics on URLs visited by users.
可选地,所述浏览器获取DNS加速数据信息的方式包括:Optionally, the manner in which the browser acquires DNS acceleration data information includes:
获取用户访问的URL,提取该URL对应的主域名;Obtain the URL accessed by the user, and extract the main domain name corresponding to the URL;
拦截浏览器侧计算机系统的获取地址信息函数,获取所述主域名对应的子域名、以及所述主域名与各子域名对应的套接口地址结构;Intercepting the address information acquisition function of the computer system on the browser side, acquiring the sub-domain names corresponding to the main domain name, and the socket address structures corresponding to the main domain name and each sub-domain name;
根据所述套接口地址结构,得到主域名和各子域名对应的IP地址信息;将所述主域名、所述主域名对应的各子域名、以及各域名对应的IP地址信息存入DNS加速数据信息中。According to the socket address structure, obtain the IP address information corresponding to the main domain name and each sub-domain name; store the IP address information corresponding to the main domain name, each sub-domain name corresponding to the main domain name, and each domain name into DNS acceleration data information.
根据本发明的另一方面,提供了一种浏览器,包括:According to another aspect of the present invention, a browser is provided, including:
调用模块,用于启动浏览器,并调用DNS加速数据信息,其中所述DNS加速数据信息包括预先获取的若干域名及各域名对应的IP地址信息;Call module, be used for starting browser, and call DNS acceleration data information, wherein said DNS acceleration data information includes several domain names obtained in advance and IP address information corresponding to each domain name;
加速触发模块,用于接收用户发起的对某URL的访问请求,解析该访问请求,并提取所述URL对应的域名,触发加速执行模块;The acceleration trigger module is used to receive the access request to a certain URL initiated by the user, parse the access request, and extract the domain name corresponding to the URL, and trigger the acceleration execution module;
加速执行模块,用于检测所述DNS加速数据信息中是否包含所述URL对应的域名,若包含,则获取该域名对应IP地址信息,并利用该IP地址信息进行访问处理。The acceleration execution module is used to detect whether the domain name corresponding to the URL is included in the DNS acceleration data information, and if yes, obtain the IP address information corresponding to the domain name, and use the IP address information to perform access processing.
可选地,本发明所述浏览器中,所述调用模块调用的DNS加速数据信息中预先获取的若干域名包括若干主域名,以及每个主域名对应的子域名。Optionally, in the browser of the present invention, the domain names pre-acquired in the DNS acceleration data information invoked by the calling module include several main domain names and subdomain names corresponding to each main domain name.
可选地,本发明所述浏览器中,所述调用模块调用的DNS加速数据信息中各信息以map表的方式存储,所述map表中包含有主域名与对应的各子域名间的映射关系。Optionally, in the browser of the present invention, each information in the DNS acceleration data information called by the calling module is stored in the form of a map table, and the map table includes the mapping between the main domain name and the corresponding sub-domain names relation.
可选地,本发明所述浏览器中,所述加速执行模块,进一步包括:Optionally, in the browser of the present invention, the accelerated execution module further includes:
域名检测子模块,用于判断所述URL对应的域名为主域名还是二级子域名,若为主域名,触发查找子模块,若为子域名,触发域名处理子模块;The domain name detection submodule is used to determine whether the domain name corresponding to the URL is a primary domain name or a secondary subdomain name, if the primary domain name, trigger the search submodule, if it is a subdomain name, trigger the domain name processing submodule;
域名处理子模块,用于对子域名进行分割,得到该子域名对应的主域名后,并以该主域名为搜索索引,触发查找子模块;The domain name processing sub-module is used to divide the sub-domain names, obtain the main domain name corresponding to the sub-domain name, and use the main domain name as the search index to trigger the search sub-module;
查找子模块,用于在所述map表中查找对应域名。The search submodule is used to search the corresponding domain name in the map table.
可选地,本发明所述浏览器中,所述加速触发模块,还用于提取所述URL对应的域名前,判断所述URL是否本地已先缓,若未缓存,则提取所述URL对应的域名。Optionally, in the browser of the present invention, the acceleration triggering module is further used to judge whether the URL has been buffered locally before extracting the domain name corresponding to the URL, and if not, extract the domain name corresponding to the URL. domain name.
可选地,本发明所述浏览器还包括:Optionally, the browser of the present invention also includes:
悬停信息获取模块,用于当用户浏览访问的URL对应的网页时,检测用户鼠标是否在网页上悬停,若是,获取鼠标悬停位置对应的网页分区DIV元素;The hovering information acquisition module is used to detect whether the user's mouse hovers over the webpage when the user browses the webpage corresponding to the accessed URL, and if so, obtains the webpage partition DIV element corresponding to the mouseover position;
域名获取模块,用于将所述DIV元素内各URL进行分割,得到各URL对应的域名,并对得到的域名进行去重处理,触发所述加速执行模块提取各域名对应的IP地址信息。The domain name acquisition module is used to divide each URL in the DIV element to obtain the domain name corresponding to each URL, and perform deduplication processing on the obtained domain name, and trigger the accelerated execution module to extract the IP address information corresponding to each domain name.
可选地,本发明所述浏览器中,所述加速执行模块,具体用于将所述URL对应的域名插入到待加速列表中,并通知队列守护线程,通过所述队列守护线程创建信号量,并调取所述DNS加速数据信息中所述URL对应域名对应的IP地址信息,实现对所述域名的解析。Optionally, in the browser of the present invention, the accelerated execution module is specifically configured to insert the domain name corresponding to the URL into the list to be accelerated, and notify the queue daemon thread to create a semaphore through the queue daemon thread , and call the IP address information corresponding to the domain name corresponding to the URL in the DNS acceleration data information, so as to realize the resolution of the domain name.
可选的,本发明所述浏览器中,所述加速执行模块,进一步用于在并发获取多个域名对应的IP地址信息时,利用所述队列守护线程通知预先创建的线程池为获取IP地址信息的各请求任务分配线程,并利用分配的各线程调取所述DNS加速数据信息中的IP地址信息,实现对各域名的解析。Optionally, in the browser of the present invention, the accelerated execution module is further configured to use the queue daemon thread to notify the pre-created thread pool to obtain the IP address information corresponding to multiple domain names concurrently. Each information request task assigns a thread, and uses each assigned thread to call the IP address information in the DNS acceleration data information to realize the resolution of each domain name.
可选地,本发明所述浏览器中,所述调用模块,调用的DNS加速数据信息为在服务器侧下载DNS加速数据信息;或者为接收到的服务器侧主动推送的DNS加速数据信息;和/或,为所述浏览器统计用户访问的URL而获取的DNS加速数据信息。Optionally, in the browser of the present invention, in the calling module, the DNS acceleration data information to be called is DNS acceleration data information downloaded on the server side; or the received DNS acceleration data information actively pushed by the server side; and/ Or, the DNS acceleration data information obtained for the browser to collect statistics on the URLs accessed by the user.
可选地,本发明所述浏览器进一步包括:Optionally, the browser of the present invention further includes:
获取模块,用于获取用户访问的URL,提取该URL对应的主域名;An acquisition module, configured to acquire the URL accessed by the user, and extract the main domain name corresponding to the URL;
函数调用模块,用于拦截浏览器侧计算机系统的获取地址信息函数,获取所述主域名对应的子域名、以及所述主域名与各子域名对应的套接口地址结构;The function call module is used to intercept the address information acquisition function of the computer system on the browser side, obtain the sub-domain names corresponding to the main domain name, and the socket address structure corresponding to the main domain name and each sub-domain name;
信息获取模块,用于根据所述套接口地址结构,得到主域名和各子域名对应的IP地址信息;An information acquisition module, configured to obtain IP address information corresponding to the main domain name and each sub-domain name according to the socket address structure;
信息存储模块,用于将所述主域名、所述主域名对应的各子域名、以及各域名对应的IP地址信息存入DNS加速数据信息中。An information storage module, configured to store the main domain name, each sub-domain name corresponding to the main domain name, and IP address information corresponding to each domain name into DNS acceleration data information.
与现有技术相比,本发明有益效果如下:Compared with the prior art, the beneficial effects of the present invention are as follows:
首先,本发明所述技术方案,通过预先对于一些主域名进行统计,形成DNS加速数据信息,当该DNS加速数据信息被用户侧浏览器调用后,可以实现网页浏览加速,该加速处理过程耗时短,提高了DNS加速的效率;First of all, the technical solution of the present invention forms DNS acceleration data information by performing statistics on some primary domain names in advance. When the DNS acceleration data information is called by the user-side browser, web browsing acceleration can be realized. The acceleration processing process is time-consuming. Short, improving the efficiency of DNS acceleration;
其次,本发明所述技术方案,还可以对鼠标悬停处的URL进行加速处理,适用范围广。Secondly, the technical solution of the present invention can also accelerate the processing of the URL where the mouse hovers over, and has a wide range of applications.
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。The above description is only an overview of the technical solution of the present invention. In order to better understand the technical means of the present invention, it can be implemented according to the contents of the description, and in order to make the above and other purposes, features and advantages of the present invention more obvious and understandable , the specific embodiments of the present invention are enumerated below.
附图说明Description of drawings
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiment. The drawings are only for the purpose of illustrating a preferred embodiment and are not to be considered as limiting the invention. Also throughout the drawings, the same reference numerals are used to designate the same components. In the attached picture:
图1为本发明实施例一提供的一种浏览器进行域名解析的方法的流程图;FIG. 1 is a flowchart of a method for a browser to perform domain name resolution provided by Embodiment 1 of the present invention;
图2为本发明实施例二提供的一种浏览器进行域名解析的方法的流程图;FIG. 2 is a flow chart of a method for domain name resolution by a browser provided in Embodiment 2 of the present invention;
图3为本发明实施例三中建立的map表的映射关系图;FIG. 3 is a mapping relationship diagram of a map table established in Embodiment 3 of the present invention;
图4为本发明实施例三中鼠标悬停示意图;Fig. 4 is a schematic diagram of mouse hovering in Embodiment 3 of the present invention;
图5为本发明实施例四提供的一种浏览器的结构示意图;FIG. 5 is a schematic structural diagram of a browser provided in Embodiment 4 of the present invention;
图6为本发明实施例五提供的一种浏览器的结构示意图;FIG. 6 is a schematic structural diagram of a browser provided in Embodiment 5 of the present invention;
图7为本发明实施例六提供的一种服务器的结构示意图;FIG. 7 is a schematic structural diagram of a server provided in Embodiment 6 of the present invention;
图8为本发明实施例七提供的一种浏览器进行域名解析的系统的结构框图。FIG. 8 is a structural block diagram of a system for domain name resolution by a browser provided by Embodiment 7 of the present invention.
具体实施方式detailed description
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited by the embodiments set forth herein. Rather, these embodiments are provided for more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.
为了解决现有技术中存在的技术问题,本发明实施例提供一种浏览器及其进行域名解析的方法。本发明通过预先对于一些网站进行DNS查询请求统计,形成DNS加速数据信息,当用户输入网站地址时,通过调用DNS加速数据信息,实现网页浏览加速,提高了DNS加速效率。In order to solve the technical problems existing in the prior art, an embodiment of the present invention provides a browser and a method for performing domain name resolution thereof. The invention forms DNS acceleration data information by performing DNS query request statistics on some websites in advance. When a user inputs a website address, the DNS acceleration data information is called to realize web page browsing acceleration and improve DNS acceleration efficiency.
下面通过几个具体实施例对本发明的实现过程进行详细阐述,具体如下:The realization process of the present invention is elaborated below by several specific embodiments, specifically as follows:
实施例一Embodiment one
如图1所示,本发明实施例提供一种浏览器进行域名解析的方法,具体包括以下步骤:As shown in Figure 1, the embodiment of the present invention provides a method for a browser to perform domain name resolution, which specifically includes the following steps:
步骤S101,启动浏览器,并调用DNS加速数据信息;其中,DNS加速数据信息中包括预先获取的若干域名及各域名对应的IP地址信息;Step S101, start the browser, and call the DNS acceleration data information; wherein, the DNS acceleration data information includes a number of domain names obtained in advance and the IP address information corresponding to each domain name;
该步骤中,预先获取的若干域名包括若干主域名,以及每个主域名对应的子域名(优选为二级子域名)。In this step, the pre-acquired domain names include several main domain names and sub-domain names (preferably second-level sub-domain names) corresponding to each main domain name.
该步骤中,调用的所述DNS加速数据信息为在服务器侧生成的信息,和/或,为在浏览器侧生成的信息。In this step, the called DNS acceleration data information is information generated on the server side, and/or is information generated on the browser side.
当在服务器侧生成时,所述调用的DNS加速数据信息为在服务器侧下载的DNS加速数据信息,或者,为接收到的服务器侧主动推送的DNS加速数据信息。其中,服务器侧生成DNS加速数据信息的方式包括:When generated on the server side, the called DNS acceleration data information is the DNS acceleration data information downloaded on the server side, or is the received DNS acceleration data information actively pushed by the server side. Among them, the ways for the server side to generate DNS acceleration data information include:
(1)在预先配置的主域名池内逐一选取主域名,获取选取的主域名对应的子域名、以及主域名与各子域名对应的IP地址信息;(1) Select the main domain name one by one in the pre-configured main domain name pool, obtain the sub-domain name corresponding to the selected main domain name, and the IP address information corresponding to the main domain name and each sub-domain name;
(2)保存各所述主域名及其对应的子域名、以及各域名的IP地址信息,生成DNS加速数据信息。(2) Save each main domain name and its corresponding sub-domain name, and the IP address information of each domain name, and generate DNS acceleration data information.
优选地,步骤(1)中,获取主域名对应的子域名、以及主域名与各子域名对应的IP地址信息的方式包括:Preferably, in step (1), the method of obtaining the sub-domain name corresponding to the main domain name and the IP address information corresponding to the main domain name and each sub-domain name includes:
(11)在主域名池内逐一选取主域名;(11) Select primary domain names one by one from the primary domain name pool;
(12)拦截浏览器侧计算机系统的获取地址信息函数(例如:系统函数getaddrinfo()),获取每个所述主域名对应的子域名、以及所述主域名与各子域名对应的套接口地址结构;(12) Intercept the address information acquisition function (for example: system function getaddrinfo()) of the computer system on the browser side, and obtain the sub-domain names corresponding to each of the main domain names, and the socket addresses corresponding to the main domain names and each sub-domain name structure;
(13)根据套接口地址结构,得到主域名和各子域名对应的IP地址信息。(13) Obtain the IP address information corresponding to the main domain name and each sub-domain name according to the socket address structure.
优选地,步骤(2)中,保存各所述主域名及其对应的子域名的方式包括:建立所述主域名与对应的各子域名间映射关系的map表。Preferably, in step (2), the method of saving each main domain name and its corresponding sub-domain name includes: establishing a map table of the mapping relationship between the main domain name and each corresponding sub-domain name.
当在浏览器侧生成时,所述DNS加速数据信息为浏览器统计用户访问的URL而获取的DNS加速数据信息。When generated on the browser side, the DNS acceleration data information is the DNS acceleration data information acquired by the browser to collect statistics on the URLs accessed by the user.
其中,所述浏览器获取DNS加速数据信息的方式包括:Wherein, the manner in which the browser acquires DNS acceleration data information includes:
获取用户访问的URL,提取该URL对应的主域名;Obtain the URL accessed by the user, and extract the main domain name corresponding to the URL;
拦截浏览器侧计算机系统的获取地址信息函数(系统函数getaddrinfo()),获取所述主域名对应的子域名、以及所述主域名与各子域名对应的套接口地址结构;Intercepting the address information acquisition function (system function getaddrinfo()) of the computer system on the browser side, acquiring the sub-domain names corresponding to the main domain name, and the socket address structures corresponding to the main domain name and each sub-domain name;
根据所述套接口地址结构,得到主域名和各子域名对应的IP地址信息;Obtain the IP address information corresponding to the main domain name and each sub-domain name according to the socket address structure;
将所述主域名、所述主域名对应的各子域名、以及各域名对应的IP地址信息存入DNS加速数据信息中。The main domain name, each sub-domain name corresponding to the main domain name, and the IP address information corresponding to each domain name are stored in the DNS acceleration data information.
步骤S102,接收用户发起的对某URL的访问请求,解析该访问请求,并提取所述URL对应的域名;Step S102, receiving an access request to a URL initiated by a user, parsing the access request, and extracting the domain name corresponding to the URL;
优选地,该步骤中,在提取所述URL对应的域名之前,还包括:Preferably, in this step, before extracting the domain name corresponding to the URL, it also includes:
判断所述URL是否本地已先缓,若未缓存,则提取所述URL对应的域名,执行步骤S103;若已缓存,不进行DNS加速处理。Judging whether the URL has been buffered locally, if not, extract the domain name corresponding to the URL, and execute step S103; if it has been cached, do not perform DNS acceleration processing.
步骤S103,检测DNS加速数据信息中是否包含URL对应的域名,若包含,则获取该域名对应的IP地址信息,并利用该IP地址信息进行访问处理。Step S103, detecting whether the domain name corresponding to the URL is included in the DNS acceleration data information, and if so, obtaining the IP address information corresponding to the domain name, and using the IP address information to perform access processing.
该步骤中,检测DNS加速数据信息中是否包含所述URL对应的域名,具体包括:判断所述URL对应的域名为主域名还是子域名,若为主域名,则直接在map表中查找该域名;若为子域名,则对该子域名进行分割,得到该子域名对应的主域名,并以该主域名为搜索索引,在map表中查找对应域名。In this step, detecting whether the domain name corresponding to the URL is included in the DNS acceleration data information specifically includes: judging whether the domain name corresponding to the URL is a main domain name or a sub-domain name, and if the main domain name is the main domain name, then directly look up the domain name in the map table ; If it is a sub-domain name, split the sub-domain name to obtain the main domain name corresponding to the sub-domain name, and use the main domain name as a search index to search the corresponding domain name in the map table.
该步骤中,当检测到DNS加速数据信息中包含URL对应的域名时,提取域名对应的IP地址信息的方式,包括:In this step, when it is detected that the DNS acceleration data information contains the domain name corresponding to the URL, the manner of extracting the IP address information corresponding to the domain name includes:
将所述URL对应的域名插入到待加速列表中,并通知队列守护线程;Insert the domain name corresponding to the URL into the list to be accelerated, and notify the queue daemon thread;
所述队列守护线程创建信号量,并调取所述DNS加速数据信息中所述URL对应域名的IP地址信息,实现对所述域名的解析。The queue daemon thread creates a semaphore, and calls the IP address information of the domain name corresponding to the URL in the DNS acceleration data information, so as to realize the resolution of the domain name.
进一步地,本发明实施例所述方法中,在并发获取多个域名对应的IP地址信息时,利用所述队列守护线程通知预先创建的线程池为获取IP地址信息的各请求任务分配线程,并利用分配的各线程调取所述DNS加速数据信息中的IP地址信息,实现对各域名的解析。Further, in the method described in the embodiment of the present invention, when obtaining IP address information corresponding to multiple domain names concurrently, the queue daemon thread is used to notify the pre-created thread pool to assign threads to each request task for obtaining IP address information, and Each assigned thread is used to retrieve the IP address information in the DNS acceleration data information, so as to realize the resolution of each domain name.
综上所述,本发明实施例所述技术方案,通过调用预先生成的DNS加速数据信息,实现网页浏览加速,提高了DNS加速效率。To sum up, the technical solution described in the embodiment of the present invention realizes the acceleration of web page browsing by calling the pre-generated DNS acceleration data information, and improves the efficiency of DNS acceleration.
实施例二Embodiment two
如图2所示,本发明实施例提供一种浏览器进行域名解析的方法,该方法是实施例一所述的DNS预读取方法的扩展方案,即扩展增加了鼠标悬停方案。在下述阐述过程中,对于与实施例一相同的处理方式在此不做赘述,所述方法具体包括:As shown in FIG. 2 , an embodiment of the present invention provides a method for a browser to perform domain name resolution, which is an extension of the DNS pre-reading method described in Embodiment 1, that is, a mouse hovering solution is added to the extension. In the following elaboration process, the same processing method as in Embodiment 1 will not be repeated here, and the method specifically includes:
步骤S201,启动浏览器,并调用DNS加速数据信息,其中所述DNS加速数据信息中包括预先获取的若干域名及各域名对应的IP地址信息;Step S201, start the browser, and call the DNS acceleration data information, wherein the DNS acceleration data information includes a number of domain names obtained in advance and the IP address information corresponding to each domain name;
步骤S202,接收用户发起的对某URL的访问请求,解析该访问请求,并提取所述URL对应的域名;Step S202, receiving an access request to a URL initiated by a user, parsing the access request, and extracting the domain name corresponding to the URL;
步骤S203,检测DNS加速数据信息中是否包含URL对应的域名,若包含,则获取该域名对应的IP地址信息,并利用该IP地址信息进行访问处理;Step S203, detecting whether the domain name corresponding to the URL is included in the DNS acceleration data information, and if so, obtaining the IP address information corresponding to the domain name, and using the IP address information for access processing;
步骤S204,当用户浏览访问的URL对应的网页时,检测用户鼠标是否在网页上悬停,若是,获取鼠标悬停位置对应的网页分区DIV元素;Step S204, when the user browses the webpage corresponding to the visited URL, detect whether the user mouse hovers over the webpage, and if so, obtain the webpage partition DIV element corresponding to the mouse hovering position;
步骤S205,将所述DIV元素内各URL进行分割,得到各URL对应的域名,并对得到的域名进行去重处理;Step S205, dividing each URL in the DIV element to obtain the domain name corresponding to each URL, and performing deduplication processing on the obtained domain name;
步骤S206,检测DNS加速数据信息中是否包含各所述URL对应的域名,若包含,则提取各域名对应的IP地址信息;Step S206, detecting whether the domain name corresponding to each URL is included in the DNS acceleration data information, and if yes, extracting the IP address information corresponding to each domain name;
步骤S207,当用户访问所述DIV元素内的URL时,直接利用提取的IP地址信息进行访问处理。Step S207, when the user accesses the URL in the DIV element, directly use the extracted IP address information to perform access processing.
综上所述,本发明所述技术方案,通过预先对于一些主域名进行统计,形成DNS加速数据信息,当该DNS加速数据信息被用户侧浏览器调用后,可以实现网页浏览加速,该加速处理过程耗时短,提高了DNS加速的效率;To sum up, 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, web browsing acceleration can be realized. The acceleration processing The process is time-consuming and improves the efficiency of DNS acceleration;
另外,本发明所述技术方案,还可以对鼠标悬停处的URL进行加速处理,适用范围广。In addition, the technical solution of the present invention can also perform accelerated processing on the URL where the mouse hovers over, and has a wide range of applications.
实施例三Embodiment Three
本发明实施例提供一种浏览器进行域名解析的方法,该方法是对实施例一和实施例二所述方法的进一步详细阐述,具体包括:An embodiment of the present invention provides a method for a browser to perform domain name resolution. The method is a further detailed elaboration of the methods described in Embodiment 1 and Embodiment 2, and specifically includes:
一,DNS加速数据信息生成步骤;1. DNS acceleration data information generation steps;
当在在服务器侧生成时,包括:When generated on the server side, include:
1)搜集主域名,并利用搜集到的主域名配置主域名池;1) Collect primary domain names, and use the collected primary domain names to configure the primary domain name pool;
其中,搜集主域名配置主域名池的方式包括但不限于为:接收用户侧上报的各主域名,和/或,获取全网热点域名信息,利用访问量前N位主域名配置所述主域名池;所述N为正整数。Among them, the method of collecting primary domain names to configure the primary domain name pool includes but is not limited to: receiving the primary domain names reported by the user side, and/or obtaining the hotspot domain name information of the entire network, and using the top N primary domain names to configure the primary domain names pool; said N is a positive integer.
2)在主域名池内逐一选取各主域名,拦截系统函数getaddrinfo(),获取对应主域名对应的二级子域名,以及主域名与各二级子域名的IP地址信息。2) Select each main domain name one by one in the main domain name pool, intercept the system function getaddrinfo(), obtain the second-level sub-domain name corresponding to the main domain name, and the IP address information of the main domain name and each second-level sub-domain name.
该步骤中,拦截的系统函数为getaddrinfo(constchar*nodename,constchar*service,conststructaddrinfo*hints,structaddrinfo**result)函数。In this step, the intercepted system function is the getaddrinfo(constchar*nodename, constchar*service, conststructaddrinfo*hints, structaddrinfo**result) function.
其中,nodename:待解析的域名(ASCII格式);service:包含服务名称或端口的ANSI字符串;hints:网络socket提示数据结构,指明网络协议族、socket类型、协议等;result:解析返回数据结构,用来保存系统解析的数据。Among them, nodename: the domain name to be parsed (ASCII format); service: the ANSI string containing the service name or port; hints: the network socket prompt data structure, indicating the network protocol family, socket type, protocol, etc.; result: the parsed return data structure , used to save the data parsed by the system.
如果getaddrinfo函数返回成功,那么由result参数指向的变量已被填入一个指针,它指向的是由其中的ai_next成员串联起来的addrinfo结构链表。可以导致返回多个addrinfo结构的情形有以下两个:If the getaddrinfo function returns successfully, the variable pointed to by the result parameter has been filled with a pointer, which points to the addrinfo structure linked list concatenated by its ai_next members. There are two situations that can cause multiple addrinfo structures to be returned:
1,与nodename参数关联的地址有多个,那么适用于所请求地址簇的每个地址都返回一个对应的结构。1. If there are multiple addresses associated with the nodename parameter, a corresponding structure is returned for each address applicable to the requested address cluster.
2,service参数指定的服务支持多个套接口类型,那么每个套接口类型都可能返回一个对应的结构,具体取决于hints结构的ai_socktype成员。2. The service specified by the service parameter supports multiple socket types, and each socket type may return a corresponding structure, depending on the ai_socktype member of the hints structure.
本发明实施例,在拦截getaddrinfo函数前,先分配一个hints结构,把它清零后填写需要的字段,再拦截getaddrinfo()函数,获取相应主域名对应的二级子域名、以及所述主域名与各二级子域名对应的套接口地址结构,再根据套接口地址结构,得到主域名和各二级子域名对应的IP地址信息。In the embodiment of the present invention, before intercepting the getaddrinfo function, first allocate a hints structure, clear it and fill in the required fields, and then intercept the getaddrinfo() function to obtain the secondary sub-domain name corresponding to the corresponding main domain name and the main domain name The socket address structure corresponding to each second-level subdomain name, and then according to the socket address structure, the IP address information corresponding to the main domain name and each second-level subdomain name is obtained.
本发明实施例利用getaddrinfo()函数可以将主机名和服务名转换成套接口地址结构的技术特性,获取了主域名池内各主域名对应的二级子域名,以及各域名对应的IP地址信息。The embodiment of the present invention utilizes the technical characteristics that the getaddrinfo() function can convert the host name and service name into a socket address structure, and obtains the secondary sub-domain names corresponding to each main domain name in the main domain name pool, and the corresponding IP address information of each domain name.
3)将获取的各主域名及其对应的二级子域名,以及主域名与各二级子域名的IP地址信息保存到DNS加速数据信息中。3) Save the obtained main domain names and their corresponding second-level sub-domain names, as well as the IP address information of the main domain names and each second-level sub-domain names, into the DNS acceleration data information.
该步骤中,在保存主域名及其对应的二级子域名时,建立主域名与对应的各二级子域名间映射关系的map表,具体映射关系如图3所示。In this step, when saving the main domain name and its corresponding second-level sub-domain names, a map table of the mapping relationship between the main domain name and each corresponding second-level sub-domain name is established, and the specific mapping relationship is shown in FIG. 3 .
当在在浏览器侧生成时:所述DNS加速数据信息为浏览器统计用户访问的URL而获取的DNS加速数据信息。When generated on the browser side: the DNS acceleration data information is the DNS acceleration data information acquired by the browser to collect statistics on the URLs accessed by the user.
其中,所述浏览器获取DNS加速数据信息的方式包括:Wherein, the manner in which the browser acquires DNS acceleration data information includes:
获取用户访问的URL,提取该URL对应的主域名;Obtain the URL accessed by the user, and extract the main domain name corresponding to the URL;
拦截系统函数getaddrinfo(),获取所述主域名对应的二级子域名、以及所述主域名与各二级子域名对应的套接口地址结构;Intercepting the system function getaddrinfo() to obtain the secondary sub-domain name corresponding to the main domain name and the socket address structure corresponding to the main domain name and each secondary sub-domain name;
根据所述套接口地址结构,得到主域名和各二级子域名对应的IP地址信息;According to the socket address structure, the IP address information corresponding to the main domain name and each secondary sub-domain name is obtained;
将所述主域名、所述主域名对应的各二级子域名、以及各域名对应的IP地址信息存入DNS加速数据信息中。其中,在保存主域名及其对应的二级子域名时,建立主域名与对应的各二级子域名间映射关系的map表,具体映射关系继续如图3所示。The primary domain name, the secondary sub-domain names corresponding to the primary domain name, and the IP address information corresponding to each domain name are stored in the DNS acceleration data information. Wherein, when storing the main domain name and its corresponding second-level sub-domain name, a map table of the mapping relationship between the main domain name and each corresponding second-level sub-domain name is established, and the specific mapping relationship continues to be shown in FIG. 3 .
二,DNS加速步骤;Two, DNS acceleration steps;
1,启动浏览器,调用DNS加速数据信息;1. Start the browser and call DNS to accelerate data information;
其中,调用的DNS加速数据信息为在服务器侧下载的DNS加速数据信息,或者,为接收到的服务器侧主动推送的DNS加速数据信息,和/或,调用的DNS加速数据信息为浏览器统计用户访问的URL而获取的DNS加速数据信息。Wherein, the DNS acceleration data information called is the DNS acceleration data information downloaded on the server side, or is the DNS acceleration data information actively pushed by the server side received, and/or, the DNS acceleration data information called is the browser statistics user The DNS acceleration data information obtained by visiting the URL.
2,当浏览器地址栏发生变化时,即用户发起了对某URL的访问请求,解析该访问请求,获取待访问的URL;2. When the address bar of the browser changes, the user initiates an access request to a certain URL, parses the access request, and obtains the URL to be accessed;
其中,地址栏发生变化是指用户在地址栏输入或由地址栏自动推荐的URL。Wherein, the change in the address bar refers to the URL input by the user in the address bar or automatically recommended by the address bar.
3,判断待访问的URL是否为系统已经缓存过的URL,若是,说明URL对应的对象未过期,可以直接使用本地系统缓存的信息,此时就不用进行DNS加速处理了;若否,则执行步骤4;3. Determine whether the URL to be accessed is a URL that has been cached by the system. If it is, it means that the object corresponding to the URL has not expired, and the information cached by the local system can be used directly. At this time, there is no need to perform DNS acceleration processing; if not, execute Step 4;
4,分割URL,得到该URL对应的域名,并在DNS加速数据信息中搜索该域名,当搜索到时,执行步骤5;若未搜索到,按正常访问流程处理。4. Split the URL to obtain the domain name corresponding to the URL, and search for the domain name in the DNS acceleration data information. When found, perform step 5; if not found, follow the normal access process.
例如,当用户在浏览网页时,会点击主域名下的二级域名的连接,这时会获取到该二级域名并进行URL的分割,根据上述DNS加速数据信息内的map表,进行分割后的主域名、二级域名的映射关系的查找。For example, when a user browses a webpage, he will click on the link of the second-level domain name under the main domain name. At this time, the second-level domain name will be obtained and the URL will be divided. According to the map table in the above-mentioned DNS acceleration data information, after segmentation Search for the mapping relationship between the primary domain name and the secondary domain name.
5,调用DnsAccelerate()函数,将待加速域名插入到加速列表中。5. Call the DnsAccelerate() function to insert the domain name to be accelerated into the acceleration list.
该步骤具体为:The steps are specifically:
DnsAccelerate()函数调用Windows系统函数QueueUserWorkItem(),通知队列守护线程有域名待加速。The DnsAccelerate() function calls the Windows system function QueueUserWorkItem() to notify the queue daemon thread that there is a domain name to be accelerated.
队列守护线程调用ParallelGetAddrInfoProc()函数,执行如下操作:The queue daemon thread calls the ParallelGetAddrInfoProc() function to perform the following operations:
调用CreateSemaphore函数,创建信号量;Call the CreateSemaphore function to create a semaphore;
调用::QueueUserWorkItem(GetAddrInfoSysProc,&pParseDataArray[index],0),解析域名;该函数的调用过程即为在DNS加速数据信息中搜索待加速域名对应的IP地址的过程;Call ::QueueUserWorkItem(GetAddrInfoSysProc,&pParseDataArray[index],0) to resolve the domain name; the calling process of this function is the process of searching the IP address corresponding to the domain name to be accelerated in the DNS acceleration data information;
等待所有队列中的任务完成。Wait for all queued tasks to complete.
6,当域名加速完成后,获取到待访问URL对应的IP地址信息,利用该IP地址信息进行访问处理;6. After the domain name acceleration is completed, obtain the IP address information corresponding to the URL to be accessed, and use the IP address information for access processing;
7,当用户浏览所述URL对应的网页时,检测用户鼠标是否在当前浏览的网页上悬停,若是,获取鼠标悬停位置对应的网页分区DIV元素;其中,鼠标悬停示意图如图4所示;7. When the user browses the web page corresponding to the URL, detect whether the user mouse hovers over the currently browsed web page, and if so, obtain the DIV element of the web page section corresponding to the mouse hover position; wherein, the mouse hover schematic diagram is shown in Figure 4 Show;
8,将所述DIV元素内各URL进行分割,得到各URL对应的域名,并对得到的域名进行去重处理;8. Divide each URL in the DIV element to obtain the domain name corresponding to each URL, and perform deduplication processing on the obtained domain name;
9,检测DNS加速数据信息中是否包含各所述URL对应的域名,若包含,则提取各域名对应的IP地址信息,并在用户访问所述DIV元素内的URL时,直接利用所述提取的IP地址信息进行访问处理。9. Detect whether the domain name corresponding to each of the URLs is included in the DNS acceleration data information, and if so, extract the IP address information corresponding to each domain name, and directly use the extracted IP address information when the user accesses the URL in the DIV element. IP address information for access processing.
对于鼠标悬停方案举例说明如下:An example of the mouse hover scheme is as follows:
检测鼠标的当前位置,以及鼠标所覆盖在网页元素中的子元素的URL链接。例如鼠标当前处在<divclass=″nav_2″>Detect the current position of the mouse, and the URL link of the sub-element in the web page element covered by the mouse. For example, the mouse is currently in <divclass="nav_2">
<ul><ul>
<li><ahref=″http://news.sina.com.cn/″><b>新闻</b></a></li><li><ahref="http://news.sina.com.cn/"><b>News</b></a></li>
<li><ahref=″http://mil.news.sina.com.cn″>军事</a></li><li><ahref="http://mil.news.sina.com.cn">Military</a></li>
<li><ahref=″http://news.sina.com.cn/society/″>社会</a></li><li><ahref=″http://news.sina.com.cn/society/″>Society</a></li>
</ul></ul>
<ul><ul>
<li><ahref=″http://finance.sina.com.cn/″><b>财经</b></a></li><li><ahref="http://finance.sina.com.cn/"><b>Finance</b></a></li>
<li><ahref=″http://finance.sina.com.cn/stock/″>股票</a></li><li><ahref="http://finance.sina.com.cn/stock/">stock</a></li>
<li><ahref=″http://finance.sina.com.cn/fund/″>基金</a></li><li><ahref=″http://finance.sina.com.cn/fund/″>Fund</a></li>
</ul></ul>
<ul><ul>
<li><ahref=″http://tech.sina.com.cn/″><b>科技</b></a></li><li><ahref="http://tech.sina.com.cn/"><b>Technology</b></a></li>
<li><ahref=″http://mobile.sina.com.cn/″>手机</a></li><li><ahref=″http://mobile.sina.com.cn/″>Mobile phone</a></li>
<li><ahref=″http://digi.sina.com.cn/″>数码</a></li><li><ahref="http://digi.sina.com.cn/">Digital</a></li>
</ul></ul>
</div>。</div>.
当鼠标悬停于上述DIV元素中的<ahref=″http://mobile.sina.com.cn/″>上时,会对在该DIV的URL进行DNS的加速处理。When the mouse hovers over <ahref="http://mobile.sina.com.cn/"> in the above DIV element, DNS acceleration processing will be performed on the URL of the DIV.
悬停在哪个点对应的URL,这里是指<div...>...</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。The URL corresponding to which point to hover over, here refers to the URL deduplication set in <div...>...</div>, such as: 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.
实施例四Embodiment Four
如图5所示,本发明实施例提供一种浏览器,包括:调用模块510、加速触发模块520和加速执行模块530;其中:As shown in FIG. 5 , an embodiment of the present invention provides a browser, including: a call module 510, an acceleration trigger module 520, and an acceleration execution module 530; wherein:
调用模块510,用于启动浏览器,并调用DNS加速数据信息,其中所述DNS加速数据信息中包括预先获取的若干域名及各域名的IP地址信息;The calling module 510 is used to start the browser and call the DNS acceleration data information, wherein the DNS acceleration data information includes pre-acquired domain names and IP address information of each domain name;
进一步地,调用模块510调用的DNS加速数据信息中保存的预先获取的若干域名包括若干主域名,以及每个主域名对应的子域名。Further, the pre-acquired domain names stored in the DNS acceleration data information invoked by the calling module 510 include several main domain names and sub-domain names corresponding to each main domain name.
进一步地,调用模块510调用的DNS加速数据信息中建立有map表,所述map表中包含有主域名与对应的各子域名间的映射关系。Further, a map table is established in the DNS acceleration data information called by the calling module 510, and the map table includes the mapping relationship between the main domain name and the corresponding sub-domain names.
进一步地,调用模块510,调用的DNS加速数据信息为在服务器侧下载DNS加速数据信息;或者,为接收到的服务器侧主动推送的DNS加速数据信息;和/或,为浏览器统计用户访问的URL而获取的DNS加速数据信息。Further, the calling module 510, the called DNS acceleration data information is downloaded DNS acceleration data information on the server side; or, it is the received DNS acceleration data information actively pushed by the server side; and/or, for the browser to count user access DNS acceleration data information obtained from the URL.
当DNS加速数据信息为浏览器统计用户访问的URL而获取的DNS加速数据信息时,浏览器具体通过如下模块实现DNS加速数据信息的生成:When the DNS acceleration data information is the DNS acceleration data information obtained by the browser to count the URLs accessed by the user, the browser specifically realizes the generation of the DNS acceleration data information through the following modules:
获取模块,用于获取用户访问的URL,提取该URL对应的主域名;An acquisition module, configured to acquire the URL accessed by the user, and extract the main domain name corresponding to the URL;
函数调用模块,用于拦截浏览器侧计算机系统的获取地址信息函数,获取所述主域名对应的子域名、以及所述主域名与各子域名对应的套接口地址结构;The function call module is used to intercept the address information acquisition function of the computer system on the browser side, obtain the sub-domain names corresponding to the main domain name, and the socket address structure corresponding to the main domain name and each sub-domain name;
信息获取模块,用于根据所述套接口地址结构,得到主域名和各子域名对应的IP地址信息;An information acquisition module, configured to obtain IP address information corresponding to the main domain name and each sub-domain name according to the socket address structure;
信息存储模块,用于将所述主域名、所述主域名对应的各子域名、以及各域名对应的IP地址信息存入DNS加速数据信息中。An information storage module, configured to store the main domain name, each sub-domain name corresponding to the main domain name, and IP address information corresponding to each domain name into DNS acceleration data information.
加速触发模块520,用于接收用户发起的对某URL的访问请求,解析该访问请求,并提取所述URL对应的域名,触发加速执行模块530;The acceleration trigger module 520 is used to receive an access request to a certain URL initiated by the user, parse the access request, and extract the domain name corresponding to the URL, and trigger the acceleration execution module 530;
进一步地,加速触发模块520,还用于提取所述URL对应的域名前,判断所述URL是否本地已先缓,若未缓存,则提取所述URL对应的域名。Further, the acceleration triggering module 520 is also used to determine whether the URL has been buffered locally before extracting the domain name corresponding to the URL, and if not, extract the domain name corresponding to the URL.
加速执行模块530,用于检测所述DNS加速数据信息中是否包含所述URL对应的域名,若包含,则获取该域名对应IP地址信息,并利用该IP地址信息进行访问处理。The acceleration execution module 530 is configured to detect whether the domain name corresponding to the URL is included in the DNS acceleration data information, and if yes, obtain the IP address information corresponding to the domain name, and use the IP address information to perform access processing.
进一步地,加速执行模块530,具体包括:Further, the accelerated execution module 530 specifically includes:
域名检测子模块531,用于判断所述URL对应的域名为主域名还是子域名,若为主域名,触发查找子模块,若为子域名,触发域名处理子模块;The domain name detection submodule 531 is used to determine whether the domain name corresponding to the URL is a main domain name or a subdomain name, if the main domain name, trigger the search submodule, if it is a subdomain name, trigger the domain name processing submodule;
域名处理子模块532,用于对获取的子域名进行分割,得到该子域名对应的主域名,并以该主域名为搜索索引,触发查找子模块;The domain name processing sub-module 532 is used to divide the obtained sub-domain name to obtain the main domain name corresponding to the sub-domain name, and use the main domain name as a search index to trigger the search sub-module;
查找子模块533,用于在所述map表中查找对应域名。The search submodule 533 is used to search the corresponding domain name in the map table.
进一步地,加速执行模块530,具体用于将所述URL对应的域名插入到待加速列表中,并通知队列守护线程,通过所述队列守护线程创建信号量,并调取所述DNS加速数据信息中所述域名对应的IP地址,实现对所述域名的解析。Further, the acceleration execution module 530 is specifically configured to insert the domain name corresponding to the URL into the list to be accelerated, and notify the queue daemon thread, create a semaphore through the queue daemon thread, and call the DNS acceleration data information The IP address corresponding to the domain name described in , implements the resolution of the domain name.
进一步地,加速执行模块530,进一步用于在并发获取多个域名对应的IP地址信息时,利用所述队列守护线程通知预先创建的线程池为获取IP地址信息的各请求任务分配线程,并利用分配的各线程调取所述DNS加速数据信息中的IP地址信息,实现对各域名的解析。Further, the accelerated execution module 530 is further configured to use the queue daemon thread to notify the pre-created thread pool to assign threads to each request task for obtaining IP address information when concurrently obtaining IP address information corresponding to multiple domain names, and use Each assigned thread retrieves the IP address information in the DNS acceleration data information to realize the resolution of each domain name.
综上所述,本发明实施例所述浏览器,通过预先对于一些主域名进行统计,形成DNS加速数据信息,当该DNS加速数据信息被用户侧浏览器调用后,可以实现网页浏览加速,该加速处理过程耗时短,提高了DNS加速的效率。To sum up, the browser according to the embodiment of the present invention forms DNS acceleration data information by performing statistics on some primary domain names in advance. The acceleration process takes less time, which improves the efficiency of DNS acceleration.
实施例五Embodiment five
如图6所示,本发明实施例提供一种浏览器,该浏览器是对实施例四所述浏览器的方案扩展,即扩展增加了鼠标悬停方案。在下述阐述过程中,对于与实施例四相同的处理方式在此不做赘述,所述浏览器具体包括:调用模块610、加速触发模块620、加速执行模块630、悬停信息获取模块640和域名获取模块650;其中:As shown in FIG. 6 , an embodiment of the present invention provides a browser, which is an extension of the solution of the browser described in Embodiment 4, that is, the extension adds a mouse hovering solution. In the following elaboration process, the same processing method as in Embodiment 4 will not be repeated here. The browser specifically includes: a call module 610, an acceleration trigger module 620, an acceleration execution module 630, a hover information acquisition module 640 and a domain name Acquiring module 650; wherein:
调用模块610,用于启动浏览器,并调用DNS加速数据信息,其中所述DNS加速数据信息中包括预先获取的若干域名及各域名的IP地址信息;The calling module 610 is used to start the browser and call the DNS acceleration data information, wherein the DNS acceleration data information includes pre-acquired domain names and IP address information of each domain name;
加速触发模块620,用于接收用户发起的对某URL的访问请求,解析该访问请求,并提取所述URL对应的域名,触发加速执行模块630;The acceleration triggering module 620 is used to receive an access request to a certain URL initiated by the user, parse the access request, and extract the domain name corresponding to the URL, and trigger the acceleration execution module 630;
加速执行模块630,用于检测所述DNS加速数据信息中是否包含所述URL对应的域名,若包含,则获取该域名对应IP地址信息,并利用该IP地址信息进行访问处理。The acceleration execution module 630 is configured to detect whether the domain name corresponding to the URL is included in the DNS acceleration data information, and if yes, obtain the IP address information corresponding to the domain name, and use the IP address information to perform access processing.
悬停信息获取模块640,用于当用户浏览访问的URL对应的网页时,检测用户鼠标是否在浏览器网页上悬停,若是,获取鼠标悬停位置对应的网页分区DIV元素;Hovering information acquisition module 640, for when the user browses the webpage corresponding to the URL of visit, detects whether the user's mouse hovers over the browser webpage, if so, obtains the webpage partition DIV element corresponding to the mouse hovering position;
域名获取模块650,用于将所述DIV元素内各URL进行分割,得到各URL对应的域名,并对得到的域名进行去重处理,触发加速执行模块630提取各域名对应的IP地址信息,供用户后续访问DIV元素内各URL使用。The domain name obtaining module 650 is used to divide each URL in the DIV element, obtain the domain name corresponding to each URL, and perform deduplication processing on the obtained domain name, trigger the accelerated execution module 630 to extract the IP address information corresponding to each domain name, and provide The user subsequently visits each URL in the DIV element to use.
综上所述,本发明所述浏览器,通过预先对于一些主域名进行统计,形成DNS加速数据信息,当该DNS加速数据信息被用户侧浏览器调用后,可以实现网页浏览加速,该加速处理过程耗时短,提高了DNS加速的效率;To sum up, the browser of the present invention forms DNS acceleration data information by performing statistics on some primary domain names in advance. The process is time-consuming and improves the efficiency of DNS acceleration;
另外,本发明所述浏览器,还可以对鼠标悬停处的URL进行加速处理,适用范围广。In addition, the browser of the present invention can also perform accelerated processing on the URL where the mouse hovers over, and has a wide range of applications.
实施例六Embodiment six
如图7所示,本发明实施例还提供一种服务器,包括:配置模块710、遍历模块720、信息生成模块730和调用接口模块740;其中:As shown in FIG. 7, the embodiment of the present invention also provides a server, including: a configuration module 710, a traversal module 720, an information generation module 730, and a calling interface module 740; wherein:
配置模块710,用于搜集主域名,并利用搜集到的主域名配置主域名池;Configuration module 710, configured to collect primary domain names, and use the collected primary domain names to configure the primary domain name pool;
进一步地,配置模块710,具体用于接收用户侧浏览器上报的各主域名,基于各主域名配置所述主域名池;和/或,获取全网热点域名信息,利用访问量前N位主域名配置所述主域名池;所述N为正整数。Further, the configuration module 710 is specifically configured to receive the main domain names reported by the user-side browser, and configure the main domain name pool based on each main domain name; The domain name configures the main domain name pool; the N is a positive integer.
进一步地,配置模块710,还用于当有新主域名入池时,和/或,当所述主域名池内有主域名发生变更时,触发所述信息获取模块获取所述新主域名和变更后的主域名对应的子域名、以及主域名与各子域名对应的IP地址信息,并触发所述信息生成模块730对所述DNS加速数据信息进行更新。Further, the configuration module 710 is also configured to trigger the information acquisition module to acquire the new primary domain name and the changed The sub-domain name corresponding to the main domain name and the IP address information corresponding to the main domain name and each sub-domain name, and trigger the information generating module 730 to update the DNS acceleration data information.
遍历模块720,用于在所述主域名池内逐一选取主域名,获取所述主域名对应的子域名、以及主域名与各子域名对应的IP地址信息;The traversal module 720 is configured to select a main domain name one by one in the main domain name pool, obtain the sub-domain names corresponding to the main domain name, and the IP address information corresponding to the main domain name and each sub-domain name;
进一步地,遍历模块720,具体包括:Further, the traversal module 720 specifically includes:
域名遍历子模块721,用于在所述主域名池内逐一选取主域名;The domain name traversal submodule 721 is used to select the main domain names one by one in the main domain name pool;
统计子模块722,用于拦截浏览器侧计算机系统的获取地址信息函数(例如:系统函数getaddrinfo()),获取每个所述主域名对应的子域名、以及所述主域名与各子域名对应的套接口地址结构;The statistics sub-module 722 is used to intercept the address information acquisition function (for example: system function getaddrinfo()) of the computer system on the browser side, acquire the sub-domain names corresponding to each of the main domain names, and the correspondence between the main domain name and each sub-domain name socket address structure;
地址获取子模块723,用于根据所述套接口地址结构,得到主域名和各子域名对应的IP地址信息。The address obtaining sub-module 723 is configured to obtain IP address information corresponding to the main domain name and each sub-domain name according to the socket address structure.
信息生成模块730,用于保存各所述主域名及其对应的子域名、以及各域名的IP地址信息,生成DNS加速数据信息;The information generation module 730 is used to save the IP address information of each of the main domain names and their corresponding sub-domain names, and each domain name, and generate DNS acceleration data information;
进一步地,信息生成模块730,在生成DNS加速数据信息时,还建立所述主域名与对应的各二级子域名间映射关系的map表。Further, the information generation module 730, when generating the DNS acceleration data information, also establishes a map table of the mapping relationship between the primary domain name and the corresponding secondary sub-domain names.
调用接口模块740,用于将所述DNS加速数据信息发送至用户侧浏览器。Calling the interface module 740, configured to send the DNS acceleration data information to the user-side browser.
进一步地,调用接口模块740,具体用于在用户侧浏览器启动时,主动将所述DNS加速数据信息推送至所述用户侧浏览器;或者,在接收到用户侧浏览器的下载请求时,将所述DNS加速数据信息发送至所述用户侧浏览器。Further, calling the interface module 740 is specifically configured to actively push the DNS acceleration data information to the user-side browser when the user-side browser starts; or, when receiving a download request from the user-side browser, Sending the DNS acceleration data information to the user-side browser.
综上所述,本发明实施例所述服务器用以生成DNS加速数据信息,该DNS加速数据信息供用户侧浏览器的调用,实现了用户侧浏览器的DNS加速处理。To sum up, the server described in the embodiment of the present invention is used to generate DNS acceleration data information, and the DNS acceleration data information is called by the user-side browser to realize the DNS acceleration processing of the user-side browser.
实施例七Embodiment seven
如图8所示,本发明实施例还提供一种对域名系统DNS进行预读取的系统,包括:实施例四或五所述的浏览器,以及实施例六所述的服务器。As shown in FIG. 8 , an embodiment of the present invention also provides a system for pre-reading the domain name system DNS, including: the browser described in Embodiment 4 or 5, and the server described in Embodiment 6.
综上所述,本发明所述系统,在服务器侧预先对于一些主域名进行统计,形成DNS加速数据信息,当该DNS加速数据信息被用户侧浏览器调用后,可以实现网页浏览加速,该加速处理过程耗时短,提高了DNS加速的效率;To sum up, the system of the present invention preliminarily counts some primary domain names on the server side to form DNS acceleration data information. The processing time is short, which improves the efficiency of DNS acceleration;
另外,本发明所述系统,还可以对鼠标悬停处的URL进行加速处理,适用范围广。In addition, the system of the present invention can also perform accelerated processing on the URL where the mouse hovers over, and has a wide range of applications.
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。The algorithms and displays presented herein are not inherently related to any particular computer, virtual system, or other device. Various generic systems can also be used with the teachings based on this. The structure required to construct such a system is apparent from the above description. Furthermore, the present invention is not specific to any particular programming language. It should be understood that various programming languages can be used to implement the content of the present invention described herein, and the above description of specific languages is for disclosing the best mode of the present invention.
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure the understanding of this description.
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, in order to streamline this disclosure and to facilitate an understanding of one or more of the various inventive aspects, various features of the invention are sometimes grouped together in a single embodiment, figure, or its description. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the Detailed Description are hereby expressly incorporated into this Detailed Description, with each claim standing on its own as a separate embodiment of this invention.
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。Those skilled in the art can understand that the modules in the device in the embodiment can be adaptively changed and arranged in one or more devices different from the embodiment. Modules or units or components in the embodiments may be combined into one module or unit or component, and furthermore may be divided into a plurality of sub-modules or sub-units or sub-assemblies. All features disclosed in this specification (including accompanying claims, abstract and drawings), as well as any method or method so disclosed, may be used in any combination, except that at least some of such features and/or processes or units are mutually exclusive. All processes or units of equipment are combined. Each feature disclosed in this specification (including accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。Furthermore, those skilled in the art will understand that although some embodiments described herein include some features included in other embodiments but not others, combinations of features from different embodiments are meant to be within the scope of the invention. and form different embodiments. For example, in the following claims, any of the claimed embodiments may be used in any combination.
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的浏览器、服务器等设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。The various component embodiments of the present invention may be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. Those skilled in the art should understand that a microprocessor or a digital signal processor (DSP) may be used in practice to implement some or all functions of some or all components in devices such as browsers and servers according to embodiments of the present invention. The present invention can also be implemented as an apparatus or an apparatus program (for example, a computer program and a computer program product) for performing a part or all of the methods described herein. Such a program for realizing the present invention may be stored on a computer-readable medium, or may be in the form of one or more signals. Such a signal may be downloaded from an Internet site, or provided on a carrier signal, or provided in any other form.
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention can be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In a unit claim enumerating several means, several of these means can be embodied by one and the same item of hardware. The use of the words first, second, and third, etc. does not indicate any order. These words can be interpreted as names.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201210379549.7ACN102843445B (en) | 2012-09-29 | 2012-09-29 | A kind of browser and carry out the method for domain name mapping |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201210379549.7ACN102843445B (en) | 2012-09-29 | 2012-09-29 | A kind of browser and carry out the method for domain name mapping |
| Publication Number | Publication Date |
|---|---|
| CN102843445A CN102843445A (en) | 2012-12-26 |
| CN102843445Btrue CN102843445B (en) | 2016-01-13 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201210379549.7AExpired - Fee RelatedCN102843445B (en) | 2012-09-29 | 2012-09-29 | A kind of browser and carry out the method for domain name mapping |
| Country | Link |
|---|---|
| CN (1) | CN102843445B (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102882991B (en)* | 2012-09-29 | 2016-03-30 | 北京奇虎科技有限公司 | A kind of browser and carry out the method for domain name mapping |
| CN103501343A (en)* | 2013-10-10 | 2014-01-08 | 武汉市创想天晟网络科技有限公司 | Method for accelerating web page opening speed and interposing cache page content in web page |
| CN103618742B (en)* | 2013-12-09 | 2017-10-27 | 北京奇安信科技有限公司 | Webmaster's method for verifying authority |
| WO2015085490A1 (en)* | 2013-12-10 | 2015-06-18 | 华为技术有限公司 | Method and apparatus for optimizing web access |
| CN103973834B (en)* | 2014-05-12 | 2017-07-25 | 重庆邮电大学 | A DNS domain name resolution acceleration method and device based on home gateway |
| CN104092787B (en)* | 2014-06-24 | 2016-04-13 | 腾讯科技(深圳)有限公司 | Based on Network Access Method and the system of DNS |
| CN104468740B (en)* | 2014-11-21 | 2019-03-08 | 网宿科技股份有限公司 | A web page transmission intelligent processing system and method thereof |
| CN105763354A (en)* | 2014-12-17 | 2016-07-13 | 中国移动通信集团黑龙江有限公司 | Method and device for evaluating optimization rate of domain name and IP service control equipment |
| CN104683330A (en)* | 2015-02-06 | 2015-06-03 | 广州酷狗计算机科技有限公司 | Domain name hijacking resisting method and device |
| CN106161669A (en)* | 2015-04-28 | 2016-11-23 | 阿里巴巴集团控股有限公司 | A kind of quick domain name analytic method and system and terminal thereof and server |
| CN104991901A (en)* | 2015-06-11 | 2015-10-21 | 小米科技有限责任公司 | Method and apparatus for accessing webpage |
| CN106487942B (en)* | 2015-08-31 | 2019-07-26 | 北京国双科技有限公司 | A kind of display methods and device of domain name mapping information |
| CN110225144B (en) | 2018-03-02 | 2021-03-23 | 华为技术有限公司 | Method, user equipment and management server for obtaining and providing services |
| CN109275014B (en)* | 2018-09-13 | 2021-09-07 | 武汉斗鱼网络科技有限公司 | Bullet screen linking method and mobile terminal |
| CN109347997A (en)* | 2018-12-18 | 2019-02-15 | 深圳创维数字技术有限公司 | Domain name resolution method, device, server and storage medium |
| CN109587291B (en)* | 2019-01-08 | 2020-08-04 | 湖南康通电子股份有限公司 | File stream acceleration communication method, system and equipment |
| CN110798545B (en)* | 2019-11-05 | 2020-08-18 | 中国人民解放军国防科技大学 | A Web-based Domain Name Data Acquisition Method |
| CN111010456B (en)* | 2019-11-22 | 2022-03-11 | 哈尔滨工业大学(威海) | A primary domain name acquisition and verification method |
| CN111327697B (en)* | 2020-02-18 | 2022-01-11 | 腾讯科技(深圳)有限公司 | Data downloading method, device, equipment and storage medium |
| CN111711716B (en)* | 2020-08-20 | 2020-12-04 | 苏州浪潮智能科技有限公司 | A method, apparatus, device and readable storage medium for domain name resolution |
| CN112733898A (en)* | 2020-12-30 | 2021-04-30 | 光通天下网络科技股份有限公司 | Data identification method and device based on characteristic weight, electronic equipment and medium |
| CN113239301B (en)* | 2021-04-22 | 2023-02-07 | 维沃移动通信(杭州)有限公司 | Page loading request method and device and electronic equipment |
| CN114979071B (en)* | 2022-06-16 | 2024-03-26 | Oppo广东移动通信有限公司 | Dynamic domain name configuration method, device, electronic equipment and storage medium |
| CN115051867B (en)* | 2022-06-22 | 2024-04-09 | 深信服科技股份有限公司 | Illegal external connection behavior detection method and device, electronic equipment and medium |
| CN117061410A (en)* | 2023-08-08 | 2023-11-14 | 深圳市芯睿视科技有限公司 | IP address access method, internet of things platform, equipment, system and electronic equipment |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1893439A (en)* | 2005-07-01 | 2007-01-10 | 英华达(上海)电子有限公司 | Method for searching internetwork address on computer |
| CN102571997A (en)* | 2010-12-29 | 2012-07-11 | 中国移动通信集团北京有限公司 | Method, system and device for data access |
| CN102572011A (en)* | 2012-02-02 | 2012-07-11 | 中国科学院计算机网络信息中心 | Method, device and system for processing data |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9197486B2 (en)* | 2008-08-29 | 2015-11-24 | Google Inc. | Adaptive accelerated application startup |
| CN102340554B (en)* | 2011-09-29 | 2014-04-02 | 奇智软件(北京)有限公司 | Method and device for selecting optimal application server of domain name system DNS |
| CN102663012B (en)* | 2012-03-20 | 2017-07-04 | 北京搜狗信息服务有限公司 | A kind of webpage preloads method and system |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1893439A (en)* | 2005-07-01 | 2007-01-10 | 英华达(上海)电子有限公司 | Method for searching internetwork address on computer |
| CN102571997A (en)* | 2010-12-29 | 2012-07-11 | 中国移动通信集团北京有限公司 | Method, system and device for data access |
| CN102572011A (en)* | 2012-02-02 | 2012-07-11 | 中国科学院计算机网络信息中心 | Method, device and system for processing data |
| Publication number | Publication date |
|---|---|
| CN102843445A (en) | 2012-12-26 |
| Publication | Publication Date | Title |
|---|---|---|
| CN102882991B (en) | A kind of browser and carry out the method for domain name mapping | |
| CN102843445B (en) | A kind of browser and carry out the method for domain name mapping | |
| CN102855334B (en) | A kind of browser and the method obtaining dns resolution data thereof | |
| US10412176B2 (en) | Website access method, apparatus, and website system | |
| CN102624920B (en) | A method and device for accessing through a proxy server | |
| CN105930528B (en) | Webpage caching method and server | |
| CN102929984B (en) | Inefficacy address searching method and apparatus | |
| CN102929944B (en) | IE kernel browser carries out method that webpage plays up and device | |
| CN104572777B (en) | Webpage loading method and device based on UIWebView component | |
| WO2013143403A1 (en) | Method and system for accessing website | |
| CN104754073A (en) | Resource access method and device | |
| CN1352775A (en) | Selecting a cache | |
| US9088462B2 (en) | Common web accessible data store for client side page processing | |
| CN109634753B (en) | Data processing method, device, terminal and storage medium for switching browser kernels | |
| CN110855766A (en) | Method and device for accessing Web resources and proxy server | |
| CN103825919B (en) | A kind of method, the apparatus and system of data cached resource | |
| CN106790593A (en) | A kind of page processing method and device | |
| CN102333123B (en) | File storage method and device, searching method and device and network device | |
| CN110321510A (en) | Page rendering method and system | |
| CN104980464B (en) | A kind of network request processing method, network server and network system | |
| JP5869010B2 (en) | System and method for providing mobile URL in mobile search environment | |
| CN110598146B (en) | SPA application program implementation method and device based on Reactjs | |
| CN112019451B (en) | Bandwidth allocation methods, debugging network elements, local cache servers and computing equipment | |
| USRE50106E1 (en) | Pre-fetching random-value resource locators | |
| CN102902787B (en) | A kind of method of browser and acquisition dns resolution data thereof |
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| TR01 | Transfer of patent right | ||
| TR01 | Transfer of patent right | Effective date of registration:20220715 Address after:Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after:BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before:100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before:BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before:Qizhi software (Beijing) Co.,Ltd. | |
| CF01 | Termination of patent right due to non-payment of annual fee | ||
| CF01 | Termination of patent right due to non-payment of annual fee | Granted publication date:20160113 |