专利名称:异构无线p2p网络文件共享系统及加速文件传输方法
技术领域:
本发明涉及多模无线终端在多个异构融合网络覆盖环境下进行文件共享系统及加速文件传输方法,尤其涉及到基于P2P-Bittorrent协议,适用于WLAN、3G/LTE、Ad hoc网络及未来各种新型无线接入网络文件共享系统及加速文件传输方法。
背景技术:
近年来无线移动接入技术发展迅猛,以802. 11系列为代表的无线局域网(WLAN)、 以CDMA2000、WCDMA和TD-SCDMA为代表的3G/HSPA/LTE等技术大规模应用,以及自组织网络Ad hoc技术不断研究发展,未来的移动互联网将是以多种接入网络并存的开放式异构无线网络系统。基于移动互联网的主体业务已经由语音业务为主转向各类数据业务,而文件共享作为分布式系统的基本应用,已经在互联网中广泛使用。而源于互联网的P2P技术,恰好能适应移动互联网的自组织、网络拓扑多样、接入终端动态性的特点,因此基于移动互联网业务的P2P应用也是在移动互联网下的进行数据业务的关键技术。移动互联网下的数据业务特点包括数据内容更新快、数据大小分布广泛、用户群体动态性强、切换较频繁、而且在异构无线多网络融合环境下,由于包含多个网络,网络之间的重叠方式也是多种多样的,为了能使文件共享模型适用于任意多个以任意方式重叠的应用场景,现有的基于Bittorrent协议的P2P文件共享系统则由于其扩展性好、分发文件速度快、节点上传下载取舍均衡而被许多移动P2P应用所参考和采用。传统的Bittorrent通过torrent文件来共享文件,其包括4个组成部分Tracker 服务器、torrent文件、拥有完整共享文件备份的种子节点seed和要求获取文件的peer节点。其中,Tracker服务器选择有效的peer节点集是十分关键的,特别是在移动互联网下移动终端接入状态动态加入退出,为了维护动态节点的状态信息,会增加Tracker服务器的负担;如果考虑根据终端节点网络拓扑结构进行逻辑位置分群,优先选择群内节点,但由于节点网络拓扑并非与物理位置拓扑相对应,网络拓扑中距离近的节点如果在实际位置中相距较远,该节点的稳定性也会降低,同时对增加移动核心网的数据传输负担,以上方法均不能很好的解决Tracker对节点的有效筛选,使得共享速率提高。如何在以上网络多样、节点动态性强的应用环境下提高文件共享速率,并且针对终端节点的下载质量,在节点下载速率、邻居节点上传速率、网络距离、接入网络类型、往返时间RTT等因素折中进行综合考虑,使得整个异构融合多网络环境下的文件共享性能得到提升显得十分必要,并能在其他增强的数据业务中得到广泛应用。
发明内容
本发明所要解决的技术问题是克服以上描述的技术方法的缺陷和不足,在异构无线融合网络接入环境下,基于P2P-Bittorrent协议,提供一种异构无线P2P网络文件共享系统及加速文件传输方法。
为解决上述技术问题,本发明提供一种异构无线P2P网络文件共享系统,其特征在于,包括Tracker服务器、移动代理节点、一般移动终端;所述Tracker服务器,包括交互控制模块、Peer管理模块、优化选择模块和网络分析模块;所述交互控制模块用于与所述移动代理节点、一般移动节点之间的信令交互, 所述信令交互基于扩展的Bittorrent协议;所述扩展的Bittorrent协议包括扩展字段 nettype,其描述为“客户端接入网络类型”,rttime,其描述为“客户端到移动代理节点点的往返时间RTT ” ;所述Peer管理模块用于实现整个分布式P2P网络内的移动代理节点、一般移动节点的发现、统计与记录,建立统一的全网络实时Peer信息管理库,作为优化选择模块进行种子节点选择的Peer信息源;优化选择模块用于选择最适应当前请求文件共享业务的节点的种子节点列表, 最大化文件共享速度;所述网络分析模块用于定时获取移动代理节点对各自网络位置的上报,具体包括IP地址、网络描述、具体地理位置描述信息;定时获取一般移动节点上报的IP地址、网关地址信息、与网内移动代理节点间RTT值;并针对以上信息,分析各分布式P2P网络的逻辑拓扑结构,统计移动节点端到端的RTT值,便于优化选择模块对各参考种子节点的优化值计算;所述移动代理单元包括位置管理模块和接入控制模块;所述位置管理模块移动代理单元作为网络簇集的中心节点,定时向Tracker服务器单元上报自身的网络位置状态,包括IP地址、网络描述、具体地理位置描述信息;特别是在自身网络内节点网络位置发生变化时更新网络簇集状态。所述接入控制模块负责网络簇集内的其他节点的网络接入和状态,并在其他节点发生网络位置变化或者接入方式变化时,通知位置管理模块进行统计信息更新。所述一般移动终端单元包括会话管理模块、接入管理模块、Peer信息维护单元和数据传输模块;所述会话管理模块负责与Tracker服务器、移动代理间进行信令交互,信令基于 Bittorrent协议的改进,不仅能支持通用Bittorrent软件,还增加了对网络接入类型、网络位置描述、与移动代理间RTT扩展标识;所述接入管理模块负责获取当前移动终端网络接入的方式,并提交会话管理模块,填充nettype和netdescription扩展信息;同时定时获取与移动代理节点往返时间 RTT,填充rttime扩展信息;所述Peer信息维护单元用于维护本终端节点及Tracker返回的种子节点列表的信息,如peer_id、ip地址、端口号、任务状态;并负责与各种子节点建立基于TCP协议的数据连接,便于数据传输模块从种子节点处下载资源;所述数据传输模块负责具体的资源数据的共享,包括从种子节点处下载数据以及自身作为种子节点上传数据。优选的,所述移动代理节点与一般移动节点之间的信令交互,包括一般移动节点的共享文件请求消息,移动代理节点和一般移动节点的位置反馈消息和心跳反馈消息、一般移动节点网络接入类型消息。进一步的,所述优化选择模块,作为Tracker服务器单元实现共享加速的核心模块,采用多参数的种子节点选取的最优化目标约束函数,选择最适应当前请求文件共
享业务的节点的种子节点列表;最优化目标约束函数为-.Max-P1 = AP^rIi = 1,
1\1 Ii
2......N,其中N为可供优化选择的种子节点个数,Pi为第i个参考选取的种子节点优化
值,Ai为第i个参考选取的种子节点的接入网络类型归一化值、Si为第i个参考选取的种子节点的上传速度归一化值,RTTi为为第i个参考选取的种子节点到请求文件共享的一般移动节点的往返时间归一化值,:i为请求文件共享的一般移动节点的网络接入类型归一化值。以上归一化值按照不同网络类型的国际标准参数为参考值。更进一步的,选择种子节点列表时,种子节点上传速率S与请求文件共享的一般节点间的往返时间RTT值则与具体的网络情形有关,具体考虑如下当S大,RTT小时,此时表明参考种子节点接入网络带宽大,而且与请求文件共享的一般移动节点(以下简称为请求节点)网络距离短,该参考种子节点的优化值A大,作为优先选择种子节点;当S小,RTT大时,此时表明参考种子节点接入网络带宽小,并且与请求节点网络距离长,形成的数据流容易受长距离网络环境影响,无法达到文件共享加速的作用,此类种子节点应该丢弃;当S小,RTT小时,表明此类节点接入网络带宽低,但与请求节点网络距离短,容易发现。此类种子节点应该作为可选节点,视实际情况而定。当优选种子节点数无法达到请求节点的数目要求,可以连接此类可选节点。当S大,RTT大时,表明此类节点接入网络带宽高,但与请求节点网络距离远。此时利用一种新的机制“簇内传播”方式,请求节点通知移动代理节点与远端种子节点连接, 获取资源信息,并由移动代理节点进行下载,然后在请求节点所在网内进行分发,最终请求节点获取到所需资源。所述扩展的Bittorrent协议还包括扩展字段numwant,其描述为“客户端希望从 Tracker服务器得到的其他种子节点的个数”,netdescription,其描述为“客户端所在网络详细描述”。本发明同时还提供一种基于上述异构无线P2P网络文件共享系统的加速文件传输方法,其特征在于,包括以下步骤步骤一、一般移动终端节点作为客户端与Tracker服务器进行交互,提出资源下载请求;通过扩展的Bittorrent协议,将自身的接入网络类型、网络描述信息、与移动代理节点RTT等参数传递给Tracker服务器,作为后续选取种子节点的依据,当以上参数发生变化时,定时反馈给Tracker服务器;步骤二、Tracker服务器处理客户端请求,查询整个网络的种子节点信息,种子节点信息由Tracker服务器统计并以表单目录存储,初步筛选出与客户端请求资源相符的种子节点列表,同时将此类种子节点信息保存到历史查询记录,以便于为其他客户端的相同请求提供共孚服务;步骤三、根据初步筛选的种子节点列表,Tracker服务器的优化选择模块参照候选种子节点列表,通过网络分析模块对客户端与候选种子节点间网络距离的计算值,结合最优化选择策略,进一步筛选出针对客户端最优的候选种子列表,并发送给客户端;步骤四、客户端收到最优种子节点列表,并与这些种子节点进行连接,进行所需资源的持续下载;步骤五、如果在下载过程中,客户端无法连接到该种子节点,客户端反馈消息给 Tracker服务器,Tracker服务器依照步骤二、三,重新筛选最优种子节点列表,并发送给客户端,同时更新Peer节点统计信息;步骤六、客户端更新最优种子节点列表进行所需资源的下载过程,并与这些种子节点进行连接,重新进行所需资源的持续下载。本发明与现有技术相比,有如下优点(I).本发明采用传统的集中式架构,仅需增加移动代理节点来完善加速功能。保持移动互联网下“瘦客户端”特性,对移动终端性能无特殊要求,在稳定提高文件共享性能的前提下不会对移动终端带来大的资源开销;(2).本发明对于Tracker服务器选取种子节点策略综合了针对异构网络的多种特征参数,灵活可配置,独立成模块,在不同的应用场景下可以灵活改变;(3).本发明改进了并向下兼容Bittorrent协议,便于移动终端对网络位置、接入网络类型等参数的获取,并能与Tracker服务器正确解析。本发明所提出的场景可存在任意多个网络以任意方式重叠融合,并与具体的网络底层技术无关,适用于现有的即未来各种新型无线网络接入,具有可扩展性。
下面结合附图和具体实施方式
对本发明的技术方案作进一步具体说明。图I为本发明的异构无线P2P网络文件共享系统网络架构图。图2为本发明中Tracker服务器、移动代理节点以及一般移动节点的功能模块图。图3为本发明中的移动代理节点选取模型示意图;图4为本发明中移动终端节点进行文件共享加速的工作流程图。
具体实施例方式图I描述了本发明改进型的集中式移动P2P网络架构图。图中所描述的异构网络类型包括WLAN、3G/LTE、Ad hoc网络,能充分代表当前流行的无线网络接入形式。该集中式 P2P网络架构同时具有分布式P2P特点,通过移动代理节点将全分布式P2P网络中的节点连接到集中式架构中。该网络中包括Tracker服务器节点,移动代理节点和一般移动节点,移动代理节点所连接的一般移动节点共同组成一个网络簇集。其中,Tracker服务器节点为集中式P2P网络中的一般移动节点提供邻居节点索引及选取信息、路由信息、P2P节点发现、网络拓扑统计和组播组的管理功能。移动代理节点作为一般移动节点的网络接入代理,会长期存在与所处网络中,并保持稳定的网络位置和在线状态,作为Tracker服务器节点分析网络拓扑的参考点;一般移动节点通过移动代理节点连接到各自分布式P2P网络内,向Tracker服务器节点定时反馈自身的网络接入类型及往返时间RTT,便于Tracker服务器节点优化选取种子节点策略,进行文件共享加速。图2描述了本发明中的文件共享加速模型,涉及到Tracker服务器、移动代理、一般移动终端的功能模块图。下面对各单元各模块作详细说明。Tracker服务器单元,交互控制模块负责与移动代理节点、一般移动节点间的信令交互,基于扩展的Bittorrent协议;包括一般移动节点的共享文件请求消息,移动代理节点和一般移动节点的位置反馈消息和心跳反馈消息、一般移动节点网络接入类型消息等。以上消息均以HTTP GET消息进行扩展封装。Peer管理模块完成整个集中式P2P网络下的各分布式P2P网络内的移动代理节点、一般移动节点的发现、统计与记录,建立统一的全网络实时Peer信息管理库,作为优化选择模块进行种子节点选择的Peer信息源。优化选择模块作为Tracker服务器单元实现共享加速的核心模块,采用多参数的种子节点选取的最优化目标约束函数,选择最适应当前请求文件共享业务的节点的种子
节点列表,最大化文件共享速度。最优化目标约束函数为=1,
1\1 Ii
2......N,其中N为可供优化选择的种子节点个数,Pi为第i个参考选取的种子节点优化
值,Ai为第i个参考选取的种子节点的接入网络类型归一化值、Si为第i个参考选取的种子节点的上传速度归一化值,RTTi为为第i个参考选取的种子节点到请求文件共享的一般移动节点的往返时间归一化值,:i为请求文件共享的一般移动节点的网络接入类型归一化值。 以上归一化值按照不同网络类型的国际标准参数为参考值。由于WLAN、3G/LTE、Ad hoc网络的接入网络带宽存在明显差异,在计算处在以上三类网络下的种子节点的优化值时,将接入网络类型值作为主要系数指标。而种子节点上传速率S,与请求文件共享的一般节点间的往返时间RTT值则与具体的网络情形有关,具体考虑如下当S大,RTT小时,此时表明参考种子节点接入网络带宽大,而且与请求文件共享的一般移动节点(以下简称为请求节点)网络距离短,该参考种子节点的优化值A大,作为优先选择种子节点;当S小,RTT大时,此时表明参考种子节点接入网络带宽小,并且与请求节点网络距离长,形成的数据流容易受长距离网络环境影响,无法达到文件共享加速的作用,此类种子节点应该丢弃;当S小,RTT小时,表明此类节点接入网络带宽低,但与请求节点网络距离短,容易发现。此类种子节点应该作为可选节点,视实际情况而定。当优选种子节点数无法达到请求节点的数目要求,可以连接此类可选节点。当S大,RTT大时,表明此类节点接入网络带宽高,但与请求节点网络距离远。此时利用一种新的机制“簇内传播”方式,请求节点通知移动代理节点与远端种子节点连接, 获取资源信息,并由移动代理节点进行下载,然后在请求节点所在网内进行分发,最终请求节点获取到所需资源。网络分析模块定时获取移动代理节点对各自网络位置的上报,具体包括IP地址、网络描述、具体地理位置描述信息;定时获取一般移动节点上报的IP地址、网关地址信息、与网内移动代理节点间RTT值;并针对以上信息,分析各分布式P2P网络的逻辑拓扑结构,统计移动节点端到端的RTT值,便于优化选择模块对各参考种子节点的优化值计算。图3显示了移动代理节点选取模型示意图,选取主要包括节点的个数M(图3中 M = 6,标识6个独立的无线网络)和位置L,适当的M和L能正确的标识整个集中式P2P 网络逻辑结构和各节点的网络位置,有助于提高Tracker服务器选取种子节点的性能。移动代理节点的选取遵循三个条件(I)最大分离由于异构网络存在分布式、重叠融合的特性,为了有效的标识一个网络位置,需要将重叠的网络在逻辑上分开,使得M个移动代理节点在各个网络中均匀分布,其平均网络距离最小,能唯一代表各个网络,也便于一般移动节点能找到在网络距离上离自己最近的移动代理节点;(2)M簇网络集M个移动代理节点所代表的就是实际的M个网络,虽然一般移动节点在网络内分布不均匀,但逻辑上它们以簇集的形式聚类,每个一般移动节点均属于唯一的某个簇集;(3)簇集内节点平均距离最小 为了保持逻辑网络拓扑与实际网络分布相对应,选定的移动代理位置应在离簇集内其他节点平均距离最小,当整个簇发生结构变化(节点间网络距离变化时),移动代理节点能有效的反映簇集内变化(逻辑网络拓扑的变化)。当簇内距离越小,簇内节点更紧密,能很好的适应当S大,RTT大时选取该簇内移动代理节点首先获取远端种子节点的资源,然后在簇内传播的机制。移动代理单元,位置管理模块移动代理单元作为网络簇集的中心节点,定时向 Tracker服务器单元上报自身的网络位置状态,包括IP地址、网络描述、具体地理位置描述信息;特别是在自身网络内节点网络位置发生变化时更新网络簇集状态。接入控制模块负责网络簇集内的其他节点的网络接入和状态,并在其他节点发生网络位置变化或者接入方式变化时,通知位置管理模块进行统计信息更新。一般移动终端单元,会话管理模块负责与Tracker服务器、移动代理间进行信令交互,信令基于Bittorrent协议的改进,不仅能支持通用Bittorrent软件,还增加了对网络接入类型、网络位置描述、与移动代理间RTT扩展标识。扩展后的与Tracker服务器交互的信令参数如下表所示
权利要求
1.一种异构无线P2P网络文件共享系统,其特征在于,包括Tracker服务器、移动代理节点、一般移动终端;所述Tracker服务器,包括交互控制模块、Peer管理模块、优化选择模块和网络分析模块;所述交互控制模块用于与所述移动代理节点、一般移动节点之间的信令交互,所述信令交互基于扩展的Bittorrent协议;所述扩展的Bittorrent协议包括扩展字段nettype, 其描述为“客户端接入网络类型”,rttime,其描述为“客户端到移动代理节点的往返时间 RTT ” ;所述Peer管理模块用于实现整个分布式P2P网络内的移动代理节点、一般移动节点的发现、统计与记录,建立统一的全网络实时Peer信息管理库,作为优化选择模块进行种子节点选择的Peer信息源;优化选择模块用于选择最适应当前请求文件共享业务的节点的种子节点列表,最大化文件共享速度;所述网络分析模块用于定时获取移动代理节点对各自网络位置的上报,具体包括IP 地址、网络描述、具体地理位置描述信息;定时获取一般移动节点上报的IP地址、网关地址信息、与网内移动代理节点间RTT值;并针对以上信息,分析各分布式P2P网络的逻辑拓扑结构,统计移动节点端到端的RTT值;所述移动代理节点包括位置管理模块和接入控制模块;所述位置管理模块用于定时向所述Tracker服务器上报自身的网络位置状态,包括 IP地址、网络描述、具体地理位置描述信息;在自身网络内节点网络位置发生变化时更新网络簇集状态;所述接入控制模块用于网络簇集内的其他节点的网络接入和状态,并在其他节点发生网络位置变化或者接入方式变化时,通知所述位置管理模块进行统计信息更新;所述一般移动终端单元包括会话管理模块、接入管理模块、Peer信息维护单元和数据传输模块;所述会话管理模块用于与所述Tracker服务器、移动代理节点之间进行信令交互,信令交互基于扩展的Bittorrent协议;所述接入管理模块用于获取当前移动终端网络接入的方式,并提交所述会话管理模块,所述Peer信息维护单元用于维护本节点及所述Tracker服务器返回的种子节点列表的信息;并负责与各种子节点建立基于TCP协议的数据连接,便于数据传输模块从种子节点处下载资源;所述数据传输模块负责具体的资源数据的共享,包括从种子节点处下载数据以及自身作为种子节点上传数据。
2.根据权利要求I所述的异构无线P2P网络文件共享系统,其特征在于,所述移动代理节点与一般移动节点之间的信令交互,包括一般移动节点的共享文件请求消息,移动代理节点和一般移动节点的位置反馈消息和心跳反馈消息、一般移动节点网络接入类型消息。
3.根据权利要求I或2所述的异构无线P2P网络文件共享系统,其特征在于,所述优化选择模块采用最优化目标约束函数,建立种子节点列表;所述最优化目标约束函数为Max.Pr = Ar*-^-*A, i = 1,2......N,其中N为可供优化选择的种子节点个数,Pi为第i1\1 Ii个参考选取的种子节点优化值,Ai为第i个参考选取的种子节点的接入网络类型归一化值、 Si为第i个参考选取的种子节点的上传速度归一化值,RTTi为为第i个参考选取的种子节点到请求文件共享的一般移动节点的往返时间归一化值,:i为请求文件共享的一般移动节点的网络接入类型归一化值。
4.根据权利要求3所述的异构无线P2P网络文件共享系统,其特征在于,根据所述最优化目标约束函数建立种子节点列表,包括以下选择当S大,RTT小时,表明该参考种子节点接入网络带宽大,而且与请求文件共享的一般移动节点网络距离短,该参考种子节点的优化值A大,作为优先选择种子节点;当S小,RTT大时,表明该参考种子节点接入网络带宽小,并且与请求文件共享的一般移动节点的网络距离长,形成的数据流容易受长距离网络环境影响,无法达到文件共享加速的作用,此类种子节点应该丢弃;当S小,RTT小时,表明该参考种子节点接入网络带宽低,但与请求节点网络距离短,容易发现;作为可选种子节点;当S大,RTT大时,表明该参考种子节点接入网络带宽高,但与请求节点网络距离远,该参考种子节点作为特殊的远端种子节点;请求文件共享的一般移动节点通知移动代理节点与该远端种子节点连接,获取资源信息,并由移动代理节点进行下载,然后在请求文件共享的一般移动节点所在网内进行分发,最终请求文件共享的一般移动节点获取到所需资源。
5.根据权利要求4所述的异构无线P2P网络文件共享系统,其特征在于,所述扩展的 Bittorrent协议还包括扩展字段numwant,其描述为“客户端希望从Tracker服务器得到的其他种子节点的个数”,netdescription,其描述为“客户端所在网络详细描述”。
6.一种基于上述异构无线P2P网络文件共享系统的加速文件传输方法,其特征在于, 包括以下步骤步骤一、一般移动终端节点作为客户端与Tracker服务器进行交互,提出资源下载请求;步骤二、Tracker服务器处理客户端请求,查询整个网络的种子节点信息,种子节点信息由Tracker服务器统计并以表单目录存储,初步筛选出与客户端请求资源相符的种子节点列表,同时将此类种子节点信息保存到历史查询记录,以便于为其他客户端的相同请求提供共孚服务;步骤三、根据初步筛选的种子节点列表,Tracker服务器的优化选择模块参照候选种子节点列表,通过网络分析模块对客户端与候选种子节点间网络距离的计算值,结合最优化选择策略,进一步筛选出针对客户端最优的候选种子列表,并发送给客户端;步骤四、客户端收到最优种子节点列表,并与这些种子节点进行连接,进行所需资源的持续下载;步骤五、如果在下载过程中,客户端无法连接到该种子节点,客户端反馈消息给 Tracker服务器,Tracker服务器依照步骤二、三,重新筛选最优种子节点列表,并发送给客户端,同时更新Peer节点统计信息;步骤六、客户端更新最优种子节点列表进行所需资源的下载过程,并与这些种子节点进行连接,重新进行所需资源的持续下载。
全文摘要
本发明公开了一种异构无线P2P网络文件共享系统及加速文件传输方法,在异构无线融合网络接入环境下,基于扩展的P2P-Bittorrent协议,针对融合网络的特点,综合考虑接入网络类型、终端节点下载速率、节点间网络距离和往返时间等因素,利用工程中的最优化理论选择种子节点,为终端进行文件共享业务提供加速方法。由于适当的选择种子节点,将数据流量大,负载重的网络业务转移到较空闲的网络中,实现了整个网络结构的负载均衡,优化了异构融合多网络的资源效率。
文档编号H04L29/08GK102594926SQ20121009588
公开日2012年7月18日 申请日期2012年4月1日 优先权日2011年12月22日
发明者徐行, 樊晓原, 熊家继, 莫益军 申请人:华中科技大学