[发明专利]一种同步故障处理方法、客户端、服务器及其系统有效
申请号: | 200810216120.X | 申请日: | 2008-09-08 |
公开(公告)号: | CN101431401A | 公开(公告)日: | 2009-05-13 |
发明(设计)人: | 刘海涛;宋悦 | 申请(专利权)人: | 深圳华为通信技术有限公司 |
主分类号: | H04L7/04 | 分类号: | H04L7/04;H04L29/06;H04L1/16 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518129广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 同步 故障 处理 方法 客户端 服务器 及其 系统 | ||
技术领域
本发明实施例涉及数据处理技术领域,具体涉及一种同步处理方法、客户 端、服务器及其系统。
背景技术
随着信息社会的迅速发展,人们迫切期望个人信息(如电子邮件、日历、 通讯录等)能够在不同的设备(包括掌上电脑、移动电话、PDA、台式机)上 同时得到更新,保持数据的一致性。例如,用户期望在掌上电脑上阅读了一封 新收到的邮件,可以在他的台式机中自动地将这封邮件显示为已读邮件;又例 如移动设备用户通过电子邮件收到定单时,就可以立即使用同一移动设备访问 公司的存货系统,以确定发货日期。这就要求不同设备间的需要进行数据的同 步。
SyncML(Synchronization Markup Language)是一种信息同步标准协议。 SyncML协议定义了在客户端和服务器之间消息的交互过程和数据同步的类 型。其中的一种同步类型为慢同步,是指客户端与服务器端把自己的所有数据 都发送给对方,进行一对一的比对同步。此外,现有技术中还有一种利用指纹 来对数据进行比对从而进行数据同步的方法。
在现有技术利用指纹进行数据同步(DS)的方法中,指纹是对一组数据通 过某种算法处理后得到的一个数值。数据的任何变化都会导致指纹的不同,因 此指纹可以有效标识数据。从一项数据元素到一个数据库都可以产生对应的指 纹,其中数据库的指纹在DS协议中叫做Container。指纹可以只由终端产生, 也可以由终端及服务器双方产生。指纹的用途是用于服务器来判别它从终端收 到的数据与自身存储的数据是否相同。因为无论哪一边修改了数据,指纹都会 不一致。如果指纹一致,表明服务器与终端的数据一样,终端不需要发送,如 果指纹不一样,表明数据有修改,这时要看冲突检测策略,如果是以服务器端 的数据为准,那终端也没有必要发送数据。这样,通过比较指纹可以避免发送 一些不必要的数据,从而节省了流量。另外,指纹也可以用作断点续传。这种 利用指纹的同步方法也称为智能同步(SmartSync)。一次同步过程通常分为三 个阶段,需要六个数据包来完成,即从消息包1到消息包6(PKG1到PKG6)。 指纹有多种算法,为了通信双方使用一致的算法,需要进行算法协商。一方将 其所支持的算法集发送给另一方,另一方从中找到其支持的指纹算法,并告知 对方,从而完成指纹算法的协商。
如图1所示,为智能同步的方法流程图,包括:
1、同步初始化阶段(如图中所示的PKG1和PKG2)
同步初始化主要完成身份鉴权、需要同步的数据库的协商、同步能力的协 商,比如,支持同步哪些数据、支持哪些同步类型等。
无论某一次同步过程由哪方发起,客户端都会首先向服务器发送同步初始 化包(PKG1),在PKG1中主要包含客户端鉴权信息、设备能力、指纹使用方式等;
服务器收到PKG1后,会验证客户端帐号信息,同时把验证结果返回给客户 端,即PKG2。
2、同步阶段(如图中所示的PKG3至PKG6)
通过分析PKG2中指定的同步类型,客户端会把本地数据库全部数据或者自 上次同步成功完成之后发生过变更的所有数据(包括增、删、改数据)封装到 PKG3中发送给服务器。服务器收到PKG3后,执行其中的各种操作指令将数据更 新到对应数据库中。在将指令执行状态返回给客户端的同时,服务器也会把本 身数据库中自上次同步完成之后发生过变更的所有数据(包括增、删、改数据) 封装到PKG4中返回给客户端,其中,PKG3发送的为数据的ID和指纹,服务器收 到PKG3后,进行指纹比对,通过PKG4指示客户端需要发送的数据元素的标识。
客户端接受到PKG4后,根据服务器的指示通过PKG5发送需要的数据元素。 服务器收到PKG5后,通过PKG6返回接收状态信息,可选地,发送服务器端的 修改数据。
3、同步完成阶段(如图中所示PKG7和PKG8)
客户端和服务器端互相确认同步完成。
客户端返回发送数据的状态,发送映射命令(MAP命令)给服务器 (PKG7);
服务器返回对映射命令的状态信息(PKG8)
在现有的智能同步方法中,在同步过程发生异常中断,出现同步故障后, 通常会发起一个同步恢复过程(Resume),这时同步双方将使用Smar tSync同步 方法,计算同步数据库Changelog列表中数据项的指纹并发给对方,从而确定 需要发送的数据项。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳华为通信技术有限公司,未经深圳华为通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810216120.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:园艺剪安全装置
- 下一篇:基于智能模块的无柜化电源系统