用于客户和自适应同步和转换服务器的方法、装置的制作方法

文档序号:6417066阅读:206来源:国知局
专利名称:用于客户和自适应同步和转换服务器的方法、装置的制作方法
技术领域
本发明通常涉及信息管理系统中客户数据和数据复制品之间的更新同步和/或转换处理。
随着半导体、存储和显示技术的快速发展,可能只是偶尔连到网络的手提设备或移动设备正日益普及。诸如3Com的PALM PILOTTM的移动设备所用的方式也变得非常通用。例如,PALM PILOTTM用户可能有与办公室桌面电脑的Lotus NOTESTM电子信箱系统同步的电子信箱应用。PALM PILOTTM中还可能有股票开盘应用,它通过与位于互联网的著名股票开盘网址同步而得到更新。还可能有与家庭PC财政软件同步的PALM PILOTTM的开支应用。因此,一个设备中的各种手提设备应用需要与网络计算机上运行的各种信息管理系统的不同应用(例如,Lotus NOTESTM、Microsoft EXCHANGETM、文件系统、相关数据库、面向目标的数据库)同步是非常可能的。还有可能一个手提设备应用(例如电子信箱)对于不同的手提设备(例如,PALM PILOTTM、夏普的ZAURUSTM、Psion plc的PSIONTM和运行Microsoft WINDOWS CETM的各种其它掌上设备)有不同的版本。
因为诸如PALM PILOTTM的手提设备典型地只是偶尔连到网络而且连接只持续较短的时间,所以手提设备应用和各种网络计算机中它们的对应物之间的同步处理非常有效是重要的(以便当手提设备连到网络时可以成功地完成同步处理)。由于手提设备典型地提供较少的CPU功率和较少的计算存储器,所以通常在手提设备中不进行同步处理。
这里,负责(hosting)来自手提设备的数据复制品的计算机叫做复制品主机或复制品源。因为手提设备通常具有少于复制品主机的计算功率和存储器,所以手提设备典型地在它们的复制品主机即桌面PC中处理同步。典型地,首先通过按手提设备的按钮(例如,PALMPILOTTM的HotSync按钮)开始同步。在按下按钮后,复制品主机的同步管理器软件(例如,桌面个人电脑(PC)的PALM PILOTTM的HotSync)立即接管同步处理。在PALM PILOTTM的情况下,HotSync管理器通过执行特定于应用的程序(叫做PALM PILOTTM的管道)来处理PALMPILOTTM应用的同步,该程序通过特定于应用的逻辑在PALM PILOTTM和桌面PC之间使应用同步。如果多个应用需要同步,则HotSync管理器顺序执行每个它们相应的管道。根据该方案,总是在一个PC和一个手提设备之间处理同步。不能得到多个手提设备和一个PC之间的同时同步。
通常来说,直接在复制品主机中进行同步处理是非常有限的。原因在于存在多个每个可以为许多不同手提设备(例如,PALM PILOTTM、ZAURUSTM、PSIONTM)所共享的应用。每个应用对于每个不同的设备需要不同的同步逻辑。为正确处理所有应用和所有设备的同步,复制品主机需要安装和管理许多不同版本的同步处理以便处理不同的手提设备。因此,在复制品主机进行同步处理对不同手提设备和它们的同步处理的管理产生繁重的负荷。对于许多复制品主机,它们最重要(mission-critical)的任务不是与各种手提设备同步,而是要像诸如数据库服务器、群件服务器的信息服务器,或个人桌面计算设备而运行。因此对它们进行同步不再是它们最重要的任务了。
管理多个手提设备和复制品主机之间同步的一种更有效的方案是使用保持持续网络连接的同步代理(或同步服务器、或同步代理服务器、或同步代理),以便代表手提设备和复制品主机进行同步(负责复制品的设备也保持持续的网络连接)。
为了同步,手提设备首先建立网络连接。一旦连接后,不是直接连到作为目标的复制品主机用于同步,而是向同步代理发出同步请求。在接收到这样的请求后,同步代理建立到作为目标的复制品主机的连接并通过向手提设备和它的复制品主机发送输入/输出请求开始同步处理。同步代理的一种直接设计是保持所有特定于设备和特定于应用的同步程序的代理,这些同步程序能处理复制品主机负责的所有手提设备类型和所有信息管理系统类型。这意味着每个应用必须具有特别编写的唯一的同步程序用于所有手提设备类型和负责手提设备数据复制品的所有信息管理系统之间的各种组合。例如,同步代理可以保持电子信箱应用的四种不同的同步程序,以便支持基于手提设备的PALM PILOTTM和WINDOWS CETM与PC的Microsoft EXCHANGETM和Lotus NOTESTM。第一种同步程序用于PALM PILOTTM和EXCHANGETM之间的同步,第二种程序于PALM PILOTTM和Lotus NOTESTM之间的同步,第三种程序用于WINDOWS CETM和EXCHANGETM之间的同步和第四种程序用于PALM PILOTTM和Lotus NOTESTM之间的同步。
同步代理的另一种直接设计是允许同步代理和负责手提设备数据复制品的特定信息管理系统之间的同步输入输出接口对于不同的手提设备是相同的。是同步代理处理手提设备间的不同,而不是每个复制品主机。真正的同步处理由同步代理来完成。同步期间手提设备和复制品主机的角色只是响应同步代理的同步输入/输出呼叫。这些呼叫的典型形式是增加、恢复、删除、和更新信息。因此手提设备和复制品主机的计算负荷和同步逻辑的复杂性极大地降低了。
该直接同步代理方案的一个重要特征在于,为了所有设备类型的任何应用和所有复制品主机的任何信息管理系统间的正确同步,同步代理必须在同步任务期间能根据目标应用、设备和信息管理系统启用特定的同步逻辑。目前的直接同步代理方案通过首先限制它对少量应用、设备和信息管理系统的支持以便减少正确同步所需的同步逻辑变化的总数;和通过将同步逻辑预配置为存在磁盘存储器上的可动态链接(在同步运行时间期间)码来实现该特征。该方案的一个重要问题在于难以管理所有的各种同步逻辑。如果一个结构支持更多的应用、设备和管理信息系统,则同步逻辑变化的数目急剧增加。因此每个同步代理必须能连接正确的同步逻辑。而且,在具有布置的多个同步代理的结构中,同步逻辑的任何改变和更新都会产生将这些改变和更新通知给所有同步代理正确文件的困难的软件管理任务。同步逻辑管理的改进是本发明的一个焦点。
目前直接同步代理方案的另一个重要特征在于,由同步代理制造商预编码各种同步逻辑,一些制造商还为用户提供增加或修改同步逻辑的发展平台。同步代理制造商通常不产生应用、设备或信息管理系统。因此,他们并不具备该软件和硬件的专业知识并肯定限制他们支持的范围。目前同步代理关于支持更多的手提设备应用、更多的手提设备和更多的管理信息系统的可伸缩性是非常有限的。本发明解决该限制。
而且,该直接同步代理是一个独立系统,关于处理同时的同步请求的伸缩性受到安装同步代理的机器的计算功率的限制。在该直接同步代理方案中得不到同步代理之间关于负载平衡的合作。同步代理之间缺乏合作极有可能在代理之间产生不平衡的负载,这将导致一些同步请求延迟或根本不处理。本发明满足该需求。
根据上述的需求,本发明涉及同步代理(或同步代理或同步服务器)的改进方法、装置和程序存储设备。该同步代理用作在客户之间进行更新同步的中介和计算平台,例子包括(但不局限于此)互联网应用;手提设备或掌上设备;灵巧电话或智能寻呼机;和负责来自这些设备的数据复制品的信息管理系统。客户可以离开网络一些或大部分时间,而信息管理系统几乎总是保持连接。客户设备中的数据和/或信息管理系统中它们的复制品可以彼此独立地进行更新。
根据本发明,提供一种用户向同步代理请求同步服务的方法。例如,手提设备向该代理发送同步请求(或sync请求)。同步请求可以包括一个或多个要同步的应用。在接收该同步请求之后,同步代理以顺序方式处理所有应用请求的同步于该手提设备的同步。对于每个要同步的应用,手提设备可以提供包括要同步应用的名称、该应用的复制品主机ID、具有该应用的应用特定同步逻辑的程序ID(同步逻辑)、和具有该手提设备的设备特定数据转换方法的程序ID(转换码)的同步识别符。这些ID最好包括唯一的标识符(或唯一的名称)和可以恢复该信息的网络地址。
或者,在应用的同步处理期间,手提设备不是将信息直接发送给同步代理,而是手提设备可以发送只包括用户、手提设备、和要同步的应用的一些标识信息的同步标识符以及存储应用名称和上述三条信息(例如,该应用的复制品主机ID、该应用的同步逻辑ID、和该手提设备的转换码ID)的目录服务地址。
一个用于在客户和远程复制品主机之间同步数据的具有本发明特征的自适应同步服务器的例子(其中远程复制品主机存储客户的数据复制品)包括同步接收器逻辑,用于识别复制品主机和同步逻辑,同步逻辑是特定于与客户和远程主机有关的数据类型的应用;其中响应于同步请求,同步逻辑可以位于网络上远离同步服务器和远程主机的任何位置;和同步处理器逻辑,耦合到同步接收器逻辑,用于恢复网络的远程同步逻辑、连接到远程和利用恢复的同步逻辑使客户和远程主机间的数据同步。同步请求还可以包括用于识别在同步期间转换客户和远程主机之间数据的设备特定转换码的信息;其中同步处理器逻辑包括用于根据该信息恢复转换码并根据设备特定转换码转换客户和远程主机间的数据的装置。这里,该设备特定转换码可以是本地地或远离地位于网络的任何位置。
具有本发明的特征的另一个在客户和存储有关客户数据复制品的远程复制品主机之间转换数据的自适应同步服务器的例子,包括同步接收器逻辑,用于识别远程复制品主机和将远程主机的数据转换成与客户有关的设备类型的数据的设备特定转换码,其中,响应于请求,该转换码可以位于网络上远离同步服务器和远程主机的任何位置;和同步处理器逻辑,耦合到同步接收器逻辑,用于恢复远程转换码并根据设备特定转换码转换客户和远程主机之间的数据。响应于同步请求,该请求可以包括识别同步逻辑的同步请求,它是特定于与客户和远程主机有关的数据类型的应用;和用于恢复同步逻辑、连接到远程主机和在转换期间同步客户和远程主机之间数据的装置。
根据本发明的另一个方面,为同步代理提供接收、接受、和处理来自手提设备的同步请求的方法。在本发明中,在接受来自手提设备的同步请求后,同步代理为一个或多个手提设备应用进行同步和/或转换。对于每个手提设备应用,代理可以或者直接接收来自请求手提设备或者间接接收来自请求手提设备所指定的目录服务的上述的应用名称、复制品主机ID、同步逻辑ID、和转换码ID。为同步该应用,同步代理可以从网络地址中恢复应用有关的同步逻辑,该网址在请求手提设备发送的该应用的同步逻辑ID指定。接着同步代理根据从请求手提设备接收的复制品主机ID建立与该应用有关的复制品主机的网络连接。
根据本发明的另一个方面,为处理该应用的同步,同步代理执行该应用的恢复的同步逻辑。在执行该应用的同步逻辑期间,如果需要数据转换,则同步代理连接到与该应用有关的转换码的网址。转换码的网址是由请求手提设备发送的转换码ID的一部分。接着,如果必要的话,在同步该应用时处理同步逻辑期间,同步代理通过执行该转换码来处理数据转换。虽然本发明没有指定同步逻辑的编程语言,本发明的特征即同步代理恢复远程主机的同步逻辑并执行该逻辑可以理解为允许现存的java的web处理,其中诸如小应用程序的Java程序可以从远程主机由web浏览器下载并由web浏览器本地执行以便进行web处理。
在本发明的一个实施例中,应用的同步过程分成同步逻辑和转换码。同步逻辑是同步任务的应用特定过程,而转换码是两种类型设备之间依赖设备转换过程。这两个分开意味着应用的同步逻辑可以由手提设备的制造商提供并保持,而转换码可以由该转换码应用的手提设备的提供商提供并保持。同步代理不再必须存储这些同步或转换过程了。它们所要作的只是在同步期间恢复正确的同步逻辑和或转换码。该方案极大地改进了同步代理的依赖于应用的管理处理和依赖于设备的同步和/或转换过程。
这种方案还使同步代理的制造商不再发展特定于应用和设备的同步过程。以便,只要依赖于应用和设备的同步过程由它们各自的制造商正确发展、保持和恢复,则在支持更多的应用、设备、和管理信息系统方面同步代理有更大的伸缩性。
根据本发明的再一个方面,同步代理使用超高速缓存器临时存储应用的同步逻辑或转换码,期望该同步代理在不久的将来可以使用这些可执行数据。下面将描述本发明超高速缓存器特征的例子。首先,同步代理留出一块存储器(主存或磁盘空间)作为超高速缓存器。同步代理采取索引方法搜索并恢复超高速缓存的同步逻辑或转换码(例如,根据它们唯一的名称)。为恢复超高速缓存的信息(应用的同步逻辑或转换码),同步逻辑在到网络恢复它之前首先搜索超高速缓存器。如果在超高速缓存器中没有发现该信息,同步代理则到与该信息ID有关的网址恢复它并利用它更新代理的超高速缓存器。如果在超高速缓存器中找到该信息,同步代理则从超高速缓存器中而不是网络中恢复该信息。接着,同步代理通过从超高速缓存器中下载用于执行的该数据来执行该可执行数据(应用的同步逻辑或转换码)。
根据本发明的另一个方面,同步代理可以连续监视其相对根据CPU功率、RAM与存储存储器的大小、和网络带宽容量固定的计算容量的计算负荷。同一网络中的所有同步代理可以彼此实时共享目前的计算负荷和预配置的计算容量。在接收到同步请求后,同步代理检验以发现同步任务所增加的目前的计算负荷是否超过代理的计算容量。如果超过了,该代理查询相同网络中其它代理的计算负荷和容量信息。在得到该信息后,该代理接着可以将输入的同步请求转给计算负载较少的另一个代理(在相同网络中)。如果同一网络的所有代理具有满计算负荷,则接收该同步请求的代理向请求手提设备返回标识所有同步代理的容量已满的消息。它还终止与请求手提设备的连接。在这种情况下不进行同步处理。利用这个特征,本发明还提供一种直接同步代理方案得不到的负载平衡功能。
本发明的这些和其它的目的、优点、和特点将从下面对优选实施例和附图的详细描述中变得更加明显。


