CN101273604B - 用于多媒体对象的渐进式传送的系统和方法 - Google Patents
用于多媒体对象的渐进式传送的系统和方法 Download PDFInfo
- Publication number
- CN101273604B CN101273604B CN2006800355407A CN200680035540A CN101273604B CN 101273604 B CN101273604 B CN 101273604B CN 2006800355407 A CN2006800355407 A CN 2006800355407A CN 200680035540 A CN200680035540 A CN 200680035540A CN 101273604 B CN101273604 B CN 101273604B
- Authority
- CN
- China
- Prior art keywords
- image
- predetermined portions
- image object
- server
- objects
- 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.)
- Active
Links
Images
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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Abstract
本公开涉及用于通过网络渐进地传送多媒体内容的方法和系统。根据一个方面,一种用于通过网络传送多媒体内容的系统,包括服务器侧子系统和客户端侧子系统。该服务器侧子系统被配置用于:通过网络同时发送多个对象的每个对象的第一预定部分,其中该第一预定部分小于该多个对象的至少一个的完整对象;以及在发送了该多个对象的每个对象的第一预定部分之后,连续地发送该多个对象的每个对象的后续预定部分,直到已经发送了该多个对象的所有部分为止。客户端侧子系统被配置用于:通过网络接收该多个对象的每个对象的第一预定部分;以及在接收到该多个对象的每个对象的第一预定部分之后,连续接收该多个对象的每个对象的后续预定部分,直到已经接收了该多个对象的每个对象的所有部分为止。
Description
优先权声明
本申请要求2005年9月27日递交的美国临时申请No.60/720,487的优先权,将其全部内容通过引用合并于此。
技术领域
本申请涉及通过网络传送多媒体内容,更具体地涉及用于多媒体内容的渐进式传送的方法和系统。
背景技术
诸如web访问之类的网络通信使世界各地的上百万用户能够下载包括网页的多媒体内容,该网页包含文本、图像、视频、声音数据以及程序。
然而,随着网页数目和网页大小的持续增长,多媒体内容的快速且有效的传送正日益变成一项困难的任务。此外,具有较低带宽的国际连接也可以导致较慢的内容传送,尤其是在诸如拨号上网或蜂窝无线网络之类的信道上,这可能给用户带来困难。已经努力加速web访问和/或提供加速的感觉,以改进终端用户的满意度。例如,一些与web加速或用户满意度改进相关的传统方法包括以下方法:
一种传统方法建议通过显示某些高速缓存信息而在感觉上减少等待时间的方式,来增强web浏览器的操作。具体地,当用户点击链接时,浏览器激活该链接,以请求将超文本文档从远程服务器下载到浏览器。在用户等待应答和/或在下载超文本文档时,浏览器显示先前高速缓存的信息,例如广告、消息、填空表格、来自服务提供商或某个第三方的通知。这种方法具有以下缺点:在开始下载页面时,高速缓存中可能没有信息或只有很少的信息。此外,因为该信息不一定与所请求的网页有关,所以用户可能对该信息不感兴趣。
另一已知系统包括一种用于通过基于用户内容偏好对内容流中的内容进行分类并重新排序来改进web内容的传送的系统。由于web内容设计者通常根据逻辑显示顺序而非实际传送顺序,来给内容分量排序,因此基于用户内容偏好和请求计算机的已知能力对内容流中的分量进行分类并重新排序,可以在一定程度上改进内容传送。例如,不准备播放音频内容的请求计算机的用户可以从内容请求中滤除音频内容。在这种情况下,为了提供更快的速度,可以移除网页中的一部分,然而这意味着用户错过了网页上的一部分信息。
另一已知系统描述了一种位于计算机网络上的web服务器与远程客户端之间的加速设备。该加速设备典型地通过从网页源数据中滤除至少一部分非可呈现数据(例如评论、空白处、硬返回、元标记)、和/或通过创建图像数据的较小版本(例如,压缩和/或较低的分辨率)并将该较小版本发送给远程客户端,来加速web资源传输。这种方法基本上涉及压缩用于管理网页上的信息结构的全部HTML数据。
在传送诸如图像之类的多媒体内容对象时,即使经过压缩,对象的大小也可能耗费掉大量带宽。将多媒体内容压缩为较小版本也具有限制。如果压缩比较高,则重构的图像可能具有终端用户无法接受的质量。同样地,给已压缩的对象文件增加另外的压缩也会影响质量。另一方面,具有可接受质量的图像可能比较大,并且可能要花很长时间去下载。因为通常在解码和显示之前将完整的图像传送给客户端,所以用户可能必须在观看图像之前等待较长的时间。
此外,可能无法根据内容偏好滤除某些对象,例如图像。例如,如果仅存储针对图像可用的受限信息,则很难进行过滤以允许只加载用户想看的那些图像。
因此,需要改进多媒体内容在网络上的传送。具体地,需要改进多媒体内容(包括图像)的传送速度或察觉到的传送速度。还需要一种用于允许用户选择性地观看通过网络接收到的多媒体内容的方法。
发明内容
根据第一方面,提供了一种用于在网络中的客户端-服务器系统中发送多媒体内容的方法,其中该多媒体内容包括多个对象,该方法包括:通过网络从服务器同时发送多个对象的每个对象的第一预定部分,其中该第一预定部分小于该多个对象的至少一个的完整对象;以及在发送了该多个对象的每个对象的第一预定部分之后,连续地发送该多个对象的每个对象的后续预定部分,直到已经发送了该多个对象的所有部分为止。
在特定情况下,该方法还可包括接收与对象的发送相关的信息,并且第一预定部分和后续预定部分的发送基于该接收的信息。在这种情况下,该与对象的发送相关的信息可以包括与将要提前、延迟或防止其发送的对象相关的信息、或者与发送对象的顺序相关的信息等。
在另一特定情况下,只有在接收到针对后续预定部分的请求之后,才可以执行对后续预定部分的发送。
在又一特定情况下,该方法还包括:在发送之前,确定该多个对象的任意一个是否适合于被分割成多个预定部分;以及在发送之前,将该多个对象的每个适合的对象分割成多个预定部分。此外,该方法还可以包括:在发送之前,对不适合于被分割的多个对象中的至少一个对象进行压缩。
在又一特定情况下,该方法还包括:在接收到针对后续预定部分的请求之前,保持该后续预定部分。
在又一特定情况下,该多个对象中的至少一个对象可以包括该多个对象中的两个或更多个对象。
在另一特定情况下,该网络可以是无线网络,该服务器可以是web服务器。此外,可以使用超文本传输协议连接来处理第一预定部分的发送,并在超文本传输协议连接关闭之后,使用另一预定协议连接来处理后续预定部分的发送。
根据另一方面,提供了一种用于在网络中的客户端-服务器系统中接收多媒体内容的方法,其中该多媒体内容包括多个对象,该方法包括:通过网络在客户端处接收该多个对象的每个对象的预定部分,其中该预定部分小于针对该多个对象的至少一个的完整对象;以及在接收到该多个对象的每个对象的第一预定部分之后,连续接收该多个对象的每个对象的后续预定部分,直到已经接收了该多个对象的所有部分为止。
在特定情况下,该方法还包括:在接收之前,发送针对多媒体内容的请求,其中该请求包括与对象的发送相关的信息。在该特定情况下,与对象的发送相关的信息可以包括与将要提前、延迟或防止其发送的对象相关的信息、或者与发送对象的顺序相关的信息等。
在另一特定情况下,后续预定部分的接收可以仅在发送了针对后续预定部分的请求之后发生。
在又一特定情况下,该多个对象中的至少一个对象可以包括该多个对象中的两个或多个。
在又一特定情况下,该网络可以是无线网络,该客户端可以是移动设备。此外,可以使用超文本传输协议连接来处理第一预定部分的接收,并在超文本传输协议连接结束之后,使用另一预定协议连接来处理后续预定部分的接收。
在又一特定情况下,该方法还包括:在接收之前,确定该多媒体内容是否可用于高速缓存;以及在该多个对象中的至少一个对象的每个对象的第一预定部分可用于高速缓存、但是该多个对象的至少一个对象的每个对象的后续预定部分不可用于高速缓存的情况下,发送针对后续预定部分的请求,而不接收第一预定部分。
对于上述方面,应理解,上述方法可以由软件来执行,该软件可以存储在计算机可读介质上,用于由计算设备来执行。
根据另一方面,提供了一种用于通过网络来传送多媒体内容的系统,该系统包括:服务器侧子系统,配置用于:通过网络同时发送多个对象的每个对象的第一预定部分,其中该第一预定部分小于该多个对象的至少一个的完整对象;以及在发送了该多个对象的每个对象的第一预定部分之后,连续地发送该多个对象中的每个对象的后续预定部分,直到已经发送了该多个对象的所有部分为止;以及客户端侧子系统,配置用于:通过网络接收该多个对象的每个对象的第一预定部分;以及在接收到该多个对象的每个对象的第一预定部分之后,连续接收该多个对象的每个对象的后续预定部分,直到已经接收了该多个对象的每个对象的所有部分为止。
在特定情况下,该客户端侧子系统还可以被配置用于:在接收之前,发送针对多媒体内容的请求,其中该请求包括与对象的发送相关的信息,并且服务器侧子系统还可以被配置用于:接收该请求,并根据该请求来发送多媒体内容。在这种情况下,与对象的发送相关的信息可以包括与将要提前、延迟或防止其发送的对象相关的信息、或者与发送对象的顺序相关的信息等。
在另一特定情况下,服务器侧子系统还可以被配置用于:只有在从客户端侧子系统接收到针对后续预定部分的请求之后,才发送后续预定部分,并且客户端侧子系统还可以被配置用于:基于预定因素来发送针对后续预定部分的请求。
在又一特定情况下,该服务器侧子系统还可以被配置用于:在发送之前,确定多个对象中的任意一个是否适合于被分割成多个预定部分;以及在发送之前,将多个对象中的每个适合的对象分割成多个预定部分。此外,该服务器侧子系统还可以被配置用于:在发送之前,对不适合于被分割的多个对象中的至少一个对象进行压缩。
在其它特定情况下,该网络可以是无线网络,该服务器侧子系统可以包括web服务器,该客户端侧子系统可以包括web浏览器,该客户端侧子系统还可以包括移动设备或其它变体。
对于本领域的技术人员而言,通过阅读下面对一些实施例的描述,本发明的其它方面和特征将变得显而易见。
附图说明
为了更好地理解这里所描述的各个实施例,并为了更清楚地说明这些实施例是如何实现的,现在将仅作为示例参考示出至少一个示例性实施例的附图,在附图中:
图1是示出了通过网络传送网页的现有技术方法的示意图;
图2是对用于内容传送的系统的示例性实施例的示意图;
图3是示出了图2的用于内容传送的系统的一部分的示例性实施例的示意图;
图4是示出了图2的用于内容传送的系统的架构和数据流的示例性实施例的示意图;
图5是示出了用于网络中的内容传送的示例性方法的流程图;
图6是可以作为示例性实施例中的客户端的示例性移动设备的方框图;
图7是图6的移动设备的示例性通信子系统组件的方框图;
图8是可以用作示例性实施例中的网络的无线网络的示例性节点的方框图;以及
图9是示出了与图8的无线网络一同使用的示例性主机系统的组件的方框图。
具体实施方式
应理解,为了例证的简单和清楚起见,在认为合适的情况下,可以在附图之中重复使用附图标记来指示相应或相似的元件。此外,为了提供对这里所描述的实施例的全面理解,将陈述大量具体细节。然而,本领域的技术人员将理解,这里所描述的实施例不需要这些特定细节也能够实施。在其它实例中未对公知的方法、过程和组件进行详细描述,以免使这里所描述的实施例含混不清。此外,说明书不应理解为限制这里所描述的实施例的范围。
本申请涉及一种用于多媒体内容的渐进式传送的系统和方法。一般而言,该系统和方法包括:例如在中间服务器处将多媒体重新编码为渐进格式(在适当的情况下);使用渐进式传送机制将渐进式多媒体内容传输到客户端;以及在客户端处渐进地显示接收到的多媒体内容。例如,可以使用web浏览器插件在客户端侧显示多媒体内容。该方法旨在通过以下步骤来改进多媒体内容的传送速度或感觉到的传送速度:快速提供对多媒体内容中的所有对象的显示、然后在观看多媒体内容的同时渐进地改进或添加所有对象。尽管下列描述集中在对图像(尤其是网页上那些JPEG和/或GIF/PNG格式的图像)的渐进式传送,然而这里的教益也可应用于其它多媒体内容,包括一般客户端-服务器环境下的文本、图像、视频、声音数据以及程序。
图1示出了使用传统方法来传送多媒体内容的传统系统和方法。具体地,图1示出了将典型网页105从服务器110加载至客户端上的web浏览器(未示出),并将网页105显示在客户端计算机屏幕上的窗口中。在典型的互联网网页105中,通常存在组成了多媒体内容的多个多媒体对象120,并且多媒体对象120是为了显示网页105而从服务器110加载到客户端的。例如,多媒体对象可以包括文本120a、动画120b、图形120c、120d、表格120e等。当典型地通过超文本传输协议(HTTP)连接从客户端向服务器110发送针对特定网页的请求并由服务器110接收到该请求时,服务器110开始向客户端发送网页105的数据。典型地,按照网页105的创建者所指定的顺序来发送针对每个对象120的数据。同样地,每个对象120按照服务器110中所指定的顺序加载到客户端。服务器110还可以指定是否需要在显示任意对象120之前加载全部的网页105或是在接收到时即显示对象120。在任一情况下,由于必须在显示特定对象120之前加载全部对象120,因此包括图像的较大对象120都会减慢网页105的加载。这可能导致延迟对整个网页105或要显示的剩余对象120的显示。如图1所示,即使已经加载并显示了HTTP连接1、2和3上的对象120a、120b和120c,但是HTTP连接4上的对象120d尚未完全加载,并正在逐渐显示。类似地,如虚线所示,表格120e也尚未完全加载。对象120的延迟显示对于用户而言可能造成困扰,尤其是在包括对象120的情况下,例如倾向于需要在允许用户点击图像映射内的特定区域或项目之前加载整个图像的图像映射等。
图2示出了根据一个示例性实施例的用于传送多媒体内容120的系统。如图2所示,内容服务器205典型地通过高速连接215连接至互联网210。在本示例中,将内容服务器205之一标记为目标内容服务器205a。在这种情况下,内容客户端220通过诸如拨号、无线之类的低带宽连接225也连接至互联网210。内容传送系统200包括渐进式内容传送服务器230,其代表内容客户端220读取多媒体内容,并在适当的情况下将多媒体内容转换为用于渐进式传输和呈现的嵌入式(或渐进式)格式。如下文所述,可能需要通过包括客户端代理服务器(未示出)或浏览器插件(未示出)来修改内容客户端220,以支持多媒体内容的渐进式传输和呈现。
渐进式内容传送协议(PCDP)控制多媒体内容在渐进式内容传送服务器230与内容客户端220之间的渐进式传送。当内容客户端220请求多媒体内容时,其向渐进式内容传送服务器230发送请求。在接收到请求时,渐进式内容传送服务器230从目标内容服务器205a处读取多媒体内容,并且必要的时候将多媒体内容转换为嵌入式的渐进格式。起初,仅将转换后的多媒体内容中的每个对象的预定部分发送回至内容客户端220,以呈现初始版本/部分,例如多媒体内容的较低质量版本。然后,以渐进的方式将其它转换后的多媒体内容数据发送至内容客户端220。当更多的多媒体内容数据到达内容客户端220时,渐进地更新并呈现增强的多媒体内容。渐进式内容传送服务器230对来自目标内容服务器205a的原始多媒体内容进行变换,以适应内容客户端220对于特定类型内容的需要。
在本示例中,由于在只接收到小量数据(即,初始版本/部分)时,内容客户端220能够以例如较低分辨率显示多媒体内容的完整版本,从而增加了感觉到的传送速度。当终端用户在阅读和/或观看所显示的多媒体内容时,所显示的内容随着接收到越来越多的转换后的多媒体内容的嵌入式比特而变得越来越好,直到达到期望分辨率或最大分辨率为止。在终端用户的感觉方面,多媒体内容的传送变得更快。
根据本示例性实施例,可以通过从web服务器向web浏览器同时传送渐进式图像的多个部分,来加速web浏览。例如,在第一步骤中,首先接收到低至特定低质量水平的若干图像(在这种情况下,可以将较低质量的图像看作作为完整质量图像的多媒体对象的一部分)。作为下一步骤,通过接收针对这些图像的附加图像数据,来将这些图像的质量改进至下一选定的质量水平。可以在接收到期望质量水平的所有图像之前重复上述这些步骤。由于终端用户具有能够更快地观看到完整文档的感觉,因此对给定网页/文档中的所有图像的步进式的渐进式传送可能提供增强的用户满意度。这与传统系统形成对比,在传统系统中,浏览器可能需要较长时间来从服务器接收到较大的图像文件,并且在接收到较大图像文件之前无法接收其它图像。这种增强的用户满意度对于web浏览而言是非常重要的,尤其是在底层网络是诸如拨号或无线之类的低带宽网络时。
图3示出了用于通过非渐进式基础设施来传送渐进式图像的系统的示例性实施例。作为示例,可以认为非渐进式基础设施满足一个或多个以下条件:
(1)在内容服务器处可用的图像可能不是采取支持渐进式传送的格式。
(2)内容服务器可能不以渐进式方式传送图像数据。
(3)客户端可能无法以渐进式方式来显示给定图像数据。
(4)可能未设有用于对图像数据的高速缓存的渐进式片段进行处理的客户端高速缓存。
(5)客户端-服务器协议被设计用于响应于来自客户端的请求并且在传送下一个图像之前、以单个或多个片段的形式传送完整的图像文件。
在本示例性实施例中,该系统包括服务器侧代理服务器305、客户端侧代理服务器310以及浏览器插件315。具体地,客户端侧代理服务器310和浏览器插件315驻留在客户端计算机320上,而服务器侧代理服务器305驻留在网络305(在这种情况下为互联网)上。响应于来自客户端web浏览器330的请求,浏览器插件315首先查看所请求的对象是否在浏览器高速缓存(未示出)中可用,如果是,则可以从本地高速缓存检索到对象。否则,将来自客户端web浏览器330的请求转发给客户端侧代理服务器310,然后客户端侧代理服务器310将该请求转发给服务器侧代理服务器305,服务器侧代理服务器305向目标web服务器335请求该对象。
在从目标web服务器335接收到对象之后,服务器侧代理服务器305(如果可用的话)将该对象转换为适当的格式,用于进行渐进式传送。可以将不适合于渐进式传送的任何对象按照一个部分发送至客户端侧代理服务器310。不适合于或不适合进行渐进式传送的对象的示例是数据量低于预定大小的对象。对于能够以渐进式方法传送的对象,服务器侧代理服务器305将每一个这样的对象的第一部分发送给客户端侧代理服务器310,客户端侧代理服务器310接着将其发送至显示对象的浏览器插件315。客户端侧代理服务器310(如果必要的话以及在必要时)向服务器侧代理服务器305请求对象的剩余部分。然后,服务器侧代理服务器305将所请求的部分发送给客户端侧代理服务器310。接着,客户端侧代理服务器310通过客户端web浏览器330将该部分传送给浏览器插件315,以显示该部分。
上面所描述的方法还用于被称为“按需检索”的过程。例如,渐进式图像的初始部分经由整个网页/文档的同时传送允许用户快速观看该整个网页,并允许用户具有选择哪个对象继续加载的选项。例如,浏览器插件315和服务器侧代理服务器305可以被配置用于允许用户通过用户设置或通过点击对象的初始版本/部分来指定最初加载的和/或继续加载的对象。该用户还可以具有指定对象继续加载的顺序的选项。由客户端侧代理服务器310从服务器侧代理服务器305的内容按需检索可用于以渐进方式按部分检索各种类型的多媒体内容,例如包括JPEG、GIF和PNG图像、动画、音频和视频、以及其它形式的多媒体内容。
图4示出了用于将渐进式图像从服务器侧(表示为服务器侧代理服务器405和内容服务器(未示出))传送至客户端侧(表示为客户端侧代理服务器410和web浏览器415)的系统和方法400的更详细的示例性实施例的架构和数据流。在本具体实施例中,重点集中在经由HTTP连接417来传送图像对象。由于web浏览器415通常仅要求每个图像对象一个数据文件,因此即使客户端侧代理服务器410能够向web浏览器415馈入具有递增的图像质量的渐进式JPEG或GIF/PNG图像,典型地,该web浏览器也无法渐进地显示图像。在这种情况下,提供了浏览器插件420来协助图像显示的功能。本领域的技术人员将理解,在备选实施例中,还可以将浏览器插件420直接合并到web浏览器415中。类似地,在备选实施例中,可以将客户端侧代理服务器410合并到web浏览器415或浏览器插件420中。
浏览器插件420的功能包括接收图像比特流、对图像比特流进行解压缩、创建将被web浏览器415绘制的图像表面、以及管理用于在接收到附加数据时更新图像表面的按需机制。
下列描述概述了系统400的元件以及通过非渐进式基础设施将渐进式图像从web服务器传送至web客户端的方法的时序。
协议处理器-浏览器的协议处理器接收来自浏览器窗口425的HTTP GET请求(未示出),并检查用于现有图像数据的高速缓存(未示出)。如果在高速缓存中发现了规则图像(即,非渐进式图像),则将以传统的非渐进式方式加载该规则图像文件,并将由web浏览器415显示该规则图像文件。否则,该操作前进至HTTP请求430。
HTTP请求-通过HTTP连接417发送HTTP请求425。客户端侧代理服务器410将该请求转发435至服务器侧代理服务器405。服务器侧代理服务器405从web 440上的目标内容服务器(未示出)检索数据,并且如果认定该数据为可流化/渐进式图像(即,可以被渐进地传送,例如作为渐进式JPEG或GIF格式等),则服务器侧代理服务器405将压缩该图像数据(如果必要的话),并将其转换为用于进行渐进式传送的嵌入式格式445。否则,通过数据连接450将数据未修改地返回至客户端侧代理服务器410,然后客户端侧代理服务器410经过HTTP连接417将该数据返回至web浏览器415。
渐进式元数据文件生成-对于渐进式图像,服务器侧代理服务器405产生元数据文件455。例如,该元数据文件包括渐进式图像报头以及图像数据中的预定部分。例如,图像数据的一部分将允许呈现出低质量的预览图像。该渐进式图像报头包括附加信息,例如web浏览器415将用于选择浏览器插件420的字节序列、图像文件的完整URL、以及图像尺寸。
元数据文件传送-利用非渐进式数据通过数据连接450将元数据文件同时传送至客户端侧代理服务器410。客户端侧代理服务器410对元数据文件报头进行翻译,并在本地硬盘(未示出)上创建共享文件(未示出)。浏览器插件420将使用该共享文件来接收附加图像数据。
元数据文件返回-通过HTTP连接417将元数据文件从客户端侧代理服务器410返回(460)至web浏览器415。web浏览器415将检查元数据文件的头几个字节以及从客户端侧代理服务器410返回的内容类型的报头,以确定调用哪个插件。在找到渐进式图像类型时,将调用用于渐进式显示的浏览器插件420。
将渐进式元数据文件传送至插件-调用465浏览器插件420,并接收元数据文件。浏览器插件420验证元数据文件的完整性,并对该报头进行翻译。
在浏览器内创建图像表面-浏览器插件420读取元数据文件报头并创建适当大小的绘图表面,浏览器使用该绘图表面来绘制图像,然后将粗粒度图像解压缩470到元数据文件中,用于显示。
打开共享文件-浏览器插件420打开共享文件。当针对正在处理的图像的附加图像数据到达时,客户端侧代理服务器410将其写入该共享文件。
接收渐进式图像-服务器侧代理服务器405基于预定的渐进式内容传送协议(PCDP)将渐进式图像数据的剩余部分发送至客户端侧代理服务器410。稍后将在这部分中描述PCDP。客户端侧代理服务器410将接收到的图像数据写入共享文件。
封送(marshal)渐进式图像并对其进行解压缩-在将附加图像数据写进共享文件时,发信号通知浏览器插件420读取该文件。如果浏览器插件420确定共享文件中存在足以继续的数据,则浏览器插件420使用可用的附加数据来对该图像进行解压缩472。
更新浏览器的图像表面-浏览器插件420找到与正在被处理的图像相关联的浏览器表面,然后使用最新图像来更新该表面474,并重新绘制该HTML窗口425。如果该表面不再存在或已被破坏,则浏览器插件420向客户端侧代理服务器410发送消息,以停止接收该图像的数据。接下来,客户端侧代理服务器410将该消息转发至服务器侧代理服务器405,以终止对附加图像数据的传输。
对完成图像进行高速缓存-在接收到针对该图像的所有数据之后,浏览器插件420将最终图像转换为其原始格式,例如JPEG或GIF/PNG,并将其提交给浏览器高速缓存476。然后,浏览器插件420可以删除该共享文件。在这种情况下,web浏览器415可以在删除或终止该高速缓存条目之前不再为该图像调用浏览器插件420。
在一些实例中,例如在终止对所有渐进式部分的传输之前仅部分地接收渐进式图像时,浏览器高速缓存中可能已经存在包含一些渐进式部分的共享文件。在这种情况下,浏览器插件420可以从高速缓存中检索到478这些渐进式部分,并对其进行解压缩472,以用于显示474。浏览器插件420可以通过PCDP将这种情况传达给客户端侧代理服务器410。
将对象/图像转换为嵌入式格式
为了支持通过非渐进式基础设施的渐进式图像传输和显示,需要将JPEG和GIP/PNG图像格式转换为嵌入式格式。在这种情况下,该转换是在服务器侧代理服务器405处执行的。
一般而言,存在四种不同类型的渐进式传送方案:基于质量的渐进式方案(该图像以较低质量开始,并且图像质量随着接收到更多图像数据而增长)、基于分辨率的渐进式方案(该图像以较小大小显示,并且图像尺寸随着接收到更多图像数据而增长)、基于色彩的渐进式方案(该图像作为灰度图像开始加载,并且色彩将随着接收到更多图像数据而填入)、以及基于位置的渐进式方案(首先显示图像中的感兴趣区域,并且接收到越多图像数据则显示越多区域)。尽管本说明书涉及对图像数据的基于质量的渐进式传送(这种方案被认为更适用于经由互联网的web访问),但是这种方法被认为是与其它渐进式类型起到同样好的作用。
作为渐进式编码的示例,可以通过诸如零树系数编码(J.M.Shapiro的美国专利序号5315670)、SPIHT图像压缩算法(A.Said andW. A.Pearlman,″A New Fast and Efficient Image Codec Based on SetPartitioning in Hierarchical Trees,″IEEE Transactions on Circuits andSystems for Video Technology,vol.6,第243-250页,1996年6月)、JPEG2000标准之类的多种算法,来将JPEG图像转换为基于质量的渐进式格式。此外,还可以通过基于失真的色彩分裂算法(X.Chen,S.Kwong,and J.Feng,″A new compression scheme for color-quantizedimages,″IEEE Transactions on Circuits and System for Video Technology,Vol.12,No.10,第904~908页,2002年10月)、或熵约束色彩分裂算法(本申请的一些发明人所发明的、在美国临时申请60/719,585中以及均于2006年9月25日递交的、声明了该美国临时申请的权益的常规美国专利申请11/534,956和11/534,942中所描述的方法,将所有这些申请通过引用合并于此),来将GIF/PNG图像转换为基于质量的渐进式格式。
为了支持渐进式图像显示,在通常将较低图像质量的比特流嵌入到较高图像质量的比特流中的意义上,服务器侧代理服务器405将例如采取JPEG和GIF/PNG格式的所有web图像转换为渐进式嵌入式格式。换言之,利用这种数据布置,解码器(例如,在客户端侧代理服务器410或浏览器插件420中)理想上能够在任何时间接收到任意数量的新图像数据时重构具有较高质量的图像。然而,在一些实施例中,这在以下情况下是有用的:如果接收到新图像数据时解码器不重构更好质量的图像以用于显示。存在关于为什么其可用于以步进式方式而非连续性地更新图像的两个原因。首先,如果最近接收到的图像数据是小量数据,则关于重构图像的改进并不显著。其次,如果解码器花太多CPU时间来重构图像用以更新,则这将使网页或其它应用的加载减速。为帮助解码器确定何时重构精细的图像用以显示,在本实施例中,服务器侧代理服务器405基于对给定图像的统计,来计算被推荐用于进行渐进式显示的图像数目、以及针对每个推荐的图像质量的比特长度偏移量。将压缩后的图像比特流标记为预定部分的原理是用于实现针对每一部分的重构图像上的可视质量的粗线性增长。
在JPEG图像的情况下,由于基于小波变换的算法多半用于产生嵌入式的比特流,因此所产生的位平面可用于标记比特流以及因此用于标记用于渐进式显示的推荐图像的数目。例如,如果希望将图像渐进地四次更新至指定质量水平(即,希望有五个部分),则可以将比特长度偏移量设置为在第四、第三、第二位平面的末端处、以及第一比特平面的中间和末端处(在这种情况下,比特对应于第一位平面,即最低位平面)的压缩比特长度。注意,还可以首先基于用户偏好来量化小波系数。
对于GIF/PNG图像,服务器侧代理服务器405可以基于多种色彩分裂算法来将图像转换为嵌入式比特流。分裂过程期间所产生的色彩数目被用于标记比特流,并由此用于标记用于渐进式显示的推荐图像的数目。由于当色彩总数较少时,人类的视觉系统典型地对形状的数目敏感,因此建议在所产生的色彩数目分别达到4、7、16、32、64和128时重构更新图像。比特长度偏移量是在压缩第四个、第八个、第十六个、第三十二个、第六十四个和第一百二十八个色彩的末端处的压缩的比特长度。
有必要指出,可以根据特定应用需要来任意设定比特流部分的数目以及相应的分割点。增加用于渐进式显示的推荐图像的数目以及在嵌入式比特流的开始处的相应比特偏移量的目的是,帮助客户端判定是否以及何时重构用于更新的精细图像。
多媒体内容的按需传送
在公共web浏览器所使用的HTTP连接下,服务器响应于客户端的请求将内容传送给客户端。然而,在上述系统中,客户端响应于其针对特定数据对象的请求而仅接收对象的第一部分。根据服务器侧代理服务器405与客户端侧代理服务器410之间的通信协议来传送对象的剩余部分。将该协议称为渐进式内容传送协议(PCDP)。
根据特定应用的需要,存在PCDP的若干可能的实施例。因此,PCDP可用于实现多媒体内容从web服务器到web浏览器的定制的按需传送。
在PCDP的一个特定实施例中,上述系统可用于以渐进式步进方式来同时传送网页上的所有图像。一旦将包括网页中的所有图像的第一部分的元文件传送给web浏览器415,则客户端侧代理服务器410向服务器侧代理服务器405发送消息,以要求服务器侧代理服务器405发送所有图像的后续部分,从而使所有图像的质量达到预定水平。在接收到来自服务器侧代理服务器405的请求部分之后,客户端侧代理服务器410可以请求另外的部分,以进一步增强图像的质量。在这种协议的实施例的另一变体中,客户端侧代理服务器410可以选择特定图像,并向服务器侧代理服务器405请求另外部分,以提高这些图像的质量。因此,客户端侧代理服务器410可以要求用于选择图像的渐进式部分按照适合于基于特定网页或浏览器的应用的顺序。
图5是示出了经由网络传送多媒体内容的方法的流程图500。该流程图可以分为图5A、5B和5C,并且如图5A和5B所示,存在两个流,即客户端侧流和服务器侧流。客户端侧流表示如上所述的客户端侧代理服务器410和客户端web浏览器415,而服务器侧流则表示仍如上所述的服务器侧代理服务器405和目标服务器。本领域的技术人员将理解,可以根据特定实现通过不同元件来执行各种功能。
起初,在客户端侧制定诸如HTTP请求之类的针对多媒体内容的请求(505)。然后,客户端侧检查其高速缓存,以确定所请求的多媒体内容或一些可显示的对象或其一部分(下面将对此进一步说明)是否已经可用并且不需要更新(510)。如果该多媒体内容可用,则将其显示在客户端侧(515)。如果该多媒体内容不可用,或仍然需要一些对象以满足请求,则向服务器侧发送针对多媒体内容的请求(520)。
在服务器侧,接收到针对多媒体内容的请求(525)。服务器侧确定多媒体内容中的任何对象是否采取渐进式格式(530)。如果不是采取渐进式格式,则服务器侧确定该多媒体内容中的任意对象是否适合于被转换为渐进式格式(535)。如果是,则执行转换,并准备用于表示该对象的初始可显示的部分的元文件(540)。可以将不适合于转换为渐进式格式的多媒体内容中的任意对象全部发送至客户端侧,而不需要渐进式格式转换,但可能进行压缩也可能不进行压缩。
一旦准备好了渐进式对象,则服务器侧将元文件和非渐进式对象(压缩或未压缩)发送至客户端侧(545)。
然后,客户端侧接收到来自服务器侧的元文件和非渐进式对象(550)。应理解,客户端侧通常将接收到的对象和元文件保存至高速缓存等。然后,客户端侧检查以确定哪个对象是渐进式对象,即,以元文件格式提供的对象(555)。客户端侧为那些渐进式对象准备了图像空间/共享文件(560),并继续显示在针对每个渐进式对象的元文件中所提供的渐进式对象的部分(565)。客户端侧还同时显示非渐进式对象(565)。一旦显示了渐进式对象和非渐进式对象中的每一个对象,则客户端侧确定渐进式对象中的任一对象是否需要附加部分(570)。如果是,则客户端侧向服务器侧发送PCDP请求(575)。
服务器侧接收PCDP请求(580),并将每一渐进式对象的后续部分发送给客户端侧(585)。
客户端侧接收到渐进式对象的后续部分(590),并使用后续部分中的附加数据来更新每一渐进式对象的显示(595)。然后,客户端侧再次确定是否仍然需要渐进式对象的附加部分(570)。例如,客户端侧可以检查用户设置、确定用户是否已经移到随后的网页或可以确定客户端侧设备显示特定质量的图像等的能力。如果用户已经设定了希望的分辨率的预定水平,则转到不同的网页,或者如果客户端侧设备具有受限的分辨率,则客户端侧可以不请求后续部分。如果需要附加数据,则客户端侧向服务器侧发送附加PCDP请求(575)。
客户端侧继续接受从客户端侧接收到的、针对需要满足原始请求的渐进式对象的另外部分的PCDP请求,并对该请求作出响应。在特定情况下,如果客户端侧返回至包括在第一请求期间未完全加载的渐进式对象的多媒体内容(例如网页),则客户端侧可以从高速缓存加载该多媒体内容的某些对象,并如上述(515)地显示该对象。然后,客户端侧可以确定高速缓存中的任意对象是否是渐进式对象(600),如果是,则确定是否需要附加部分(570),如果需要,则向服务器侧发送PCDP请求,以便在网页上加载渐进式对象的后续部分(575)。
在另一示例性实施例中,还可以将上述系统与备选的PCDP一同用于将FlashTM对象从web服务器传送至web浏览器。在本示例性实施例中,客户端侧代理服务器修改HTTP请求报头,以指示:对于Flash对象(SWF文件),服务器侧代理服务器将首先发送包括诸如预览GIF或JPEG图像文件的元文件。在接收到该请求时,服务器侧代理服务器请求并从目标内容服务器接收Flash对象,并在本地高速缓存该对象,但是仅发送根据接收到的Flash对象所创建的预览JPEG和GIF图像。将该元文件传送给客户端侧代理服务器,该客户端侧代理服务器依次将该预览图像文件传送给浏览器内的Flash播放器。然后,Flash播放器在浏览器中显示该图像。
在将初始对象加载到网页上之后,该插件预览针对Flash对象的当前页面。针对所发现的每一Flash对象,可以修改URL,以指示当前需要整个Flash对象(与预览Flash对象请求相反)。将该新的URL反馈至服务器,以利用新的HTTP请求来重新加载Flash流。浏览器通过客户端侧代理服务器将该请求发送至服务器侧代理服务器。该服务器侧代理服务器在看到针对整个Flash对象的请求时,返回该整个Flash对象(从其本地高速缓存或在从目标web服务器检索到该对象之后)。将在浏览器内显示整个Flash对象。作为本示例的另一变体,该插件可以基于诸如用户设置或点击期望对象之类的一些形式的用户指示等,来判定是否以及何时向服务器侧代理服务器要求特定的整个Flash对象。
在上述实施例中,通过客户端侧代理服务器与服务器侧代理服务器之间的PCDP来接收以按需方式传送的数据的能力还可以类似地用于对诸如音频对象、视频对象和其它类型的多媒体对象之类的其它类型的多媒体内容的传送顺序进行重新排序。还应理解,预览元文件及其通过PCDP的处理的性质将在某种程度上根据对象类型而改变。例如,可以以与Flash对象相类似的方式来处理视频对象,其中选自视频文件的图像可用于元文件,并且经由PCDP的其它请求将加载整个视频对象。
本发明的实施例旨在提供用于进行下列步骤的系统和方法:
(1)为了增强在包括web浏览的网络应用中的用户体验和感觉加速,传送渐进式图像/多媒体数据;
(2)在原始web内容服务器的图像数据未采取渐进式形式的情况下,传送渐进式图像/多媒体数据;
(3)在web浏览器无法渐进地显示图像的情况下,传送渐进式图像/多媒体数据;
(4)以并发的方式传送网页上的所有渐进式图像/多媒体数据,从而分阶段地提高所有图像的质量;
(5)即使在请求了所述数据的HTTP连接关闭之后,也为了渐进式更新的目的而更新网页上的图像/多媒体数据;
(6)在第二次访问网页时,通过以下步骤向web浏览器传送渐进式图像/多媒体数据:
(a)传送来自浏览器的高速缓存的图像/多媒体数据;以及
(b)在第二次访问时,向web浏览器传送渐进式图像/多媒体数据,由此从浏览器的高速缓存中检索到该图像/多媒体数据中的一些片段,而从互联网接收其余部分;
(7)请求诸如动画(例如Flash对象)、音频和视频内容之类的多媒体内容,由此响应于浏览器的HTTP请求而仅传送与请求相关的第一数据片段。响应于来自客户端侧的请求,单独传送该对象的剩余数据;以及
(8)基于定制的协议,将多媒体内容从web服务器按需传送至web浏览器。
如上所述,这里的实施例总体上涉及,为了增强在web浏览速度方面的用户体验和感觉加速,分阶段地对网页上的预定/选定类型的多媒体内容的数据进行同时和渐进式的传送。特定实施例涉及一种用于在满足下列条件之一或多个条件的情况下、将渐进式图像/多媒体数据从web服务器同时传送至web客户端(即web浏览器)的方法、系统以及产品:
(1)可用于内容服务器的图像/多媒体数据可能不是采取支持渐进式传送的格式。
(2)内容服务器可能不以渐进式方式传送图像/多媒体数据。
(3)客户端可能无法以渐进式方式显示给定的图像/多媒体数据。
(4)可能未设有用于对图像数据的高速缓存的渐进片段进行处理的客户端高速缓存。
(5)客户端-服务器协议被设计用于响应于来自客户端的请求而以单个或多个片段的形式传送完整的图像文件。
实施例还旨在提供一种方法和系统,其用于布置多媒体内容的按需传送,由此响应于浏览器对于这种内容的请求,来传送多媒体内容中的修改的第一部分。应插件的请求而传送剩余部分的内容,由此基于定制的协议来发送这种内容。
上述实施例可部署于各种网络配置中,包括有线和无线网络。下列描述涉及一种上述实施例可以在其中部署的示例性无线环境。该无线环境包括移动无线通信设备,下文中称为移动设备。可应用的通信设备的示例包括寻呼机、蜂窝电话、蜂窝智能电话、无线管理器、个人数字助理、计算机、膝上型计算机、手持无线通信设备、启用无线功能的笔记本计算机等。
移动设备是双向通信设备,其具有先进的数据通信能力,包括通过无线电收发站的网络与其它移动设备或计算机系统进行通信的能力。该移动设备还可以具有允许语音通信的能力。根据移动设备所提供的功能,可以将该移动设备称为数据消息收发设备、双向寻呼机、具有数据消息收发能力的蜂窝电话、无线互联网装置、或数据通信设备(具有或不具有通话能力)。为了帮助读者理解移动设备的结构、以及移动设备如何与移动环境中的其它设备和主机系统进行通信的,现在将参考图6至9。
首先参照图6,这里示出了移动设备1100的示例性实施例的方框图。移动设备1100包括多个组件,例如用于控制移动设备1100的整体操作的主处理器1102。通过通信子系统1104执行包括数据和语音通信的通信功能。通信子系统1104从无线网络2200接收消息,并向无线网络2200发送消息。在移动设备1100的这个示例性实施例中,根据全球移动通信系统(GSM)和通用分组无线业务(GPRS)标准来配置通信子系统1104。GSM/GPRS无线网络在世界范围内使用,并且预计这些标准最终将由增强型数据GSM环境(EDGE)和通用移动通信业务(UMTS)所取代。尽管一直在确定新标准,但是人们相信新标准将与这里所描述的网络行为具有相似之处,并且本领域的技术人员将理解,这里所描述的实施例旨在使用未来将开发的任意其它适当的标准。连接通信子系统1104与无线网络2200的无线链路表示一个或多个不同的无线电频率(RF)信道,其根据为GSM/GPRS通信所指定的规定协议进行操作。通过利用更新的网络协议,这些信道能够支持电路交换的语音通信和分组交换的数据通信。
尽管在一个示例性实施例中与移动设备1100相关联的无线网络2200是GSM/GPRS无线网络,但是在各种不同的实现中,其它无线网络也可以与移动设备1100相联系。例如,可以使用的不同类型的无线网络包括数据中心无线网络、语音中心无线网络、以及能够通过同一物理基站同时支持语音和数据通信的多模网络。组合的多模网络包括码分多址(CDMA)或CDMA2000网络、GSM/GPRS网络(如上面所提到的)、以及未来的第三代(3G)网络(象EDGE和UMTS),但不局限于此。数据中心网络的一些其它示例包括WiFi 802.11、MobitexTM以及DataTACTM网络通信系统。其它语音中心数据网络的示例包括个人通信系统(PCS)网络,象GSM和时分多址(TDMA)系统。
主处理器1102还与附加子系统进行交互,例如随机存取存储器(RAM)1106、闪存1108/显示器1110、辅助输入/输出(I/O)子系统1112、数据端口1114、键盘1116、扬声器1118、麦克风1120、短距离通信1122以及其它设备子系统1124。
移动设备1100中的一些子系统执行通信相关的功能,而其它子系统可以提供“驻留”或设备上的功能。作为示例,显示器1110和键盘1116都可用于通信相关功能,例如输入用于通过通信网络2200传输的文本消息,以及诸如计算器或任务列表之列的设备驻留功能。
在完成了所需要的网络注册或激活过程之后,移动设备1100可以通过网络2200发送和接收通信信号。网络接入与移动设备1100的订户或用户相关联。为了识别订户,移动设备1100需要将SIM/RUIM卡1126(即,订户识别模块或可移除用户识别模块)插入SIM/RUIM接口1128,以便与网络进行通信。SIM或RUIM卡1126是可用于识别移动设备1100的订户并使移动设备1100个人化的一种传统的“智能卡”。在不使用SIM卡1126的情况下,移动设备1100无法完全地操作用于与无线网络2200的通信。通过将SIM/RUIM卡1126插入SIM/RUIM接口1128,订户可以访问所有预订的服务。该服务可以包括:诸如电子邮件、语音邮件、短消息服务(SMS)以及多媒体消息收发服务(MMS)之类的web浏览和消息收发。更先进的服务可以包括:销售点、现场服务、以及销售能力自动化。SIM/RUIM卡1126包括处理器以及用于存储信息的存储器。一旦将SIM/RUIM卡1126插入SIM/RUIM接口1128中,则SIM/RUIM卡1126连接至主处理器1102。为了识别订户,SIM/RUIM卡1126可以包括诸如国际移动订户识别号(IMSI)之类的一些用户参数。使用SIM/RUIM卡1126的优点是订户不必受任意单一物理移动设备的限制。SIM/RUIM卡1126可以存储移动设备的附加订户信息,包括记事簿(或日历)信息以及最近呼叫信息。备选地,还可以将用户识别信息编程到闪存1108中。
移动设备1100是电池供电的设备,并且包括用于接收一个或多个可充电电池1130的电池接口1132。在至少一些实施例中,电池1130可以是具有嵌入式微处理器的智能电池。电池接口1132连接至调节器(未示出),该调节器有助于电池1130向移动设备1100提供电源V+。尽管当前技术使用电池,但是诸如微型燃料电池之类的其它技术也可以给移动设备1100提供电源。
移动设备1100还包括操作系统1134和软件组件1136至1146,下面将对其进行更详细的描述。典型地,将主处理器1102所执行的操作系统1134和软件组件1136至1146存储在诸如闪存1108之类的永久性存储器中,闪存1108备选地可由只读存储器(ROM)或类似的存储元件(未示出)代替。本领域的技术人员将理解,可以将操作系统1134和软件组件1136至1146的一部分(例如,特定的设备应用程序及其一部分)临时加载到诸如RAM 1106之类的易失性存储器中。如本领域技术人员所知,还可以包括其它软件组件。
通常在制造过程中将控制基本设备操作的软件应用程序子集1136安装在移动设备1100上,该基本操作包括数据和语音通信应用。其它软件应用程序包括可以作为允许移动设备1100的用户发送和接收电子消息的任意适当的软件程序的消息应用程序1138。对于消息应用程序1138而言,存在本领域的技术人员所公知的多种备选。典型地,将用户所发送或接收的消息存储在移动设备1100的闪存1108或移动设备1100中的某些其它适当的存储元件中。在至少一些实施例中,可以相对于移动设备1100远程地存储一些发送和接收到的消息,例如存储与移动设备1100进行通信的关联主机系统的数据存储器中。
该软件应用程序还可以包括设备状态模块1140、个人信息管理器(PIM)1142、以及其它适当的模块(未示出)。设备状态模块1140提供了永久性,即设备状态模块1140保证重要设备数据存储在永久存储器(例如闪存1108)中,使得当移动设备1100被切断或失去电源时不会丢失数据。
PIM 1142包括用于组织和管理用户感兴趣的数据项的功能,该数据项例如但不限于邮件、日历事件、语音邮件、约会和任务项。PIM应用程序具有通过无线网络2200发送和接收数据项的能力。利用存储的或与主计算机系统关联的、移动设备订户的对应数据项,可以通过无线网络2200来无缝地整合、同步、和更新PIM数据项。相对于这些项目,上述功能在移动设备1100上创建了镜像的主机。这在该主计算机系统作为移动设备订户的办公室计算机系统时尤其有益。
移动设备1100还包括连接模块1144和IT策略模块1146。连接模块1144实现移动设备1100与移动设备1100被授权与之进行接口的无线基础设施和任意主机系统(例如企业系统)进行通信所需要的通信协议。图8和9给出了无线基础设施和企业系统的示例,下面将对此进行更为详细的描述。
连接模块1144包括可以与移动设备1100集成的一组API,用于允许移动设备1100使用任意数目的与企业系统相关联的服务。连接模块1144允许移动设备1100建立与主机系统之间的端到端的安全、认证通信管道。连接模块1144提供对其访问的应用程序子集可用于将IT策略命令从主机系统传递至移动设备1100。可以根据该IT策略来配置移动设备1100。应注意,术语IT策略通常表示IT策略规则的集合,其中可以将该IT策略规则定义为分类或未分类的以及全局或每一用户的。下面对术语分类、未分类、全局以及每一用户进行进一步定义。这可以以无线或有线方式来进行。然后,可以将这些指令传给IT策略模块1146,以修改设备1100的配置。备选地,在一些情况下,也可以通过有线连接来进行IT策略更新。
IT策略模块1146接收到对IT策略进行编码的IT策略数据。然后,IT策略模块1146保证移动设备1100对该IT策略数据进行认证。然后可以将该IT策略数据以其原始形式存储在闪存1106中。在存储了IT策略数据之后,IT策略模块1146可以向驻留在移动设备1100上的所有应用程序发送全局通知。然后,IT策略可应用的应用程序通过读取IT策略数据以查找可应用的IT策略规则来进行响应。
IT策略模块1146可以包括解析器(未示出),应用程序可以使用该解析器来读取IT策略规则。在某些情况下,另一模块或应用程序可以提供解析器。将分组的IT策略规则(下面将对其进行更详细的描述)作为字节流检索,然后将该字节流发送(在某种意义上为递归地)到解析器中,以确定在分组的IT策略规则内所定义的每一IT策略规则的值。在至少一些实施例中,IT策略模块1146可以确定哪些应用程序受IT策略数据的影响,并只给那些应用程序发送通知。在这些情况中的任何一种情况下,对于不在通知时运行的应用程序,该应用程序可以在被执行用于确定最近接收到的IT策略数据中是否存在任何相关IT策略规则时,调用解析器或IT策略模块1146。
支持IT策略中的规则的所有应用程序被编码用于获知期望的数据类型。例如,获知针对“WEP用户名”IT策略规则所设定的值为字符串;因此将与该规则相对应的IT策略数据中的值解释为字符串。作为另一示例,获知针对“设定最大口令尝试”IT策略规则的设置为整数,因此对与该规则相对应的IT策略数据中的值进行同样的解释。
在将IT策略规则应用于可应用的应用程序或配置文件之后,IT策略模块1146向主机系统发送回确认应答,以指示已接收并成功地应用了IT策略数据。
还可以在移动设备1100上安装其它类型的软件应用程序。这些软件应用程序可以是在移动设备1100的制造之后添加的第三方应用程序。第三方应用程序的示例包括游戏、计算器、实用程序等。
可以通过无线网络2200、附加I/O子系统1112、数据端口1114、短距离通信子系统1122、或任意其它适当的设备子系统1124中的至少之一将附加应用程序加载到移动设备1100上。应用程序安装的灵活性增加了移动设备1100的功能,并且可以提供增强的设备上功能、通信相关功能、或两者。例如,安全通信应用程序可以使用移动设备1100来执行电子商务功能和其它这样的金融交易。
数据端口1114使订户能够通过外部设备或软件应用程序来设置偏好,并可以通过向移动设备1100提供信息或软件下载而不通过无线通信网络,来扩展移动设备1100的能力。例如,备选的下载路径可用于通过直接的并因此可靠且可信的连接来将密钥加载到移动设备1100上,以提供安全的设备通信。
数据端口1114可以是启用移动设备1100与另一计算设备之间的数据通信的任意适当的端口。数据端口1114可以是串口或并口。在一些实例中,数据端口1114可以是USB端口,其包括用于数据传输的数据线以及能够提供给移动设备1100的电池1130充电的充电电流的馈电线。
短程通信子系统1122在不使用无线网络2200的情况下提供移动设备1100与不同的系统或设备之间的通信。例如,子系统1122可以包括红外设备及相关电路以及用于短程通信的组件。短程通信标准的示例包括红外数据联盟(IrDA)所发展的标准以及IEEE发展的802.11标准族。
在使用时,通信子系统1104将对诸如文本消息、电子邮件消息、或网页下载之类的接收信号进行处理,并将其输入至主处理器1102。然后,主处理器1102将对接收信号进行处理,以输出给显示器1110或备选地输出给辅助I/O子系统1112。订户还可以使用键盘1116与显示器1110和可能的辅助I/O设备1112相结合,来构成诸如电子邮件消息之类的数据项。辅助I/O设备1112可以包括下列设备,例如:触摸屏、鼠标、跟踪球、红外手指检测器、或具有动态按钮按压功能的滚轮。键盘1116优选地为字母数字键盘或电话式键盘。然而,也可以使用其它类型的键盘。这样构成的项可以通过通信子系统1104在通信网络2200上传输。
对于语音通信,移动设备1100的所有操作实质上都是类似的,除了将接收信号输出至扬声器1118,以及由麦克风1118产生用于传输的信号之外。还可以在移动设备1100上实现诸如语音消息记录子系统之类的备选的语音或视频I/O子系统。尽管主要通过扬声器1118来实现语音或音频信号输出,但是也可以使用显示器1110来提供附加信息,例如呼叫方的身份、语音呼叫的持续时间、或其它语音呼叫相关的信息。
现在参照图7,示出了通信子系统组件1104的示例性方框图。通信子系统1104包括接收机1150、发射机1152、以及诸如一个或多个嵌入或内置的天线元件1154和1156、本地振荡器(LO)1158、以及诸如数字信号处理器(DSP)1160之类的处理模块的关联组件。通信子系统1104的具体设计取决于移动设备1100所要操作的通信网络2200。因此,应理解的是图7中的设计仅作为一个示例。
天线1154通过通信网络2200接收到的信号被输入到接收机1150,接收机1150可以执行像信号放大、下变频、滤波、信道选择、以及模数(A/D)转换等这样的普通接收机的功能。对信号的A/D变换允许执行更复杂的通信功能,例如在DSP 1160中进行解调和解码。以类似的方式,通过DSP 1160处理要发送的信号,包括调制和编码。将这些经DSP处理的信号输入到发射机1152,用于数模(D/A)转换、上变频、滤波、放大、以及经由天线1156通过无线网络2200发送。DSP 1160不仅处理通信信号,而且向接收机和发射机提供控制。例如,可以通过在DSP 1160中实现的自动增益控制算法,来自适应地控制施加给接收机1150和发射机1152中的通信信号的增益。
移动设备1100与无线网络2200之间的无线链路可以包括两个或更多不同的信道(典型地为不同RF信道)、以及用在移动设备1100与无线网络2200之间的关联协议。典型地由于移动设备1100中的总带宽的限制和有限的电池电源,RF信道是必须节约的有限资源。
当移动设备1100完全操作时,典型地,只有在发射机1152向无线网络2200发射时,才接通或开启发射机1152,否则关闭发射机1152以节约资源。类似地,为了节约电源而周期性地关闭接收机1150,直到需要在指定的时间周期期间接收信号或信息(如果有的话)为止。
现在参照图8,示出了无线网络2200的节点2202的示例性实现的方框图。实际上,无线网络2200包括一个或更多个节点2202。结合连接模块1144,移动设备1100可以与无线网络2200内的节点2202进行通信。在图8的示例性实现中,根据通用分组无线业务(GPRS)和全球移动通信系统(GSM)技术来配置节点2202。节点2202包括具有相关的塔站2206的基站控制器(BSC)2204、被添加用于GSM中的GPRS支持的分组控制单元(PCU)2208、移动交换中心(MSC)2210、归属位置寄存器(HLR)2212、访问位置寄存器(VLR)2214、服务GPRS支持节点(SGSN)2216、网关GPRS支持节点(GGSN)2218、以及动态主机配置协议(DHCP)2220。上述组件列表并不意味着GSM/GPRS网络内的每个节点2202的组件的穷举列表,而是在通过网络2200的通信中通常使用的组件列表。
在GSM网络中,MSC 2210连接至BSC 2204和诸如公共交换电话网(PSTN)2222之类的陆地网络,以满足电路交换需求。经由PCU2208、SGSN 2216和GGSN 2218至公共或私有网络(互联网)2224(这里通常也称为共享网络基础设施)的连接表示针对有GPRS能力的移动设备的数据路径。在扩展了GPRS能力的GSM网络中,BSC2204还包括分组控制单元(PCU)2208,其连接至SGSN 2216以控制分段、无线电信道分配并满足分组交换需求。为了跟踪移动设备1100的位置以及电路交换和分组交换管理的可用性,在MSC 2210与SGSN2216之间共享HLR 2212。MSC 2210控制对VLR 2214的访问。
站2206是固定无线电收发机站,并与BSC 2204一起构成了固定收发机设备。该固定收发机设备为特定覆盖区域(一般称为“小区”)提供了无线网络覆盖。该固定收发机设备通过站2206向其小区内的移动设备发送通信信号,并从该移动设备接收通信信号。该固定收发机设备通常在其控制器的控制下根据特定的(通常为预定的)通信协议和参数,对要发送至移动设备1100的信号执行诸如调制以及可能的编码和/或加密之类的功能。如果需要的话,该固定收发机设备类似地对从其小区内的移动设备1100接收的任意通信信号进行解调以及类似的解码和解密。通信协议和参数可以在不同节点之间变化。例如,一个节点可以采用不同的调制方案,并以不同于其它节点的频率操作。
对于向特定网络注册的所有移动设备1100,将诸如用户简档之类的永久配置数据存储在HLR 2212中。HLR 2212还包括每一已注册的移动设备的位置信息,并且可以查询HLR 2212以确定移动设备的当前位置。MSC 2210负责一组位置区域,并将当前处于其负责区域中的移动设备的数据存储在VLR 2214中。此外,VLR 2214还包括与访问其它网络的移动设备相关的信息。VLR 2214中的信息包括为了更快速的访问而从HLR 2212发送至VLR 2214的永久移动设备数据的一部分。通过将附加信息从远程HLR 2212节点移到VLR 2214,可以减小这些节点之间的通信量,以便可以给语音和数据业务提供更快的响应时间,同时需要使用较少计算资源。
SGSN 2216和GGSN 2218是为了GPRS支持(即GSM内的分组交换数据支持)而添加的元件。SGSN 2216和MSC 2210通过跟踪每一移动设备1100的位置而在无线网络2200内具有类似的责任。SGSN2216还执行安全功能以及对无线网络2200上的数据通信量的访问控制。GGSN 2218给外部分组交换网络提供网间连接,并经由操作于网络2200内的互联网协议(IP)骨干网连接至一个或更多个SGSN 2216。在正常操作期间,给定的移动设备1100必须执行“GPRS附着”,以获取IP地址并访问数据业务。电路交换语音信道中不存在上述需求,因为其中使用综合服务数字网(ISDN)地址来进行路由进入和出话呼叫。当前,所有具有GPRS能力的网络都使用私人的、动态分配的IP地址,因此需要将DHCP服务器2220连接至GGSN 2218。存在针对动态IP分配的多种机制,包括使用远程认证拨号用户服务(RADIUS)服务器和DHCP服务器的组合。一旦完成了GPRS附着,则建立从移动设备1100通过PCU 2208和SGSN 2216到GGSN 2218内的接入点节点(APN)的连接。APN还表示针对网络2200的安全机制,至少达到以下程序:必须将每一移动设备1100分配给一个或更多个APN,并且在没有首先执行针对已授权使用的APN的GPRS附着的情况下,移动设备1100不能交换数据。APN可以看作类似于诸如“myconnection.wireless.com”之类的互联网域名。
一旦完成GPRS附着操作,则创建隧道,并使用IP分组中可以支持的任意协议在标准的IP分组内交换所有业务量。这包括例如在一些IP安全(IPsec)连接与虚拟专用网一同使用的情况下的基于IP over IP的隧道方法。这些隧道也被称为分组数据协议(PDP)上下文,并且在网络2200中存在有限数目的PDP上下文。为了最大化地利用PDP上下文,网络2200将针对每个PDP上下文运行空闲定时器,以确定是否缺少活动性。在移动设备1100不使用其PDP上下文时,可以释放PDP上下文,并将IP地址返回至DHCP服务器2200所管理的IP地址池。
现在参照图9。这里所示的是示出了移动设备1100可结合连接模块1144而与之进行通信的主机系统2250的示例性配置的组件的方框图。典型地,主机系统2250是公司或其它局域网(LAN),但在不同实现中,也可以是例如家庭办公计算机或其它一些私人系统。在图9所示的示例中,将主机系统2250描述为移动设备1100的用户所属于的机构的LAN。典型地,多个移动设备可以通过无线网络2200中的一个或更多个节点2202与主机系统2250进行无线通信。
主机系统2250包括通过网络2260相互连接的多个网络组件。例如,使得具有针对用户的移动设备1100的附随的支架2264的用户的台式计算机2262a位于LAN连接上。例如,针对移动设备1100的支架2262可以通过串行或通用串行总线(USB)连接与计算机2272a相连接。其它用户计算机2262a-2262h也可以位于网络2260上,并且每一计算机可以具有或不具有附随的支架2264。支架2264有利于信息(例如,PIM数据、有利于安全通信的私人对称加密密钥)从用户计算机2262a到移动设备1100的加载,并对于通常利用移动设备1100所执行的巨量(bulk)信息更新而言尤其有用。被下载到移动设备1100的信息可以包括消息交换中所使用的证书。
本领域的技术人员将理解,典型地,用户计算机2262a-2262还将连接至图9中没有明确示出的其它外围设备,例如打印机等。此外,为了说明方便,图9中仅示出了主机系统2250中的网络组件的子集,本领域的技术人员将理解,主机系统2250将包括图9中没有明确指出的、用于本示例性配置的附加组件。一般地说,主机系统2250可以表示该机构中的较大网络(未示出)的较小部分,并且可以包括不同于图9的示例性实施例所示的组件,或者可以利用不同于图9的示例性实施例所示的拓扑来布置。
为了有利于移动设备1100的操作以及消息和消息相关的数据在移动设备1100与主机系统2250的组件之间的无线通信,可以提供多个无线通信支持组件2270。在一些实现中,无线通信支持组件2270可以包括消息管理服务器2272、移动数据服务器2274、联系服务器2276、以及设备管理器模块2278。设备管理器模块2278包括IT策略编辑器2280和IT用户属性编辑器2282、以及允许IT管理者配置移动设备1100的其它软件组件。在备选实施例中,可以存在提供IT策略编辑器2280和IT用户属性编辑器2282的功能的一个编辑器。该支持组件2270还包括数据存储器2284和IT策略服务器2286。IT策略服务器2286包括处理器2288、网络接口2290和存储器单元2292。处理器2288控制IT策略服务器2286的操作,并支持与上述标准化IT策略相关的功能。网络接口2290允许IT策略服务器2286与主机系统2250和移动设备100的各个组件进行通信。存储器单元2292可以存储用于实现IT策略的功能及相关数据。本领域的技术人员知道如何实现这些不同的组件。如本领域技术人员所公知的,还可以包括其它组件。此外,在一些实现中,数据存储器2284可以是任何一个服务器的一部分。
在本示例性实现中,移动设备1100通过无线网络2200中的节点2202以及诸如服务提供商网络或公共互联网之类的共享网络基础设施2224,来与主机系统2250进行通信。可以通过一个或更多个路由器(未示出)来提供对主机系统2250的访问,并且主机系统2250的计算设备可以从防火墙或代理服务器2266后面操作。代理服务器2266为主机系统2250提供安全节点和无线互联网网关。代理服务器2266智能地将数据路由到主机系统2250内的正确的目的服务器。
在一些实现中,主机系统2250可以包括无线VPN路由器(未示出),其有利于主机系统2250与移动设备1100之间的数据交换。无线VPN路由器允许通过特定无线网络直接建立到移动设备1100的VPN连接。可以将无线VPN路由器与互联网协议(IP)版本6(IPV6)和基于IP的无线网络一同使用。该协议可以提供足够的IP地址,因此每一移动设备具有专用IP地址,从而可以随时向移动设备推动信息。使用无线VPN路由器的优点在于,其可以是现成的VPN组件,并且不需要单独的无线网络和单独的无线基础设施。在此备选实现中,VPN连接优选地可以是用于直接向移动设备1100传送消息的传输控制协议(TCP)/IP或用户数据报协议(UDP)/IP连接。
针对移动设备1100的用户的消息最初由主机系统2250的消息服务器2268接收。这种消息可以源自任何数量的源。例如,可以由发送器从主机系统2250内的计算机2262a、从连接至无线网络2200或不同无线网络的不同移动设备(未示出)、或从不同计算机设备、或能够发送消息的其它设备,经由共享网络基础设施2224(例如,可能地通过应用服务提供商(ASP)或互联网服务提供商(ISP))来发送消息。
消息服务器2268典型地充当用于机构内的通过共享网络基础设施2224来交换消息(特别是电子邮件消息)的主要接口。典型地,设置用于发送和接收消息的机构的每一用户与消息服务器2268所管理的用户帐户相关联。消息服务器2268的一些示例性实现包括MicrosoftExchangeTM服务器、Lotus DominoTM服务器、Novell GroupwiseTM服务器、或在企业环境中安装的其它适当的邮件服务器。在一些实现中,主机系统2250还适合于提供除了消息管理以外的附加功能,例如包括对与日历和任务列表相关联的数据进行管理。
当消息服务器2268接收到消息时,典型地将消息保存在于消息服务器2268相关联的数据存储器中。在至少一些实施例中,数据存储器可以是消息服务器2268与之进行通信的单独的硬件单元,例如数据存储器2284。通过访问消息服务器2268,可以连续地检索到消息,并将其传送给用户。例如,操作于用户计算机2262a的电子邮件客户端应用程序可以请求存储在与消息服务器2268相关联的数据存储器上的、与用户帐户相关联的电子邮件消息。然后,从数据存储器中检索到这些消息,并将其本地存储在计算机2262a上。与消息服务器2268相关联的数据存储器可以存储本地存储在移动设备1100上的每一消息的拷贝。备选地,与消息服务器2268相关联的数据存储器可以存储针对移动设备1100的用户的所有消息,并且可以只在移动设备1100上存储较小数量的消息,以节约内存。例如,可以将最新消息(即,例如在过去二到三个月中接收到的那些消息)存储在移动设备1100上。
当操作移动设备1100时,用户可能希望检索到电子邮件消息,以传送至移动设备1100。操作于移动设备1100上的消息应用程序1138还可以向消息服务器2268请求与用户帐户相关联的消息。消息应用程序1138可以被配置(由用户或管理员,可能地根据机构的信息技术(IT)策略)用于按照用户的指示、以某一预定时间间隔、或在发生某一预定事件时进行请求。在一些实现中,移动设备1100被分配了其自身的电子邮件地址,并在消息服务器2268接收到具体寻址到移动设备1100的消息时,将这些消息自动改变方向至移动设备1100。
消息管理服务器2272可用于具体提供对将由移动设备处理的消息(例如电子邮件消息)的管理的支持。通常,在消息仍存储在消息服务器2268上时,消息管理服务器2272可用于控制何时、是否、以及如何将消息发送至移动设备1100。消息管理服务器2272还有利于对移动设备1100上所构成的消息进行处理,将该消息发送至,用于随后的传送。
例如,消息管理服务器2272可以监控用户“邮箱”(例如消息服务器2268上的、与用户帐户相关联的消息存储器)的新电子邮件消息,并将用户可定义的滤波器应用于新消息,以确定是否以及如何将该消息中继至用户的移动设备1100。消息管理服务器2272还可以对新消息进行压缩和加密(例如使用诸如数据加密标准(DES)、三倍DES、或先进加密标准(AES)之类的加密技术),并通过共享网络基础设施2224和无线网络2200将其推送至移动设备1100。消息管理服务器2272还可以接收在移动设备1100上构成(例如使用三倍DES进行加密)的消息,对所构成的消息进行解密和解压,并在需要的情况下对构成的消息进行重新格式化,使得该消息看起来像是源自用户计算机2262a,并将所构成的消息重新路由至消息服务器2268,用于传送。
可以定义(例如由管理员根据IT策略)并由消息管理服务器2272实施与发送自移动设备1100和/或由移动设备1100接收的消息相关联的特定属性或约束。例如,上述特定属性或约束可以包括移动设备1100是否可以接收到加密的和/或带符号的消息和最小加密密钥大小、是否必须对出局消息进行加密和/或签名、以及是否要将发送自移动设备1100的所有安全消息的拷贝发送至预定拷贝地址。
消息管理服务器2272还适用于提供其它控制功能,例如仅将消息服务器2268上所存储的消息中的特定消息信息或预定部分(例如“块”)推送给移动设备1100。例如,在一些情况下,当移动设备1100最初从消息服务器2268接收到消息时,消息管理服务器2272可以仅将消息的第一部分推送给移动设备1100,该部分具有预定大小(例如2KB)。然后,用户可以请求消息管理服务器2272以类似大小的块(可能直到最大预定消息大小)将更多消息传送给移动设备1100。相应地,消息管理服务器2272有利于更好地控制数据类型以及传递至移动设备1100的数据量,并且有助于最小化带宽或其它资源的可能浪费。
移动数据服务器2274包括用于存储与公司相关的信息的任意其它服务器。移动数据服务器2274可以包括数据库、在线数据文献仓库、客户关系管理(CRM)系统、或企业资源计划(ERP)应用程序,但不局限于此。
联系服务器2276可以利用与移动设备1100上的地址簿相类似的方式来为用户提供联系人列表的信息。相应地,对于给定联系人,联系服务器2276可以包括联系人的名称、电话号码、工作地址和电子邮件地址等。联系服务器2276还可以提供全球地址列表,该列表包含针对于主机系统2250相关联的所有联系人的联系信息。
本领域的技术人员将理解,不需要在主机系统2250内的单独物理服务器上实现消息管理服务器2272、移动数据服务器2274、联系服务器2276、设备管理器模块2278、数据存储器2284、以及IT策略服务器2286。例如,与消息管理服务器2272相关联的某些或所有功能可以与消息服务器2268或主机系统2260内的一些其它服务器相结合。备选地,主机系统2250可以包括多个消息管理服务器2272,尤其是在需要支持大量移动设备的不同实现中。
备选地,在一些实施例中,IT策略服务器2286可以提供IT策略编辑器2280、IT用户属性编辑器2282、以及数据存储器2284。在一些情况下,IT策略服务器2286还可以提供设备管理器模块2278。IT策略服务器2286的处理器2288可用于执行用于提供可基于每一用户定制的IT策略数据的方法的各个步骤。处理器2288可以执行编辑器2280和2282。在一些情况下,编辑器2280和2282的功能可以由单一编辑器提供。在一些情况下,存储器单元2292可以提供数据存储器2284。
设备管理器模块2278给图形用户界面提供了IT管理器,IT管理器与图形用户界面相结合以配置针对移动设备1100的各种设置。如上面所提到的,IT管理器可以使用IT策略规则来定义移动设备1100上所允许的特定应用程序的行为,例如电话、web浏览器或即时通讯软件的使用。IT策略规则还可用于设定针对移动设备1100上的机构所需要的配置而设置的特定值,例如自动签名文本、WLAN/VoIP/VPN配置、安全需求(例如加密算法、口令规则等)、指定主题或允许在移动设备1100上运行的应用程序等。
上面所描述的仅是对实施例的原理的应用的例证。本领域的技术人员可以在不偏离这里所描述的实施例的精神和范围的前提下实现其它的布置和方法。
Claims (34)
1.一种用于在网络中的客户端-服务器系统中发送多媒体内容的方法,其中,所述多媒体内容包括多个图像对象,所述方法包括:
通过所述网络从服务器同时只发送所述多个图像对象的每个图像对象的第一预定部分,其中,所述多个图像对象的至少一个的第一预定部分包括按照第一质量水平重构的所述至少一个图像对象;以及
在发送了所述多个图像对象的每个图像对象的所述第一预定部分之后,连续地发送所述多个图像对象的至少一个图像对象的后续预定部分,
其中所述至少一个图像对象的后续预定部分的每一个包括图像精细数据,用于按照较高的质量水平重构所述至少一个图像对象。
2.根据权利要求1所述的方法,还包括:
接收与图像对象的发送相关的信息;以及
其中,对所述第一预定部分和后续预定部分的所述发送基于所接收到的信息。
3.根据权利要求2所述的方法,其中,与图像对象的发送相关的信息包括与要延迟发送的图像对象相关的信息。
4.根据权利要求2所述的方法,其中,与图像对象的发送相关的信息包括与发送图像对象的顺序相关的信息。
5.根据权利要求1所述的方法,其中,仅在接收到针对后续预定部分的请求之后,才执行后续预定部分的发送。
6.根据权利要求1所述的方法,还包括:
在发送之前,确定所述多个图像对象的任意一个是否适合于被分割成预定部分;以及
在发送之前,将所述多个图像对象的每个适合的图像对象分割成预定部分。
7.根据权利要求6所述的方法,还包括,在发送之前,对不适合于被分割的多个图像对象的至少一个图像对象进行压缩。
8.根据权利要求1所述的方法,还包括:
在接收到针对后续预定部分的请求之前,保持后续预定部分。
9.根据权利要求1所述的方法,其中,所述多个图像对象的至少一个图像对象包括所述多个图像对象的两个或更多个。
10.根据权利要求1所述的方法,其中,所述网络是无线网络,所述服务器是web服务器。
11.根据权利要求1所述的方法,其中,使用超文本传输协议连接来处理所述第一预定部分的发送,并在超文本传输协议连接关闭之后,使用另一预定协议连接来处理后续预定部分的发送。
12.根据权利要求1至11中任一项所述的方法,其中从JPEG、GIF和PNG图像中选择所述多个图像对象。
13.一种用于在网络中的客户端-服务器系统中接收多媒体内容的方法,其中,所述多媒体内容包括多个图像对象,所述方法包括:
通过所述网络在客户端处只接收所述多个图像对象的每个图像对象的预定部分,其中,所述多个图像对象的至少一个的所述预定部分包括按照第一质量水平的所述至少一个图像对象的重构;以及
在接收到所述多个图像对象的每个图像对象的预定部分之后,连续接收所述多个图像对象的至少一个图像对象的后续预定部分;
其中所述至少一个图像对象的后续预定部分的每一个包括图像精细数据,用于按照较高的质量水平重构所述至少一个图像对象。
14.根据权利要求13所述的方法,还包括:
在接收之前,发送针对多媒体内容的请求,其中所述请求包括与图像对象的发送相关的信息。
15.根据权利要求14所述的方法,其中,与图像对象的发送相关的信息包括与要延迟发送的图像对象相关的信息。
16.根据权利要求14所述的方法,其中,与图像对象的发送相关的信息包括与发送图像对象的顺序相关的信息。
17.根据权利要求13所述的方法,其中,仅在发送了针对后续预定部分的请求之后,才发生对后续预定部分的接收。
18.根据权利要求13所述的方法,其中,所述多个图像对象的至少一个图像对象包括所述多个图像对象的两个或更多个。
19.根据权利要求13所述的方法,其中,所述网络是无线网络,所述客户端是移动设备。
20.根据权利要求13所述的方法,其中,使用超文本传输协议连接来处理第一预定部分的接收,并在超文本传输协议连接关闭之后,使用另一预定协议连接来处理后续预定部分的接收。
21.根据权利要求13所述的方法,还包括:
在接收之前,确定所述多媒体内容是否可用于高速缓存;以及
其中,在所述多个图像对象的至少一个图像对象中每个图像对象的第一预定部分可用于高速缓存、但是所述多个图像对象的至少一个图像对象中每个图像对象的后续预定部分不可用于高速缓存的情况下,发送针对后续预定部分的请求,而不请求所述第一预定部分。
22.根据权利要求13至21中任一项所述的方法,其中从JPEG、GIF和PNG图像中选择所述多个图像对象。
23.一种用于通过网络来传送多媒体内容的系统,其中所述多媒体内
容包括多个图像对象,所述系统包括:
服务器侧子系统,配置用于:
通过网络同时只发送多个图像对象的每个图像对象的第一预定部分,其中,所述多个图像对象的至少一个的第一预定部分包括按照第一质量水平重构所述至少一个图像对象;以及
在发送了所述多个图像对象的每个图像对象的第一预定部分之后,连续地发送所述多个图像对象的所述至少一个图像对象的后续预定部分其中所述至少一个图像对象的后续预定部分的每一个包括图像精细数据,用于按照较高的质量水平重构所述至少一个图像对象;以及
客户端侧子系统,配置用于:
通过网络只接收所述多个图像对象的每个图像对象的第一预定部分;以及
在接收到所述多个图像对象的每个图像对象的第一预定部分之后,连续地接收所述多个图像对象的至少一个图像对象的后续预定部分。
24.根据权利要求23所述的系统,其中,所述客户端侧子系统还被配置用于在接收之前发送针对多媒体内容的请求,其中所述请求包括与图像对象的发送相关的信息,以及所述服务器侧子系统还被配置用于接收所述请求并根据所述请求来发送多媒体内容。
25.根据权利要求24所述的系统,其中,与图像对象的发送相关的信息包括与要延迟发送的图像对象相关的信息。
26.根据权利要求24所述的系统,其中,与图像对象的发送相关的信息包括与发送图像对象的顺序相关的信息。
27.根据权利要求23所述的系统,其中,所述服务器侧子系统被配置用于仅在从所述客户端侧子系统接收到针对后续预定部分的请求之后才发送后续预定部分,以及所述客户端侧子系统被配置用于基于预定因素来发送针对所述后续预定部分的请求。
28.根据权利要求23所述的系统,其中,所述服务器侧子系统还被配置用于:
在发送之前,确定所述多个图像对象的任意一个是否适合于被分割成预定部分;以及
在发送之前,将所述多个图像对象的每个适合的图像对象分割成预定部分。
29.根据权利要求28所述的系统,其中,所述服务器侧子系统还被配置用于,在发送之前,对不适合于被分割的多个图像对象中的至少一个图像对象进行压缩。
30.根据权利要求23所述的系统,其中,所述网络是无线网络。
31.根据权利要求23所述的系统,其中,所述服务器侧子系统包括web服务器。
32.根据权利要求23所述的系统,其中,所述客户端侧子系统包括web浏览器。
33.根据权利要求23所述的系统,其中,所述客户端侧子系统包括移动设备。
34.根据权利要求23至33中任一项所述的系统,其中从JPEG、GIF和PNG图像中选择所述多个图像对象。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US72048705P | 2005-09-27 | 2005-09-27 | |
US60/720,487 | 2005-09-27 | ||
PCT/CA2006/001588 WO2007036032A1 (en) | 2005-09-27 | 2006-09-27 | System and method for progressive delivery of multimedia objects |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101273604A CN101273604A (zh) | 2008-09-24 |
CN101273604B true CN101273604B (zh) | 2011-11-09 |
Family
ID=37899316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800355407A Active CN101273604B (zh) | 2005-09-27 | 2006-09-27 | 用于多媒体对象的渐进式传送的系统和方法 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1929737B1 (zh) |
CN (1) | CN101273604B (zh) |
CA (1) | CA2620929C (zh) |
WO (1) | WO2007036032A1 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110019662A1 (en) | 2007-06-28 | 2011-01-27 | Rebelvox Llc | Method for downloading and using a communication application through a web browser |
AU2013201918B2 (en) * | 2007-06-28 | 2015-07-09 | Meta Platforms, Inc. | Multimedia communications device |
US8180029B2 (en) | 2007-06-28 | 2012-05-15 | Voxer Ip Llc | Telecommunication and multimedia management method and apparatus |
US11095583B2 (en) | 2007-06-28 | 2021-08-17 | Voxer Ip Llc | Real-time messaging method and apparatus |
US9178916B2 (en) | 2007-06-28 | 2015-11-03 | Voxer Ip Llc | Real-time messaging method and apparatus |
US20090089448A1 (en) * | 2007-09-28 | 2009-04-02 | David Sze | Mobile browser with zoom operations using progressive image download |
CN101742370B (zh) * | 2008-11-14 | 2013-01-30 | 华为技术有限公司 | 通信系统中呼叫处理的方法、网络节点和应用服务器 |
WO2012060769A1 (en) * | 2010-11-03 | 2012-05-10 | Scalado Ab | Progressive multimedia synchronization |
CN102411603B (zh) * | 2011-08-15 | 2014-09-03 | 北京神州泰岳软件股份有限公司 | 大屏幕展示信息的方法 |
US20140089778A1 (en) * | 2012-09-24 | 2014-03-27 | Amazon Technologies, Inc | Progressive Image Rendering Utilizing Data URI Enhancements |
US9900166B2 (en) | 2013-04-12 | 2018-02-20 | Qualcomm Incorporated | Methods for delivery of flows of objects over broadcast/multicast enabled networks |
CN105208403B (zh) * | 2015-08-27 | 2019-04-19 | 金蝶软件(中国)有限公司 | 一种图像传输方法、服务器以及终端 |
CN105611341B (zh) * | 2015-12-21 | 2019-02-22 | 小米科技有限责任公司 | 一种传输图像的方法、装置及系统 |
JP6752349B1 (ja) * | 2019-12-26 | 2020-09-09 | 株式会社ドワンゴ | コンテンツ配信システム、コンテンツ配信方法、およびコンテンツ配信プログラム |
US11734381B2 (en) * | 2021-12-07 | 2023-08-22 | Servicenow, Inc. | Efficient downloading of related documents |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1455541A (zh) * | 2002-05-02 | 2003-11-12 | 富士施乐株式会社 | 数据传送方法及系统 |
US6684088B1 (en) * | 2000-03-01 | 2004-01-27 | Axi Mobile Ltd. | System and method for displaying electronic mail messages on a low bandwidth device |
US6801947B1 (en) * | 2000-08-01 | 2004-10-05 | Nortel Networks Ltd | Method and apparatus for broadcasting media objects with guaranteed quality of service |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8090761B2 (en) * | 2002-07-12 | 2012-01-03 | Hewlett-Packard Development Company, L.P. | Storage and distribution of segmented media data |
US20040205165A1 (en) * | 2003-01-21 | 2004-10-14 | Eplication Networks Ltd. | Method for improving quality of service from an Internet server employing heuristic optimization of downloading |
-
2006
- 2006-09-27 CA CA2620929A patent/CA2620929C/en active Active
- 2006-09-27 EP EP06790752.7A patent/EP1929737B1/en active Active
- 2006-09-27 WO PCT/CA2006/001588 patent/WO2007036032A1/en active Application Filing
- 2006-09-27 CN CN2006800355407A patent/CN101273604B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6684088B1 (en) * | 2000-03-01 | 2004-01-27 | Axi Mobile Ltd. | System and method for displaying electronic mail messages on a low bandwidth device |
US6801947B1 (en) * | 2000-08-01 | 2004-10-05 | Nortel Networks Ltd | Method and apparatus for broadcasting media objects with guaranteed quality of service |
CN1455541A (zh) * | 2002-05-02 | 2003-11-12 | 富士施乐株式会社 | 数据传送方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101273604A (zh) | 2008-09-24 |
CA2620929C (en) | 2015-11-24 |
CA2620929A1 (en) | 2007-04-05 |
EP1929737A4 (en) | 2009-01-07 |
EP1929737B1 (en) | 2020-11-04 |
WO2007036032A1 (en) | 2007-04-05 |
EP1929737A1 (en) | 2008-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101273604B (zh) | 用于多媒体对象的渐进式传送的系统和方法 | |
US8775662B2 (en) | System and method for progressive delivery of multimedia objects | |
CN100505702C (zh) | 用于集成电子邮件帐户的系统和方法 | |
US6937588B2 (en) | System and method for providing wireless application protocol service through internet | |
US20080034063A1 (en) | Method and system for retrieving a document associated with a message received on a mobile device | |
Bodic | Mobile messaging technologies and services: SMS, EMS and MMS | |
EP1182845A2 (en) | Information delivery system and information delivery method | |
KR20040018392A (ko) | 데이터 정보 획득 방법 및 장치 | |
GB2435146A (en) | Group communications | |
JP2004537104A (ja) | データオブジェクトを共有するためのモバイルデバイスをリモートで利用するための方法およびシステム | |
US20060212818A1 (en) | Method for providing multimedia message | |
CN101617308A (zh) | 用于共享媒体对象的方法和设备 | |
EP2232796B1 (en) | System and method for processing messages | |
CN104025016A (zh) | 移动内容递送 | |
BRPI0614202A2 (pt) | método para atualizar conteúdo de informação da uma página da web; método para fornecer um servidor de rede com informação sobre atualização da página da web proveniente do terminal; servidor da rede que mantém uma página da rede; terminal para manter uma conexão com o servidor da rede que mantém a página da rede; produto de programa de computador armazenado em um meio fìsico legìvel pelo computador e executável em um dispositivo de processamento de dados para manter a página da rede; e produto de programa de computador, armazenado em um meio fìsico legìvel pelo computador e executável em um dispositivo de processamento de dados, para fornecer um servidor de rede com informação sobre atualizações feitas na página da rede | |
CN1917465B (zh) | 一种实现流媒体互动的方法及系统 | |
JP2001051928A (ja) | 情報配信システム及びその配信方法 | |
KR100492415B1 (ko) | 모바일 폰에서의 3차원 아바타 생성 및 이용 방법 | |
CN101494784B (zh) | 在离散余弦变换域中以任意比率对图像大小进行调整 | |
US8185607B1 (en) | Querying wireless network offerings | |
JP2009521155A (ja) | 電気通信システムにおける情報流通 | |
EP1213883B1 (en) | Wireless protocol system combined with SMS in mobile environment and a method of providing internet content | |
Jiang et al. | Incorporating proxy services into wide area cellular IP networks | |
Van Gurp et al. | Mobile service oriented architectures (mosoa) | |
US20060069790A1 (en) | Content presentation adaptation |
Legal Events
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 |
Effective date of registration: 20211130 Address after: Ontario, Canada Patentee after: BlackBerry Ltd. Address before: Ontario, Canada Patentee before: Jet Data Co.,Ltd. |
|
TR01 | Transfer of patent right |