用于多路径环境中的数据同步的装置、系统及方法

文档序号:7722197阅读:99来源:国知局
专利名称:用于多路径环境中的数据同步的装置、系统及方法
技术领域
本发明涉及在能够通过分离路径发送和接收数据的环境中适当地保持同步数据。
背景技术
当今出现了个人计算产业的增长,其中许多人拥有多个计算设备。拥有台式计算 机、膝上计算机及例如手机(cell phone)或个人数字助理(PAD)等移动计算设备的人普遍 存在。各种计算设备满足了用户的不同需要。例如,对于发送和键入电子邮件,膝上型电脑 比台式电脑更令人觉得舒适,但是由于手机(例如智能电话)能够使用服务提供商提供的 无线网络来发送和接收消息,因此手机(例如智能电话)通常是更加多用途的电子邮件工 具,并且作为结果,其具有更广泛的可用性。用户能够手机接收及进行相应的电子邮件访问 而不能访问台式电脑能够连接到的网络是普遍存在的。 使用智能电话发送电子邮件的不方便是如此普遍,以至于它以例如"黑莓指 (Blackberry thumb)"等短语的形式进入我们的文化词典。联想(Lenovo)公司的持续连 接设备(Constant Connect)通过允许用户即使当膝上型电脑没有被连接到网络时也使用 膝上型电脑发送电子邮件而避免了这些困难。当膝上型电脑被连接到网络上时Constant Connect使用膝上型电脑的网络,并当膝上型电脑不能与所兼容的网络直接通信时, Constant Connect使用手机的连接从膝上型电脑传送数据。虽然该解决方案对用户提供不 管膝上型电脑的网络连接如何都能够使用膝上型电脑发送并接收数据的性能,但是该解决 方案在保持同步数据上造成困难。 当然,以上仅是由于数据可以从源经过多个路径并经过多个路径到达源因此可能
出现同步问题的情况的一个示例。例如,在膝上型电脑上的电子邮件客户端的情况下,如果
手机发送用于膝上型电脑的消息而当膝上型电脑后来被连接到网络上时膝上型电脑自己
发送消息,则可能出现重复。造成在膝上型电脑上的用户收件箱中电子邮件出现多次的类
似问题可能出现。入站数据和出站数据可能都被重复并在收件箱中出现多次。 被发送并被再发送多次的数据可能造成用户的困难并使用户失望。如果有规则地
发送和接收重复的电子邮件,则手工跟踪实际上较早地发送了哪些电子邮件或没有较早地
发送哪些电子邮件、将重复邮件手工地从收件箱清出并重复地解释为什么某些消息被发送
了两次的烦恼,甚至可能阻止许多用户使用提供多路径的系统。并且如果数据是例如软件
修补和更新等信息,则接收已经运行的可执行的另外复件可能产生例如故障和不能安装等
接收系统上的困难。至少,当计算机不必需安装已经安装的某些信息时,重复发送引起额外
的下载时间。

发明内容
根据前述论述,存在对于将多个设备之间的数据进行同步的装置、系统及方法的 需要。有益地,该种装置、系统和方法防止数据重复。 响应于本技术领域的现有状态,响应于还没有完全解决的本技术领域中的问题和需要,研制了本发明。因此,研制本发明以提供克服了现有技术中的许多或所有缺陷的用于 数据同步的装置、系统及方法。 公开了一种包括用于数据同步的计算机可读程序的计算机可读存储介质,当执行 该计算机可读程序时,该计算机可读程序使计算机当主计算机未能经过自己的网络连接发 送出站数据项目时,对次级设备(例如手机、PDA或其它网络连接设备)通知主计算机上的 失败发送事件。响应于接收到失败发送事件的通知,次级设备经过第二网络连接启动用于 出站数据项目的次级发送事件。在一个实施例中,出站数据项目是电子邮件并且发送事件 对服务器发送电子邮件。在另一个实施例中,出站数据项目是例如被发送到远程计算机的
文件或文件夹等数据。出站数据项目和入站数据项目还可以是例如日程事件或软件更新等。 如果次级设备未能经过自身网络连接成功发送出站数据,则计算机可读程序还使 计算机在主计算机上启动用于出站数据项目的新的发送事件。如果主计算机成功执行了新 的发送事件从而经过第一网络连接发送了出站数据项目,则计算机还通知次级设备成功发 送事件。 在某些实施例中,计算机可读程序进一步使主计算机接收来自次级设备的确认通 知。如果次级设备成功发送了出站数据项目,则次级设备发送确认通知。还配置次级设备 以当次级设备接收到来自主计算机的成功发送事件的通知时停止启动用于出站数据项目 的次级发送事件。 在某些实施例中,如果存在主计算机的状态改变或主计算机的网络连接状态改 变,则产生主计算机上的新的发送事件。例如,主计算机可以从"睡眠"状态改变为"有效"。 在某些实施例中,主计算在启动新的发送事件之前证实次级设备未能成功发送出站数据项 目。 在某些实施例中,如果主计算机经过第一网络连接发送出站数据项目或次级设备 经过第二网络连接发送出站数据项目,则主计算机指出已由主计算机发送的出站数据项 目。 在一个实施例中,通过与主计算机分离并被连接到主计算机的卡将次级设备连接 到主计算机。可以通过蓝牙连接将卡通信地连接到次级设备。在某些实施例中,当主计算 机处于例如s3、 s4或s5等断电状态时,该卡对次级设备发送数据并从次级设备接收数据。 在某些实施例中,在卡上执行计算机可读程序。 在另外的实施例中,主计算机确定次级设备是否已经接收到主计算机没有接收到 的入站数据项目。如果是,则主计算机从次级设备接收主计算机没有接收到的入站数据项 目。可以通过获取用于被发送到主计算机的入站数据项目的一组唯一标识符,获取用于经 过第二网络连接发送到次级设备的入站数据项目的一组唯一标识符,以及从次级设备接收 具有不属于用于主计算机的入站数据项目的该组唯一标识符的唯一标识符的那些入站数 据项目。 还公开了一种用于减少在多路径环境中的数据传输重复的装置。该装置包括出站 模块,如果主计算机未能经过第一网络连接发送出站数据项目,则该出站模块对次级设备 通知主计算机上的失败发送事件。如果次级设备接收到失败发送事件的通知,则次级设备 启动指示次级设备经过第二网络连接发送出站数据项目的次级发送事件。CN 101753483 A
该装置还包括确认模块,当次级设备成功执行次级发送事件从而经过第二网络发 送了出站数据项目时,该确认模块接收来自次级设备的确认通知。当确认模块缺少用于出 站数据项目的确认通知时,重试模块启动主计算机上的新的发送事件。 另外,同步模块对次级设备提供表示由主计算机发送的出站电子邮件的成功发送 事件的成功通知。当次级设备接收到成功通知,次级设备停止启动用于出站数据项目的次 级发送事件。响应于确认模块接收到确认通知,同步模块还可以指出在主计算机上已发送 的出站数据项目。 在某些实施例中,该装置包括入站模块,该入站模块获取用于发送到主计算机的 入站数据项目的一组唯一标识符,并将那些标识符与用于发送到次级设备的入站数据项目 的唯一标识符相比较。然后,该设备次级设备接收具有不属于用于主计算机的入站数据项 目的该组唯一标识符的唯一标识符的、次级设备上的那些入站数据项目。
在某些实施例中,还响应于主计算机检测到网络连接、主计算机进入上电状态及 预定等待时间结束,重试模块启动新的发送事件。 还公开了本发明的一种系统,该系统包括具有连接到第一网络的第一网络连接的 主计算机和具有连接到第二网络的第二网络连接的次级设备。主计算机包括上述同步装 置,同步装置包括出站模块、确认模块、重试模块及同步模块。次级设备包括支持装置,支持 装置包括发送模块、证实模块及次级重试模块。 响应于从出站模块接收到在主计算机上的失败发送事件,发送模块产生用于次级 设备上的出站数据项目的次级发送事件。当次级设备经过第二网络成功发送了出站数据项 目时,证实模块将确认通知发送到主计算机。当次级发送事件失败并且当次级设备没有接 收到成功通知时,次级重试模块在次级设备上重新发送出站数据项目。 在一个实施例中,重试模块持续重新发送出站数据项目,直到主计算机成功发送 出站数据项目或确认模块接收到表示次级设备成功发送了出站数据项目的确认通知。
在一个实施例中,出站模块检测在主计算机上操作的邮件用户代理的发送事件, 该发送事件指示主计算机发送出站电子邮件。出站模块经由例如蓝牙等通信连接将出站电 子邮件复制到次级设备。然后,出站模块监视表示主计算机上的出站电子邮件的发送事件 是失败和延迟的传输事件。响应于传输事件的出现,出站模块将传输请求发送到次级设备。 然后,响应于接收到传输请求,次级设备尝试发送出站电子邮件。 在该种实施例中,可以配置重试模块,以当确认模块缺少用于出站电子邮件的确 认通知时,对于主计算机上的出站电子邮件在邮件用户代理中启动新的发送事件。可以配 置同步模块,以对次级设备提供表示由主计算机进行的出站电子邮件的成功发送事件的成 功通知,并且响应于接收到成功通知,次级设备从发送队列中删除该出站电子邮件。
本说明书到处提到的特征、优点或类似语言并不意味着本发明可以实现的所有特 征和优点应该是本发明的任意单个实施例。而是,将涉及特征和优点的语言理解为表示在 本发明的至少一个实施例中包括联系实施例描述的特定特征、优点或特性。因此,贯穿本说 明书的特征和优点及类似语言的论述可以但非必需指相同的实施例。 此外,可以以任意适合的方式在一个或多个实施例中结合本发明所描述的特征、 优点和特性。相关领域的技术人员将认识到,在缺少特定实施例中的一个或多个具体特征 或优点的情况下,也可以实施本发明。在其他示例中,在某些实施例中可以认识到另外的特
7征和优点。 本发明提供确保改善的数据同步的解决方案,其中,对于单个主机可使用多个数 据路径。从下面的描述和后附权利要求,本发明的这些特征和优点将变得更明白,或可以通 过下文阐述的本发明的实践而明白本发明的这些特征和优点。