图1描述一个同步代理方案结构的例子;图2描述一个用作具有本发明特征的手提设备的客户结构的例子;图3描述一个本发明的同步代理结构的例子;图4描述一个本发明的复制品主机特征结构的例子;图5描述一个本发明的手提设备同步接收器特征的例子;图6描述一个本发明的代理同步接收器特征的例子;图7描述一个本发明的手提设备同步处理器特征的例子;图8描述一个本发明的代理同步处理器特征的例子;图9描述一个本发明的代理超高速缓存管理器特征的例子;图10描述一个处理数据转换的代理同步处理器例子;图12描述一个复制品主机的复制品管理器或手提设备的数据管理器的例子;图13描述一个本发明的代理负荷管理器特征的例子。
图1描述一个使用具有本发明特征的同步服务器方案的网络的整体结构的例子。客户(101、102)的例子包括(但不局限于此)手提设备或掌上设备(也叫手提设备终端、掌上计算机、互联网应用)。手提设备通常是指小到足以用一只手拿着而另一只手操作的基于计算机的设备。手提设备可能具有较小的显示屏,因为设计它们的本意并不需要一次显示大量的信息。手提设备通常包括允许它们与中央计算机通信和/或同步的通信装置。手提设备的例子包括(但不局限于此)3Com的PALM PILOTTM、Sharp的ZAURUSTM、Psion PLC的PSIONTM和其它各种运行Microsoft WINDOWS CETM的掌上型设备、智能型电话、或智能寻呼机等。因此,尽管优选实施例是指手提设备,但本领域普通技术人员可以理解本发明有利于任何通过网络同步数据的客户设备。
客户可以间歇地连到服务器(105-107)(也叫同步代理、同步服务器、或同步代理服务器)。服务器(105、106、107)的例子包括(但不局限于此)PC;工作站(例如IBM RS6000TM);或大型主机。复制品主机(109、110、111)可以是运行信息管理系统的任何计算机,该信息管理系统保持来自手提设备的数据复制品。复制品主机可以是PC、工作站、或大型主机等。同步代理通过网络(108)连到复制品主机。手提设备可以在一些或大部分时间不与网络连接,但在执行同步任务时必须保持连接(103、104)。本领域技术人员可以理解通过调制解调器拨号到网络远程接入服务器或通过具有与网络相连的计算机直接串行端口连接,手提设备可以连接到网络(例如互联网或局域网)。按常规,目录服务器(112)提供包括用户信息预配置和存储的业务并提供应请求通过诸如互联网的网络动态恢复信息的查找机。这些业务的例子包括Novell的Novell目录业务(NDS)和Microsoft的积极(Active)目录,它们都提供可以通过LDAP(轻型目录存取协议-存取目录信息的互联网协议)存取的目录信息。
根据本发明,遥远地存储同步逻辑(120)和/或转换码(130)。用于同步客户(101-102)和存储客户数据复制品的远程复制品主机(109-111)之间数据的自适应同步服务器的一个例子包括识别复制品主机(109-111)和同步逻辑(120)的同步代理逻辑(图3),它是特定于与客户和远程主机有关的数据类型的应用。响应于同步请求,同步逻辑(120)可以位于网上远离同步服务器(105-107)和远程主机(109-111)的任何位置。同步代理逻辑适于恢复网络(108)的远程同步逻辑;根据请求连到远程主机;和用恢复的同步逻辑同步客户和远程主机间的数据。同步请求还可以包括识别设备特定转换码(130)的信息以便在同步期间变换客户与远程主机之间的数据,包括用于根据该信息恢复转换码并根据设备特定转换码转换客户和远程主机间的数据的装置。这里,设备特定转换码可以是本地地或遥远地位于网络的任何位置。
或者,服务器适于转换客户(101、102)和存储客户数据复制品的远程复制品主机(109-111)间的数据。这里,该请求用于识别可应用的远程复制品主机和将远程主机的数据转换成与客户有关的设备类型数据的转换码(130)。转换码可以位于网上远离同步服务器和远程主机的任何位置。服务器根据请求恢复远程转换码(130)并根据设备特定转换码转换客户和远程主机间的数据。响应于同步请求,该请求可以包括具有识别同步逻辑(120)信息的同步请求,它是特定于与客户和远程主机有关的数据类型的应用。服务器恢复同步逻辑;根据信息连到远程主机;和在转换期间同步客户和远程主机间的数据。
图2描述一个用作能根据本发明执行同步的手提设备的客户的整体结构的例子。如图所示,手提设备包括CPU(201)、诸如易失性RAM的主存(203)、和使用诸如非易失性RAM、ROM、或磁盘的存储存储器(202)用于存储系统(诸如操作系统)、应用(诸如电子信箱和日历软件)、和数据(诸如地址簿或备忘日志的内容)。大部分手提设备在RAM和ROM而不是在磁盘中存储所有的信息。主存(203)存储本发明的手提设备逻辑(204),手提设备逻辑(204)最好作为可以从存储存储器(202)装载到主存(203)的计算机可执行码来实现。这里,本发明的手提设备逻辑(204)包括同步启动器(205)(在图5详细描述)、同步处理器(206)(在图7详细描述)、和数据管理器(207)(在图11详细描述)。本发明的手提设备逻辑(204)最初存在存储存储器(202)中。当同步任务开始时,CPU(201)将同步逻辑(根据按需方式需要全部或部分地)装入主存(202)并开始执行该逻辑以便同步。
图3描述一个配置为本发明同步代理的计算设备结构的例子。例子包括(但不局限于此)PC;工作站;服务器;或大型主机。同步代理可以包括CPU(301)、诸如磁盘的存储设备(302)、和诸如RAM的主存(303)。这里,主存(303)存储同步代理逻辑(304),它最好作为可以从磁盘(302)装载到主存(303)的计算机可执行码来实现。在本例中,同步代理逻辑(304)包括同步接收器(305)逻辑(在图7详细描述)、同步接收器(306)逻辑(在图8详细描述)、超高速缓存管理器(307)(在图9详细描述)、和负荷管理器(308)(在图13详细描述)。
图4描述一个配置为本发明复制品主机的计算设备结构的例子。复制品主机的例子包括(但不局限于此)PC;工作站;服务器;或大型主机。如图所示,复制品主机可以包括CPU(401)、诸如磁盘的存储设备(402)、和诸如RAM的主存(403)。主存(403)存储复制品主机逻辑(404),它最好作为可以从磁盘(402)装载到主存(403)的计算机可执行码来实现。复制品主机逻辑(304)包括复制品接收器(405)(在图12详细描述)和复制品管理器(406)(在图11详细描述)。
按常规,手提设备在能执行同步任务之前需要首先建立网络连接。有很多技术可以将手提设备连到诸如互联网或本地网的网络。例如,PALM PILOTTM具有随设备而来的TCP/IP软件。当PALM PILOTTM连到调制解调器时,它可以运行该TCP/IP软件通过电话线拨号到ISP(互联网业务提供商)以便连到互联网。或者,设备可以通过串行端口连到与网络相连的桌上PC。可以得到程序使PC成为网络接入服务器并提供网络连接到与PC串行端口相连的任何设备。虽然不是本发明的一个部分,但客户设备的网络连接过程是本发明实现的同步方法的先决条件。
在设备建立与网络的连接之后,现在通过开始图2(在图5中更详细)同步启动器(205)所示的同步启动器处理,该设备可以执行同步任务。为开始同步过程,同步启动器首先发送同步请求给同步代理(501)。本领域技术人员可以理解,手提设备应预先知道同步代理的网址,并且手提设备也可以将一个同步代理地址预配置为缺省值。手提设备发送给代理请求同步的信息可以包括标识它是同步请求的共同理解的码、还有一些关于手提设备用户(诸如用户ID和用于鉴别与授权的加密密码或共享秘密)、设备和系统类型的识别信息。虽然鉴别和授权的方法不是本发明的一部分,但本领域技术人员可以理解,网络上现有的鉴别和授权技术可以并入手提设备的同步启动器(图5的501)和同步代理的同步接收器(图3的305)之间的合作过程。
如果拒绝同步请求,同步启动器过程终止同步任务(504)。否则,同步启动器确定要同步的应用表(502)。要同步的应用例如可以包括地址簿应用、备忘日志应用、日历应用、电子信箱应用、或手提设备中的其它应用。本领域技术人员可以理解确定要同步的应用表可以包含用户输入的屏幕(例如,从用户接口检验要同步的应用)、恢复应用的缺省设置、或动态选择要同步应用的软件。一旦确定了要同步的应用表,则同步启动器过程为表上的每个应用开始同步处理器过程(503)(在图7详细描述)。同步代理的第一项任务是启动同步接收器(图3的305,并参照图6更详细地描述)。
图6描述本发明的代理同步接收器特征的例子。如图所示,同步接收器可以是无限环,其中同步代理可以连续接收来自手提设备的同步请求(601)。接收到同步请求之后,同步接收器首先检验它自己的计算负荷是否已经达到其容量(602)。如果达到了,同步接收器则启动负荷管理器(603)将该请求发送给相同网络上的另一个同步代理(在图13详细描述)。如果该同步代理没有超过负荷,同步接收器则根据从请求手提设备接收的请求消息中的识别信息执行传统的鉴别和授权过程。如果鉴别和授权过程失败(例如,手提设备用户鉴别失败或同步代理没有授权手提设备用户同步),则代理将拒绝消息发送回手提设备(605)、终止连接(606)并回去等待下一个同步请求(601)。如果鉴别和授权过程成功,则代理将接受消息发回给请求手提设备(607)。接着,代理为该同步任务启动代理同步处理器同步(608)。
本领域技术人员可以理解,同步接收器过程最好用目前的软件技术的多线程方案实现。这意味着,在接收来自手提设备的请求之后(601),同步接收器开始处理该请求余下的步骤(602-608)的一条新线。从603到601、从606到601、和从608到601的三个箭头线只是表示该线的终止。本领域技术人员也可以理解在不支持多线程的操作系统中,产生新线(601)可以看作是产生新过程。因此线的终止等于过程的终止。
现在回到手提设备,还参照图5,在接收来自代理的接受消息后(605),同步处理器顺序开始每个要同步的应用(503)。图7更详细地描述同步处理器逻辑(应用)。
如图7所示,特定应用的同步处理器首先恢复与该应用有关的信息(701)。该信息最好包括该应用的复制品主机ID、同步逻辑ID、和转换码ID(701)。
应用的复制品主机是存储此应用复制品的计算机设备。该设备可以是PC、工作站、服务器或大型主机,并且必须是网络连接。复制品主机ID可以包括复制品主机的网址和复制品主机中该应用复制品的位置。本领域技术人员可以理解,根据当前的互联网技术,URL(通用资源定位器)是实现复制品主机ID的合理方式。
最好体现为可执行码的应用的同步逻辑可用于解决冲突、指定优先方向、采取一定的行动满足该应用特定的需求。例如,花费保持应用的同步逻辑指定手提设备总是超越复制品主机(例如合作数据库服务器)一定的记录(例如酒店花费),因为合作记录代表建议的价格,而手提设备记录指定实际的帐单。同步逻辑ID可以包括同步逻辑的唯一名称、网址和该地址中同步逻辑所存储的位置。本领域技术人员也可以理解用当前存在的互联网技术即URL还是实现同步逻辑ID的合理方式。
最好体现为可执行码的特定设备和应用结合的转换码,可用于过滤、转换、和改变数据,以便在具有不同CPU功率、存储器容量、和物理结构的计算设备中可以使用并处理特定的信息。例如,从PC复制品主机发送给客户图象的网页可以运行转换码以便使所有的图象删除(过滤功能)或降低到非常粗的清晰度(转换功能),以便该页可以显示在客户的屏幕上而不需占用太多的存储空间。应用的转换码ID可以包括转换码的唯一名称、网址和该地址中转换码所存储的位置。本领域技术人员也可以理解,用现有的互联网技术即URL还是实现同步逻辑ID的合理方式。
根据本发明的另一个方面,每个应用的上述三个ID预配置并存储在手提设备中或在手提设备用户的目录服务中。如果这些ID存在手提设备中,则同步处理器向同步代理发送同步标识符(701),它最好与三个ID一起包括同步的应用名称,并随后进入循环(702)。如果这些ID以目录服务的方式存储,则同步处理器向同步代理发送同步标识符(701),它包括用户、设备、应用、和目录服务器地址(同步代理用它访问目录服务)的标识。
本领域技术人员可以理解,通过缺省值设置的使用可以避免发送三个ID的需要。例如,如果手提设备给同步代理配置要同步的缺省应用,则同步代理不需要在同步处理期间为手提设备恢复要同步的应用名称。
这种情况下缺少应用名称标识要同步缺省的应用。
同样,手提设备的用户也可以给同步代理配置缺省的复制品主机或设备。在这些情况下,同步代理不需要从手提设备中或从目录中恢复信息。相反,它可以使用为该手提设备预配置的缺省设置以便得到该信息。
虽然前面描述的诸如复制品主机、同步逻辑、或转换码的信息ID包括网址和它们各自地址的确切名称和位置,但说明它相应网址时不需要ID的另一种实现方式。这里,同步代理负责根据ID中所包含的名称找到特定ID的精确网址。例子是手提设备对应用进行同步请求,而转换码ID不包括该设备正确转换码的网址。同步代理接收到转换码的ID后,根据进行同步请求的设备类型确定正确转换码所位于的正确网络位置。
再参照图7,在循环中(702),同步处理器首先等待来自同步代理的API(应用程序接口)呼叫(702)。如果来自代理的呼叫标识应用的同步处理完成,则同步处理器终止并回到同步启动器以便处理下一个要同步的应用。如果API呼叫是数据管理命令(例如打开数据库、读取记录等),则同步处理器启动数据管理器来处理API(703)(在图11将更详细讨论)。
同步代理中的同步接收器(图6)在鉴别和授权过程完成并接收同步请求后可以发送接受消息给请求手提设备(图6的605),并接着启动代理同步处理器(图6的606)来处理同步。
图8描述详细说明代理同步处理器的例子。如图所示,代理同步处理器首先从请求手提设备接收要同步的应用名称和分别对于复制品主机、同步逻辑、和转换码的三个ID(801)。此信息可以直接从进行同步请求的手提设备中或通过前面所述的目录服务接收。如果不再有同步的应用,则手提设备发送标识这种情形的结束消息。如果接收到停止消息而不是上述三个ID,则同步处理器终止同步处理。否则,同步处理器可以请求超高速缓存管理器根据同步逻辑ID恢复同步逻辑(802)。超高速缓存器管理的例子在图9中讨论。恢复同步逻辑之后,同步处理器接着根据复制品主机ID建立与应用复制品的连接(803)。一旦建立连接后,同步处理器开始执行同步逻辑以便执行此应用的同步任务(804)。将参照图10更详细地讨论执行同步逻辑的例子。
图9描述一个同步代理所使用的超高速缓存管理器的例子以便管理超高速缓存和恢复诸如手提设备应用的同步逻辑和转换码的目标。接收到目标的请求后(901),超高速缓存管理器检验查看该目标是否在超高速缓存器中。超高速缓存器可以在主存(303)或磁盘(302)中。
如果超高速缓存器中没有请求目标,则超高速缓存管理器根据此目标的ID从网络恢复该目标(902)。一旦目标从网络恢复,就将它插入超高速缓存器中(903)并返回到请求者(904)。如果在超高速缓存器发现该目标,则超高速缓存管理器检验查看超高速缓存器的目标是否是当前的。如果它不是,则超高速缓存管理器用它的ID从网络上恢复它(902)。从网络恢复最新的目标后,它取代超高速缓存器中较旧的目标(903)并返回到请求者(904)。如果目标是最新的,则返回到请求者(904)。
虽然超高速缓存器目标当前性的证实不是本发明的特征,但本领域技术人员可以理解,本发明的超高速缓存管理器特征可以采用很多的这种现有技术。例如,超高速缓存管理器可以采取一种策略,即如果目标在超高速缓存器中一段固定的时间,则认为没有目标是最新的。另一个例子是超高速缓存管理器可以记录原始目标提供商,以便每次更新(或产生或删除)原始目标时,提供商发送关于此目标改变的消息给超高速缓存管理器。接收到该消息后,超高速缓存管理器可以或者从超高速缓存器中删除该目标、将它标为无效、或者恢复最新的目标并代替超高速缓存器中旧的目标。
图10中将更详细说明本发明的代理同步处理器特征(图8)执行同步逻辑(804)的例子。如图所示,同步逻辑包括从进行同步请求的手提设备(1003)和负责请求手提设备的同步逻辑应用复制品的复制品主机(1004)中读取数据或写数据到它们。在手提设备中的数据管理系统和手提设备复制品主机所使用的信息管理系统(例如,PALMPILOTTM电子信箱对Lotus NOTESTM电子信箱)之间存在许多区别。手提设备和复制品主机之间(例如,PALM PILOTTM对工作站)的存储容量可以不同。它们之间的显示设备也可以不同(例如,黑白低清晰度PALM PILOTTM屏幕对高清晰度PC监视器)。通过执行转换码,本发明解决从一端(例如,工作站复制品主机)到另一端(例如,PALMPILOTTM)正确转换信息的需求。
在执行应用的同步逻辑期间(图10),同步逻辑确定手提设备和复制品主机中应用的每个数据项的更新方向。例如,分别对于手提设备和复制品主机相同的唯一ID的两个数据项,同步逻辑确定手提设备数据项优先于复制品主机数据项,或相反。同步逻辑还可以确定这两个数据项是相同的并且数据移动是不必要的。同步逻辑也有可能发现这两个数据项冲突(例如,都已经单独更新)并决定在保持它自己的版本时复制每个数据项。
在本发明的代理同步处理器特征中,从一个设备向另一个(例如,从复制品主机到手提设备,或相反)写数据项之前,代理同步逻辑检验查看数据转换是否可用。如果可用,则代理同步处理器可以向超高速缓存管理器请求转换码(由进行同步请求的手提设备发送的ID指定)(1002)。超高速缓存管理器可以处理图9所示的过程以便得到请求的目标。一旦得到要同步的应用的转换码,则代理同步处理器执行该码以使数据项写入设备(1003)。
图11描述数据管理器(207)或复制品管理器(406)逻辑例子。代理同步处理器(图8的306)可以使用传统技术以便通过API向手提设备和它们的复制品主机读取数据(1103)和写数据(1104)。需要数据管理器(207)和复制品管理器(406)解释从同步代理接收的API呼叫并执行合适的数据或复制品管理功能。本领域技术人员可以理,这些APT呼叫可以是典型的诸如读数据项(1103)、写数据项(1104)、更新数据项(1105)、删除数据项等的数据管理功能。为了更有效地处理同步,利用任何版本并更新从手提设备和它们的复制品主机中可得到的历史信息来写应用的同步逻辑,以便加速同步处理。本领域技术人员可以理解,上述API可以包括恢复(1106)和/或设置(1106)版本并更新来自手提设备和复制品主机的历史信息。
图12描述本发明复制品接收器特征(405)的例子。复制品接收器可以是一个循环过程,其中它首先等待API呼叫(1201)。当同步代理的API呼叫到来时,复制品接收器开始鉴别和授权过程以便证实请求同步代理的身份(1202)。如果鉴别和授权过程失败,则复制品接收器拒绝API呼叫(1203)。否则,复制品接收器启动复制品管理器(1202),以便处理正确的复制品管理功能。
图13描述本发明同步代理中的负荷管理器特征(308)的例子。当代理同步接收器(图6)接收同步请求并检测到该同步代理超过负荷时,它能启动负荷管理器,将该同步请求发送给另一个同步代理(603)。接收到发送同步请求的要求(1301)后,负荷管理器确定相同网络上是否存在没有超过负荷的另一个代理(1302)。如果找到一个,负荷管理器将同步请求发送给此同步代理(1304)。如果相同网络的每个代理都满负荷了,负荷管理器拒绝该同步请求(1303)。本领域技术人员可以理解,所有同步代理的负荷管理器应加入一个协议,以便彼此交换负荷信息。根据相同网络其它代理的负荷信息,负荷管理器还可以采取一种策略,其中选择代理发送(例如,负荷管理器可以选择具有目前最低计算负荷的代理)以便平衡网络的全部负载。
同步代理处理器决定不只根据(602)所示的负荷状态发送同步请求。使用多个同步代理的网络中,每个同步代理为特定的手提设备或信息管理系统指定数据同步是有可能的。例如,在支持包括基于设备的PALM PILOTTM和WINDOWS CETM手提设备的数据同步的网络中,使用两个同步代理即指定PALM PILOTTM数据同步的代理1和指定Windows CE数据同步的代理2。因此,根据这种配置,随着时间的流逝,代理1可以超高速缓存更多的与PALM PILOT设备有关的同步逻辑和转换码,而代理2可以超高速缓存更多的与Windows CETM设备有关的同步逻辑和转换码是可能的。接收到同步请求之后(601),同步代理不只是检验负荷(602),还检验设备类型,并且如果它没有指定此设备类型,则它将该请求发送给指定这种设备类型的代理。例如,代理1在接收到Windows CETM设备的同步请求后将该请求发送给指定Windows CETM数据同步的代理2,并且因此更有可能超高速缓存执行该同步请求所需的最新的同步逻辑和转换码。
除了上述的预配置说明分开方案,同步代理可以在它们之间动态广播超高速缓存情况,类似于它们彼此共享的负荷状态。以这种方式,每个同步代理可以动态发送同步请求给另一个超高速缓存情况更有利于处理该请求的同步代理。
本发明的优选实施例包括可以作为软件实现的特征,该软件在客户(101、102)和服务器(105-107)提供的CPU(201、301)执行的计算机程序产品或程序存储设备明确实施。例如,以诸如Sun的JAVATM的流行的面向目标的计算机可执行码实现的软件提供不同平台的可移植性。本领域技术人员可以理解,也可以使用其它面向过程和面向目标(00)的编程环境,包括(但不局限于)C++和Smalltalk。
本领域技术人员也可以理解,本发明的方法可以作为在计算机或其它基于处理器的设备上执行的软件来实现。该软件可以体现为磁、电、光或其它永久性程序和/或数据存储设备,包括(但不局限于)磁盘、DASD、磁泡存储器;磁带;诸如CD-ROM和DVD(数字化视频光盘)的光盘;和其它诸如磁心、ROM、PROM、快速擦写存储器、或备用电磁的RAM的永久性存储设备。本领域技术人员可以理解,在本发明的精神和范围内,客户(101、102)或服务器(105、107)的存储器(203)中举例的一个或多个成分可以通过磁盘(302)、存储器(202)、网络(108)、另一个服务器直接访问和保持或可以通过多个服务器分配。
虽然我们已经描述了本发明的优选实施例,但本领域技术人员可以理解,现在和将来可以实现各种等同物、改进和加强,它们都落入所附权利要求范围内。相应地,这些权利要求可理解为保持对首次公开的本发明的正当保护。
权利要求
1.一种用于在客户和存储客户数据复制品的远程复制品主机之间同步数据的自适应同步服务器,包括同步接收器逻辑,用于识别复制品主机和同步逻辑,此同步逻辑是特定于与客户和远程主机有关的数据类型的应用;其中响应于同步请求,此同步逻辑可以位于网络上远离同步服务器和远程主机的任何位置;和同步处理器逻辑,耦合到同步接收器逻辑,用于从网络恢复远程同步逻辑,连接到远程和用恢复的同步逻辑使客户和远程主机间的数据同步。
2.如权利要求1所述的服务器,其中同步接收器逻辑还包括用于从客户接收包含识别复制品主机的信息和远程同步逻辑的同步请求的装置。
3.如权利要求1所述的服务器,其中同步逻辑包括解决冲突;指定最优先方向;和采取一定行动来满足应用特定需求的一个或多个装置。
4.如权利要求1所述的服务器,其中同步请求包括存储识别复制品主机信息的目录服务的地址和同步逻辑;和响应于同步请求,同步处理器逻辑还包括恢复信息的装置。
5.如权利要求1所述的服务器,其中同步请求包括用于识别在同步期间转换客户和远程主机之间数据的设备特定转换码的信息;和同步处理器逻辑包括用于根据该信息恢复转换码并根据设备特定转换码转换客户和远程主机之间数据的装置。
6.如权利要求5所述的服务器,其中设备特定转换码可以遥远地位于网络的任何位置。
7.如权利要求5所述的服务器,其中同步请求包括存储识别用于转换客户和远程主机之间数据的设备特定转换码信息的目录服务地址;和同步处理器逻辑包括用于根据该信息恢复远程转换码并根据设备特定转换码转换客户和远程主机之间数据的装置。
8.如权利要求5所述的服务器,其中转换码包括过滤;转换;和改变数据的一个或多个装置,以便可以在具有一个或多个不同CPU功率、存储器容量、和物理结构的不同计算设备中使用和处理它。
9.如权利要求1所述的服务器,还包括负荷管理器,耦合到接收器逻辑,用于监视服务器计算负荷和服务器计算容量并与合作的同步服务器一起共享计算负荷和计算容量;和所述负荷管理器包括当服务器计算负荷超过门限时,将同步请求转给较少负荷服务器的逻辑。
10.如权利要求9所述的服务器,其中网络包括一个或多个内联网和互联网,其中转换码还包括过滤图象或转换从远程主机发送到手提设备的网页中所包含图象的清晰度的装置,以便在手提设备的存储器约束下该网页可以显示在手提设备的屏幕上。
11.如权利要求1所述的服务器,还包括超高速缓存管理器,耦合到同步处理器,用于恢复并存储同步逻辑到超高速缓存器中。
12.如权利要求11所述的服务器,其中所述超高速缓存管理器还包括预置并存储同步逻辑到超高速缓存器中的装置。
13.如权利要求1所述的服务器,其中识别信息包括URL。
14.一种用于在客户和存储客户数据复制品的远程复制品主机之间转换数据的自适应同步服务器,包括同步接收器逻辑,用于识别远程复制品主机和将远程主机的数据转换为与客户有关的设备类型的设备特定转换码,其中响应于同步请求,转换码可以位于网络上远离同步服务器和远程主机的任何位置;和同步处理器逻辑,耦合到同步接收器逻辑,用于恢复远程转换码和根据设备特定转换码转换客户和远程主机间的数据。
15.如权利要求14所述的服务器,其中同步接收器逻辑还包括用于从客户接收包含识别复制品主机的信息和远程转换码的同步请求的装置。
16.如权利要求14所述的服务器,其中同步请求包括存储识别复制品主机的目录服务存储地址和转换码;和响应于同步请求,同步处理器逻辑还包括恢复信息的装置。
17.如权利要求14所述的服务器,其中转换码包括过滤;转换;和改变数据的一个或多个装置,以便可以在具有一个或多个不同CPU功率、存储器容量、和物理结构的不同计算设备中使用和处理它。
18.如权利要求14所述的服务器,其中转换码还包括过滤图象或转换从远程主机发送到手提设备的网页中所包含图象的清晰度的装置,以便在手提设备的存储器约束下该网页可以显示在手提设备的屏幕上。
19.如权利要求14所述的服务器,其中同步请求包括响应于同步请求识别同步逻辑和远程主机的信息,同步逻辑是特定于与客户有关的数据类型的应用;和同步处理器逻辑包括用于恢复同步逻辑、根据该信息连接到远程主机、和同步客户和远程主机之间数据的装置。
20.如权利要求19所述的服务器,其中同步逻辑包括解决冲突;指定优先方向;和采取一定行动满足应用特定需求的一个或多个装置。
21.如权利要求19所述的服务器,其中同步逻辑可以遥远地位于网络的任何位置。
22.如权利要求21所述的服务器,其中同步请求包括存储识别同步逻辑信息的目录服务的地址;和同步处理器逻辑包括用于根据该信息恢复远程同步逻辑并根据同步逻辑同步客户和远程主机之间数据的装置。
23.如权利要求14所述的服务器,还包括负荷管理器,耦合到接收器逻辑,用于监视服务器计算负荷和服务器计算容量并与合作的同步服务器一起共享计算负荷和计算容量;和所述负荷管理器包括当服务器计算负荷超过门限时将同步请求转给较少负荷服务器的逻辑。
24.如权利要求14所述的服务器,还包括超高速缓存管理器,耦合到同步处理器,用于恢复并存储同步逻辑到超高速缓存器中。
25.如权利要求24所述的服务器,其中所述超高速缓存管理器还包括预置并存储同步逻辑到超高速缓存器中的装置。
26.如权利要求14所述的服务器,其中识别信息包括URL。
27.如权利要求26所述的服务器,其中网络是全球网络系统,而同步服务器是代理服务器和其中客户是从包括手提设备、智能电话或智能寻呼机的组中选择。
28.如权利要求13所述的服务器,其中网络是全球网络系统、同步服务器是代理服务器和其中客户是从包括手提设备、智能型电话或智能寻呼机的组中选择。
29.一种适合连接到同步服务器的客户设备,其中在客户和存储客户数据复制品的远程复制品主机之间执行数据同步,包括中央处理单元(CPU);存储器,耦合到CPU,存储在CPU执行的可执行码,所述码包括同步启动器,用于向同步服务器发送同步请求,同步请求用于识别复制品主机和同步逻辑,同步逻辑是特定于与客户和复制品主机有关的数据类型的应用;其中同步逻辑可以位于网络上远离同步服务器和远程主机的任何位置;和同步处理器逻辑,耦合到同步启动器逻辑,用于通过同步服务器与远程主机传送同步数据;和数据管理器,耦合到同步处理器,用于处理一个或多个数据管理和复制品管理功能。
30.如权利要求29所述的客户,其中客户是从包括手提设备计算机;智能电话,或智能寻呼机的包括与网络建立连接的装置的组中选择的可断开手提设备。
31.如权利要求29所述的客户,其中数据管理包括一个或多个读数据项;写数据项;更新数据项;和删除数据项。
32.如权利要求29所述的客户,还包括在客户和远程复制品主机之间传递版本和更新历史信息的装置。
33.如权利要求29所述的客户,其中同步请求还包括识别复制品主机和远程同步逻辑的信息。
34.如权利要求29所述的客户,其中同步请求包括存储识别复制品主机和同步逻辑的信息的目录服务地址。
35.如权利要求29所述的客户,其中同步请求包括识别在客户和远程主机之间转换数据的设备特定转换码的信息。
36.如权利要求35所述的客户,其中设备特定转换码可以远程地位于网络上的任何位置。
37.如权利要求35所述的客户,其中同步请求包括存储识别一个或多个同步逻辑的信息和在客户与远程主机之间转换数据的设备特定转换码的目录服务地址。
38.如权利要求35所述的客户,其中客户是可断开地耦合到一个或多个内联网和互联网的手提设备,其中数据包括转换的在从远程主机发送到手提设备的网页中所包含的图象,以便在手提设备的存储器约束下该网页可以显示在手提设备的屏幕上。
39.如权利要求29所述的客户,其中识别信息包括URL。
40.如权利要求29所述的客户,其中请求包括一个或多个存储在存储器中的同步服务器的网络地址,其中一个同步服务器地址预配置为缺省的同步服务器地址。
41.如权利要求29所述的客户,其中请求包括关于客户或用户的识别信息,它从包括一个或多个用户ID;加密口令;鉴别和授权的共享秘密信息;设备类型;或与客户有关的系统类型的组中选择。
42.如权利要求29所述的客户,其中同步启动器适合确定需要同步的应用表,所述应用从包括一个或多个地址簿应用;备忘日志应用;日历应用;电子信箱应用的组中选择。
43.一种适合连接到自适应服务器的客户设备,其中在客户和存储客户数据复制品的远程复制品主机之间执行数据转换,包括中央处理单元(CPU);存储器,耦合到CPU,存储在CPU执行的可执行码,所述码包括同步启动器,用于向服务器发送请求,此请求用于识别复制品主机和在客户和复制品主机之间转换数据的设备特定转换码;其中转换码可以位于网络上远离服务器和远程主机的任何位置;和同步处理器逻辑,耦合到同步启动器逻辑,用于通过同步服务器与远程主机发送转换数据;和数据管理器,耦合到同步处理器,用于处理一个或多个数据管理和复制品管理功能。
44.如权利要求43所述的客户,其中客户是从包括手提设备计算机;智能电话或智能寻呼机的组中选择的可断开的手提设备,它包括与网络建立连接的装置。
45.如权利要求43所述的客户,其中同步请求还包括用于识别复制品主机和转换码的信息。
46.如权利要求43所述的客户,其中同步请求包括存储用于识别复制品主机和转换码的信息的目录服务的地址。
47.如权利要求43所述的客户,其中请求包括识别同步逻辑的信息,此同步逻辑是特定于与客户和远程主机有关的数据类型的应用。
48.如权利要求47所述的客户,其中同步逻辑可以位于网络上远离服务器和远程主机的任何位置。
49.如权利要求47所述的客户,其中同步请求包括存储用于识别一个或多个同步逻辑和设备特定转换码的信息的目录服务的地址。
50.如权利要求47所述的客户,其中客户是可断开地耦合到一个或多个内联网和互联网的手提设备,其中数据包括转换的在从远程主机发送到手提设备的网页中所包含的图象,以便在手提设备的存储器约束下该网页可以显示在手提设备的屏幕上。
51.如权利要求43所述的客户,其中识别信息包括URL。
52.如权利要求43所述的客户,其中请求包括一个或多个存在存储器中的同步服务器的网络地址,其中一个同步服务器地址预配置为缺省的同步服务器地址。
53.如权利要求43所述的客户,其中请求包括关于客户或用户的识别信息,它从包括一个或多个用户ID;加密口令;鉴别和授权的共享秘密信息;设备类型;或与客户有关的系统类型的组中选择。
54.如权利要求43所述的客户,其中同步启动器适合确定需要同步的应用表,所述应用从包括一个或多个地址簿应用;备忘日志应用;日历应用;电子信箱应用的组中选择。
55.在自适应同步服务器中,一种在客户和存储客户数据复制品的远程复制品主机之间自适应同步数据的方法,该方法包括步骤响应于同步请求,识别复制品主机和同步逻辑,此同步逻辑是特定于与客户和远程主机有关的数据类型的应用;其中同步逻辑可以位于网络中远离同步服务器和远程主机的任何位置;根据请求从网络恢复远程同步逻辑;和连接到远程主机和用恢复的远程同步逻辑同步客户和远程主机之间的数据。
56.如权利要求55所述的方法,还包括步骤从客户接收同步请求,此同步请求包括识别复制品主机和远程同步逻辑的信息。
57.如权利要求55所述的方法,其中同步逻辑还包括从包括一个或多个解决冲突;指定优先方向;和采取一定的行动满足应用的特定需求的组中选择的步骤。
58.如权利要求55所述的方法,其中同步请求包括存储用于识别复制品主机和同步逻辑的信息的目录服务的地址,还包括响应于同步请求恢复信息的步骤。
59.如权利要求55所述的方法,其中同步请求包括用于识别同步期间转换客户和远程主机之间数据的设备特定转换码的信息,还包括步骤根据此信息恢复转换码;和根据设备特定转换码转换客户和远程主机之间的数据。
60.如权利要求59所述的方法,其中设备特定转换码可遥远地位于网络的任何位置。
61.如权利要求59所述的方法,其中同步请求包括存储识别用于在转换客户和远程主机之间的数据的设备特定转换码的信息的目录服务的地址,还包括步骤根据此信息恢复远程转换码;和根据设备特定转换码转换客户和远程主机之间的数据。
62.如权利要求59所述的方法,其中转换码还包括从包括一个或多个过滤;转换;和改变数据的组中选择的步骤,以便在具有一个或多个不同CPU功率、存储器容量、和物理结构的不同计算设备中使用和处理。
63.如权利要求55所述的方法,还包括步骤监视服务器计算负荷和服务器计算容量;和与合作的同步服务器共享计算负荷和计算容量;和当服务器计算负荷超过门限时,将同步请求转给较少负荷的服务器。
64.如权利要求55所述的方法,其中网络包括一个或多个内联网和互联网,其中转换码还包括从包含一个或多个过滤图象;或转换从远程主机发送到手提设备的网页中所包含图象的清晰度的组中选择的步骤,以便在手提设备的存储器约束下该网页可以显示在手提设备的屏幕上。
65.如权利要求55所述的方法,还包括恢复并存储同步逻辑到超高速缓存器中的步骤。
66.如权利要求65所述的方法,还包括预置并存储同步逻辑到超高速缓存器中的步骤。
67.如权利要求55所述的方法,其中识别信息包括URL。
68.在自适应同步服务器中,一种用于在客户和存储客户数据复制品的远程复制品主机之间转换数据的方法,还包括步骤响应于请求,识别远程复制品主机和将远程主机的数据转换为与客户有关的设备类型的数据的设备特定转换码,其中转换码可以位于网络中远离服务器和远程主机的任何位置;和响应于请求,恢复远程转换码;和根据设备特定转换码转换客户和远程主机之间的数据。
69.如权利要求68所述的方法,还包括从客户接收同步请求的步骤,此同步请求包括识别复制品主机和远程转换码的信息。
70.如权利要求68所述的方法,其中此同步请求包括存储识别复制品主机和转换码的信息的目录服务的地址,还包括响应于同步请求恢复信息的步骤。
71.如权利要求68所述的方法,其中转换码还包括从包括一个或多个过滤;转换;和改变数据的组中选择的步骤,以便在具有一个或多个不同CPU功率、存储器容量、和物理结构的不同计算设备中使用和处理。
72.如权利要求68所述的方法,其中转换码还包括从包含一个或多个过滤图象;或转换从远程主机发送到手提设备的网页中所包含图象的清晰度的组中选择的步骤,以便在手提设备的存储器约束下该网页可以显示在手提设备的屏幕上。
73.如权利要求68所述的方法,其中此请求包括识别同步逻辑的信息,此同步逻辑是特定于与客户和远程主机有关的数据类型的应用,为响应于同步请求,还包括步骤恢复同步逻辑;根据信息连到远程主机;和在客户和远程主机之间同步数据。
74.如权利要求73所述的方法,其中此同步逻辑还包括从包括一个或多个解决冲突;指定优先方向;和采取一定的行动满足应用的特定需求的组中选择的步骤。
75.如权利要求73所述的方法,其中此同步逻辑可遥远地位于网络的任何位置。
76.如权利要求75所述的方法,其中此请求包括存储识别同步逻辑的信息的目录服务的地址,还包括步骤根据信息恢复远程同步逻辑;和根据同步逻辑同步客户和远程主机之间的数据。
77.如权利要求68所述的方法,还包括步骤监视服务器计算负荷和服务器计算容量;和与合作的同步服务器共享计算负荷和计算容量;和当服务器计算负荷超过门限时,将同步请求转给较少负荷的服务器。
78.如权利要求68所述的方法,还包括恢复并存储同步逻辑到超高速缓存器中的步骤。
79.如权利要求65所述的方法,还包括预置并存储同步逻辑到超高速缓存器中的步骤。
80.如权利要求68所述的方法,其中识别信息包括URL。
81.如权利要求80所述的方法,其中网络是全球网络系统,同步服务器是代理服务器和其中客户从包括手提设备、智能型电话或智能寻呼机的组中选择。
82.如权利要求68所述的方法,其中网络是全球网络系统、同步服务器是代理服务器和其中客户从包括手提设备、智能型电话或智能寻呼机的组中选择。
83.一种机器可读的程序存储设备,实施由同步服务器可执行的指令程序,以便执行用于在客户和存储客户数据复制品的远程复制品主机之间自适应同步数据的方法步骤,所述方法步骤包括响应于同步请求,识别复制品主机和同步逻辑,此同步逻辑是特定于与客户和远程主机有关的数据类型的应用;其中此同步逻辑可以位于网络中远离同步服务器和远程主机的任何位置;从网络恢复远程同步逻辑;和连接远程主机和用恢复的远程同步逻辑同步客户和远程主机之间的数据。
84.如权利要求83所述的程序存储设备,还包括步骤从客户接收同步请求,此同步请求包括识别复制品主机和远程同步逻辑的信息。
85.如权利要求83所述的程序存储设备,其中同步逻辑还包括从包括一个或多个解决冲突;指定优先方向;和采取一定的行动满足应用的特定需求的组中选择的步骤。
86.如权利要求83所述的程序存储设备,其中同步请求包括存储识别复制品主机和同步逻辑的信息的目录服务的地址,还包括响应于同步请求恢复信息的步骤。
87.如权利要求83所述的程序存储设备,其中此同步请求包括识别用于在同步期间转换客户和远程主机之间数据的设备特定转换码的信息,还包括步骤根据此信息恢复转换码;和根据设备特定转换码转换客户和远程主机之间的数据。
88.如权利要求87所述的程序存储设备,其中设备特定转换码可遥远地位于网络的任何位置。
89.如权利要求87所述的程序存储设备,其中此同步请求包括识别同步期间转换客户和远程主机之间数据的设备特定转换码的目录服务存储信息的地址,还包括步骤根据信息恢复远程转换码;和根据设备特定转换码转换客户和远程主机之间的数据。
90.如权利要求87所述的程序存储设备,其中转换码还包括从包括一个或多个过滤;转换;和改变数据的组中选择的步骤,以便在具有一个或多个不同CPU功率、存储器容量、和物理结构的不同计算设备中使用和处理。
91.如权利要求83所述的程序存储设备,还包括步骤监视服务器计算负荷和服务器计算容量;和与合作的同步服务器共享计算负荷和计算容量;和当服务器计算负荷超过门限时,将同步请求转给较少负荷的服务器。
92.如权利要求83所述的程序存储设备,其中网络包括一个或多个内联网和互联网,其中转换码还包括从包含一个或多个过滤图象;或转换从远程主机发送到手提设备的网页中所包含图象的清晰度的组中选择的步骤,以便在手提设备的存储器约束下该网页可以显示在手提设备的屏幕上。
93.如权利要求83所述的程序存储设备,还包括恢复并存储同步逻辑到超高速缓存器中的步骤。
94.如权利要求93所述的程序存储设备,还包括预置并存储同步逻辑到超高速缓存器中的步骤。
95.如权利要求83所述的程序存储设备,其中识别信息包括URL。
96.一种机器可读的程序存储设备,实施由同步服务器可执行的指令程序,以便执行用于在客户和存储客户数据复制品的远程复制品主机之间自适应转换数据的方法步骤,所述方法步骤包括响应于请求,识别远程复制品主机和将远程主机的数据转换为与客户有关的设备类型的数据的设备特定转换码,其中转换码可以位于网络中远离服务器和远程主机的任何位置;和恢复远程转换码;和根据设备特定转换码转换客户和远程主机之间的数据。
97.如权利要求96所述的程序存储设备,还包括从客户接收同步请求的步骤,此同步请求包括识别复制品主机和远程转换码的信息。
98.如权利要求96所述的程序存储设备,其中此同步请求包括存储识别复制品主机和转换码的信息的目录服务的地址,还包括响应于同步请求恢复信息的步骤。
99.如权利要求96所述的程序存储设备,其中转换码还包括从包括一个或多个过滤;转换;和改变数据的组中选择的步骤,以便在具有一个或多个不同CPU功率、存储器容量和物理结构的不同计算设备中使用和处理。
100.如权利要求96所述的程序存储设备,其中转换码还包括从包含一个或多个过滤图象;或转换从远程主机发送到手提设备的网页中所包含图象的清晰度的组中选择的步骤,以便在手提设备的存储器约束下该网页可以显示在手提设备的屏幕上。
101.如权利要求96所述的程序存储设备,其中此请求包括为响应于同步请求,识别同步逻辑的信息,其为特定于与客户和远程主机有关的数据类型的应用,还包括步骤恢复同步逻辑;连到远程主机;和在客户和远程主机之间同步数据。
102.如权利要求101所述的程序存储设备,其中同步逻辑还包括从包括一个或多个解决冲突;指定优先方向;和采取一定的行动满足应用的特定需求的组中选择的步骤。
103.如权利要求101所述的程序存储设备,其中同步逻辑可遥远地位于网络的任何位置。
104.如权利要求103所述的程序存储设备,其中此同步请求包括存储识别同步逻辑的信息的目录服务的地址,还包括步骤根据此信息恢复远程同步逻辑;和根据同步逻辑同步客户和远程主机之间的数据。
105.如权利要求96所述的程序存储设备,还包括步骤监视服务器计算负荷和服务器计算容量;和与合作的同步服务器共享计算负荷和计算容量;和当服务器计算负荷超过门限时,将同步请求转给较少负荷的服务器。
106.如权利要求96所述的程序存储设备,还包括恢复并存储同步逻辑到超高速缓存器中的步骤。
107.如权利要求106所述的程序存储设备,还包括预置并存储同步逻辑到超高速缓存器中的步骤。
108.如权利要求96所述的程序存储设备,其中识别信息包括URL。
109.如权利要求108所述的程序存储设备,其中网络是全球网络系统,同步服务器是代理服务器和其中客户从包括手提设备、智能型电话或智能寻呼机的组中选择。
110.如权利要求96所述的程序存储设备,其中网络是全球网络系统,同步服务器是代理服务器和其中客户从包括手提设备、智能型电话或智能寻呼机的组中选择。
全文摘要
使用网络分配的同步逻辑和/或转换码的同步代理或同步服务器逻辑、过程和装置,以便增加可伸缩性和改进诸如互联网应用;手提设备或掌上设备;智能电话或智能寻呼机的客户和它们远程复制品主机之间的同步管理。
文档编号G06F12/00GK1252565SQ9912085
公开日2000年5月10日 申请日期1999年9月30日 优先权日1998年10月23日
发明者黄允武, 俞士纶 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1