




已阅读5页,还剩53页未读, 继续免费阅读
(检测技术与自动化装置专业论文)基于symbian的syncml数据同步协议的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连理工大学硕士学位论文 摘要 手机的地址簿记载了联系人的详细信息( 如联系人的姓名、电话、e m a i l 和住址等) , 为了避免用户因手机损坏或丢失而造成联系人信息遗失,以及减少用户平时在多个终端 设备上维护同一份联系人信息的不便,本文设计了一种基于s y m b i a n 操作系统和 s y n c m l 数据同步协议的联系人信息同步系统,利用w i n d o w sl i v ec o n t a c t s 的w e b s e r v i c e 服务器完成了相应的l i v e s y n c 手机客户端软件实现。 首先,作者在仔细研究了当前主要数据同步协议的基础上,通过分析比较,最终选 定s y n c m l 数据同步协议作为整个同步系统的基础协议。s y n c m l 协议是一种基于x m l 的数据同步协议,它使得各种不同类型的终端设备和应用服务器之间可以通过相同的方 式进行数据同步; 其次,分析当前同步问题的难点,提出了自己的解决思路和方法,进行了客户端与 服务端同步的算法设计,完成了s y n c m l 协议的软件技术研究,并针对当前移动设备数 据同步方案存在的种种不足,提出了自己的移动设备数据同步系统架构解决方案,以客 户端中间备份作为同步过程中的仲裁判据,使得在支持的数据格式、同步逻辑和冲突处 理上相对于目前应用在商业中使用的移动设备数据同步解决方案,在商务逻辑上有了明 显的简化; 最后,通过对整个系统分析,将本同步系统划分为四个模块:负责x m l 解析、 w i n d o w sl i v ec o n t a c t s 通信协议及h t r p 引擎的网络服务模块;负责本地化语言支持、 手机地址簿引擎及手机文件系统服务的文件操作模块;负责用户信息安全保护、同步策 略及冲突检测及解决的s y n c m l 同步协议模块;负责系统内置程序调用、九宫格用户界 面及同步设置对话框的用户界面模块。 通过对以上模块在p c 机上的编程实现,并用s y m b i a n 手机模拟器完成调试,以及 最终让用户在真机进行体验,完成了本文所研究内容的具体实践。 本系统可以在移动终端与网络应用服务器间进行地址簿数据的实时同步。用户可以 使用不同终端与服务器进行数据的直接同步,并从而实现在不同终端设备上对同一份联 系人的间接同步,方便而且安全地保证了用户手机联系人信息的一致性和完整性。 关键词:s y n c m l ;数据同步;s y m b i a n 大连理工大学硕士学位论文 r e s e a r c ha n di m p l e m e n to fs y n c m l p r o t o c o lb a s e do ns y m b i a no s a b s t r a c t t h ea d d r e s sb o o kc o n t a i n sp e r s o n a ld e t a i l e di n f o r m a t i o n ( s u c ha sn a m e t e l e p h o n e n u m b e r , e - m a l la n da d d r e s se t e 、t oa v o i dc o n t a c ti n f o r m a t i o nl o s t i nt h ec a s eo fp h o n e d a m a g e do rl o s ta n dt oi n d u c ei n c o n v e n i e n c eo fm a i n t a i n i n gt h es a m ec o n t a c ti n f o m a a t i o no n d i f f e r e n tt e r m i n a l s ,t h i sp a p e rd e s i g nac o n t a c ts y n c h r o n o u ss y s t e mw h i c hb a s e do ns y m b i a n o sa n ds y n c m ld a t as y n c h r o n o u sp r o m c 0 1 i tc o m p l e t e st h es o f t w a r eo fl i v e s y n cm o b i l e p h o n ec l i e n tw h i c hu s e st h e k bs e r v i c eo f w i n d o w sl i v ec o n t a c t s f i r s lt h r o u g ht h ea n a l y s i sa n dc c o m p a r i s o n , t h ea u t h o rf m a l l ys e l e c t e dt h es y n c m ld a t a s y n c h r o n o u sp r o t o c o la st h ef o u n d a t i o no f t h ee n t i r es y n c h r o n o u ss y s t e m s y n c m lp r o t o c o li s d a t as y n c h r o n o u sp r o t o c o lw h i c hb a s e do nx m l i tc a ns y n c h r o m z eb e t w e e nd i f f e r e n tt y p e t e r m i n a l sa n ds e r v e ra st h es a m ew a y ; s e c o n d , a n a l y z i n gt h ed i f f i c u l to f c u r r e n ts y n c h r o n o u sp r o b l e m s ,t h ea u t h o rp u t sf o r w a r d s o l u t i o na n dm e t h o d sa n dd e s i g n st h es y n c h r o n o u sa l g o r i t h mb e t w e e nc l i e n ta n ds e r v e r a n a l y z i n gt h ed i s a d v a n t a g e so fc u r r e n tm o b i l ei m p l e m e n t ss y n c h r o n o u ss c h e m e ,t h ea u t h o r p u t sf o r w a r da s o l u t i o nw h i c hs e t st h ec l i e n tc o p ya st h ea r b i t r a t i o nc r i t e r i o ni nt h ec o u r s eo f s y n c h r o n o u sp r o c e s s s oi tm u c hm o r es i m p l i f i e dt h a nt h ec a s ew h i c hu s e si nc u r r e n tb u s i n e s s o ns u p p o r t i n gd a t af o r m a t ,s y n c h r o n o u sl o g i ca n dc o n f l i c ts o l u t i o n ; a tl a s t ,a n a l y z i n gt h ew h o l es y s t e m , t h ea u t h o rd i v i d et h es y n c h r o n o u ss y s t e mi n t of o u r m o d u l e s :n e t w o r ks e r v i c em o d u l ew h i c hr e s p o n s i b l ef o rx m lp a r s i n g ,w i n d o w sl i v ec o n t a c t s c o m m u n i c a t i o np r o t o c o la n dh me n g i n e ;f i l eo p e r a t i o nm o d u l ew h i c hr e s p o n s i b l ef o r l o c a l i z a t i o nl a n g u a g es u p p o r t , m o b i l ec o n t a c t se n g i n ea n df i l e s y s t e ms e r v i c e ;s y n c m l s y n c h r o n o u sp r o t o c o lm o d u l ew h i c hr e s p o n s i b l ef o ru s e ri n f o r m a t i o np r o t e c t , s y n c h r o n o a s s t r a t e g ya n dc o n f l i c t sd e t e c t i o na n ds o l v e d ;u s e ri 1 1 t e r f h c em o d u l ew h i c hr e s p o n s i b l ef o r c a l l i n gp r o g r a m ,s q u a r e df i g u r eu s e ri n t e r f a c ea n ds y n c h r o n i z a t i o ns e r i n gd i a l o g u e n 地a u t h o rc o m p l e t e sp r o g r a m m i n gr e a l i z a t i o no fa l lt h em o d u l e sa b o v eo np ca n d d e b u g si to ns y m b i a nm o b i l es i m u l a t o ra n dl e t su s e ru s ei to nr e a lt u r b i n e t h es y n c h r o n o u ss y s t e mc a nr e a l i z ec o n t a c t sr e a l - t i m es y n c h r o n i z a t i o nb e t w e e nm o b i l e t e r m i n a l sa n dn e t w o r ks e r v i c e u s e r sc a l lu s ed i f f e r e n tt e r m i n a l st os y n c h r o n i z ed i r e c t l yw i t h s e r v e ra n dc a nr e a l i z et os y n c h r o n i z ei n d i r e c t l yo nd i f f e r e n tt e r m i n a l sw i t h 廿l es a m ec o n t a c t s oi tc a nb es u r et h ec o n t a c t s c o n s i s t e n c ya n di n t e g r i t y k e yw o r d s :s y n c m l ;d a t as y n c h r o n i z a t i o n ;s y m b i a n i i l 独创性说明 作者郑重声明:本硕士学位论文是我个人在导师指导下进行的研究工 作及取得研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得大连理 工大学或者其他单位的学位或证书所使用过的材料与我一同工作的同志 对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意。 作者签名商趣日期:塑删 大连理工大学硕士研究生学位论文 大连理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连理工大学硕士、博士学位 论文版权使用规定”,同意大连理工大学保留并向国家有关部门或机构送 交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权大连理 工大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也 可采用影印、缩印或扫描等复制手段保存和汇编学位论文。 作者签名: 导师签名 大连理工大学硕士学位论文 1绪论 1 1 智能手机同步系统概述 据统计,目前移动应用业务功能中,语音通话、短信、联系人信息排在最前面。而 联系人信息作为人与人之间联系沟通的基础,为了使用方便,用户往往在不同的信息通 讯终端上( 手机、p c 、笔记本等等) ,都会维护一份联系人信息,这就给用户带来了一些 应用上的不便。 由于修改信息不能及时同步,用户在不同地方保存的联系人信息存在不一致;在商 务外出而手机又忘带的时候,无法方便地获得联系人信息;设备丢失或损坏,往往保存 在上面的联系人信息就永久丢失,造成不必要的损失; 如果有一种方式既能让用户方便地通过各种终端获取个人联系人信息,又能实现将 不同终端上联系人修改信息进行及时同步,将给用户带来极大的方便。 随着近几年互联网技术的不断成熟,对于传统的信息终端( p c ) ,通过成熟的b s 架构,可以方便的实现这一目标,但对于移动终端,由于移动数据网络以及移动终端处 理能力的局限性,使得移动终端到互联网间的数据交互仍有一定的困难,本项目就是在 目前日趋成熟的s y n c m l 数据同步协议的基础上,实现了基于s y m b i a n 操作系统的移动 终端与互联网应用服务器间地址簿数据的交换,从而使得用户通过该系统,可以通过不 同终端方便地获取完全一致的个人联系人信息。 1 2 同步技术研究现状 就目前的移动网络而言,虽然大多数移动终端都已经支持上网,使用手机通过网络 获取信息的用户也越来越多,但由于移动终端的多样性以及移动网络的数据传输速率和 网络稳定性还存在很大的局限性,对于需要支持多客户端,并需要频繁数据传输和交换, 实现不同设备间数据同步的网络应用,还是无法提供很好的解决方案。 s y n c m l 最早是由e r i c s s o n ,m m ,l o t u s ,m a t s u s h i t a ,m o t o r o l a ,n o k i a ,o p e n w a v e , s t a r f i s h ,s y m b i a n 这些产业巨头联合组建的。2 0 0 2 年s y n c m li n i t i a t i v e 正式并入o m a ( o p e nm o b i l e a p p l i a n c e ) ,只要移动设备支持s y n c m l ,那么即使互相使用的平台并不相 同,但是仍旧可以没有任何障碍的交换数据,因为利用x m l 这种开放式的标记语言, 所有需要被交换的信息都会以彼此双方可以识别的格式进行沟通。比如手机中的通讯录 功能,交换时采用的就是v c a r d 的格式,而手机中的行程安排功能,交换时采用的就是 i c a l e n d a r 格式。s y n c m l 标准使用了x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) 定义他的文挡 格式,x m l 是所谓的标记性语言,他的概念是将资料的表示和处理分开进行,x m l 负 基于s y m b h a 的s y n c m l 数据同步协议的研究与实现 责定义资料,应用程序则负责解析x m l 文件,取出其定义的原始资料并进行处理,以 s y n c m l 标准而言,不管使用什么平台或者装置,只要他的应用程序支持s y n c m l 标准, 就可以解析彼此问的资拳季内容进行资料的同步化。s y n c m l 标准的中心思想是以统一的 标准规范数据同步通讯,把同步的细节操作丢给智能手机自行处理,数据通讯同步软件 需要只告诉智能手机要做什么和数据来源,至于怎么去做则由智能手机本身来完成,所 以需要在智能手机操作系统上增加s y n c m l 处理引擎。 移动服务的应用与推广成为了目前移动数据同步领域内的主流方向,因此对 s y n c m l 应用开发成为一个热点方向,为了使s y n c m l 产品实际符合标准规范,深入研 究s y n c m l 技术并设计实现标准、强大的的服务器对于推广s y n c m l 应用,提高移动计 算应用水平等都有着积极意义,同时也有着良好的市场前景,因此智能手机的发展也是 我们所关注的。 1 3 智能手机技术现状与发展 如今手机已经成为人们生活中不可缺少的用品,手机的用途也从简单的通话功能逐 步向多用途、多功能、智能化方向发展。与传统手机相比,智能手机最大的特点是其强 大的多媒体视听功能和无线互联通信功能以及其他功能。从外观尺寸看,智能手机与我 们现在的传统手机相差不大,但在整体功能上却实现了质的飞跃。这样一部手机不仅能 通话、发送信息,而且能在手机上观看电视、电影、m t v ,欣赏m p 3 和各种在线音乐, 玩各种新颖丰富的在线游戏,用m s n 和q q 进行在线聊天。随着3 g 、4 g 时代的到来, 手机的功能将变的更为强劲,其正加速向智能化的发展。 智能手机将会得到广大用户、营运商以及厂商的更大关注。据1 d e ( 互联网数据中 心) 最新预计,随着移动数据增值业务的发展,全球高端智能手机将以每年1 0 0 以上的 高速增长,在2 0 0 8 年将达到4 0 0 0 0 万部。而国内智能手机市场的发展则更为迅猛,平 均年增长率为2 2 0 。随着时间的逐步推移,更多厂家更多型号的加入,智能手机的功 能越来越多,竞争也将越来越激烈。 智能手机的核心是智能手机操作系统,拥有操作系统是智能手机区别于普通手机的 主要特征。智能手机操作系提供了一个开放性的平台,使得第三方软件开发人员可以方 便的进行智能手机开发,从而保证了智能手机有着更广阔的应用空间。当前主流的操作 系统有w i n d o w sm o b i l e ,s y m b i a n ,p a l m 和l i n u x 。其中又以s y m b i a n 和w i n d o w sm o b i l e 的占有率为最高。 w i n d o w sm o b i l e 系列操作系统属于m sw i n d o w sc e 家族,目前主要有s m a r tp h o n e 和p o c k e ti tp h o n e 两种平台。p o c k e tp cp h o n e 主要用于掌上电脑型的智能手机,而 大连理工大学硕士学位论文 s m a r t p h o n e 则主要为单手智能手机提供操作系统。支持该操作系统的智能手机多采用英 特尔嵌入式处理器( 如x s c a l e ) ,主频比较高,其它硬件配置如内存、储存卡容量等也较 大,因此性能比较强劲,但是功耗较高。 s y m b i a no s 是由一嵌入式操作系统e p o c 发展而来,它系统提供了灵活的用户界 面框架,不但使开发者得以快速掌握必要的技术,同时还使手机制造商能够推出不同界 面的产品,也就是智能手机平台。目前主流的平台有采用数字键盘的$ 6 0 ,采用触摸式 屏幕的手机u i q 和采用完整键盘和超大彩色屏幕的手机$ 8 0 。由于应用界面在要求上是 由手机和市场决定的,所以在s y m b i a no s 的基础上,手机制造商和第三方开发者就可 以为不同平台的智能手机开发出独具特色的应用界面。 智能手机操作系统是应用于智能手机这种专门硬件的操作系统,因此在系统构成、 运行机制、用户界面、应用开发特性等方面与p c 机等平台有着众多不同之处,也直接 抬高了智能手机上应用的开发难度。以s y m b i a no s 为例,它在内存管理、系统资源管 理、异常处理、异步操作及多线程机制、d l l 的静态数据段、应用程序资源结构等众多 方面与其它系统有着显著的不同。然而随着智能手机应用市场的扩展,有越来越多的开 发者也投入到智能手机的应用的开发之中。自2 0 0 2 年s y m b i a n 开始支持中文以及2 0 0 4 年智能手机在国内逐渐被接受以来,国内也开始有个人或企业进行s y m b i a no s 下应用 的开发。 1 4 本文工作 作者在阅读了大量文档,仔细研究了当前国内外数据同步协议现状的基础上,通过 分析比较,最终选定s y n c m l 数据同步协议作为整个同步系统的基础协议; 分析当前同步问题的难点,提出了自己的解决思路和方法,进行了客户端与服务端 同步的算法设计,完成了s y n c m l 协议的软件技术研究,并针对当前移动设备数据同步 方案存在的种种不足,提出了自己的移动设备数据同步系统架构解决方案,以客户端中 间备份作为同步过程中的仲裁判据,使得在支持的数据格式、同步逻辑和冲突处理上相 对于目前应用在商业中使用的移动设备数据同步解决方案在商务逻辑上有了明显的简 化。 按照需求,完成了整个方案中客户端网络服务模块、文件操作模块、同步协议模块、 界面实现模块四大主要模块的实现,通过对以上模块在p c 机上的编程实现,并用 s y m b i a n 手机模拟器完成调试,以及最终让用户在真机进行体验,完成了本文所研究内 容的具体实践。 基于s y m b i 纽的s y n c m l 数据同步协议的研究与实现 本系统可以在移动终端与网络应用服务器间进行地址簿数据的实时同步。用户可以 使用不同终端与服务器进行数据的直接同步,并从而实现在不同终端设备上对同一份联 系人的蒯接同步,方便而且安全地保证了用户手枫联系人信息的一致性和完整性。 4 一 大连理工大学硕士学位论文 2 同步技术分析 2 1 数据同步概念 关于什么是数据同步迄今在工业界中并没有一个统一的定义,在本文中,我们采用 了参考文献1 1 珂中给出的如下定义:数据同步是使存在关联映射关系的两个数据集的数据 元素等价的操作,任意一个数据集中的更新都会被同步操作传递到另一数据集中。 用一个例子来说明:两个数据集s 1 - - s 2 = a , b ,c 分别存贮在不同位置。如果s 1 被 更新为 a ,b ,c ,而s 2 被修改成为 a ,b ,c ,那么同步的目的就是使这两个数据集呈现 出:s l = s 2 = a , b ,c 的状态。这个例子演示了记录发生修改的情况,如果数据集中的 记录有增加或删除的情况与之类似。另外若此例中s 2 被修改成为kb ”,c ) ,即两数据 集同时对记录b 进行了修改,我们就称发生了同步冲突,同步以后b 记录可能是对两记 录修改的合并,或是其中的某一记录的状态,这种选择和处理的过程称为同步中的冲突 消解( c o n f l i c tr e s o l v e ) 。从前面的描述可以看出:同步中的两个数据集中的数据元素必 须存在某种单映射( 之所以不称为全殃射是因为在同步过程中不能保证这个映射是满射) 关系,任何一个集合中的数据元素通过这个关系在另一集合中都可以有唯一的对应元 素。同步操作的基本单位就是这些数据元素,而同步就是使发生在一个数据集中的元素 修改传递到另一集合中,对相应的数据元素做出对应的操作。 2 2 同步技术比较标准 2 2 1 逻辑拓扑 同步的逻辑拓扑结构0 - 5 是指方案中设备间互连的逻辑方式,而并非网络的拓扑。 如果有统一的服务器,所有设备都直接与服务器联系称作星形拓扑;任意两设备间都可 以直接联系进行同步的称为p 2 p 的结构;而如果一组数据只能在指定的设备间进行同步 称为固定的端到端结构。逻辑拓扑决定了一个同步系统的抗单点失效的能力、更新信息 传递方式等基本特征。 2 2 2 系统规模 几台机器,还是几十台、上百台乃至更大数量级。这一标准的评判结果实际上往往 会与前面提到的拓扑结构相关联,但合理的任务分割与冲突处理算法会对此有改善。 基于s y m b i a n 的s y n c m l 数据同步协议的研究与实现 2 2 3 传输负载 传输负载情况从两个方面来考虑:一是从单次同步的负载情况来进行分析,一是从 整个系统中一个更新扩散到全系统需要的总传输负荷量。后者主要由同步拓扑结构决 定,我们主要分析前者随记录数量和更新数据量变化而变化的特征。 2 2 4 计算强度 即同步算法的复杂度。对于终端而言,其计算资源相对缺乏,如果计算复杂度过高, 会严重影响到程序的应用性能甚至失去实用性。对于固定终端如工作站乃至同步服务 器,虽然资源配置更为充沛,但由于可能会为更多的终端服务,也同样会使同步应用的 性能无法接受。 2 2 5 存储空间消耗 这一项指标同时涉及到同步算法在执行中的空间消耗和为实现同步协议所需要的 额外信息存储的资源占用。另外,同步算法在与更多的终端进行同步时消耗资源随同步 对象数据增加而增长的幅度也在考虑之中。同步应用可以部署的网络规模如何。在一个 同步系统中的终端究竟仅是少数 2 3 几种常用同步技术比较 2 3 1 a c t i v e s y n c a c t i v e s y n c | 6 l ;睦微软公司为支持终端与桌面系统同步的而提供的产品,可以实现从 文件到数据记录等多种级别的数据同步。微软将这一技术框架作为其产品线中移动同步 支持的基础平台,如与之间的互联等都是在此基础上完成的,它的特性也影响到了这些 产品的特征。 m i c r o s o f ta c t w e s y n c 的总体结构分成三个部分:工作于平台上的同步管理模块、工 作于便携终端上的模块、以及被称为s e r v i c ep r o v i d e r ( s s p ) 的具体数据访问模块。前两 者构成了同步管理的基础设施,伴随操作系统和a c t i v e s y n c 服务的安装即在系统中被提 供。同步管理模块实现i r e p l s t o r e 和i r e p l o b j h a n d l e r 接口,同步管理模块实现i r e p l n o t i f 接口。在同步管理模块中,对不同的s s p 同等对待( 但位于移动终端上的需要通过p c l i n k 才能与同步管理模块通信) 。一个s s p 需要与另一s s p 进行同步时通过i r e p l n o t i f 接口 通知同步管理模块需要进行同步,同步管理模块调用两个s s p 提供的i r e p l s t o r e 接口提 取数据完成同步。开发人员仅需要开发实现i r e p l s t o r e 和i r e p l o b j h a n d l e r 接口的模块( 以 进程c o m 内组件形式) ,并将模块在系统中进行注册即可。 6 大连理工大学硕士学位论文 a c t i v e s y n c 没有对同步的记录的表示与结构作任何规定,只要求s s p 为每一条记录 提供一个在s s p 内部唯一的标识,这个记录可以是关系数据库中的一条记录( 如将其用 于s o lc e 的同步中) ,也可能是一个文件或是一条p i m 信息。s s p 不提供映射管理能 力,记录映射的维护由拥有较多资源的桌面系统上的a c t i v e s y n c 支持机制完成。 2 3 2p a i mh o t s y n c h o t s y n e 提供了p a l m 与桌面平台的互联能力。从这个意义上来讲,它的定位与 a c t i v e s y n c 相似。由于它没有可以依恃的桌面平台优势,从最初开始,其设计就采用了 较为开放的设计,在协议与实施框架中就摈弃了对特定系统特性的依赖。 h o t s y n c 【7 】技术为p a l mo s 与p c 平台之间提供数据交换、程序安装等能力。它包含 了运行在p a l mo s 平台上一个客户组件( h o t s y n ec l i e n t ) 、在p c 平台上的同步管理程序 ( h o t s y n em a n a g e r ) 和同步管理器( s y n cm a n a g e r ) 以及其它支持性的技术规范框架实现 规范( n o t i f i e r d l l 实现规范、c o n d u i t s 实现规范等内容) 。 h o t s y n c 支持的是一种端点到端点模式的同步。尽管在同步中,桌面系统与移动终 端的地位是不对等的,但各自都可以与多个异种设备进行同步,没有固定的中央服务器。 设备间连接方式多样灵活,有本地电缆、无线连接、以及m o d e m 、i p 网络等可选。有 两种主要的同步模式:快同步( f a s ts y n c ) 和慢同步( s l o ws y n c ) 。选择的依据除手动指定 的情况以外,就在于终端的信息是否与桌面的s y n cc o n t e x t 数据相吻合。这两种同步模 式的特性有着较大的差异。 2 3 3 0 p i s y n c c p i s y n c i s :是c o m e l l 大学s a g a r w a l ,d s t a r o b i n s k i ,a t r a c h t e n b e r g 等人在他们所 提出的集合一致化( s e tr e c o n c i l e ) 算法基础上设计实现的一种同步方式。这一同步方案 的计算量主要与参与同步的数据集中有差异的项目数相关,而与数据集本身尺寸关系不 大。有较高的计算复杂度,但它可以使需要进行的通信量降低到f a s ts y n c 的水平,而 又不需要额外的辅助数据的存贮与维护。 c p i s y n c 的原理是用不同的整数值来表示不同的记录,从而一个数据集 s = x 1 ,x 2 ,x 3 ,x n 就可以用特征多项式:s ( z ) = ( z * x 1 ) ( z * x 2 ) ( z x 3 ) ( z * x n ) 来表示。当 两个数据集s a 、s b 中有差异的记录只有少数记录的情况下,两个数据集的特征多项式 相除可以约简去公因数。 c p i s y n c 的算法中立于网络拓扑与通信方式。本质上,它依赖于内容的比较,而不 是更新消息的传递,在无需更多额外协调的情况下就可以支持松散p 2 p 环境下的同步。 在同步过程中,参与同步的设备是完全对等的,不依赖于单一集中的服务器,没有单点 基于s y m b i a n 的s y n c m l 数据同步协议的研究与实现 失效的问题。在算法中,由于设备之间直接通过由记录内容确定的特征多项式来进行信 息的交换与比较,可以在大范围内进行数据集的同步,无须费心维护更新日志一类信息 本身在网络中的传递处理时的一致性管理。该同步方案中,设备无须要存贮额外的同步 元信息( 如日志、映射表) 一类,有效减少了存储空间消耗。但是其计算量随更新记录数 量激增,在更新量大而移动终端运算能力较弱的环境中并不适用。另外,由于它的同步 数据单位是以数表示的信息单元,在具体环境中的应用仍有很大的局限性。 2 3 4 s y n c m l s y n c m l 是一种唯一行业通用的移动数据同步化协议,由s y n c m l 行动( s y n c m l i n i t i a l i v c ) 发行,是一种开放性协议。s y n c m l 行动由e r i c s s o n 、i b m 、l o t u s 、m o t o r o l a 、 n o k i a 、p a l mi n e 、p s i o n 以及s t a r f i s hs o f t w a r e 首先发起,后又吸收m a t s u s h i t a 加入,从 而使其会员达到9 家,除此之外还有5 5 5 家支持公司。通过s y n c m l 能够使终端用户、 设备开发商、基础构件开发商、数据提供商、应用软件开发商以及服务提供商协同工作, 真正实现使用任何终端设备均可随时随地访问任何网络数据。 s y n c m l 用于在哪! p ,w s p ( 会议层协议,基于w a p 的无线w e b 应用) ,o b e x ( 一 种对象交换协议,它基于红外线和蓝牙技术并用于构建多种操作系统) 和低层的t c p ,m 以及电子邮件协议诸如s m t p ,p o p 3 及t m a p 当中。 由于s y n c m l 的同步角色的不对称性,使得它不可能应用在p 2 p 环境下,只能以客 户服务器模式工作。如果多个终端都与服务器上的同一个数据集( 使用相同的目标地址 与用户标识进行访问) 进行同步,可以实现这几个终端与服务器上数据的更新一致。这 样可以构成一种星形的拓朴结构,但由于冲突处理技术方面的制约,这一结构的规模很 有限。在s y n c m l 协议中也作了双向同步( 类同于h o t s y n c 中快同步) 与双向慢同步的区 分。s y n c m l 中数据处理的复杂度与h o t s y n c 相同,与同步当中出现的修改数量( 双向同 步) 或记录数量( 慢同步) 成线性关系。但由于它的消息以x m l w b x m l 方式进行了编 码,需要额外的解析与编码过程,同时在传送中也有较多的额外开销,这使得它的通信 负荷与存储消耗等指标较其它的同步方案偏高。 s y n c m l 协议从1 0 版草案的提出至今己经有一定的时间:目前最新的协议版本是 1 2 版,它的2 0 版草案拟定工作也正在o m a 组织的推动下积极进行,o m a 组织的数 据同步与设备管理组制订的路线图,s y n c m l 发展的将在以下几方面进行改进: ( 1 ) 支持的数据类型,有更多的数据类型支持被加入。 ( 2 ) 更新传递机制有待革新。在将来的版本中可能会引入更为复杂的元信息机制对 数据记录间结构进行描述。 大连理工大学硕士学位论文 ( 3 ) 更好的安全机制和安全技术设计,目前s y n c m l 协议的安全机制与底层绑定的 安全机制相重叠,却又并未能提供更高的安全等级和控制。可能会将s y n c m l 的认证机 制与绑定安全通盘考虑,重新进行功能分割与设计。 2 3 5 本系统选用的同步协议 对前述的几个同步设计方案,我们从计算强度、逻辑拓朴、系统规模、计算复杂度、 适用环境等方面进行比较,可以得出表2 1 。 表2 1 同步技术比较 t a b l e2 1 t h ec o m p a r i s o no fs y n c h r o n i z i n gt e c h n o l o g y 在通信负载方面除了c p i s y n c 可以保证得到与更新记录数据成正比的负荷以外,其 余各种方案依赖于具体同步方式从与更新数量成正比到与记录数量成正比,但s y n c m l 协议中由于有较高的开销,被列为负载较高。对于大多数系统规模较小的应用环境, a c t i v e s y n c h o t s y n c s y n c m l 等技术方案足以胜任。c p i s y n c 另辟蹊径,有着通信负载小, 适用面广的优点,如果可以很好地解决信息记录表示方法的问题,也将有很好的前景, 但目前仍难于推广。s y n c m l 在现有的应用环境下拥有和a c t i v e s y n c 与h o t s y n c 相近的 表现,但开放性与可扩展性给了它良好的发展前景,成为目前数据同步应用的主流。因 此,本系统采用s y n c m l 同步协议,下面对s y n c m l 同步协议做详细的介绍。 2 4 s y n c m l 同步协议介绍 2 4 1 协议概要 s y n c m l l 9 1 1 】是s y n c m li n i t i a t i v e 开发的同步标志语言( s y n c h r o n i z a t i o nm a r k u p l a n g u a g e ) 。作为通用同步协议它的目标是普遍适用,同步两端可以是任何一种类型、 在任一种网络上面。s y n c m l 的典型应用是移动设备和网络服务之间的数据同步。除此 之外,s y n c m l 还可用于对等的数据同步,如两台p c 之间。s y n c m l 的同步过程是由同 步双方相互发送一系列消息来完成,消息的格式都在s y n c m l 表示协议中做了具体定义。 基t - s y m b i a n 的s y n c m l 数据同步协议的研究与实现 s y n c m l 的消息都是以x m l 格式的文档定义的,而x m l 是文本文档标记的工业标准, 这必将极大地促进s y n c m l 的推广和普及。 s y n c m l 通过提供一个通用规范来协调客户机与服务器之间的数据交换,它使用统 一格式( 但不必通过合法性验证) 的x m l 语言进行设备问的消息传递,s y n c m li n i t i a t i v e 给出了一套良好的x m l 文件类型定义( d t d ) ,并且制造商与运营商可以在此基础上增 加、应用自己的数据格式,使任何网络中的所有设备和应用实现同步,满足人们对无线 通信日益增长的需求。s y n c m l 能够使用较小的带宽解决无线同步中连接可靠性较低和 网络响应时间较长的问题,而且还能够实现在固定网络、红外、电缆或蓝牙上的同步。 s y n c m l 同步协议涉及两方面内容:一个是如何初始化s y n c m l 环境,另一个是如 何表述连接到远程服务器上的应用信息。s y n c m l 力图推出一种开放的业界标准,这一 同步协议,是建立在x m l 语言的基础上。具备了s y n c m l 之后,再开发一套基于网络 的数据同步通讯软件系统,使任意一个s y n c m l 客户端的设备都能够与一个s y n c m l 服 务器完成数据同步通讯,s y n c m l 服务器可以是因特网服务器,也可以是网络p c 。这样, 我们的数据移动同步就可以实现了。 s y n c m l 协议使用x m l 语言来编译命令和数据并旨在成为和h r r p ,s s l p 和w a p 一样的最好的w e b 协议,因此它兼容用于w e b f r i e n d l y 移动平台( 如j 2 m e ) 的开发程序。 开发者只需使用最少的工具便可在移动程序中加入同步化性能。一条s y n c m l 信息本身 就是一个经过处理的包含标题和正文的x m l 文档。标题由s y n c h d r 元素和该信息的路 由和版本信息组成。正文包括s y n c b o d y 元素和同步命令,以及相关数据。 2 4 2s y n c m l 的基本特点 s y n c m l 技术是一种开放式的规范【1 2 1 ,它建立了一种基于x m l ( 扩展标记语言) 的 统一的数据传输机制,使得各种不同类型的终端设备、网络和应用程序间可以通过同样 的方式进行数据同步。 s y n c m l 协议是由数据同步论坛组织一s y n c m l 发起组制定的一个通用数据同步协 议,该协议将会成为一个被广泛接受的工业界通用的同步协议。 首先,s y n c m l 基于x m l 定义,因而继承了x m l 语言简单、开放、可扩展的特点, 使得整个s y n c m l 协议具有高度的灵活性和扩展性,从而基于s y n c m l 协议的数据同步 操作底层传输可以是各种有线,无线网络链接,同步操作所携带的数据可以是各种数据 类型,可以是已经注册的,也可以是没有注册的或者将来出现的数据类型。开发商和运 营商可以根据实际情况定义自己的数据类型。 大连理工大学硕士学位论文 其次,s y n c m l 协议可以适用于各种终端设备和网络设备,s y n c m l 协议规定,在 数据同步开始以前,客户端和服务器端进行设备信息的交互,以确定客户端设备所支持 的数据类型以及其他信息,这一过程保证了对各种终端设备的最大支持。 再次,s y n c m l 简单灵活且易于实现,s y n c m l 仅仅定义了同步协议的框架结构、 数据流程以及同步操作的类型,对于协议的实现没有具体的规定,从而开发实现起来具 有很大的灵活性。而按照s y n c m l 协议实现的产品又能在最大程度上保证互操作性。 s y n c m l 协议从发布至今,国际上已经有近7 0 0 家公司宣布支持s y n c m l ,3 g p p 决 定采用s y n c m l 做为其数据同步的标准,2 0 0 1 年发布的w a p 2 0 也将s y n c m l 做为数据 同步的解决方案。 2 4 3 s y n c m l 协议架构 如图2 1 所示,基于s y n c m l 的同步应用框架可分为三层,最底层为通讯协议层, 支持h r r p ( 超文本传输协议) ,w a p 会话协议( w s p ) ,对象交换协议( o b e x ) 等。 图2 1s y n c m l 协议架构 f i g 2 1s y n c m lp r o t o c o lf r a m e 这也是s y n c m l 协议的一个设计特点,可在跨网络,跨平台的网络环境中实现数据 同步。中间层为s y n c m l 协议实现及接口层,也是这个架构的核心层,提供了s y n c m l 基于s y r n b i a n 的s y n c m l 数据同垄协议的研究与实现 的实现并向同步应用层提供统一的开发接口,屏蔽了底层物理媒介及网络通讯协议的差 异。上层为同步应用层,由于提供了统一的调用接口,所以多种类型的应用都能取得中 间层提供的服务,实现同步功能。 2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年高二政治上学期第八周 我们的民族精神说课稿 新人教版必修3
- Unit 1 Winter Vacation (教学设计)-2023-2024学年闽教版英语五年级下册
- 急救护理操作标准及流程说明
- 九年级道德与法治下册 第三单元 走向未来的少年 第五课 少年的担当 第二框 少年当自强说课稿 新人教版
- 平遥古城和皖南古村落(教学设计)-2024-2025学年辽海版(2012)美术五年级上册
- 三年级道德与法治上册教案(部编版)
- 2025年病理科常见疾病病理解剖知识检测试卷答案及解析
- 2025年流行病学流行病学调查分析题答案及解析
- 2025年手术室护理手术室护理患者安全管理综合测评试卷答案及解析
- 2025年传染病学感染控制管理措施模拟考试卷答案及解析
- 建筑工程岗位招聘笔试题与参考答案(某大型国企)2025年
- 第21章 二次根式 单元测试卷(含答案)-2025-2026学年数学华东师大版九年级上册
- 2025-2026学年教科版(2024)小学科学二年级上册(全册)每课教学反思
- 2025-2026学年人教鄂教版(2024)小学科学三年级上册(全册)教学设计(附目录P137)
- 2025版金融业务合同委托管理协议
- 部队手榴弹使用课件
- 社区网格员考试试题(含答案)
- 2025年宜都市总工会公开招聘乡镇工会协理员3人考试参考题库附答案解析
- 《中国人首次进入自己的空间站》课件 八年级语文人教版
- 2025年辅警面试考试试题库目(答案+解析)
- 品管圈PDCA改善案例-降低住院患者跌倒发生率
评论
0/150
提交评论