用于带有异种客户机的客户机服务器系统的方法和装置的制作方法

文档序号:6419089阅读:299来源:国知局
专利名称:用于带有异种客户机的客户机服务器系统的方法和装置的制作方法
背景技术
本发明总的涉及客户机服务器技术,尤其涉及带有根据可用资源自动更改的向客户机传送的应用(application)的客户机服务器系统。
本申请是1997年11月14日申请的待审美国专利申请S/N 08/970,735的部分继续申请,特此引用,以供参考。
服务器计算机可以通过许多不同类型的媒介向许多不同类型的客户机传送各种应用。例如,服务器可以通过电缆将一页内容传送到打印机,通过无线电波将一条短语传送到寻呼机,通过微波将音频消息传送到蜂窝式电话,通过红外幅射将网页传送到联到因特网的计算机或掌上型计算机,通过光纤将电影传送到电视机,或通过双绞线对将开-关命令传送到家里的微波炉或中央空调系统的开关。
这些客户机或电器的每一种都具有不同的能力。它们中的一些可以具有功能相对强大的微处理器和存储容量,譬如掌上型计算机。其它一些可以是计算和存储能力差的超瘦客户机,譬如电视机。传输媒介可以大不相同。例如,一些具有非常宽的带宽,譬如光纤;而另一些却只有窄的带宽,譬如双绞线对。此外,这些应用也可以是各种各样的。例如,电影要求宽的带宽,低的等待时间,并且具有相当好的容错能力;但对开关发出的开-关命令要绝对准确,尽管对带宽要求较低。
通常,有特定的手段将各种类型的应用通过特定的媒介传送给特定的客户机。例如,如果你想要打印一页内容,你就启动特定的打印机驱动器打印那页内容;如果你想要将网页传送到你的联网计算机,你就用某种预定的比率压缩你的网页,并遵从特定的网络协议传送它。服务器调用不同的软件程序来完成这些不同任务。
无论是联网计算机还是电视机请求交互式应用,这是一种你可以与之交互的应用,譬如网页,服务器通常都要遵从同一预设网络协议来传送交互式应用。换言之,例如,如果在预设协议之后,传输媒介发生了改变,那么,服务器没有足够的智慧针对此改变动态地修改协议。在服务器这方面没有智能的自适应能力。服务器将不知道,或不会关心用户正坐在离联网计算机上的网页一英尺远的地方,还是坐在离电视机上的网页六英尺远的地方。
服务器不但缺乏自适应能力,而且它也没有能力响应来自某些客户机的某些请求。例如,该应用是推式应用(push application),这是一种由用户根据她的个人资料设置(profile)确定的应用,譬如在每天下午1点报出XEROX的股票价格。服务器将不能自动响应对股票报价的寻呼机请求和对天气报告的标准电话请求两者。现在典型的做法是让分别的服务器专门处理这些任务的每一种。
从上文中可明显看出,仍然存在对自动处理这样的各种应用、客户机能力和传输媒介的装置和方法的需求,以便使不同的应用可以根据从传输媒介和客户机可用的资源自动得到更改。
本发明是关于针对下列一个或几个方面自动更改应用的方法和装置的应用本身、请求应用的客户机的能力和传送应用的传输媒介。客户机可以是向你显示每天新的日程的掌上型计算机、在下午6点自动打开为你炖鸡的微波炉、或为你播放你喜欢看的James Bond电影的电视机。这些客户机的每一种都具有与不同传输媒介相联系的不同能力,每一种应用都具有其各自的特征。根据本发明,服务器计算机针对可用资源自动更改特定的应用,以便使资源的效益最大化。
在一个实施例中,该应用可以是交互式的,譬如用户可以与之交互的网页。此实施例包括服务器中的服务器装置。服务器装置包括电器专用的(appliance-specific)转换器和自适应传输转换器。针对客户机对服务器中交互式应用的请求,将电器专用转换器配置成可以根据客户机和应用来更改(modify)应用,以产生电器专用的输出。此输出依客户机和应用本身自动更改。与电器专用转换器耦合的自适应传输转换器被配置成更改电器专用输出。根据应用和相应的传输媒介再次进行更改。在更改之后,产生适配的输出,并通过媒介将其传送到客户机。然后,客户机解码该适配的输出,以产生适合于该客户机的交互式应用的更改后的版本。
在另一个实施例中,该应用可以是推式的。推式应用是由用户预定的,譬如来自用户的个人资料设置的应用。根据她的喜好,如在她的个人资料设置中所示的喜好,可以将特定的应用传送给她。例如,在周末,她喜欢在时早上9点醒来,并喜欢听甲壳虫乐队演奏的音乐。因此,每个星期六和星期天早上,服务器在15分钟内选择甲壳虫乐队演唱的歌曲,将它压缩,并将它传送到她床边的扬声器。这个实施例也包括服务器装置,带有它相应的电器专用转换器和自适应传输转换器。
还有一个实施例包括客户机中的客户机装置。客户机装置包括解码器,用于从适配的输出中产生应用的更改后版本。适配的输出是由上述电器专用转换器和自适应传输转换器之一产生的。
根据本发明,各种应用根据可用资源自动映射到各种客户机上。在一个实施例中,资源包括带宽、可接受差错率、传输媒介的等待时间、和客户机的处理能力和存储容量。
借助于本发明,不同类型的客户机可以通过同一传输媒介彼此连接,譬如高速因特网连接。服务器可以根据接收应用的客户机和根据应用本身来更改应用。此外,借助于本发明,不同类型的客户机可以通过不同的媒介彼此连接,譬如有线的和无线的,数字的和模拟的媒介;因此服务器可以适应这些应用。
客户机可以是超瘦的,其计算能力差且存储容量小,因为服务器已经适应了或更改了用于该客户机的应用。换言之,客户机可以是非常低廉的装置。
此外,由于应用可以由服务器更改成适合于特定的客户机,因此,相同内容的材料可以用于不同的客户机。例如,本发明可以对联网计算机和电视机使用相同的因特网内容。这些内容可以实时传送到不同的客户机。
借助于本发明,使不同的应用适应于新类型的客户机的开发时间可以显著缩短。这些改变可以根据本发明通过软件修改来实现。这本身又能够使新类型客户机非常迅速地广泛占领市场。
请注意,选择本说明书中使用的语言主要是为了易读性和说明性的目的,并不是选来划定或限定本发明的主题的。此外,在说明书中描述的特征和优点并不是穷举的。对本领域普通技术人员来说,通过给合附图对本发明的优选实施例进行详细描述,本发明的其它特征和优点将更加清楚。
附图简述

