已阅读5页,还剩55页未读, 继续免费阅读
(计算机应用技术专业论文)基于j2ee的syncml协议的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北京交通大学硕十学位论文摘要 摘要 摘要:移动计算和通信设备的日益普及,导致数据同步业务的需求急剧增加,种 类繁多的数据同步协议和方式使得不同设备或网络问的数据同步产生了问题。本 文主要对数据同步协议s y n c m l 在j 2 e e 上的应用和实现进行了研究,提出一种 在原有的j 2 e e 系统应用的基础上,既保证原有的j 2 e e 系统应用的功能不受影 响,不做大幅度改动,又能实现数据同步功能的思想,集成实现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 的实现集成到j 2 e e 系统应用时碰到的问题,并针对这 些问题提供了一种灵活的、具有适应性和可扩展性的解决方案;通过对具体的 j 2 e e 系统应用的实践,按照本文的设计思想,成功地实现了数据同步。 本文在j 2 e e 的基础上集成实现s y n c m l 协议的设计思想和方法,成功地将 s y n c m l 功能组件化,以最小的改动,为不同的j 2 e e 系统应用方便、快速地实 现数据同步功能打下了良好的基础。 关键词:数据同步;s y n c m l 协议;j 2 e e 分类号:t p 3 9 3 0 4 北京交通人学硕士学位论文 a b s t ra c t a b s t r a c t a b s t r a c t :w i t ht h eg r o w i n gp o p u l a r i t yo fm o b i l ec o m p u t i n ga n dc o m m u n i c a t i o n d e v i c e s t h ed e m a n df o rd a t as y n c h r o n i z a t i o nb u s i n e s si n c r e a s e sd r a m a t i c a l l y al o to f p r o t o c o l sa n dd a t as y n c h r o n i z a t i o nm e t h o d sc a u s e ds e r i o u sp r o b l e m sw h e nt h ed a t a s y n c h r o n i z a t i o no c c u r r e db e t w e e nd i f f e r e n te q u i p m e n t sa n dn e t w o r k s t h i sp a p e r m a i n l yr e s e a r c h e so nt h ed a t as y n c h r o n i z a t i o np r o t o c o ls y n c m l ( s y n c h r o n i z a t i o n m a r k u pl a n g u a g e ) w h i c hh a sb e e nd e s i g n e dt os y n c h r o n i z ea n yt y p eo fd a t ao n d i 腩r e n tt r a n s p o r tp r o t o c o l s t h e l lt h ep a p c rm a k e si m p l e m e n t a t i o no fs y n c m lb a s e d o nj 2 e ea n d p r o v i d e sap e r s p e c t i v et h a tt h ei m p l e m e n t a t i o nn o to n l yt og u a r a n t e et h e o r i 2 i n a lf u n c t i o n a l i t yo fj 2 e es y s t e ma p p l i c a t i o nw i l ln o tb ea f f e c t e do ra l t e r e d s i g n i f i c a n t l y , b u ta l s ot oa c h i e v et h et a r g e to f d a t as y n c h r o n i z a t i o n t h ep a p e rf i r s t l yi n t r o d u e e st h ec a u s e so ft h eg e n e r a t i o no ft h es y n e m l p r o t o c 0 1 a n dt h e ni n t r o d u c e st h ed a t as y n c h r o n i z a t i o n a sw e l la st h ec o n e e p to ft h ei s s u e s r e l a t e dt od a t as y n c h r o n i z a t i o n a l s o ,t h er e l e v a n ts p e c i f i c a t i o n sa n dt e c h n o l o g yo f s y n c m lp r o t o c o la r es t u d i e d t h ep a d e rc a r r i e so u ti n d e p t hr e s e a r c ho nt h es y n c m l p r o t o c o l ,d e s c r i b st h ew o r k i n gp r i n c i p l ea n dt h es p e c i f i cc o n t e n t so fs y n c m lp r o t o c 0 1 t h ep r o b l e m sa r ea n a l y z e di nt h er e a l i z a t i o no fi n t e g r a t i o ns y n c m lt oj 2 e es y s t e m a p p l i c a t i o n t h ep a p e l a d d r e s s e st h e s ei s s u e sa n dp r o v i d e saf l e x i b l e , a d a p t i v ea n d s c a l a b l es o l u t i o n i na c c o r d a n c ew i t ht h ed e s i 鲫o ft h i sp a p 盯,t h ea u t h o rs u c c e e d e di n t h ei m p l e m e n t a t i o no f s p e c i f i cj 2 e es y s t e m sa p p l i c a t i o n s t h ed e s i g ni d e a sa n dm e t h o d so fi n t e g r a t i o no ft h es y n c m lp r o t o c o lt oj 2 e e s y s t e ma p p l i c a t i o n s ,h a sl a i dag o o d ,c o n v e n i e n tf o u n d a t i o nf o rd i f i e r e n tj 2 e es y s t e r n a p p l i c a t i o n st oa c h i e v ed a t as y n c h r o n i z a t i o n k e y w o r d s - d a t as y n c h r o m z a t i o n ;s y n c m lp r o t o c o l ;j 2 e e c l a s s n o :t p 3 9 3 0 4 学位论文版权使用授权书 本学位论文作者完全了解北京交通人学有戈保留、使h | 学位论文的规定。特授权北京交 通人学可以将学位论文的全部或部分内容编入有关数据库进行检索,并采川影印、缩印或扫 描管复制手段保存,汇编以供布阅和借阅。同意学校向国家有犬部fj 或机构送交论文的复印 十l :和磁盘。 ( 保密的学位论文在解密后适川本授权说明) 学位论文作者签名截地致 签字吼”0 7 吼月啪 导师签名 签字e t 期0 日 北京交通大学硕十学位论文 独创性声明 独创性声明 本人声明所交的学位论文是本人在导师指导卜进行的研究。l :作平l l 取得的研究成果, 除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或撰弓过的研究成果, 也不包含为获得北京交通人学或其他教育机构的学侮或证1 5 而使刚过的材料。与我一同i :作 的同忠对本研究所做的任何贡献均已住论文中竹了明确的说明井表示了游意。 一繇截旭毅一期:1 班月f 细 致谢 本论文的1 :作是住我的导师路鹏羽f 卢苇教授的悉心指导卜完成的,他们严谨的治学态度 币蝌学的f :作方法给了我极人的帮助和影响。在此衷心感谢这儿年来他们对我的关心和指导。 除此之外卢苇教授还在学习上年生活上都给予了我很人的关心和帮助,色此向卢苇老师 表示衷心的谢意。 卢苇教授对丁我的科研j :作羊论文都提出了许多的宝贵意见,在此表示衷心的感驸。 在实验室l :作及撰写论文期间,周阐的同学对我论文研究i :干f :给予了热情帮助,在此向 他们表达我的感激之情。同时感谢实习期间公司的同事,他f f j 对我的论文提供了宝贵的建议。 另外也感澍家人和删友,他们的理解和支持使我能够住学校专心完成我的学业。 北京交通人学硕士学位论文 引言 1 引言 1 1s ) ,n c m l 协议的产生背景 近几年计算机技术特别是i n t e r n e t 的迅速发展,各种信息网站不断地涌现, 人们对信息量的需求随之迅速增长。移动通信的发展也十分迅速,手机、p d a 、 掌上电脑和笔记本电脑等移动设备闩益普及,并且支持捌有越来越多的数据通信 业务。移动计算网络环境j 下逐步形成,具各处理和更新数据的能力是移动计算所 必须的。另外,人们在这些网站和设备上存储了各种各样的数据,用不同的终端 对这些数据进行操作。信息管理己发展到以数据库为处理中心,移动计算、w e b 计算以及数据挖掘和开采等为技术手段的阶段。人们希望这些数据信息能够保持 一致,不用重复修改保存,这些信息就能从一个介质传递到另一个介质上,并且 能够随时随地被更新。这就是数据同步业务( d a t as y n c h r o n i z a t i o n ) 的需求。数据 同步已经成为移动计算的一种基础应用模式 l j 。 目前的移动设备通常还装有一些智能应用程序,例如在智能电话或p d a 上包 括有r 历,地址本和联系表或p i m ( p e r s o n a li n f o r m a t i o nm a n a g e m e n t ) 应用 程序,这些应用程序通常能够通过设备软件供应商所提供的协议,例如蓝牙,红 外,w a p 等,与桌面p c 或其他中央数据储存库进行数据同步。虽然同步的方式 很多,但是普遍都存在着以下严重的缺点: ( 1 ) 不同移动设备间的兼容性很差,甚至根本就不兼容 ( 2 ) 移动设备和网络不兼容,即一个移动设备的数据很难支持所有的同步网络, 一个同步网络也很难支持所有的移动设备。 ( 3 ) 不兼容不同的设备所使用的不同数据格式类型。 以蓝牙为例,蓝牙仅支持四种基本的p i m 数据类型,并且依赖于特定的传输协 议和介质,只适用于本地的连接,难于移植到其它的无线通信协议。这样各个厂 商和网络运营商不得不针对每一个设备开发单独的应用程序,效率低,而且维护 和扩展困难,数据同步并不能得到真币的实现。出现这些问题的原因是移动环境 中设备的多样性,需要交互数据类型的多样性以及连接方式的多样性。表i - i 展示了一些设备支持的数据格式和设备能力。图卜l 展示了不同设备阃的连接方 式。 北京交通人学硕士学位论文 引言 表卜1 一些设备支持的数据格式 t a b l el 一1t h ed a t af o r m a t i o ns u p p o r t e db ys o m ed e v i c e s 设备例子使用的数据类型设备能力 手机 n o k i ap h o n e存储量很小,计算能 c o m m u n i c a t o r力差 p d ap a l mp i l o t , a d d r e s s e s ,存储量和计算能力 c o m p a qi p a q s c h e d u l e ,n o t e s中等 d e s k t o p m so u t l o o k ,p i md a t a 存储量大,计算能力 o r g a n i z e r g n o m e c a r d强 关系数据库m y s q l任何 存储量很大 图卜1 不同设备间的连接方式 f i g u r el 一1t h ec o n n e c t i o nw a yb e t w e e nd i f f e r e n td e v i c e s 正因为这些差异,各个厂商各自采用私有的不同的协议,仅适用于特定的设 备子集、特定的传输层,难以和其它同步协议兼容。不同的协议和不同的标准限 制了数据的同步和传递,严重阻碍了数据同步的发展。这时候一个通用的同步协 议的就显得很有必要,这种同步协议需要下列特性:能够高效地在有线和无线网 络上传输;支持多种传输协议;支持任意的网络数据:可由多种应用程序访问; 充分考虑到移动设备的资源限制;构造于现有的互联网和w e b 技术基础之上; 2 北京交通大学硕士学位论文引言 协议最小功能就是赋予所有设备最常用的同步能力。 为此,e r i c s s o 、i b m 、l o t u s 、松下、摩托罗拉、诺基亚、o p e nw a v e ,s t a r f i s h s o f t w a r e 和s y m b i a n 等数家公司联合发起,成立了s y n c m li n i t i a t i v e 组织( 目 前已经并入开放移动联盟o p e nm o b i l ea l l i a n c e ) ,并于2 0 0 2 年1 2 月发布了 s y n c m l v i 0 标准,该标准己发展成为一个可以被用户广泛接受的工业界通用的 同步协议。自发布己来,已经得到数百家公司的支持,成为跨多个网络、平台和 设备的无端数据和个人信息的同步标准,成为了是丌发3 g 无线通信系统的最重 要模块。s y n c m l 有着广泛的应用前景,构建基于s y n c m l 架构的服务和应用, 就可以实现在不同的设备和网络之间进行数据同步。越来越多的网络运营商和移 动业务提供商正在提供s y n c m l 的支持。它的一个典型应用就是手机通讯录的同 步和备份,手机用户通过g p r s 与网络服务器同步数据,避免手机丢失或更新手 机时遗失重要的通讯录数据的问题。 1 2 数据同步 1 2 1 数据同步的定义 数据同步是指将两套存在关联映射关系但又不完全相同的数据集按照某种 规则将两个数据集的数据元素一致化的过程。例如数据集a 和数据集b 都是某 个用户的所有联系人信息,但是该用户分别在不同的时候修改了数据集a 的元 素a 和数据集b 的元素a ,导致a 和b 所存储的信息不一致,数据同步就是按 照某种规则使a 和b 一致。我们用下列符号来表示一些数据集合。 a 2 t n :数据集a 中被修改的元素集 b i n :数据集b 中被修改的元素集 a m b m :既在数据集a 中被修改也在数据集b 中被修改的元素集 ( a a m ) b m :在数据集a 中未被修改,但在数据集b 中被修改的元素集 a m ( b b m ) :在数据集b 中未被修改,但在数据集a 中被修改的元素集 这样,任何一个元素都可以唯一用a m 、b m 、a m b m 、( a a m ) b m 、a m ( b b m ) 中的某个集合来表示。 如图1 2 所示: 北京交通人学顼十学位论文引言 图1 - 2 数据集关系 f i g u r e1 - 2t h er e l a t i o n s h i po f d a t as e t 1 2 2 数据同步涉及的问题 数据同步涉及到很多方面的问题,最重要的是需要处理好以下几个方面: ( 1 ) i d 处理( i d h a n d l i n g ) 每一个数据都有一个唯一的i d ,通过这个i d 我们可以唯一的得到想要的数据, 这种情况在只有一个数据库系统的情况下是没有问题的,但是两个不同的设备或 者在无线终端和服务器之间的数据是如何进行标示的呢? 这在s y n c m l 里面非 常重要,因为要保持数据的一致,某种程度上来说,就是要保持这个d 的一致, 我们就需要一种方法或者说是一种协议来维护s y n c m l 客户端和s y n e m lj 艮务器 端当中的数据的i d 的一致性,否则在有大量数据的情况下,没有l d ,或者d 不一致,要使两边的数据保持一致,是非常困难的。 一般来说i d 的处理办法有如下几种: 定义一种生成d 的标准或者叫s c h e m e 。然后客户端和服务器端都遵守这个 标准来生成i d ; 由s y n c m l 服务器端来负责生成i d ,s y n c m l 客户端无条件接受: 由s y n c m l 客户端来负责生成i d ,s y n c m l 客户端无条件接受: s y n c m l 客户端和s y n c m l 服务器端都采用各自的方法来生成自己的d ,然 后定义一个映射关系,来将这两种d 进行对应。s y n c m l 采用的就是这一种方 法。s y n e m l 客户端生成的d 称为l u i d ( l o c a lu n i q u ei d e n t i f i e r ) ,s y n c m l 服务 4 北京交通大学硕士学位论文 引言 器端生成的d 称为g u i d ( g l o b a l l yu n i q u ei d e n t i f i e r ) 。 ( 2 ) 变更检测( c h a n g ed e t e c t i o n ) 变更检测的主要目的是检测自上次同步结柬后被修改过的数据,即确定a m 和b m 。为了能检测出这些数据的变更情况,必须要存储这些数据的状态信息, 例如利用在数据库的每条信息后面增加时间戳字段和状态字段来记录数据的更 新或修改时i 日j ,以及同步的状念。然而大部分的情况是遗留下来的数据库并未提 供这些足够的信息来完成变更检测。因此,同步变得复杂起来,需要采用更具有 适应性的方法来满足这个要求。 ( 3 ) 修改交换( m o d i f i c a t i o ne x c h a n g e ) 数据同步架构的一个关键数掘同步组件是交换服务器端和客户端的数据修改内 容,从而更新他们的数据信息。这涉及到同步协议定义的内容,服务器端和客户 端必须初始和开展它们的会话。考虑数掘集a 和b ,假设a 为服务器端的数据, b 为客户端的数据,修改交换实际是将a m 和b m 进行交换。需要注意的是如果 在一个数据集,例如a ,中增加了一个新的元素a ,该元素在另外一个数据集b 中也没有匹配项,则该元素属于a m 而不属于a ;如果这个元素在数据集b 中 已有匹配项,那么a 元素对b 来说不应该更新,即该元素实际上属于a 。一般来 说a 和b 都是比较大的数据集,必须尽可能确定需要同步的数据子集。这些规 则和问题同步协议旱必须解决。 ( 4 ) 冲突检测( c o n f l i c td e t e c t i o n ) 有映射关系的一对元素在各自变更( 添加、修改、删除) 后进行同步,就存在以 哪一方的数据为标准进行更新的问题,即如何对a m 和b m 的交集a m b i t i 中的 元素进行处理的问题,这就是同步冲突。当客户端的数据发送到服务器端之后, 服务器端必须具备有冲突检测的能力,即找出有哪些数据元素存在冲突。 ( 5 ) 冲突解决( c o n f l i c tr e s o l u t i o n ) 一旦检测到冲突,就必须解决这些冲突。冲突的解决需要有定的规则和策略。 解决的结果是确定一个双方都可以执行的结果。大致有以下的解决策略: 用户决定( u s e rd e c i d e ) :用户可以确定那方的数据最具有权威性,因此也 最有权利决定采用什么策略,例如下面提到的“客户端优先”和“服务器优先”。 客户端优先( c l i e n tw i n s ) :数据的修改以客户端的为准。服务器端用客户端 的数据替代自身的数据。 服务器优先( s e r v e r w i n s ) :数据的修改以服务器端的为准,客户端用服务器 端的数掘替代自身的数据。 时i 、日j 戳( t i m e s t a m p ) :根据该数据项的最后修改时i 日j ,哪一方的修改时间最 新就以哪一方的数据为准。 北京交通人学硕士学位论文引言 不处理:即对发生冲突的元素不进行处理,各自维持原有的数据。 ( 6 ) 快同步和慢同步( s l o wa n df a s ts y n c h r o n i z a t i o n ) 为了减少数据的传输量。应该确定数掘集a 和b 的最小数据子集作为传输 数掘。在同步处理有很多的同步模型,不同的同步模型确定的数据子集以及对冲 突的处理策略不尽相同。同步模型最主要可以分成两类:快同步和馒同步。快同 步用于曾经数据同步过的两个设备丌展新一轮的数据同步,前提是过去这两个设 备的数据同步成功,即数据集a 和b 的同步状念经过上一次的数据同步已经一 致,这样当两个数据集a 和b 要再次进行数据同步时,只要取a m 和b m 就可 以了,甚至可以再从a m 和b m 中再取出数据子集。慢同步一般用于首次同步, 或者过去两个设备间的数据同步不成功,或者其中有一方面基于某种原因损坏或 丢失了同步状态,这时数据集a 和b 就需要重新匹配映射。两个设备需要传输 它们所有的数据。 另外,在移动环境下,同步所需要的通信连接的有效性经常不能得到保证, 通信中断与数据错误时有发生,这使得两个数据集因同步失败而处于数据不一致 的状态的可能性大为增加。一个设计良好的同步协议必须要处理同步异常中止的 情况,包含有识别处理失败同步的机制,以确保在同步失败以后,数据也能恢 复到j 下确一致的状态。 1 3 国内外研究现状及课题的研究意义 数据同步业务的需求趋势在不断地增加,越来越多的系统应用需要拓展功能 支持数据同步业务。当前的网络及w e b 环境下,由j 2 e e 开发而成的系统应用越 来越普及,由于历史遗留的原因,这些j 2 e e 并不支持数据同步,作为已经在运 营并且已经拥有大量数据的j 2 e e 应用,重新开发一个实现s y n c m l 协议的j 2 e e 应用是不现实的,这将面临着许多问题。因此如何在原有的j 2 e e 的基础上,以 最小的代价实现s y n c m l 协议,支持同步功能,对企业节约开发成本,快速实现 业务目标有着十分重要的意义。 本文的研究内容就是要在原有的j 2 e e 系统应用的基础上,分析在集成 s y n c m l 服务器功能中面临的问题,以最小的改动保证原来的业务逻辑和运作流 程不受影响,集成实现s y n c m l 协议,并提出一种适合这些j 2 e e 系统应用的具 有广泛适应性和灵活性的思想和解决方案,而不是只针对某个特定的j 2 e e 应用, 因此可以为众多的各种不同的j 2 e e 系统应用方便、快速地实现数据同步功能奠 定了基础。 s y n c m l 协议自发布以来,得到了广泛的应用,国外对s y n e m l 的研究及发 6 北京交通大学硕士学位论文 相关技术介绍 展做了许多工作,例如在对规范的制定与修改方面,在对s ”c m l 的推广方面等, 而国内对s y n c m l 的研究则很少。目前也有一些关于s y l l c m l 的相应的开源项目, 如l i b s y n e m l 2 1 。但是s y n c m l 与j 2 e e 相结合的研究工作十分地少,而且具有 一定的局限性,国内更是基本上没有。因此本课题的研究意义不仅体现在实践生 产中,而且对于我国现阶段对s y n c m l 与j 2 e e 的研究也有着重要的意义。 7 北京交通人学硕十学位论文相天技术介绍 2 相关技术介绍 本章简要地介绍一些和s y n c m l 相关的规范、协议和技术,这些规范或者技 术被s y n c m l 借鉴或者使用,对理解和实现s y n c m l 协议有很大的帮助。 2 1 相关协议和规范 2 1 iw a p 协议和w s p 协议 w a p l 3 】的全称是w i r e l e s sa p p l i c a t i o np r o t o c o l ,即无线应用协议。它是在数字 移动电话、因特网或其他个人数字助理机( p d a ) 、计算机应用之问进行通讯的开 放全球标准。它是专门为微型浏览器设计的,以便适合小型无线终端口和对硬件、 内存和c p u 要求很低的软件。考虑到移动设备及其无线网络的特殊性,w a p 的 模型与传统的w w w 模型有些差别,首先是在浏览器( 即用户代理) 和原始服务器 之间引入了一个w a p 网关,其次是服务器可以主动推( p u s h ) 数据到用户代理上。 在网关与原始服务器之间仍然采用传统的t c p i p 和h t t p 协议,而在浏览器( 即 用户代理) 和网关之间采用了一套新的传输协议。这套协议的协议栈结构如图2 1 所示: 图2 - 1 w a p 协议栈结构 f i g u r e2 - 1t h es t r u c t u r eo f w a pp r o t o c o l w s p 的全称是w i r e l e s ss e s s i o np r o t o c o l ,它是w a p 协议层的组成组成部分。 北京交通人学硕十学位论文相关技术介绍 w s p 向两个对话服务提供一致接口的w a p 应用层。其一在w t p 层上操作的连 接导向服务,其二是在安全或非安全数据包服务上操作的非连接服务w d p 。无 线会话协议当前由与洌览应用相匹配的服务组成,通常简记为w s p b ,它提供 下列几项功能:支持在压缩的超空f b j 编码中的h t t p 1 的功能和语义;支持长 久对话状态,以及通过对话移动暂停和恢复;支持可靠或不可靠数据的普通设 备的连接与访问;支持协议特性流通。由于w s p 体系的协议需要较长的反应时 间,所以对低带宽载体网络的应用进行了优化,从而使w s p b 设计得允许w a e 代理把w s p b 客户连接到h t t p 服务器。 现在的手机多数集成了w a p ,w a p 手机可收发电子邮件、阅读新闻和股市 行情,但是更复杂的通信应用,如在线采购和视频会议,由于目前的移动通信网 运行速度无法达到要求,以及w a p 手机内存和屏幕较小的特点,w a p 主要用来 传输文字和较小的图片。 2 1 2o b e x 协议 0 b e x 的全称是o b j e c te x c h a n g e ,即对象交换协议。最初用来以红外线连接 的形式进行v c a r d 、图片和普通文件的传输。它是0 b e x 协议是一种紧凑、高效 的二进制协议,是一种典型的客户端服务器结构,每一次0 b e x 操作由一对请求 应答组成,为了实现上的方便和保持好的同步性,每一个客户端的请求必须收 到服务器的应答后,才进行下一次请求。它独立于传输机制和传输应用程序a p i 接口之外,提供了类似于h t t p 协议的功能,和h t t p 有许多相似的地方,例如, 0 b e x 的响应代码( r e s p o n s es t a t u s ) 包含了h t t p 的晌应代码,它的头类型 ( h e a d e rt y p e s ) 也支持h t t p 的头类型。 0 b e x 并不指定特定的传输数据类型定义为对象( o b j e c t ) ,以便适用于不同的 平台。o b e x 对系统资源的要求比较低,适用于低端设备有灵活的数据处理功能 和可扩展性,它允许在不增加系统资源要求提供如安全、压缩等方面的特性。它 的这些特点使得在嵌入式系统或上开发基于0 b e x 的应用程序非常方便。主要用 于红外数据链路上交换数据对象的会话层协议。 2 1 3m i m e 技术规范 本文中的m i m e l 4 】的全称是m u l t i p u r p o s ei n t e m e tm a i le x t e n s i o n s ,是最初的 互联网电子邮件协议的一个扩展,它提供了一种可以在邮件中附加多种不同编码 文件的方法,目的是为了解决使用s m t p 或其它邮件传送协议来传递邮件的一 9 北京交通人学硕士学位论文相关技术介绍 些问题和局限。 m i m e 规范包括以下部分: ( 1 ) 定义了5 个新的消息报文头字段:m i m e v e r s i o n ,c o n t e n t t y p e ( 内容 类型) ,c o g e n t t r a n s f e r - e n c o ( 内容与编码转换) ,c o n t e n t - i d ( 内容d ) , c o m e n t d e s c r i p t i o n ( p q 容描述1 。这些字段提供了消息正文相关的消息。 ( 2 ) 定义了一些内容格式,从而支持多媒体电子邮件的标准化表示方法。 ( 3 ) 定义了编码转换,能够将任何内容格式转换成可以防止邮件系统改动 的形式。 现在m i m e 已经成为了h t t p 协议标准的一个部分,传送可以供浏览器识别 的信息,是服务器鉴别客户端传送的数据类型的主要方法。s y n c m l 在用 i t t p 方式传输时就是利用m i m e 的c o n t e n t - t y p e 来鉴别类型。m i m e 使用户可发送 多种格式的数据,而不仅只是文本数据,例如用户可以发送和接收包含非a s c ii 码数据如声音、视频和图像应用等的页面。 2 1 4w b x m l 规范 w b x m l 5 1 的全称是w a pb i n a r yx m l ,它是由o p e nm o b i l ea l l i a n c e 开发的 x m l 的二进制表示形式,可以有效地减少x m l 文档的长度。w b x m l 作为一 种标准使x m l 以一种压缩的方式在移动网络上传输,尽可能简短地用一个字符 表达一个元素。x m l 通过代码页( c o d ep a g e s ) 实现与x m l 命名空间等价,它们 之间可以进行转换,转换需要使用x m l 文档的d t d 以及针对该d t d 规定的 w b x m l 编码空闯和代码页等信息,以便使、b x m l 和x m l 的标签能够对应。 例如在s y n c m l 中,w b x m l 用一个十六进制的字节0 5 表示 元素。目前 已有一些现成的软件包能够使x m l 和w b x m l 进行转换。 2 1 5v c a r d 规范 v c a r d 6 胴也称电子商业卡片( e l e c t r o n i cb u s i n e s sc a r d ) 。v c a r d 规范定义了 v c a r d 的语义和语法。这种格式适合作为各种应用或系统之间的交换格式,并且 与传送的方法和形式无关。传送交换可能是文件系统,点对点交换的公共电话网 络,以及有线网络或无线传送的方式,并且可以以任一种在i a n a ( i n t e r a c t a s s i g n e d n u m b e r sa i l l o r i t y ) 注册过的编码方式和语言在网络中传输。v c a r d 规范兼容了h r r p 的邮件传输协议如s m t p ,m i m e 等,因此也可以直接在电子邮件中转发v c a r d 的信息。v c a r d 被广泛地应用于p i m 和手机等移动设备中。 0 北京交通大学项七学位论文相关技术介绍 一个v c a r d 是一个包含了一或多个v c a r d 对象的数据流,是属性的集合。v c a r d 对象指的是v c a r d 的具体信息,例如电子邮件,地址等等。v c 盯d 2 1 是标准通 信的基本格式。一个v c a r d 用以b e g i n :v c a r d 开头,e n d :v c a r d 结尾的数 据流来表示。如果到达了数据流尾都没有出现“e n d :v c a r ,则这个v c a r d 包含从“b e g i n :v c a r d “歼始到数据流结束的地方为止的整个数据流。v c a r d 数据的属性用如下的格式表示: p r o p e r t y n a m e ;p r o p e r t y p a r a m e t e r s 】:p r o p e r t y v a l u e a 下面是一个简单的v c a r d 表示的联系人信息的例子: c o n t e n t - t y p e :t e x t p l a i n ;c h a r s e t = u s - a s c i l ;n a m e - - m a k t i n v c f b e g i n :v c a r d v e r s i o n :2 1 n :s m i t h ;j o h n ;m ;m r ;e s q t e l ;w o r k ;v o i c e ;m s g :+ if 9 1 9 ) 5 5 5 1 2 3 4 t e l ;w o r k ;f a x :+ i 丹1 9 ) 5 5 5 9 8 7 6 a d r ;w o r k ;p a r c e l ;p o s t a l ;d o m :s u i t e1 0 1 ;1c e n t r a ls t ;a n y t o w n ;n c ;2 7 6 5 4 e n d :v c a r d 此外,还有一些与v c a r d 规范类似的规范,如v c a l e n d a r 规范( 电子备忘录) 以 及v c a l e n d a r 的升级形式i c a l e n d a r ,这些规范的出现使得交换数据更具广泛性。 2 2 相关技术 2 2 1b a s e 6 4 编码技术 b a s e 6 4 编码技术用于编码任意的二进制信息。编码算法首先将3 个8 位字节 数组成个2 4 位字符串,当输入串少于2 4 位,在右端添0 ,然后将2 4 位串分 为4 个组,每组6 位数字,然后再在最高位前补两个0 ,构成8 位。对这些组进 行编码,每组的8 位数的数值通过在r f c 2 0 4 5 规范中定义对应的码表进行转换 成对应的字符,由于这8 位数的数值在0 - - 6 4 之间,因此转换后的字符串只含有 i a + t z ,t a t r z 。,0 i 9 ,t + :t , 这6 4 个字符。下面是一个简单的例子: 转换前1 0 1 0 1 1 0 11 0 1 1 1 0 1 00 1 1 1 0 1 1 0 分组0 0 1 0 1 0 1 10 0 0 1 1 0 1 10 0 1 0 1 0 0 10 0 1 1 0 1 1 0 十进制值4 32 74 l5 4 对应码表中的值r b p 2 则r b p 2 为b a s e 6 4 编码后的值。 北京交通大学硕士学位论文 相关技术介绍 2 2 2m d 5 加密算法 m d 5 博j 的全称是m e s s a g e d i g e s t a l g o r i t h m5 ( 信息一摘要算法) ,它由m d 2 、 m d 3 、m d 4 发展而来的一种单向散列函数算法f 9 l ,即h a s h 算法,它是国际著 名的公钥加密算法标准r s a 的第一设计者r r i v e s t 于上个世纪9 0 年代仞开发出 来的。m d 5 的最大作用在于,将不同格式的大容量文件信息在用数字签名软件 来签署私人密钥前”压缩”成一种保密的格式,关键之处在于这种”压缩”是不 可逆的。m d 5 是将任意长度的字符串和1 2 8 位的随机数字运算后生成一个1 6 b y t e 的加密字符串,并且它是一个不可逆的字符串变换算法,即使泄露了源程序和算 法描述,也无法将一个m d 5 的值交换回原始的字符串。 m d 5 广泛地被用于加密和解密技术上,在很多操作系统中,用户的密码是 以m d 5 值( 或类似的其它算法) 的方式保存的,用户t z g i n 的时候,系统是把 用户输入的密码计算成m d 5 值,然后再去和系统中保存的m d 5 值进行比较, 而系统并不“知道”用户的密码是什么。 2 2 3 质询认证机制 质询认证机制【1 0 】( c h a l l e n g ea u t h e i l t i c a t i o n ) 就是每次认证时认证服务器端都给客户 端发送一个不同的“质询”字符串,客户端程序收到这个”质询”字串后,做出相 应的”应答”。一个典型的认证过程如图2 - 2 所示: r :3 2 位的随机数h 0 :单向h a s h 函数k u s e r :用户的密钥 图2 - 2 客户认证过程 f i g u r e2 - 2u s e ra u t h e n t i c a t i o np r o c 6 , , s 北京交通大学硕士学位论文相关技术介绍 认证过程为: ( 1 ) 客户向认证服务器发出请求,要求进行身份认证: ( 2 ) 认证服务器从用户数掘库中查询用户是否是合法的用户,若不是,则 不做进步处理; ( 3 ) 认证服务器内部产生一个随机数,作为“提问”,发送给客户; ( 4 ) 客户将用户名字和随机数合并,使用单向h a s h 函数( 例如m d 5 算法) 生成一个字节串作为应答; ( 5 ) 认证服务器将应答串与自己的计算结果比较,若二者相同,则通过一 次认证;否则,认证失败; ( 6 ) 认证服务器通知客户认证成功或失败。 北京交通人学硕士学位论文s y n e m l 协议的工作原理希i 内容 3s y n c m l 协议的工作原理和内容 s y n c m l 的全称是s y n c h r o n i z a t i o nm a r k u pl a n g u a g e ( 同步标记语言) ,它是 它是一种基于x m l 的平台无关的,唯一行业通用的移动数据同步化的协议,也 是一种通用数据同步框架的规范。它由s y n c m li n i t i a t i v e 发行,目的在于在使采 用该协议的移动设备能够通过网络实现数据的同步,网络的数据也可以通过任何 采用该协议的移动设备同步。它提供了一整套数据同步解决方案,为众多厂商的 产品提供了统一的接口和数据格式,解决了以往的数据同步协议只支持部分设备 和数据格式的问题。它定义了如何建立、开展和完成一次同步会话,以及如何交 换数据和使用s y n c m l 消息命令。它有许多优点,主要有以下5 个方面: ( 1 ) 数据无关性:它能同步的数据类型不仅仅只是p i m 数据,它还可以同步自 定义的数据。它通过定义并允许交换数据,以及确定如何解释这些数据,从而提 供了代理之闯相互同步数据的结构。这些数据包括:普通个人的数据格式,例如 v c a r d 格式的联系人信息,v c a l e n d a r 和i c a l e n d a r 格式的同历信息以及只程信息; 电子邮件和网络新闻;x m l 和h t m l 文档;二进制数据、二进制大型对象,或 者b l o b s 。 ( 2 ) 网络无关性:几乎所有的网络传输协议都能用来传输s y n c m l 消息包。 ( 3 ) 自包含性:每个s y n e m l 包都是自包含的,即每个s y n c m l 包含了理解其 自身所需的信息,不需要额外的信息就能被解释,所以能够被单独地携带。 ( 4 ) 基于x m l 技术。 ( 5 ) 处理设备的资源有限性:s y n c m l 能够识别设备的处理能力,对移动设备 的存储空j 耳j 进行了优化,并提供了解决设备资源有限的方案。 3 is y n c m l 的设备角色 s y n c m l 协议将设备的角色分为客户端和服务器。图3 1 描述了一个同步的 例子,移动电话作为s y n c m l 客户端,一台p c 服务器作为s y n c m l 服务器。 s y n e 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 客户端。图 3 一l 虽然是一个比较简单的数据同步的例子,但是它很好地描述了s y n c m l 同步 规范中的设备角色及其作用。 1 4 北京交通大学硕士学位论文 s y a c m l 协议的l :作原理和内容 s y n c m i 客户端 s y n c m l 服务器端 幽3 一ls y n c m l 客户端和服务器端间
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水运国际检验合同
- 水利核心战略合作合同
- 汽车月度租赁合同
- 会计审计核心广告发布合同
- 福建历史联考试题及答案
- 驾驶员交规考试题及答案
- 道家思想专业知识考试题及答案
- 毛坦厂考试题型及答案
- 吉林医检专升本考试题及答案
- 2026年中职数字媒体(动画制作)试题及答案
- icu机械通气的临床应用
- 山地智慧灌溉系统建设项目可行性研究报告(范文模板)
- GB/T 48012.1-2026光伏发电系统用功率转换设备安全性第1部分:通用要求
- 2026年浙江省综合性评标专家库评标专家考试在线题库
- 2026年留疆战士考核综合应试能力提升练习题含答案
- 2025年离婚协议书范本(无争议)
- 2025内镜室院感工作计划
- 高中数学解题思想与方法大全
- 桂花雨(课件)(共23张PPT)
- 高中物理教学发展总结
- 建筑节能工程施工方案样本
评论
0/150
提交评论