安卓系统下关于WiFi-Direct的研究.doc_第1页
安卓系统下关于WiFi-Direct的研究.doc_第2页
安卓系统下关于WiFi-Direct的研究.doc_第3页
安卓系统下关于WiFi-Direct的研究.doc_第4页
安卓系统下关于WiFi-Direct的研究.doc_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文)中文题目 安卓系统下关于WiFi-Direct的研究 英文题目:A Study of WiFi-Direct on Android System 学 院: 理学院专 业:理科试验班学生姓名:龚强学 号:10274003指导教师:陈一帅 2014 年 6 月 3 日 北京交通大学毕业设计(论文)任务书题 目:安卓系统下WiFi-Direct的应用研究 适合专业: 通信工程专业 指导教师(签名): 提交日期: 年 月 日学院:理学院 专业: 理科试验班 学生姓名: 龚强 学号: 10274003 毕业设计(论文)基本内容和要求:技术原理:- 研究WiFi-Direct技术原理,了解WiFi-Direct技术和wifi-adhoc, wifi-tethering技术的本质区别,理解为什么工业界会提出WiFi-Direct技术。- 了解WiFi-Direct节点通信协议过程行业现状:- 调研WiFi-Direct技术目前的操作系统,设备支持情况。- 研究安卓系统下WiFi-Direct的现状;系统设计:- 编程实现安卓中的WiFi-Direct应用,实现两个手机终端之间通过WiFi-Direct通信;- 使用数据库编程实现groupowner对于peer的管理;在多个设备组成一个group的情况下编程实现手机两两之间通信;- 使用eclipse编程实现apk。毕业设计(论文)重点研究的问题:使用数据库来实现group对于peers的管理,使得peers之间能互相通信;编写程序使得用户界面清晰明了,生成一个使用的apk程序,使得在wifi的环境下手机之间快速分享资源。毕业设计(论文)应完成的工作:论文书写格式规范;查阅各种中外文献,加深对WiFi-Direct技术原理和行业现状的了解;理解WiFi-Direct在安卓平台下的局限,应用编程技术加以改进;使用eclipse编程软件编程整合实现apk应用程序;用户界面做到简单,大气而且人性化,便于用户使用。参考资料推荐:1. WiFi_P2P_Technical_Specification_v1.2;2. 泰凯文. 基于Wi-Fi Direct的音视频共享系统的研究与实现D.北京邮电大学,2013.3. Lombera, I.M.; Moser, L.E.; Melliar-Smith, P.M.; Yung-Ting Chuang, Peer management for iTrust over Wi-Fi Direct,Wireless Personal Multimedia Communications (WPMC), 2013 16th International Symposium on, vol., no., pp.1,5, 24-27 June 20134. Conti, M.; Delmastro, F.; Minutiello, G.; Paris, R., Experimenting opportunistic networks with WiFi Direct,Wireless Days (WD), 2013 IFIP, vol., no., pp.1,6, 13-15 Nov. 20135. Camps-Mur, D.; Garcia-Saavedra, A.; Serrano, P., Device-to-device communications with Wi-Fi Direct: overview and experimentation,Wireless Communications, IEEE, vol.20, no.3, pp.96,104, June 2013其他要说明的问题:2北京交通大学毕业设计(论文)开题报告题 目: 安卓系统下关于WiFi Direct的应用研究 学院: 理学院 专业: 理科试验班 学生姓名: 龚强 学号: 10274003 文献综述:1 WiFi Direct技术介绍2010年10月,Wi-Fi Alliance(Wi-Fi联盟)发布Wi-Fi Direct白皮书,白皮书中介绍了这种技术的基本信息、特点和功能。该技术允许无线网络中的设备无需通过无线路由器即可相互连接,特别是,与蓝牙技术类似,允许无线设备以点对点形式互连,而且在传输速度与传输距离方面比蓝牙有大幅提升。按照定义,Wi-Fi Certified Wi-Fi Direct设备是支持对等连接的设备,这种设备既支持基础设施网络,也支持P2P连接。Wi-Fi Direct设备能够作为典型的站点(STA)加入基础设施网络,而且必须支持Wi-Fi Protected Setup加入者功能。Wi-Fi Direct设备通过组建小组(以一对一或一对多的拓扑形式)来建立连接,小组的工作形式与基础设施BSS类似。由一部Wi-Fi Direct设备负责整个小组,包括控制哪部设备加入、小组何时启动和终止等。这种设备对于传统客户设备而言就是一部接入点,能够提供基础设施接入点所提供的部分服务。最初,Wi-Fi Alliance®联盟将这一新标准原名为“Wi-Fi peer-to-peer”,而最终定名为WiFi Direct,面向各种Wi-Fi设备,如电脑、手机、电脑外设、家电等等。符合该标准的设备无需热点和路由器,就可以方便的和其他设备实现直接连接,传输数据或共享应用。Wi-Fi Direct可以支持一对一直连,也可以实现多台设备同时连接,并且Wi-Fi Direct标准将会支持所有的Wi-Fi设备,从11a/b/g至11n,不同标准的Wi-Fi设备之间也可以直接互联。2 国内外的研究情况:2.1 WiFi Direct应用现状针对WiFi Direct规范,WiFi-alliance中的几大公司分别提出了不同的解决方案:Intel公司提出了my WiFi技术;TI提出使用IVA-HD加速器作为编码器的WiFi display技术;Broadcom提出了集合WiFi与H.264编码技术的5G WiFi display 技术方案。类似技术还有苹果公司的Airplay mirroring。2.2 WiFi Direct与蓝牙技术的比较说到直连技术,就不能不提到蓝牙。在之前很长一段时间,蓝牙技术是无线设备间直连的事实标准。在WiFi Direct规范出现之前,蓝牙技术被认为是最适合无线个人区域网的技术。但在WiFi Direct出现之后,这种情况变得复杂起来。蓝牙4.0和WiFi Direct都是为了在无线设备之间快速传输图片,文件和其他数据实现的。现在的智能手机、平板电脑、笔记本电脑等设备,大都配有蓝牙和WiFi接口,这两种技术并行发展还是一枝独秀,现在下结论还为时尚早。WiFi Direct在传输速率以及传输距离远胜于蓝牙4.0,同时在兼容性上也比蓝牙4.0出色。但是蓝牙在耳机等领域耕耘多年,WiFi Direct想插足绝非易事。但是WiFi Direct在视频、远距离传输上的优势也让蓝牙望尘莫及。此外,原有设备上对蓝牙和WiFi的支持已经固定,两种技术都没有给用户提出一种过渡到对方的方案,而连接方式尚不足成为更新设备的理由,给两种技术留下了很大的成长空间。3 WiFi Direct技术细节3.1 Wi-Fi Direct标准的应用场合Wi-Fi Direct标准的原名是Wi-Fi peer to peer,即P2P版本的Wi-Fi,又称为Wi-Fi对等技术。符合Wi-Fi Direct标准的设备叫做Wi-Fi对等设备。Wi-Fi Direct标准旨在让符合Wi-Fi Direct标准的设备在无需连入Wi-Fi热点的情况下,简单方便地与其他Wi-Fi设备建立直接连接,传输数据或共享应用。目前市面上大量应用的传统Wi-Fi设备如电脑,手机等等都不能主动发起,但是大部分可以被Wi-Fi Direct设备邀请建立点对点的连接。Wi-Fi对等技术充分利用了传统Wi-Fi技术的优势:包括性能、安全性、易用性和普及性,并增加了优化消费者使用方式的特点:消费者在使用时无需接入路由设备。现在,用户无需先接入Wi-Fi热点就可直接连接Wi-Fi设备了。举个例子,使用这种技术,Android手机等移动设备可以与笔记本电脑直接相连,无论此时是否存在可用的Wi-Fi热点;Android手机用户可以看到提供不同服务的Wi-Fi设备清单,根据自身需要选择提供相应功能(如打印功能)的设备进行Wi-Fi P2P连接,实现打印文件的目的。3.2 Wi-Fi Direct的功能特性获得Wi-Fi Direct认证的设备扩大了 Wi-Fi技术的覆盖范围。一方面,Wi-Fi Direct设备之间可以建立P2P的连接;另一方面,Wi-Fi Direct设备可以兼容传统的Wi-Fi设备,向传统设备发出邀请从而建立P2P的连接,连接效果与网线连接无异。Wi-Fi Direct与Wi-Fi技术相比,在如下方面做了改进:1)随时随地建立连接:Wi-FiDirect设备间或Wi-Fi Direct与传统Wi-Fi设备可以随时随地建立P2P连接,无需考虑连入Wi-Fi热点或WLAN。2)服务可见:Wi-Fi Direct设备在用户建立连接前帮助用户确认存在哪些可用设备以及该设备所提供的服务,用户根据自身的需要与提供相应服务的设备建立连接。3)安全与易用性:Wi-Fi Direct 采用 WPS (Wi-Fi Protected Setup, Wi-Fi保护设置)机制提供更安全的加密方式,同时简化了设备间建立安全连接的过程。连接方式包括两种:PBC (Push Button Configuration)模式和 PIN (Personal Identity Number,个人认证码)模式。目前市面上大部分的Wi-Fi Direct设备上都装有WPS按钮,WPS按钮的作用是建立Wi-Fi Direct设备间的安全连接。用户只需同时按下两台设备上的WPS按钮即可建立Wi-Fi Direct设备间的P2P连接,这种方式称之为PBC模式。P1N模式同样适用于两台Wi-Fi Direct设备建立P2P连接,也适用于Wi-Fi Direct设备与Wi-Fi设备间建立P2P连接。用户在自己设备上通过输入要连接设备的PIN完成验证,通常情况下PIN码会显示在设备上。4)节能特性:理论上能够将设备的电池使用时间延长15%到40%。 3.3 Wi-Fi Direct关键机制所有的Wi-Fi Direct设备必须能够负责整个小组,同时能够协调哪台设备能够成为小组管理者,甚至一定要具备设备发现和电源管理的机制,同时还能够提供可选功能,例如:服务发现,邀请机制。表1-1即为Wi-Fi Direct所定义的关键机制。 表1-1 WiFi Direct的关键机制关键机制强制可选设备发现服务发现小组建立邀请机制客户发现能源管理-P2P-PS与P2P-WMM-PS-缺席通知-机会节能3.3.1 设备发现设备发现用于确定其他WiFi Direct设备并建立连接。这种功能采用的扫描技术与发现基础设施接入点时使用的扫描技术类似。用户可以选择已经发现的设备进行连接。如果目标尚未加入小组,则将组建新的小组。如果目标已经加入小组,正在搜索的WiFi Direct设备将试图加入已存在的小组。WPS用于获取证书,并验证正在进行搜索的WiFi Direct。设备发现组要包括2个阶段:Scan和Find阶段,如图1-1所示。图1-1 设备发现在Scan阶段,设备通过扫描所有支持的信道收集周围设备或网络的信息。Scan阶段采用IEEE 802.11-2007中定义的扫描过程。在Scan阶段,设备依次向所有信道发出探测请求帧,同时在Scan阶段的设备应该响应探测请求帧。Find阶段用于确保2个处在搜索状态的设备到达同一个信道,这时互相通信的前提条件。Find阶段包括两个状态:Listen和Search。处在Listen状态的设备应该只对含有P2P信息成分或者WPS信息成分的请求进行应答。 在Search状态的设备应该向每一个信道发送一个或多个探测请求,而处在此状态的设备是不能对任何请求进行响应的。3.3.2 服务发现服务发现是可选的特性,其目的在于获取发现的设备可以提供什么样的服务,如Bonjour、UPnP、Web服务等。如果设备1已经成功地发现了设备2,即设备发现阶段已经结束,那么设备1可以在任意时刻执行服务发现过程,如图2-3所示:同时,如果已经开始了服务发现,则关键机制中的小组建立过程必须要等到服务发现过程完毕才能开始工作。图1-2服务发现当设备1向设备2进行服务发现过程时,请求帧会询问设备2提供哪种服务类型,设备2会针对自身所提供的服务协议类型通过响应帧进行回答。服务协议类型如表1-2进行规定。表1-2 服务协议类型值服务协议类型0所有的服务协议类型1Bonjour2UPnP3WS-Discovery4-254Reserved255Vendor Specific3.3.3 小组建立在小组建立的过程当中,将决定哪台设备将成为小组管理者,成为小组管理者的设备将决定小组是永久性(多次重复使用)还是临时(设备间仅进行一次连接)的小组。小组管理者的协商是一个三步帧交换过程,假如设备1要与设备2进行小组管理者的协商,设备1首先会向设备2发送小组管理者协商请求帧,请求帧包括Group Owner Intent,这个值用来表示设备想成为小组管理者的意愿值(用xl表示);设备2收到设备1的请求帧(太多这种问题。)之后,会向设备1发送小组管理者协商响应帧,响应帧同样包括设备2成为小组管理者的意愿值(用x2表示),设备1会对d和x2的数值大小进行比较,决定哪台设备将成为小组管理者,并向设备2发送协商结果。小组管理者的协商算法如图1-3所示。图1-3 小组管理者协商算法在小组管理者协商之后,会进行小组的特征协商工作,小组管理者会制定小组的规范。首先确定小组是永久型还是临时型。接着设备间会进行WPS信息的交换,从而完成加密工作。图1-4描述了小组建立过程。目前WPS常见的连线模式有2种,分别是PIN及PBC。图1-4 小组建立过程3.3.4 邀请机制Wi-Fi Direct提供此机制目的是以邀请的方式使其他Wi-H Direct设备进入己经存在的小组。 客户发现使用户针对某类特定的设备或设备类型进行连接。提供了对附近的Wi-Fi Direct设备分类的功能,方便快速找到所需的应用。 能源管理能源管理功能并不是所有小组都有的,如果小组中存在传统的Wi-Fi设备,则不能使用能源管理功能。能源管理机制目的在于降低小组各个设备角色的能源消耗,同时保持客户发现的功能。包括三种具体的节能机制:(1) P2P-PS 与 P2P-WMM-PS:以标准的 Wi-Fi Power Save 和 WMM-Power Save规范为基础,帮助小组管理者实现节能的目标。(2) 缺席通知:当小组成员离开时告知小组其他成员。(3) 机会节能:允许小组管理者进入休眠状态。但为了保证关键机制设备发现的正常使用,仍会定期进入可用状态。主要参考文献:1. 泰凯文. 基于Wi-Fi Direct的音视频共享系统的研究与实现D.北京邮电大学,2013.2. Conti, M.; Delmastro, F.; Minutiello, G.; Paris, R., Experimenting opportunistic networks with WiFi Direct,Wireless Days (WD), 2013 IFIP, vol., no., pp.1,6, 13-15 Nov. 20133. Camps-Mur, D.; Garcia-Saavedra, A.; Serrano, P., Device-to-device communications with Wi-Fi Direct: overview and experimentation,Wireless Communications, IEEE, vol.20, no.3, pp.96,104, June 20134. Asadi, A.; Mancuso, V., WiFi Direct and LTE D2D in action,Wireless Days (WD), 2013 IFIP, vol., no., pp.1,8, 13-15 Nov. 20135. Pyattaev, A.; Johnsson, K.; Andreev, S.; Koucheryavy, Y., 3GPP LTE traffic offloading onto WiFi Direct,Wireless Communications and Networking Conference Workshops (WCNCW), 2013 IEEE, vol., no., pp.135,140, 7-10 April 20136. Xiaoxiao Liu; Huang, J.S.; Zujue Chen, The human positioning system based on the WiFi Direct and Precision Time Protocol,Transportation, Mechanical, and Electrical Engineering (TMEE), 2011 International Conference on, vol., no., pp.1580,1584, 16-18 Dec. 20117. Zhuo Li; Qilian Liang; Xiuzhen Cheng; Znati, T., Outage performance evaluation over Rayleigh fading channels of WiFi Direct networks in Smart Grid application,Innovative Smart Grid Technologies - Asia (ISGT Asia), 2012 IEEE, vol., no., pp.1,5, 21-24 May 20128. Hayoung Yoon; JongWon Kim, Collaborative streaming-based media content sharing in WiFi-enabled home networks,Consumer Electronics, IEEE Transactions on, vol.56, no.4, pp.2193,2200, November 2010二、研究方案:基本研究方法:WiFi Direct协议研究 数据库 JAVA编程研究内容:应用JAVA编程以及数据库的应用实现WiFi Direct中group owner对于peer的管理,使得能够实现一定范围内每个手机终端之间都能快速地分享消息以及资源。Group_owner在peer加入小组之后就会要求peer向Group_owner发送一个消息,然后Group_owner调用函数获取每一个peer的mac以及ip地址,并且将它们整合到数据库中,之后再将包含了所有连入这个group的peer的mac和ip的一个list分发给每一个peer,此时peer之间就可以依据某种通信方式进行连接。每当有新的peer加入进来的时候owner就会更新一次list,保证它的实时性。这样就能针对当前许多关于WiFi Direct应用只能同时实现2个终端通信的现状做出改进。整体设计框架:数据库的设计与编写数据库嵌入socket通信多人情况下mac/ip分发的调试用户界面的设计多人通信的调试毕业设计(论文)进度安排:序号毕业设计(论文)各阶段内容时间安排备注1阅读相关文献,提出方案3.1-3.102开始编程,用数据库实现Owner对peer的管理3.11-3.313调试多人情况下的消息传输情况4.1-4.204调试多人情况下的资源分享情况4.21-5.15完善代码,设计用户界面5.1-5.206做好结题准备5.21-6.10指导教师意见:填写说明:查阅资料是否全面,提出的研究方案和计划进度是否可行(方案还要再具体一点),还有什么需要注意和改进的方面,是否同意按学生提出的计划进行等。指导教师签名: 审核日期: 年 月 17摘要WiFi-Direct是由WiFi 联盟推出的、基于WiFi、旨在提供手机间直接通信的新技术。由于WiFi比蓝牙、2G网络等有更大的带宽和信道容量,传输范围也更大,使得WiFi-Direct在机会式网络及D2D领域中有很大的潜力,在未来终端直连领域中有着不可忽视的作用。本文首先介绍WiFi-Direct技术核心和Android系统对其的支持,包括节点扫描、D2D Group形成、节点通信过程的具体技术细节,然后介绍Android系统对WiFi-Direct的编程接口支持。在此基础上,对Android系统下WiFi-Direct技术的性能进行了评估,并实现了一个Android手机D2D通信中间件。具体贡献如下:1) 对比蓝牙、基于WiFi热点手机直连技术,评估了Android系统下WiFi-Direct技术的性能,包括待机功耗、传输速度等。发现WiFi-Direct耗能比基于WiFi热点的应用技术耗能低,传输速度明显优于蓝牙。2) 针对目前已有WiFi手机直连文件传输应用无法进行真正的D2D通信功能的问题(它们不能进行D2D的通信,而只能与Group Owner通信,然后由Group owner将一个节点发送的内容广播到所有节点),基于Android手机平台,设计、实现了一套D2D通信中间件。利用该中间件,加入D2D小组的手机节点能够进行D2D的通信。3) 基于该中间件,我们实现了一个应用WiFi-Direct的手机文件互传的原型系统,测试验证了我们的中间件的有效。 最后,我们讨论了在上述探索过程中发现的WiFi-Direct的问题,展望了下一步的工作。关键字: WiFi-Direct, 终端直连, 机会式网络AbstractWiFi-Direct is a new technology defined by the WiFi Alliance aimed at enhancing direct communication between devices through WiFi. Because of its faster speed and wider coverage than traditional wireless D2D communication like bluetooth, it will have a great impact on Device-to-device communication. Though it have lots of drawbacks like its unstableness, but its strength on speed and coverage still give this new technology great potential in opportunistic network and Device-to-device communication.In this article, We have a brief introduction on its core technology including device scanning, D2D group formation, communication process between devices and the surpport of Android. Based on these technology above, we evaluated the performance of WiFi-Direct compare to other D2D technology and implemented a D2D middleware for WiFi-Direct. Specific contribution are as follows:1) Assessments on WiFi-Direct compared to bluetooth, WiFi hotspot technology especially in power-saving and communication speed. We find that WiFi-Direct have better performance in power-saving than WiFi hotspot technology and faster speed than bluetooth, but its speed is slightly slower than WiFi hotspot technology.2)At present, revelevent apps on the market cannot be really D2D(All the members have to go through the group owner while they transfer files, and the group owner would broadcast those file to everymember in the group.) To solve this problems, we implemented a D2D middleware based on Android for WiFi-Direct. It enables real D2D communicaton among groups.3)Base on the middleware above, we implemented a file transfer application and proved its functionality. In the end, we discussed some problems that still existing in WiFi-Direct system. At last we did some prospects of the future work on WiFi-Direct.Index Terms: WiFi-Direct, D2D, opportunistic network目录1:绪论11.1 背景11.2 问题21.3 本文的工作31.4 论文的构成32 WiFi-Direct核心技术42.1 拓扑结构42.2 关键机制52.2.1 WiFi-Direct的扫描过程52.2.2 服务发现过程72.2.3 小组建立过程92.3 节点通信93 Android 对Wi-Fi Direct的支持113.1 简介113.2 Android WiFi-Direct编程接口113.2.1 类113.2.2 接口124 相似技术分析与WiFi-Direct性能对比124.1 无线Ad Hoc网络124.2 Bluetooth134.3 手机热点分享144.4 LTE D2D144.5 WiFi Direct与各种类似技术的细节比较154.5.1 与Ad Hoc的比较154.5.2 与蓝牙的比较164.5.3 与基于热点的手机互联技术的比较164.5.4 与LTE D2D技术的比较174.6 WiFi-Direct性能评估174.6.1待机功耗174.6.2 WiFi-Direct与茄子快传和蓝牙的速度对比185 无线D2D通信中间件195.1 需求195.2设计215.2.1 小组管理者形成各小组成员的MAC/IP映射表215.2.2 MAC/IP映射表的分发235.2.3小组成员形成自身映射表235.3实现245.3.1 主要模块245.3.2 模块功能246 原型系统实现266.1介绍266.2 测试286.3 讨论346.3.1 多人小组建立时间的问题346.3.2功耗问题356.3.3 WiFi-Direct在D2D环境下应用时的干扰问题367 结论368 参考文献379 外文原文与翻译389.1 外文原文389.2 翻译45北京交通大学毕业设计(论文) 第 50 页1:绪论1.1 背景随着多媒体技术的迅速发展,人们在视频,音乐等多媒体方面的需求越来越大。年轻人经常会聚集在一起观看图片、听歌或者欣赏视频,而通过无线来进行图片共享、即时聊天、视频共享就变得很符合人们的需求。在日常的学术交流或者会议中,人们也经常要进行成果演示或者汇报工作,大致步骤是通过数据线将手提电脑与投影仪进行连接,将电脑上的内容投影到屏幕上。这种传统的方式受限于投影仪、幕布以及有线连接。如果能以无线的方式将笔记本甚至手机与投影仪连接起来,直接在幕布上进行展示,这样做既能对现有的设备进行合理的利用,节约不必要的而投入;同时摆脱了对线的依赖,极大地方便了用户的使用。WiFi Direct的出现满足了人们在无线直连方面的需求。随着WiFi技术的发展,WiFi-Alliance成员又开发出了一种新的规范,称为Wi-Fi-Direct(又称为WiFi P2P技术),极大地拓展了用户对WiFi的使用。WiFi-Direct认证设备拥有了一种全新的功能:用户无需使用传统的WiFi基础设施网络就可以在WiFi客户端设备之间创建直接连接。获得WiFi联盟对等规范认证的设备将带有WiFi认证的WiFi-Direct认证标志。今天,全球约10%的人口正在使用WiFi与他人进行连接。目前全球共有10亿多部WiFi设备正在投入使用,截止到2013年全球出厂的WiFi设备达到将近15亿部。WiFi技术被广泛应用于家庭、数码相机、电视、游戏设备以及手机等。WiFi-Direct设备可以建立与现有的传统的WiFi设备的直接连接。通过此种方式,成千上万中传统通过WiFi认证的设备将具备直接连接功能。与此同时,智能手机中Android的市场占有率最近稳居第一,基本上所有的Android手机都包含WiFi模块,也提供了硬件支持。1.2 问题虽然WiFi Direct的软硬件底层技术已经普及,WiFi-Direct技术的应用却至今不愠不火。这是因为两方面的原因:1)作为一项新技术,其无线底层的一些核心设计尚不完善,用户体验不佳;2)Android提供的编程接口非常低级,没有提供D2D通信的高层应用接口。在这两方面,国外已有一些研究者进行了一些测量和编程工作。但国内对此的研究还刚刚起步,研究和应用都存在很大的空白,这极大地阻碍了我国无线通信产业界的发展。特别是,在5G网络的研究中,D2D技术是一项非常核心的技术,而WiFi-Direct技术正是一项很有潜力的D2D底层无线技术。因此,对其的研究是十分必要和紧迫的。1.3 本文的工作针对上述问题,我们展开了对Android编程以及WiFi-Direct的全面钻研,并认真地在Android平台上进行了研究和开发工作。我们阅读了大量WiFi-Direct相关论文,掌握了WiFi-Direct研究的最新发展趋势。然后,编程实践,在Android平台下,利用Android WiFi Direct应用编程接口,设计实现了一个WiFi-Direct的应用层MAC/IP地址同步机制,并通过JAVA编程实现该机制,解决了WiFi-Direct在应用层D2D通信的根本问题。主要工作为:1)调查研究WiFi-Direct的底层协议和核心算法,包括节点扫描、D2D Group形成、节点通信过程,对其底层设计进行了研究。研究评估了Android系统目前对WiFi-Direct的编程接口支持。2)设计实验,评估了Android系统下WiFi-Direct技术相对于蓝牙、WiFi热点手机直连技术的各项性能,包括功耗、传输速度等,证明WiFi-Direct功耗比基于WiFi热点的技术功耗降低1/3左右,而传输速度比蓝牙快9倍。3)调研发现了目前市面上常见的Android手机直连文件传输应用的重大缺陷,即:不能进行组内D2D之间的通信。接着,基于Android Wi-Fi Direct底层编程接口,设计、实现了一个手机D2D通信的中间件(Middleware)。利用该中间件,节点加入D2D小组后,能够直接通信。最后,基于该中间件,我们实现了一个手机文件互传的原型系统,并利用该系统,验证了我们中间件的有效。 1.4 论文的构成第一章为绪论,主要介绍当前的背景,以及需求;第二章介绍了WiFi-Direct的技术特点,关键机制,通信模块;第三章介绍了Android系统对于WiFi-Direct的支持;第四章介绍了与WiFi-Direct类似的无线D2D技术,并且拿WiFi-Direct与其做了性能上的比较;第五章介绍了WiFi-Direct组内通信时存在的问题,设计了一套解决该问题的中间件;第六章介绍了Android中WiFi-Direct的原型系统,并将中间件嵌入其中,测试了中间件的性能。接着讨论了WiFi-Direct仍然存在的一些问题;第七章为对本文做出了结论;第八章为参考文献;第九章为外文原文翻译。2 WiFi-Direct核心技术2.1 拓扑结构 WiFi-Direct终端之间建立连接都是以小组的形式来实现的。小组建立的拓扑结构包含两种即点对点的形式以及一对多的形式,而每一个小组中只能有一个小组的管理者。每当有设备要加入小组或者小组终结的情况都是由小组管理者来控制的。而小组当中的非管理者成员被称为客户端,它们统一由小组管理者来管理。图2.3-1为WiFi-Direct的示例拓扑图图2.1-1 WiFi-Direct的拓扑结构2.2 关键机制2.2.1 WiFi-Direct的扫描过程WiFi-Direct的设备发现过程可以找到附近能够连接的设备。WiFi-Direct的设备发现过程主要有2个阶段:Scan和Find。设备发现使用的是请求帧和请求返回帧要进行设备间的信息交换。设备只有在如下几种状态下才能响应请求帧:(1) 设备是小组管理者;(2) 设备处在Listen状态;(3) 设备已与一个路由的接入点在发来请求帧的信道相连,此时设备就会回应不能成为小组成员;当WiFi-Direct设备加入一个组之后只有小组管理者会继续发送信标帧。Listen状态:当WiFi-Direct设备没有在任何一个组里面的时候,它们就会停留在Listen的状态来使得它们变得可发现。在该状态下时,设备会停留在某一个信道上等待其他机器发来请求帧,而这个信道是从信道1、6、11中选出来的。如果刚开始选择了某一个信道来进行设备发现,那么这个作为Listen的信道会持续该状态直到设备发现过程结束。Scan状态 Scan状态下使用的是定义在IEEE Std 802.11-2007中的扫描过程。该扫描过程会发现周围的设备或者小组,然后选择最佳的一个信道来进行小组的建立。在Scan状态下设备通过收集周围设备在所有支持信道的信息来进行扫描。处于Scan状态下的设备不会回应请求帧。Find状态Find状态是为了是的2台同时处于search状态的设备到达同一个信道上后方便它们相互之间的通信。系统会让设备分别在Listen状态和发送请求帧状态之间来回循环,以使得2台设备能够有一台在Listen的状态,而另外一台设备则处于发送请求帧的状态。这样它们就能在1、6、11其中的一个信道上相遇,为之后的建立连接做好准备。下图2.2.1-1是扫描的过程 图2.2.1-1 WiFi-Direct的扫描过程2.2.2 服务发现过程服务发现过程是设备之间在发现对方的设备之后通过选择性的帧交换来进行的,服务发现过程的目的是获取对方设备能提供哪些服务,如Bonjour、UPnP、Web服务等。如果设备1已经成功地发现了设备2,那么设备1可以在任何时刻执行服务发现过程,如图1-2所示:而之后的小组建立过程是在服务发现过程进行完之后才进行的。图2.2.2-1 WiFi-Direct的服务发现过程2.2.3 小组建立过程在小组建立的过程中,将决定进行连接的两台设备哪台是小组管理者,而且成为小组管理者的设备还将决定小组是永久型还是临时的小组。小组管理者的协商要进行3步帧的交换过程。设备1会先向设备2发送一个管理者协商请求帧,请求帧包括的就是小组管理者意愿值,小组管理者的形成过程如图1-3所示。图2.2.3-1 WiFi-Direct的小组协商过程2.3 节点通信WiFi-Direct的通信模块分为上层应用层、中间信息处理层以及下层传输层,以下是这三层通信模块的具体介绍:1)上层应用层,设计为人机接口功能,为用户操作的各项功能提供承托平台,包含用户管理模块、消息管理模块、通知管理模块和文件管理模块。该层以简洁流畅的人机界面设计呈现给用户,便于用户快速调用所需功能,使用应用。2)中间信息处理层,设计为信息处理功能,用于对传输信息进行诸如加密解密、CRC校验、数据压缩处理等功能。同时,该层还包含自定义的通信协议和网络发现服务协议的封装和解析还原功能。3)下层传输层,设计为应用的信息传输功能,包含网络发现服务模块和传输管理等模块。通过合理选择TCP、UDP传输方案,将各种上层协议封装好的数据信息传输小组内其他设备,同时对接收的数据信息通过观察者模式告知上层应用框架,分发消息。底层硬件管理层,设计为Wi-Fi Direct管理功能,用于向wpa_supplicant进程发送相应命令,调用Wi-Fi Direct的各项功能,监听Wi-Fi Direct驱动通过wpa_supplicant发出的各种事件,再通过Android Intent广播机制告知上层框架。因此,操作Android系统底层Wi-Fi Direct功能的底层硬件管理模块是很关键的部分。底层硬件管理层主要用于对本地Wi-Fi Direct硬件的调用和通信,是整个系统的核心也是上层部分功能实现的底层硬件基础,用于加载、激活底层Wi-Fi Direct硬件驱动,按需求操作Wi-Fi Direct各项功能,以及接收底层Wi-Fi Direct驱动的传出事件并通知上层应用执行相应处理。Android操作系统对Wi-Fi Direct功能的硬件驱动支持出现在Android 4.0及后续版本,由于Android系统为了维持API的稳定性以及对硬件访问权限的控制,Wi-Fi Direct的激活和关闭方式不同于传统的Wi-Fi操作,必须通过发送Action为Settings.ACTION_WIRELESS_SETTINGS的Intent,打开Wi-Fi设置界面启动或关闭Wi-Fi Direct功能,对于系统的独立性和便捷性、及用户体验都有极大的影响。为了能够实现直接激活和关闭Wi-Fi Direct底层硬件功能,本层采用Java反射机制,直接解析Android应用程序框架层中的wifip2pManager类,访问相应功能API。3 Android 对Wi-Fi Direct的支持3.1 简介Android 4.1以上的系统对WiFi-Direct都有很好的支持,而且其他4.1一下的系统只需要升级到4.1以上也能享用WiFi-Direct这个功能,因为在硬件上没有额外的要求。它更多的是一种软件上的技术,这样就能满足不同的品牌的手机终端之间都能够通过WiFi-Direct很好地进行通信。3.2 Android WiFi-Direct编程接口3.2.1 类Android为WiFi Direct提供了相应的类和接口,最主要的类有:1. WifiP2pManager,这个类主要提供了管理设备连接的应用接口;2. WifiP2pInfo这个类,主要提供的是关于Wi-Fi p2p 小组内的连接信息;3. WifiP2pDevice这个类代表的是Wi-Fi p2p的具体设备;4. WifiP2pDeviceList代表

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论