图1显示了可应用于本发明的应用的例子;图2显示了本发明通过传输媒介连接的服务器方和客户机方的例子;图3显示了实现本发明一个实施例的一组步骤;图4显示了本发明中电器专用转换器的例子;图5显示了本发明的自适应传输转换器的一个实施例;图6显示了用于本发明的传输媒介的特征的例子;图7显示了本发明中根据客户机的计算能力和输入数据类型,选择压缩算法的方式的例子;图8A-B显示了本发明中在不同条件下由自适应打包器(packetizer)选择的网络协议的例子;和图9A-B图示了本发明用于万维网(Web)浏览应用的判决树的例子。
在图1-9中相同的标号表示所有图中相似的单元。下面参照图1-9讨论本发明的实施例。但本领域普通技术人员容易明白,这里参照附图给出的详细描述只是为了说明的目的,而本发明并不局限于这些有限实施例的范围。
发明详述本发明可应用于服务器-客户机环境。服务器可以通过相应的传输媒介与一个或多个客户机相连接。服务器可以是个人计算机或其它类型的计算机,通常比客户机具有更强大的计算能力和更大的存储容量。客户机可以是许多不同类型的计算引擎;例如,它们可以是联网计算机、电视机、掌上型计算机、微波炉、电话或寻呼机。因此,客户机的能力可以是相当灵活的,只要它拥有解码器解码由服务器传送的信息即可。在一个实施例中,客户机还含有某种形式的用户界面装置,以与用户通信所解码的信息。
在一个例子中,客户机请求一应用。这可以通过用户启动他的机顶盒来实现。它可能想要通过他的电视机获得YAHOO网页。这种类型的应用称为交互式应用,如图1的102所示。在这样的应用中,用户可以与应用交互。这与只在电视机上被动地观看STAR TREK(星际航行)情节不同,因为用户不能改变情节中的任何东西。无论如何,将请求发送到将访问该网页的服务器。然后,服务器使访问的网页适应于电视机,这样的适应依赖于许多要素,例如,网页本身,譬如网页包含了文本、图像、视频、还是它们的某种组合;和可用资源,譬如将网页载送到客户机的传输媒介、和客户机的能力。在一个实施例中,网页根据MPEGl(运动图象专家组)技术规范和RTP网络协议来更改(modify),并通过因特网连接从服务器发送到电视机的机顶盒。在这种情况下,客户机是电视机和机顶盒,它接收发送的信号,并解码此信号。解码后的信号通常是原始应用的更改版本。换言之,解码后的应用与服务器中的应用不完全相同。然后,机顶盒在电视机上显示网页,使用户能够与之交互。
在另一个实施例中,用户首先将他的喜好输入到服务器。这可以是要在他寻呼机屏幕上显示的、每场比赛结束后LA湖人(Lakers)蓝球队的得分。这样一个信息也称为推式应用,如图1中的104所示;它是由用户预设的。当得分出来时,服务器可以通过无线电波将其发送到他的寻呼机。可以根据应用本身和可用资源的至少一个特征来再次对该应用进行适配。
图2显示了本发明通过传输媒介154连接的服务器方和客户机方的一个实施例。图3显示了实现本发明一个实施例的一组步骤175。
在一个实施例中,服务器方包括电器专用转换器150和自适应传输转换器152。一般地讲,电器专用转换器150根据客户机的能力来更改应用(步骤177);自适应传输转换器152根据传输媒介154进一步更改应用(步骤181)。更改也可以取决于应用本身,例如,以与一篇写作文本相比不同的方式来更改音频信号。在一个实施例中,客户机包括解码器156和用户界面158。解码器156解释或解码传送的信号(步骤185),它可以事先修整为适合解码器156的能力。然后,用户界面158向用户显示更改后的应用187。
在一个实施例中,电器专用转换器150根据应用与客户机相关联的至少一个特征来更改该应用。为了说明的目的,下面给出四种不同类型的应用,它们是(a)Document(文档)或Doc,它包括文本和以其相应格式的图像;(b)Internet(因特网),它包括形成流的多媒体和plugins(插件程序);(c)Email(电子邮件);(d)Form(表单),它包括用于用户输入信息的具有不同格式的不同类型的表。这些应用的每一种都有自己的特征,并可以根据客户机作不同更改。
图4显示了本发明中电器专用转换器150的例子;在本说明书中,附加有客户机的应用的术语表示用于此应用和此客户机的电器专用转换器150。例如,DocTV表示调整用于电视观看的文档的电器专用转换器。这个转换器可以包括许多子转换器,例如取决于所用的电视来改变图像格式的用于TV的格式子转换器。这可以改变文本的大小,以便使用户可以在六英尺之外观看文本。因此,需要一个或多个这样的子转换器使应用适合于电视观看。请注意,通常观看电视的距离是六英尺,甚至更远,而计算机监视器离观看者却小于一英尺。其它子转换器根据需要,可以是根据客户机来改变文本特征的文本子转换器、根据依客户机显示能力来改变图像特征的图像子转换器和提高应用在客户机上的可使用性的用户界面子转换器。电器专用转换器150可以动态地附加一个或多个子转换器,以相应地更改应用。
图4显示了这样子转换器的附加例子。例如,如果某人正在利用带有显示屏的电话浏览web,那么,电器专用转换器150可以是DocSPhone 200,或InternetSPone 202,SHhone中的S表示屏幕。如果该人只是使用电话来被动地接收消息,则使用DocSPhone;而如果该人正在使用电话与消息进行交互,如与网页交互,则使用InternetSPhone。另一个例子是,如果该人正在使用电话取电子邮件,电器专用转换器150可以是EmailSPone 204或DocSPone。EmailSPone 204具有附加的智能,因为该电话可以具有用于电子邮件的软件管理系统。作为最后的例子,如果电话用于电子商务或E-商务,电器专用转换器150可以是FormSPhone 206,它可以使用户编辑表(form),如从web上订购书籍那样。
有不同的方式制作这样的电器专用转换器150。一种方式是基于1997年11月14日申请的待审美国专利申请S/N 08/970,735公开的方法和装置,动态地产生这样的转换器。另一种方法可以通过直接映射。例如,可以将HTML(超文本标记语言)的页面直接改变成或映射成位图。
在一个实施例中,来自电器专用转换器150的输出是电器专用输出179,它由自适应传输转换器152作进一步调整。
自适应传输转换器152根据应用和传输媒介154的特征,更改电器专用输出179,以产生适配的输出183。在一个实施例中,要在电器专用输出179上进行操作的压缩算法和网络协议取决于应用的至少一个特征,如所需应用的可靠性或差错率、和传输媒介154的速度或带宽。在对电器专用输出179加以更改产生适配的输出183之后,服务器通过传输媒介将适配的输出183发送到客户机。
图5显示了本发明自适应传输转换器的一个实施例。它包括多模式压缩器250和自适应打包器252。压缩器选择适当的压缩算法以压缩电器专用输出179,而自适应打包器252选择网络协议以产生适配的输出183。
图6显示了用于本发明的传输媒介的特征的例子。不同的特征可以是带宽、差错率和等待时间。等待时间表示客户机要等待多长时间才能获得应用。差错率高的媒介意味着通过这样的传输媒介154的数据往往导致更多的差错。为了弥补这样的缺陷,必须重新发送该应用以确保已经接收到正确信号。这增加了等待时间。例如,通过空中无线模拟信号发送的模拟信号300具有高差错率,因为信号干扰可以很高。由于信号必须发送数次以确保精确度,因此信号的等待时间增加了。根据要使用的应用和传输媒介154,自适应传输转换器152通过例如选择适当的压缩算法和网络协议,自动考虑这样的变化。
在一个实施例中,多模式压缩器250针对应用、传输媒介154和客户机自动选择压缩算法。要从服务器发送到客户机的数据的形式级别越高,所需的带宽就越窄,但客户机必须具有更大的计算能力。例如,对于ASCII文本(较高级形式数据)和位图(较低级形式数据),ASCII文本文件占用较窄带宽来发送,但客户机则需要能理解ASCII文本的解码能力。另一方面,如果文件以位图方式发送,则客户机接收什么显示什么,但发送的数据量显著增大。如果客户机具有解码压缩ASCII文本的能力,和如果传输媒介154具有窄的带宽,那么,最好在发送前,压缩ASCII文本。这确保了资源的更有效利用。
在一个实施例中,用于选择压缩算法的参数包括(a)输入数据类型,可以是文本、图形、自然图像、音频或视频。注意,应用可以含有数种不同的数据类型,如在同一页上可以有文本和图像;
(b)速率-失真要求,或带宽与质量之间的折衷;(c)传输媒介154,它影响带宽、差错率和等待时间;(d)服务器和客户机的能力,如处理能力和可用存储容量。
许多压缩算法适用于本发明。它们包括Lempel-Ziv(LZ)、游程长度编码(Run Length Encoding,RLE)、分层矢量量化(Hierarchical VectorQuantization,HVQ)、ADPCM(自适应脉码调制)、MPEGl、MPEG2、H263和有条件填充分层矢量量化(Hierarchical Vector Quantization withConditional Repleni shment,HVQCR)。
图7显示了因为解码器156可能需要解压缩适配的输出183,所以根据客户机的输入数据类型和计算能力选择压缩算法的方式。请注意,正是由于是由服务器或多模式压缩器250进行压缩,因此,必须也要考虑到服务器的计算能力。但是,通常客户机的能力不如服务器那么强。如果客户机有足够的能力解压缩,服务器就应该有足够的能力压缩。
在一个实施例中,自适应传输转换器152不仅选择压缩算法,而且它还选择网络协议。这可以通过自适应打包器252来实现。为了说明本发明,下面考虑三种协议,它们是TCP(传输控制协议)、UDP(用户数据报协议)和RTP。
图8A-B显示了在不同条件下由自适应打包器252选择的网络协议的例子,图8A用于低差错率,图8B用于高差错率。在一个实施例中,以自适应的方式再次进行选择,该选择是根据应用的数据类型和传输媒介154作出的。例如,如果应用是一篇文本,并且必须要准确,那么差错率必须要低。如果传输媒介存在固有的高等待时间,那么,如图8A所示,选择UDP。另一方面,如果应用是视频流,那么差错率可以较高,但等待时间应该较短,因为如果在帧之间存在可察觉的间隙,观众的喜欢程度就会下降。根据图8B,选择RTP。
在一个实施例中,客户机可以是超瘦的。因为服务器已经适配或更改了或用于客户机的应用,客户机只需要少量的计算能力和存储容量。这种类型的客户机可以是非常低廉的。TV机顶盒可以作为超瘦客户机的例子,它能够处理功能强大的应用,譬如,以流形式的音频和视频、Java小应用程序和ActiveX控制。这样的盒子可能只需要16MHz 80386微处理器的计算能力,以及1Mbyte存储器、和可以适用于100Kbyte存储器的嵌入式软件。
图9A-B图示了本发明用于Web浏览应用400的判决树的例子。如图9A所示,如果电器或客户机是电视机402,那么电器专用转换器150将选择DocTV和InternetTV的子转换器。来自电器专用转换器150的输出进一步得到调整,如图9B所示。例如,应用的一部分是一篇文本,因此数据类型404是文本406。此外,传输媒介154、或连接408是有线LAN(局域网)410,拥有10兆位每秒(Mbps)的带宽。进一步假定电器的计算能力低下,譬如,少于10百万条指令每秒(Mips)。然后,沿着判决树,自适应传输转换器152选择RLE作为压缩算法,和选择UDP作为网络协议。在更改之后,将输出通过有线LAN发送到电器,在此情况下,该电器是电视机402。
本发明的另一个实施例包括一种新类型的网络协议。这是一种应用层协议,称为VAP。它在诸如TCP、UDP或RTP之类的网络协议之上运行。VAP包括两种分组类型,回应数据对象(Rendered Data Object,RDO)和客户机数据对象(Client Data Object,CDO)。RDO是响应于CDO请求从服务器发送到客户机的。
RDO特征包括如下(a)每个RDO分组是自含式的,因为可以根据每个RDO独立地解码和再现输出部分。这种特征尤其适合于长等待时间或高差错率的情况。它也允许数据包不按顺序传送;(b)每个RDO包含有关屏幕激活区和相应动作的完整信息;(c)RCO分组包含有关所使用压缩算法的信息;(d)VAP允许在客户机处对输出的增量的重构。这适用于实现智能装载,通过给它们迅速提供一些数据这种智能装载能提高用户经验。RDO分组包含包括透明性信息的、有关重构层的信息。
CDO特征包括如下(a)每个CDO分组包含电器标识符(id),它标识客户机,并由VAP指定。它用于确定客户机的能力,以便使服务器相应地作出响应。
(b)每个CDO分组包含动作和相应的数据。
对本领域普通技术人员来说,通过对本说明书的思考或对本文所公开的发明的实施,本发明的其它实施例是显然的。本说明书和所举的例子只是用作示例,本发明实际的范围和精神应由如下的权利要求书所限定。
权利要求
1.一种在服务器中的服务器装置,用于将交互式应用通过传输媒介传送到客户机,该装置包括电器专用转换器,针对客户机对交互式应用的请求,被配置成根据客户机的至少一个特征和应用的至少一个特征来更改应用,以产生电器专用输出;和与所述电器专用转换器耦合的自适应传输转换器,被配置成根据应用的至少一个特征和传输媒介的至少一个特征来更改电器专用输出,以产生要通过所述媒介传送到客户机的适配的输出,所述客户机解码所述适配的输出以产生交互式应用的更改后的版本。
2.如权利要求1所述的服务器装置,其中自适应传输转换器包括压缩电器专用输出的压缩器、和为所述电器专用输出设置网络协议的打包器。
3.如权利要求2所述的服务器装置,其中由所述压缩器进行的压缩取决于客户机的能力。
4.如权利要求2所述的服务器装置,其中由所述压缩器进行的压缩取决于传输媒介的带宽。
5.如权利要求2所述的服务器装置,其中由所述压缩器进行的压缩取决于传输媒介的差错率。
6.如权利要求2所述的服务器装置,其中所设置的协议取决于针对所述应用的所述差错率和等待时间。
7.一种在服务器中的服务器装置,用于将推式应用通过传输媒介传送到客户机,该装置包括电器专用转换器,被配置成根据客户机的至少一个特征和应用的至少一个特征来更改推式应用,以产生电器专用输出;和与所述电器专用转换器耦合的自适应传输转换器,被配置成根据应用的至少一个特征和传输媒介的至少一个特征来更改电器专用输出,以产生要通过所述媒介传送到客户机的适配的输出,所述客户机解码所述适配的输出以产生推式应用的更改后版本。
8.一种在客户机中的客户机装置,用于产生通过传输媒介从服务器接收的推式应用的更改后版本,该装置包括解码器,用于从适配的输出中产生推式应用的更改后版本,所述适配的输出是由服务器中的服务器装置产生的,以便使所述服务器根据客户机的至少一个特征和应用的至少一个特征来更改应用,以产生电器专用输出;和根据应用的至少一个特征和传输媒介的至少一个特征来更改电器专用输出,以产生要通过传输媒介传送到所述客户机的适配的输出。
9.一种在客户机中的客户机装置,用于产生通过传输媒介从服务器接收的交互式应用的更改后版本,该装置包括解码器,用于从适配的输出中产生交互式应用的更改后版本,所述适配的输出是由服务器中的服务器装置产生的,以便使所述服务器装置针对客户机对交互式应用的请求,根据客户机的至少一个特征和应用的至少一个特征来更改应用,以产生电器专用输出;和根据应用的至少一个特征和传输媒介的至少一个特征来更改电器专用输出,以产生要通过所述媒介传送到客户机的适配的输出。
10.一种由服务器更改要通过传输媒介传送到客户机的交互式应用的方法,该方法包括下列步骤针对客户机对交互式应用的请求,根据客户机的至少一个特征和应用的至少一个特征来更改应用,以产生电器专用输出;和根据应用的至少一个特征和传输媒介的至少一个特征来更改电器专用输出,以产生要通过所述媒介传送到客户机的适配的输出,所述客户机解码所述适配的输出以产生交互式应用的更改后版本。
11.一种由服务器更改要通过传输媒介传送到客户机的推式应用的方法,该方法包括下列步骤根据客户机的至少一个特征和应用的至少一个特征来更改推式应用,以产生电器专用输出;和根据应用的至少一个特征和传输媒介的至少一个特征来更改电器专用输出,以产生要通过所述媒介传送到客户机的适配的输出,所述客户机解码所述适配的输出以产生推式应用的更改后版本。
12.一种由客户机产生通过传输媒介从服务器接收的推式应用的更改后版本的方法,该方法包括下列步骤解码适配的输出以产生推式应用的更改后版本,其中所述适配的输出是通过下列步骤产生的根据客户机的至少一个特征和应用的至少一个特征来更改应用,以产生电器专用输出;和根据应用的至少一个特征和传输媒介的至少一个特征来更改电器专用输出,以产生要通过传输媒介传送到所述客户机的适配的输出。
13.一种由客户机产生通过传输媒介从服务器接收的交互式应用的更改版本的方法,该方法包括下列步骤解码适配的输出以产生交互式应用的更改后版本,其中所述适配的输出是通过下列步骤产生的针对客户机对交互式应用的请求,根据客户机的至少一个特征和应用的至少一个特征来更改应用,以产生电器专用输出;和根据应用的至少一个特征和传输媒介的至少一个特征来更改电器专用输出,以产生要通过所述媒介传送到客户机的适配的输出。
全文摘要
通过传输媒介将应用传送到客户机的方法和装置。该应用可以是交互式应用,该装置包括电器专用转换器和自适应传输转换器。针对客户机对服务器中交互式应用的请求,将电器专用转换器配置成可以根据客户机的至少一个特征和应用的至少一个特征来更改应用,以产生电器专用输出。根据应用的至少一个特征和传输媒介的至少一个特征,将自适应传输转换器配置成更改电器专用输出,以产生适配的输出。通过媒介将该输出传送到客户机,该客户机包括解码器和用户界面。解码器解码适配的输出,以产生由通过用户界面的一方使用的交互式应用的更改后版本。在另一实施例中该应用可以是推式应用。
文档编号G06F13/00GK1312995SQ99809735
公开日2001年9月12日 申请日期1999年6月11日 优先权日1998年6月17日
发明者莫汉·维什瓦纳思, 阿努拉格·门德赫克 申请人:雅虎公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1