基于云推送的数据传输和同步技术
2016-04-29韩逸路超
韩逸 路超
[摘 要] 设计一套基于“云推送项目”的数据传输与同步方案,实现同一终端用户的PC、手机等不同终端设备之间的互联互通和同步,不同终端用户之间资源共享。
[关 键 词] 云推送;Android;音乐云
[中图分类号] TP393 [文献标志码] A [文章编号] 2096-0603(2016)03-0186-02
一、基于“云推送”的数据传输与同步方案
在数据通信的过程中,关键部分在于数据的存储和传输。之前的方案是服务器端存储大量的数据,移动终端如果想要获取数据,则需要向服务器请求,然后服务器提取数据,进行回复。通用的数据传输格式有JSON和XML,信息采用这种格式进行传输,具有良好的展示能力,系统可以根据文件中消息的标识来提取,从而进行相应的操作。
随着Android技术的发展,Android手机中存储的资源也随之丰富,其所支持的功能也越来越多,其中存储的各类信息也越来越敏感,近期国内4G网络的诞生,增加了无线网络的宽带,提高下载和传输速率,但也伴随着移动数据流量的爆炸性增长,由此带来的数据同步业务的需求也急剧增加。Android移动终端操作简便,但也有可能在使用过程中,对数据进行误操作,导致重要数据的修改或删除,所以维护数据的不丢失极为重要。数据同步业务可以将本地的信息备份到数据库或其他的用户终端,极为方便地解决了这一问题,并且可以使用户在多终端对数据进行操作,增加了应用数据与操作数据的灵活性。
然而保证多终端数据一致的实时性与安全成了一个关键性的问题。为了保持这些业务数据在不同设备之间的一致性,我们也需要在不同设备之间实现同步。新兴的技术方法中有云同步技术,这项技术是用户将需要的文件利用网络传输至服务端,同时能够将其他设备的数据进行更新,那么就需要一种通用的数据同步技术来达到这个目的。
二、SyncML协议介绍
(一)SyncML总体结构
SyncML协议是近来应用广泛的信息同步“标准协议”,其优势在于传输不受平台的约束。SyncML同步协议的内容主要包括在SyncML客户端和服务器进行数据同步过程中的各种原理和方法等。
(二)SyncML同步协议
1.SyncML同步结构
SyncML同步架构包含了整个数据同步流程的各个组成结构,其架构图如图1所示。
2.SyncML同步过程
SyncML同步协议中明确给出了数据交互流程,SyncML客户端与服务器双方进行同步信息的交互流程如图2所示。
三、Android系统环境
(一)Android系统体系结构
Android系统,是基于Linux平台的开源手机操作系统。Android平台也是一个可供应用开发的平台。
(二)数据交换格式XML
XML(可扩展标记语言),标准的通用标记语言,是一种可以自己定义的标记性源语言,可用于电子文件的标记,使文件具有结构性,也可以用于数据标记和数据类型的定义。
XML格式适合Web传输。它具有信息携带方便,格式明确,信息描述准确、丰富等优点。XML中的标记是其主要功能,利用标记可以很容易进行数据的读取。
XML文件中主要包括了内容和标记。每个内容都会对其进行标记,您可以自由组合元素数据,也可以自由设定元素名。
四、数据安全同步流程的设计
(一)总体流程的设计
本文中在实现数据同步功能的基础上实现了信息的加密传输,用以提高传输信息的安全性。其总体的安全同步流程如图3所示。
(二)服务器端同步流程的设计
服务器端同步过程的设计参照了SyncML协议和SRIX架构,同步交互流程如图4所示,分为以下几个步骤:
(三)Android端同步交互流程设计
Android端的同步交互过程如图5,具体流程为:
(四)PC端同步交互流程设计
PC端利用系统提供的服务实现应用SyncML消息进行底层通信,并对其进行接收和解析。图6显示了PC端的同步交互流程。
五、总结
智能手机充实了人们的生活,加快了信息化的建设,使人们的工作和生活方式可以实现自由化。在对简要信息的存储上,人们可能很随意,并且由于移动终端的价格经济,每个用户可能具有多个移动设备。从而导致每个设备中都存有部分信息,如手机、平板、PC中。在这样的情况下,人们对数据同步业务的需求大大增加。
本文就是針对数据同步的问题,认真研究对比,采用SyncML协议作为同步协议,实现一个Android平台的数据同步系统。我们针对这一问题深入研究了当今信息系统的需求和各种移动设备的特点,对比了同步技术的方案并提出了采用SyncML协议作为数据同步交互的协议,SyncML协议可以很好地支持任何移动设备数据传输,让信息系统的数据操作更加具有实时性,从而使移动终端设备在现代的信息系统中扮演更重要的角色。
针对本文系统的研究过程中,作者认真了解SyncML协议规范和移动终端数据同步的相关流程,阅读了许多相关的论文,找到了与本研究相关的类似研究,在阅读与研习相关技术的前提下,提出了自己的数据安全同步方案。针对Android系统的特性,采用了Android NDK提供的Java+C的开发方式。
在参照SyncML同步流程的基础上构建了自己的数据安全同步软件架构,提出了自己的同步安全方案和精简数据修改信息的方法,最后顺利地完成了基于Android平台的数据安全同步功能,并通过大量的数据同步测试,证明该系统具有优越的功能和性能。
参考文献:
[1]朱航.基于Android平台的数据安全同步技术的研究与设计[D].北京邮电大学,2015.
[2]常晟.基于事件驱动的云平台数据同步研究[D].中国科学院大学,2014.