为了容易地理解本发明的优点,将通过参考在附图中说明的特定实施例来给出以 上简短说明的本发明的更具体的描述。应该理解,这些附图仅描述本发明的典型实施例,因 此不认为这些附图是本发明的范围的限制,通过使用附图,将通过附加的特性和细节来描 述和解释本发明,其中 图1是说明用于应用本发明发送并接收数据的系统的一个实施例的示意性框图;
图2是说明用于应用本发明发送并接收数据的系统的另一个实施例的示意性框 图; 图3是说明用于应用本发明发送和接收数据的系统的第三实施例的示意性框图;
图4是说明本发明的同步装置的一个实施例的示意性框图;
图5是说明本发明的支持装置的一个实施例的示意性框图; 图6是说明用于根据本发明的出站数据同步的方法的一个实施例的示意性流程 图; 图7示出说明用于根据本发明的入站数据同步的方法的一个实施例的示例性流 程图。
具体实施例方式
将在本说明书中描述的许多功能单元标注为模块,以更具体地强调它们的执行独 立性。模块可以包括例如具有存储器的一个或多个处理器、超大规模集成(VLSI)电路、门 阵列、可编程逻辑和/或具体部件等硬件电路。该硬件电路可以执行硬连线地逻辑功能,执 行在实体存储设备上存储的计算机可读程序,和/或执行程序功能。当由计算机系统执行 时计算机可读程序可以执行本发明的功能。 本说明书到处提到的"一个实施例"或类似语言表示联系实施例描述的特定特征、 结构或特性被包括在本发明的至少一个实施例中。因此,在本说明书中到处出现的短语"在 一个实施例中"及类似语言并不必需都指相同的实施例。 此外,可以在一个或多个实施例中以任意适合的方式来结合本发明的被描述的特 征、结构或特性。在下面的描述中,提供例如编程、软件模块、用户选择、网络交易、数据库 询问、数据库结构、硬件模块、硬件电路、硬件芯片等许多特定细节,以提供本发明的实施例 的彻底理解。然而,相关领域的普通技术人员将认识到,在没有一个或多个特定细节的情况 下,或以其它方法、部件、材料等等,也可以实施本发明。在其它示例中,没有具体示出或描 述公知的结构、材料或操作,以避免混淆本发明的各个方面。 例如,可以在计算机可读存储介质中存储模块。该种介质包括计算机可以读取并 且从该介质中计算机可以提取用于在处理器上执行的指令和数据的任意介质。示例包括但 不限于,CD、DVD、硬驱动、磁介质、光介质、固态存储器及本领域技术人员已知的其它介质。
图1示出包括服务器120、主计算机102及次级设备110的系统100。如所描述的, 通过第一网络130将主计算机102通信地连接到服务器120。通过第一网络连接108将主 计算机102连接到第一网络130。通过第二网络140将次级设备110连接到服务器。通过 第二网络连接114将次级设备110连接到第二网络140。第一网络连接108和第二网络连 接114可以是有线网络连接(例如,以太网)或由无线卡构成的无线网络连接。通过第三 网络连接116连接主计算机102和次级设备110。另外,第三网络连接116可以是有线网络 连接或例如蓝牙等无线网络连接。 在某些实施例中,将次级设备IIO和主计算机102连接到相同的网络(例如,第一 网络130),但是是通过例如第一网络连接108和第二网络连接114等分离的网络连接次级 设备110和主计算机102。例如,主计算机102可以具有对第一网络130的以太网连接,同 时,次级设备110具有对第一网络130的无线连接。在其它实施例中,将主计算机102和次 级设备IIO连接到例如第一网络130和第二网络140等分离的网络。例如,可以通过由电 缆或DSL(数字用户线)提供者管理的第一网络130将主计算机102连接到服务器120,同 时,通过由例如手机公司(cell phone company)等国家无线服务提供者管理的第二网络 140将次级设备110连接到服务器120。主计算机102和次级设备110每一个具有用于进 行第一网络连接108和第二网络连接114的分离的物理设备。通过分离地硬件来进行网络 连接(例如,主计算机102和次级设备110不共享相同的无线卡或以太网端口 )。
主计算机102还可以是台式计算机、个人数字助理(PDA)、膝上型电脑或可以在对 服务器120的网络连接上传送数据的其它电子设备。次级设备110还可以是计算机、PDA、 手机或可以通过对服务器120的网络连接传送数据的其它设备。即使当主计算机102和次 级设备110使用相同的网络时,主计算机102和次级设备110也具有对服务器120的分离 的物理连接。例如,主计算机102可以在对第一网络130的无线网络连接上进行通信,并且 次级设备也在相同的无线网络上进行通信。 在某些实施例中,将主计算机102和次级设备110在物理上合并成相同的形式要 素。在该种实施例中,通过是快速PCI的第三网络连接116,次级设备IIO可以直接连接到 主计算机102的主板。在其它实施例中,次级设备110是经由例如USB等公知的通信协议 连接到主计算机的卡。在其它实施例中,次级设备110从主计算机102分离并且提供包括 在本申请中描述的功能性的多个功能。例如,手机可以使用是蓝牙连接的网络连接116连 接到主计算机102。然而,在每一个实施例中,与由主计算机102提供的网络连接(第一网 络连接108)相比,次级设备IIO提供分离的物理网络连接(第二网络连接114)。
主计算机102还包括允许主计算机102在网络上传送信息的通信模块104。主计 算机102使用通信模块104在第一网络连接108上发送信息并接收信息。类似地,次级设 备110具有通信模块112,次级设备110使用通信模块112在第二网络连接114上发送信息 并接收信息。 根据本发明,主计算机102包括下面更加具体描述的同步装置106。同步装置106 便于经由多个路径在主计算机102和服务器120之间的数据通信。例如,如果主计算机102 丢失了第一网络连接108从而主计算机102不能与服务器120通信,则同步装置106便于 经过次级设备110发送和接收数据。当主计算机102和次级设备110都与服务器120通信 时,同步装置106协调通信从而主计算机102和次级设备110不发送并接收重复数据。另
9外,在第一网络连接108和第二网络连接114都在一个时间段出现故障的情况下,同步装置 106保证通过第一个可利用的网络连接传送传入和传出的数据。 图2示出可以从根据本发明的同步装置106受益的系统200的一个示例。然而, 所描述的实施例仅是可以从本发明受益的系统200的一个示例。本发明不限于在本发明中 描述的电子邮件。 在系统200中,服务器120是电子邮件服务器210,其也被称为邮件传输代理 (MTA)。电子邮件服务器210接收用户的电子邮件并从用户对其它帐户协调发送电子邮件。 当电子邮件服务器210接收电子邮件消息时,电子邮件服务器210将电子邮件消息传输到 运行电子邮件客户端202的主计算机102。电子邮件服务器210可以是SMTP(简单邮件传 输协议)服务器、P0P3服务器、IMAP互联网邮件访问协议)服务器或以上的组合。电子邮 件服务器210的操作与本申请无关,同样地,不对其进行具体描述。电子邮件服务器210将 入站的电子邮件消息传送到在主计算机102上运行的电子邮件客户端202,并从电子邮件 客户端202接收出站的电子邮件消息。在所描述的实施例中,在主计算机102和电子邮件服 务器210之间的通信出现在第一网络130上。例如,电子邮件服务器210可以是Microsoft Exchange服务器、sendmail服务器、Postfix服务器、Exim服务器或本领域中其它已知的服 务器。在其它实施例中,电子邮件服务器210可以是例如hotmai 1 、 gmai 1或其它的webmai 1 服务。 主计算机102包括电子邮件客户端202和同步装置106。电子邮件客户端202(也 已知作为邮件用户代理(MUA))提供与发送并接收电子邮件的主计算机102的用户的接口。 电子邮件客户端202的示例是Microsoft 0utlook、 Groupwise、 Eudora、 Apple Mail或本 领域已知的其它电子邮件客户端。在优选实施例中,电子邮件客户端202提供离线性能,从 而无论第一网络连接108的状态如何,用户都可以读取、访问并编写电子邮件。
在系统200中还示出包括通信模块112和支持装置224的手机220。在一个实施 例中,手机220是Research in Motion(RM)公司的黑莓手机220。然而,手机220可以是 经过第二网络140除了提供语音通信还提供数据通信的任意品牌。手机220还包括根据本 发明的支持装置224。 用户也可以使用手机220发送和接收电子邮件。在一个实施例中,手机220经由 第二网络140从电子邮件服务器210接收入站电子邮件,并且经由第二网络140将出站电 子邮件发送到电子邮件服务器210。在某些实施例中,第二网络140可能需要额外元件来支 持该种通信。例如,可以使用黑莓公司服务器以便于从手机220传送电子邮件和将电子邮 件传送到手机220。手机220也可以执行自身的电子邮件客户端(未示出)来帮助用户容 易地编写和接收电子邮件消息。手机220上的电子邮件客户端也可以具有离线性能。
手机220和主计算机102也经由第三网络连接116传送信息。在一个实施例中,第 三网络连接116是蓝牙连接。将手机220的通信模块112和主计算机102的通信模块104 进行配置以能够共享手机220和主计算机102之间的数据。在一个实施例中,手机220具有 蓝牙串行端口连接,蓝牙串行端口连接确立什么作为串行端口出现在主计算机102上。然 后,经过蓝牙串行端口连接将数据传送到手机220和主计算机102以及从手机220和主计 算机102传送数据。 在一个实施例中,当用户使用电子邮件客户端202编写电子邮件并发送电子邮件
10时,同步装置106检测当用户按下电子邮件客户端202上的发送按钮时由电子邮件客户端 202产生的发送事件。发送事件指示主计算机102经由第一网络连接108发送出站电子邮 件,第一网络连接108经由第一网络130连接主计算机102和电子邮件服务器。
在一个实施例中,当检测到发送事件时,同步装置204经由第三网络连接116将出 站电子邮件复制到手机220。然后,同步装置204监视表示出站电子邮件失败或被延迟的主 计算机102上的传输事件。例如,如果主计算机102没有被连接到网络,则传输事件可以表 示由于不存在将主计算机102连接到电子邮件服务器120的网络连接因此不能发送电子邮 件。或者,如果在发送电子邮件之前使主计算机102睡眠,或存在某种防止电子邮件被发送 的故障,则产生表示故障或延迟的传输事件。 在一个实施例中,如果同步装置106检测到传输事件,则同步装置106对手机220 发送传输请求,该传输请求指示手机220经由第二网络连接114对电子邮件服务器210发 送出站电子邮件。作为结果,即使第一网络连接108没有使主计算机102与电子邮件服务 器210通信,用户也可以使用主计算机102发送电子邮件。如果主计算机102被断开,或者 第一网络130或第一网络连接108存在问题,则用户仍可以使用主计算机102发送电子邮 件。如上所述,在存在表示发送事件失败或延迟的传输事件的情况下将电子邮件重寄到手 机220。 在一个实施例中,如果手机220成功发送了传输请求指示的出站电子邮件,则同 步装置106接收到来自手机220上的支持装置224的确认通知。然后,同步装置106指示 电子邮件客户端202不再尝试发送出站电子邮件。在一个实施例中,在接收到确认统治时, 同步装置106对已经发送的特定电子邮件做标记并将其从待发送状态改变为已发送状态。 同步装置106可以包括用于电子邮件客户端202的插入式部件以实现该功能。
作为结果, 一旦手机220发送了出站电子邮件,就在主计算机102上注释已成功发 送。然后,同步装置106确保电子邮件客户端202对已成功发送做出注释,从而一旦经由第 一网络连接108的连接被建立其也不发送电子邮件。作为结果,即使主计算机102没有被 连接到网络,也可以在主计算机102上编写并发送出站电子邮件。同步装置106工作以通 过对用户显而易见的方式经由第二网络连接114发送出站电子邮件。即使没有经由主计算 机102的第一网络连接108发送出站电子邮件,同步装置106也通过在主计算机102上对 已发送的出站电子邮件进行标注来确保没有经由两个分离的通信路径发送出站电子邮件 的复制件。 然而,手机220可能也不具有对电子邮件服务器210的连接。因此,手机220不能 经由第二网络连接114发送出站电子邮件。为了保证尽快地发送出站电子邮件,在某些实 施例中,只要没有告知主计算机102手机已经成功发送了出站电子邮件,同步装置106就促 使主计算机102尝试发送出站电子邮件。在一个实施例中,只要同步装置106没有接收到 表示电子邮件已经被发送的确认通知,同步装置106就使电子邮件客户端在主计算机102 上启动用于出站电子邮件的新的发送事件。同步装置106可以使电子邮件客户端202以规 则间隔执行这些动作。另外,同步装置106可以允许电子邮件客户端202根据自己的规则 进行重新发送尝试,例如,当主计算机102检测到主计算机102经由第一网络连接108被连 接到网络时,电子邮件客户端202可以尝试发送出站电子邮件。 如果主计算机102成功发送了出站电子邮件,则同步装置106对手机220提供表示在主计算机102上已经存在出站电子邮件的成功发送事件的成功通知。当接收到成功通知时,支持装置224从手机220中的发送队列删除出站电子邮件。另外,这样确保如果主计算机102成功发送了出站电子邮件,则手机不发送重复的电子邮件。 例如,在一个实施例中,一旦用户点击电子邮件客户端202上的发送按钮,同步装置106就如上所述将出站电子邮件复制到手机220。如果主计算机成功发送了电子邮件,则同步装置106指示手机220删除出站电子邮件的副本。如果主计算机没有成功发送了电子邮件,则手机220尝试经过第二网络连接114发送出站电子邮件。同时,主计算机102和手机220继续尝试发送出站电子邮件。当一个设备成功发送出站电子邮件,其就通知另一个设备。这时,发送出站电子邮件的所有另外的尝试停止并且在主计算机102上将该出站电子邮件标记为已发送。也可以在手机220上将该电子邮件标记为已发送。
在一个实施例中,手机220不是等待来自主计算机102的传输请求,而是在接收到出站电子邮件副件之后等待预定的时间段。如果在该时间期间手机220没有接收到来自主计算机102的表示出站电子邮件已经被发送的通知,则手机220开始尝试经过第二网络连接114发送出站电子邮件。这样,在一个实施例中,除了以别的方式告知手机220,则在一个时间段之后手机220假设出站电子邮件没有被成功发送。 同步装置106还有利于在没有重复的情况下经过多个路径接收入站电子邮件。在一个实施例中,同步装置106获得用于经过第一网络连接108发送到主计算机102的每一个入站电子邮件的唯一标识符。例如,同步装置106可以使用日/时/所发送的邮件报头作为唯一标识符。同步装置106还可以与例如发送者、主题或它们中的某些组合等其它信息结合来使用日/时/所发送的邮件报头,以唯一标识经过第一网络连接108接收到的入站电子邮件。本领域技术人员将理解可以唯一识别电子邮件的各种方法。
同步装置106将经过第一网络连接108接收到的入站电子邮件的唯一标识符组与手机220经过第二网络连接114接收到的入站电子邮件的唯一标识符相比较。在一个实施例中,支持装置224对手机220接收到的入站电子邮件提供唯一标识符。通过比较两组唯一标识符,同步装置106确定哪些入站电子邮件已经被手机220接收到而没有被主计算机102接收到。然后,同步装置106接收手机220已经接收到但是主计算机102没有接收到的这些入站电子邮件。 在一个实施例中,同步装置106使得由手机220接收到的这些入站电子邮件出现在电子邮件客户端202中,仿佛经过第一网络连接108接收到这些入站电子邮件。在某些实施例中,由手机220接收到的入站电子邮件是实际在电子邮件服务器210上的入站电子邮件的简化版本。发送该简化版本可以节约第二网络140上的带宽。在该实施例中,当入站电子邮件实际经过第一网络连接108到达时,同步装置106可以使以经过第一网络连接108接收到的入站电子邮件的版本代替从手机220接收到的入站电子邮件的版本。
作为结果,不论第一网络连接108的连接状态如何,本发明都允许用户使用主计算机102发送电子邮件。入站和出站电子邮件都经过第一可用网络连接被接收和发送。另外,同步装置106减少了重复的发生,给出从电子邮件服务器210和到达电子邮件服务器21的两个分离的数据路径的情况下,重复可能发生。 图2还示出卡206与高速缓冲存储器装置204。卡206可以用于扩展所给出的电子邮件解决方案的多功能性。在某些实施例中,同步装置106与主计算机102共同操作,同
12步装置106仅当主计算机102操作时才起作用。在某些实施例中,该情况被称为"sO"。在主计算机102处于挂起、休眠或软体关机(分别为s3、s4和s5)的情况下,同步装置106不可用并且不提供所描述的功能性。主计算机102也不将第三网络连接116保持在该状态。
优选地,将卡206配置为独立于主计算机102进行操作。这样,即使当主计算机102不可用时卡206还保持电能。在某些实施例中,卡206还包括其自身的处理器和存储器并运行其自身的分离的操作系统,从而其能够独立于主计算机102起作用。
当主计算机102可用时,同步装置106还将发送到手机220的信息写到卡206,在一个实施例中,高速缓冲存储器装置204仅存储受到同步装置106影响的这些电子邮件,即,高速缓冲存储器装置204不复制电子邮件用户端202的整个邮箱。仅将上述被发送或接收到的这些电子邮件存储到高速缓冲存储器装置204。 一旦完成同步,就从高速缓冲存储器装置204中删除电子邮件。这样,还将从发送到手机220的信息和从手机220接收到的信息存储在高速缓冲存储器装置204中。在一个实施例中,当主计算机102可用时,手机220直接与主计算机102通信。 当主计算机102不可用时(如其处于s3、s4、s5时),手机220经由第三网络连接116与卡206传输信息。这样,终止与主计算机102的任意连接并建立与卡206的连接。由于卡206仍然可用,因此手机220可以继续将信息写到卡206。这样,可以将上述通知发送到卡206并将通知存储在高速缓冲存储器装置204中。当主计算机102恢复联机时,同步装置106可以通过从卡206中提取信息来快速确定被发送和接收的电子邮件的状态。
在一个实施例中,同步装置106对卡206而不是主计算机102进行操作。在其它实施例中,将卡206配置以提供高速缓冲存储器装置204并且卡206被配置为次级设备110。例如,可以对卡206配置无线网络连接,从而在所描述的实施例中卡206可以有效地代替手机220。可选择地,卡206可以用作对于电子邮件服务器210的另一个连接路径。
在系统200的某些实施例中,主计算机102不具有所连接的卡206。同步装置106仍提供上述服务,然而,在该种实施例中当主计算机102不可用时,无法共享通信和同步信息。 图3示出其中由第一网络130将主计算机102和次级设备110都连接到服务器120的系统300。然而,由第一网络连接108连接主计算机102并由第二网络连接114连接次级设备110。例如,第一网络连接108可以是以太网连接,而第二网络连接114是无线连接。 虽然该种实施例不能提供由允许主计算机102和次级设备110经过分离的网络通信的系统提供的相同范围的保护,但是所描述的实施例仍可以是有用的。例如,通过允许数据经过第二网络连接114传送来解决阻止数据经过第一网络连接108被发送的主计算机102中的问题。系统300仍提供增加的可靠性和坚实的数据通信。 图4说明根据本发明的同步装置106的一个实施例。在所描述的实施例中,同步
装置106包括出站模块310、确认模块312、重试模块314及同步模块316。 如果主计算机102没有经过第一网络连接108发送出站数据项目,则出站模块310
通知次级设备110失败发送事件。当次级设备110接收到失败发送事件的通知时,次级设备
110启动次级设备110上的次级发送事件。次级设备110从而尝试经过第二网络连接114
发送出站数据项目。
13
在一个实施例中,通知次级设备110包括对次级设备110提供指示次级设备110发送了出站数据项目的证实(affirmative)通知。在其它实施例中,通知次级设备110包括对次级设备110提供出站数据项目的副本并且不提供在主计算机102上发送电子邮件的指示。例如,出站模块310可以对次级设备110提供出站数据项目的副本。可以配置次级设备110,以如果次级设备110在所描述的时间段内没有接收到由主计算机102发送了出站数据项目的确认则开始尝试发送出站数据项目。从而,通知次级设备110失败发送事件包括否定证实的该种实施例,即,相反地,在缺乏通知时假设故障。 在另一实施例中,通知次级设备110包括检测主计算机102上的发送事件并经过第三网络连接116将出站数据项目复制到次级设备110。在该实施例中,还可以配置出站模块310以监视表示用于主计算机上的出站数据项目的发送事件已经失败或延迟的传输事件。可以由主计算机102上的操作系统或在主计算机102上运行的应用来产生传输事件。
在一个实施例中,如果出站模块310检测到传输事件,则出站模块310对次级设备IIO发送传输请求。如果次级设备接收到来自出站模块310的传输请求,则配置次级设备110来经过第二网络连接114发送出站数据项目的副本。 在一个实施例中,同步装置106还包括确认模块312。配置确认模块312以当次级设备IIO经过第二网络连接114成功发送出站数据项目时接收来自次级设备110的确认通知。确认通知可以是标记、消息(例如XML)、出站数据项目的状态的改变(即,状态从未发送改变为已发送)或表示次级设备110已经发送了出站数据项目的其它通知。
在一个实施例中,同步装置106还包括重试模块314。当确认模块312没有用于由次级设备110发送的出站数据项目的确认通知时,重试模块314启动用于出站数据项目的主计算机102上的新的发送事件,该确认通知表示出站数据项目已经被发送。只要确认模块312没有接收到确认通知,重试模块314就可以指示主计算机102以规则间隔启动新的发送事件。可选择地,重试模块314可以响应于主计算机102检测到网络设置的改变(即,如果主计算机102检测到主计算机110已经经由第一网络连接108连接到网络)或主计算机102的状态的改变(即,主计算机从s3、s4或s5改变为s0)来指示主计算机102启动新的发送事件。 同步装置106还可以包括同步模块316,同步模块316对次级设备IIO提供表示主计算机102已经成功执行用于出站数据项目的发送事件的成功通知。配置次级设备110,以当次级设备110接收到来自同步模块316的成功通知时停止启动用于出站数据项目的次级发送事件。 还可以配置同步模块316,以如果确认模块312接收到上述确认通知则指出在主计算机上发送的出站数据项目。例如,在出站数据项目是电子邮件的情况下,同步模块316可以指示电子邮件客户端202将出站电子邮件从"未发送"文件夹移动到"已发送"文件夹。作为结果,用户知道出站电子邮件已经被发送。然而,对用户隐藏怎样发送了出站电子邮件的原理。在一个实施例中,同步模块316对出站电子邮件元数据写入表示其已由次级设备IIO发送的信息。 在一个实施例中,成功通知和确认通知仅表示出站数据项目已经由无论主计算机102或次级设备110的相关设备成功发送。该通知不需要表示出站数据项目被成功传输到服务器120。
在一个实施例中,同步装置106还包括管理入站数据项目的接收和同步的入站模 块318。在一个实施例中,入站模块318获得用于发送到主计算机102的入站数据项目的一 组唯一标识符。入站模块318将用于被发送到主计算机102的入站数据项目的该组唯一标 识符与用于被发送到次级设备110的入站数据项目的唯一标识符相比较。
通过比较,入站模块318确定哪些入站电子邮件已经被次级设备110接收到而没 有被主计算机102接收到。入站模块318从次级设备110接收主计算机102没有接收到的 这些入站数据项目。在一个实施例中,当主计算机102能够经过第一网络连接108连接到 服务器120时,对从次级设备110接收到的这些入站数据项目进行标记或代替地以其它方 式做记号。 同步装置106因此操作以提供用于发送出站数据项目及接收入站数据项目的多
个路径,同时确保出站和入站数据项目不重复。作为结果,同步装置106对消费者,尤其是
经常处于活动中的那些消费者,提供更坚实、更多用途及更有价值的解决方案。 图5说明根据本发明的支持装置224的一个实施例。在次级设备110上实施支持
装置224,次级设备110与同步装置106协调工作来对坚实的数据传输系统提供最小风险的
数据重复。支持装置224包括发送模块510、证实模块512及次级重试模块514。 配置发送模块510以当同步装置106的出站模块310提供主计算机110上的失败
发送事件的通知时经过次级设备110的第二网络连接114发送出站数据项目。在一个实施
例中,发送模块510产生次级发送事件,该次级发送事件调用由次级设备110的通信模块
112提供的功能性来发送出站数据项目。这样,如果经过第一网络连接108没有发送出站数
据项目,则同步装置106和支持装置224 —起工作以经过第二网络连接114发送出站数据项目。 如上所述,当次级设备110成功发送了出站数据项目时,同步装置106的确认模块 312接收确认通知。当次级设备110经过第二网络连接114成功发送了出站数据项目时,证 实模块512将该确认通知发送到确认模块312。在一个实施例中,响应于发送模块510产生 用于被成功执行的出站输出项目的发送事件,证实模块512发送确认通知。
如果发送模块510产生的次级发送事件失败,则次级重试模块514在次级设备110 上重发出站数据项目。在一个实施例中,次级重试模块514产生用于出站数据项目的新的 次级发送事件。当次级设备110报告其网络状态的改变、次级设备110的状态的改变或上 述的某种组合时,次级重试模块514可以在次级发送事件失败之后以特定间隔产生新的次 级发送事件。还可以使用除了以上提到的之外的事件来确定何时产生新的次级发送事件, 并且本发明不限于用于产生新的次级发送事件的任何特定事件。 以上说明了当同步装置106成功发送出站数据项目时,同步模块316对次级设备 110提供成功通知。在一个实施例中,次级重试模块514证实在产生新的次级发送事件之前 次级设备110没有接收到成功通知。次级重试模块514可以简单地检查以查看是否已经发 送成功通知,可以为了成功通知而查询同步装置106,或可以进行二者的组合。在产生新的 次级发送事件之前证实同步装置106没有经过第一网络连接108发送出站数据项目有助于 确保减少数据重复。 图6是示出用于提供具有低风险的无意的数据重复的高可用性数据通信系统的 方法600的一个实施例的示例性流程图。左侧流程图代表在主计算机102上的动作,右侧流程图代表在次级设备110上的动作。方法600首先在主计算机上产生发送事件(步骤 602)。在一个实施例中,用户通过输入主计算机102上的发送命令来产生发送事件,该发送 命令指示主计算机102通过第一网络连接108发送出站数据项目。在另一实施例中,不接收 用户输入,主计算机102或在主计算机102上运行的应用产生用于出站数据项目的发送事 件。例如,可以配置主计算机102来以特定间隔自动产生报告并将报告发送到服务器120。
在产生发送事件之后,出站模块310将出站数据项目复制到次级设备110 (步骤 604)。如上所述出站模块310还可以将出站数据项目复制到卡206。在其它实施例中,在产 生发送事件之前,出站模块310将出站数据项目复制到次级设备110和卡206。
在一个实施例中,出站模块310监视主计算机102并确定发送事件是失败还是成 功(步骤606)。出站模块310可以对传输事件监视主计算机102,该传输事件表示用于出 站数据项目的发送事件是失败或是没能执行。如果用于出站数据项目的发送事件成功执 行,则同步模块316对次级设备110提供成功通知(步骤616)。同步模块316可以进一步 指出在主计算机102上发送的出站数据项目(步骤632)。作为响应,次级设备110上的发 送模块510从次级设备110上的发送队列中删除该数据项目(步骤630)。
然而,如果发送事件失败,则出站模块310通知次级设备110发送事件失败(步骤 608)。在一个实施例中,出站模块310对次级设备110上的发送模块510提供通知。作为 响应,发送模块510在次级设备110上产生次级发送事件(步骤618)。次级发送事件指示 次级设备110经过第二网络连接114发送出站数据项目。 在一个实施例中,证实模块512确定次级发送事件是否成功(步骤620)。如果次 级发送事件成功,则证实模块512通知主计算机102 (步骤628)。当次级设备110成功执 行次级发送事件时,确认模块312接收由证实模块512提供的确认通知。作为响应,确认模 块312确定次级发送事件成功(步骤610)并且同步模块316指出发送的数据项目(步骤 632)。 如果次级发送事件不成功,则次级设备IIO继续尝试经过第二网络连接114发送 出站数据项目。在一个实施例中,在每一个尝试之前,次级重试模块514确定主计算机102 是否经过第一网络连接108成功发送了出站数据项目(步骤622)。次级重试模块514可以 通过检查同步模块316是否已经发送了表示在主计算机102上已经成功发送了出站数据项 目的成功通知来进行确定。可选择地,在每一个新的发送尝试之前,次级重试模块514可以 查询主计算机102并请求用于出站数据项目的状态更新。 如果主计算机102已经成功发送了该出站数据项目,则次级设备110上的发送模 块510从次级设备110上的发送队列中删除该数据项目(步骤630)。同时,由于出站数据 项目已经被成功发送,因此次级设备110不再进行尝试。如果次级重试模块514确定主计 算机102没有成功发送该出站数据项目(步骤622),则次级重试模块514产生用于出站数 据项目的新的次级发送事件(步骤624)。 如果证实模块512确定该新的次级发送事件成功(步骤626),则发送模块从发送 队列中删除该项目(步骤630)。如果该新的次级发送事件不成功,则重复进行确定主计算 机102是否已经发送了出站数据项目、进一步尝试发送出站数据项目以及确定进一步的尝 试是否成功的处理。 如在步骤610、612及614中所示,在主计算机102上发生类似处理。与联系次级
16设备110所描述的类似,如果在主计算机102上的第一尝试失败,则重试模块314进行进一 步尝试发送出站数据项目。在一个实施例中,只要确认模块312没有接收到来自次级设备 110的确认通知,重试模块314就产生新的发送事件,该确认通知表示次级设备110经过第 二网络连接114成功发送了出站数据项目。在可选实施例中,在产生新的发送事件之前,重 试模块314请求更新。 如果次级设备110已经成功发送了出站数据项目,则同步模块316对在主计算机 102上发送的出站数据项目进行标记。如果次级设备110还没有成功发送出站数据项目,则 重试模块314产生用于出站数据项目的新的发送事件(步骤612)。如果该新的发送事件也 失败,则重复进行证实和重发送的处理,直到主计算机102或次级设备110发送出站数据项 目。 一旦数据项目被成功发送,同步模块316提供适当的通知并且指出已发送的该出站数 据项目。 图7示出说明用于根据本发明接收入站数据项目的方法700的一个实施例的示例 性流程图。与图6相同,左侧流程图代表在主计算机102上的动作,右侧流程图代表在次级 设备110上的动作。 方法700开始于主计算机102接收入站数据项目(步骤702)。入站模块318获得 如上所述的用于入站数据项目的唯一标识符(步骤704)。次级设备110类似地接收入站数 据项目(步骤712)并获得用于每一个入站数据项目的唯一标识符(步骤714)。然后,次级 设备110将唯一标识符发送到主计算机102。 在一个实施例中,入站模块318要求用于由次级设备110接收到的数据项目的一 个或多个唯一标识符。次级设备110还可以将该唯一标识符送到主计算机102。入站模块 318可以限定唯一标识符是什么并请求用于次级设备110上的入站数据项目的识别数据。 例如,入站模块318可以请求由次级设备110接收到的电子邮件的日/时/所发送的邮件 报头及主题句。在该种实施例中,次级设备IIO仅需要对于使入站数据项目同步的有限的 智能,只要次级设备110能够对来自主计算机102的数据请求做出响应。
入站模块318将从次级设备110接收到的唯一标识符与用于由主计算机102接收 到的入站数据项目的唯一标识符相比较(步骤706)。如果次级设备110具有主计算机102 不具有的入站数据项目,则入站模块318请求那些数据项目(步骤708)。在一个实施例中, 入站模块318请求与唯一标识符相应的数据项目,该唯一标识符用于由次级设备110接收 而不是由主计算机102接收的数据项目。 作为响应,次级设备IIO将入站数据项目发送到主计算机102(步骤71S)。作为结 果,只要次级设备具有有效的网络连接,即使主计算机102不具有有效的网络连接,也保持 主计算机102对于入站数据项目可用。另外,本发明确保仅通过次级设备110将主计算机 102没有接收到的那些项目发送到主计算机102。这样减少了重复事件并使系统更易管理 和稳定。 在一个实施例中,入站模块318对已经从次级设备110接收到的那些入站数据项 目进行标记,以当主计算机102直接接收到那些入站数据项目时进行替换。在一个实施例 中,这可以通过保存用于从次级设备110接收到的那些入站数据项目的唯一标识符的表格 来实现。在接收到数据项目时,入站模块318得到唯一标识符并将其与表格中的标识符进 行比较。如果在表格中找到该唯一标识符,则替换该特定的入站数据项目并从表格中删除
17该输入项。 在不脱离本发明的宗意或基本特性的情况下,可以以其它特性形式实现本发明。 所描述的实施例被认为在所有方面仅是说明性的而非限制。因此,由后附权利要求而不是 由前述描述来指出本发明的范围。处于权利要求的意义和等效范围内的所有改变被包括在 该范围内。
权利要求
一种在多个计算设备间用于数据同步的方法,包括响应于主计算机未能经过第一网络连接发送出站数据项目,对次级设备通知失败发送事件,其中,配置次级设备以响应于接收到失败发送事件的通知而经过第二网络连接产生用于出站数据项目的次级发送事件;响应于次级设备未能成功发送出站数据项目,经过第一网络连接产生用于出站数据项目的新的发送事件;及响应于主计算机成功执行经过第一网络连接发送出站数据项目的新的发送事件,对次级设备通知成功发送事件。
2. 根据权利要求1所述的方法,进一步包括使主计算机接收来自次级设备的确认通 知,其中,响应于次级设备成功发送出站数据项目,次级设备发送确认通知。
3. 根据权利要求1所述的方法,其中,配置次级设备以响应于接收到来自主计算机的 成功发送事件的通知,停止在第二网络连接上产生用于出站数据项目的次级发送事件。
4. 根据权利要求1所述的方法,其中,还响应于主计算机状态的改变和主计算机的网 络连接状态的改变中的一个,产生新的发送事件。
5. 根据权利要求1所述的方法,进一步包括在产生新的发送事件之前,使主计算机证 实次级设备未能成功发送出站数据项目。
6. 根据权利要求1所述的方法,进一步包括响应于主计算机经过第一网络连接发送了 出站数据项目和次级设备经过第二网络连接发送了出站数据项目中的一个,使主计算机指 出已发送的出站数据项目。
7. 根据权利要求1所述的方法,其中,通过与主计算机分离并被直接连接到主计算机 的卡将次级设备通信地连接到主计算机,并且其中,通过蓝牙连接将所述卡通信地连接到 次级设备。
8. 根据权利要求7所述的方法,其中,响应于处于断电状态的主计算机,所述卡对次级 设备发送数据并从次级设备接收数据。
9. 根据权利要求1所述的方法,进一步包括使主计算机确定次级设备是否已经接收到主计算机没有经过第一网络连接接收到的入站数据项 目;及从次级设备接收主计算机没有接收到的入站数据项目。
10. 根据权利要求9所述的方法,其中,确定次级设备是否已经接收到主计算机没有接 收到的入站数据项目进一步包括获取用于经过第一网络连接发送到主计算机的入站数据项目的一组唯一标识符; 获取用于经过第二网络连接发送到次级设备的入站数据项目的一组唯一标识符;及 从次级设备接收具有不属于用于主计算机的入站数据项目的该组唯一标识符的唯一 标识符的入站数据项目。
11. 根据权利要求1所述的方法,其中,出站数据项目是电子邮件、日程事件及软件更 新之一。
12. 根据权利要求1所述的方法,其中,通过蓝牙连接将次级设备通信地连接到主计算机。
13. 根据权利要求1所述的方法,其中,在主计算机和卡中的一个上执行所述计算机可读程序。
14. 一种用于减少在多路径环境中的数据传输重复的装置,该装置包括 出站模块,用于响应于主计算机未能经过第一网络连接发送出站数据项目,对次级设备通知失败发送事件,其中,配置次级设备以响应于接收到失败发送事件的通知而产生指 示次级设备经过第二网络连接发送出站数据项目的次级发送事件;确认模块,用于响应于次级设备成功执行次级发送事件从而经过第二网络发送了出站 数据项目,接收来自次级设备的确认通知;重试模块,用于当确认模块缺少用于出站数据项目的确认通知时,在主计算机上对出 站数据项目产生新的发送事件;及同步模块,用于对次级设备提供表示由主计算机发送的出站电子邮件的成功发送事件 的成功通知,其中,配置次级设备以响应于接收到成功通知,停止产生用于出站数据项目的 次级发送事件。
15. 根据权利要求14所述的装置,同步模块进一步用于响应于确认模块接收到确认通 知,指出在主计算机上已发送的出站数据项目。
16. 根据权利要求14所述的装置,进一步包括入站模块,该入站模块用于 获取用于发送到主计算机的一个或多个入站数据项目的一组唯一标识符; 将用于发送到次级设备的一个或多个入站数据项目的一个或多个唯一标识符与用于发送到主计算机的一个或多个入站数据项目的一组唯一标识符相比较;及从次级设备接收具有不属于用于主计算机的入站数据项目的该组唯一标识符的唯一 标识符的、由次级设备接收到的入站数据项目。
17. 根据权利要求14所述的装置,其中,还响应于下面的一个或多个,重试模块产生新 的发送事件主计算机检测到网络连接; 主计算机进入上电状态;及 预定等待时间结束。
18. —种系统,该系统包括 主计算机,该主计算机包括将主计算机通信地连接到第一网络的第一网络连接; 第一同步装置,该第一同步装置包括出站模块,用于响应于主计算机未能经过第一网络发送出站数据项目,对次级设备通 知失败发送事件;确认模块,用于响应于次级设备经过第二网络成功发送了出站数据项目,接收来自次 级设备的确认通知;重试模块,用于响应于确认模块缺少用于出站数据项目的确认通知,在主计算机上重 新发送出站数据项目;及同步模块,用于响应于由主计算机进行的出站数据项目的成功发送,对次级设备提供 成功通知;次级设备,该次级设备包括将次级设备通信地连接到第二网络的第二网络连接;支持装置,该支持装置包括发送模块,用于响应于从出站模块接收到在主计算机上的失败发送事件,经过第二网 络产生用于出站数据项目的次级发送事件;证实模块,用于响应于次级设备经过第二网络成功发送了出站数据项目,将确认通知 发送到主计算机;次级重试模块,用于响应于次级发送事件失败并进一步响应于次级设备缺少成功通 知,在次级设备上重新发送出站数据项目。
19. 根据权利要求18所述的系统,其中,进一步配置重试模块以持续重新发送出站数 据项目,直到出现由主计算机进行的出站数据项目的成功发送事件和确认模块接收到确认 通知中的一个。
20. 根据权利要求18所述的系统,进一步包括配置用于通过直接连接通信地连接到主 计算机以及通信地连接到次级设备的卡。
21. 根据权利要求18所述的系统,其中,响应于主计算机处于断电状态,所述卡对次级 发送数据并从次级设备接收数据。
22. —种用于减少在多路径环境中的数据传输重复的装置,该装置包括 出站模块,该出站模块用于检测在主计算机上操作的邮件用户代理的发送事件,该发送事件指示主计算机经过将 主计算机连接到第一网络的第一网络连接发送出站电子邮件;将出站电子邮件复制到次级设备,将该次级设备通信地连接到主计算机并通过第二网 络连接通信地连接到第二网络;监视一个或多个传输事件,所述一个或多个传输事件表示主计算机上的出站电子邮件 的发送事件是失败和延迟中的一个;响应于一个或多个传输事件的出现,将传输请求发送到次级设备,其中,配置次级设备 以响应于接收到传输请求而发送出站电子邮件;确认模块,用于响应于次级设备成功发送出站电子邮件而接收来自次级设备的确认通 知;及重试模块,用于当确认模块缺少用于出站电子邮件的确认通知时,对于主计算机上的 出站电子邮件在邮件用户代理中产生新的发送事件。
23. 根据权利要求22所述的装置,进一步包括同步模块,同步模块用于对次级设备提 供表示由主计算机进行的出站电子邮件的成功发送事件的成功通知,其中,配置次级设备 以响应于接收到成功通知而从发送队列中删除该出站电子邮件。
24. 根据权利要求23所述的装置,进一步包括入站模块,入站模块用于 获取用于发送到主计算机的一个或多个入站电子邮件的一组唯一标识符; 将用于发送到次级设备的一个或多个入站电子邮件的一个或多个唯一标识符于用于发送到主计算机的一个或多个入站电子邮件的一组唯一标识符相比较;及从次级设备接收具有不属于用于主计算机的入站电子邮件的该组唯一标识符的唯一 标识符的、由次级设备接收到的入站电子邮件。
全文摘要
本发明公开了一种用于在提供多数据路径的环境中将入站和出站数据进行同步的装置、系统及方法。当尝试通过主计算机发送数据失败时,主计算机对次级设备通知失败的分离的网络连接。次级设备尝试经过自身的分离的网络连接发送数据。如果次级设备未能发送数据,则主计算机产生新的尝试以经过自身的网络连接发送数据。如果主计算机尝试发送数据持续失败,则次级设备进行相同的动作。当主计算机或次级设备发送了出站数据时,其将该成功发送通知另一方。该设备然后停止进一步尝试传输数据。对于入站数据,主计算机和次级设备获取用于入站数据项目的唯一标识符、比较它们并向另一个请求其没有接收到的那些入站数据项目。
文档编号H04L12/58GK101753483SQ20091025284
公开日2010年6月23日 申请日期2009年12月4日 优先权日2008年12月4日
发明者斯蒂文·理查德·佩林, 詹姆斯·约瑟夫·恩拉舍, 詹尼弗·格林伍德·扎瓦克基, 贾斯廷·雅勒·达布斯, 迈克尔·泰瑞尔·瓦诺维尔 申请人:联想(新加坡)私人有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1