CN104137104A - 基于共享元信息的网页的协作式加载 - Google Patents
基于共享元信息的网页的协作式加载 Download PDFInfo
- Publication number
- CN104137104A CN104137104A CN201380010691.7A CN201380010691A CN104137104A CN 104137104 A CN104137104 A CN 104137104A CN 201380010691 A CN201380010691 A CN 201380010691A CN 104137104 A CN104137104 A CN 104137104A
- Authority
- CN
- China
- Prior art keywords
- mobile computing
- computing device
- server
- webpage
- resource
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3325—Reformulation based on results of preceding query
- G06F16/3326—Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/38—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Library & Information Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
用于创建和使用清单以支持计算设备渲染网页的系统、方法和服务器。多个计算设备可渲染网页和生成元数据。服务器可收集和使用该元数据以生成清单。该清单可提供描述用于加载网页的资源的优先级和格式的信息。该计算设备可向服务器传送信息以供与清单进行比较并确定用于检索网页的资源的优先级和格式。服务器可基于清单信息向计算设备请求和发送网页资源,计算设备可对其渲染网页。服务器可访问网页和生成元数据以创建清单。服务器可替换地将清单信息发送给计算设备。
Description
相关申请
本申请要求2012年2月24日提交的题为“Cooperative Loading of WebpagesBased on Crowd Sourced Meta Information(基于众包元信息的网页的协作式加载)”的美国临时专利申请No.61/602,777的优先权,并要求2012年4月9日提交的题为“Cooperative Loading of Webpages Based on Crowd Sourced MetaInformation(基于众包元信息的网页的协作式加载)”的美国临时专利申请No.61/621,629的优先权,这两件申请的全部内容通过引用纳入于此。
背景技术
蜂窝和无线通信技术在过去数年已见证爆发式增长。此增长已被更好的通信硬件、更大的网络、以及更可靠的协议推动。无线服务提供商现在能够向它们的消费者提供一大批不断增长的特征和服务,并且向用户提供对信息、资源、和通信的空前的访问级别。为了跟上这些服务增强,移动电子设备(例如,蜂窝电话、智能电话、平板设备、膝上型计算机等)已变得比以前更快并更强大。然而,除了这些改进以外,移动设备可能有时仍显得比较缓慢。
现代移动电子设备中使用的移动设备硬件(例如,处理器和无线调制解调器)现在已具有令人印象深刻的能力。然而,基于web的软件应用(例如,web浏览器)消耗了相当大部分的可用通信带宽,由此使得整个移动设备显得比较缓慢。这在通过电信网络(诸如3G或4G)加载网页时最明显。这些较慢的通信束缚了设备资源并对用户体验产生负面影响。相应地,改进页面加载、web应用、和网络通信的效率和速度对于移动设备制造商而言是重要的设计准则。
概述
各方面包括用于支持由移动计算设备基于服务器提供的网页清单来渲染网页的方法。在一方面,该方法可包括:在多个移动计算设备上生成与处理网页相关的元信息,从这多个移动计算设备中的每一个移动计算设备向服务器传送所生成的元信息,以及标识处理每一网页中使用的用户代理,在服务器中接收所生成的元信息,基于从这多个移动计算设备接收到的元信息来生成关于每一个网页和每一个用户代理的清单,使用该清单向在移动计算设备上使用用户代理加载网页所需的资源指派优先级,在移动计算设备上按照基于这些资源的获指派优先级确定的顺序来接收这些资源,以及在移动计算设备上渲染网页。在一方面,该方法可包括移动计算设备向服务器传送在渲染网页期间生成的元信息。在进一步方面,该方法可包括:向服务器传送标识网页和在移动计算设备上实现的用户代理的信息,获得关于网页和在移动计算设备上实现的用户代理的清单,将所获得的清单传送给移动计算设备,通过将清单与移动计算设备上存储的信息进行比较来在移动计算设备中标识在移动计算设备上加载网页所需的资源,以及基于清单向移动计算设备中标识出的资源指派优先级。在进一步方面,该方法可包括移动计算设备按照由移动计算设备基于清单确定的顺序向第二服务器请求资源的下载。在进一步方面,该方法可包括:向服务器传送与移动计算设备相关的信息,获得关于网页和在移动计算设备上实现的用户代理的清单,在服务器中将所获得的清单和与移动计算设备相关的信息进行比较,在服务器中标识在移动计算设备上加载网页所需的资源的优先级和恰适的对象格式,以及向移动计算设备传送所标识出的在移动计算设备上加载网页所需的资源的优先级和恰适的对象格式。在进一步方面,该方法可包括服务器按照由服务器基于清单确定的顺序向移动计算设备推送资源。在进一步方面,该方法可包括服务器将资源转码成移动计算设备的期望格式。
在进一步方面,用于支持由移动计算设备渲染网页的方法可包括:在服务器上生成与使用各种类型的用户代理处理网页相关的元信息,基于所生成的元信息关于每种类型的用户代理生成关于网页的清单,使用该清单向在移动计算设备上使用用户代理加载网页所需的资源指派优先级,在移动计算设备上按照基于这些资源的获指派优先级确定的顺序来接收这些资源,以及在移动计算设备上渲染网页。在进一步方面,该方法可包括移动计算设备向服务器传送在渲染网页期间生成的元信息。在进一步方面,该方法可包括:向移动计算设备传送清单以供使用与移动计算设备相关的信息进行评估,在移动计算设备中标识在移动计算设备上加载网页所需的资源,以及在移动计算设备中向标识出的资源指派优先级。在进一步方面,该方法可包括移动计算设备按照由移动计算设备基于清单确定的顺序向第二服务器请求资源的下载。在进一步方面,该方法可包括:向服务器传送与移动计算设备相关的信息,获得关于网页和在移动计算设备上实现的用户代理的清单,在服务器中将所获得的清单和与移动计算设备相关的信息进行比较,在服务器中标识在移动计算设备上加载网页所需的资源的优先级和恰适的对象格式,以及向移动计算设备传送所标识出的在移动计算设备上加载网页所需的资源的优先级和恰适的对象格式。在进一步方面,该方法可包括服务器按照由服务器基于清单确定的顺序向移动计算设备推送资源。在进一步方面,该方法可包括服务器将资源转码成移动计算设备的期望格式。
各个方面可包括移动计算设备,其具有存储器以及耦合至该存储器的处理器,其中该处理器配置有处理器可执行指令以执行包括以下操作的操作:向服务器传送标识网页和在移动计算设备上实现的用户代理的信息,从服务器接收关于网页和在移动计算设备上实现的用户代理的清单,通过将清单与移动计算设备上存储的信息进行比较来标识加载网页所需的资源,基于清单向标识出的资源指派优先级,按照基于资源的获指派优先级确定的顺序来接收资源,以及渲染网页。在进一步方面,移动计算设备处理器可被配置有处理器可执行指令,这些指令用于按照基于清单的顺序向第二服务器请求资源的下载和/或向服务器传送渲染网页期间生成的元信息。
各方面可包括移动计算设备,其包括用于完成上述在移动计算设备中完成的方法的诸功能的装置。各方面还可包括具有存储于其上的处理器可执行软件指令的非瞬态处理器可读存储介质,该处理器可执行软件指令被配置成使得处理器执行上述在移动计算设备中完成的方法的诸操作。
各个方面可包括服务器,其包括存储器以及耦合至该存储器的服务器处理器,其中该处理器配置有服务器处理器可执行指令以执行包括以下操作的操作:收集与使用各种类型的用户代理处理网页相关的元信息,基于所收集的元信息关于每种类型的用户代理生成关于网页的清单,使用清单向在移动计算设备上使用用户代理加载网页所需的资源指派优先级,以及按照基于资源的获指派优先级确定的顺序来向移动计算设备传送资源。在进一步方面,服务器处理器可配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:向移动计算设备传送清单以供使用与移动计算设备相关的信息进行评估。在进一步方面,服务器处理器可配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:从移动计算设备接收在渲染网页期间生成的元信息。在进一步方面,服务器处理器可配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:在服务器上生成与使用各种类型的用户代理处理网页相关的元信息。在进一步方面,服务器处理器可配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:从多个移动计算设备接收与使用各种类型的用户代理处理网页相关的元信息。在进一步方面,服务器处理器可配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:接收与移动计算设备相关的信息,使用清单评估所接收到的信息,标识在移动计算设备上加载网页所需的资源的优先级和恰适的对象格式,以及向移动计算设备传送所标识出的在移动计算设备上加载网页所需的资源的优先级和恰适的对象格式。在进一步方面,服务器处理器可配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:按照基于清单的顺序来向移动计算设备推送资源。在进一步方面,服务器处理器可配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:将资源转码成移动计算设备的期望格式。
各方面可包括服务器,其包括用于完成上述在服务器中完成的方法的诸功能的装置。各方面还可包括具有存储于其上的服务器处理器可执行软件指令的非瞬态服务器可读存储介质,该服务器处理器可执行软件指令被配置成使得服务器处理器执行上述在服务器中完成的方法的诸操作。
各方面还可包括通信系统,其可包括配置成执行上述在服务器中完成的方法的诸操作的服务器,以及配置成上述在移动计算设备中完成的方法的诸操作的多个移动计算设备。
附图简要说明
纳入本文且构成本说明书一部分的附图解说了本发明的示例性方面,并与以上给出的一般描述和下面给出的详细描述一起用来解释本发明的特征。
图1是解说适于在各个方面中使用的移动多媒体通信系统的通信系统框图。
图2是解说根据一方面的与网页相关的清单的示例结构的结构示图。
图3是解说根据一方面的单代理配置中的示例信息流的网络示图。
图4A是解说根据一方面的众包服务器配置中的示例信息流的网络示图。
图4B是根据一方面的用于创建和利用清单以加速页面加载的众包方法的流程图。
图4C是根据另一方面的用于创建和利用清单以加速页面加载的众包方法的过程流程图。
图5A是解说根据一方面的服务器起源的服务器配置中的示例信息流的网络示图。
图5B是根据一方面的用于创建和利用清单以加速页面加载的服务器起源的方法的过程流程图。
图6是解说在用于加速页面加载的以服务器为中心的方面方法中的信息流的通信示图。
图7是解说用于在以服务器为中心的配置中加速页面加载的另一方面方法中的信息流的通信示图。
图8是解说用于在以服务器为中心的配置中加速页面加载的又一方面方法中的信息流的通信示图。
图9是解说用于在以客户端为中心的配置中加速页面加载的方面方法中的信息流的通信示图,其中对于哪些内容要被下载以及对象被下载的顺序的判定由客户端确定。
图10是解说用于在以客户端为中心的配置中加速页面加载的另一方面方法中的信息流的通信示图。
图11A是用于在以服务器为中心的实现中加速页面加载的客户端方面方法的过程流程图。
图11B是用于在以服务器为中心的实现中加速页面加载的服务器方面方法的过程流程图。
图12A是用于在以客户端为中心的实现中加速页面加载的客户端方面方法的过程流程图。
图12B是用于在以客户端为中心的实现中加速页面加载的服务器方面方法的过程流程图。
图13是适于与各个方面联用的移动计算设备的组件框图。
图14是适于与各个方面联用的服务器计算设备的组件框图。
图15是适于与各个方面联用的笔记本计算设备的组件框图。
详细描述
将参照附图详细描述各个方面。在任何可能的地方,相同附图标记用于在附图中通篇指代相同或类似部分。对特定示例和实现所作的引用是用于解说性的目的,而无意限定本发明或权利要求的范围。
措辞“示例性”在本文中用于表示“用作示例、实例或解说”。本文中描述为“示例性”的任何实现不必然被解释为优于或胜过其他实现。
如本文中所使用的,术语“计算设备”、“移动计算设备”、“移动设备”、以及“手持式设备”是指以下设备中的任何一个或全部:蜂窝电话、个人数据助理(PDA)、掌上计算机、无线电子邮件接收机、智能电话、全球定位系统(GPS)接收机、无线游戏控制器、平板计算机、笔记本计算机、上网本计算机、无线电子邮件设备、智能电视、智能汽车控制台、以及包括可编程处理器和存储器、并配置有web浏览器应用以与通信网络进行通信的类似电子设备。
如本文中所使用的,术语“计算机”、“个人计算机”和“计算设备”是指已知的或者将来将被开发的任何可编程计算机系统。在一方面,计算机将被耦合至诸如本文中所描述的网络。计算机系统可被配置有软件指令以执行本文中所描述的各过程和操作。
如本文中所使用的,术语“组件”、“模块”、“平台”、“系统”和类似术语旨在指代计算机相关的实体,无论是硬件、硬件和软件的组合、软件、还是执行中的软件。例如,组件可以是但不限于在处理器上运行的进程、处理器、对象、可执行件、执行的线程、程序、和/或计算机。作为解说,在服务器上运行的应用和该服务器两者都可以是组件。一个或多个组件可驻留在进程和/或执行的线程内,并且组件可局部化在一台计算机上和/或分布在两台或更多台计算机之间。
各个方面提供了改进的web浏览方法,其减少了用户请求动作与在移动计算设备(在本文中称为客户端)上渲染内容之间的时间量。各个方面可提高网络效率、客户端功率效率、和页面加载速度,而无需改变或限制网页功能性。一些方面可使得客户端和服务器两者均能够收集和交换元信息,这可被用来采用众包和/或服务器提示(分布式计算的两种形式)的技术,其允许一个客户端提高网络上其他客户端的通信速度(例如通过服务器协调)。在其他方面,服务器可通过独立和周期性地访问网页(即,“服务器起源”)来收集元信息,并将信息提供给客户端以改善网络通信性能。
通过3G/4G网络加载网页通常比通过有线和局域网加载网页慢。这部分地是因为较长的往返时间(例如,200ms直至500ms的RTT)、在特定网页上反复地发现资源、资源依存性、受限且不对称的带宽、上行链路(UL)比下行链路(DL)更受约束、以及变化的网络条件,变化的网络条件可能因信号强度、干扰、和其他相关因素的改变而引起。
一般而言,页面加载期间的浏览器行为涉及有限的操作集的重复执行。此类重复操作可包括:下载内容和代码、编译代码、获取并执行对象、以及反复地发现新对象以供执行。这些操作是低效的,并且在较慢的电信网络上重复执行这些操作可导致较长的端对端页面加载时间,由此使用户体验降级。
使用HTTP从服务器逐一获取对象是低效的,尤其在通过具有较高RTT的3G/4G网络的情况下。获取每一个对象可能需要往返通信滞后,并且下载网页内的所有对象可涉及多次往返。另外,可能在各请求之间存在依存性,并且并非所有对象请求都在同时被发出。进一步地,处理某些对象可能生成不是原始HTML页面(例如,外部Javascript)的一部分的新对象,并且浏览器可被强制下载附加对象,这进一步促成较长的页面加载时间和/或往返时间。诸如域名服务(DNS)解析和统一资源定位符(URL)重定向的操作可添加开销延迟,其进一步促成较长的页面加载时间和/或往返时间。用于提高页面加载速度和浏览器性能的现有解决方案未能解决这些因素、或者是低效、无效、和/或以其他方式不令人满意的。各个方面消除或降低了以上提及的因素的影响,由此提高了网络效率和页面加载速度。
现有解决方案要么完全依赖于服务器来作出关于如何辅助客户端渲染网页的所有决定、要么使用某种形式的基于客户端的高速缓存(例如,磁盘高速缓存)。虽然磁盘高速缓存可帮助减少请求的总数,但并非所有对象都被保证在高速缓存中或者甚至可高速缓存。为了从服务器侧改善性能,web站点可采用服务器推送技术以用于资源递送。然而,在没有客户端或网络状态的知识的情况下执行服务器推送不产生最优性能,因为它可能推送客户端已在存储器中存储的对象。
某些web浏览器(例如,mini)可采用服务器辅助式办法以用于更快的页面下载。然而,这些浏览器要求定制化的标记语言来在客户端上渲染内容以及网页内容的改变,并且由此限制了网页的功能性(例如,限制动态)。其他浏览器(例如,Silk)采用云资源以用于更快的网页处理。然而,这些浏览器未改善网络的效率和/或不支持通过使用从客户端和服务器两者收集的信息对网页的协作式客户端-服务器加载。
各个方面通过基于共享元信息提供用于网页的协作式客户端-服务器加载的协议来克服现有解决方案的这些以及其他限制,共享元信息可从收集自客户端和/或服务器的信息生成。各个方面还考虑网络条件、连同从客户端和服务器两者取得的信息,以减少总页面加载时间。各个方面实现了改善网络效率、调制解调器功率效率、和页面加载速度,而无需改变或限制网页功能性。各个方面利用客户端的网络和移动设备知识与服务器的内容和集群认知来减少总网页和web应用加载时间。
如以上所提及的,页面加载操作期间的默认浏览器行为涉及有限的操作集的重复执行,其促成较长的端对端页面加载时间,这可导致移动设备显得缓慢。在移动设备上执行页面加载操作之后,浏览器不仅能够访问关于已获取的对象的信息,还能访问包括类型信息、大小信息、样式、布局(例如,屏幕上关于图像的位置)、相依性、以及其他类似元信息在内的元信息。此信息可用于第二次加载相同页面,无论来自相同设备还是来自其他设备。各个方面实现了与其他移动设备共享此信息以提供下载内容并渲染网页的改善方法,其考虑了从客户端和服务器两者收集的元信息、以及网络条件。
在一方面,在移动客户端(例如,移动设备web浏览器)渲染网页之后,它收集关于网页的元信息。此元信息可包括客户端的用户代理(UA)、对象统一资源定位符(URL)列表、对象依存性、对象类型、大小、布局信息、以及其他类似信息。客户端可将所收集的元信息提交给服务器。服务器可从许多不同移动设备并针对多个web站点收集元信息,并且将该元信息合并(例如,众包、服务器提示等)到清单中。该清单可以是在渲染、访问、或下载网页的过程中对客户端有用的任何此类元信息的排列。该清单可被服务器或多个客户端用来识别和优先级排序高效显示网页所需的资源。在一方面,关于每一网页的清单可基于由访问网页的客户端计算设备采用的用户代理(例如,浏览器应用、通信软件)的类型或形式而包含不同的元信息。替换地,可针对用户代理的每一种类型或形式来生成不同清单(即,因用户代理而异的清单)。服务器可更新和维护关于多个网页、客户端、客户端类型、服务器、和网络的清单数据库,并且服务器可维护关于个体网页的众多清单,诸如在服务器维护因用户代理而异的清单和/或网页包括不同种类(例如,关于移动设备的种类)时。例如,服务器可维护关于单个网页包含若干相异清单的数据库,这些清单各自基于用户代理类型而包含不同元信息。在一方面,服务器可使用网页标识信息(例如,网页URL)和/或用户代理信息来对存储于数据库内的清单编索引。
在另一方面,服务器可通过直接接收和评估相应网页的内容来独立于客户端确定网页的清单。在此类方面,服务器可利用在服务器上运行的委托用户代理,委托用户代理访问每一网页并执行渲染过程以确定对每一类型的用户代理有用的元信息,就像该渲染已在客户端上使用该用户代理完成了一样。
在各个方面,服务器可基于从多个客户端接收到的(众包)或由服务器自身生成的(服务器起源)新的元信息周期性地更新清单。客户端和/或服务器可通过访问网页和重新评估页面加载要求来生成新的元信息,作为完全新的生成或通过将渲染体验与本地存储的元信息(诸如经高速缓存的清单数据)进行比较。在一方面,对清单的更新可由服务器在逐情形的基础上取决于更新的频度和/或个体网页的改变来进行。例如,服务器可以每天更新关于搜索引擎网页的清单一次,并且每小时更新关于实时新闻站点的清单许多次,但每周更新关于公司或政府实体的清单一次。
当移动客户端尝试访问网页时,该客户端可以首先检查其本地高速缓存状态、服务器的高速缓存状态、网络条件、或其任何组合。网络条件信息可包括关于网络的信息、从网络收集的信息、和/或可用来针对给定请求利用当前网络条件的信息。客户端和服务器可交换高速缓存信息、网络条件、以及由服务器为正被访问的特定网页维护的元信息。客户端、服务器、或这两者协作地可判定客户端应下载信息或服务器应向客户端推送资源的最优顺序。在一方面,在页面加载操作完成之后,移动客户端可收集从渲染页面生成的经更新的元信息,并且将经更新的信息发送给服务器以供进一步众包。以上提及的过程可重复、按需地执行以持续改善网络性能。在另一方面,客户端可以即使在一方面启用服务器起源时也向服务器传送基于网页访问所生成的元信息。因此,服务器可以在生成网页清单时能够访问众包的元信息和服务器起源的元信息两者。这可使得服务器能够从客户端的反馈获益。
以此方式,各个方面使得移动客户端和服务器能够加速页面下载,并通过交换众包的页面元信息、以及网络状态信息来改善网络效率。各个方面可使用网页内容和由服务器积累的多用户知识两者,结合客户端的资源和网络知识来确定向移动设备递送内容的方法。在一方面,作为客户端发送用于众包的元数据的替代或补充,服务器可基于内容来“在运行中”计算元数据。由于元数据的源改变,因此服务器可持续计算元数据。这些方面避免了可能由从特定客户端收集信息产生的隐私问题。
各个方面使得能在传输之前标识给定网页、客户端或网络所需的资源。通过在最前面标识所需资源,服务器可响应于初始网页访问请求而将所需信息推送到客户端,由此将较长的页面加载时间和/或往返时间减少近一半。
各个方面可在各种无线或移动通信系统内实现,其中的一个示例在图1中解说。图1中解说的示例通信系统100包括移动广播网络101和单播网络111,诸如蜂窝电话网络。典型的蜂窝电话网络包括耦合到网络操作中心114的多个蜂窝基站112,网络操作中心114操作以诸如经由电话陆线(例如,POTS网络(未示出))和因特网107来连接移动计算设备(诸如智能电话110A、110B和膝上型计算机110C)与其他网络目的地之间的语音和数据呼叫。在其他方面,移动计算设备还可包括诸如移动电视接收机、蜂窝电话、个人数字助理、交互式游戏设备、笔记本计算机、智能本、超级本或其他此类电子设备的设备。移动计算设备110A-C与单播网络111之间的通信可经由双向无线通信链路113(诸如3G、4G、CDMA、TDMA)和其他蜂窝电话通信技术来实现。为促成因特网数据通信,单播网络111通常将包括耦合至提供到因特网107的连接的网络操作中心114或在该网络操作中心114内的一个或多个服务器116。
移动计算设备110A-C可经由有线或WLAN(WiFi)连接(在其可用时)连接至因特网107,其此情形中因特网107充当单播网络。移动计算设备110A-C可使用公知的常规因特网接入协议来经由单播网络111接收内容。
通信系统100还可包括移动广播网络101,移动广播网络101通常包括由移动广播网络控制中心所控制的多个广播发射机102,该移动广播网络控制中心在本文中被称为广播操作中心104(或图中的“BOC”)。广播网络101将来自广播发射机102的内容作为移动广播传输103广播以供移动计算设备110A-C接收。移动广播网络控制中心104(也称为广播操作中心或“BOC”)内通常将是用于管理实时内容广播、生成电子服务指南、和生成元信息消息以供经由开销流广播的一个或多个服务器和系统。该元信息可以在内容广播之前、周期性地、或响应于客户端请求发送。广播元信息可被移动计算设备110A-C接收和存储,并用来改善将来的页面加载操作。例如,元信息可被移动台用来选择性地接收将来广播或者标识移动设备浏览器应向网页请求的资源。
在各个方面,客户端和服务器可收集和交换元信息。此元信息可包括允许移动设备或服务器更好地理解客户端、服务器、网络或web站点需求的信息,或者使得移动设备浏览器能够执行更快的页面加载操作的任何信息。在一方面,该元信息可以是XML、Ajax、或JSON代码。移动设备在渲染网页时可查看作为来自服务器的清单的元信息。该清单可提供用于网页的改进浏览器执行的方案。浏览器可使用该清单来更高效地下载和/或处理网页,由此导致更快的执行时间和更低的功率使用。例如,清单可提供某些数据被频繁访问或者在用户当中流行的信息。通常将被擦除或被频繁使用的数据可从移动设备上传到位于服务器上的高速缓存存储器。
在一方面,该清单可包括JavaScript元信息。该清单可提供包括以下各项的有用信息:某些短语的JavaScript功能概率、脚本令牌、lexing信息、AST解析信息、已编译的二进制数据、准时化数据、依存关系树、或者用于节省在移动设备处处理JavaScript请求的时间的其他信息。
在一方面,该清单可包括CSS元信息,其包括诸如简化或改进的选择器、合并样式之类的信息,或者辅助处理、解析、执行、或渲染CSS网页数据的任何其他信息。在一方面,该清单可包括关于如何处理DOM树的信息。
在一方面,该清单可包括指令移动设备如何处理经编码页面的HTML元信息。在一方面,该清单可包括从网络上其他客户端收集的数据,并且可描述从观察其他客户端的浏览信息接收到的分析或模式。
在一方面,该清单可包括与渲染、下载、或处理网页的各部分相关的概率。例如,该清单可指示具有高执行概率或者在访问页面的那些人当中可能非常流行的某个网页元素。具体示例可以是用户喜欢点击特定新闻web站点上的“体育”链接。移动设备可基于用户可能在将来某一点时请求网页元素、或者根本并不请求的推断来下载那些网页元素。例如,该清单可指示库包括具有高执行概率的第一部分,以及该第一部分应当被立即传送或访问。类似地,该清单可指示第二部分(其具有较低执行概率)不需要被下载,或者应当在第一部分之后被下载。
该清单可被预先高速缓存在移动设备上,诸如可在网页被预加载并且在访问页面的请求之前被提供给浏览器时发生。清单可在用户可能需要信息时之前在预定时间段(诸如在网络使用较低的傍晚或清晨时间期间)被传送给订阅的移动设备。替换地,该清单可作为同步规程的一部分传送,诸如针对“前100个”web站点的列表或基于客户端的使用习惯。在一个方面,清单可相对于web内容具有较慢的改变速率,并且由此可按预定间隔预先高速缓存到用户的计算机或移动设备。典型示例是网页的样式和布局,其趋向于非常不频繁地改变,即使页面上的内容每天改变也如此。在一方面,该清单可在非繁忙时间(诸如在深夜)被供应给移动设备。在一方面,该清单可周期性地(诸如每小时、每天、每星期、每月、或每年)被供应给移动设备。在一方面,该清单可经由移动广播网络被广播给移动设备。
一般而言,当在移动设备上执行页面加载操作之后,浏览器不仅具有关于已获取的对象的所生成信息,还具有关于信息类型、文件大小、样式、布局(例如,屏幕上关于图像的位置)、相依性的元信息、以及与渲染页面相关的其他类似元信息。此信息可用于第二次加载相同页面,无论在相同设备上还是在其他移动设备上。各个方面实现了共享此信息以提供下载内容和渲染网页的改善方法,其可考虑从客户端和服务器两者收集的元信息、以及网络条件。在各个方面,服务器可生成用于给定网页的清单(即,与从客户端接收它相反),由此降低对客户端的依赖和/或缓解客户端隐私问题。在一方面,服务器可被配置成在来自客户端的元信息长时间地缺乏时生成清单。例如,如果服务器被配置成每五分钟更新或“刷新”某一网页一次,则如果服务器在过去的五分钟里未接收到来自一个或多个客户端的此类信息,则它可自己针对该页面提取元信息并生成对应的清单。
各个方面可按单代理配置(例如,以使得所有客户端话务在其抵达因特网107之前通过中央代理服务器)或者按利用专用众包服务器的配置(例如,以使得客户端话务在其抵达因特网107之前通过专用服务器、web服务器、或其组合)来实现。各方面还可实现在分布式系统中,其中一些或所有网页主存服务器接收并维护针对其主存页面相关的元信息。
图2解说了可在一方面中实现的清单205的示例结构。如以上所提及的,服务器208可通过评估与访问和显示网页相关的元信息来生成关于特定用户代理和特定网页的清单205。服务器208可在独立地检索网页的内容时确定元信息,诸如以上参照图1描述的。当客户端移动计算设备或客户端110A开始下载或以其他方式访问网页的过程时,客户端可向服务器208请求清单205。服务器208可传送清单205,其可包含元信息的集合,诸如网页身份的唯一性信息209(例如,关于该网页的URL)、用户代理信息210(例如,关于为其准备清单的客户端110A的软件或其他处理平台的标识符或详情)、关于网页的时间戳224、以及与网页相关联的对象或资源(例如,图像、HTML、或脚本文件)的描述。该清单还可包括关于对象自身的特定数据,诸如对象URL212(例如,web服务器内的文件存储位置)、对象大小214、对象类型216、对象的高速缓存能力218(例如,特定对象是否可被存储在客户端110A的高速缓存内以供重复使用)、网页的各对象之间的依存性220、以及布局信息222(例如,网页内图像的相对位置)。客户端110A可接收该清单并将清单信息与客户端的计算设备内存储的信息(例如,高速缓存的数据、网络状态、以及其他“本地”信息)进行比较以确定来自维护网页的web服务器的将来资源请求所需的资源的优先级。在另一方面,清单信息与关于客户端110A的信息的比较可由服务器208完成。在一方面,当客户端110A请求网页时,服务器208可将所请求网页的网页身份209(例如,网页URL)与客户端110A的用户代理信息210(例如,用户代理类型)交叉参考以确定要向客户端110A传送的恰适清单205。
图3是解说根据各个方面的单代理配置300中的示例信息流的网络示图。在所解说的单代理配置300中,所有客户端话务可在其抵达因特网107之前通过中央代理或边缘服务器208(例如,web代理服务器、ISP网关、或CDN服务器等)。中央代理服务器208可包括众包服务器,其从许多移动客户端收集元信息、将所收集的元信息处理成众包元信息产品或清单、并将该清单分发给移动客户端。替换地,中央代理服务器208可在没有众包的情况下产生相同元信息数据库,诸如通过直接处理网页以提取恰适的数据,如以下关于图5A描述的。
移动计算设备110B可向中央代理服务器208发送关于网页的元信息。该信息可包括本地高速缓存状态、当前网络条件、上下文信息、用户简档信息、通信信息、网络信息、移动设备信息、web浏览器信息、和/或可由服务器用来改善页面加载速度的客户端可获得的任何其他信息。中央代理服务器208可接收该信息并将该信息与接收自其他移动计算设备110B和/或关于不同网页的元信息相组合(例如,众包等)。例如,不同的元信息基于不同客户端用户代理(例如,桌面、)对于任何给定页面是必需的。中央代理服务器208还可根据众包的元信息来高速缓存资源。
另一移动计算设备或客户端110A可被配置成使得在被指导加载页面时,它在加载该页面之前首先向中央代理服务208发送其本地高速缓存状态和当前网络条件。客户端110A还可向服务器208发送关于特定客户端、移动设备类型或网络的信息,和/或可向服务器208请求此类信息。基于从移动计算设备110B和代理服务器208两者获得的元信息,客户端110A和服务器208可协作地判定什么资源应当被下载/推送(按照不同优先级次序)给客户端110A。作为此协作性判定的一部分,系统可选择改善无线数据链路的使用和/或减少总页面加载时间的资源和/或对这些资源进行优先级排序。
所选资源(和/或相关信息)可被检索并被推送给客户端110A。客户端110A可接收该资源/信息,并渲染页面(例如,执行页面加载操作)。客户端110A可随后向代理服务器208发送关于网页的经更新的元信息,并且以上提及的过程可被重复。
在一方面,客户端110A的话务模式可被评估以改善其他客户端上的页面渲染时间。在一方面,云服务分布式网络可被用来通过预计浏览器的操作(例如通过向移动设备提供元信息)来改善页面加载速度。在一方面,移动计算设备可标识频繁使用的信息、向服务器208请求目标服务、和/或将频繁使用的信息上传到服务器高速缓存以供稍后使用。
图4A解说根据各个方面的众包实施例方法400中的示例信息流。在图4A所解说的示例中,元信息由专用众包服务器208管理。移动计算设备110B可向专用众包服务器208发送关于网页的元信息,专用众包服务器208可收集和分发页面加载元信息、从不同客户端接收到的关于不同网页的众包元信息,并根据元信息来高速缓存资源。当客户端移动计算设备110A或客户端请求页面时,客户端110A可首先向众包服务器208发送其本地高速缓存状态和当前网络条件。基于来自移动计算设备110B和众包服务器208两者的元信息,各方(例如,客户端110A和众包服务器208)可协作地判定需要什么资源。此众包服务器208可被配置成支持各种服务器操作,诸如压缩有效载荷或改变被发送的对象的次序。众包服务器208可向客户端110A发送标识改善网络使用和减少总页面加载时间所需的资源的列表。客户端110A可基于所接收到的列表来向web服务器412请求信息。客户端110A可随后(例如经由众包服务器208)接收来自web服务器412的信息并渲染页面。在渲染网页之后,客户端110A可向众包服务器208发送经更新的元信息,并且以上提及的过程可被重复。
图4B解说了用于创建和利用众包的网页清单的方法450。在框451,在计算设备上运行的多个客户端可使用从维护网页的web服务器接收到的资源(例如,对象、脚本文件、HTML代码)来加载网页。在框452,客户端可基于使用用户代理加载和访问网页的过程或作为该过程的一部分来确定元信息。该元信息可关于每一个体网页而不同,并且访问网页中采用的每种类型的用户代理可生成与由其他类型的用户代理生成的元信息集不同的元信息集。在框453,多个客户端中的每一个客户端可向服务器发送它们相应的元信息以供存储和处理。在框454,服务器可从所接收到的与网页相关的元信息生成关于特定网页的清单。在一方面,服务器可采用数据库来记录根据网页(例如,网页的全局URL)和用户代理类型来组织或索引的清单。此类组织可使得服务器能够响应于来自特定类型的用户代理的对特定网页的请求而从数据库调用恰适的网页清单。
在框455,服务器可从旨在访问指定网页的客户端接收对该网页的清单的请求。此请求可标识所期望的网页和客户端的用户代理标识信息两者。在框456,服务器可使用所接收到的网页标识符和客户端用户代理标识信息在数据库内定位恰适的清单,并将该清单传送给请求方客户端。在框457,请求方客户端可接收所传送的清单并使用清单中的信息通过将该清单信息与当前客户端信息(诸如高速缓存的网页元素)进行比较来向该网页所需的资源指派优先级。框457中执行的操作可包括将清单与高速缓存的资源和对象、依存性、布局信息等进行比较,并且与当前网络状态(例如,带宽、延迟估计等)进行比较。客户端可向加载网页所需的资源(例如,清单中所标识的未在高速缓存中存储的资源)指派优先级。在框458,客户端可按照指派优先级确定的顺序传送对加载网页所需的资源的请求,并从web服务器接收所请求的资源。可任选地,客户端可作为完成渲染网页的操作的一部分来生成元信息,并且在可任选框459中向服务器传送此类元信息。服务器可在框453更新与该网页相关的清单,并且该过程可响应于从任何数目的客户端接收到的每一个网页请求而继续重复。
在另一方面,服务器可确定资源的优先级并将那些资源推送给请求方客户端,而非将清单传送给客户端。实现此实施例的一示例方法460在图4C中解说。类似于上述方法400,在框451,在计算设备上运行的多个客户端可使用从维护网页的web服务器接收到的资源(例如,对象、脚本文件、HTML代码)来加载网页。在框452,客户端可基于使用用户代理加载和访问网页的过程或作为该过程的一部分来确定元信息。该元信息可关于每一个体网页而不同,并且访问网页中采用的每种类型的用户代理可生成与由其他类型的用户代理生成的元信息集不同的元信息集。在框453,多个客户端中的每一个客户端可向服务器发送它们相应的元信息以供存储和处理。在框454,服务器可从所接收到的与网页相关的元信息生成关于特定网页的清单。在一方面,服务器可采用数据库来记录根据网页(例如,网页的全局URL)和用户代理类型来组织和索引的清单。此类组织可使得服务器能够响应于来自特定类型的用户代理的对特定网页的请求而从数据库调用恰适的网页清单。
在框462,服务器可接收来自客户端的访问特定网页的请求。该请求可包括所请求网页的标识符(例如,URL)、用户代理的标识符、以及与客户端的当前状态相关的信息、尤其是与存储器中高速缓存的网页相关且客户端本地可获得的对象和资源。此信息使得服务器能够确定对应网页清单中标识的、尚未在请求方设备上呈现的对象和资源。在框464,服务器可访问关于所请求网页和客户端的用户代理的恰适清单。如以上所讨论的,这可通过将网页标识符和用户代理信息作为用于访问清单的数据库的索引项来完成。在框466,服务器可将该清单与框462接收到的客户端信息进行比较以标识需要被传送的资源和对象并向需要被传送给客户端的信息指派资源优先级。使用此信息,在框468,服务器可向请求网页的客户端通知所标识的优先级以使得该客户端能够按照所指示的优先级次序来请求那些对象和资源。替换地,在框468,服务器可简单地按照所标识的优先级顺序将这些资源和对象推送给客户端。请求方客户端可随后使用所接收到的资源和对象来渲染网页。可任选地,客户端可作为完成渲染网页的操作的一部分来生成元信息,并且在可任选框470向服务器传送此类元信息。服务器可在框453更新与该网页相关的清单,并且该过程可响应于从任何数目的客户端接收到的每一个网页请求而继续重复。
如以上参照图3提及的,取代从多个用户客户端移动计算设备接收元信息并开发网页清单的众包集,服务器可通过使用数个代理用户代理渲染网页来自己生成此类元信息。图5A解说根据各个方面的服务器起源的实现500中的示例信息流。在图5A所解说的示例中,元信息可由专用服务器208生成。与众包实现不同,服务器208可直接从web服务器412请求网页信息(即,HTML代码、脚本内容、样式表、图像等)。服务器208可仿真用于渲染每一网页的各种类型的用户代理(例如,桌面、操作系统、操作系统),并且可在网页被每种所仿真的用户代理类型处理时从web服务器412检索不同信息。服务器208可生成页面加载元信息,其描述加载网页所需的资源、各组件之间的依存性、以及客户端110A可用来改善网络使用和减少总页面加载时间的其他信息。从此元信息,服务器208可生成清单,该清单可被存储在与服务器208相关联的数据库中。
当客户端110A分配到渲染网页的任务时,客户端110A可向服务器208请求该清单,并且将元信息与当前本地信息(例如,高速缓存的数据、当前网络状态等)进行比较。通过此比较,客户端110A可对网页资源检索进行优先级排序和排次序。客户端110A可随后按照优先级的次序请求所需的网页元素、接收来自web服务器412的所需内容、并渲染页面。在一方面,客户端110A可向服务器208上传元信息,服务器208可将该信息合并到其存储的清单中,或者使用反馈来精细地调整其委托用户代理或藉以生成清单的过程。在一方面,服务器208可向客户端110A推送网页内容。在另一方面,客户端110A可向服务器208传送其当前本地信息(例如,高速缓存的数据、当前网络状态等),服务器208可将其与网页的清单进行比较以确定用于客户端110A的资源检索顺序。在另一方面,网页可被维护在服务器208上。
图5B解说了可在服务器中实现以用于使用服务器生成的元信息来生成网页清单的示例方法550。在方法550中,在框552,服务器可选择供处理的特定网页。此选择可在服务器针对其向客户端供应清单服务的大量网页当中作出。例如,服务器可被配置成基于前1000个网页的流行度来生成这1000个网页的清单,并从该列表中选择个体网页以供框552的处理。作为替换或补充,服务器可周期性地接收对先前尚未被处理的特定网页的请求,在此情形中,服务器可作为框552的一部分响应于客户端请求来选择该网页以进行处理。以此方式,服务器可在需要或期望时按需生成清单。
如以上所提及的,可为每种类型的用户代理生成不同的清单,这是因为用户代理可按不同方式处理网页,并且由此需要不同的优先级排序或元信息。因此,在框554,服务器可选择第一委托用户代理以用于处理被访问的网页。在框556,服务器可使用所选择的委托用户代理来加载或以其他方式处理所选择的网页,并在框558确定用于渲染所选网页的所选用户代理的元信息。在框560,服务器可基于框558生成的元信息来生成清单,并将该清单存储在清单数据库中。
在确定框562,服务器可确定是否存在应为其生成清单的另一个用户代理。当存在要被处理的另一用户代理(即,确定框562=“是”)时,服务器可返回框554以选择下一个委托用户代理以进行处理。一旦所选网页已使用服务器所使用的所有委托用户代理进行了处理(即,确定框562=“否”),服务器就可在确定框564确定是否存在要被处理的另一网页。如果存在要被处理的另一网页(即,确定框564=“是”)时,则服务器可返回至框552以选择下一个网页以进行处理,其可如上所述地进行。一旦使用所有委托用户代理处理了所有网页(即,确定框564=“否”),服务器就可处理针对网页清单的客户端请求,如以上参照图4B所述并在框566预见的。
由于网页随着内容被添加、删除、和更新而频繁地变化,因此服务器可被配置成周期性地刷新或重新生成网页清单。对网页清单更新的调度可取决于每一网页的类型或内容。例如,关于新闻网页的清单可被非常频繁地更新,诸如每5到10分钟一次,因为它们的内容快速地变化,而关于公司网页的清单可以与它们的内容的变化速率一致地每周或每月地更新。网页清单更新的此类调度可在逐网页的基础上确定,诸如基于由服务器随着时间推移从更新各清单学习到的信息来确定。例如,服务器可将新生成的清单与其先前的版本进行比较以确定在各更新之间的时间期间该清单改变的程度。如果服务器确定这些清单不像该清单被更新或重新生成那样频繁地改变,则服务器可相应地调节其用于更新该网页的清单的调度。类似地,如果服务器确定清单到清单变化是显著的,则服务器可增加用于该特定网页的清单更新的周期性。在其他实施例中,服务器可遵循简单的更新调度,诸如每小时、每晚、或每周。
使用此类更新调度,在确定框568,服务器可为每一网页确定是否到时间更新其清单。只要网页不要求更新(即,在确定框=“否”)时,服务器就可继续支持框566中对网页清单的客户端请求。当服务器确定到时间为特定网页或网页群更新清单(即,确定框568=“是”)时,服务器可返回至框552以选择网页进行更新。通过重复按上述方式的操作,服务器可为大量网页维护最新的清单,同时处理来自客户端的对网页或网页清单的请求。
图6解说了在用于在服务器为中心的实现中加速页面加载的方面方法600中的信息流,其中服务器208标识和选择要被递送给客户端110A的内容,并确定所选内容要被递送的顺序。在图6所解说的示例中,客户端110A以冷高速缓存开始并且网络条件良好。在操作1,客户端110A可对照本地元信息来检查其本地高速缓存状态(例如,什么资源/对象是高速缓存、依存性、布局信息等)并检查网络条件(例如,上行链路和下行链路、带宽、RTT延迟估计等)。在操作2,客户端110A可向代理服务器208发送对网页的请求,连同其本地高速缓存状态和网络条件。在操作3,基于与所请求网页相关的最新可用清单,代理服务器208可通过执行可包括以下操作的操作来确定什么资源应当被客户端110A接收:确定什么资源在客户端侧缺失;基于依存性/布局信息确定最优请求顺序或优先级;确定是否存在阻止其他资源和/或具有更高优先级的资源;确定在页面顶部/视口中是否存在应当具有比其他图像/对象高的优先级的图像或对象;以及其他类似操作。在操作4a,基于网络条件和缺失请求的高速缓存能力,服务器208可判定要执行以下操作中的一个或多个操作:按照操作3中定义的次序将所有缺失的可高速缓存的资源推送给客户端110A;将缺失对象(例如,按照操作3中定义的次序)的列表发送回(即,推送)客户端110A以供其预加载(预加载提示);执行资源处理操作(例如,客户端110A具有小屏幕并且应当接收较低质量的图像);若需要,将资源转码成不同格式(例如,客户端110A的较低质量或期望的对象格式等);压缩资源;为客户端110A执行URL重新定向操作;为客户端110A获取必要资源;以及其他类似操作。在操作4b,服务器208可向客户端110A发送所有不可高速缓存对象的列表。在操作5,客户端110A可根据所接收到的列表来请求资源或接收服务器208所推送的对象。在操作6,客户端110A可完成加载页面和更新本地元信息。在可任选操作7,客户端110A可向服务器208上传经更新的元信息以用于修改与网页相关的清单。
图7解说了用于在以服务器为中心的配置中加速页面加载的另一方面方法700中的信息流。在图7所解说的示例中,客户端高速缓存是部分无效的(例如,期满、被驱逐等),没有不可高速缓存的资源,并且网络条件良好。在操作1,客户端110A可对照本地元信息检查本地高速缓存状态并检查网络条件。在操作2,客户端110A可向代理服务器208发送对网页的请求,连同无效和有效的高速缓存和网络状态。在操作3,基于手头的最新清单信息,代理服务器208可以:确定哪些资源在客户端侧缺失;确定最优请求顺序/优先级次序(例如,基于依存性/布局信息);标识阻止其他资源的具有更高优先级的资源;确定页面顶部/视口中的图像/对象是否应当被给予更高优先级;以及其他类似操作。在操作4,基于网络条件,服务器208可获取用于客户端110A的资源(若必须)并按照操作3中定义的次序向客户端110A推送所有缺失的可高速缓存的资源。在操作5,客户端110A可完成加载页面和更新本地元信息。在可任选操作6,客户端110A可向服务器208上传经更新的元信息以用于修改与网页相关的清单。
图8解说了用于在以服务器为中心的配置中加速页面加载的又一方面方法800中的信息流。在图8所解说的示例中,客户端高速缓存是部分无效的(例如,期满、被驱逐等),没有不可高速缓存的资源,并且网络条件恶劣(例如,低带宽)。在操作1,客户端110A可对照本地元信息检查本地高速缓存状态并检查网络条件。在操作2,客户端110A可向代理服务器208发送网页请求,连同无效和有效的高速缓存和网络状态。在操作3a,基于手头的最新清单,代理服务器208可以:确定哪些资源在客户端侧缺失;确定最优请求顺序或优先级次序(例如,基于依存性和/或布局信息);标识阻止其他资源的具有更高优先级的资源;以及确定在页面顶部或视口中是否存在应当被给予更高优先级的图像/对象。在操作3b,服务器208可(例如基于指示网络条件恶劣的元信息)例如通过将资源转码成较低质量(或不同对象格式)或压缩JavaScript、CSS和HTML对象来减小要传送的有效载荷的大小。在操作4,服务器208可按操作3中定义的次序将经转码的缺失的对象推送给客户端110A。在操作5,客户端110A可完成加载页面和更新本地元信息。在可任选操作6,客户端110A可向服务器208上传经更新的元信息以用于修改与网页相关的清单。
图9解说用于在以客户端为中心的配置中加速页面加载的方面方法900中的信息流,其中对于什么内容要被下载以及对象被下载的顺序的判定由客户端110A做出。在图9所解说的示例中,客户端110A包含部分无效的高速缓存,网络条件优良,并且服务器208支持推送操作。在操作1,客户端110A可从代理服务器208获取与期望网页相关的清单。在操作2,客户端110A可检查本地高速缓存状态(例如,确定什么对象在高速缓存中、对象依存性等)和网络条件(例如,带宽、延迟估计等)。在操作3,基于该清单,客户端110A可以:确定哪些资源缺失并且应当被获取;确定最优请求顺序/优先级次序(例如,基于依存性/布局/网络条件信息);标识阻止其他资源的具有更高优先级的资源;确定页面顶部/视口中是否存在应当被给予更高优先级的图像/对象;以及执行其他类似操作。在操作4,根据服务器的能力(其可在接收自服务器208的元信息中指示),客户端110A可向服务器208发送对象的列表以及它们的优先级,服务器208可接收该列表并按照所请求的次序/根据它们的优先级向客户端110A推送所请求的对象。在操作5,客户端110A可完成加载页面并更新本地元信息。在可任选操作6,客户端110A可向服务器208上传经更新的元信息以用于修改与网页相关的清单。
图10解说了用于在以客户端为中心的配置中加速页面加载的另一方面方法1000中的信息流。在图10所解说的示例中,客户端110A包含部分无效的高速缓存并且网络条件优良,但与图9中解说的示例不同,服务器208不支持推送操作。在此配置中,如同所有以客户端为中心的配置一样,对于什么内容要被下载以及对象下载的顺序的判定可由客户端110A确定。
在操作1,客户端110A可从代理服务器208获取关于其已被指导要下载的网页的清单。在操作2,客户端110A可检查本地高速缓存状态(例如,确定什么对象在高速缓存中)和网络条件(例如,带宽、延迟估计等)。在操作3,基于最新的可用元信息,客户端110A可以:确定哪些资源缺失并且应当被获取;确定最优请求顺序/优先级次序(例如,基于依存性/布局/网络条件信息);标识阻止其他资源的具有更高优先级的资源;确定页面顶部/视口中是否存在应当被给予更高优先级的图像/对象;以及执行其他类似操作。在操作4,根据服务器的能力(例如,如在接收自服务器208的元信息中指示的),客户端110A可按照操作3中导出的最优顺序向代理/web服务器发送一系列接收缺失的对象的请求。服务器208可接收来自客户端110A的对于对象的请求并按照最优次序向客户端110A发送所请求的对象,该最优次序可使用元信息来计算。在操作5,客户端110A可完成加载页面并更新本地元信息。在可任选操作6,客户端110A可向服务器208上传经更新的元信息以用于修改与网页相关的清单。
通过将本地客户端信息和与期望网页相关的清单进行比较,实现各个方面的客户端110A或服务器208可基于情景(例如,网络条件)、配置(例如,以客户端为中心、以服务器为中心等)、或其任何组合来确定对象递送次序(例如,优先级)。各个方面可使得客户端110A能够通过考虑诸如对象依存性、对象大小、当前网络条件、冷高速缓存、设备类型等因素来改善对象递送次序。例如,如果默认对象递送次序(例如,由浏览器设置的默认次序)是CSS1、IMG1、JS1、IMG2、IMG3、JS3、IMG4,则实现各个方面的客户端110A可确定次序CSS1、JS1、JS3、IMG2、IMG1、IMG3、IMG4更为高效,并且相应地改变递送顺序。此外,请求次序和接收次序可基于连网能力(诸如,具有请求ID的HTTP流水线操作)的可用性而有所不同。
在一方面,服务器208可确定这些对象当前是否驻留在客户端高速缓存中并且仅递送当前未被高速缓存在客户端110A上的对象。类似地,客户端110A可仅请求未被高速缓存的项由服务器208发送。替换地,如果客户端110A设备改变其资源简档(诸如从3G转到WiFi或者经由插接站连接至较大的显示器),则客户端110A可忽略先前的高速缓存内容并下载所有新的web资源。在任一情形中,资源可根据从恰适的网页清单确定的其获指派的优先级按顺序被递送给客户端110A。
图11A解说用于在以服务器为中心的实现中加速页面加载的客户端实现的方法1100,其中服务器标识和选择要递送给客户端的内容。在图11A中解说的示例中,客户端以冷高速缓存开始并且网络条件良好。在框1102,客户端可对照本地元信息来检查其本地高速缓存状态(例如,以标识在高速缓存中的资源/对象、依存性、布局信息等)并检查网络条件(例如,带宽、延迟估计等)。在框1104,客户端可向代理服务器发送对网页的请求,连同其本地高速缓存状态和网络条件。在框1106,客户端可按照基于本地元信息与网页的恰适清单的比较而定义的次序/顺序来接收所有缺失的可高速缓存的资源。在框1108,客户端可接收或生成缺失的可高速缓存的对象的列表和优先级。在框1110,客户端可接收所有不可高速缓存的对象的列表。在框1112,客户端可基于所接收到的缺失的对象的列表来请求资源和/或获取不可高速缓存的对象。在框1114,客户端可使用所接收到的对象根据它们相应的优先级来加载页面并更新其本地元信息。在可任选框1116,客户端可向服务器上传元信息以用于修改与网页相关的清单。
图11B解说用于在以服务器为中心的实现中加速页面加载的服务器实现的方法1150,其中服务器标识和选择要递送给客户端的内容。在图11B所解说的示例中,客户端以冷高速缓存开始并且网络条件良好。在框1152,服务器可从客户端接收网页信息,连同元信息和网络条件。在框1154,服务器可将所接收到的信息与先前接收到的信息(例如,来自先前访问、其他客户端、多个web站点等)相组合(例如,众包)以产生与网页相关的清单。在框1156,服务器可基于最新的可用清单来确定应当被发送给客户端的资源。作为框1156的一部分,服务器可确定在客户端侧缺失的资源,确定用于将那些对象递送给客户端的最优顺序,确定是否存在阻止其他资源的具有更高优先级的资源,以及执行其他类似操作。在框1158,基于网络条件和缺失请求的高速缓存能力,服务器可获取缺失的可高速缓存的资源并按照所确定的顺序向客户端推送这些资源。在框1160,服务器可向客户端发送缺失的对象的列表。在框1162,服务器可向客户端发送所有不可高速缓存对象的列表。在框1164,服务器可获取诸不可高速缓存对象并根据它们的所确定优先级按顺序将这些不可高速缓存对象推送给客户端。在可任选框1166,服务器可接收来自客户端的经更新的元信息并更新与网页相关的清单。
图12A解说用于在以客户端为中心的实现中加速页面加载的客户端实现的方法1200,其中对于要被下载的内容以及对象被下载的顺序的判定由客户端作出。在图12A中解说的示例中,客户端包含部分无效的高速缓存并且网络条件良好。在框1202,客户端可从代理服务器获取关于其请求下载的网页的元信息。在框1204,客户端可检查本地高速缓存状态(例如,确定在高速缓存中的对象、对象依存性等)和网络条件(例如,带宽、延迟估计等)。在框1206,基于服务器维护的最新可用清单,客户端可确定缺失且应当被获取的资源。在框1208,客户端可确定用于接收对象的最优顺序/优先级,其可基于由元信息标识的服务器能力来确定。在框1210,客户端可向服务器发送所需诸对象的列表以及它们的优先级。在框1212,客户端可根据所请求对象的所确定优先级按所请求顺序接收所请求对象。在框1214,客户端可加载页面并更新其本地元信息。在可任选框1216,客户端可向服务器上传经更新的元信息以用于修改与网页相关的清单。
图12B解说用于在以客户端为中心的实现中加速页面加载的服务器实现的方法1250,其中对于要被下载的内容以及对象被下载的顺序的判定由客户端作出。在图12B中所解说的示例中,客户端包含部分无效的高速缓存,网络条件优良,并且服务器支持推送操作。在框1252,服务器可向客户端发送与客户端请求下载的网页相关的清单。客户端可确定用于接收对象的最优顺序/优先级,并将一系列经优先级排序的对象请求发回服务器。在框1254,服务器可接收诸对象的列表和它们相应的优先级。在框1256,服务器可根据所请求对象的优先级按顺序向客户端推送所请求对象。在可任选框1258,服务器可接收来自客户端的经更新的元信息并更新与网页相关的清单。
图13是适于与任何方面联用的移动计算设备的系统框图。典型的移动计算设备110A可包括耦合到内部存储器1332、显示器1333并耦合到扬声器1354的处理器1331。另外,移动计算设备可包括可连接到无线数据链路的用于发送和接收电磁辐射的天线1334、和/或耦合到处理器1331的蜂窝电话收发机1335、以及耦合到处理器的移动多媒体广播接收机1336。移动计算设备110A通常还包括用于接收用户输入的菜单选择按钮或摇杆开关。
各个方面可实现在各种市售的服务器设备中的任何服务器设备上,诸如图14中所解说的服务器208。此类服务器208通常包括处理器1401并且可包括多个处理器系统1411、1421、1431,其中一个或多个可以是或包括多核处理器。处理器1401可耦合至易失性内部存储器1402和大容量非易失性存储器(诸如盘驱动器1403)。服务器208还可包括耦合至处理器1401的软盘驱动器、压缩盘(CD)或DVD盘驱动器。服务器208还可包括耦合至处理器1401的用于建立与网络(诸如耦合至其他广播系统计算机和服务器的局域网)的数据连接的网络接入端口1404。
以上所描述的各方面还可在诸如图15中所解说的膝上型计算机110C之类的各种个人计算设备内实现。许多膝上型计算机包括担当计算机的定点设备的触摸板触摸表面1517,并且由此可接收与在装备有触摸屏显示器的移动计算设备以及上述移动计算设备上实现的拖曳、滚动和轻击手势类似的拖曳、滚动和轻击手势。膝上型计算机110C将通常包括耦合至易失性存储器1512和大容量非易失性存储器(诸如闪存的盘驱动器1513)的处理器1511。膝上型计算机110C还可包括耦合至处理器1511的软盘驱动器1514和压缩盘(CD)驱动器1515。膝上型计算机110C还可包括耦合至处理器1511的用于建立数据连接或接纳外部存储器设备的诸如USB或连接器插口之类的数个连接器端口,或者用于将处理器1511耦合至网络的其它网络连接电路。在笔记本配置中,计算机外壳包括均耦合至处理器1511的触摸板1517、键盘1518、和显示器1519。计算设备的其他配置可包括耦合至处理器(例如,经由USB输入)的计算机鼠标或轨迹球(未示出)(这也是公知的),这也可结合各方面来使用。
处理器1331、1401、1411、1421、1431和1511可以是能由软件指令(应用)配置以执行包括上述各个方面的功能在内的各种功能的任何可编程微处理器、微型计算机或者一个或多个多处理器芯片。在一些设备中,可提供多个处理器1331、1401、1411、1421、1431和1511,诸如一个处理器专用于无线通信功能并且一个处理器专用于运行其他应用。通常,软件应用可被存储在内部存储器1332、1402和1403中,然后它们被访问并被加载到处理器1331、1401、1411、1421、1431和1511中。处理器1331、1401、1411、1421、1431和1511可包括足以存储应用软件指令的内部存储器。在许多设备中,内部存储器可以是易失性或非易失性存储器(诸如闪存),或这两者的混合。为本描述之故,对存储器的一般性引述是指可由处理器1331、1401、1411、1421、1431和1511访问的存储器,包括插入该设备的内部存储器或可移动存储器、以及在处理器1331、1401、1411、1421、1431和1511本身内部的存储器。
上述方法描述和过程流程图仅作为解说性示例提供,且并非旨在要求或暗示各个方面的操作必须按所给出的次序来执行。如本领域技术人员将领会的,前述各方面中的操作次序可按任何次序来执行。诸如“其后”、“然后”、“接着”等的措辞并非旨在限定操作的次序;这些措辞仅是简单地用以指引读者遍历方法的描述。进一步地,对单数形式的权利要求元素的任何引述,例如使用冠词“一”、“某”或“该”的引述不应解释为将该元素限定为单数。
结合本文中所公开的各方面来描述的各种解说性逻辑框、模块、电路、和算法步骤可实现为电子硬件、计算机软件、或这两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、块、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员对于每种特定应用可用不同的方式来实现所描述的功能性,但这样的实现决策不应被解读成导致脱离了本发明的范围。
用以实现结合本文中公开的方面描述的各种例示性逻辑、逻辑框、模块、以及电路的硬件可利用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文中描述的功能的任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协同的一个或多个微处理器或任何其它此类配置。替换地,一些步骤或方法可由专用于给定功能的电路系统来执行。
在一个或多个示例性方面中,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则这些功能可作为一条或多条指令或代码存储在非瞬态计算机可读或处理器可读存储介质上。本文中公开的方法或算法的步骤可实施在可驻留在非瞬态计算机可读介质上的被执行的处理器可执行软件模块中。非瞬态计算机可读和处理器介质包括能被计算机或处理器访问的任何可用存储介质。作为示例而非限定,此类非瞬态计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或者可用以携带或者存储指令或数据结构形式的期望程序代码且可由计算机访问的任何其它介质。如本文中所使用的盘和碟,包括压缩碟(CD)、激光碟、光碟、数字通用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据而碟(disc)利用激光以光学方式再现数据。以上的组合也应被包括在非瞬态计算机可读介质的范围内。另外,方法或算法的操作可作为一条代码和/或指令或者代码和/或指令的任何组合或集合而驻留在可被纳入计算机程序产品中的非瞬态机器可读介质和/或非瞬态计算机可读介质上。
提供了以上对所公开的方面的描述是为了使得本领域任何技术人员皆能够制作或使用本发明。对这些方面的各种修改容易为本领域技术人员所显见,并且在此所定义的普适原理可被应用于其它方面而不会脱离本发明的精神或范围。由此,本发明并非旨在限定于本文中示出的方面,而是应被授予与所附权利要求和本文中公开的原理和新颖性特征一致的最广义的范围。
Claims (61)
1.一种用于支持移动计算设备渲染网页的方法,包括:
在多个移动计算设备上生成与处理所述网页相关的元信息;
从所述多个移动计算设备中的每一个移动计算设备向服务器传送所生成的元信息并标识处理所述网页中使用的用户代理;
在所述服务器中接收所生成的元信息;
基于从所述多个移动计算设备接收到的所述元信息来关于每一个用户代理生成关于所述网页的清单;
使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级;
在所述移动计算设备上按照基于所述资源的获指派优先级确定的顺序来接收所述资源;以及
在所述移动计算设备上渲染所述网页。
2.如权利要求1所述的方法,其特征在于,进一步包括,所述移动计算设备向所述服务器传送在渲染所述网页期间生成的元信息。
3.如权利要求1所述的方法,其特征在于,使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级包括:
向所述服务器传送标识所述网页和在所述移动计算设备上实现的用户代理的信息;
获得关于所述网页和在所述移动计算设备上实现的所述用户代理的所述清单;
将所获得的清单传送给所述移动计算设备;
通过将所述清单与所述移动计算设备上存储的信息进行比较来在所述移动计算设备中标识在所述移动计算设备上加载所述网页所需的资源;以及
基于所述清单向所述移动计算设备中标识出的资源指派优先级。
4.如权利要求3所述的方法,其特征在于,在所述移动计算设备上按照由所述资源的获指派优先级确定的顺序接收所述资源包括:所述移动计算设备按照由所述移动计算设备基于所述清单确定的顺序向第二服务器请求所述资源的下载。
5.如权利要求1所述的方法,其特征在于,使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级包括:
向所述服务器传送与所述移动计算设备相关的信息;
获得关于所述网页和在所述移动计算设备上实现的所述用户代理的所述清单;
在所述服务器中将所获得的清单和与所述移动计算设备相关的信息进行比较;
在所述服务器中标识在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式;以及
向所述移动计算设备传送所标识出的在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式。
6.如权利要求5所述的方法,其特征在于,在所述移动计算设备上按照基于所述资源的获指派优先级确定的顺序接收所述资源包括:所述服务器按照由所述服务器基于所述清单确定的顺序向所述移动计算设备推送所述资源。
7.如权利要求6所述的方法,其特征在于,进一步包括,所述服务器将资源转码成所述移动计算设备的期望格式。
8.一种用于支持移动计算设备渲染网页的方法,包括:
在服务器上生成与使用各种类型的用户代理处理所述网页相关的元信息;
基于所生成的元信息关于每种类型的用户代理生成关于所述网页的清单;
使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级;
在所述移动计算设备上按照基于所述资源的获指派优先级确定的顺序来接收所述资源;以及
在所述移动计算设备上渲染所述网页。
9.如权利要求8所述的方法,其特征在于,进一步包括,所述移动计算设备向所述服务器传送在渲染所述网页期间生成的元信息。
10.如权利要求8所述的方法,其特征在于,使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级包括:
向所述移动计算设备传送所述清单以供使用与所述移动计算设备相关的信息进行评估;
在所述移动计算设备中标识在所述移动计算设备上加载所述网页所需的所述资源;以及
在所述移动计算设备中向标识出的资源指派优先级。
11.如权利要求10所述的方法,其特征在于,在所述移动计算设备上按照由所述资源的获指派优先级确定的顺序接收所述资源包括:所述移动计算设备按照由所述移动计算设备基于所述清单确定的顺序向第二服务器请求所述资源的下载。
12.如权利要求8所述的方法,其特征在于,使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级包括:
向所述服务器传送与所述移动计算设备相关的信息;
获得关于所述网页和在所述移动计算设备上实现的所述用户代理的所述清单;
在所述服务器中将所获得的清单和与所述移动计算设备相关的信息进行比较;
在所述服务器中标识在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式;以及向所述移动计算设备传送所标识出的在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式。
13.如权利要求12所述的方法,其特征在于,在所述移动计算设备上按照基于所述资源的获指派优先级确定的顺序接收所述资源包括:所述服务器按照由所述服务器基于所述清单确定的顺序向所述移动计算设备推送所述资源。
14.如权利要求13所述的方法,其特征在于,进一步包括,所述服务器将资源转码成所述移动计算设备的期望格式。
15.一种移动计算设备,包括:
存储器;以及
处理器,所述处理器耦合至所述存储器且配置有处理器可执行指令以执行操作,所述操作包括:
向服务器传送标识网页和在所述移动计算设备上实现的用户代理的信息;
从所述服务器接收关于所述网页且关于在所述移动计算设备上实现的所述用户代理的清单;
通过将所述清单与所述移动计算设备上存储的信息进行比较来标识加载所述网页所需的资源;
基于所述清单向标识出的资源指派优先级;
按照基于所述资源的获指派优先级确定的顺序来接收所述资源;以及
渲染所述网页。
16.如权利要求15所述的移动计算设备,其特征在于,所述处理器配置有处理器可执行指令以使得按照基于所述资源的获指派优先级确定的顺序接收所述资源包括:按照基于所述清单的顺序向第二服务器请求所述资源的下载。
17.如权利要求15所述的移动计算设备,其特征在于,所述处理器配置有处理器可执行指令以执行进一步包括以下操作的操作:向所述服务器传送在渲染所述网页期间生成的元信息。
18.一种服务器,包括:
存储器;以及
服务器处理器,所述服务器处理器耦合至所述存储器且配置有服务器可执行指令以执行操作,所述操作包括:
收集与使用各种类型的用户代理处理网页相关的元信息;
基于所收集的元信息关于每种类型的用户代理生成关于所述网页的清单;
使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级;以及
按照基于所述资源的获指派优先级确定的顺序来向所述移动计算设备传送所述资源。
19.如权利要求18所述的服务器,其特征在于,所述服务器处理器配置有服务器处理器可执行指令以使得使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级包括:向所述移动计算设备传送所述清单以供使用与所述移动计算设备相关的信息进行评估。
20.如权利要求18所述的服务器,其特征在于,所述处理器处理器配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:从所述移动计算设备接收在渲染所述网页期间生成的元信息。
21.如权利要求18所述的服务器,其特征在于,所述服务器处理器配置有服务器处理器可执行指令以使得收集与使用各种类型的用户代理处理网页相关的元信息包括:在所述服务器上生成与使用各种类型的用户代理处理所述网页相关的元信息。
22.如权利要求18所述的服务器,其特征在于,所述服务器处理器配置有服务器处理器可执行指令以使得收集与使用各种类型的用户代理处理网页相关的元信息包括:从多个移动计算设备接收与使用各种类型的用户代理处理所述网页相关的元信息。
23.如权利要求18所述的服务器,其特征在于,所述服务器处理器配置有服务器处理器可执行指令以使得使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级包括:
接收与所述移动计算设备相关的信息;
使用所述清单评估所接收到的信息;
标识在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式;以及
向所述移动计算设备传送所标识出的在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式。
24.如权利要求23所述的服务器,其特征在于,所述服务器处理器配置有服务器处理器可执行指令以使得按照基于所述资源的获指派优先级确定的顺序向所述移动计算设备传送所述资源包括:
按照基于所述清单的顺序来向所述移动计算设备推送所述资源。
25.如权利要求24所述的服务器,其特征在于,所述服务器处理器配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:将资源转码成所述移动计算设备的期望格式。
26.一种移动计算设备,包括:
用于向服务器传送标识网页和在所述移动计算设备上实现的用户代理的信息的装置;
用于从所述服务器接收关于所述网页且关于在所述移动计算设备上实现的所述用户代理的清单的装置;
用于通过将所述清单与所述移动计算设备上存储的信息进行比较来标识加载所述网页所需的资源的装置;
用于基于所述清单向标识出的资源指派优先级的装置;
用于按照基于所述资源的获指派优先级确定的顺序来接收所述资源的装置;以及
用于渲染所述网页的装置。
27.如权利要求26所述的移动计算设备,其特征在于,用于按照基于所述资源的获指派优先级确定的顺序接收所述资源的装置包括:用于按照基于所述清单的顺序向第二服务器请求所述资源的下载的装置。
28.如权利要求26所述的移动计算设备,其特征在于,进一步包括,用于向所述服务器传送在渲染所述网页期间生成的元信息的装置。
29.一种服务器,包括:
用于收集与使用各种类型的用户代理处理网页相关的元信息的装置;
用于基于所收集的元信息关于每种类型的用户代理生成关于所述网页的清单的装置;
用于使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级的装置;以及
用于按照基于所述资源的获指派优先级确定的顺序来向所述移动计算设备传送所述资源的装置。
30.如权利要求29所述的服务器,其特征在于,用于使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级的装置包括:用于向所述移动计算设备传送所述清单以供使用与所述移动计算设备相关的信息进行评估的装置。
31.如权利要求29所述的服务器,其特征在于,进一步包括,用于从所述移动计算设备接收在渲染所述网页期间生成的元信息的装置。
32.如权利要求29所述的服务器,其特征在于,用于收集与使用各种类型的用户代理处理网页相关的元信息的装置包括:用于在所述服务器上生成与使用各种类型的用户代理处理所述网页相关的元信息的装置。
33.如权利要求29所述的服务器,其特征在于,用于收集与使用各种类型的用户代理处理网页相关的元信息的装置包括:用于从多个移动计算设备接收与使用各种类型的用户代理处理所述网页相关的元信息的装置。
34.如权利要求29所述的服务器,其特征在于,用于使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级的装置包括:
用于接收与所述移动计算设备相关的信息的装置;
用于使用所述清单评估所接收到的信息的装置;
用于标识在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式的装置;以及
用于向所述移动计算设备传送所标识出的在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式的装置。
35.如权利要求34所述的服务器,其特征在于,用于按照基于所述资源的获指派优先级确定的顺序向所述移动计算设备传送所述资源的装置包括:用于按照基于所述清单的顺序向所述移动计算设备推送所述资源的装置。
36.如权利要求35所述的服务器,其特征在于,进一步包括,用于将资源转码成所述移动计算设备的期望格式的装置。
37.一种其上存储有处理器可执行软件指令的非瞬态处理器可读存储介质,所述处理器可执行软件指令被配置成使得处理器执行操作,所述操作包括:
向服务器传送标识网页和在所述移动计算设备上实现的用户代理的信息;
从所述服务器接收关于所述网页且关于在所述移动计算设备上实现的所述用户代理的清单;
通过将所述清单与所述移动计算设备上存储的信息进行比较来标识加载所述网页所需的资源;
基于所述清单向标识出的资源指派优先级;
按照基于所述资源的获指派优先级确定的顺序来接收所述资源;以及
渲染所述网页。
38.如权利要求37所述的非瞬态处理器可读存储介质,其特征在于,所存储的处理器可执行软件指令被配置成使得处理器执行操作以使得按照基于所述资源的获指派优先级确定的顺序接收所述资源包括:按照基于所述清单的顺序向第二服务器请求所述资源的下载。
39.如权利要求37所述的非瞬态处理器可读存储介质,其特征在于,所存储的处理器可执行软件指令被配置成使得处理器执行进一步包括以下操作的操作:向所述服务器传送渲染所述网页期间生成的元信息。
40.一种其上存储有服务器处理器可执行指令的非瞬态服务器可读存储介质,所述服务器处理器可执行指令被配置成使得服务器处理器执行操作,所述操作包括:
收集与使用各种类型的用户代理处理网页相关的元信息;
基于所收集的元信息关于每种类型的用户代理生成关于所述网页的清单;
使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级;以及
按照基于所述资源的获指派优先级确定的顺序来向所述移动计算设备传送所述资源。
41.如权利要求40所述的非瞬态服务器可读存储介质,其特征在于,所存储的服务器处理器可执行指令被配置成使得服务器处理器执行操作以使得使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级包括:向所述移动计算设备传送所述清单以供使用与所述移动计算设备相关的信息进行评估。
42.如权利要求40所述的非瞬态服务器可读存储介质,其特征在于,所存储的服务器处理器可执行指令被配置成使得服务器处理器执行进一步包括以下操作的操作:从所述移动计算设备接收渲染所述网页期间生成的元信息。
43.如权利要求40所述的非瞬态服务器可读存储介质,其特征在于,所存储的服务器处理器可执行指令被配置成使得服务器处理器执行操作以使得收集与使用各种类型的用户代理处理网页相关的元信息包括:在所述服务器上生成与使用各种类型的用户代理处理所述网页相关的元信息。
44.如权利要求40所述的非瞬态服务器可读存储介质,其特征在于,所存储的服务器处理器可执行指令被配置成使得服务器处理器执行操作以使得收集与使用各种类型的用户代理处理网页相关的元信息包括:从多个移动计算设备接收与使用各种类型的用户代理处理所述网页相关的元信息。
45.如权利要求40所述的非瞬态服务器可读存储介质,其特征在于,所存储的服务器处理器可执行指令被配置成使得服务器处理器执行操作以使得使用所述清单向在移动计算设备上使用用户代理加载所述网页所需的资源指派优先级包括:
接收与所述移动计算设备相关的信息;
使用所述清单评估所接收到的信息;
标识在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式;以及
向所述移动计算设备传送所标识出的在所述移动计算设备上加载所述网页所需的资源的优先级和恰适的对象格式。
46.如权利要求45所述的非瞬态处理器可读存储介质,其特征在于,所存储的服务器处理器可执行指令被配置成使得服务器处理器执行操作以使得按照基于所述资源的获指派优先级确定的顺序向所述移动计算设备传送所述资源包括:按照基于所述清单的顺序向所述移动计算设备推送所述资源。
47.如权利要求46所述的非瞬态服务器可读存储介质,其特征在于,所存储的服务器处理器可执行指令被配置成使得服务器处理器执行进一步包括以下操作的操作:将资源转码成所述移动计算设备的期望格式。
48.一种系统,包括:
服务器;以及
多个移动计算设备;
其中所述多个移动计算设备中的每一个移动计算设备包括:
存储器;以及
处理器,所述处理器耦合至所述存储器且配置有处理器可执行指令以执行操作,所述操作包括:
生成与处理所述网页相关的元信息;
向所述服务器传送所生成的元信息并标识处理所述网页中使用的用户代理,
其中所述服务器包括:
存储器;以及
服务器处理器,所述服务器处理器耦合至所述存储器且配置有服务器可执行指令以执行操作,所述操作包括:
从所述多个移动计算设备接收基于使用各种用户代理加载网页的元信息;以及
基于从所述多个移动计算设备接收到的所述元信息生成清单,所述清单配置成提供用于向使用用户代理加载所述网页所需的资源指派优先级的信息,以及
其中每一个移动计算设备的所述处理器配置有处理器可执行指令以执行操作,所述操作进一步包括:
按照基于所述清单中的信息确定的顺序接收用于使用所述用户代理加载所述网页的资源;以及
渲染所述网页。
49.如权利要求48所述的系统,其特征在于,每一个移动计算设备的所述处理器配置有处理器可执行指令以执行进一步包括以下操作的操作:向所述服务器传送在渲染所述网页期间生成的元信息。
50.如权利要求48所述的系统,其特征在于,每一个移动计算设备的所述处理器配置有处理器可执行指令以执行进一步包括以下操作的操作:
向所述服务器传送标识所述网页和在该移动计算设备上实现的所述用户代理的信息;
从所述服务器接收所述清单;
通过将所述清单与该移动计算设备上存储的信息进行比较来标识在所述移动计算设备上使用所述用户代理加载所述网页所需的资源;以及
基于所述清单向该移动计算设备中标识出的资源指派优先级,以及
其中每一个移动计算设备的所述处理器被配置有处理器可执行指令以使得按照基于所述清单中的信息确定的顺序来接收用于使用所述用户代理加载所述网页的资源包括:
按照基于由该移动计算设备指派的优先级的顺序请求用于使用所述用户代理加载所述网页的资源;以及
接收所述资源,以及
其中所述服务器配置有服务器处理器可执行指令以执行操作,所述操作进一步包括:
接收标识所述网页以及在所述多个移动计算设备中的一个移动计算设备上实现的所述用户代理的所述信息;
获得关于所述网页以及在所述多个移动计算设备中的这一个移动计算设备上实现的所述用户代理的所述清单;以及
将所获得的清单传送给所述多个移动计算设备中的这一个移动计算设备。
51.如权利要求50所述的系统,其特征在于,每一个移动计算设备的所述处理器被配置有处理器可执行指令以使得按照基于由所述移动计算设备指派的优先级的顺序请求用于使用所述用户代理加载所述网页的资源包括:按照由所述移动计算设备处理器基于所述清单确定的顺序向第二服务器请求所述资源的下载。
52.如权利要求48所述的系统,其特征在于,
每一个移动计算设备的所述处理器配置有处理器可执行指令以执行进一步包括以下操作的操作:向所述服务器传送与所述移动计算设备相关的信息,以及
每一个移动计算设备的所述处理器配置有处理器可执行指令以使得按照基于所述清单中的信息确定的顺序接收用于使用所述用户代理加载所述网页的资源包括:
按照基于由所述服务器传送的优先级和恰适的对象格式的顺序来请求用于使用所述用户代理加载所述网页的资源;以及
接收所述资源,以及
所述服务器配置有服务器处理器可执行指令以执行操作,所述操作进一步包括:
接收与所述多个移动计算设备中的一个移动计算设备相关的所述信息;
获得关于所述网页以及在所述多个移动计算设备中的这一个移动计算设备上实现的所述用户代理的所述清单;
将所获得的清单和与所述多个移动计算设备中的这一个移动计算设备相关的所述信息进行比较;
标识用于在所述多个移动计算设备中的这一个移动计算设备上使用所述用户代理加载所述网页所需的资源的优先级和恰适的对象格式;以及
向所述多个移动计算设备中的这一个移动计算设备传送所标识出的在所述多个移动计算设备中的这一个移动计算设备上使用所述用户代理加载所述网页所需的资源的优先级和恰适的对象格式。
53.如权利要求52所述的系统,其特征在于,所述服务器配置有服务器处理器可执行指令以使得向所述多个移动计算设备中的这一个移动计算设备传送所标识出的在所述多个移动计算设备中的这一个移动计算设备上使用所述用户代理加载所述网页所需的资源的优先级和恰适的对象格式包括:按照由所述服务器基于所述清单确定的顺序向所述多个移动计算设备中的这一个移动计算设备推送所述资源。
54.如权利要求53所述的服务器,其特征在于,所述服务器配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:将资源转码成所述多个移动计算设备中的这一个移动计算设备的期望格式。
55.一种系统,包括:
服务器;以及
移动计算设备,
其中所述服务器包括:
存储器;以及
服务器处理器,所述服务器处理器耦合至所述存储器且配置有服务器可执行指令以执行操作,所述操作包括:
生成与使用各种类型的用户代理处理网页相关的元信息;以及
基于所生成的元信息来生成清单,所述清单配置成提供用于向使用用户代理加载所述网页所需的资源指派优先级的信息,以及
其中所述移动计算设备包括:
存储器;以及
设备处理器,所述设备处理器耦合至所述存储器且配置有处理器可执行指令以执行操作,所述操作包括:
按照基于所述清单中的信息确定的顺序接收用于使用所述用户代理加载所述网页的资源;以及
渲染所述网页。
56.如权利要求55所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以执行进一步包括以下操作的操作:向所述服务器传送在渲染所述网页期间生成的元信息。
57.如权利要求55所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以执行进一步包括以下操作的操作:
向所述服务器传送标识所述网页和在所述移动计算设备上实现的所述用户代理的信息;
从所述服务器接收所述清单;
通过将所述清单与所述移动计算设备上存储的信息进行比较来标识在所述移动计算设备上使用所述用户代理加载所述网页所需的资源;以及
基于所述清单向所述移动计算设备中标识出的资源指派优先级,以及
其中所述设备处理器被配置有处理器可执行指令以使得按照基于所述清单中的信息确定的顺序来接收用于使用所述用户代理加载所述网页的资源包括:
按照基于由所述移动计算设备指派的优先级的顺序请求用于使用所述用户代理加载所述网页的资源;以及
接收所述资源,以及其中所述服务器处理器配置有服务器处理器可执行指令以执行操作,所述操作进一步包括:
接收标识所述网页和在所述移动计算设备上实现的所述用户代理的所述信息;
获得关于所述网页和在所述移动计算设备上实现的所述用户代理的所述清单;以及
将所获得的清单传送给所述移动计算设备。
58.如权利要求57所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以使得按照基于由所述移动计算设备指派的优先级的顺序请求用于使用所述用户代理加载所述网页的资源包括:按照由所述移动计算设备基于所述清单确定的顺序向第二服务器请求所述资源的下载。
59.如权利要求55所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以执行进一步包括以下操作的操作:向所述服务器传送与所述移动计算设备相关的信息,以及
其中所述设备处理器被配置有处理器可执行指令以使得按照基于所述清单中的信息确定的顺序来接收用于使用所述用户代理加载所述网页的资源包括:
按照基于由所述服务器传送的优先级和恰适的对象格式的顺序请求用于使用所述用户代理加载所述网页的资源;以及
接收所述资源,以及其中所述服务器处理器配置有服务器处理器可执行指令以执行操作,所述操作进一步包括:
接收与所述移动计算设备相关的所述信息;
获得关于所述网页和在所述移动计算设备上实现的所述用户代理的所述清单;
将所获得的清单和与所述移动计算设备相关的信息进行比较;
标识在所述移动计算设备上使用所述用户代理加载所述网页所需的资源的优先级和恰适的对象格式;以及
向所述移动计算设备传送所标识出的在所述移动计算设备上使用所述用户代理加载所述网页所需的资源的优先级和恰适的对象格式。
60.如权利要求59所述的系统,其特征在于,所述服务器配置有服务器处理器可执行指令以使得向所述移动计算设备传送所标识出的在所述移动计算设备上使用所述用户代理加载所述网页所需的资源的优先级和恰适的对象格式包括:按照由所述服务器基于所述清单确定的顺序来向所述移动计算设备推送所述资源。
61.如权利要求60所述的系统,其特征在于,所述服务器处理器配置有服务器处理器可执行指令以执行进一步包括以下操作的操作:将资源转码成所述移动计算设备的期望格式。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261602777P | 2012-02-24 | 2012-02-24 | |
US61/602,777 | 2012-02-24 | ||
US201261621629P | 2012-04-09 | 2012-04-09 | |
US61/621,629 | 2012-04-09 | ||
US13/468,016 | 2012-05-09 | ||
US13/468,016 US9325806B2 (en) | 2012-02-24 | 2012-05-09 | Cooperative loading of webpages based on shared meta information |
PCT/US2013/026865 WO2013126408A1 (en) | 2012-02-24 | 2013-02-20 | Cooperative loading of webpages based on shared meta information |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104137104A true CN104137104A (zh) | 2014-11-05 |
CN104137104B CN104137104B (zh) | 2018-01-23 |
Family
ID=49004458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380010691.7A Expired - Fee Related CN104137104B (zh) | 2012-02-24 | 2013-02-20 | 基于共享元信息的网页的协作式加载 |
Country Status (6)
Country | Link |
---|---|
US (2) | US9325806B2 (zh) |
EP (1) | EP2817742A1 (zh) |
JP (1) | JP6109202B2 (zh) |
KR (1) | KR101711528B1 (zh) |
CN (1) | CN104137104B (zh) |
WO (1) | WO2013126408A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105760396A (zh) * | 2014-12-17 | 2016-07-13 | 广州市动景计算机科技有限公司 | 一种网页加载方法及装置 |
CN107408189A (zh) * | 2016-02-01 | 2017-11-28 | 谷歌公司 | 针对干扰在信息资源上渲染内容元素的未授权脚本部署对策的系统和方法 |
CN108287839A (zh) * | 2017-01-09 | 2018-07-17 | 阿里巴巴集团控股有限公司 | 一种页面加载方法和设备 |
CN108763297A (zh) * | 2018-04-18 | 2018-11-06 | Oppo广东移动通信有限公司 | 网页资源处理方法、装置以及移动终端 |
CN108780446A (zh) * | 2015-10-28 | 2018-11-09 | 维尔塞特公司 | 时间依赖的机器生成的提示 |
CN110574352A (zh) * | 2017-03-29 | 2019-12-13 | 亚马逊技术有限公司 | 通过存储设备迁移信息 |
CN115776598A (zh) * | 2022-11-15 | 2023-03-10 | 聚好看科技股份有限公司 | 服务器、显示设备及视频播放组件的加载方法 |
Families Citing this family (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10834590B2 (en) | 2010-11-29 | 2020-11-10 | Biocatch Ltd. | Method, device, and system of differentiating between a cyber-attacker and a legitimate user |
US10069837B2 (en) * | 2015-07-09 | 2018-09-04 | Biocatch Ltd. | Detection of proxy server |
US10897482B2 (en) * | 2010-11-29 | 2021-01-19 | Biocatch Ltd. | Method, device, and system of back-coloring, forward-coloring, and fraud detection |
US11210674B2 (en) | 2010-11-29 | 2021-12-28 | Biocatch Ltd. | Method, device, and system of detecting mule accounts and accounts used for money laundering |
US20190158535A1 (en) * | 2017-11-21 | 2019-05-23 | Biocatch Ltd. | Device, System, and Method of Detecting Vishing Attacks |
US10917431B2 (en) | 2010-11-29 | 2021-02-09 | Biocatch Ltd. | System, method, and device of authenticating a user based on selfie image or selfie video |
US9912718B1 (en) | 2011-04-11 | 2018-03-06 | Viasat, Inc. | Progressive prefetching |
US11983233B2 (en) | 2011-04-11 | 2024-05-14 | Viasat, Inc. | Browser based feedback for optimized web browsing |
US9146909B2 (en) * | 2011-07-27 | 2015-09-29 | Qualcomm Incorporated | Web browsing enhanced by cloud computing |
KR101844512B1 (ko) * | 2011-11-18 | 2018-05-21 | 삼성전자주식회사 | 어플리케이션 이용 방법, 그를 이용한 게이트웨이, 그를 이용한 단말기, 및 그를 이용한 통신 시스템 |
US9325806B2 (en) | 2012-02-24 | 2016-04-26 | Qualcomm Incorporated | Cooperative loading of webpages based on shared meta information |
US9747386B1 (en) * | 2012-08-10 | 2017-08-29 | Amazon Technologies, Inc. | User-perceived performance through browser hints |
US8656265B1 (en) * | 2012-09-11 | 2014-02-18 | Google Inc. | Low-latency transition into embedded web view |
CN104769571B (zh) | 2012-10-08 | 2018-02-13 | P·孙雄 | 分布式存储系统和方法 |
CN104662547A (zh) * | 2012-10-19 | 2015-05-27 | 迈克菲股份有限公司 | 移动应用管理 |
US8793573B2 (en) * | 2012-10-29 | 2014-07-29 | Dropbox, Inc. | Continuous content item view enhanced through smart loading |
US20140143648A1 (en) * | 2012-11-16 | 2014-05-22 | Vladimir Kolesnikov | Bolt Shadow Workers |
US10296562B2 (en) * | 2013-02-12 | 2019-05-21 | Oath Inc. | Dynamic generation of mobile web experience |
US9516092B2 (en) * | 2013-03-13 | 2016-12-06 | Google Inc. | Precompiling locally-stored instructions for a web application |
US9363329B1 (en) | 2013-03-15 | 2016-06-07 | Instart Logic, Inc. | Identifying correlated components of dynamic content |
US9298455B1 (en) | 2013-03-15 | 2016-03-29 | Instart Logic, Inc. | Provisional execution of dynamic content component |
US20140337254A1 (en) * | 2013-05-07 | 2014-11-13 | International Business Machines Corporation | Recommending actions for social media engagements |
US10803232B2 (en) | 2013-06-06 | 2020-10-13 | International Business Machines Corporation | Optimizing loading of web page based on aggregated user preferences for web page elements of web page |
US20140380480A1 (en) * | 2013-06-25 | 2014-12-25 | Tencent Technology (Shenzhen) Company Limited | Method, device and system for identifying harmful websites |
JP2015052821A (ja) * | 2013-09-05 | 2015-03-19 | 株式会社東芝 | 通信装置および通信方法 |
US9785452B2 (en) * | 2013-10-09 | 2017-10-10 | Cisco Technology, Inc. | Framework for dependency management and automatic file load in a network environment |
US8924850B1 (en) * | 2013-11-21 | 2014-12-30 | Google Inc. | Speeding up document loading |
US10009439B1 (en) * | 2013-12-05 | 2018-06-26 | Instart Logic, Inc. | Cache preloading |
EP3084589B1 (en) * | 2013-12-20 | 2018-07-25 | Intel Corporation | Crowd sourced online application cache management |
KR102170520B1 (ko) * | 2014-03-06 | 2020-10-27 | 삼성전자주식회사 | 로딩 타임을 개선하는 전자 장치 및 방법 |
US10021207B1 (en) * | 2014-03-21 | 2018-07-10 | Amazon Technologies, Inc. | Architecture for proactively providing bundled content items to client devices |
KR20150128283A (ko) * | 2014-05-09 | 2015-11-18 | 한국전자통신연구원 | 고해상도 콘텐츠에서 공유영역을 활용하여 관심영역을 제공하는 다자간 콘텐츠 서비스 방법 및 시스템 |
US10855797B2 (en) | 2014-06-03 | 2020-12-01 | Viasat, Inc. | Server-machine-driven hint generation for improved web page loading using client-machine-driven feedback |
US9992263B2 (en) * | 2014-10-10 | 2018-06-05 | Pulse Secure, Llc | Predictive prioritized server push of resources |
US10536555B2 (en) * | 2014-12-29 | 2020-01-14 | Telefonaktoebolaget Lm Ericsson (Publ) | Technique for enhancing rendering of displayable content |
US10349452B2 (en) | 2014-12-30 | 2019-07-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for providing quality enhancements to an application residing on a user terminal |
US9813480B2 (en) | 2015-01-08 | 2017-11-07 | Instart Logic, Inc. | Placeholders for dynamic components in HTML streaming |
JP6482330B2 (ja) * | 2015-03-09 | 2019-03-13 | キヤノン株式会社 | 通信装置、通信方法、及びプログラム |
US10057314B2 (en) | 2015-04-17 | 2018-08-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic packager network based ABR media distribution and delivery |
US10033656B2 (en) * | 2015-05-21 | 2018-07-24 | Sap Portals Israel Ltd | Critical rendering path optimization |
US10789654B1 (en) * | 2015-07-27 | 2020-09-29 | Intuit Inc. | Web browsing systems for acquiring tax data during electronic tax return preparation |
US11843679B2 (en) * | 2015-07-27 | 2023-12-12 | Wp Company Llc | Automated dependency management based on page components |
US10417317B2 (en) * | 2015-07-27 | 2019-09-17 | Adp, Llc | Web page profiler |
US10084884B2 (en) | 2015-07-31 | 2018-09-25 | At&T Intellectual Property I, L.P. | Facilitation of efficient web site page loading |
CA2998320C (en) * | 2015-09-14 | 2023-01-03 | Viasat, Inc. | Machine-driven crowd-disambiguation of data resources |
US10613713B2 (en) * | 2015-10-07 | 2020-04-07 | Google Llc | Integration of content in non-browser applications |
CN106598966B (zh) * | 2015-10-14 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 一种网页处理方法和装置 |
MX2018004856A (es) * | 2015-10-20 | 2018-11-09 | Viasat Inc | Actualizacion de modelo de optimizacion por medio de agrupamientos de navegacion automatica. |
US9923993B2 (en) * | 2015-11-02 | 2018-03-20 | Rockwell Automation Technologies, Inc. | Self-describing diagnostic data for presentation on mobile devices |
CN108886533B (zh) | 2015-12-04 | 2021-05-18 | 维尔塞特公司 | 加速与主机服务器的连接 |
US10868881B1 (en) | 2015-12-30 | 2020-12-15 | Mingtai Chang | Loading web resources using remote resource pushing |
CN108476244A (zh) * | 2016-01-13 | 2018-08-31 | 三星电子株式会社 | 通过利用网络延迟来缩短页面加载时间的方法和系统 |
US10116497B2 (en) * | 2016-05-20 | 2018-10-30 | Moneygram International, Inc. | Systems and methods for providing split control of multiple execution environments |
GB2552032B (en) | 2016-07-08 | 2019-05-22 | Aimbrain Solutions Ltd | Step-up authentication |
US20180052809A1 (en) | 2016-08-16 | 2018-02-22 | Microsoft Technology Licensing, Llc | Inferring user interaction with an iframe |
KR20180081231A (ko) * | 2017-01-06 | 2018-07-16 | 삼성전자주식회사 | 데이터를 공유하기 위한 방법 및 그 전자 장치 |
US10785116B1 (en) * | 2017-01-12 | 2020-09-22 | Electronic Arts Inc. | Computer architecture for asset management and delivery |
US20180336613A1 (en) * | 2017-05-17 | 2018-11-22 | Mz Ip Holdings, Llc | System and method for managing limit orders |
US11816622B2 (en) | 2017-08-14 | 2023-11-14 | ScoutZinc, LLC | System and method for rating of personnel using crowdsourcing in combination with weighted evaluator ratings |
US10684847B2 (en) * | 2017-11-27 | 2020-06-16 | Salesforce.Com, Inc. | Content deployment system having a proxy for continuously providing selected content items to a content publishing engine for integration into a specific release and methods for implementing the same |
CN108108400B (zh) * | 2017-12-05 | 2020-12-11 | 厦门哨子科技有限公司 | 一种api基于本地数据增量的方法 |
EP3750288A4 (en) * | 2018-06-07 | 2021-09-15 | Hewlett-Packard Development Company, L.P. | LOCAL SERVERS FOR THE MANAGEMENT OF AN INTERMITTENT NETWORK |
CN109343862B (zh) * | 2018-08-31 | 2022-05-06 | 北京三快在线科技有限公司 | 应用的资源数据的调度方法及装置 |
CN109558138A (zh) * | 2018-11-20 | 2019-04-02 | 北京小米移动软件有限公司 | 后代选择器处理方法及装置 |
US10666528B1 (en) | 2018-11-28 | 2020-05-26 | Sap Portals Israel Ltd. | Decoupling platform as a service providers using a service management platform |
US11188450B2 (en) * | 2020-04-02 | 2021-11-30 | Sap Se | Cloud application architecture using edge computing |
CN111949330B (zh) * | 2020-08-11 | 2022-06-24 | 深圳市前海手绘科技文化有限公司 | 一种手绘草稿加载方法 |
KR102533070B1 (ko) | 2020-12-16 | 2023-05-15 | 고려대학교 산학협력단 | 웹 리소스 의존성 기반 리소스 우선순위화 방법, 이를 수행하기 위한 기록 매체 및 장치 |
CN112800362B (zh) * | 2021-02-04 | 2024-05-17 | 百果园技术(新加坡)有限公司 | 一种界面视图延时加载方法及装置 |
US20230007067A1 (en) * | 2021-06-30 | 2023-01-05 | Tencent America LLC | Bidirectional presentation datastream |
US11606353B2 (en) | 2021-07-22 | 2023-03-14 | Biocatch Ltd. | System, device, and method of generating and utilizing one-time passwords |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030187806A1 (en) * | 2002-03-28 | 2003-10-02 | International Business Machines Corporation | Calculating and displaying the cost of downloading web content |
CN101930459A (zh) * | 2010-08-19 | 2010-12-29 | 百度在线网络技术(北京)有限公司 | 一种辅助用户设备实现网页的块状浏览的方法和网络设备 |
CN102314486A (zh) * | 2011-08-04 | 2012-01-11 | 百度在线网络技术(北京)有限公司 | 一种用于页面浏览的方法与设备 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5826031A (en) * | 1996-06-10 | 1998-10-20 | Sun Microsystems, Inc. | Method and system for prioritized downloading of embedded web objects |
JP3534027B2 (ja) * | 1999-12-01 | 2004-06-07 | 日本電気株式会社 | コンテンツ提供装置及びプログラムを記録した機械読み取り可能な記録媒体 |
US6549896B1 (en) * | 2000-04-07 | 2003-04-15 | Nec Usa, Inc. | System and method employing random walks for mining web page associations and usage to optimize user-oriented web page refresh and pre-fetch scheduling |
US7747782B2 (en) * | 2000-04-26 | 2010-06-29 | Novarra, Inc. | System and method for providing and displaying information content |
US7000008B2 (en) * | 2001-04-16 | 2006-02-14 | Sun Microsystems, Inc. | Method, system, and program for providing data updates to a page including multiple regions of dynamic content |
JP3933452B2 (ja) * | 2001-11-27 | 2007-06-20 | シャープ株式会社 | 情報の入手を支援する支援方法および支援サーバ |
US7487185B2 (en) * | 2003-02-24 | 2009-02-03 | Microsoft Corporation | Technique for changing views of web content |
US8281037B2 (en) * | 2005-01-03 | 2012-10-02 | Orb Networks, Inc. | System and method for delivering content to users on a network |
US8073866B2 (en) | 2005-03-17 | 2011-12-06 | Claria Innovations, Llc | Method for providing content to an internet user based on the user's demonstrated content preferences |
US7694008B2 (en) * | 2005-05-04 | 2010-04-06 | Venturi Wireless | Method and apparatus for increasing performance of HTTP over long-latency links |
US20060294223A1 (en) * | 2005-06-24 | 2006-12-28 | Microsoft Corporation | Pre-fetching and DNS resolution of hyperlinked content |
US20080222273A1 (en) * | 2007-03-07 | 2008-09-11 | Microsoft Corporation | Adaptive rendering of web pages on mobile devices using imaging technology |
US8150869B2 (en) * | 2008-03-17 | 2012-04-03 | Microsoft Corporation | Combined web browsing and searching |
US20090249188A1 (en) | 2008-03-27 | 2009-10-01 | International Business Machines Corporation | Method for adaptive transcription of web pages |
JP5022301B2 (ja) * | 2008-05-19 | 2012-09-12 | 株式会社エヌ・ティ・ティ・ドコモ | プロキシサーバおよび通信中継プログラム、並びに通信中継方法 |
KR101496327B1 (ko) | 2008-07-25 | 2015-02-26 | 삼성전자주식회사 | 어플리케이션 실행 방법 및 장치 |
US9213780B2 (en) * | 2009-06-26 | 2015-12-15 | Microsoft Technology Licensing Llc | Cache and index refreshing strategies for variably dynamic items and accesses |
US9037674B2 (en) * | 2009-09-22 | 2015-05-19 | Thwapr, Inc. | Hybrid transcoding for mobile media sharing |
JP2012032943A (ja) | 2010-07-29 | 2012-02-16 | Fujifilm Corp | ウェブサイト閲覧システム、サーバ、サーバ用プログラム及びウェブサイト閲覧支援方法 |
US20120144288A1 (en) * | 2010-12-02 | 2012-06-07 | International Business Machines Corporation | Web page content display priority and bandwidth management |
US9325806B2 (en) | 2012-02-24 | 2016-04-26 | Qualcomm Incorporated | Cooperative loading of webpages based on shared meta information |
-
2012
- 2012-05-09 US US13/468,016 patent/US9325806B2/en active Active
-
2013
- 2013-02-20 CN CN201380010691.7A patent/CN104137104B/zh not_active Expired - Fee Related
- 2013-02-20 EP EP13710136.6A patent/EP2817742A1/en not_active Withdrawn
- 2013-02-20 WO PCT/US2013/026865 patent/WO2013126408A1/en active Application Filing
- 2013-02-20 KR KR1020147026463A patent/KR101711528B1/ko active IP Right Grant
- 2013-02-20 JP JP2014558797A patent/JP6109202B2/ja not_active Expired - Fee Related
-
2016
- 2016-03-22 US US15/077,827 patent/US9749400B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030187806A1 (en) * | 2002-03-28 | 2003-10-02 | International Business Machines Corporation | Calculating and displaying the cost of downloading web content |
CN101930459A (zh) * | 2010-08-19 | 2010-12-29 | 百度在线网络技术(北京)有限公司 | 一种辅助用户设备实现网页的块状浏览的方法和网络设备 |
CN102314486A (zh) * | 2011-08-04 | 2012-01-11 | 百度在线网络技术(北京)有限公司 | 一种用于页面浏览的方法与设备 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105760396A (zh) * | 2014-12-17 | 2016-07-13 | 广州市动景计算机科技有限公司 | 一种网页加载方法及装置 |
CN105760396B (zh) * | 2014-12-17 | 2019-10-25 | 广州市动景计算机科技有限公司 | 一种网页加载方法及装置 |
CN108780446A (zh) * | 2015-10-28 | 2018-11-09 | 维尔塞特公司 | 时间依赖的机器生成的提示 |
US11443099B2 (en) | 2015-10-28 | 2022-09-13 | Viasat, Inc. | Time-dependent machine-generated hinting |
CN108780446B (zh) * | 2015-10-28 | 2022-08-19 | 维尔塞特公司 | 时间依赖的机器生成的提示 |
CN107408189A (zh) * | 2016-02-01 | 2017-11-28 | 谷歌公司 | 针对干扰在信息资源上渲染内容元素的未授权脚本部署对策的系统和方法 |
US11907360B2 (en) | 2016-02-01 | 2024-02-20 | Google Llc | Systems and methods for deploying countermeasures against unauthorized scripts interfering with the rendering of content elements on information resources |
CN107408189B (zh) * | 2016-02-01 | 2024-02-02 | 谷歌有限责任公司 | 针对干扰在信息资源上渲染内容元素的未授权脚本部署对策的系统和方法 |
CN108287839B (zh) * | 2017-01-09 | 2022-01-28 | 阿里巴巴集团控股有限公司 | 一种页面加载方法和设备 |
CN108287839A (zh) * | 2017-01-09 | 2018-07-17 | 阿里巴巴集团控股有限公司 | 一种页面加载方法和设备 |
CN110574352A (zh) * | 2017-03-29 | 2019-12-13 | 亚马逊技术有限公司 | 通过存储设备迁移信息 |
CN110574352B (zh) * | 2017-03-29 | 2022-09-20 | 亚马逊技术有限公司 | 通过存储设备迁移信息 |
CN108763297B (zh) * | 2018-04-18 | 2021-08-17 | Oppo广东移动通信有限公司 | 网页资源处理方法、装置以及移动终端 |
CN108763297A (zh) * | 2018-04-18 | 2018-11-06 | Oppo广东移动通信有限公司 | 网页资源处理方法、装置以及移动终端 |
CN115776598A (zh) * | 2022-11-15 | 2023-03-10 | 聚好看科技股份有限公司 | 服务器、显示设备及视频播放组件的加载方法 |
CN115776598B (zh) * | 2022-11-15 | 2024-05-03 | 聚好看科技股份有限公司 | 服务器、显示设备及视频播放组件的加载方法 |
Also Published As
Publication number | Publication date |
---|---|
US20160205177A1 (en) | 2016-07-14 |
JP6109202B2 (ja) | 2017-04-05 |
WO2013126408A1 (en) | 2013-08-29 |
EP2817742A1 (en) | 2014-12-31 |
JP2015513144A (ja) | 2015-04-30 |
US9325806B2 (en) | 2016-04-26 |
US9749400B2 (en) | 2017-08-29 |
CN104137104B (zh) | 2018-01-23 |
KR20140128446A (ko) | 2014-11-05 |
KR101711528B1 (ko) | 2017-03-13 |
US20130226992A1 (en) | 2013-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104137104A (zh) | 基于共享元信息的网页的协作式加载 | |
US11196829B2 (en) | Method and apparatus for pushing target information | |
US10063618B2 (en) | Remote browsing session management | |
KR101652676B1 (ko) | 브로드캐스트 네트워크에서 수신기 디바이스로의 소셜 네트워크 업데이트들의 전력 효율적인 전달을 위한 시스템 및 장치 | |
CN102812452B (zh) | 用于显示缓存网页的系统、服务器、终端、方法、以及记录该方法的计算机可读记录介质 | |
US10242100B2 (en) | Managing cached data in a network environment | |
US9027100B2 (en) | Client-side ad caching for lower ad serving latency | |
US8825749B2 (en) | Method of tracking offline user interaction in a rendered document on a mobile device | |
CN107251525A (zh) | 用于支持移动设备用户的预测内容预取服务的分布式服务器架构 | |
CN107251524A (zh) | 管理预测预取内容的移动设备用户订购和服务偏好 | |
US20110066488A1 (en) | Mobile ad routing | |
US10599742B2 (en) | Sharing and consuming web content across multiple devices | |
Johnson et al. | Desktop and mobile web page comparison: characteristics, trends, and implications | |
US10057320B2 (en) | Offline browsing session management | |
CN108881353B (zh) | 一种内容推送方法、装置及计算机可读存储介质 | |
CN103714172A (zh) | 页面处理方法、装置及系统 | |
CN104025084A (zh) | 历史浏览会话管理 | |
US9942345B2 (en) | Web server caching for performance improvement | |
US9565224B1 (en) | Methods, systems, and media for presenting a customized user interface based on user actions | |
CN105407076A (zh) | 一种媒体桥实现方法及系统 | |
CN104809017A (zh) | 应用程序分发控制、执行方法及其相应装置 | |
US10693991B1 (en) | Remote browsing session management | |
US20140082132A1 (en) | Targeted http redirects | |
US9497251B2 (en) | Serving of web pages according to web site launch times | |
Zhang et al. | Intelligent delivery of interactive advertisement content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180123 Termination date: 20190220 |
|
CF01 | Termination of patent right due to non-payment of annual fee |