基于网络编码的WiFidirect多跳移动设备文件分享方法和系统与流程

文档序号:16382251发布日期:2018-12-22 09:35阅读:201来源:国知局
基于网络编码的WiFi direct多跳移动设备文件分享方法和系统与流程
本发明属于无线通信
技术领域
,具体涉及一种基于网络编码的wifidirect多跳移动设备文件分享方法和系统。
背景技术
文件分享系统是文件共享技术在因特网上的典型应用。移动设备的发展,使得这样的应用具有广阔的发展前景。现今,基于移动设备的文件分享系统是一个非常热门的应用。然而,在商业4g网络中传输文件时,特别是在接收端较多的情况下,其通信费用会很高,文件所有者将负担高额的通信费用。当wifidirect技术被采用,位于同一区域的用户可以节省通信费用;此外,用户可以获得比商业网络更高的共享速率。目前,wifidirect是移动设备传输的理想方式,得到了许多制造商的广泛支持。然而,wifidirect技术受到传输距离和用户数量的限制。为了能够在大范围内实现大规模的文件传输,现有技术中引入了网络编码技术。在传统的通信网络中进行文件分享时,存在的安全性差、带宽利用率低的问题。通过编码传输可以达到理论上多播传输的流量最大化等网络编码理论的提出,给改进传统文件共享系统提供了理论依据,同时也使得进一步提高网络的传输效率、可靠性、鲁棒性和安全性成为可能。但是目前采用的被动的网络编码模式不利于各个设备间的数据独立且实时处理数据的性能有待提高同时容易增加因中间节点进行编码而产生的时延;此外,现有技术中移动设备在进行两种模式的不同切换时耗费时间且不停切换带来了延迟使得数据的分发效率不高。技术实现要素:本发明的目的是旨在解决目前采用的被动的网络编码模式不利于各个设备间的数据独立且实时处理数据的性能有待提高同时容易增加因中间节点进行编码而产生的时延的问题,提供一种基于网络编码的wifidirect多跳移动设备文件分享方法。为了达到上述目的,本发明提供了提供一种基于网络编码的wifidirect多跳移动设备文件分享方法,按照如下步骤进行:步骤1)信源设备使用网络编码对数据进行切片编码得到k个线性无关的数据片后转换为无线接入点(accesspoint,ap)等待其他移动设备的问答;步骤2)移动设备向信源设备发送问答请求,信源设备接受请求后将所述k个线性无关的数据片发送给移动设备;步骤3)移动设备接收到数据片后对接收到的数据片进行主动重新编码,同时可作为信源设备向其它移动设备发送重新编码后的数据片;步骤4)当其他移动设备成功接收到预先设定量的线性无关的数据片后解码得到原始数据。进一步地,步骤1)中信源设备使用网络编码对数据进行切片编码之前包括:信源设备选择待分享数据和设置数据分片数量;进一步地,中信源设备使用网络编码对数据进行切片编码得到k个编码后的数据片的同时产生网络编码描述文件(networkcodingdescriptionfile,ncd),所述ncd包括编码向量和源文件分片数量。进一步地,步骤2)具体包括:步骤201):初始时移动设备都处于接收模式(receivemode,rm)向信源设备请求发送数据片;步骤202):信源设备收到若干移动设备的请求,在若干移动设备的请求中选择3个信号最强的移动设备发送同意请求文件;步骤203):接收到同意请求文件的移动设备向信源设备发起连接等待信源设备发送数据片;步骤204):信源设备向m个移动设备发送数据片,每个数据片中都包含一个ncd,且向每个移动设备发送的数据片最多为信源所拥有数据片的50%;步骤205):当信源设备将所拥有的k个数据片成功发送完成则可转为rm为移动设备转发数据片。进一步地,步骤3)包括以下步骤:步骤301):移动设备成功接收到数据片后,将每个数据片的内容写入自己的ncd;步骤302):移动设备成功接收数据片后,同时调用一个线程产生一个新的编码矩阵与所接收到的所有数据片进行编码,得到再编码后的数据片放入缓存器,等待调用;步骤303):移动设备接收完数据片后切换成ap模式成为信源设备,等待其他设备的访问;步骤304):当有请求产生时,发送给请求移动设备已编码的数据片。再进一步地,步骤3)中移动设备接收到数据片后对接收到的数据片进行主动重新编码时具体包括:在设备加入分发过程后,将调用后台线程j来监视工作方向的变化。一旦设备接收到一个新数据片,线程j将接收所有d个数据片的线性组合,主动从有限域gf(256)中产生编码系数[c1,c2,…,cd],与移动设备中的所有数据片[yi1,yi2,...,yid]-1进行重新编码得到新的编码矩阵ynew,表达式如下:其中i代表每个数据片中线性组合的长度,d代表重新编码数据片的数量。将之存储到缓存中。一旦请求产生,将缓存中编码后的数据片发送给请求设备,在有连续请求时则该线程在设备中连续更新数据片的线性组合。进一步地,所有移动设备都可进行两种模式的转换,具体切换策略如下:带有ncd文件fa的移动设备a从信源设备b中接收一个ncd文件fb,r1=rank(fa),r2=rank(fb∪fa);其中rank代表编码矩阵的秩,r1代表文件fa中编码矩阵的秩,r2代表文件fa和文件fb编码矩阵相并的秩。1):当r2>r1时,移动设备a发送数据片发送请求给信源设备b,b同意请求发送数据片给a,a接收数据片后更新ncd文件fa,再重新计算r1和r2;2):否则,移动设备a转化为ap模式成为信源设备,等待其它移动设备的连接;3):如果等待时间超过10秒,重新切换成rm,根据信号强度选择一个ap连接;4)如果没有任何ap可供连接,跳转到2)。在另一方面,本发明提供了一种基于网络编码的wifidirect多跳移动设备文件分享系统,其特征在于:包括分片数量设定程序模块、选择编码文件程序模块、创建连接程序模块、加入连接程序模块以及主动重编码程序模块和移动设备模式切换程序模块;所述分片数量设定程序模块用于对将要分享的文件进行切片编码的数量;所述选择编码文件程序模块用于选择信源设备中需要分享的文件;所述创建连接程序模块用信源设备选择好分享文件后,点击创建连接,信源设备成为ap模式,等待移动设备的连接;所述加入连接程序模块用于点击加入连接模块,移动设备处于rm,进入分享状态,可寻找ap进行连接;所述主动重编码程序模块用于移动设备接收到数据片后对接收到的数据片进行主动重新编码;所述移动设备模式切换程序模块用于将所有移动设备进行两种模式的转换。进一步地,所述主动重编码程序模块执行以下程序:在设备加入分发过程后,将调用后台线程j来监视工作方向的变化。一旦设备接收到一个新数据片,线程j将接收所有d个数据片的线性组合,主动从有限域gf(256)中产生编码系数[c1,c2,…,cd],与移动设备中的所有数据片[yi1,yi2,...,yid]-1进行重新编码得到新的编码矩阵ynew,表达式如下:其中i代表每个数据片中线性组合的长度,d代表重新编码数据片的数量。将之存储到缓存中。一旦请求产生,将缓存中编码后的数据片发送给请求设备,在有连续请求时则该线程在设备中连续更新数据片的线性组合。进一步地,所述移动设备模式切换程序模块具体执行以下切换策略:带有ncd文件fa的移动设备a从信源设备b中接收一个ncd文件fb,r1=rank(fa),r2=rank(fb∪fa);其中rank代表编码矩阵的秩,r1代表文件fa中编码矩阵的秩,r2代表文件fa和文件fb编码矩阵相并的秩。1):当r2>r1时,移动设备a发送数据片发送请求给信源设备b,b同意请求发送数据片给a,a接收数据片后更新ncd文件fa,再重新计算r1和r2;2):否则,移动设备a转化为ap模式成为信源设备,等待其它移动设备的连接;3):如果等待时间超过10秒,重新切换成rm,根据信号强度选择一个ap连接;4)如果没有任何ap可供连接,跳转到2)。本发明的有益效果是:1、每一移动设备都可能会作为整个系统的中间节点,设置相应的主动重新编码方案,有利于提升传输的可靠性及数据处理的精确性;2、每个移动设备附有网络编码描述文件,当移动设备转换为rm时可供知晓周围ap数据的可用性,有利于数据的有效传输,减少系统传输时延,提高系统整体性能;3、移动设备可进行两种模式的不同切换,但由于不同切换耗费时间,在本系统中使用了一种切换策略,有利于减少不停切换带来的延迟从而提高数据的分发效率;4、本发明通过接收设备的数据重新编码,有利于增加设备中数据独立性,提升系统的实时数据处理性能。附图说明:附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:图1是多跳移动设备分享方案网络模型示意图;图2是不同设备编码效率折线图;图3是多移动设备主动式重新编码策略性能折线图;图4是不同方案中分享效率折线图;图5是不同方案中数据包分片大小对系统整体性能影响折线图。具体实施方式下面对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。实施例一一种基于网络编码的wifidirect多跳移动设备文件分享方法,其实现步骤如下:步骤1):信源设备选择分享数据和设置数据分片数量,使用网络编码对数据进行切片编码得到k个线性无关的数据片,同时产生一个ncd;信源设备对数据进行网络编码后转换为ap等待其他移动设备的问答;同时使用网络编码对数据进行切片编码得到k个线性无关的数据片采用的是现有技术这里不做赘述。步骤2):移动设备中向信源设备发送问答请求,信源设备接受请求后向移动设备发送数据;步骤201):初始时,若干移动设备都处于rm向信源设备请求发送数据包;步骤202):信源设备收到若干移动设备的请求,在若干移动设备的请求中选择m个信号最强的移动设备发送同意请求文件;步骤203):接收到同意请求文件的移动设备向信源设备发起连接等待信源设备发送数据片;步骤204):信源设备向m个移动设备发送数据片,每个数据片中都包含一个ncd,且发送的数据片最多为信源所拥有数据片的50%;这里m的数量是根据移动设备的总数而定,本实施例中移动设备选择信源设备向3个移动设备发送数据片;步骤205):当信源设备将所拥有的k个数据片成功发送完成则可转为rm为移动设备转发数据片。步骤3):为减少中间节点进行再编码产生的时延,移动设备接收到数据片后对接收到的数据片进行主动重新编码,同时可作为信源设备向其它移动设备发送重新编码后的数据片;步骤301):移动设备成功接收到数据片后,将每个数据片的内容写入自己的ncd;步骤302):移动设备成功接收数据片后,同时调用一个线程产生一个新的编码矩阵与所接收到的所有数据片进行编码,得到再编码后的数据片放入缓存器,等待调用;步骤303):与此同时,移动设备接收完数据片后切换成ap模式成为信源设备,等待其他设备的访问;步骤304):当有请求产生时,发送给请求移动设备已编码的数据片。步骤4):当移动设备成功接收到预先设定量的线性无关的数据片后便可解码得到原始数据。在本发明方法中,移动设备可进行两种模式的切换,为防止模式的频繁切换导致系统性能的下降,在以上事实例的基础上提出了一种切换策略,有利于减少不停切换带来的延迟从而提高数据的分发效率,切换策略如下:带有ncd文件fa的移动设备a从信源设备b中接收一个ncd文件fb,r1=rank(fa),r2=rank(fb∪fa);其中rank代表编码矩阵的秩,r1代表文件fa中编码矩阵的秩,r2代表文件fa和文件fb编码矩阵相并的秩。1):当r2>r1时,移动设备a发送数据片发送请求给信源设备b,b同意请求发送数据片给a,a接收数据片后更新ncd文件fa,再重新计算r1和r2;2):否则,移动设备a转化为ap模式成为信源设备,等待其它移动设备的连接;3):如果等待时间超过10秒,重新切换成rm,根据信号强度选择一个ap连接;4)如果没有任何ap可供连接,跳转到2)。需要说明的是,以上切换策略可单独使用在移动设备文件分享方法中,其作用可以减少延迟和提高数据的分发效率。在本实施例中,本发明为减少中间节点进行再编码产生的时延引入的主动重新编码策略所采用的具体方法如下:在设备加入分发过程后,将调用后台线程j来监视工作方向的变化。一旦设备接收到一个新数据片,线程j将接收所有d个数据片的线性组合,主动从有限域gf(256)中产生编码系数[c1,c2,…,cd],与移动设备中的所有数据片[yi1,yi2,...,yid]-1进行重新编码得到新的编码矩阵ynew,表达式如下:其中i代表每个数据片中线性组合的长度,d代表重新编码数据片的数量。将之存储到缓存中。一旦请求产生,将缓存中编码后的数据片发送给请求设备,在有连续请求时则该线程在设备中连续更新数据片的线性组合。在具体实施本发明方法时搭建了真实的实验平台,用于测试该文件分享系统的运行处理。该实验由20部基于andriod系统的移动设备构成,其中一部手机作为信源设备。其中,每个移动设备都具有两种模式:ap和rm,所以这些移动设备不仅发送自己所具有的数据片,而且还接收其它设备的数据片。所有移动设备都是通过wifidirect技术支持数据片的发送和接收。最开始由信源移动端发送编码数据片,信源设备最多发送数据片的50%时达到传递数据最优解,每个移动设备作为ap节点只能同时连接3个移动设备,其它移动设备进行接收后,再作为ap向外不断扩送。随着所有移动设备两种模式的不停切换,最终实现所有移动设备的数据片完整传输。基于此,进行该方案的可行性、可靠性以及延迟性能的测试分析。一、可行性如图2中,商用移动设备可以为本系统提供可接受的编码方式,而且,随着分片数量k的增加,效率降低。如图3中,对于每个请求,生成3.3mb的数据大约需要1秒,中间节点使用主动重编码策略所消耗的时间相比消极重编码策略能降低一个数量级。当使用复制方式时,设备在接收到请求后不需要进行编码操作,直接将内存中的数据包发送给接收设备,反应时间快速。当使用消极重编码策略时,设备在接收到请求后才会产生再编码文件,然后将其加载到发送缓冲区中,这需要一段操作时间且反应时间较长。当用主动重编码策略时,设备在接收到一个新的数据片时就立马进行重编码操作。主动重编码策略的原理是利用空余时间进行编码,且随着接收用户的增多,空余时间减少,处理时间提高。如图4中,在这三种方案中,此系统的平均时间开销比传统的两种方案具有更高的共享效率,并且此系统中的所有设备都能在4.5分钟内恢复原始文件。二、可靠性在实验环境中,无线链路的信号强度总是因各种原因,如位置、前存在障碍,发射功率ap等不同信号强度的影响,自然产生数据包接收的不确定性。如图5中,当分片大小k在2-10之间时,对共享效率的影响不显著。在所有的实验中,共享文件的最短时间是2.85分钟,这是在采用网络编码的情况下实现的。当k大于6时,基于范德蒙方案的性能略优于网络编码,其原因之一是并发请求数高,因此主动重编码策略的处理延迟增加。当网络中有许多移动设备时,逻辑上传输跳数会很高,然后更多的设备可以执行重新编码操作,这将提供更多的性能增益。三、延迟分析在实际系统中,延迟可能发生在传输延迟、i/o处理延迟和编码延迟等不同阶段,本文对文件共享过程中的延迟分布进行了评估。表一是此方案中时间延迟分析表,如表1所示,表一分发延迟操作时间(s)复制范德蒙网络编码ap到om4.4√√√om到ap2.3√√√切片(33mb)3.3√√√编码(33mb,k=4)5.6×√√读(10mb)0.1√√√再编码(2.5mb)0.61××√传输(2.5mb)0.58√√√解码(10mb)1.4×√√接合(33mb)0.5√√√写(10mb)1.13√√√使用wifidirect技术后,从ap模式切换到rm平均需要4.4秒,从rm切换到ap模式需要2.3秒。重新编码一段大小为2.5mb的段和传输该段的0.58秒需要0.61秒。在使用主动重编码策略之后,可以同时执行重新编码操作和传输。因此,基于网络编码方案的时延与基于范德蒙方案的时延比较接近。与基于复制的方案相比,编码操作会引入额外的处理延迟,编码操作可以增加设备从其邻居接收线性独立数据包的概率,从而提高整个系统的共享效率,因此,考虑到编码操作可以获得的总体性能增益,编码操作造成的处理延迟是可以接受的。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施案例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1