时间:2022-09-19 10:05:03
导言:作为写作爱好者,不可错过为您精心挑选的10篇客户端推广方案,它们将为您的写作提供全新的视角,我们衷心期待您的阅读,并希望这些内容能为您提供灵感和参考。
中图分类号:TP393.04文献标识码:A文章编号:1672-3198(2007)12-0281-02
针对移动无线营业厅系统,采用了基于DCEMAP的全面解决方案,该方案能为辽宁移动BOSS系统提供了安全、方便、快捷的GPRS无线接入解决方案。对GPRS网络现阶段存在高延迟,低连接速率,访问速度慢等特点有效改善用户访问体验,降低安全风险性。
1 DCEMAP核心技术
DCEMAP直接让在应用服务器上的应用程序与客户端设备沟通,既提高性能,又简化加密安全与效能之间的矛盾。DCEMAP解决方案通过设置专门应用部署服务器群组,将关键性的应用软件集中安装并进行,所有应用软件的客户端将100%在这些服务器上执行,即Application Serving(简称A/S结构),从而使得用户无论在何地,无论使用何设备,都能通过各种网络连接方式高效访问总部的各种程序和数据。
多个用户透过不同的客户端设备,同时访问和执行服务器上的同一个应用软件。产品在网络操作系统之上构筑了一层集中计算模式的平台,改变应用程序客户端的安装、和管理模式,实现了“以应用为核心,贯穿所有的节点,对系统的管理和控制由面简化到点”。DCEMAP这种基于服务器的计算的模式之所以成为可能,是因为使用了独立计算体系结构(ICA)技术和MultiWin技术。ICA 协议是基于服务器计算的一项事实上的标准,它把应用处理从客户端设备转移到了服务器之上。MultiWin是微软用以创建Terminal Server(终端服务器)的一项技术,它能让多个用户同时访问在一个服务器上运行的应用程序。ICA作为OSI表示层,分成多个虚拟通道,每个通道只负责一种功能的数据传输,且可以单独开启或关闭,数据在送往虚拟通道前均被压缩,在通道中传输可选择多种加密方式保证数据安全。
DCEMAP应用过程及技术实现主要有以下步骤。
(1)DCEMAP的组件Webinterface为用户提供统一接入平台,用户开启IE浏览器访问DCEMAP的Web Port站点,输入用户名和密码,由Web服务器通过XML服务向DCEMAP服务器传递身份验证信息。身份验证后,DCEMAP服务器也通过XML服务向Web服务器返回的应用设置,并在客户端IE浏览器上显示出该用户授权范围内的应用程序图标。
(2)用户点击应用程序图标时,即通过ICA协议向DCEMAP服务器发出会话请求,DCEMAP监听ICA端口1494收到请求,验证用户请求的信息,建立ICA虚拟通道,在服务器端应用MultiWin技术为此会话分配独立内存空间,在此内存空间里启动该用户的请求的应用程序。
(3)应用程序运行后的位图变化由ICA利用底层图形技术采集和编码,在送往ICA虚拟专用通道前需经过优化的行程长度压缩(RLE)技术进行数据压缩。
(4)客户端接受到ICA通道传输的数据后由ICA客户端解密、解压后重组位图还原为应用图形,其应用屏幕的更新采用服务器推送方式;同时客户端的键盘鼠标操作信息由ICA客户端收集同样经压缩、加密通过ICA虚拟通道传输到服务器段还原为对应用程序的操作。
2 DCEMAP解决方案
为保证系统的业务连续性,在不破坏现有信息系统的前提下,利用现有的网络设施和资源,仅通过增加DCEMAP应用部署服务器层来改变无线营业厅系统的、管理和访问的模式,即能达到安全、快捷、简单地应用无线营业厅系统。
在公司内部域中建立DCEMAP服务器群,自带智能负载均衡功能,并和移动BOSS营业WEB服务器同处于一个网段中,部署并移动营业系统的客户端;为合作伙伴以及大客户建立AD用户,加入域指定全局组和OU中,设置OU组策略,并授权访问DCEMAP的移动营业系统。
合作伙伴以及大客户经理的计算机不需要高的硬件和软件配置,只需要安装IE浏览器,再下载安装基于浏览器IE的DCEMAP插件(可通过推送方式实现)即可。手机接入时,只要手机支持IE浏览器,无需对现有应用做任何改造开发,利用移动现有的网络设施和资源,仅通过增加DCEMAP应用部署服务器层来改变营业系统的、管理和访问的模式,即能达到安全、快捷、简单地应用营业系统。
DCEMAP服务器部署在移动内网中,BOSS系统客户端,后端与BOSS系统通讯。合作伙伴或大客户经理使用无线网卡拨入GPRS网络,通过对指定SIM卡的认证,获得内网地址。通过内网直接访问DCEMAP服务器,使用移动AD帐户登陆DCEMAP服务器,从而应用BOSS系统。
由于DCEMAP客户端向服务器的传输的只是键盘鼠标的信息,而服务器向客户端传输的是位图的变化,并经过压缩加密。所以,用户使用无线营业厅系统时,只需10~20Kbps,只有在打印和上下载数据文件的情况下才会占用更多的网络连接资源。经测试现有GPRS网络可满足用户使用要求。由于DCEMAP客户端没有运行应用程序,因此客户端无需很高的配置,客户端成本很低。而且,由于客户端只是远端呈现,不会在IE上留下Cookie信息,也可以限制用户进行拷贝等操作,保证了信息的安全。
3 DCEMAP接入平台的优势
(1)使用DCEMAP产品确实有助于提高应用的效率,由于只在DCEMAP服务器跟客户端之间传送画面及鼠标、键盘信息,所以传送数据只与画面变化及鼠标、键盘信息多少有关,尤其是一些操作,在BOSS客户端跟BOSS服务器间需要传送的大量的数据,但显示画面却没多少改变时,该产品优势尤为明显,生成大容量报表操作就是一个明显的例子。
(2)要使用DCEMAP接入平台访问BOSS服务器,只需在DCEMAP服务器上安装基于B/S的浏览器或基于C/S的BOSS客户端程序即可,而用户只需跟DCEMAP服务器连接,就可以用IE浏览器登录访问。接近B/S模式,方便用户使用。同时对原有应用系统无须二次开发和改造。
(3)DCEMAP平台具有断线恢复功能:如果连接过程中出现断线的情况,只要不关闭DCEMAP,待客户端重新连接服务器后,可继续处理;同时也可设置空闲超时断开,超时自动关闭等安全措施。
(4)维护较方便,如有问题可远程检查DCEMAP服务器即可。
机房集中 规模连锁
连锁型酒店在我国渐成趋势,这不仅包括洲际、喜达屋这样的五星级酒店集团,还包括新兴的汉庭、锦江之星等经济型酒店。通常连锁酒店的成员酒店都拥有独立的IT机房、硬件和软件,还配备IT运维团队。随着酒店规模的不断扩大以及人力成本的不断提高,连锁型酒店的IT运维成本将不断增大。
IBM认为,机房集中管理将成为酒店信息化建设的一个新趋势。这不仅可以实现信息共享,降低IT成本,还使得统一统计集团入住率,按照数据实际使用数量支付软件系统费用成为可能。国外已有酒店集团开始应用这种方案,我国不少酒店连锁集团也对此产生了浓厚兴趣。邱湘营表示,这种应用在我国的推广受了二、三级城市网络速度不快,酒店连锁规模较小,不能立竿见影得到投资回报等因素的影响。
桌面云 节能高效
普通的酒店至少有300套客房,这意味着每家酒店有300个以上PC客户端。这些客户端分散在客房、前台、餐厅、健身房,难于管理,总体拥有成本高,难于实现数据保护与保密等诸多目标,应用瘦客户端的“桌面云”由此应运而生。
没有硬盘的瘦客户端与PC相比使用寿命更长,更节能。与此同时,瘦客户端通过后台统一部署和管理,不仅可以实现桌面环境配置、资源管理和工作负荷管理的集中化与简单化,还可实现客户端的零维护,并进一步保证系统的安全性。由于酒店IT环境的规模性和复杂性,“桌面云”已经在我国部分酒店中得到应用。
自助入住 新鲜体验
在高峰时段,酒店的客人经常需要排队等候办理入住或退房手续。IBM自助入住登记和退房解决方案,能够帮助酒店为客人提供省时便捷的服务。客人可以借助安放在大堂或电梯厅的自助登记设备直接办理入住或退房手续。如果酒店VIP客人驱车前来入住,车库入口处的自助入住登记设备可以帮他们完成入住登记手续和房卡制作工作。
有意思的是,在国外,这种应用主要应用在经济连锁型酒店中,而在我国,只有五星级豪华酒店――黄龙酒店刚刚实现了这一应用。邱湘营表示,虽然高端酒店倾向于为客人提供人性化的面对面服务,但是在差异化竞争过程中,这种应用可以给客人带来全新的体验,有助于强化酒店的个性化特色。值得一提的是,我国人力成本相对较低,经济型酒店一时还没有动力采用此应用去替代人工作业。
1 实现功能
金融产品管理与推广平台系统项目,基于互联网部署,包含产品管理端及移动APP客户端(Android版支持厅堂触摸交互产品推广机、PAD、Android手机, IOS版支持iPad、iPhone)。产品管理端,主要用来及管理产品分类/产品明细、维护标准参数、维护用户角色权限、管理终端及广告、查看统计报表等。移动客户端APP安装于各种设备,用来向客户展示银行金融产品,产品分多级展示,上层为产品分类,最底层为产品明细(即为不可分割的原子产品),每种产品可选择适用客群、服务品牌等多种定制属性,可根据多维度的属性进行筛选查询,查询展示时支持分级展示逐层进入产品内容,或可直接展示产品列表,并可登陆设计定制产品配置方案。
2 产品管理端功能模块
2.1 产品分类管理
产品分类管理采用树形结构,支持产品分类增删改查,每个产品分类包含名称、图标、所属产品分类、是否为最小产品分类、项下产品/分类是否关联批量产品/分类模板及关联批量产品/分类模板、项下产品显示风格(图标/列表)等属性,并可根据产品分类情况灵活定义增加几个标准属性,如为最小产品分类还可根据项下产品情况灵活定义增加几个标准产品属性。
2.2 产品管理
产品管理支持单个产品的增删改查,每个产品包含名称(简称)、产品全称、所属产品分类、产品介绍、产品图片、产品图标及其他定义属性等。产品图片是显示在产品的详细里面的,产品图标是在其所属“产品分类“项下以图标风格显示时使用的图标,展示风格为图标下跟名称(简称)。产品修改时,可单独补充上传产品图片、产品图标。如产品其所属”产品分类“要求项下产品以图标风格显示,恰巧该产品并无上传定制图标,则以系统默认图标展示。产品删除时,支持同一“产品分类”下复选删除产品。产品新增时,支持同一已关联批量产品模板的“产品分类”下,用模板文件格式编辑产品列表,然后导入文件批量上传。批量维护产品因不支持产品图片、图标,如有需要需后期对产品逐一修改添加图片。如批量维护的产品所属的“产品分类”本身就要求项下产品以列表风格显示,则无需更改上传图片。
2.3 参数管理
平台为支持更大范围的灵活产品分类层次配置管理及展示推广,定义并支持一系列的标准参数,包括产品分类标准属性管理、产品标准属性管理、批量产品分类模板管理、批量产品模板管理、广告管理、默认产品分类图标设置、默认产品图标设置,参数可由普通产品经理发起添加,并由有权产品经理审批后生效。
产品/分类标准属性定制时,都需设置属性名称、并根据属性情况,设置为自定义编辑内容型、自定义时间型、选择内容型,如为选择内容型需配套增加候选属性值。如属性“客户性别”,定义为选择内容型,并新增候选值“男”、“女”;如属性“产品期限(天)”,以银行理财产品为例则各天数期限不一,需在增加产品时自由编辑。原则上产品分类或产品的属性是向上继承的,子分类或产品均具备所属产品分类的属性。
批量产品/分类模板定制时,要关注产品/分类的上级产品分类的属性定义并进行定制开发设置,并标注填写值域的规则,以供设置使用或下载参照。
广告管理支持多个不同的应用锁屏广告或动态广告策略设置及修改,以满足根据终端的差异性投放不同的广告策略。
默认产品/分类图标设置支持预设图标,以防批量维护后因产品/分类缺失图标影响终端应用展示效果。
2.4 终端管理
终端管理支持终端的新增、激活、删除、重装激活及综合查询,根据终端的具体型号、特点选择添加终端,并生成装机认证码,以待激活后使用,并可根据终端特点选择投放的顶级产品分类及适用的锁屏广告、动态广告。
2.5 统计报表
统计报表主要支持系统的登录统计、产品/分类的点击统计、产品及分类的综合查询及导出明细、客户经理定制产品方案的综合查询。
2.6 用户角色权限管理
系统可根据用户的主要权限划分为三个角色,系统管理员、产品经理、客户经理。系统管理员负责系统的基础数据维护、用户角色管理及顶级产品分类对应a品经理的权限分配、终端管理,产品经理则根据上级归口产品经理的产品分类权限分配,维护自身负责的产品分类及项下分类或产品,顶级产品对应的产品经理负责参数管理中基础数据维护并受理旗下产品经理的参数维护需求审批。客户经理负责客户端的申请安装及使用,并可在产品管理端查询产品及分类及自身的定制案例。
3 移动APP(Android/IOS)功能模块
3.1 安装认证
安装客户端时输入装机认证码,认证获取客户端配置信息、产品/分类信息、广告信息等。
3.2 层次产品展示
应用主界面打开后,显示多个产品分类图标(下附产品分类名称),点击产品分类,进入下一级产品/分类展示界面,依次进入产品展示界面,选择点击查看每一个产品的详细介绍。
3.3 简单检索
在应用搜索栏填入搜索要素,从产品/分类的各属性及介绍中模糊匹配筛选,逐层图标展示符合条件的产品分类及产品,并可转换为层次列表显示或直接产品列表。
3.4 高级检索
高级检索支持灵活增加属性名称作为筛选条件,并在各属性条件中选择或填写筛选要素,帅选后也可逐层图标展示符合条件的产品分类及产品,或转换为层次列表显示或直接产品列表。
3.5 产品方案定制
客户经理可登陆认证后,支持新建定制方案,为客户定制方案,逐层展开产品分类,并把适合产品加入方案,或把已加入方案产品移除,定制方案完成前可先预览整个方案,确定后保存方案。
4 总结
云计算(cloud computing)是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。云其实是网络、互联网的一种比喻说法。云计算的核心思想,是将大量用网络连接的计算资源统一管理和调度,构成一个计算资源池向用户按需服务。提供资源的网络被称为“云”。云计算包括三个层次的服务:基础设施即服务(IaaS),平台即服务(PaaS)和软件即服务(SaaS)。从安全架构可分为公有云、私有云和混合云。泰山保险基于云计算的核心业务系统平台属于SaaS类型的私有云,它是一种通过网络提供软件服务的模式,同时提供传输链路安全和云端安全保证系统的安全使用和运行。当然,在建立泰山保险基于云计算的核心业务系统平台过程中,我们也遇到了一些棘手的问题,如改善用户使用体验感,简化用户登录,像操作本机一样登录和使用系统;解决如何调用本地POS机刷卡收费、调用本地打印机打印保单、发票等,在软通动力泰山保险项目组的共同努力下,这些技术问题均得到了解决,最终系统成功上线运行并全面进行了推广。
软通动力和泰山保险携手建立的基于云计算的核心业务系统平台,在中国保险业尚属首创,是云计算技术在保险行业应用的成功落地,该应用不仅能避免因客户端不同带来的问题,还能降低对客户端机器的要求,减少保险公司的维护问题,充分发挥资源集中的优势,实现分布式计算提升系统处理的能力,从而大大提升用户使用感受,提高工作效率及客户服务水平,为保险公司的业务发展奠定了坚实的基础,是值得推广的一种应用模式。
链接:
泰山保险
中图分类号:TP393.03
IP网络地址是整个互联网的基础,目前大多数网络设备使用的都是IPv4地址。IPv4地址提出的时候没有想到互联网发展如此之快:根据2012年的思科报告,全球有23亿互联网用户,到2017年,全球将会有约36亿互联网用户。到2017年,将会有超过190亿全球网络联接(固定/移动个人设备、M2M联接等)。现在IPv4的地址已经不够这些设备使用了,为了解决这个问题,IETF提供了NAT[1][2]方案,这个方案使用NAT将网络分为外网和私网,每个私网都可以重用,这个方案大大缓解了IPv4地址匮乏的问题。但是这个方案导致了一个问题,对于想对外提供服务的NAT私网内的用户而言,这个功能会受到限制,最主要的原因是NAT外的用户不能直接访问到NAT内私网中的计算机数据。这种情况导致了互联网上P2P互相访问的困难。不过目前还有很多应用需要这种服务器式的被动访问,比如SOCKS4/5[3][4]协议,这个是最为知名的一种协议,通过这个协议服务,能够透明地中转服务器和客户端之间的数据。然而NAT的引入导致在NAT后面的用户无法对外提供SOCKS4/5服务。本文试图使用穿透NAT的P2P技术,使在NAT内的SOCKS4/5服务也能提供给外部机器使用,真正实现对于互联网的任何一个用户都能够直接访问。
1 穿透NAT的协议
为了解决引入NAT设备后网络互联出现的问题,有大量协议被发明和使用,比如MIDCOM[5]、TURN[6]等,但是这些协议大都需要第三方介入,这会导致一些问题。如:中转第三方的带宽、处理能力以及实时性。这随着NAT后面节点的增多,数据量的增长以及对于实时性的严格要求等,这些协议处理都存在问题。我们希望两个机器能够实现真正沟通,而不是通过中继的方式。UPNP和STUN这两个协议能够实现这种真正直接的沟通。
1.1 UPNP[7]
UPNP(Universal Plug and Play)是由UPnP Forum推广的一套网络协议。该协议的目标是使家庭网络和公司网络中的各种设备能够相互无缝连接,并简化相关网络的实现。UPnP通过定义和基于开放、遵循因特网通讯网协议标准的UPnP设备控制协议来实现这一目标。任何设备都能自动加入一个网络,获取自己的IP地址,宣布自己的名字,根据请求检查自身功能并且检测出其它设备和它们的功能。支持UPnP的设备允许UPnP数据包通过IGD协议在没有用户交互的情况下,无障碍的通过NAT。但是UPnP的缺点是:它要求所有网络中的设备都支持UPnP,即使单台设备不符合UPnP标准的,我们就无法实现一种P2P网络。
1.2 STUN [8][9]
STUN协议是一种轻量级的客户端-服务器模式的协议,它不需要任何管理员进行网络配置,就能发现它们和公网之间是否存在NAT,并确定NAT的类型。STUN协议目前仅仅支持使用UDP报文穿透Cone NAT[10]。此协议利用Cone NAT传输 UDP的原理进行穿透[11][12][13]:私网内某个机器通过Cone NAT发送UDP数据到外网某个机器,内部IP地址和端口的UDP数据经过Cone NAT被映射到一个外部地址,在某个时间段内这个内部IP地址和端口将被转换为固定外部IP地址和端口(这个过程将被Cone NAT记录,并且存储为一个Session)。此后,如果外部Session对应的机器发送UDP数据到这个Cone NAT,Cone NAT会把这个数据包转发到内部映射的这个地址上。目前IETF定义的STUN协议目前能够穿透Cone NAT,但是不能穿透Symmetric NAT。不过我们可以通过修改STUN协议来实现穿透Symmetric NAT的目的。[14][15][16]
2 SOCKS4/5协议
SOCKS协议是一种应用层次的协议,它提供一种通用方案,能为应用程序提供基于TCP和UDP数据报文的服务,但是它不能ICMP之类的底层通讯协议,SOCKS协议从概念上来讲是介于应用层和传输层之间的“中介层(shim-layer)”,SOCKS V4协议为HTTP、FTP、TELNET、WAI和GOPHER等基于TCP协议的客户/服务器程序提供了方案。新的SOCKS V5协议在SOCKS V4协议基础上作了进一步扩展,从而可以支持UDP协议,并对其框架规定作了扩展,以支持安全认证方案。同时它还采用地址解析方案以支持域名和IPV6地址。
SOCKS协议利用握手(negotiation),请求(Requests),应答(Replies)等过程完成对于上述协议的转发。一般而言SOCKS4/5服务器通常绑定在1080端口上。
3 NAT穿透SOCKS4/5协议实现
3.1 协议方案
如图1,为了实现双方都在NAT后的机器的SOCKS4/5之间的直接通信,我们需要一个双方都能访问的中间服务先把两边的机器关联起来。在公网上我们需要架设一个双方都能够联系的服务器,然后通过STUN协议帮助双方完成直接通信。一旦直接联系完成,我们就不再需要公网中间服务了,此后我们采用可靠的UDP传输协议完成SOCKS4/5客户端和服务器的直接数据传输。
此协议分为两个部分,首先是通过STUN协议完成NAT后两个机器的SOCKS4/5客户端关联器和SOCKS4/5服务器关联器的直接通信,然后使用可靠的UDP协议完成SOCKS4/5客户端服务器的数据通信。
3.2 建立直接通信
我们可以使用STUN协议来帮助双方都在NAT后的机器建立直接的通信。STUN协议通过一种叫做UDP hole punching的机制来实现这一目的。一旦完成这个操作,两个NAT设备后的机器就能够实现直接的网络通信而不再需要STUN服务器的介入了。
如图2显示SOCKS4/5客户端关联器和SOCKS4/5服务端关联器通过STUN协议帮助建立直接通信的过程。
(1)客户端关联器通过NAT A连接到服务器,服务端关联器通过NAT B连接到服务器,服务器记录客户端关联器和服务端关联器的外网地址和端口。
(2)服务器向客户端关联器发送服务端管理器的外网地址和端口消息,服务器向服务端关联器发送客户端关联器的外网地址和端口消息。
(3)客户端关联器向服务端关联器的外网地址和端口发送hole punching消息。虽然这个数据包在NAT B的时候会被阻止(非Full Cone NAT禁止没经过关联的外网IP直接访问内网),但是这个UDP数据包在经过NAT A的时候,会在NAT A上建立一个Session,这个Session记录了本地客户端关联器与服务端关联器外网地址的关联信息。
(4)服务端关联器发送回应消息到客户端关联器,NAT A由于有步骤3由hole punching消息建立的Session,NAT A将会把这个消息转发到客户端关联器,完成后双方建立直接的消息通信。
3.3 SOCKS4/5数据传输
由于STUN协议仅仅支持UDP的穿透,但是SOCKS4协议只支持TCP的连接,为了兼容SOCKS4/5协议,我们使用转发的机制来保证我们的程序能够完美匹配SOCKS4/5这两种协议。
如图3所示:
(1)SOCKS客户端关联器绑定本机端口1080。本地SOCKS客户端程序(如IE等程序)设置本地SOCKS为本地127.0.0.1080。SOCKS客户端按需要访问某个公网服务器或者远端对方的私网服务器。
(2)客户端关联器接收到SOCKS客户端发送过来的数据,不做任何改变,通过可靠的UDP(如UDT协议,此协议可以提供类似TCP的可靠数据传输)数据传输发送到已经建立的直接通信的服务端关联器。
(3)服务端关联器接收到可靠的UDP传输过来的数据,然后不做任何改变的将这个数据通过TCP转发到SOCKS4/5的真正服务器程序(127.0.0.1:1080)。
(4)SOCKS服务器连接实际需要访问的公网或者私网服务器(如需要访问的HTTP服务)。
4 实验测试
4.1 实验设备
系统硬件:三台PC,配置:CPU P6 3.40GHz 4GM 内存
NAT设备:两台NetGear WPN824路由器。
操作系统软件:Windows7。
4.2 实验效果
程序经过实际测试证明,支持NAT穿透的SOCKS协议完全可行。测试显示浏览器浏览网站与直接使用SOCKS协议连接的效率基本接近,但是由于中转过程的花费,浏览大型网站可能相对于直接SOCKS连接慢了5%,不过这个基本不会影响用户的感受。
5 结论
SOCKS协议是客户端/服务器模式,这种模式由于NAT的引入导致如果服务在NAT后面将会出现问题。本论文使用一种新的客户端-服务端关联器方法使得SOCKS协议能够支持NAT的穿透,这个使得SOCKS协议能够被大多数工作在NAT后的计算机使用。并且这种关联器方法与上层的协议没有任何直接关系,我们可以扩展此种协议,使得很多原来不支持NAT穿透的协议也能够被支持,比如:SMTP、POP3、IMAP、SNMP等。同样,这个方法也能支持我们定义新的协议,比如类似QQ一样即时P2P通讯协议。
参考文献:
[1]P Srisuresh, M Holdrege. IP network address translator (NAT)terminology and considerations.RFC 2663.August 1999.
[2]G Tsirtsis and P Srisuresh. Network address translation-protocol translation (NAT-PT).RFC 2766.February 2000.
[3]Ying-Da Lee, SOCKS: A protocol for TCP proxy across firewalls, http:///txt/socks4.protocol.
[4]M. Leech , M. Ganis, Y. Lee, R. Kuris, D. Koblas, L. Jones. SOCKS Protocol Version 5. RFC 1928.
[5]P Srisuresh, J Kuthan, J Rosenberg, A Molitor,A Rayhan. Middlebox communication architecture and framework.RFC 3303.August 2002.
[6]J. Rosenberg, C. Huitema, and R. Mahy. Traversal using relay NAT (TURN). Draft-rosenberg-midcom-turn-03, October 2003.
[7]UpnP Forum. Internet gateway device (IGD) standardized device control protocol. November 2001.
[8]J. Rosenberg, J. Weinberger, C. Huitema, R. Mahy.STUNSimple traversal of user datagram protocol(UDP)through network address translators (NATs).RFC 3489,2003.
[9]J Rosenberg, R Mahy, P Matthews, D Wing. Session traversal utilities for NAT (STUN). RFC 5389. 2008.
[10]C Jennings. NAT classification results using STUN. RFC 5389. October 2008.
[11]T. Hain. Architectural implications of NAT. RFC 2993. November 2000.
[12]D Senie. Network address translator (NAT)-friendly application design guidelines. RFC 3235. January 2002.
[13]Saikat Guha, Paul Francis. Simple traversal of UDP through NATs and TCP too (STUNT). http://nutss.gforge.cis.cornell.edu/stunt.php.
[14]Yuan Wei,Daisuke,et al. A new method for symmetric NAT traversal in UDP and TCP,APAN Network Research Workshop.11-18,August 2008.
[15]王勇,崔修涛,吕钊,李子成.基于探测对Symmetric NAT与端口受限NAT的穿透方案[J].计算机应用,2006,4(26).
李树翀:能否先介绍一下天霆公司的整体战略和市场定位?
谈天霆:我们公司专注于桌面应用领域,可以为用户提供云电脑服务、VDI解决方案以及云终端设备。公司的宗旨是“为每个人提供优质的IT服务”。实现这一目标的主要载体就是云电脑服务。
PC只是一种工具,而这种工具未来可能会被新型的工具所取代。云电脑则不同,它融合了服务、应用和资源。这使得它在很多应用场景中都可以替代PC。未来,人们可以不必再购买PC,只要到电信运营商那里申请相应的带宽,就能获得一个云终端设备以及账户和密码,然后便可以轻松登录属于用户自己的桌面,访问应用程序,浏览网页,看电影或玩游戏……依托云电脑服务,只要有互联网的地方,你就可以无障碍地访问自己的桌面。
李树翀:云电脑与PC相比,其独特的优势表现在哪些方面呢?
谈天霆:首先从硬件架构上看,PC采用的是x86架构,包含CPU、内存、硬盘等,数据全部存储在本地。云电脑采用的是云计算架构,终端设备只是一个让用户的桌面与后台云计算系统相连接的接入点,CPU、内存、硬盘等资源全部汇集在云中的资源池里。在云电脑服务模式下,桌面、应用和数据只是服务的内容而已。
其次从系统维护和管理的角度看,云电脑可以实现统一的管理和维护,从而减少了用户本身的系统维护工作量。举例来说,如果PC的硬盘出现故障,修复硬盘并恢复其中的数据是一件十分困难的事。用户可能要委托专业的数据恢复公司对数据进行恢复,还要支付较高的费用。
如果采用云电脑服务,用户就不会遇到上述麻烦。云电脑服务大大提升了应用和数据的可靠性。天霆云电脑服务依托的后台数据中心是按照业内最高等级——Tier 4级别的要求建造的,能够达到金融用户所需的可靠性。用户如果采用云电脑服务,即使前端的硬件设备出现故障,只要重启系统就可以恢复系统的正常运行,而数据一直存储在云数据中心里,不会有安全方面的问题。
再次从成本方面来看,采用云电脑服务,用户自己就不必再构建庞大而复杂的IT系统,所有的计算资源、存储资源等都可以按需从云中获得。因此,相比PC,云电脑服务在价格方面具有非常大的优势。举例来说,我们目前正在与电信运营商合作,推广针对个人的云电脑服务,平均每个月的服务费仅为120~150元。
最后从用户体验来看,云电脑服务可以实现资源的弹性分配,即插即用。用户能够像使用水、电一样按需使用云电脑服务。
从PC到云电脑服务,这既是使用模式的改变,也是设备采购方式的改变。以前人们习惯采购单纯的硬件设备,现在人们要逐渐适应从买设备到买资源和服务的这种转变。云电脑作为一种全新的IT服务模式,将彻底改变人们工作、学习、生活和娱乐的方式。
技术是保障
李树翀:能否介绍一下云电脑服务诞生的背景?目前,天霆公司拥有哪些产品线?
谈天霆:在服务方面,我们有云电脑服务,这也是目前我们的业务重点。在软件方面,我们拥有完全自主研发的桌面虚拟化软件、设备管理软件以及3Tcloud Receiver。3Tcloud Receiver可以实现智能终端与云后台的连接与交互。在硬件方面,我们有云终端设备X900和X910。X900基于ARM架构,功耗仅为3W,主要用作云电脑服务的接入终端。X910可以兼容VMware、Citrix、微软等厂商的桌面虚拟化软件,可用于构建VDI解决方案。
2009年,VDI解决方案开始流行。一些大型企业比较偏爱VDI解决方案,因为它可以实现桌面的集中管控,安全性较高,维护也比较简单。随着云时代的来临,桌面即服务这种新的服务模式开始兴起。桌面即服务的本质是将VDI虚拟桌面作为一种服务交付给用户。这样一来,用户就不必自己构建VDI方案,通过购买服务的方式就可以获得虚拟桌面。但是,桌面即服务这种模式也有弊端,比如用户还是需要购买一个PC或瘦客户机。
在桌面应用领域,我们既有高效的网络连接和交互协议,又有桌面管理软件,还有云终端,那么我们为什么不能把这些设备组合在一起,为用户提供一种更方便的服务呢?这种新的服务虽然包括云终端,但又不是单纯的云终端;这种新的服务与桌面即服务类似,但又比桌面即服务具有更丰富的内涵。我们推出的这种新型的虚拟桌面服务,能够提供与PC相同的操作体验,而所有资源又都在云中。因此,我们决定将这种服务命名为云电脑服务。
中图分类号:TP311文献标识码:A文章编号:1009-3044(2012)22-5374-03
1项目背景
重庆日报报业集团的采编系统于2000年建立,随着近几年集团不断发展壮大,采编用户日渐增加,目前各报采编计算机已近700台。但经过我们调查发现,目前采编人员同时在网上工作人数最高峰不超过150人。一方面是大量计算机闲置,另一方面又是各报每年不断新购电脑的需求,这是当前集团IT发展的一大矛盾。另外,当前互联网发展日新月异,编辑记者上网查资料非常普遍,但是作为出报平台的采编网,其资料的敏感性和出报的安全性决定了必须将采编网与互联网隔离。编辑记者不得不在内网机和外网机之间来回切换,即费钱又费时,还不好管理。为解决这些矛盾,我们提出引进虚拟桌面技术建立一种全新的开放式采编系统来取代原有模式,并尝试使用瘦客户机。
2项目构成
重报集团的开放式采编、统一通信平台项目由虚拟化桌面(VMware view)、惠普公司的瘦客户机和西门子公司的统一通信系统(OpenScape USC)三部分构成。其中虚拟化桌面系统是最为核心的一部分,先期投入24台瘦客户机试运行,全部安装虚拟桌面系统。
2.1技术特性
简单的来说,桌面虚拟化是指支持企业级实现桌面系统的远程动态访问与数据中心统一托管的技术。通过桌面虚拟化我们可以通过任何设备,在任何地点,任何时间访问在网络上的属于我们个人的桌面系统。
实现桌面虚拟化能给报业集团带来莫大的益处:
2.1.1对于IT系统来说,桌面虚拟化可以实现更灵活的访问和使用
桌面虚拟化技术实质上是将用户使用与系统管理进行了有效的分离。这样带来的直接好处,就是用户对桌面的访问就不需要被限制在具体设备、具体地点和具体时间了。我们可以通过任何一种满足接入要求的设备,就可以访问我们的桌面。这样,员工就可以不必在公司,而可以回家通过家里的设备,访问公司的桌面,继续工作,同时能够保证数据安全(因为只有图像传输到家里的设备上)。出差同样可以不必带电脑,而只要找到一个能上网的设备就可以使用自己的桌面。甚至可以通过手机访问自己的桌面。
2.1.2虚拟桌面拥有更广泛与简化的终端设备支持
作为云计算的一种方式,由于所有的计算都放在服务器上,终端设备的要求将大大降低,不需要传统的台式机,笔记本;而且智能手机,上网本,接近报废的PC等设备甚至于电视,都成为可用设备,这恰恰是云计算的灵魂所在。在虚拟桌面的推动下,未来的企业IT可能会更像一个电视网络,变得更加灵活,易用。由于客户端的性能压力大大降低,更简化的客户端可以得到广泛使用,终端设备的可选择性更广泛,可以满足不同的应用需求。
2.1.3终端设备采购、维护成本大大降低
这种IT架构的简化,带来的直接好处就是终端设备的采购成本降低。以瘦客户端为例,一个瘦客户端的采购成本为3000左右,而pc目前价格在4000左右,则每台客户端能够节省1000元,更重要的是,瘦客户端的报废周期一般6-8年,比PC长一倍,使总体拥有成本(TCO)大幅减少。另外,现有的PC系统也可以大大延长使用周期;间接降低了电子垃圾的产生数量。
2.1.4虚拟桌面可以集中管理、统一配置,使用安全
由于计算发生在数据中心,所有桌面的管理和配置都在数据中心进行,管理员可以在数据中心进行对所有桌面和应用进行统一配置和管理。例如系统升级、应用安装,等等。避免了传统由于终端分布造成的管理困难和成本高昂。由于传递的只是最终运行图像,所有的数据和计算都发生在数据中心,则机密数据和信息不需要通过网络传递,增加了安全性,另外这些数据也可以通过配置不允许下载到客户端,保证用户不会带走、传播机密信息。
2.1.5虚拟桌面可以降低耗电、节能减排
传统PC一般在200W以上,而瘦客户端在25w左右,耗电量接近十分之一,而服务器的计算压力会带来一定程度的耗电量的上升,但是与客户端的大数量相比,可以忽略。所以一年的电费也会降低90%左右。而耗电的减少,也意味着碳排放的减少,适应了低碳时代的要求。
需要强调的是,桌面虚拟化的优势,是典型具有规模效应的,终端数量越多,上述的收益和优势越突出。
2.1.6 OpenScape统一通信的特点
虚拟桌面一旦推广将改变现在报业集团的工作模式,由过去一人一机一座位的固定位置办公变换到一个巨大的开放式办公环境。任何人可以在任何位置使用虚拟桌面进行工作。显而易见,虚拟桌面推广以后会为集团节省大量的办公空间和电脑。不过,由于工作人员不再有固定的工作台,办公电话就成为一个问题。为此我们引进了西门子公司的OpenScape统一通信系统。
OpenScape UCS是西门子新一代通信平台,是完全基于SIP标准的实时IP系统,具有运营商级可靠性、全方位的存活性和可伸缩性。西门子OpenScape UCS解决方案在满足客户对系统容量、支持增值业务、移动办公、异地办公和统一通信等需求方面具有显著优点,远远优于单一的传统的TDM和IP PBX的解决方案。
其主要特点是:单一统一集成的方案,语音和协同应用基于统一软件平台,众多的UC应用通过统一的客户端即可完成。OpenScape UCS架构经过成本优化,系统容量可以灵活用于小到每个节点300名用户,大到100,000名用户,甚至通过组网的方式在每个网络上实际可以容纳无限用户。OpenScape UCS运行于可靠性高、容错能力强且符合业内标准的服务器上,能够自动管理硬件错误,而不会造成服务降级。可提供无中断服务。OpenScape UCS确保在通信不中断的情况下进行软件升级和打补丁,以及静态和动态负载均衡。通过集中编号计划可以更好地管理运营。无论企业用户在公司,在家里,在出差任何时候任何地方都能够接入到通信平台,享用到企业提供的丰富的通信功能,大大提高了工作效率,将办公场所扩展到任意地方。OpenScape UCS解决方案不仅提供了传统的语音通信服务,同时通过基于状态的统一通信的应用将语音信箱,电子信箱传真等各种不同的媒体流进行整合,用户可以象处理电子邮件一样来处理语音和传真极大地提高了工作效率。同时还可以为企业用户提供各种团队写作通信方式,通过电话会议,视频会议,在线即时消息来实现团队最有效的合作,共同完成团队目标,同时大大降低了差旅费用。
我们将西门子的统一通信客户端安装到虚拟桌面中,每一个登录虚拟桌面的用户都会绑定一个电话号码,不论用户在哪里登录,电话都能跟随,这样就解决了人员座位不固定带来的固话通讯的问题。统一通讯系统还能提供传真服务,使每个用户不但拥有随身固话,还拥用一台随身传真,十分方便。
2.2技术方案
我们用两年的时间考察了业界主流虚拟化公司产品,最终选择了VMware View作为我们的虚拟化桌面软件。VMware View使用虚拟化切断了桌面和关联的操作系统、应用程序和硬件之间的联系。通过将桌面操作系统、应用程序和用户数据封装到相互隔离的层次,该方案允许IT人员独立地更改、更新和部署每个组件,从而获得更高的业务灵活性并缩短响应时间。最终获得的访问模型将更加灵活,能够提高安全性、降低运营成本和简化桌面管理。
重报集团虚拟化项目拓朴如图1。
图1
从图1中可以看到,我们部署了两套虚拟桌面。一套在内网,作为采编桌面。外网用户可以通过防火墙上映射的端口登录采编桌面,然后可以像内网本地用户一样上采编网工作。外网桌面可以让内网用户在不影响内网工作的情况下上互联网查资料。内外网的桌面之间可以互相拷贝文字资料,但不能拷贝图像、文件等对象。瘦客户机中,我们在桌面建立了两个快捷方式,一个链接内网桌面,一个链接外网桌面。用户可以同时使用两个虚拟桌面,并在两个桌面间拷贝文字。同时,我们为每台瘦客户机配备了两台液晶显示器,用户可以用一台显示器显示内网桌面,另一台显示外网桌面。这样一来编辑记者就不用使用两台电脑或双网机来兼顾上网和工作了;而且安全方面也可以得到保障。这也是建立开放式采编平台的初衷之一。
为了安装View,我们必须先安装一个虚拟平台。这个平台由软件和硬件两部分组成,软件是VMware Vsphere 5。硬件是惠普DL580服务器,配置如下:
表1
这样一台服务器大概可以支撑20至30个View客户端同时在线。采编虚拟桌面组的虚拟机配置为1VCPU、1.5G内、10G系统盘、Windows XP SP3操作系统,安装Office 2003、Adobe Flash Player10、方正采编、飞腾组版、UC客户端等软件。外网虚拟桌面的配置和内网差不多,只不过没有安装任何采编和UC软件,安装了一些诸如IE8、QQ等上网必备软件。另外,整个系统的数据存储是以HP EVA4400为基础的SAN存储系统。
整个虚拟桌面系统包含以下服务器:
表2
其中,Vcenter服务器和各安全连接服务器都配备了两张网卡,可以同时联通内网和外网;并按VMware技术手册进行了安全加固。
报业集团的统一通信系统基于现有IP数据网络,采用数据中心模式部署。具体配置情况如下:配置一台IBM X3550M3服务器,部署一套OpenScape统一通信系统。在一台服务器上集成了OpenScape Voice软交换平台、OpenScape UC应用系统、MediaServer语音信号媒体服务器和DLS集中部署服务系统,提供100个SIP电话用户许可、100个UC桌面客户端许可和100个UC移动客户端许可。配套配置了一套UC应用系统组件,包括及时消息应用系统、Web协同会议应用系统和智能手机移动客户端应用系统。未来可根据集团业务进行扩容,OpenScape Voice软交换平台最多可支持10万门用户,支持集团未来所有下属机构整合入统一通信平台。同时配置一台M3632中继网关,提供2路E1数字中继,连接电信运营商。
3使用效果
可通过C/S客户端方式从传统PC访问虚拟桌面,允许非管理员权限用户安装使用虚拟桌面客户端。用户可通过虚拟桌面访问集团业务系统,可通过虚拟桌面进行日常办公操作,办公人员可正常使用U盘或者移动硬盘进行文件的复制、剪切、粘贴等操作,日常办公软件office、采编、飞腾、Adobe Flash Player10都能正常使用。同时兼容性也达到要求,网络打印机、USB打印机、语音双向都能正常使用。
通过瘦客户机上虚拟桌面使用专用软件和办公系统,与普通PC相比,用户操作界面及习惯均不改变,用户使用体验好,操作较为容易。还能根据连接客户端的分辨率,动态调整虚拟桌面分辨率。
1.引言
当前贵州电网公司正全面进行信息化建设工作,大量省级集中系统对硬件、网络提出了极高的要求,同时机房的负荷也越来越大。
为解决这些问题,公司提出了采用虚拟化技术手段的解决方案。本文论述了虚拟化技术在配电生产管理系统、电网地理信息系统中的应用经验和实现流程。
2.虚拟化技术简介
虚拟化是一个广义的术语,在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。(白度定义)
虚拟化技术从应用领域可分为服务器虚拟化、数据库虚拟化、桌面虚拟化和应用虚拟化等。虚拟化技术结构灵活,可根据实际应用场景提出不同的虚拟化方案,但无论采取何种方案,虚拟化技术都是为了节省用户资源、提高用户工作效率、减少安全隐患。
3.贵州电网信息系统存在的问题
系统占用大量资源:系统占用终端计算机资源严重,往往要求客户端具有高性能处理能力,以配电生产管理系统DMS为例,其对客户端的基本要求是8GB内存、4BGCPU、1GB的网络带宽,在不满足条件的情况下,应用程序运行缓慢、长时间无响应、甚至直接死机,大大影响了DMS系统的实际运用,使得原本用于提高工作效率、模拟现场行为等高级功能不能正常使用,反而造成了工作时间的延长。
各地市网络带宽不一:由于各系统组织结构不同,对于系统环境和网络环境的要求也不一样。当信息系统需要在网络环境下传递业务数据时,由于传送的数据量大、传递时效性强,对于网络带宽就存在很高的要求。但实际网络环境普遍不能满足这一需求,特别是在县一级供电局、供电所,网络环境往往仅能满足网页浏览,对于这样的网络环境,需要大数据量传送的系统是无法实施和实际使用的。特别是当网络信道不好时,原本能够勉强满足数据传输的网络也变得无法使用。这严重影响了这些信息系统的推广和实际应用。
基于客户端的方式增加了维护成本:由于目前部分业务系统采用的是C/S系统架构,需要供电局用户在本机环境下安装客户端,当客户端需要升级维护时,维护人员就必须下载客户端并进行更新或重新安装。即使是基于B/S环境的信息系统,也存在多点维护问题,如果B/S系统使用了不同的浏览器或使用了activex、flash等网页插件,当系统升级时,每一个客户端都必须重新进行插件升级和配置,大大增加了系统维护成本和人力成本。
数据安全性由客户端维护:电网信息系统的另一个特点是数据安全要求高。当某一信息系统维护现场数据或者能直接控制现场环境时,数据的安全性就成为电网安全的重要指标。电网信息涉及到国家安全,因此电网数据的传递必须要求安全。但目前的情况是,当业务数据在网络上直接传递时,客户端计算机能够得到这些数据,并能够通过某些解密方法得到电网信息数据。因此,贵州电网公司要求每一个客户端都必须安装特定的杀毒软件和网络数据安全软件。但即使这样,数据的安全行仍然不能100%的得到保证。
4.虚拟化解决方案
针对C/S架构的业务系统客户端及对于硬件或网络要求高的B/S架构应用软件进行集中部署,将C/S架构的C端或B/S架构的B端,即客户端等应用程序进行处理,集中迁移到虚拟化应用平台上,而不需要对这些应用做二次开发,无需改变应用的架构,实现终端设备零应用安装,而终端设备不再对这些应用系统提供运算服务,用户端与虚拟化应用服务器之间也不在传输应用系统的数据信息,只传输应用系统的鼠标、键盘指令以及图像显示矢量质,因此,可轻松实现用户在贵州电网的网络环境下使用任意的电脑、在任何时间、任何地点方便快捷的使用这些应用系统。应用远程集中部署技术:采用虚拟化应用技术,把应用程序的人机交互逻辑(应用程序界面、键盘及鼠标的操作、音频输入输出、读卡器、打印输出等)与计算逻辑隔离开来。在用户访问一个服务器提供的应用时,用户计算机只需要把人机交互逻辑传送到服务器端,服务器端为用户开设独立的会话空间,应用程序的计算逻辑在这个会话空间中运行,把变化后的人机交互逻辑传送给客户端,并且在客户端相应设备展示出来,从而使用户获得如同运行本地应用程序一样的访问感受。
在服务器上,应用远程集中部署技术将应用的运算逻辑与人机交互逻辑分开,并通过标准的网络协议和通用的网络连接将人机交互逻辑传输给客户机。
应用远程集中部署技术仅仅把人机交互逻辑(包括输出和输入)在客户机和服务器之间传输,不传输具体的业务数据,所以只需要很小的网络带宽,每秒消耗不到20kB的网络带宽。
在客户机上,用户可以得到应用程序的所有输出,但应用的运算逻辑100%地在服务器上执行。从而减少客户端资源的消耗。
应用远程集中部署技术还可设置客户机资源映射,如硬盘共享、USB共享、打印机共享起来,可让用户在使用远程管理平台的硬件资源运行虚拟出的业务系统同时,还可以访问客户机的各种设备资源。
5.应用效果
通过虚拟化平台建设部署,降低了全省GIS及DMS系统客户端软件对于网络带宽的要求,利用现有网络资源实现良好的用户体验。在虚拟化平台部署全省GIS及DMS软件后,用户通过该平台的终端页面即可直接使用上述系统软件,从而降低客户端硬件资源要求、并减少客户端的维护工作量。
通过虚拟化平台部署,测试业务系统在平台上的实际使用效果、根据实际情况不断修正,研究一套适合于贵州电网现有资源环境的虚拟化平台,在研究项目成功的基础上,推广到贵州电网其他应用的系统上,并且让用户在各信息系统的使用中不会受到网络、PC硬件、及操作系统问题、病毒等非信息系统因素的影响。
通过虚拟化平台部署,可以充分利用现有终端PC及网络资源,并有效控制了设备数量的快速增长,避免了快速增长所带来的其他一系列问题。大量的节约了在硬件网络上面的资金投入,降低了能耗、减少管理成本。
由于虚拟化平台自身的特点、该平台也适用在需要进行大规模数据量抽取、大规模数据同步的业务系统上,如营销系统需要在月底集中抽取大批量的数据进行统计,而在该平台部署了营销系统业务软件后,用户在使用营销系统时将不受到网络、客户端硬件资源的限制,可以充分利用虚拟化平台服务器与营销系统服务器之间的高速网络带宽及服务器的硬件资源,实现良好的用户体验。
6.结语
虚拟化平台是适应南网规范以及“四个业务一体化”的系统建设方式。平台将不仅应用于DMS、GIS,而会在全省其他信息化建设项目中起指导和规范的作用,能够将其他信息化项目进行集中部署,从而实现一体化管理。加强了项目实施管理,有序推进项目建设,控制项目实施成本,加强数据的收集,规避相关建设风险,确保项目成功建设,系统安全稳定可靠实用,虚拟化项目的建设取得良好的经济效益,对公司的信息化建设以及节约化调度有很大的促进作用。
参考文献
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)15-0040-03
随着移动互联网技术的发展,位置服务LBS( Location BasedServices)已经渗透到人们生活的各个方面。能够完成精确的定位是所有位置服务系统运行的基础。基于GPS定位的位置服务是当前室外位置服务的主要途径,但在室内,由于无法接收到良好的GPS信号,甚至出现GPS信号被屏蔽的现象,导致通过GPS在室内无法完成精确定位。
为了提高室内定位的精度和稳定性,学者们提出了多种基于室内环境的定位方法,如基于移动台的位置估计方法、 基于智能手机内部传感器预估移动台移动的定位算法、多模融合算法等。基于移动台的位置估计方法在非视距环境下具有很大的误差,不适用于复杂室内环境的定位;基于智能手机内部传感器预估移动台移动的方法,在理论上比较新颖,但对于移动台的移动还是主体的移动当前还没有一个比较好的解决办法,因此精度不高;多模融合定位算法,是将通过多种定位介质得到的定位结果进行融合得出最终定位结果的定位方法,可以得到较高的定位精度,但需要定位主体具备多种传感器,不适用于广泛的位置服务。[1]
针对以上所述文献中方法的缺陷,本文提出了一种基于智能手机GPS/WIFI/蓝牙/图像的多维级联综合定位方案。此方案相较于传统的GPS定位,解决了由于室内无法接收到良好的GPS信号而导致定位不准确或失败的问题。相较于现今人们广泛使用的高德地图和百度地图使用的移动基站+网络定位(GSM/2G/3G//4G/WIFI)方案,该方案增加了蓝牙定位和图像定位,对其做了有益的补充和完善。该系统架构简单,可扩展性强,适用范围广,具有广阔的市场前景。
1 系统总体设计
文中设计的多维级联定位系统主要包括Android客户端、中央服务器位置数据库三部分。智能手机或平板终端安装客户端App后,就可以通过触屏和用户进行交互。中央服务器则负责将手机和平板的操作指令进行计算与处理,并反馈给使用者处理后的结果。手机或平板通过WIFI或GSM/3G/4G与服务器进行通信。
本系统整合智能手机的WIFI功能和蓝牙功能,实现高精度定位与导航服务,与传统定位相比,本系统具有精度高,可精确定位至楼层甚至门牌号,其硬件设备简单,成本较低、系统可靠、易于使用和扩展。
智能手机或平板电脑通过连接WIFI与Internet建立连接,打开客户端软件,选择相应的定位服务(WIFI定位/蓝牙定位/图像识别定位/高德定位),客户端软件发送获取到的周围WIFI/蓝牙/图像信息数据给中央服务器,服务器根据客户端传送过来的原始定位数据进行综合定位分析,最后将计算所得位置结果发送给手机客户端完成一次定位服务。
2 Android客户端软件设计
Android客户端控制系统设计主要包括用户界面UI、HTTP通信、SQLite数据库的设计。Android客户端由一个或多个Android组件构成,组件包括 activities、services、content providers、broadcast receivers 等,每个组件在应用程序中完成不同的任务,每个组件可以单独被激活,或由其他应用程序激活。
2.1 Android 客户端用户界面
Android客户端主界面分为四个碎片(Fragment)界面,每个Fragment实现一个定位功能,从左至右依次是WIFI定位、蓝牙定位、图像定位和位置地图。打开客户端软件首先默认进入WIFI定位Fragment,通过选择底部Tab导航标签可以进入蓝牙定位/图像定位/位置地图功能。若使用者未打开Wlan或蓝牙,在进入相应Fragment时会提示使用者打开上述设备以继续使用定位功能。
2.2 WIFI定位的实现
WiFi热点只要通电,不管它怎么加密的,都一定会向周围发射信号。每个WiFi热点所发出的无线信号中包含此 WiFi 热点的唯一全球 ID。即使目标距离此WiFi热点比较远,目标无法与WiFi热点建立连接,但WiFi热点还是可以侦听到它的存在。江苏电信、江苏移动、江苏联通等公司铺设的位于公共场所的WiFi热点一般都是很少变位置的,比较固定。[2]
打开客户端软件默认进入WIFI定位功能界面,若Wlan尚未打开,则提示当前Wlan尚未打开。使用者可通过点击“打开Wlan”按钮来一键打开Wlan。WIFI定位的基本思路是首先通过手机客户端获取周围WIFI热点的mac地址作为特征识别码,之前也有某些通过WIFI定位方案使用WIFI热点的名称来作为特征识别码,但此种方式容易遇到无线路由器更改WIFI热点名称所带来的识别码失效问题。故选用周围WIFI热点的mac地址作为特征识别码比前者更稳定,不存在WIFI名称改变导致特征识别码失效的问题。第二步是把搜集到的周围WIFI热点的mac地址和rssi信号强度以及高德定位所得位置作为原始定位数据发送给中央服务器,客户端等待中央服务器返回地址数据。中央服务器接收到客户端发送过来的原始定位数据后,首先根据mac地址进入位置数据库(采用Mysql数据库存储)查询数据库中是否已有当前mac地址对应的地址信息,如果有则直接返回地址信息给客户端;如果没有地址信息则根据高德定位所得坐标和WIFI的rssi通过距离算法反推WIFI地址并存储道位置数据库。
1)将网络连接封装到HttpConnect类中以方便之后复用
public class HttpConnect {
public String httpConnect(String url, String name, String filepath) {
strBoundary = UUID.randomUUID().toString();
strChangeLine = "\r\n";strPrefix = "--";try {URL mURL = new URL(url);
HttpURLConnection mHttpURLConnection = (HttpURLConnection) mURL.openConnection();
mHttpURLConnection.setRequestMethod("POST");
mHttpURLConnection.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + strBoundary);
DataOutputStream mDataOutputStream = new DataOutputStream(mHttpURLConnection.getOutputStream());
mDataOutputStream.writeBytes(strPrefix + strBoundary + strChangeLine);
mDataOutputStream.writeBytes("Content-Disposition: form-data; name=\"" + name + "\"; filename=\"" + filepath.substring(filepath.lastIndexOf("/") + 1) + "\"" + strChangeLine);
mDataOutputStream.writeBytes(strChangeLine);File mFile = new File(filepath);
FileInputStream mFileInputStream = new FileInputStream(mFile);
byte[] byt = new byte[1024 * 2];int len;
while ((len = mFileInputStream.read(byt)) != -1) {mDataOutputStream.write(byt, 0, len);}
mDataOutputStream.writeBytes(strChangeLine);
mDataOutputStream.writeBytes(strPrefix + strBoundary + strPrefix + strChangeLine);mDataOutputStream.flush();
mBufferedReader = new BufferedReader(new InputStreamReader(mHttpURLConnection.getInputStream()));
mStringBuffer = new StringBuffer();String str;
while ((str = mBufferedReader.readLine()) != null) {mStringBuffer.append(str);}
strHttpConnectResult = mStringBuffer.toString();
Log.d("click", "httpresut:" + strHttpConnectResult);
mDataOutputStream.close();
mFileInputStream.close();mBufferedReader.close();
mHttpURLConnection.disconnect();} catch (Exception e) {e.printStackTrace();
} return strHttpConnectResult;}
2)获取周围WIFI的mac地址和rssi信号强度
mWifiManager=(WifiManager)context.getSystemService(Context.WIFI_SERVICE);
mWifiInfo = mWifiManager.getConnectionInfo();
mWifiManager.startScan();
mScanResult = mWifiManager.getScanResults();return mScanResult;
3)将获取周围WIFI的mac地址和rssi信号强度数据发送给中央服务器
JSONArray mJsonArraySend = new JSONArray();
JSONObject mJsonObjectSend;
for (int i = 0; i < params[0].size(); i++) {mJsonObjectSend = new JSONObject();
try {mJsonObjectSend.put("mac", params[0].get(i).getMac());} catch (JSONException e) {e.printStackTrace();}try{mJsonObjectSend.put("mdb",params[0].get(i).getMdb());} catch (JSONException e) {e.printStackTrace();}mJsonArraySend.put(mJsonObjectSend);}
4)获取中央服务器返回的位置数据
strHttpConnectResult = HttpConnect.httpConnect("http://127.0.0.1/httptest.php", ("json=" + mJsonArraySend.toString()).getBytes());JSONArray mJsonArrayReceive = null;try {mJsonArrayReceive = new JSONArray(strHttpConnectResult);} catch (JSONException e) {e.printStackTrace();}
将解析后的数据显示到RecycleView
for (int i = 0; i < params[0].size(); i++) {for (int k = 0; k < mJsonArrayReceive.length(); k++) {JSONObject mJsonObjectReceive = null;
try {mJsonObjectReceive = mJsonArrayReceive.getJSONObject(k);} catch (JSONException e) {e.printStackTrace();}if(params[0].get(i).getMac().equals(mJsonObjectReceive.optString("mac"))){params[0].get(i).setAddress(mJsonObjectReceive.optString("address")); params[0].get(i).setDistance(mJsonObjectReceive.optInt("distance"));break;}}}
mWifiAdapter = new WifiAdapter(getActivity(), list);
rv_wifi_wifi_location.setAdapter(mWifiAdapter);
LinearLayoutManager mLinearLayoutManager = new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false); rv_wifi_wifi_location.setLayoutManager(mLinearLayoutManager);
2.3 蓝牙定位的实现
蓝牙技术属于短距离无线通信技术,是利用无线连接把固定及移动的信息设备构成个人局域网,从而使得设备之间低成本无线互连通信的实现[3]。
蓝牙定位技术功耗较低,主要应用于小范围定位,精确度为1~3m,有中等的安全性和可靠性。蓝牙设备体积小,易于集成在PDA、PC及手机中,因此很容易推广普及。对于持有集成了蓝牙功能移动终端设备的客户,只要设备的蓝牙功能开启,蓝牙室内定位系统就能够对其进行位置判断。采用该技术作室内短距离定位时容易发现设备且信号传输不受视距的影响。相比其他几种流行的室内定位方法,采用低功耗蓝牙4.0标准的室内定位方法具有成本低、部署方案简单、响应速度快等技术特点,加之手机设备厂商对蓝牙4. 0标准规范的大力推广,因而具有更好的发展前景[4]。
打开客户端软件,选择底部蓝牙定位Tab进入蓝牙定位Fragment,若此时未手机尚未打开蓝牙,则提示使用者打开蓝牙以继续使用蓝牙定位服务。使用者可以点击“打开蓝牙”按钮一键开启系统蓝牙功能,打开蓝牙之后客户端软件将自动搜索附近蓝牙设备。客户端软件将搜索到的附近蓝牙设备的mac地址作为特征识别码来标识每一台蓝牙设备,该设计相较于其他一些蓝牙类软件将蓝牙名称作为特征识别码避免了蓝牙名称重复所带来的标识混乱问题。客户端软件在后台将搜索到的附近蓝牙设备的mac地址和rssi信号强度进行算法分析,最终得出和当前智能手机的实际距离并返回数据显示到用户界面,
1)新建广播接收器,获取周围蓝牙设备的mac地址和rssi信号强度
mBroadcastReceiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {mIntent = intent;
if (intent.getAction().equals(BluetoothDevice.ACTION_FOUND)) {
BluetoothDevice mBluetoothDeviceNew = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
if (mBluetoothDeviceNew.getBondState() != BluetoothDevice.BOND_BONDED) {
mBluetoothBean = new BluetoothBean();
mBluetoothBean.setName(mBluetoothDeviceNew.getName());
mBluetoothBean.setRssi(intent.getExtras().getString(BluetoothDevice.EXTRA_RSSI));
mBluetoothBeanList.add(mBluetoothBean);
mMyBluetoothAdapter.notifyDataSetChanged();}}
2.4 图像识别定位的实现
近几年,随着计算机软硬件与光电传感器技术的迅速发展,图像处理技术与机器视觉技术的应用已深入航空航天、农业、军事、医学等多个领域,在纺织行业也得到了日益广泛的应用,如检测纤维混纺比,自动评判织物抗皱性、起毛起球性等级织物结构参数识别等。其中,基于成像式传感器的自动检测方法研究是热门的课题之一[5]。
打开客户端软件,选择底部图像定位Tab进入图像定位Fragment,界面显示相机取景框,使用者调整手机位置选取要定位的建筑物,点击“拍照”将保存图片数据并跳转到图片预览界面,确认后点击“确定”按钮将图片发送到服务器进行图像识别,客户端等待服务器定位结果。服务器根据特征点进行图像识别分析得到图像特征码(IFC,Image feature code)。将此图像特征码在位置数据库中进行位置查询并返回查询结果给手机客户端,客户端将结果显示到用户界面。
1)打开摄像头,获取手机客户端拍照图片
Camera.Parameters mCameraParameters = mCamera.getParameters();
mCameraParameters.setPictureFormat(ImageFormat.JPEG);
mCameraParameters.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO
mCamera.setParameters(mCameraParameters);
mCamera.takePicture(null, null, mCameraPictureCallback);
mCameraPictureCallback = new Camera.PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
String childDirectoryPath = "Location" + File.separator + "Picture";
mFileOperate.createChildDirectory(childDirectoryPath);
File mPictureSaveFile = new File(mFileOperate.mPath + File.separator + childDirectoryPath + File.separator + "temp.jpg");
Bitmap mBitmapResource = BitmapFactory.decodeByteArray(data, 0, data.length);
Bitmap mBitmapToSave = BitmapFactory.decodeByteArray(data, 0, data.length);
Matrix mMatrix = new Matrix();
mMatrix.setRotate(90, mBitmapResource.getWidth() / 2, mBitmapResource.getHeight() / 2);
mBitmapToSave = Bitmap.createBitmap(mBitmapResource, 0, 0, mBitmapResource.getWidth(), mBitmapResource.getHeight(), mMatrix, true);
try {if (mPictureSaveFile.exists()) {mPictureSaveFile.delete();}
FileOutputStream mFileOutputStream = new FileOutputStream(mPictureSaveFile);
press(pressFormat.JPEG, 50, mFileOutputStream);
mFileOutputStream.close();} catch (FileNotFoundException e) {
e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}};
2)将图片发送到中央服务器进行图像识别
3)将服务器返回位置数据显示到用户界面
2.5 3D校园重建的实现
基于3D建模的三维校园重建功能是本系统设计的最终目标。通过利用3D建模技术将校园的立体结构构建出来,如教学楼、学生公寓、食堂、图书馆、办公楼、实验楼等,每栋建筑的楼层和房间也通过3D建模技术予以重建,最终构建出一个完整的数字三维立体校园模型。通过使用压缩算法实现将数字三维立体校园模型在手机终端予以展示。
3 结束语
将完成的手机应用软件成功安装, 经反复测试,可以实现与服务器进行交互,资源下载与上传均可实现,可以通过校园微博发送与接收微博信息,通过校园导航实现校园导航与周边搜索等。各功能模块工作正常,耦合度低,符合预期设计要求。
本数字校园服务平台系统兼容当前较流行的B/S架构――浏览器+服务器,和其他系统架构如C/S架构相比,优势明显,实现了跨平台同等表现。同时,这种方式采用的手机App具有通用性,易于移植,能够在带有此类操作系统的智能设备上安装和使用,市场价值高,易于推广,本系统所需硬件简单易用,稳定可靠,大大降低了开发和维护成本,并具有良好的扩展性。
参考文献:
[1] 赵宇,周文刚.基于智能手机的室内定位[J].计算机应用与软件,2015(6):91.
[2] 钮鑫.Wifi定位的原理及应用方向[J].福建电脑,2015(10):136.
一、绪论
随着人民生活水平的提高,人们对家居要求的条件不断提高,对各种高档的甚至普通的住宅小区,都提出了智能化小区的概念[1]。随着中国持续不退的房地产热,国内不少企业也看准了远程抄表行业的发展势头,积极组织人员研制各种远程抄表系统,但由于该行业比较年轻,规范不全,目前远程抄表行业发展的特点是技术较成熟、发展较迅速、问题较多、行业仍有待规范。
本系统针对远程抄表系统对数据传输的要求,提出了一种基于GPRS无线通信技术的远程抄表方案,该方案的意义主要体现:(1)该方案的提出改变了目前人工抄表上门难,水损大以及遇到紧急情况无法及时处理等问题,有效地提高了工作效率;(2)本系统充分利用GPRS无线网络传输的特点,实现了水表信息的远程采集和数据管理,规范化了供水企业员工业务工作流程;(3)系统建立了供水管网实时运行监控框架,对水管网的水表数据进行实时监控处理,为管网故障诊断提供了技术支持。
二、系统架构
系统主要由远传水表(带GPRS传输通道),通信服务器、数据服务器和监控客户端以及Internet组成,其中,通信服务器上主要部署了通信服务软件、数据服务器上主要部署了数据库平台软件,监控客户端上主要部署了数据请求服务软件和水管网监测客户端软件。
三、系统功能
系统软件主要由通信服务软件、数据请求服务软件和水管网监测客户端软件组成。其中通信服务软件主要实现与远程水表之间的数据通信功能;数据请求服务软件完成数据存储功能;水管网监测客户端软件主要实现了水管网相关数据的查询统计等功能。(1)通信服务软件模块。通信服务软件主要用来和远传水表进行通信,同时响应数据请求服务软件的数据请求,通信服务软件具有面向公网的固定IP和端口,水表和通信服务器之间通过TCP协议进行通信[2]。(2)数据请求服务软件模块。数据请求服务软件主要是向通信服务软件请求数据,同时将数据解析,存储到数据库中。为了减轻服务器的负荷,数据请求服务软件向通信服务软件请求数据后,再由数据请求服务软件将数据解析后提交给数据库进行存储,在通信服务软件部分不作数据存储。通信服务软件和数据请求服务软件通过在公网Internet利用UDP协议进行通信。(3)客户端监控软件模块。客户端监控软件主要是访问数据库服务器中的数据,并对数据进行查询、统计和维护。
四、系统关键技术
(1)GPRS通信技术。服务器端安装GPRS通讯模块,通过GPRS网络与设备端建立通讯;首先服务器端处于等待状态;设备端主动发起连接;服务器端一旦检测到连接,即发送读地址命令;服务器读取设备端的IP和端口地址[3];根据地址读数,检测到设备位置,读取设备发送的计量数据,包括当前累计流量,结算日累计流量,时间等。(2)数据存储转换技术。本系统在运行时会产生大量的数据,因此对于数据存储也提出了很高的要求。为了保证数据存储的有效性、一致性和完整性,将会采用触发器、存储过程和自定义函数等数据库技术。
五、结论与展望
本系统采用了计算机通信技术、数据库和Delphi软件,充分利用GPRS无线网络传输的特点和优势,实现了水表数据的远程读取。提高了水管网监测系统的工作效率,降低了抄表人员的工作强度。
尽管设计基本满足系统的要求,但还存在诸多需要改进的不足之处。软件的功能还需要针对客户的需求进一步完善。例如在管网故障诊断功能方面还需要进一步完善,这也正是软件可进一步研究的一个技术点。GPRS无线通信技术在今后的数据传输发展中已经成为一种趋势[4]。本系统主要采用GPRS传输数据,施工简单,可靠性好,遭到破坏时影响范围小,查错方便。而且系统运行成本比较低,操作起来方便,更加规范化,在无线远程监测场合具有广阔的应用前景,具有推广的价值。
参 考 文 献
[1] 郭亮. 智能小区远程抄表系统的低功耗设计,2010