网站大量收购独家精品文档,联系QQ:2885784924

【精品】基于Bluetooth的SyncML实现研究.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于Bluetooth的SyncML实现研究 引 言 SyncML同步协议是一个目前已经被广泛接受的工业界通用的同步协议标准,国际电信联盟已经认可其为下一代移动通信标准的组成部分。由于目前市场上移动数据同步化还是建立在一些互不相同的私有协议上,从而产生了众多数据不兼容的情况,增加了各方面工作的复杂度。而SyncML可以通过任意网络,同步化所有设备及应用软件的数据。借助XML,SyncML将成为真正的数据同步化平台。Bluetooth无线传输技术经过十年发展后,已经成为众多移动终端设备中的重要组成部分,蓝牙最新低功耗与超宽带版本,将会使蓝牙技术向更加普及的方向发展。将SyncML数据同步协议基于Bluetooth无线通信上来实现,将使各种具有蓝牙功能的移动设备能够更加方便的实现数据的同步交互。 1 SyncML协议框架 SyncML数据同步规范主要包括三个部分,即SyncML数据同步协议[1](SyncML Data Synchronization Specification)、SyncML表示协议[2](SyncML Representation Protocol)和SyncML传输方式绑定协议(目前包括HTTP\OBEX\WSP三种传输方式)。SyncML协议的制定让数据同步成为应用协议栈中的一个层次,使其它应用程序或协议得以在SyncML协议的基础上进行设计实现,让同步服务成为移动计算的一部分。图1为SyncML协议推荐采用的框架结构。 从图中可以看到,Sync Server Application与Sync Client Application进行数据同步,Server和Client通过底层网络进行连接(如HTTP/WSP/OBEX)。同步双方遵循同一协议规则,Server端通过Sync Server Engine来处理与Client有关的操作,例如Client数据库更新和冲突处理。Sync Server Agent管理Sync Server Engine对网络的访问,以此来控件和客户端的数据同步,它会根据协议来处理Client端传输过来的消息,通过Sync Server Agent可以实现系统无关性,便于移植。SyncML Interface用于处理同步的连接、数据的处理,同时提供框架中实体与网络传输的接口,在Server和Client间建立和维护一个网络连接。 图1 SyncML协议框架结构 在整个SyncML同步协议的框架中SyncML数据包和底层的传输是分离的,其规范中的同步协议和表示协议独立于传输方式,因此SyncML消息能基于目前任何一种网络通信方式进行传输。本文所要研究实现的,即是在其中的Bluetooth无线通信方式下,实现SyncML数据同步功能应用。 2 架构分析与改进 在SyncML OBEX绑定协议[3]中,定义的了其在Bluetooth上实现的一个应用框架图,如图2所示。 SyncML一般基于会话层协议之上,而且在Bluetooth应用协议栈[4]中将文件传输、同步等应用协议栈都统一包含在通用对象交换应用框架(GOEP)中,因此要在蓝牙上实现SyncML,就需要将SyncML数据绑定在OBEX上,然后通过OBEX对象在蓝牙通信中进行数据同步的传输操作。 在蓝牙系统中,OBEX协议的作用是实现数据对象的交换,如vCard、vNote等对象。OBEX在蓝牙RFCOMM上的映射关系,是基于ETSI TS07.10的多路复用和传输层,而且提供了对串行电缆仿真的支持。根据协议分析,SyncML同步数据通过OBEX接口封装成一个OBEX传输对象,由OBEX通过RFCOMM实现基于Bluetooth的SyncML数据同步功能。然而,在多数应用层开发环境下,Bluetooth协议栈的接口,包括RFCOMM接口,并不会直接提供给上层应用,同时,虽然蓝牙协议中定义了OBEX的应用框架,但OBEX作为一个独立的对象传输协议,在Bluetooth协议栈中也没有提供直接可供调用的OBEX接口,来实现SyncML数据的封装并同时完成全部传输任务。出于这种情况,我们在Bluetooth协议应用框架的基础上,对OBEX的应用做了适当的改进,如图3所示。 图2 实现框架 图3 改进后的结构框架 从图3中可以看出,OBEX没有直接映射在RFCOMM这上,而是放在了SPP应用框架上,SPP的底层同样是通过RFCOMM提供的虚拟串口为基础,来进行数据传输,同时使用了Socket接口来实现数据的发送和接收处理。OBEX在这里所处位置的主要功能,即是将上层的SyncML数据进行了封装,然后再调用Socket提供的接口进行发送。 3 实现设计 3.1 实现分析

文档评论(0)

14576 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档